pub trait IrBasis<S>: Basis<S>where
S: StatisticsType,{
type Kernel: KernelProperties;
// Required method
fn kernel(&self) -> &Self::Kernel;
// Provided method
fn dlr_transform(
&self,
dlr: &DiscreteLehmannRepresentation<S>,
) -> Result<IrDlrTransform, Error>
where S: 'static { ... }
}Expand description
A basis with a kernel: the IR basis FiniteTempBasis
The kernel supplies the pole weights w(β, ω) of a DLR built from the
basis. A DLR is not an IrBasis, so no DLR can be built from a DLR.
Required Associated Types§
Sourcetype Kernel: KernelProperties
type Kernel: KernelProperties
Kernel type
Required Methods§
Provided Methods§
Sourcefn dlr_transform(
&self,
dlr: &DiscreteLehmannRepresentation<S>,
) -> Result<IrDlrTransform, Error>where
S: 'static,
fn dlr_transform(
&self,
dlr: &DiscreteLehmannRepresentation<S>,
) -> Result<IrDlrTransform, Error>where
S: 'static,
The linear map between the coefficients of this basis and of dlr.
§Errors
Error::KernelStatisticsMismatchif the kernel of this basis does not support the statisticsError::InvalidParameternamedbasisif the β of this basis differs from that ofdlr, or its kernel weight vanishes at a pole where the DLR weight does notError::OutOfDomainnamedpolesfor a pole ofdlroutside [-ωmax, ωmax] of this basis
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".