pub struct MiniPoleResult {
pub pole_location: Vec<Complex<f64>>,
pub pole_weight: TypedTensor<Complex<f64>>,
pub constant: Vec<Complex<f64>>,
pub h_k: TypedTensor<Complex<f64>>,
pub esprit: Esprit,
pub n0: usize,
pub err_max: Option<f64>,
}Expand description
A minimal pole representation G(z) = Σ_j A_j / (z - ξ_j) + C.
Fields§
§pole_location: Vec<Complex<f64>>Pole locations ξ_j, sorted by real part.
pole_weight: TypedTensor<Complex<f64>>Pole weights A_j, shape [M, ...].
constant: Vec<Complex<f64>>Constant term C, one entry per channel (column-major).
h_k: TypedTensor<Complex<f64>>Moments (contour integrals) h_k, shape [K, ...].
esprit: EspritThe ESPRIT approximation of h_k.
n0: usizen0 used for the contour.
err_max: Option<f64>Precision of the first approximation of the Matsubara data
(mini_pole only).
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl !Freeze for MiniPoleResult
impl !RefUnwindSafe for MiniPoleResult
impl !UnwindSafe for MiniPoleResult
impl Send for MiniPoleResult
impl Sync for MiniPoleResult
impl Unpin for MiniPoleResult
impl UnsafeUnpin for MiniPoleResult
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
§impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T> DistributionExt for Twhere
T: ?Sized,
fn rand<T>(&self, rng: &mut (impl Rng + ?Sized)) -> Twhere
Self: Distribution<T>,
impl<T, U> Imply<T> for U
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 more