class ThermoParams

Intensive thermodynamic state variables. Units should be consistent with the particle.

Public Functions

void set_beta(const double beta)

Set beta.

double beta() const

Return beta.

void set_pH(const double pH)

Set the pH.

double pH() const

Return the pH.

void add_chemical_potential(const double chemical_potential)

Add a chemical potential for a given type of particle. Note that z has units length^{-dimension} such that Vz/N is unitless.

void set_chemical_potential(const double mu, const int particle_type = 0)

Set the chemical potential of a given type.

double chemical_potential(const int particle_type = 0) const

Return the chemical potential of the particle type.

double beta_mu(const int particle_type = 0) const

Return the dimensionless product of beta and the chemical potential.

double pressure() const

Return the pressure.

void set_pressure(const double pressure)

Set the pressure.

std::string str() const

Return a human readable string.

bool is_equal(const ThermoParams &thermo_params) const

Return true if equivalent.


  • beta: inverse temperature, \( \beta = \frac{1}{k_B T} \).

  • pH: negative of the log-base-10 of the proton concentration.

  • chemical_potential[i]: chemical potential of the i-th particle type. The [i] is to be substituted for an integer 0, 1, 2, … If only one particle type, you can drop the [i]. The chemical potential must have the inverse units of \(\beta\).

  • pressure: imposed isotropic system pressure.