pub struct Thermal {
pub temperature_k: f64,
pub debye_temperature_k: f64,
pub include_zero_point: bool,
}Expand description
Thermal vibration of the lattice atoms of a CrystalTarget (step 21b;
module docs, “Thermal vibration”).
Fields§
§temperature_k: f64Target temperature, K (finite, >= 0). This sets the vibration
amplitude only: the lattice constant stays the cited value at its own
temperature (Lattice::temperature_k); no thermal expansion is
applied.
debye_temperature_k: f64Debye temperature, K, used for every species of the crystal with that
species’ own mass (crate::ion::crystal::debye module docs; the
THETA_D_* constants there are cited defaults).
include_zero_point: boolInclude the zero-point term of the Debye amplitude (true for any
physical run). false keeps only the thermal part, so that T = 0
gives zero amplitude: a test switch (the static-lattice identity
test uses it), not a physical model.
Implementations§
Trait Implementations§
impl Copy for Thermal
Source§impl<'de> Deserialize<'de> for Thermal
impl<'de> Deserialize<'de> for Thermal
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl StructuralPartialEq for Thermal
Auto Trait Implementations§
impl Freeze for Thermal
impl RefUnwindSafe for Thermal
impl Send for Thermal
impl Sync for Thermal
impl Unpin for Thermal
impl UnsafeUnpin for Thermal
impl UnwindSafe for Thermal
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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