23 #ifndef COM_DAFER45_TBTK_GEOMETRY 24 #define COM_DAFER45_TBTK_GEOMETRY 27 #include <initializer_list> 35 Geometry(
int dimensions,
int numSpecifiers,
Model *parentModel);
43 std::initializer_list<double> coordinates,
44 std::initializer_list<int> specifiers = {}
50 const std::vector<double> &coordinates,
51 const std::vector<int> &specifiers = {}
70 void translate(std::initializer_list<double> translation);
99 unsigned int dimensions;
102 unsigned int numSpecifiers;
122 return numSpecifiers;
126 return &(coordinates[dimensions*parentModel->
getBasisIndex(index)]);
130 return &(coordinates[dimensions*index]);
138 return specifiers[numSpecifiers*parentModel->
getBasisIndex(index) + specifier];
142 return specifiers[numSpecifiers*index + specifier];
146 return &(specifiers[numSpecifiers*parentModel->
getBasisIndex(index)]);
150 return &(specifiers[numSpecifiers*index]);
158 double distanceSquared = 0.;
159 for(
unsigned int n = 0; n < dimensions; n++){
160 double difference = coordinates[index1] - coordinates[index2];
161 distanceSquared += difference*difference;
164 return sqrt(distanceSquared);
int getBasisSize() const
Definition: Geometry.h:167
const double * getCoordinates() const
Definition: Geometry.h:133
~Geometry()
Definition: Geometry.cpp:41
Geometry(int dimensions, int numSpecifiers, Model *parentModel)
Definition: Geometry.cpp:29
void translate(std::initializer_list< double > translation)
Definition: Geometry.cpp:109
const int * getSpecifiers() const
Definition: Geometry.h:153
int getDimensions() const
Definition: Geometry.h:117
Definition: FileReader.h:46
void setCoordinates(const Index &index, std::initializer_list< double > coordinates, std::initializer_list< int > specifiers={})
Definition: Geometry.cpp:47
int getNumSpecifiers() const
Definition: Geometry.h:121
Definition: AbstractOperator.h:26
int getBasisSize()
Definition: Model.h:146
double getDistance(const Index &index1, const Index &index2) const
Definition: Geometry.cpp:125
Definition: Geometry.h:32
int getBasisIndex(Index index)
Definition: Model.h:150
int getSpecifier(const Index &index, int specifier) const
Definition: Geometry.h:137