ModelTwoBodyFactory

class ModelTwoBodyFactory : public feasst::ModelTwoBody

Contains a collection of two body models. This allows the visitor to consider multiple two body models for each pairwise interaction.

Public Functions

ModelTwoBodyFactory(argtype args = argtype())

args:

  • model[i]: add the i-th model. The “[i]” is to be substituted for an integer 0, 1, 2, …

void add(std::vector<std::shared_ptr<ModelTwoBody>> models)

Add a vector of two body models.

void add(std::shared_ptr<ModelTwoBody> model)

Add a two body model.

int num() const

Return the number of two body models.

const Model *model(const int index) const

Return a two body model by index.

void precompute(const ModelParams &existing)

Precompute model parameters based on existing model parameters.

void serialize(std::ostream &ostr) const

Output a serialized version of the existing model.