oILAB
Loading...
Searching...
No Matches
pyoilab::PyLatticeVector< dim > Class Template Reference

#include <LatticeVectorBindings.h>

Public Member Functions

 PyLatticeVector (const Lattice &lattice)
 
 PyLatticeVector (const VectorDimD &cartesianCoordinates, const Lattice &lattice)
 
 PyLatticeVector (const VectorDimI &integerCoordinates, const Lattice &lattice)
 
 PyLatticeVector (const PyLatticeVector &)=default
 
 PyLatticeVector (const LatticeVector &lv)
 
PyLatticeVector operator+ (const PyLatticeVector &other) const
 
PyLatticeVector operator- (const PyLatticeVector &other) const
 
PyLatticeVector operator+= (const PyLatticeVector &other)
 
PyLatticeVector operator-= (const PyLatticeVector &other)
 
PyLatticeVector operator* (const IntScalarType &scalar) const
 
VectorDimD cartesian () const
 
VectorDimI integerCoordinates () const
 
void integerCoordinates (const VectorDimI &input)
 
IntScalarType dot (const PyReciprocalLatticeVector< dim > &other)
 
template<int dm = dim>
std::enable_if< dm==2, PyReciprocalLatticeDirection >::type cross (const PyLatticeVector< dim > &other) const
 
template<int dm = dim>
std::enable_if< dm==3, PyReciprocalLatticeDirection >::type cross (const PyLatticeVector< dm > &other) const
 
template<int dm = dim>
std::enable_if< dm==2, PyReciprocalLatticeDirection >::type cross () const
 
template<int dm = dim>
std::enable_if< dm==3, PyReciprocalLatticeDirection >::type cross () const
 

Data Fields

LatticeVector lv
 

Private Types

using Lattice = gbLAB::Lattice< dim >
 
using LatticeVector = gbLAB::LatticeVector< dim >
 
using PyReciprocalLatticeDirection = PyReciprocalLatticeDirection< dim >
 
using IntScalarType = long long int
 
using MatrixDimD = Eigen::Matrix< double, dim, dim >
 
using VectorDimD = Eigen::Matrix< double, dim, 1 >
 
using VectorDimI = Eigen::Matrix< IntScalarType, dim, 1 >
 
using MatrixDimI = Eigen::Matrix< IntScalarType, dim, dim >
 

Detailed Description

template<int dim>
class pyoilab::PyLatticeVector< dim >

Definition at line 21 of file LatticeVectorBindings.h.

Member Typedef Documentation

◆ IntScalarType

template<int dim>
using pyoilab::PyLatticeVector< dim >::IntScalarType = long long int
private

Definition at line 27 of file LatticeVectorBindings.h.

◆ Lattice

template<int dim>
using pyoilab::PyLatticeVector< dim >::Lattice = gbLAB::Lattice<dim>
private

Definition at line 22 of file LatticeVectorBindings.h.

◆ LatticeVector

template<int dim>
using pyoilab::PyLatticeVector< dim >::LatticeVector = gbLAB::LatticeVector<dim>
private

Definition at line 23 of file LatticeVectorBindings.h.

◆ MatrixDimD

template<int dim>
using pyoilab::PyLatticeVector< dim >::MatrixDimD = Eigen::Matrix<double, dim, dim>
private

Definition at line 28 of file LatticeVectorBindings.h.

◆ MatrixDimI

template<int dim>
using pyoilab::PyLatticeVector< dim >::MatrixDimI = Eigen::Matrix<IntScalarType, dim, dim>
private

Definition at line 31 of file LatticeVectorBindings.h.

◆ PyReciprocalLatticeDirection

template<int dim>
using pyoilab::PyLatticeVector< dim >::PyReciprocalLatticeDirection = PyReciprocalLatticeDirection<dim>
private

Definition at line 24 of file LatticeVectorBindings.h.

◆ VectorDimD

template<int dim>
using pyoilab::PyLatticeVector< dim >::VectorDimD = Eigen::Matrix<double, dim, 1>
private

Definition at line 29 of file LatticeVectorBindings.h.

◆ VectorDimI

template<int dim>
using pyoilab::PyLatticeVector< dim >::VectorDimI = Eigen::Matrix<IntScalarType, dim, 1>
private

Definition at line 30 of file LatticeVectorBindings.h.

Constructor & Destructor Documentation

◆ PyLatticeVector() [1/5]

template<int dim>
pyoilab::PyLatticeVector< dim >::PyLatticeVector ( const Lattice lattice)
inline

