Mechanics of Defect Evolution Library
Loading...
Searching...
No Matches
StraightDislocationSegment.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#ifndef model_StraightDislocationSegment_H_
9#define model_StraightDislocationSegment_H_
10
11#ifndef _MODEL_NON_SINGULAR_DD_
12#define _MODEL_NON_SINGULAR_DD_ 1
13#endif
14
15#include <Eigen/Dense>
18
19namespace model
20{
21
22
23 template <int dim>
25 {
26 typedef double Scalar;
27 typedef Eigen::Matrix<Scalar,dim,dim> MatrixDim;
28 typedef Eigen::Matrix<Scalar,dim,1> VectorDim;
29
30 MatrixDim nonSymmStress_kernel(const VectorDim& r) const;
31 VectorDim displacement_kernel(const VectorDim& r) const;
32 double elasticInteractionEnergy_kernel(const VectorDim& z,const VectorDim& tA,const VectorDim& bA) const;
33
34 public:
35
37 const VectorDim& P0;
38 const VectorDim& P1;
39 const VectorDim& b;
40 const double& length;
41 const VectorDim& t;
42 const double& EwaldLength;
43
44 private:
45
46 VectorDim bCt;
47
48 public:
49
51 const VectorDim& _P0,
52 const VectorDim& _P1,
53 const VectorDim& _b,
54 const double& _length,
55 const VectorDim& _t,
56 const double& EwaldLength_in);
57
58 void updateGeometry();
59 MatrixDim nonSymmStress(const VectorDim& x) const;
60 MatrixDim stress(const VectorDim& x) const;
61 VectorDim displacement(const VectorDim& x) const;
62 double elasticInteractionEnergy(const VectorDim& xA,const VectorDim& tA,const VectorDim& bA) const;
63
64 };
65
66}
67#endif
68
VectorDim displacement(const VectorDim &x) const
const PolycrystallineMaterialBase & material
StraightDislocationSegment(const PolycrystallineMaterialBase &mat, const VectorDim &_P0, const VectorDim &_P1, const VectorDim &_b, const double &_length, const VectorDim &_t, const double &EwaldLength_in)
MatrixDim nonSymmStress(const VectorDim &x) const
MatrixDim stress(const VectorDim &x) const
double elasticInteractionEnergy(const VectorDim &xA, const VectorDim &tA, const VectorDim &bA) const
id z()
x
Definition int_R.m:12