12 #include <util/space/Vector.h> 14 #include <util/space/IntVector.h> 19 template <
class Data>
class RArray;
98 void setMolecule(
Molecule& molecule);
105 void setTypeId(
int typeId);
115 int indexInMolecule()
const;
124 const Vector& position()
const;
133 const Mask& mask()
const;
139 const Vector& velocity()
const;
145 const Vector& force()
const;
148 bool isActive()
const;
182 static void allocate(
int capacity,
RArray<Atom>& atoms);
189 static void deallocate();
194 static int capacity();
203 static const int NullIndex = -1;
218 static Vector* velocities_;
221 static bool* isActives_;
229 static int capacity_;
255 void setIsActive(
bool isActive);
266 inline void Atom:: setTypeId(
int typeId)
267 { typeId_ = typeId; }
270 inline int Atom::id()
const 274 inline int Atom::typeId()
const 278 inline const Vector& Atom::position()
const 279 {
return position_; }
283 {
return position_; }
286 inline const Vector& Atom::velocity()
const 287 {
return velocities_[id_]; }
291 {
return velocities_[id_]; }
295 {
return forces_[id_]; }
299 {
return forces_[id_]; }
303 {
return masks_[id_]; }
306 inline const Mask& Atom::mask()
const 307 {
return masks_[id_]; }
311 {
return *moleculePtrs_[id_]; }
314 inline bool Atom::isActive()
const 315 {
return isActives_[id_]; }
320 {
return shifts_[id_]; }
323 inline const IntVector& Atom::shift()
const 324 {
return shifts_[id_]; }
330 inline void Atom::setIsActive(
bool isActive)
331 { isActives_[id_] = isActive; }
A Vector is a Cartesian vector.
Set of Atoms for which pair interactions with a target Atom are "masked".
Static member functions to de-active and re-active atoms.
File containing preprocessor macros for error handling.
void initStatic()
Guarantee initialization of all static class members in Util namespace.
A point particle within a Molecule.
Utility classes for scientific computation.
Single-processor Monte Carlo (MC) and molecular dynamics (MD).
An IntVector is an integer Cartesian vector.
An Array that acts as a reference to another Array or C array.
A physical molecule (a set of covalently bonded Atoms).