Definition at line 35 of file LatticeVectorBindings.h.

◆ PyLatticeVector() [2/5]

template<int dim>
pyoilab::PyLatticeVector< dim >::PyLatticeVector ( const VectorDimD cartesianCoordinates,
const Lattice lattice 
)
inline

Definition at line 37 of file LatticeVectorBindings.h.

◆ PyLatticeVector() [3/5]

template<int dim>
pyoilab::PyLatticeVector< dim >::PyLatticeVector ( const VectorDimI integerCoordinates,
const Lattice lattice 
)
inline

Definition at line 40 of file LatticeVectorBindings.h.

◆ PyLatticeVector() [4/5]

template<int dim>
pyoilab::PyLatticeVector< dim >::PyLatticeVector ( const PyLatticeVector< dim > &  )
default

◆ PyLatticeVector() [5/5]

template<int dim>
pyoilab::PyLatticeVector< dim >::PyLatticeVector ( const LatticeVector lv)
inline

Definition at line 45 of file LatticeVectorBindings.h.

Member Function Documentation

◆ cartesian()

template<int dim>
VectorDimD pyoilab::PyLatticeVector< dim >::cartesian ( ) const
inline

Definition at line 69 of file LatticeVectorBindings.h.

◆ cross() [1/4]

template<int dim>
template<int dm = dim>
std::enable_if< dm==2, PyReciprocalLatticeDirection >::type pyoilab::PyLatticeVector< dim >::cross ( ) const
inline

Definition at line 101 of file LatticeVectorBindings.h.

◆ cross() [2/4]

template<int dim>
template<int dm = dim>
std::enable_if< dm==3, PyReciprocalLatticeDirection >::type pyoilab::PyLatticeVector< dim >::cross ( ) const
inline

Definition at line 107 of file LatticeVectorBindings.h.

◆ cross() [3/4]

template<int dim>
template<int dm = dim>
std::enable_if< dm==2, PyReciprocalLatticeDirection >::type pyoilab::PyLatticeVector< dim >::cross ( const PyLatticeVector< dim > &  other) const
inline

Definition at line 87 of file LatticeVectorBindings.h.

◆ cross() [4/4]

template<int dim>
template<int dm = dim>
std::enable_if< dm==3, PyReciprocalLatticeDirection >::type pyoilab::PyLatticeVector< dim >::cross ( const PyLatticeVector< dm > &  other) const
inline

Definition at line 94 of file LatticeVectorBindings.h.

◆ dot()

template<int dim>
IntScalarType pyoilab::PyLatticeVector< dim >::dot ( const PyReciprocalLatticeVector< dim > &  other)
inline

Definition at line 81 of file LatticeVectorBindings.h.

◆ integerCoordinates() [1/2]

template<int dim>
VectorDimI pyoilab::PyLatticeVector< dim >::integerCoordinates ( ) const
inline

Definition at line 73 of file LatticeVectorBindings.h.

◆ integerCoordinates() [2/2]

template<int dim>
void pyoilab::PyLatticeVector< dim >::integerCoordinates ( const VectorDimI input)
inline

Definition at line 77 of file LatticeVectorBindings.h.

◆ operator*()

template<int dim>
PyLatticeVector pyoilab::PyLatticeVector< dim >::operator* ( const IntScalarType scalar) const
inline

Definition at line 65 of file LatticeVectorBindings.h.

◆ operator+()

template<int dim>
PyLatticeVector pyoilab::PyLatticeVector< dim >::operator+ ( const PyLatticeVector< dim > &  other) const
inline

Definition at line 47 of file LatticeVectorBindings.h.

◆ operator+=()

template<int dim>
PyLatticeVector pyoilab::PyLatticeVector< dim >::operator+= ( const PyLatticeVector< dim > &  other)
inline

Definition at line 55 of file LatticeVectorBindings.h.

◆ operator-()

template<int dim>
PyLatticeVector pyoilab::PyLatticeVector< dim >::operator- ( const PyLatticeVector< dim > &  other) const
inline

Definition at line 51 of file LatticeVectorBindings.h.

◆ operator-=()

template<int dim>
PyLatticeVector pyoilab::PyLatticeVector< dim >::operator-= ( const PyLatticeVector< dim > &  other)
inline

Definition at line 60 of file LatticeVectorBindings.h.

Field Documentation

◆ lv

template<int dim>
LatticeVector pyoilab::PyLatticeVector< dim >::lv

Definition at line 33 of file LatticeVectorBindings.h.


The documentation for this class was generated from the following file: