9 #pragma warning(disable:4786)
95 void addStructure(
int aStep,
unsigned int aNumAtoms,
const float *aCoords,
const unsigned int *aZ,
const float *aUnitCell,
bool aHasEnergy=
false,
float aEnergy=0.0F,
bool aEnergyIsPerAtom=
true);
109 void addStructureBatch(
int aStep,
unsigned int aNumAtoms,
const float *aCoords,
const unsigned int *aZ,
const float *aUnitCell,
bool aHasEnergy=
false,
float aEnergy=0.0F,
bool aEnergyIsPerAtom=
true);
205 unsigned int getNatoms(
size_t aIdx)
const;
218 const unsigned int*
getAtomZ(
size_t aIdx)
const;
225 const float*
getCoords(
size_t aIdx)
const;
403 float getDistance(
size_t aIdx1,
size_t aIdx2)
const;
456 void setK(
unsigned int aK);
468 const std::vector< std::set<unsigned int> >&
getGroups(
void)
const;
503 void serialize(std::ofstream& aStream)
const;
513 void unserialize(std::ifstream& aStream,
bool aAppend=
false,
int aStepOffset=10000);
524 void dump(
void)
const;
532 static void unitCellInverse(
const float *aUnitCell,
float aUnitCellInverse[3][3]);
533 void computeExpansion(
const float* aUnitCell,
unsigned int* aExpansion)
const;
536 struct CrystalFpImpl;
537 struct CrystalFpImpl* mPimpl;