Mechanics of Defect Evolution Library
Loading...
Searching...
No Matches
SlipSystem.h
Go to the documentation of this file.
1/* This file is part of MoDELib, the Mechanics Of Defects Evolution Library.
2 *
3 *
4 * MoDELib is distributed without any warranty under the
5 * GNU General Public License (GPL) v2 <http://www.gnu.org/licenses/>.
6 */
7
8
9#ifndef model_SLIPSYSTEM_H_
10#define model_SLIPSYSTEM_H_
11
12#include <memory>
13#include <assert.h>
14#include <LatticeModule.h>
15#include <GlidePlaneBase.h>
16#include <DislocationMobility.h>
17#include <GammaSurface.h>
18#include <GlidePlaneNoise.h>
19
20namespace model
21{
22 struct SlipSystem : public StaticID<SlipSystem>
23 {
24
25 typedef Eigen::Matrix<double,3,1> VectorDim;
26 typedef Eigen::Matrix<double,3,3> MatrixDim;
27
34 const std::shared_ptr<DislocationMobility> mobility;
35 const std::shared_ptr<GlidePlaneNoise> planeNoise;
36
37 SlipSystem(const GlidePlaneBase& n_in,
38 const RationalLatticeDirection<3>& slip_in,
39 const std::shared_ptr<DislocationMobility>& mobility_in,
40 const std::shared_ptr<GlidePlaneNoise>& planeNoise_in);
41
42 bool isPartial() const;
44 Eigen::Matrix<double,2,1> globalToLocal(const VectorDim& x) const;
45 VectorDim localToGlobal(const Eigen::Matrix<double,2,1>& x) const;
46 std::tuple<Eigen::Matrix<double,3,3>,double,double> gridInterp(const VectorDim& x) const ;
47 std::tuple<Eigen::Matrix<double,3,3>,double,double> gridVal(const Eigen::Array<int,2,1>& idx) const;
48 double velocity(const MatrixDim& S,const VectorDim& xi,const double& T) const ;
49
50 };
51}
52#endif
the tangent vector S
x
Definition int_R.m:12
Eigen::Matrix< double, 2, 1 > globalToLocal(const VectorDim &x) const
const std::shared_ptr< GlidePlaneNoise > planeNoise
Definition SlipSystem.h:35
std::tuple< Eigen::Matrix< double, 3, 3 >, double, double > gridVal(const Eigen::Array< int, 2, 1 > &idx) const
std::tuple< Eigen::Matrix< double, 3, 3 >, double, double > gridInterp(const VectorDim &x) const
Eigen::Matrix< double, 3, 1 > VectorDim
Definition SlipSystem.h:25
const RationalLatticeDirection< 3 > s
Definition SlipSystem.h:29
const VectorDim unitNormal
Definition SlipSystem.h:30
const MatrixDim G2Lfull
Definition SlipSystem.h:33
VectorDim localToGlobal(const Eigen::Matrix< double, 2, 1 > &x) const
double velocity(const MatrixDim &S, const VectorDim &xi, const double &T) const
Eigen::Matrix< double, 3, 3 > MatrixDim
Definition SlipSystem.h:26
bool isSameAs(const RationalLatticeDirection< 3 > &s1, const ReciprocalLatticeDirection< 3 > &n1)
const std::shared_ptr< DislocationMobility > mobility
Definition SlipSystem.h:34
const GlidePlaneBase & n
Definition SlipSystem.h:28
SlipSystem(const GlidePlaneBase &n_in, const RationalLatticeDirection< 3 > &slip_in, const std::shared_ptr< DislocationMobility > &mobility_in, const std::shared_ptr< GlidePlaneNoise > &planeNoise_in)
const VectorDim unitSlipFull
Definition SlipSystem.h:32
const VectorDim unitSlip
Definition SlipSystem.h:31
bool isPartial() const
INEXACT REAL s1
REAL * xi