8#ifndef model_LatticePlane_h_
9#define model_LatticePlane_h_
70 for(
const auto& val :
key.array)
82 static constexpr int dim=3;
VectorDimD planeOrigin() const
LatticeVector< dim > LatticeVectorType
LatticePlane(const long int &hin, const ReciprocalLatticeDirection< dim > &r)
static std::pair< bool, long int > computeHeight(const ReciprocalLatticeDirection< dim > &r, const VectorDimD &P)
LatticePlane(const LatticeVector< dim > &L, const ReciprocalLatticeDirection< dim > &r)
const LatticePlaneKey< dim >::LongIntType planeIndex
Eigen::Matrix< double, dim, 1 > VectorDimD
const LatticePlaneKey< dim > key
const ReciprocalLatticeDirection< dim > n
static std::pair< bool, long int > computeHeight(const ReciprocalLatticeDirection< dim > &r, const LatticeVector< dim > &L)
LatticePlane(const VectorDimD &P, const ReciprocalLatticeDirection< dim > &r)
LatticePlaneKey(const LatticeVector< dim > &L, const ReciprocalLatticeDirection< dim > &r)
friend T & operator<<(T &os, const LatticePlaneKey< dim > &key)
Eigen::Map< const VectorDimI > reciprocalDirectionComponents() const
const LongIntType & planeIndex() const
Eigen::Matrix< double, dim, 1 > VectorDimD
LatticePlaneKey(const VectorDimD &P, const ReciprocalLatticeDirection< dim > &r)
const LongIntType & latticeID() const
static ArrayType hr2array(const VectorDimI &r, const LongIntType &h, const LongIntType &latticeID)
static int sgn(const LongIntType &val)
bool operator<(const LatticePlaneKey< dim > &other) const
Eigen::Matrix< LongIntType, dim, 1 > VectorDimI
LatticePlaneKey(const long int &hin, const ReciprocalLatticeDirection< dim > &r)
LatticePlaneKey(const VectorDimI &r, const LongIntType &h, const LongIntType &latticeID)
const LongIntType & latticeID() const
std::array< LongIntType, dim+2 > ArrayType
static ArrayType correct_h_sign(VectorDimI r, LongIntType h, const LongIntType &latticeID)