Mechanics of Defect Evolution Library
Loading...
Searching...
No Matches
CSL.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_CSL_h_
9#define model_CSL_h_
10
11#include <cfloat> // FLT_EPSILON
12#include <Eigen/Dense>
13#include <SmithDecomposition.h>
14#include <Lattice.h>
16#include <LLL.h>
17#include <RLLL.h>
18
19
20namespace model
21{
27 template <int dim>
28 class CSL : public LatticeTransitionMatrix<dim>
29 /* */,public Lattice<dim>
30 {
31 static_assert(dim>0,"dim must be > 0.");
32 typedef Eigen::Matrix< double,dim,1> VectorDimD;
33 typedef Eigen::Matrix<long int,dim,1> VectorDimI;
34 typedef Eigen::Matrix<double,dim,dim> MatrixDimD;
35 typedef Lattice<dim> LatticeType;
36 typedef long long int IntValueType;
37 typedef Eigen::Matrix<IntValueType,dim,dim> MatrixInt;
38
39 /**********************************************************************/
40 static MatrixDimD getLatticeBasis(const LatticeTransitionMatrix<dim>& rm,
41 const LatticeType& A,
42 const LatticeType& B,
43 const bool& useRLLL);
44
45 public:
46
47// const LatticeType& A;
48// const LatticeType& B;
49
50 /**********************************************************************/
51 CSL(const LatticeType& A_in,
52 const LatticeType& B_in,
53 const bool& useRLLL=true) ;
54
55
56 };
57
58
59} // end namespace
60#endif
CSL(const LatticeType &A_in, const LatticeType &B_in, const bool &useRLLL=true)
Definition CSL.cpp:82
Lattice(const MatrixDimD &A, const MatrixDimD &Q)
initial point of the source segment B
function infiniteDisplacement syms Ax Ay Az Bx By Bz qx qy qz u L x y z real A
LatticeTransitionMatrix(const LatticeType &A_in, const LatticeType &B_in)