Mechanics of Defect Evolution Library
Loading...
Searching...
No Matches
Lattices/RationalLatticeDirection.h
Go to the documentation of this file.
1/* This file is part of PIL, the Particle Interaction Library.
2 *
3 *
4 * MODEL is distributed without any warranty under the
5 * GNU General Public License (GPL) v2 <http://www.gnu.org/licenses/>.
6 */
7
8#ifndef model_RationalLatticeDirection_h_
9#define model_RationalLatticeDirection_h_
10
11#include <LatticeVector.h>
13#include <LatticeGCD.h>
14#include <Rational.h>
16
17namespace model
18{
19 template <int dim>
21 {
23 typedef Eigen::Matrix<double,dim,1> VectorDimD;
24 typedef Eigen::Matrix<long int,dim,1> VectorDimI;
25
26
29
30 public:
31
35 VectorDimD cartesian() const;
36 Rational dot(const ReciprocalLatticeVector<dim>& other) const;
37 RationalLatticeDirection<dim> operator*(const long int& scalar) const;
38 RationalLatticeDirection<dim> operator/(const long int& scalar) const;
43 double squaredNorm() const;
44 };
45
46 template<int dim>
48
49} // end namespace
50#endif
auto operator*(const std::shared_ptr< BilinearForm< T1, T2 > > &f, const IntegrationDomain< FE, D, Q, Rule > &dom)
Eigen::Matrix< long int, dim, 1 > VectorDimI
RationalLatticeDirection< dim > operator-(const RationalLatticeDirection< dim > &other) const
Rational dot(const ReciprocalLatticeVector< dim > &other) const
RationalLatticeDirection< dim > operator+(const RationalLatticeDirection< dim > &other) const
RationalLatticeDirection< dim > operator*(const long int &scalar) const
ReciprocalLatticeVector< dim > ReciprocalLatticeVectorType
RationalLatticeDirection< dim > operator/(const long int &scalar) const
RationalLatticeDirection(const Rational &_rat, const LatticeDirection< dim > &_dir)
REAL v[4]