oILAB
Loading...
Searching...
No Matches
gbLAB::LatticeDirection< dim > Struct Template Reference

LatticeDirection class. More...

#include <LatticeDirection.h>

+ Inheritance diagram for gbLAB::LatticeDirection< dim >:

Public Types

using IntScalarType = typename LatticeCore< dim >::IntScalarType
 
using VectorDimI = typename LatticeCore< dim >::VectorDimI
 

Public Member Functions

 LatticeDirection (const LatticeVector< dim > &v)
 
 LatticeDirection (const LatticeDirection< dim > &other)=default
 
 LatticeDirection (const VectorDimI &v, const Lattice< dim > &lat)
 
const LatticeVector< dim > & latticeVector () const
 

Additional Inherited Members

- Protected Types inherited from gbLAB::LatticeVector< dim >
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
 
- Protected Member Functions inherited from gbLAB::LatticeVector< dim >
 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 Protected Member Functions inherited from gbLAB::LatticeVector< dim >
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())
 
- Protected Attributes inherited from gbLAB::LatticeVector< dim >
const Lattice< dim > & lattice
 

Detailed Description

template<int dim>
struct gbLAB::LatticeDirection< dim >

LatticeDirection class.

The LatticeDirection<dim> class describes the smallest lattice vector in its direction

Examples
testLattice.cpp, and testPlaneParallelLatticeDirections.cpp.

Definition at line 19 of file LatticeDirection.h.

Member Typedef Documentation

◆ IntScalarType

template<int dim>
using gbLAB::LatticeDirection< dim >::IntScalarType = typename LatticeCore<dim>::IntScalarType

Definition at line 21 of file LatticeDirection.h.

◆ VectorDimI

template<int dim>
using gbLAB::LatticeDirection< dim >::VectorDimI = typename LatticeCore<dim>::VectorDimI

Definition at line 22 of file LatticeDirection.h.

Constructor & Destructor Documentation

◆ LatticeDirection() [1/3]

template<int dim>
gbLAB::LatticeDirection< dim >::LatticeDirection ( const LatticeVector< dim > &  v)

Definition at line 14 of file LatticeDirection.cpp.

◆ LatticeDirection() [2/3]

template<int dim>
gbLAB::LatticeDirection< dim >::LatticeDirection ( const LatticeDirection< dim > &  other)
default

◆ LatticeDirection() [3/3]

template<int dim>
gbLAB::LatticeDirection< dim >::LatticeDirection ( const VectorDimI v,
const Lattice< dim > &  lat 
)

Definition at line 20 of file LatticeDirection.cpp.

Member Function Documentation

◆ latticeVector()

template<int dim>
const LatticeVector< dim > & gbLAB::LatticeDirection< dim >::latticeVector ( ) const
inline

The documentation for this struct was generated from the following files: