18#ifndef SYMGRPCOMPRAD_H
19#define SYMGRPCOMPRAD_H
82 virtual void calculate(
Atom& atom,
bool const derivatives)
const;
87 virtual std::vector<std::string>
94 std::vector<SymFncCompRad const*>
members;
96 std::vector<double>
mrl;
98 std::vector<double>
mrc;
99#ifndef N2P2_NO_SF_CACHE
101 std::vector<std::vector<std::size_t>>
mci;
Symmetry function base class.
Radial symmetry function with compact support (type 20)
virtual std::vector< std::string > parameterLines() const
Give symmetry function group parameters on multiple lines.
std::size_t e1
Element index of neighbor atom (common feature).
std::vector< double > mrc
Member rc.
virtual void setScalingFactors()
Fill scalingFactors with values from member symmetry functions.
virtual bool operator<(SymGrp const &rhs) const
Overload < operator.
std::vector< double > mrl
Member rl.
virtual bool operator==(SymGrp const &rhs) const
Overload == operator.
virtual void sortMembers()
Sort member symmetry functions.
std::vector< SymFncCompRad const * > members
Vector of all group member pointers.
std::vector< std::vector< std::size_t > > mci
Member cache indices for actual neighbor element.
virtual bool addMember(SymFnc const *const symmetryFunction)
Potentially add a member to group.
virtual void calculate(Atom &atom, bool const derivatives) const
Calculate all symmetry functions of this group for one atom.
SymGrpCompRad(ElementMap const &elementMap)
Constructor, sets type = 20.
ElementMap elementMap
Copy of element map.
Storage for a single atom.