Mechanics of Defect Evolution Library
Loading...
Searching...
No Matches
model::MicrostructureGenerator Class Reference

#include <MicrostructureGenerator.h>

Collaboration diagram for model::MicrostructureGenerator:

Public Member Functions

const DefectiveCrystalTraitsIO & traits () const
const DefectiveCrystalConfigIO< 3 > & config () const
const DefectiveCrystalAuxIO< 3 > & aux () const
DefectiveCrystalConfigIO< 3 > & config ()
DefectiveCrystalAuxIO< 3 > & aux ()
 MicrostructureGenerator (DefectiveCrystalBase< 3 > &ddBase_in)
void readMicrostructureFile ()
void addShearLoopDensity (const ShearLoopDensitySpecification &spec)
void addShearLoopIndividual (const ShearLoopIndividualSpecification &spec)
void addPeriodicDipoleDensity (const PeriodicDipoleDensitySpecification &spec)
void addPeriodicDipoleIndividual (const PeriodicDipoleIndividualSpecification &spec)
void addPrismaticLoopDensity (const PrismaticLoopDensitySpecification &spec)
void addPrismaticLoopIndividual (const PrismaticLoopIndividualSpecification &spec)
void addFrankLoopsDensity (const FrankLoopsDensitySpecification &spec)
void addFrankLoopsIndividual (const FrankLoopsIndividualSpecification &spec)
void addStackingFaultTetrahedraDensity (const StackingFaultTetrahedraDensitySpecification &spec)
void addStackingFaultTetrahedraIndividual (const StackingFaultTetrahedraIndividualSpecification &spec)
void addSphericalInclusionDensity (const SphericalInclusionDensitySpecification &spec)
void addSphericalInclusionIndividual (const SphericalInclusionIndividualSpecification &spec)
void addEllipsoidalInclusionDensity (const EllipsoidalInclusionDensitySpecification &spec)
void addEllipsoidalInclusionIndividual (const EllipsoidalInclusionIndividualSpecification &spec)
void addPolyhedronInclusionIndividual (const PolyhedronInclusionIndividualSpecification &spec)
void addPlanarLoopIndividual (const PlanarLoopIndividualSpecification &spec)
void addCircularCrackIndividual (const CircularCrackIndividualSpecification &spec)
void addCrackMeshIndividual (const CrackMeshIndividualSpecification &spec)
size_t insertLoop (const VectorDimD &b, const VectorDimD &unitNormal, const VectorDimD &P0, const size_t &grainID, const DislocationLoopType &loopType)
size_t insertLoopNode (const size_t &loopID, const VectorDimD &loopNodePos, const size_t &networkNodeID, const VectorDimD &loopNodeShift, const std::pair< short int, short int > &periodicEdgeIDs)
std::vector< size_t > insertLoopLinks (const size_t &loopID, const std::vector< size_t > &loopNodeIDs)
size_t insertNetworkNode (const VectorDimD &networkNodePos)
size_t insertInclusion (const VectorDimD &pos, const double &R, const Eigen::Matrix< double, dim, dim > &eT, const double &vrc, const int &type)
size_t insertInclusion (const VectorDimD &pos, const Eigen::Matrix3d &axes, const Eigen::Matrix3d &eT, const double &vrc, const int &type)
size_t insertInclusion (const std::map< size_t, Eigen::Vector3d > &nodes, const std::map< size_t, std::vector< size_t > > &faceMap, const Eigen::Matrix< double, dim, dim > &eT, const double &vrc, const int &type)
void writeConfigFiles (const size_t &fileID)
bool insertJunctionLoop (const std::vector< VectorDimD > &loopNodePos, const std::shared_ptr< PeriodicGlidePlane< 3 > > &periodicPlane, const VectorDimD &b, const VectorDimD &unitNormal, const VectorDimD &P0, const size_t &grainID, const DislocationLoopIO< dim >::DislocationLoopType &loopType)
bool insertCrackMesh (const std::vector< VectorDimD > &nodes, const std::vector< VectorDimD > &burgers, const std::vector< VectorDimI > &triangles)
bool allPointsInGrain (const std::vector< VectorDimD > &points, const int &grainID)
bool allPointsInMesh (const std::vector< VectorDimD > &points)

Public Attributes

