8#ifndef model_MeshedDislocationLoop_h_
9#define model_MeshedDislocationLoop_h_
15#define VerboseMeshedDislocationLoop(N,x) if(verboseMeshedDislocationLoop>=N){std::cout<<x;}
17#define VerboseMeshedDislocationLoop(N,x)
57 Eigen::Matrix<double,Eigen::Dynamic,3>
plasticDisplacement(Eigen::Ref<
const Eigen::Matrix<double,Eigen::Dynamic,3>>)
const;
62 static int sgn(
const T& val)
64 return (val > T(0)) - (val < T(0));
std::deque< VectorDim > heightDisplacements
MeshedDislocationLoop(const VectorDim &burgers_in, const GlidePlane< 3 > &plane, const std::vector< Eigen::Matrix< double, 3, 1 > > &globalBndPts, const DislocationNetwork< 3 > &DN, const double &meshSize, const double &localMeshSize)
VectorDim triangleAreaVector(const Eigen::Vector3i &) const
std::map< Eigen::Matrix< double, 2, 1 >, int, CompareType > uniquePointsIDs
CompareVectorsByComponent< double, 2, float > CompareType
std::deque< MatrixDim > defGradients
std::deque< VectorDim > displacements
double solidAngle(const VectorDim &x, const size_t &triID) const
VectorDim plasticDisplacementKernel(const Eigen::Ref< const VectorDim > &x) const
Eigen::Matrix< double, Eigen::Dynamic, 3 > plasticDisplacement(Eigen::Ref< const Eigen::Matrix< double, Eigen::Dynamic, 3 > >) const
std::deque< VectorDim > heightPoints
std::deque< VectorDim > points
static int sgn(const T &val)
std::vector< VectorDim > periodicShifts
std::deque< MatrixDim > invVertexMatrix
Eigen::Matrix< double, 3, 3 > MatrixDim
Eigen::Matrix< double, 3, 1 > VectorDim
std::deque< Eigen::Vector3i > triangles