Avogadro::Calc::LennardJones#
-
class LennardJones : public EnergyCalculator#
Public Functions
-
LennardJones()#
-
~LennardJones() override = default#
-
inline virtual LennardJones *newInstance() const override#
Create a new instance of the model. Ownership passes to the caller.
-
inline virtual std::string identifier() const override#
- Returns:
a unique identifier for this calculator.
-
inline virtual std::string name() const override#
- Returns:
A short translatable name for this method (e.g., MMFF94, UFF, etc.)
-
inline virtual std::string description() const override#
- Returns:
a description of the method
-
inline virtual bool acceptsIons() const override#
Indicate if your method can handle ions Many methods only treat neutral systems, either a neutral molecule or a neutral unit cell.
- Returns:
true if ions are supported
-
inline virtual bool acceptsRadicals() const override#
Indicate if your method can handle radicals Most methods only treat closed-shell molecules.
- Returns:
true if radicals are supported
-
inline virtual bool acceptsUnitCell() const override#
Indicate if your method can handle unit cells.
- Returns:
true if unit cells are supported
-
inline virtual Core::Molecule::ElementMask elements() const override#
Indicate if your method only treats a subset of elements.
- Returns:
an element mask corresponding to the defined subset
-
virtual Real value(const Eigen::VectorXd &x) override#
Calculate the energy for this method.
-
virtual void gradient(const Eigen::VectorXd &x, Eigen::VectorXd &grad) override#
Calculate the gradients for this method, defaulting to numerical finite-difference methods
-
virtual Real evaluate(const Eigen::VectorXd &x, Eigen::VectorXd *grad) override#
Evaluate the energy and optionally gradients in one call.
Derived classes with efficient fused implementations should override this.
-
LennardJones()#