oILAB
|
LatticeVector class. More...
#include <LatticeVector.h>
Public Types | |
typedef LatticeCore< dim >::IntScalarType | IntScalarType |
typedef LatticeCore< dim >::VectorDimD | VectorDimD |
typedef LatticeCore< dim >::MatrixDimD | MatrixDimD |
typedef LatticeCore< dim >::VectorDimI | VectorDimI |
typedef LatticeCore< dim >::MatrixDimI | MatrixDimI |
Public Member Functions | |
LatticeVector (const Lattice< dim > &lat) | |
LatticeVector (const VectorDimD &d, const Lattice< dim > &lat) | |
LatticeVector (const VectorDimI &d, const Lattice< dim > &lat) | |
LatticeVector (const LatticeVector< dim > &other)=default | |
LatticeVector (LatticeVector< dim > &&other)=default | |
LatticeVector< dim > & | operator= (const LatticeVector< dim > &other) |
LatticeVector< dim > & | operator= (LatticeVector< dim > &&other) |
LatticeVector< dim > | operator+ (const LatticeVector< dim > &other) const |
LatticeVector< dim > & | operator+= (const LatticeVector< dim > &other) |
LatticeVector< dim > | operator- (const LatticeVector< dim > &other) const |
LatticeVector< dim > & | operator-= (const LatticeVector< dim > &other) |
LatticeVector< dim > | operator* (const IntScalarType &scalar) const |
IntScalarType | dot (const ReciprocalLatticeVector< dim > &other) const |
IntScalarType | dot (const ReciprocalLatticeDirection< dim > &other) const |
VectorDimD | cartesian () const |
template<int dm = dim> | |
std::enable_if< dm==2, ReciprocalLatticeDirection< dm > >::type | cross (const LatticeVector< dm > &other) const |
template<int dm = dim> | |
std::enable_if< dm==3, ReciprocalLatticeDirection< dm > >::type | cross (const LatticeVector< dm > &other) const |
template<int dm = dim> | |
std::enable_if< dm==2, ReciprocalLatticeDirection< dm > >::type | cross () const |
template<int dm = dim> | |
std::enable_if< dm==3, ReciprocalLatticeDirection< dm > >::type | cross () const |
Static Public Member Functions | |
template<int dm = dim> | |
static std::enable_if< dm==2, void >::type | modulo (LatticeVector< dim > &input, const std::vector< LatticeVector< dim > > &basis, const VectorDimD &shift=VectorDimD::Zero()) |
template<int dm = dim> | |
static std::enable_if< dm==2, void >::type | modulo (VectorDimD &input, const std::vector< LatticeVector< dim > > &basis, const VectorDimD &shift=VectorDimD::Zero()) |
template<int dm = dim> | |
static std::enable_if< dm==3, void >::type | modulo (LatticeVector< dim > &input, const std::vector< LatticeVector< dim > > &basis, const VectorDimD &shift=VectorDimD::Zero()) |
template<int dm = dim> | |
static std::enable_if< dm==3, void >::type | modulo (VectorDimD &input, const std::vector< LatticeVector< dim > > &basis, const VectorDimD &shift=VectorDimD ::Zero()) |
Data Fields | |
const Lattice< dim > & | lattice |
Private Types | |
typedef Eigen::Matrix< typename LatticeCore< dim >::IntScalarType, dim, 1 > | BaseType |
Private Member Functions | |
BaseType & | base () |
const BaseType & | base () const |
LatticeVector class.
The LatticeVector<dim> class describes a lattice vector in a lattice
Definition at line 18 of file LatticeVector.h.
|
private |
Definition at line 20 of file LatticeVector.h.
typedef LatticeCore<dim>::IntScalarType gbLAB::LatticeVector< dim >::IntScalarType |
Definition at line 27 of file LatticeVector.h.
typedef LatticeCore<dim>::MatrixDimD gbLAB::LatticeVector< dim >::MatrixDimD |
Definition at line 29 of file LatticeVector.h.
typedef LatticeCore<dim>::MatrixDimI gbLAB::LatticeVector< dim >::MatrixDimI |
Definition at line 31 of file LatticeVector.h.
typedef LatticeCore<dim>::VectorDimD gbLAB::LatticeVector< dim >::VectorDimD |
Definition at line 28 of file LatticeVector.h.
typedef LatticeCore<dim>::VectorDimI gbLAB::LatticeVector< dim >::VectorDimI |
Definition at line 30 of file LatticeVector.h.
gbLAB::LatticeVector< dim >::LatticeVector | ( | const Lattice< dim > & | lat | ) |
Definition at line 32 of file LatticeVector.cpp.
gbLAB::LatticeVector< dim >::LatticeVector | ( | const VectorDimD & | d, |
const Lattice< dim > & | lat | ||
) |
[in] | d | vector in real space Constructs *this by mapping d to the lattice |
Definition at line 40 of file LatticeVector.cpp.
gbLAB::LatticeVector< dim >::LatticeVector | ( | const VectorDimI & | d, |
const Lattice< dim > & | lat | ||
) |
Definition at line 51 of file LatticeVector.cpp.
|
default |
|
default |
|
private |
Definition at line 17 of file LatticeVector.cpp.
|
private |
Definition at line 24 of file LatticeVector.cpp.
LatticeVector< dim >::VectorDimD gbLAB::LatticeVector< dim >::cartesian | ( | ) | const |
Definition at line 134 of file LatticeVector.cpp.
|
inline |
Definition at line 70 of file LatticeVector.h.
|
inline |
Definition at line 76 of file LatticeVector.h.
|
inline |
Definition at line 55 of file LatticeVector.h.
|
inline |
Definition at line 62 of file LatticeVector.h.
LatticeVector< dim >::IntScalarType gbLAB::LatticeVector< dim >::dot | ( | const ReciprocalLatticeDirection< dim > & | other | ) | const |
Definition at line 126 of file LatticeVector.cpp.
LatticeVector< dim >::IntScalarType gbLAB::LatticeVector< dim >::dot | ( | const ReciprocalLatticeVector< dim > & | other | ) | const |
Definition at line 118 of file LatticeVector.cpp.
|
static |
Definition at line 155 of file LatticeVector.cpp.
|
static |
|
static |
|
static |
Definition at line 175 of file LatticeVector.cpp.
LatticeVector< dim > gbLAB::LatticeVector< dim >::operator* | ( | const IntScalarType & | scalar | ) | const |
Definition at line 111 of file LatticeVector.cpp.
LatticeVector< dim > gbLAB::LatticeVector< dim >::operator+ | ( | const LatticeVector< dim > & | other | ) | const |
Definition at line 75 of file LatticeVector.cpp.
LatticeVector< dim > & gbLAB::LatticeVector< dim >::operator+= | ( | const LatticeVector< dim > & | other | ) |
Definition at line 84 of file LatticeVector.cpp.
LatticeVector< dim > gbLAB::LatticeVector< dim >::operator- | ( | const LatticeVector< dim > & | other | ) | const |
Definition at line 93 of file LatticeVector.cpp.
LatticeVector< dim > & gbLAB::LatticeVector< dim >::operator-= | ( | const LatticeVector< dim > & | other | ) |
Definition at line 102 of file LatticeVector.cpp.
LatticeVector< dim > & gbLAB::LatticeVector< dim >::operator= | ( | const LatticeVector< dim > & | other | ) |
Definition at line 58 of file LatticeVector.cpp.
LatticeVector< dim > & gbLAB::LatticeVector< dim >::operator= | ( | LatticeVector< dim > && | other | ) |
Definition at line 66 of file LatticeVector.cpp.
const Lattice<dim>& gbLAB::LatticeVector< dim >::lattice |
Definition at line 33 of file LatticeVector.h.