pyemma.thermo.StationaryModel

class pyemma.thermo.StationaryModel(pi=None, f=None, normalize_energy=True, label='ground state')

StationaryModel combines a stationary vector with discrete-state free energies.

Parameters:
  • pi (ndarray(n)) – Stationary distribution. If not already normalized, pi will be scaled to fulfill \(\sum_i \pi_i = 1\). The free energies f will be computed from pi via \(f_i = - \log(\pi_i)\). Only if normalize_f is True, a constant will be added to ensure consistency with \(\sum_i \pi_i = 1\).
  • f (ndarray(n)) – Discrete-state free energies. If normalized_f = True, a constant will be added to normalize the stationary distribution. Otherwise f is left as given.
  • normalize_energy (bool, default=True) – If parametrized by free energy f, normalize them such that \(\sum_i \pi_i = 1\), which is achieved by \(\log \sum_i \exp(-f_i) = 0\).
  • label (str, default='ground state') – Human-readable description for the thermodynamic state of this model. May contain a temperature description, such as ‘300 K’ or a description of bias energy such as ‘unbiased’ or ‘Umbrella 1’
__init__(pi=None, f=None, normalize_energy=True, label='ground state')

Methods

__init__([pi, f, normalize_energy, label])
expectation(a) Equilibrium expectation value of a given observable.
get_model_params([deep]) Get parameters for this model.
set_model_params([pi, f, normalize_f])
param pi:Stationary distribution. If not already normalized, pi will be
update_model_params(**params) Update given model parameter if they are set to specific values

Attributes

active_set
f_full_state The free energies of discrete states
free_energies
free_energies_full_state
nstates Number of active states on which all computations and estimations are done
nstates_full
pi_full_state
stationary_distribution The stationary distribution
stationary_distribution_full_state
expectation(a)

Equilibrium expectation value of a given observable. :param a: Observable vector :type a: (M,) ndarray

Returns:val – Equilibrium expectation value of the given observable
Return type:float

Notes

The equilibrium expectation value of an observable a is defined as follows

\[\mathbb{E}_{\mu}[a] = \sum_i \mu_i a_i\]

\(\mu=(\mu_i)\) is the stationary vector of the transition matrix \(T\).

f_full_state

The free energies of discrete states

get_model_params(deep=True)

Get parameters for this model.

Parameters:deep (boolean, optional) – If True, will return the parameters for this estimator and contained subobjects that are estimators.
Returns:params – Parameter names mapped to their values.
Return type:mapping of string to any
nstates

Number of active states on which all computations and estimations are done

set_model_params(pi=None, f=None, normalize_f=True)
Parameters:
  • pi (ndarray(n)) – Stationary distribution. If not already normalized, pi will be scaled to fulfill \(\sum_i \pi_i = 1\). The free energies f will be computed from pi via \(f_i = - \log(\pi_i)\). Only if normalize_f is True, a constant will be added to ensure consistency with \(\sum_i \pi_i = 1\).
  • f (ndarray(n)) – Discrete-state free energies. If normalized_f = True, a constant will be added to normalize the stationary distribution. Otherwise f is left as given.
  • normalize_f (bool, default=True) – If parametrized by free energy f, normalize them such that \(\sum_i \pi_i = 1\), which is achieved by \(\log \sum_i \exp(-f_i) = 0\).
  • label (str, default='ground state') – Human-readable description for the thermodynamic state of this model. May contain a temperature description, such as ‘300 K’ or a description of bias energy such as ‘unbiased’ or ‘Umbrella 1’
stationary_distribution

The stationary distribution

update_model_params(**params)

Update given model parameter if they are set to specific values