ell::SC_PartitionFunction_Shifted Class Reference
#include <StateCollector.hh>
Inheritance diagram for ell::SC_PartitionFunction_Shifted:
Detailed Description
This StateCollector implementation counts the number of collected States and calculates the canonical partition function Z of these States. Z = sum( e^(-E(State)/kT) ) is the sum of the Boltzmann weights of all States. The kT value is derived from LandscapeTopology::BOLTZMANN_KT.NOTE: This class is almost always a better choice comp. to SC_PartitionFunction, as any energies < -1 can incure severe rounding errors and even overflow, esp. when summing up many states of low energy Here we use the energy difference to the minimal energy of the landscape the States are from and sum over shifted Boltzmann weights. The final Z and energy are calculated from that.
The shifted Z calculation is based on the minimal energy of the Landscape MinE. Thus we sum Z' = sum( e^(-(E(State)-MinE)/kT) ) = sum( e^((MinE-E(State))/kT) ).
The final Z is than calculated using Z = Z' / e^(MinE/kT).
Definition at line 422 of file StateCollector.hh.
Public Member Functions | |
virtual void | add (const State &s) |
double | getEnergy (void) const |
virtual const State *const | getLastAdded () const |
double | getZ (void) const |
SC_PartitionFunction_Shifted (const double MinE) | |
SC_PartitionFunction_Shifted (const LandscapeTopology <) | |
virtual size_t | size () const |
virtual | ~SC_PartitionFunction_Shifted () |
Protected Attributes | |
State * | lastAdded |
const double | MIN_E |
size_t | stateCount |
double | Z_shifted |
Constructor & Destructor Documentation
ell::SC_PartitionFunction_Shifted::SC_PartitionFunction_Shifted | ( | const LandscapeTopology & | lt | ) |
Construction
- Parameters:
-
lt The landscape topology from that the minimum free energy is used to make the energy shift of the Boltzmann weights.
Definition at line 52 of file SC_PartitionFunction.cc.
ell::SC_PartitionFunction_Shifted::SC_PartitionFunction_Shifted | ( | const double | MinE | ) |
Construction NOTE : If this constructor is used YOU have to ensure that the energies of all collected States are greater equal >= to this value !
- Parameters:
-
MinE the minimal energy to use. NOTE: has to be >= to the energies of all collected States. energy is used to make the energy shift of the Boltzmann weights.
Definition at line 60 of file SC_PartitionFunction.cc.
ell::SC_PartitionFunction_Shifted::~SC_PartitionFunction_Shifted | ( | ) | [virtual] |
Member Function Documentation
void ell::SC_PartitionFunction_Shifted::add | ( | const State & | s | ) | [virtual] |
This function makes the collector manage the given State.
- Parameters:
-
s the added State
Reimplemented from ell::SC_Counting.
Definition at line 74 of file SC_PartitionFunction.cc.
double ell::SC_PartitionFunction_Shifted::getEnergy | ( | void | ) | const |
Calculates the free energy of the collected State ensemble based on the canonical partition function : E = MIN_E -kT * ln(Z)
- Returns:
- the energy of the State ensemble
Definition at line 95 of file SC_PartitionFunction.cc.
const State *const ell::SC_Counting::getLastAdded | ( | ) | const [virtual, inherited] |
Returns last added State.
- Returns:
- last added State
Implements ell::StateCollector.
Definition at line 37 of file SC_Counting.cc.
double ell::SC_PartitionFunction_Shifted::getZ | ( | void | ) | const |
Access to the canonical partition function of the collected States. Z = Z' / e^(MinE/kT)
- Returns:
- the partition function Z
Definition at line 88 of file SC_PartitionFunction.cc.
size_t ell::SC_Counting::size | ( | ) | const [virtual, inherited] |
Returns number of added States.
- Returns:
- the number of added states
Implements ell::StateCollector.
Definition at line 30 of file SC_Counting.cc.
Field Documentation
State* ell::SC_Counting::lastAdded [protected, inherited] |
const double ell::SC_PartitionFunction_Shifted::MIN_E [protected] |
size_t ell::SC_Counting::stateCount [protected, inherited] |
double ell::SC_PartitionFunction_Shifted::Z_shifted [protected] |
The current canonical partition function of the collected States shifted by the minimum free energy of the landscape.
Definition at line 451 of file StateCollector.hh.
The documentation for this class was generated from the following files:
- src/ell/StateCollector.hh
- src/ell/SC_PartitionFunction.cc