DefectiveCrystalBase< 3 > & ddBase
DefectiveCrystalConfigIO< 3 > configIO
DefectiveCrystalAuxIO< 3 > auxIO
const bool outputBinary
const double minSize
const double maxSize
std::map< VectorDimD, size_t, CompareVectorsByComponent< double, dim, float > > uniqueNetworkNodeMap

Detailed Description

Definition at line 81 of file MicrostructureGenerator.h.

Constructor & Destructor Documentation

◆ MicrostructureGenerator()

model::MicrostructureGenerator::MicrostructureGenerator ( DefectiveCrystalBase< 3 > & ddBase_in)

Member Function Documentation

◆ addCircularCrackIndividual()

void model::MicrostructureGenerator::addCircularCrackIndividual ( const CircularCrackIndividualSpecification & spec)

◆ addCrackMeshIndividual()

void model::MicrostructureGenerator::addCrackMeshIndividual ( const CrackMeshIndividualSpecification & spec)

◆ addEllipsoidalInclusionDensity()

void model::MicrostructureGenerator::addEllipsoidalInclusionDensity ( const EllipsoidalInclusionDensitySpecification & spec)

◆ addEllipsoidalInclusionIndividual()

void model::MicrostructureGenerator::addEllipsoidalInclusionIndividual ( const EllipsoidalInclusionIndividualSpecification & spec)

◆ addFrankLoopsDensity()

void model::MicrostructureGenerator::addFrankLoopsDensity ( const FrankLoopsDensitySpecification & spec)

◆ addFrankLoopsIndividual()

void model::MicrostructureGenerator::addFrankLoopsIndividual ( const FrankLoopsIndividualSpecification & spec)

◆ addPeriodicDipoleDensity()

void model::MicrostructureGenerator::addPeriodicDipoleDensity ( const PeriodicDipoleDensitySpecification & spec)

◆ addPeriodicDipoleIndividual()

void model::MicrostructureGenerator::addPeriodicDipoleIndividual ( const PeriodicDipoleIndividualSpecification & spec)

◆ addPlanarLoopIndividual()

void model::MicrostructureGenerator::addPlanarLoopIndividual ( const PlanarLoopIndividualSpecification & spec)

◆ addPolyhedronInclusionIndividual()

void model::MicrostructureGenerator::addPolyhedronInclusionIndividual ( const PolyhedronInclusionIndividualSpecification & spec)

◆ addPrismaticLoopDensity()

void model::MicrostructureGenerator::addPrismaticLoopDensity ( const PrismaticLoopDensitySpecification & spec)

◆ addPrismaticLoopIndividual()

void model::MicrostructureGenerator::addPrismaticLoopIndividual ( const PrismaticLoopIndividualSpecification & spec)

◆ addShearLoopDensity()

void model::MicrostructureGenerator::addShearLoopDensity ( const ShearLoopDensitySpecification & spec)

◆ addShearLoopIndividual()

void model::MicrostructureGenerator::addShearLoopIndividual ( const ShearLoopIndividualSpecification & spec)

◆ addSphericalInclusionDensity()

void model::MicrostructureGenerator::addSphericalInclusionDensity ( const SphericalInclusionDensitySpecification & spec)

◆ addSphericalInclusionIndividual()

void model::MicrostructureGenerator::addSphericalInclusionIndividual ( const SphericalInclusionIndividualSpecification & spec)

◆ addStackingFaultTetrahedraDensity()

void model::MicrostructureGenerator::addStackingFaultTetrahedraDensity ( const StackingFaultTetrahedraDensitySpecification & spec)

◆ addStackingFaultTetrahedraIndividual()

void model::MicrostructureGenerator::addStackingFaultTetrahedraIndividual ( const StackingFaultTetrahedraIndividualSpecification & spec)

◆ allPointsInGrain()

bool model::MicrostructureGenerator::allPointsInGrain ( const std::vector< VectorDimD > & points,
const int & grainID )

◆ allPointsInMesh()

bool model::MicrostructureGenerator::allPointsInMesh ( const std::vector< VectorDimD > & points)

◆ aux() [1/2]

DefectiveCrystalAuxIO< 3 > & model::MicrostructureGenerator::aux ( )

◆ aux() [2/2]

