pub struct DecimationTransformation {
pub k: f64,
pub ln_lambda: f64,
pub steps: usize,
}Expand description
1-D Ising decimation RG transformation.
The partition function of the 1-D Ising model with coupling K is reproduced by a system with half as many spins and an effective coupling K’. The recursion relation is: K’ = (1/2) ln cosh(2K)
Fields§
§k: f64Current coupling K = J/(k_B T).
ln_lambda: f64Current additive constant (free energy per site contribution).
steps: usizeNumber of decimation steps performed.
Implementations§
Source§impl DecimationTransformation
impl DecimationTransformation
Sourcepub fn step(&mut self)
pub fn step(&mut self)
Perform one step of 1-D Ising decimation.
K’ = (1/2) ln cosh(2K), ln λ += (1/2) ln[4 cosh(2K)]
Sourcepub fn correlation_length(&self) -> f64
pub fn correlation_length(&self) -> f64
Correlation length after decimation (rough estimate via K).
ξ = −1 / ln tanh(K)
Sourcepub fn trajectory(&self, n: usize) -> Vec<f64>
pub fn trajectory(&self, n: usize) -> Vec<f64>
Collect K trajectory over n steps.
Sourcepub fn migdal_kadanoff_step(&mut self, b: u32)
pub fn migdal_kadanoff_step(&mut self, b: u32)
2-D block-spin decimation flow for the square Ising model (Migdal-Kadanoff).
K’ = (1/2) ln cosh(2bK) where b = 2 is the block factor.
Trait Implementations§
Source§impl Clone for DecimationTransformation
impl Clone for DecimationTransformation
Source§fn clone(&self) -> DecimationTransformation
fn clone(&self) -> DecimationTransformation
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 moreAuto Trait Implementations§
impl Freeze for DecimationTransformation
impl RefUnwindSafe for DecimationTransformation
impl Send for DecimationTransformation
impl Sync for DecimationTransformation
impl Unpin for DecimationTransformation
impl UnsafeUnpin for DecimationTransformation
impl UnwindSafe for DecimationTransformation
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<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.