pub struct LindhardGas { /* private fields */ }Expand description
A free-electron gas of Fermi wavenumber k_F (bohr⁻¹), zero temperature.
Implementations§
Source§impl LindhardGas
impl LindhardGas
Sourcepub fn from_fermi_wavenumber(kf: f64) -> Self
pub fn from_fermi_wavenumber(kf: f64) -> Self
The gas with Fermi wavenumber kf > 0 (atomic units).
Sourcepub fn from_plasma_frequency(wp: f64) -> Self
pub fn from_plasma_frequency(wp: f64) -> Self
The gas with plasma frequency wp > 0 (Hartree; ω_p² = 4π n).
Sourcepub fn fermi_wavenumber(&self) -> f64
pub fn fermi_wavenumber(&self) -> f64
k_F, bohr⁻¹.
Sourcepub fn plasma_frequency(&self) -> f64
pub fn plasma_frequency(&self) -> f64
ω_p = sqrt(4 k_F³/(3π)), Hartree.
Sourcepub fn thomas_fermi_wavenumber_sq(&self) -> f64
pub fn thomas_fermi_wavenumber_sq(&self) -> f64
k_TF² = 4 k_F/π, bohr⁻².
Sourcepub fn continuum_upper_edge(&self, q: f64) -> f64
pub fn continuum_upper_edge(&self, q: f64) -> f64
The upper edge of the electron-hole continuum, q k_F + q²/2.
Sourcepub fn re_epsilon(&self, q: f64, w: f64) -> f64
pub fn re_epsilon(&self, q: f64, w: f64) -> f64
Re ε(q, ω) for q > 0, ω >= 0.
Sourcepub fn im_epsilon(&self, q: f64, w: f64) -> f64
pub fn im_epsilon(&self, q: f64, w: f64) -> f64
Im ε(q, ω) for q > 0, ω > 0: zero outside the continuum.
Sourcepub fn loss_continuum(&self, q: f64, w: f64) -> f64
pub fn loss_continuum(&self, q: f64, w: f64) -> f64
The continuum part of the loss function Im[-1/ε(q, ω)] (zero
outside the electron-hole continuum; the plasmon delta function is
separate, see Self::plasmon).
Sourcepub fn plasmon(&self, q: f64) -> Option<LindhardPlasmon>
pub fn plasmon(&self, q: f64) -> Option<LindhardPlasmon>
The plasmon at momentum q, if it exists (above the continuum).
Sourcepub fn plasmon_cutoff(&self) -> f64
pub fn plasmon_cutoff(&self) -> f64
The plasmon cutoff momentum q_c: the plasmon exists for q < q_c
(it enters the continuum there and is Landau damped).
Trait Implementations§
Source§impl Clone for LindhardGas
impl Clone for LindhardGas
Source§fn clone(&self) -> LindhardGas
fn clone(&self) -> LindhardGas
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for LindhardGas
Source§impl Debug for LindhardGas
impl Debug for LindhardGas
Source§impl PartialEq for LindhardGas
impl PartialEq for LindhardGas
impl StructuralPartialEq for LindhardGas
Auto Trait Implementations§
impl Freeze for LindhardGas
impl RefUnwindSafe for LindhardGas
impl Send for LindhardGas
impl Sync for LindhardGas
impl Unpin for LindhardGas
impl UnsafeUnpin for LindhardGas
impl UnwindSafe for LindhardGas
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
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 more