Epsilon

class Epsilon : public feasst::ModelParam

The epsilon parameter is named “epsilon” in the particle file Site Properties. The epsilon parameter has the default combining rule: \( \epsilon_{ij} = \sqrt{\epsilon_i \epsilon_j} \)

class Sigma : public feasst::ModelParam

The sigma parameter is named “sigma” in the particle file Site Properties. The sigma parameter has the default combining rule:

\( \sigma_{ij} = \left\{ \begin{array}{lr} 0 & : \sigma_i \sigma_j = 0 \\ 0.5(\sigma_i + \sigma_j) & : \sigma_i\sigma_j \neq 0 \end{array} \right. \)

class CutOff : public feasst::ModelParam

The cut off parameter is named “cutoff” in the particle file Site Properties. The cut off parameter has the default combining rule:

\( r_{c,ij} = \left\{ \begin{array}{lr} 0 & : r_{c,i} r_{c,j} = 0 \\ 0.5(r_{c,i} + r_{c,j}) & : r_{c,i}r_{c,j} \neq 0 \end{array} \right. \)

class Charge : public feasst::ModelParam

The charge parameter is named “charge” in the particle file Site Properties. The charge parameter, q, has the default combining rule: \( q_{ij} = q_i q_j \)

class ModelParams : public feasst::PropertiedEntity

Container for all model parameters.

Public Functions

void add(const Particle &particle)

Add all site types in particle.

void mix()

Compute the mixed values.

int size() const

Return the number of values.

void set(const std::string &name, const int site_type, const double value)

Modify model parameter of a given site type and name to value.

void set(const std::string &name, const int site_type1, const int site_type2, const double value)

Modify the mixed model parameter of a pair of given site types and name to value.

void set(const std::string &name, const std::string &filename, std::vector<std::string> *site_type_names = NULL)

Set mixed model parameters by file.

param site_type_names:

Optionally provide a list of names of site types

void set(const std::string &filename, std::vector<std::string> *site_type_names = NULL)

Set mixed model parameters by file.

param site_type_names:

Optionally provide a list of names of site types

void add(std::shared_ptr<ModelParam> param)

Add a custom model parameter.

const ModelParam &select(const int index) const

Return the model parameter with the corresponding index.

int index(const std::string &name) const

Return the index of the model parameter with the corresponding name. Return -1 if name is not found.

const ModelParam &select(const std::string &name) const

Return the model parameter with the corresponding name.

void set_cutoff_min_to_sigma()

Set the minimum cutoff to sigma. This is used for HardSphere potentials that don’t assign cutoff.

void set_physical_constants(std::shared_ptr<PhysicalConstants> constants)

Set the physical constants.

void set_physical_constants()

Set the physical constants to their default values CODATA2018.

const PhysicalConstants &physical_constants() const

Return the physical constants.

const PhysicalConstants &constants() const

Return the physical constants.

void check() const

Check.

std::string str(std::vector<std::string> *site_type_names = NULL) const

Return as a human readable string.

param site_type_names:

If provided, write the names of the site types instead of the indices.

ModelParams deep_copy() const

Return a deep copy of self.