19 bool contains(
const std::string &dof_name)
const;
20 void add_dof(
const std::string &dof_name);
26 template<
typename ClustType>
52 const std::string &
name()
const {
98 m_neighbor_occ.
resize(nlist_size, 0);
103 for(
Index i = 0; i < m_neighbor_occ.
size(); i++)
136 if(dof_name ==
"disp_x")
138 else if(dof_name ==
"disp_y")
140 else if(dof_name ==
"disp_z")
151 m_neighbor_disp.
resize(nlist_size, 0);
156 for(
Index i = 0; i < m_neighbor_disp.
size(); i++)
181 for(
Index i = 0; i < m_strain_vals.
size(); i++)
191 template<
typename ClustType>
195 for(nb = 0; nb < tree.
size(); nb++) {
196 for(no = 0; no < tree[nb].
size(); no++) {
197 for(ne = 0; ne < tree[nb][no].
size(); ne++) {
int register_dofs(BasisSet &basis) const
bool contains(const std::string &dof_name) const
virtual void print_to_clexulator_constructor(std::ostream &stream, const SiteOrbitree &tree, const std::string &indent) const
void set_global_dof_state(const Configuration &config)
int register_dofs(BasisSet &basis) const
void print_clexulator_member_definitions(std::ostream &stream, const SiteOrbitree &tree, const std::string &indent) const
void print_clexulator_private_method_definitions(std::ostream &stream, const SiteOrbitree &tree, const std::string &indent) const
void set_local_dof_state(const Configuration &config, Index l)
void resize_neighborhood(Index nlist_size)
void push_back(const T &toPush)
const std::string & name() const
virtual void print_clexulator_public_method_implementations(std::ostream &stream, const SiteOrbitree &tree, const std::string &indent) const
void print_clexulator_public_method_definitions(std::ostream &stream, const SiteOrbitree &tree, const std::string &indent) const
ReturnArray< FunctionVisitor * > get_function_label_visitors() const
void print_to_clexulator_constructor(std::ostream &stream, const SiteOrbitree &tree, const std::string &indent) const
virtual void print_clexulator_member_definitions(std::ostream &stream, const SiteOrbitree &tree, const std::string &indent) const
void print_clexulator_member_definitions(std::ostream &stream, const SiteOrbitree &tree, const std::string &indent) const
virtual void set_local_state(const Configuration &config, Index l)=0
set the state of LOCAL parameters based on their value in config
DisplacementDoFEnvironment(std::string dof_name)
OccupationDoFEnvironment(std::string dof_name="p")
virtual void print_clexulator_private_method_definitions(std::ostream &stream, const SiteOrbitree &tree, const std::string &indent) const
FunctionVisitor * get_function_label_visitor() const
void set_global_state(const Configuration &config)
set the state of GLOBAL parameters based on their value in config
void print_clexulator_private_method_implementations(std::ostream &stream, const SiteOrbitree &tree, const std::string &indent) const
StrainDoFEnvironment(std::string dof_name)
EigenIndex Index
For long integer indexing:
void set_global_state(const Configuration &config)
set the state of GLOBAL parameters based on their value in config
virtual ~DoFEnvironment()
virtual void print_clexulator_private_method_implementations(std::ostream &stream, const SiteOrbitree &tree, const std::string &indent) const
Array< DoFEnvironment * > m_environs
Array< int > m_neighbor_occ
void resize_neighborhood(Index nlist_size)
virtual void resize_neighborhood(Index nlist_size)
DoFEnvironment(std::string dof_name)
void print_clexulator_public_method_implementations(std::ostream &stream, const SiteOrbitree &tree, const std::string &indent) const
virtual void set_global_state(const Configuration &config)=0
set the state of GLOBAL parameters based on their value in config
int register_remotes(const std::string &dof_name, const Array< DoF::RemoteHandle > &remote_handles)
void set_local_state(const Configuration &config, Index l)
set the state of LOCAL parameters based on their value in config
virtual int register_dofs(BasisSet &basis) const =0
virtual void print_clexulator_public_method_definitions(std::ostream &stream, const SiteOrbitree &tree, const std::string &indent) const
void print_clexulator_public_method_definitions(std::ostream &stream, const SiteOrbitree &tree, const std::string &indent) const
void print_clexulator_private_method_definitions(std::ostream &stream, const SiteOrbitree &tree, const std::string &indent) const
void set_local_state(const Configuration &config, Index l)
set the state of LOCAL parameters based on their value in config
void resize_neighborhood(Index nlist_size)
void print_to_clexulator_constructor(std::ostream &stream, const SiteOrbitree &tree, const std::string &indent) const
void set_global_state(const Configuration &config)
set the state of GLOBAL parameters based on their value in config
virtual FunctionVisitor * get_function_label_visitor() const
DoFManager holds multiple DoFEnvironments, and provides a simple interface for adding and managing Do...
void set_local_state(const Configuration &config, Index l)
set the state of LOCAL parameters based on their value in config
Basic std::vector like container (deprecated)
Array< double > m_strain_vals
int register_dofs(BasisSet &basis) const
void register_dofs(GenericOrbitree< ClustType > &tree) const
void add_dof(const std::string &dof_name)
Array< double > m_neighbor_disp
Index size(Index np) const
Number of orbits in OrbitBranch 'np'.
A Configuration represents the values of all degrees of freedom in a Supercell.