1 #ifndef SIMP_SPECIES_GROUP_H 2 #define SIMP_SPECIES_GROUP_H 22 template <
int NAtom> std::istream&
25 template <
int NAtom> std::ostream&
26 operator << (std::ostream& out, const SpeciesGroup<NAtom>& speciesGroup);
28 template <
int NAtom> std::ostream&
29 operator << (std::ostream& out, const SpeciesGroup<NAtom>& speciesGroup);
41 template <
class Archive,
int NAtom>
43 const unsigned int version);
142 template <
class Archive>
friend 144 const unsigned int version);
146 template <
class Archive>
friend 148 const unsigned int version);
159 for (
int i=0; i < NAtom; ++i) {
183 {
return atomIds_[i]; }
222 operator << (std::ostream& out, const SpeciesGroup<NAtom> &speciesGroup);
226 template <
class Archive>
229 for (
int i = 0; i < 2; ++i) {
230 ar & speciesGroup.atomIds_[i];
232 ar & speciesGroup.typeId_;
235 template <
class Archive>
238 for (
int i = 0; i < 3; ++i) {
239 ar & speciesGroup.atomIds_[i];
241 ar & speciesGroup.typeId_;
244 template <
class Archive>
247 for (
int i = 0; i < 4; ++i) {
248 ar & speciesGroup.atomIds_[i];
250 ar & speciesGroup.typeId_;
256 #include <util/mpi/MpiTraits.h> 305 #endif // ifdef UTIL_MPI void serialize(Archive &ar, BoundaryEnsemble::Type &data, const unsigned int version)
Serialize a BoundaryEnsemble::Type enum value.
friend void serialize(Archive &ar, SpeciesGroup< NAtom > &speciesGroup, const unsigned int version)
Serialize one SpeciesGroup<NAtom>.
A Group of covalently interacting atoms within any molecule of one Species.
static void commitMpiType()
Commit associated MPI DataType.
static bool hasType
Is the MPI type initialized?
static bool hasType
Is the MPI type initialized?
static MPI::Datatype type
MPI Datatype.
File containing preprocessor macros for error handling.
Classes used by all simpatico molecular simulations.
std::istream & operator>>(std::istream &in, MonoclinicBoundary &boundary)
istream extractor for a MonoclinicBoundary.
friend std::istream & operator>>(std::istream &in, SpeciesGroup< NAtom > &speciesGroup)
istream extractor for a SpeciesGroup.
static const int NullIndex
Null (unknown) value for non-negative atom and group type indices.
Utility classes for scientific computation.
SpeciesGroup()
Constructor.
int typeId() const
Get the type id for this covalent group.
void setAtomId(int i, int atomId)
Set index for one atom in the group.
static MPI::Datatype type
MPI Datatype.
void commitMpiSpeciesGroupTypes()
Commit all MPI SpeciesGroup data types.
static MPI::Datatype type
MPI Datatype.
int atomId(int i) const
Get the local id for a specific Atom.
void setTypeId(int typeId)
Set the group type id for this group.
static bool hasType
Is the MPI type initialized?