mcpele
1.0.0
The Monte Carlo Python Energy Landscape Explorer
|
#include <cell_list_potential.h>
Public Member Functions | |
virtual | ~PairIteratorPotential () |
PairIteratorPotential (std::shared_ptr< pairwise_interaction > interaction, std::shared_ptr< distance_policy > dist, std::shared_ptr< pair_iterator > pair_iter) | |
virtual double | get_energy (Array< double > xa) |
virtual double | get_energy_gradient (Array< double > xa, Array< double > grad) |
virtual double | get_energy_gradient_hessian (Array< double > xa, Array< double > grad, Array< double > hess) |
Protected Member Functions | |
void | refresh_iterator (Array< double > x) |
Protected Attributes | |
std::shared_ptr < pairwise_interaction > | m_interaction |
std::shared_ptr< distance_policy > | m_dist |
std::shared_ptr< pair_iterator > | m_pair_iter |
Static Protected Attributes | |
static const size_t | m_ndim = distance_policy::_ndim |
Potential to iterate over the list of atom pairs generated with the cell list implementation in neighbor_iterator.h. This should also do the cell list construction and refresh, such that the interface is the same for the user as with SimplePairwise.
Definition at line 24 of file cell_list_potential.h.
virtual pele::PairIteratorPotential< pairwise_interaction, distance_policy, pair_iterator >::~PairIteratorPotential | ( | ) | [inline, virtual] |
Definition at line 31 of file cell_list_potential.h.
pele::PairIteratorPotential< pairwise_interaction, distance_policy, pair_iterator >::PairIteratorPotential | ( | std::shared_ptr< pairwise_interaction > | interaction, |
std::shared_ptr< distance_policy > | dist, | ||
std::shared_ptr< pair_iterator > | pair_iter | ||
) | [inline] |
Definition at line 32 of file cell_list_potential.h.
virtual double pele::PairIteratorPotential< pairwise_interaction, distance_policy, pair_iterator >::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 40 of file cell_list_potential.h.
virtual double pele::PairIteratorPotential< pairwise_interaction, distance_policy, pair_iterator >::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 61 of file cell_list_potential.h.
virtual double pele::PairIteratorPotential< pairwise_interaction, distance_policy, pair_iterator >::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 93 of file cell_list_potential.h.
void pele::PairIteratorPotential< pairwise_interaction, distance_policy, pair_iterator >::refresh_iterator | ( | Array< double > | x | ) | [inline, protected] |
Definition at line 159 of file cell_list_potential.h.
std::shared_ptr<distance_policy> pele::PairIteratorPotential< pairwise_interaction, distance_policy, pair_iterator >::m_dist [protected] |
Definition at line 28 of file cell_list_potential.h.
std::shared_ptr<pairwise_interaction> pele::PairIteratorPotential< pairwise_interaction, distance_policy, pair_iterator >::m_interaction [protected] |
Definition at line 27 of file cell_list_potential.h.
const size_t pele::PairIteratorPotential< pairwise_interaction, distance_policy, pair_iterator >::m_ndim = distance_policy::_ndim [static, protected] |
Definition at line 26 of file cell_list_potential.h.
std::shared_ptr<pair_iterator > pele::PairIteratorPotential< pairwise_interaction, distance_policy, pair_iterator >::m_pair_iter [protected] |
Definition at line 29 of file cell_list_potential.h.