Expand description

For sampling ensembles

  • contains Simple sampling, WangLandau, entropic sampling, Metropolis, Histograms
  • This is just for compatibility reasons, everything was moved into its own crate, which you can find at crates.io/crates/sampling

Modules

Bootstrap resampling functions
For using entropic sampling after a wang landau simulation
Contains examples
Glue together overlapping intervals of either entropic sampling or wang landau
Generate heatmaps. Create Gnuplot scripts to plot said heatmaps
Traits for implementing histograms for Wang Landau or entropic sampling. Contains histogram implementations for all primitive numbers
For making a Metropolis simulation
Entropic sampling using a replica exchange approach
Replica exchange wang-landau
Contains traits useful for sampling an ensemble like MarkovChain or Metropolis etc.
Wang Landau Implementation

Structs

Generic Histogram struct
Generic Histogram for integer types
RGB value
Entropic sampling made easy
Entropic sampling made easy
Glued together probability
Defines gnuplot point
Settings for gnuplot
Heatmap
Heatmap with mean of y-axis
Heatmap with mean of y-axis
Faster version of HistogramInt for Integers
Generic Histogram struct
Generic Histogram for integer types
Create a metropolis simulation
A color palette in RGB space
Walker for Replica exchange entropic sampling
Struct used for entropic sampling with replica exchanges
Efficient replica exchange Wang landau
Use this to create a replica exchange wang landau simulation
Result of the gluing
Walker for Replica exchange Wang Landau
The 1/t Wang Landau approach comes from this paper
Adaptive WangLandau 1/t

Enums

Error states, that entropic sampling, or the creation of EntropicSamplingAdaptive could encounter
Enum used internally
Possible errors that can occur during gluing together WangLandau intervals or Entropic Sampling intervals
For labeling the gnuplot plots axis
defines presets for different color palettes
Options for choosing gnuplot Terminal
Errors of Heatmap
Possible Errors of the traits Histogram and HistogramVal
Which LogBase is being used/should be used?
Errors encountered during Metropolis Algorithm
Errors encountered during the creation of a Rewl struct (Replica exchange Wang Landau)
Possible errors when setting initial guess
List of possible errors
Look at the paper

Traits

Implements histogram
  • trait used for mapping values of arbitrary type T to bins
  • used to create a histogram
  • Traits for quantities that all Entropic simulations have
    Helper trait, so that you have to type less
    trait to request the current energy from a Entropic simulation
    trait to request a reference to the current (state of the) ensemble
    trait to request the current histogram from a Entropic simulation
    Access internal random number generator
    Helper trait for efficient calculations in other implementations
    Implements histogram
    Used to get a histogram, which contains the smaller histograms
    Distance metric for how far a value is from a valid interval
    Your Interval is to large to sample in a resonable amound of time? No problem
  • trait used for mapping values of arbitrary type T to bins
  • used to create a histogram
  • Trait for comparing two intervals
    Create a markov chain by doing markov steps
    For easy sampling of your ensemble
    Traits for quantities that all Wang Landau simulations have
    Helper trait, so that you have to type less
    trait to request the current energy from a WangLandau simulation
    trait to request a reference to the current (state of the) ensemble
    trait to request the current histogram from a WangLandau simulation

    Functions

    Calculate the probability density function from overlapping intervals
    returns reduced value + estimated error (as sqrt of variance). Note, that you can use bootstrap_copyable if your N1 implements Copy
    Similar to bootstrap but for stuff that implements Copy. Likely more effient in these cases returns reduced value + estimated error (as sqrt of variance)
    Results of the simulation
    Calculate the probability density function from overlapping intervals
    Combine multiple WangLandau intervals to get the probability distribution of the whole interval
    Combine multiple WangLandau intervals to get the probability distribution of the whole interval
    Get index of heatmap corresponding to a coordinate
    Results of the simulation
    Results of the simulation
    Merge probability density of multiple rees simulations
    Normalize log10 probability density

    Type Definitions

    Histogram for binning f32 - alias for HistogramFloat<f32>
    Histogram for binning f64 - alias for HistogramFloat<f64>
    Histogram for binning i8 - alias for AtomicHistogramIntiu8>
    Histogram for binning i16 - alias for AtomicHistogramInt<i16>
    Histogram for binning i32 - alias for AtomicHistogramInt<i32>
    Histogram for binning i64 - alias for AtomicHistogramInt<i64>
    Histogram for binning i128 - alias for AtomicHistogramInt<i128>
    Histogram for binning isize - alias for AtomicHistogramInt<isize>
    Histogram for binning u8 - alias for AtomicHistogramInt<u8>
    Histogram for binning u16 - alias for AtomicHistogramInt<u16>
    Histogram for binning u32 - alias for AtomicHistogramInt<u32>
    Histogram for binning u64 - alias for AtomicHistogramInt<u64>
    Histogram for binning u128 - alias for AtomicHistogramInt<u128>
    Histogram for binning usize - alias for AtomicHistogramInt<usize>
    Result of glueing
    Result of glueing. See Glued
    Shorthand for HeatmapUsize
    Histogram for binning f32 - alias for HistogramFloat<f32>
    Histogram for binning f64 - alias for HistogramFloat<f64>
    Histogram for binning i8 - alias for HistogramIntiu8>
    Histogram for binning i8 - alias for HistogramFastiu8>
    Histogram for binning i16 - alias for HistogramInt<i16>
    Histogram for binning i16 - alias for HistogramFast<i16>
    Histogram for binning i32 - alias for HistogramInt<i32>
    Histogram for binning i32 - alias for HistogramFast<i32>
    Histogram for binning i64 - alias for HistogramInt<i64>
    Histogram for binning i64 - alias for HistogramFast<i64>
    Histogram for binning i128 - alias for HistogramInt<i128>
    Histogram for binning i128 - alias for HistogramFast<i128>
    Histogram for binning isize - alias for HistogramInt<isize>
    Histogram for binning isize - alias for HistogramFast<isize>
    Histogram for binning u8 - alias for HistogramInt<u8>
    Histogram for binning u8 - alias for HistogramFast<u8>
    Histogram for binning u16 - alias for HistogramInt<u16>
    Histogram for binning u16 - alias for HistogramFast<u16>
    Histogram for binning u32 - alias for HistogramInt<u32>
    Histogram for binning u32 - alias for HistogramFast<u32>
    Histogram for binning u64 - alias for HistogramInt<u64>
    Histogram for binning u64 - alias for HistogramFast<u64>
    Histogram for binning u128 - alias for HistogramInt<u128>
    Histogram for binning u128 - alias for HistogramFast<u128>
    Histogram for binning usize - alias for HistogramInt<usize>
    Histogram for binning usize- alias for HistogramFast<usize>
    short for Metropolis<E, R, S, Res, f32>
    short for Metropolis<E, R, S, Res, f64>
    short for Metropolis<E, R, S, Res, i8>
    short for Metropolis<E, R, S, Res, i16>
    short for Metropolis<E, R, S, Res, i32>
    short for Metropolis<E, R, S, Res, i64>
    short for Metropolis<E, R, S, Res, i128>
    short for Metropolis<E, R, S, Res, isize>
    short for Metropolis<E, R, S, Res, u8>
    short for Metropolis<E, R, S, Res, u16>
    short for Metropolis<E, R, S, Res, u32>
    short for Metropolis<E, R, S, Res, u64>
    short for Metropolis<E, R, S, Res, u128>
    short for Metropolis<E, R, S, Res, usize>
    Short for ReplicaExchangeWangLandau, which you can look at for citations
    Short for ReplicaExchangeWangLandauBuilder