void SetRatio(double fRatio[3])
Set ratio.
int GetNeighborPeriodicDirection(int nIndex)
Get neighbor coupling periodic direction if has coupling with periodic atom.
static unsigned int m_snNeighborNumber
Neighbor count.
void SetCoordination(CKNGeometricCoordination coordination)
Get atom coordination.
MATERIAL_INDEX GetMaterialMaterialNumber(unsigned int nIndex)
Get Neighbor material type.
double * GetCoordinationAll()
void SetType(ATOM_TYPE type, MATERIAL_INDEX number)
Set atom information.
std::vector< MATERIAL_INDEX > m_vectNeighborMaterial
Array of neighbor material number.
ATOM_TYPE m_AtomType
Atom type.
void SetID(double fID)
Set atom ID.
CKNGeometricCoordination m_coordination
Atom coordination.
void ShiftID(double fShift)
Get atom ID.
Common definition for Solver.
std::vector< CKNGeometricCoordination > m_vectNeighborCoordination
Array of neighbor coordination.
CKNGeometricCoordination GetNeighborCoordination(int nIndex)
Get neighbor coordination.
std::vector< COUPLING_TYPE > m_vectCouplingType
Array of neighbor periodic direction.
std::vector< double > m_vectNeighbor
Array of neighbor atom.
#define ATOM_DEFAULT_INDEX
Atom index default value that empty atom instance.
bool IsPeriodicAtom()
Set atom is periodic.
int GetPeriodicDirection()
Adding periodic direction.
bool IsPeriodicCoupling(int nIndex)
Check is this periodic atom.
MATERIAL_INDEX GetMaterialNumber()
Get atom typpe.
bool m_bPeriodic
Periodic information of atom.
int m_periodicDirection
Periodic direction information.
std::vector< int > m_vectNeighborPeriodicDirection
void SetNeighbor(unsigned int nIndex, CKNGeometricAtom *pNeighbor)
Set neighbor information.
CKNGeometricCoordination GetCoordination()
Get Domain atom material type.
void SetCoordination(CKNGeometricCoordination coordination)
Get coordination with double buffer.
void SetRatio(double fRatio[3])
Set ratio.
double GetNeighborAtomID(unsigned int nIndex)
Get neighbor atom count.
MATERIAL_INDEX m_MaterialNumber
Atom material number.