pub struct OverlapStats {
pub overlap: Vec<f64>,
pub overlap2: Vec<f64>,
pub overlap4: Vec<f64>,
pub link_overlap: Vec<f64>,
pub link_overlap2: Vec<f64>,
pub link_overlap4: Vec<f64>,
pub histogram: Vec<Vec<u64>>,
pub ql_at_q_sum: Vec<Vec<f64>>,
pub ql2_at_q_sum: Vec<Vec<f64>>,
pub per_sample_histogram: Vec<Vec<Vec<u64>>>,
pub per_sample_ql_at_q_sum: Vec<Vec<Vec<f64>>>,
pub per_sample_ql2_at_q_sum: Vec<Vec<Vec<f64>>>,
}Expand description
Overlap statistics from replica-pair measurements.
All vectors are indexed by temperature. Empty when n_replicas < 2.
Fields§
§overlap: Vec<f64>⟨q⟩ — mean replica overlap.
overlap2: Vec<f64>⟨q²⟩.
overlap4: Vec<f64>⟨q⁴⟩.
link_overlap: Vec<f64>⟨q_l⟩ — mean link overlap.
link_overlap2: Vec<f64>⟨q_l²⟩.
link_overlap4: Vec<f64>⟨q_l⁴⟩.
histogram: Vec<Vec<u64>>Overlap histogram P(q) per temperature: [n_temps][n_spins + 1].
Bins correspond to dot-product values −N, −N+2, …, N where idx = (dot + N) / 2.
ql_at_q_sum: Vec<Vec<f64>>Conditional sum of q_l at each q bin: [n_temps][n_spins + 1].
Divide by histogram counts to get ⟨q_l | q⟩.
ql2_at_q_sum: Vec<Vec<f64>>Conditional sum of q_l² at each q bin: [n_temps][n_spins + 1].
Use with ql_at_q_sum and histogram to compute A(q) = Var(q_l | q).
per_sample_histogram: Vec<Vec<Vec<u64>>>Per-disorder-sample overlap histograms: [n_disorder][n_temps][n_spins + 1].
Only populated by aggregate(); empty for single-realization results.
per_sample_ql_at_q_sum: Vec<Vec<Vec<f64>>>Per-disorder-sample conditional sums: [n_disorder][n_temps][n_spins + 1].
Only populated by aggregate(); empty for single-realization results.
per_sample_ql2_at_q_sum: Vec<Vec<Vec<f64>>>Per-disorder-sample conditional sums of squares: [n_disorder][n_temps][n_spins + 1].
Only populated by aggregate(); empty for single-realization results.
Implementations§
Auto Trait Implementations§
impl Freeze for OverlapStats
impl RefUnwindSafe for OverlapStats
impl Send for OverlapStats
impl Sync for OverlapStats
impl Unpin for OverlapStats
impl UnsafeUnpin for OverlapStats
impl UnwindSafe for OverlapStats
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
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>
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>
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