#include <frozen_atoms.h>
Public Member Functions | |
~FrozenPotentialWrapper () | |
double | get_energy (Array< double > reduced_coords) |
double | get_energy_gradient (Array< double > reduced_coords, Array< double > reduced_grad) |
double | get_energy_gradient_hessian (Array< double > reduced_coords, Array< double > reduced_grad, Array< double > reduced_hess) |
Public Attributes | |
FrozenCoordsConverter | coords_converter |
Protected Member Functions | |
FrozenPotentialWrapper (std::shared_ptr< PotentialType > potential, Array< double > const &reference_coords, Array< size_t > const &frozen_dof) | |
Protected Attributes | |
std::shared_ptr< PotentialType > | _underlying_potential |
Definition at line 141 of file frozen_atoms.h.
pele::FrozenPotentialWrapper< PotentialType >::FrozenPotentialWrapper | ( | std::shared_ptr< PotentialType > | potential, |
Array< double > const & | reference_coords, | ||
Array< size_t > const & | frozen_dof | ||
) | [inline, protected] |
Definition at line 148 of file frozen_atoms.h.
pele::FrozenPotentialWrapper< PotentialType >::~FrozenPotentialWrapper | ( | ) | [inline] |
Definition at line 156 of file frozen_atoms.h.
double pele::FrozenPotentialWrapper< PotentialType >::get_energy | ( | Array< double > | x | ) | [inline, virtual] |
Return the energy of configuration x. This is the only function which must be overloaded
Reimplemented from pele::BasePotential.
Definition at line 168 of file frozen_atoms.h.
double pele::FrozenPotentialWrapper< PotentialType >::get_energy_gradient | ( | Array< double > | x, |
Array< double > | grad | ||
) | [inline, virtual] |
compute the energy and gradient.
If not overloaded it will compute the numerical gradient
Reimplemented from pele::BasePotential.
Definition at line 177 of file frozen_atoms.h.
double pele::FrozenPotentialWrapper< PotentialType >::get_energy_gradient_hessian | ( | Array< double > | x, |
Array< double > | grad, | ||
Array< double > | hess | ||
) | [inline, virtual] |
compute the energy and gradient and Hessian.
If not overloaded it will compute the Hessian numerically and use get_energy_gradient to get the energy and gradient.
Reimplemented from pele::BasePotential.
Definition at line 196 of file frozen_atoms.h.
std::shared_ptr<PotentialType> pele::FrozenPotentialWrapper< PotentialType >::_underlying_potential [protected] |
Definition at line 146 of file frozen_atoms.h.
FrozenCoordsConverter pele::FrozenPotentialWrapper< PotentialType >::coords_converter |
Definition at line 144 of file frozen_atoms.h.