oILAB
Loading...
Searching...
No Matches
LatticeDirection.h
Go to the documentation of this file.
1/* This file is part of gbLAB.
2 *
3 * gbLAB is distributed without any warranty under the MIT License.
4 */
5
6
7#ifndef gbLAB_LatticeDirection_h_
8#define gbLAB_LatticeDirection_h_
9
10#include "LatticeModule.h"
11
12namespace oILAB {
18template <int dim> struct LatticeDirection : protected LatticeVector<dim> {
21
23 LatticeDirection(const LatticeDirection<dim> &other) = default;
24
25 LatticeDirection(const VectorDimI &v, const Lattice<dim> &lat);
26
27 using LatticeVector<dim>::cartesian;
28 using LatticeVector<dim>::lattice;
29 using LatticeVector<dim>::dot;
30
32 return static_cast<const LatticeVector<dim> &>(*this);
33 }
34 };
35
36 template<int dim>
37 basic_ostream<char> &operator<<(basic_ostream<char> &s, const LatticeDirection<dim>& m);
38
39 } // namespace oILAB
40#endif
Lattice class.
Definition Lattice.h:31
LatticeVector class.
const Lattice< dim > & lattice
IntScalarType dot(const ReciprocalLatticeVector< dim > &other) const
VectorDimD cartesian() const
basic_ostream< char > & operator<<(basic_ostream< char > &s, const LatticeDirection< dim > &m)
Eigen::Matrix< IntScalarType, dim, 1 > VectorDimI
Definition LatticeCore.h:23
long long int IntScalarType
Definition LatticeCore.h:22
LatticeDirection class.
typename LatticeCore< dim >::VectorDimI VectorDimI
typename LatticeCore< dim >::IntScalarType IntScalarType
LatticeDirection(const LatticeDirection< dim > &other)=default
const LatticeVector< dim > & latticeVector() const