Simpatico
v1.10
|
A region with orthogonal edges parallel to the x, y, and z axes.
This struct is intended to be used as a private or protected component, i.e., a private or protected member or base class of another class.
Definition at line 27 of file OrthoRegion.h.
#include <OrthoRegion.h>
Public Member Functions | |
OrthoRegion () | |
Constructor. More... | |
void | resetRegion () |
Set lengths and volume to values consistent with minima and maxima. More... | |
bool | isValid () |
Return true if valid, or throw Exception. More... | |
template<class Archive > | |
void | serialize (Archive &ar, const unsigned int version) |
Serialize to/from an archive. More... | |
Public Attributes | |
Vector | minima_ |
Minimum coordinates: Require r[i] >= minima_[i]. More... | |
Vector | maxima_ |
Maximum coordinates: Require r[i] < maxima_[i]. More... | |
Vector | lengths_ |
OrthoRegion lengths: lengths_[i] = maxima_[i] - minima_[i]. More... | |
Vector | halfLengths_ |
Half region lengths: halfLengths_[i] = 0.5*lengths_[i]. More... | |
double | volume_ |
Volume: V = lengths_[0]*lengths_[1]*lengths_[2]. More... | |
Simp::OrthoRegion::OrthoRegion | ( | ) |
Constructor.
Initialize to minima_ = {0.0, 0.0, 0.0} and maxima_ = {1.0, 1.0, 1.0}
Definition at line 23 of file OrthoRegion.cpp.
References Util::Dimension, halfLengths_, lengths_, maxima_, minima_, and volume_.
void Simp::OrthoRegion::resetRegion | ( | ) |
Set lengths and volume to values consistent with minima and maxima.
Definition at line 37 of file OrthoRegion.cpp.
References Util::Dimension, halfLengths_, lengths_, maxima_, minima_, and volume_.
Referenced by Simp::OrthorhombicBoundary::setCubic().
bool Simp::OrthoRegion::isValid | ( | ) |
Return true if valid, or throw Exception.
Definition at line 50 of file OrthoRegion.cpp.
References Util::Dimension, Util::feq(), halfLengths_, lengths_, maxima_, minima_, Util::product(), UTIL_THROW, and volume_.
Referenced by Simp::OrthorhombicBoundary::isValid().
void Simp::OrthoRegion::serialize | ( | Archive & | ar, |
const unsigned int | version | ||
) |
Serialize to/from an archive.
ar | saving or loading archive |
version | archive version id |
Definition at line 79 of file OrthoRegion.h.
References halfLengths_, lengths_, maxima_, minima_, and volume_.
Referenced by Simp::OrthorhombicBoundary::serialize().
Vector Simp::OrthoRegion::minima_ |
Minimum coordinates: Require r[i] >= minima_[i].
Definition at line 33 of file OrthoRegion.h.
Referenced by isValid(), Simp::OrthorhombicBoundary::isValid(), OrthoRegion(), Simp::OrthorhombicBoundary::randomPosition(), resetRegion(), serialize(), and Simp::OrthorhombicBoundary::shift().
Vector Simp::OrthoRegion::maxima_ |
Maximum coordinates: Require r[i] < maxima_[i].
Definition at line 36 of file OrthoRegion.h.
Referenced by isValid(), Simp::operator>>(), OrthoRegion(), Simp::OrthorhombicBoundary::randomPosition(), resetRegion(), serialize(), Simp::OrthorhombicBoundary::setCubic(), Simp::OrthorhombicBoundary::setOrthorhombic(), Simp::OrthorhombicBoundary::setTetragonal(), and Simp::OrthorhombicBoundary::shift().
Vector Simp::OrthoRegion::lengths_ |
OrthoRegion lengths: lengths_[i] = maxima_[i] - minima_[i].
Definition at line 39 of file OrthoRegion.h.
Referenced by Simp::OrthorhombicBoundary::applyShift(), Simp::OrthorhombicBoundary::distanceSq(), isValid(), Simp::OrthorhombicBoundary::isValid(), Simp::OrthorhombicBoundary::length(), Simp::OrthorhombicBoundary::lengths(), Simp::operator<<(), OrthoRegion(), Simp::OrthorhombicBoundary::OrthorhombicBoundary(), resetRegion(), serialize(), Simp::OrthorhombicBoundary::setCubic(), Simp::OrthorhombicBoundary::shift(), and Simp::OrthorhombicBoundary::transformGenToCart().
Vector Simp::OrthoRegion::halfLengths_ |
Half region lengths: halfLengths_[i] = 0.5*lengths_[i].
Definition at line 42 of file OrthoRegion.h.
Referenced by Simp::OrthorhombicBoundary::distanceSq(), Simp::OrthorhombicBoundary::isMinImageCart(), isValid(), OrthoRegion(), resetRegion(), and serialize().
double Simp::OrthoRegion::volume_ |
Volume: V = lengths_[0]*lengths_[1]*lengths_[2].
Definition at line 45 of file OrthoRegion.h.
Referenced by isValid(), OrthoRegion(), resetRegion(), serialize(), and Simp::OrthorhombicBoundary::volume().