const DefectiveCrystalAuxIO< 3 > & model::MicrostructureGenerator::aux ( ) const

◆ config() [1/2]

DefectiveCrystalConfigIO< 3 > & model::MicrostructureGenerator::config ( )

◆ config() [2/2]

const DefectiveCrystalConfigIO< 3 > & model::MicrostructureGenerator::config ( ) const

◆ insertCrackMesh()

bool model::MicrostructureGenerator::insertCrackMesh ( const std::vector< VectorDimD > & nodes,
const std::vector< VectorDimD > & burgers,
const std::vector< VectorDimI > & triangles )

◆ insertInclusion() [1/3]

size_t model::MicrostructureGenerator::insertInclusion ( const std::map< size_t, Eigen::Vector3d > & nodes,
const std::map< size_t, std::vector< size_t > > & faceMap,
const Eigen::Matrix< double, dim, dim > & eT,
const double & vrc,
const int & type )

◆ insertInclusion() [2/3]

size_t model::MicrostructureGenerator::insertInclusion ( const VectorDimD & pos,
const double & R,
const Eigen::Matrix< double, dim, dim > & eT,
const double & vrc,
const int & type )

◆ insertInclusion() [3/3]

size_t model::MicrostructureGenerator::insertInclusion ( const VectorDimD & pos,
const Eigen::Matrix3d & axes,
const Eigen::Matrix3d & eT,
const double & vrc,
const int & type )

◆ insertJunctionLoop()

bool model::MicrostructureGenerator::insertJunctionLoop ( const std::vector< VectorDimD > & loopNodePos,
const std::shared_ptr< PeriodicGlidePlane< 3 > > & periodicPlane,
const VectorDimD & b,
const VectorDimD & unitNormal,
const VectorDimD & P0,
const size_t & grainID,
const DislocationLoopIO< dim >::DislocationLoopType & loopType )

◆ insertLoop()

size_t model::MicrostructureGenerator::insertLoop ( const VectorDimD & b,
const VectorDimD & unitNormal,
const VectorDimD & P0,
const size_t & grainID,
const DislocationLoopType & loopType )

◆ insertLoopLinks()

std::vector< size_t > model::MicrostructureGenerator::insertLoopLinks ( const size_t & loopID,
const std::vector< size_t > & loopNodeIDs )

◆ insertLoopNode()

size_t model::MicrostructureGenerator::insertLoopNode ( const size_t & loopID,
const VectorDimD & loopNodePos,
const size_t & networkNodeID,
const VectorDimD & loopNodeShift,
const std::pair< short int, short int > & periodicEdgeIDs )

◆ insertNetworkNode()

size_t model::MicrostructureGenerator::insertNetworkNode ( const VectorDimD & networkNodePos)

◆ readMicrostructureFile()

void model::MicrostructureGenerator::readMicrostructureFile ( )

◆ traits()

const DefectiveCrystalTraitsIO & model::MicrostructureGenerator::traits ( ) const

◆ writeConfigFiles()

void model::MicrostructureGenerator::writeConfigFiles ( const size_t & fileID)

Member Data Documentation

◆ auxIO

DefectiveCrystalAuxIO<3> model::MicrostructureGenerator::auxIO

Definition at line 94 of file MicrostructureGenerator.h.

◆ configIO

DefectiveCrystalConfigIO<3> model::MicrostructureGenerator::configIO

Definition at line 93 of file MicrostructureGenerator.h.

◆ ddBase

DefectiveCrystalBase<3>& model::MicrostructureGenerator::ddBase

Definition at line 92 of file MicrostructureGenerator.h.

◆ maxSize

const double model::MicrostructureGenerator::maxSize

Definition at line 97 of file MicrostructureGenerator.h.

◆ minSize

const double model::MicrostructureGenerator::minSize

Definition at line 96 of file MicrostructureGenerator.h.

◆ outputBinary

const bool model::MicrostructureGenerator::outputBinary

Definition at line 95 of file MicrostructureGenerator.h.

◆ uniqueNetworkNodeMap

std::map<VectorDimD,size_t,CompareVectorsByComponent<double,dim,float> > model::MicrostructureGenerator::uniqueNetworkNodeMap

Definition at line 98 of file MicrostructureGenerator.h.


The documentation for this class was generated from the following files: