pub enum SolveError {
Discretize {
segment: usize,
source: DiscretizeError,
},
Kernel(KernelError),
Mesh(MeshError),
InvalidGrading {
reason: String,
},
Coupling(CouplingError),
InvalidFrequency {
index: usize,
value: f64,
},
Singular {
frequency: f64,
},
Pfft(PfftError),
NotConverged {
frequency: f64,
port: usize,
iterations: usize,
relative_residual: f64,
},
}Expand description
Why an impedance extraction failed.
Variants§
Discretize
A segment could not be cut into filaments.
Kernel(KernelError)
A partial inductance could not be evaluated; the indices in the error are filament (branch) indices.
Mesh(MeshError)
The ports or the discretization do not fit the geometry.
InvalidGrading
A Grading or SkinDepthGrading parameter is out of range.
Coupling(CouplingError)
The Coupling does not fit the geometry.
InvalidFrequency
A frequency is negative or not finite.
Singular
The mesh system could not be solved at this frequency: the factorization hit a zero pivot or produced a non-finite impedance. A valid geometry never does; see the module documentation.
Pfft(PfftError)
The precorrected-FFT operator of an
IterativeSystem could not be
built.
NotConverged
GMRES did not reach its tolerance within its iteration budget in an
IterativeSystem solve.
Trait Implementations§
Source§impl Clone for SolveError
impl Clone for SolveError
Source§impl Debug for SolveError
impl Debug for SolveError
Source§impl Display for SolveError
impl Display for SolveError
Source§impl Error for SolveError
impl Error for SolveError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0:
use the Display impl or to_string()
Source§impl From<CouplingError> for SolveError
impl From<CouplingError> for SolveError
Source§fn from(source: CouplingError) -> Self
fn from(source: CouplingError) -> Self
Converts to this type from the input type.
Source§impl From<KernelError> for SolveError
impl From<KernelError> for SolveError
Source§fn from(source: KernelError) -> Self
fn from(source: KernelError) -> Self
Converts to this type from the input type.
Source§impl From<MeshError> for SolveError
impl From<MeshError> for SolveError
Source§impl From<PfftError> for SolveError
impl From<PfftError> for SolveError
Source§impl PartialEq for SolveError
impl PartialEq for SolveError
impl StructuralPartialEq for SolveError
Auto Trait Implementations§
impl Freeze for SolveError
impl RefUnwindSafe for SolveError
impl Send for SolveError
impl Sync for SolveError
impl Unpin for SolveError
impl UnsafeUnpin for SolveError
impl UnwindSafe for SolveError
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Scalar for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.