8#ifndef model_GLIDEPLANE_cpp
9#define model_GLIDEPLANE_cpp
25 VerboseGlidePlane(1,
"Creating GlidePlane "<<this->
sID<<std::endl;);
31 VerboseGlidePlane(1,
"Destroying GlidePlane "<<this->
sID<<std::endl;);
37 std::set<std::shared_ptr<SlipSystem>>
temp;
38 for(
const auto&
ss :
grain.slipSystems())
40 if(this->
n.cross(
ss.second->n).base().squaredNorm()==0)
51 for(
const auto&
ss :
grain.planeNormals())
53 if(this->
n.cross(*
ss.second).base().squaredNorm()==0)
58 return std::shared_ptr<GlidePlaneBase>(
nullptr);
64 for(
const auto&
ss :
grain.planeNormals())
66 if(this->
n.cross(*
ss.second).base().squaredNorm()==0)
std::set< std::shared_ptr< SlipSystem > > slipSystems() const
const GlidePlaneFactoryType & glidePlaneFactory
const GlidePlaneKeyType key
std::shared_ptr< GlidePlaneBase > planeBase() const
GlidePlane(const GlidePlaneFactoryType *const gpF, const GlidePlaneKeyType &key_in)
GlidePlaneFactory< dim > GlidePlaneFactoryType
KeyType GlidePlaneKeyType
const Grain< dim > & grain
const LatticePlaneKey< dim >::LongIntType planeIndex
const ReciprocalLatticeDirection< dim > n
LatticePlane(const VectorDimD &P, const ReciprocalLatticeDirection< dim > &r)
VectorDimD planeOrigin() const
MeshPlane(const SimplicialMesh< dim > &mesh, const size_t &rID, const VectorDim &p, const VectorDim &n)