pub struct RegularizedBoseKernel {
pub lambda: f64,
}Expand description
Regularized bosonic analytical continuation kernel
In dimensionless variables x = 2τ/β - 1, y = βω/Λ, the integral kernel is:
K(x, y) = y * exp(-Λ y (x + 1) / 2) / (1 - exp(-Λ y))This kernel is used for bosonic Green’s functions. The factor y regularizes the singularity at ω = 0, making the kernel well-behaved for numerical work.
The dimensionalized kernel is related by:
K(τ, ω) = ωmax * K(2τ/β - 1, ω/ωmax)where ωmax = Λ/β.
§Properties
- Centrosymmetric: K(x, y) = K(-x, -y)
- ypower = 1: Spectral function transforms as ρ’(y) = y * ρ(y)
- Bosonic only: Does not support fermionic statistics
- Weight function: w(β, ω) = 1/ω for bosonic statistics
§Numerical Stability
The expression v / (exp(v) - 1) is evaluated using expm1 for small |v|.
Fields§
§lambda: f64Kernel cutoff parameter Λ = β × ωmax
Implementations§
Trait Implementations§
Source§impl CentrosymmKernel for RegularizedBoseKernel
impl CentrosymmKernel for RegularizedBoseKernel
Source§fn compute_reduced<T: CustomNumeric + Copy + Debug>(
&self,
x: T,
y: T,
symmetry: SymmetryType,
) -> T
fn compute_reduced<T: CustomNumeric + Copy + Debug>( &self, x: T, y: T, symmetry: SymmetryType, ) -> T
Compute the reduced kernel value Read more
Source§impl Clone for RegularizedBoseKernel
impl Clone for RegularizedBoseKernel
Source§fn clone(&self) -> RegularizedBoseKernel
fn clone(&self) -> RegularizedBoseKernel
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for RegularizedBoseKernel
impl Debug for RegularizedBoseKernel
Source§impl KernelProperties for RegularizedBoseKernel
impl KernelProperties for RegularizedBoseKernel
Source§type SVEHintsType<T> = RegularizedBoseSVEHints<T>
where
T: Copy + Debug + Send + Sync + CustomNumeric + 'static
type SVEHintsType<T> = RegularizedBoseSVEHints<T> where T: Copy + Debug + Send + Sync + CustomNumeric + 'static
Associated type for SVE hints
Source§fn conv_radius(&self) -> f64
fn conv_radius(&self) -> f64
Convergence radius of the Matsubara basis asymptotic model Read more
Source§fn regularizer<S: StatisticsType + 'static>(
&self,
_beta: f64,
omega: f64,
) -> f64
fn regularizer<S: StatisticsType + 'static>( &self, _beta: f64, omega: f64, ) -> f64
A regularizer for a bosonic kernel for avoiding a divergence at omega = 0. Read more
Source§impl PartialEq for RegularizedBoseKernel
impl PartialEq for RegularizedBoseKernel
impl Copy for RegularizedBoseKernel
impl StructuralPartialEq for RegularizedBoseKernel
Auto Trait Implementations§
impl Freeze for RegularizedBoseKernel
impl RefUnwindSafe for RegularizedBoseKernel
impl Send for RegularizedBoseKernel
impl Sync for RegularizedBoseKernel
impl Unpin for RegularizedBoseKernel
impl UnwindSafe for RegularizedBoseKernel
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> DistributionExt for Twhere
T: ?Sized,
impl<T> DistributionExt for Twhere
T: ?Sized,
Source§impl<T> IntoCloned<T> for T
impl<T> IntoCloned<T> for T
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
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.