Mechanics of Defect Evolution Library
Loading...
Searching...
No Matches
model::DefectiveCrystal< _dim > Class Template Reference

#include <DefectiveCrystal.h>

Inheritance diagram for model::DefectiveCrystal< _dim >:
Collaboration diagram for model::DefectiveCrystal< _dim >:

Public Types

typedef MicrostructureBase< dim >::MatrixDim MatrixDim
typedef MicrostructureBase< dim >::VectorDim VectorDim
typedef MicrostructureContainer< _dim > MicrostructureContainerType
typedef InclusionMicrostructure< dim > InclusionMicrostructureType
typedef DislocationNetwork< dim > DislocationNetworkType
typedef ClusterDynamics< dim > ClusterDynamicsType
typedef ElasticDeformation< dim > ElasticDeformationType
Public Types inherited from model::MicrostructureContainer< _dim >
typedef MicrostructureBase< dim >::MatrixDim MatrixDim
typedef MicrostructureBase< dim >::VectorDim VectorDim
typedef MicrostructureBase< dim >::ElementType ElementType
typedef MicrostructureBase< dim >::NodeType NodeType
typedef MicrostructureBase< dim >::SimplexDim SimplexDim
typedef MicrostructureBase< dim >::VectorMSize VectorMSize
typedef MicrostructureBase< dim >::VectorISize VectorISize
typedef std::vector< std::shared_ptr< MicrostructureBase< dim > > > BaseContainerType
Public Types inherited from model::MicrostructureBase< dim >
typedef MicrostructureContainer< dim > MicrostructureContainerType
typedef Simplex< dim, dim > SimplexDim
typedef DefectiveCrystalBase< dim >::ElementType ElementType
typedef FiniteElement< ElementType > FiniteElementType
typedef ElementType::NodeType NodeType
typedef Eigen::Matrix< double, dim, dim > MatrixDim
typedef Eigen::Matrix< double, dim, 1 > VectorDim
typedef Eigen::Matrix< double, mSize, 1 > VectorMSize
typedef Eigen::Matrix< double, iSize, 1 > VectorISize

Public Member Functions

 DefectiveCrystal (DefectiveCrystalBase< _dim > &ddBase_in)
void initializeConfiguration (const DefectiveCrystalConfigIO< dim > &configIO)
void runSteps ()
void runSingleStep ()
const DislocationNetwork< _dim > & dislocationNetwork () const
Public Member Functions inherited from model::MicrostructureContainer< _dim >
 MicrostructureContainer (DefectiveCrystalBase< dim > &ddBase_in)
const BaseContainerType & microstructures () const
BaseContainerType & microstructures ()
void initializeConfiguration (const DefectiveCrystalConfigIO< dim > &configIO, const std::ofstream &f_file, const std::ofstream &F_labels) override
void solve () override
void reSolve () override
double getDt () const override
void output (DefectiveCrystalConfigIO< dim > &configIO, DefectiveCrystalAuxIO< dim > &auxIO, std::ofstream &f_file, std::ofstream &F_labels) const override
void updateConfiguration () override
MatrixDim averagePlasticDistortion () const override
MatrixDim averagePlasticDistortionRate () const override
VectorDim displacement (const VectorDim &, const NodeType *const, const ElementType *const, const SimplexDim *const) const override
MatrixDim stress (const VectorDim &, const NodeType *const, const ElementType *const, const SimplexDim *const) const override
MatrixDim averageStress () const override
VectorDim inelasticDisplacementRate (const VectorDim &, const NodeType *const, const ElementType *const, const SimplexDim *const) const override
VectorMSize mobileConcentration (const VectorDim &, const NodeType *const, const ElementType *const, const SimplexDim *const) const override
VectorISize immobileClusters (const VectorDim &, const NodeType *const, const ElementType *const, const SimplexDim *const) const override
std::set< std::shared_ptr< MicrostructureType > > getTypedMicrostructures () const
std::shared_ptr< MicrostructureType > getUniqueTypedMicrostructure () const
Public Member Functions inherited from model::MicrostructureBase< dim >
 MicrostructureBase (const std::string &tag_in, MicrostructureContainer< dim > &m_in)
virtual ~MicrostructureBase ()=default
double timeSinceLastUpdate () const
std::set< const Grain< dim > * > pointGrains (const VectorDim &x, const NodeType *const node, const ElementType *const ele, const SimplexDim *const guess) const
virtual VectorDim displacement (const VectorDim &, const NodeType *const, const ElementType *const, const SimplexDim *const) const =0
virtual MatrixDim stress (const VectorDim &, const NodeType *const, const ElementType *const, const SimplexDim *const) const =0
virtual VectorDim inelasticDisplacementRate (const VectorDim &, const NodeType *const, const ElementType *const, const SimplexDim *const) const =0
virtual VectorMSize mobileConcentration (const VectorDim &, const NodeType *const, const ElementType *const, const SimplexDim *const) const =0
virtual VectorISize immobileClusters (const VectorDim &, const NodeType *const, const ElementType *const, const SimplexDim *const) const =0
Eigen::Matrix< double, Eigen::Dynamic, dim > displacement (Eigen::Ref< const Eigen::Matrix< double, Eigen::Dynamic, dim > >) const
std::vector< Eigen::Matrix< double, dim, dim > > stress (Eigen::Ref< const Eigen::Matrix< double, Eigen::Dynamic, dim > >) const

Static Public Attributes

static constexpr int dim =_dim
Static Public Attributes inherited from model::MicrostructureBase< dim >
static constexpr int mSize =ClusterDynamicsParameters<dim>::mSize
static constexpr int iSize =ClusterDynamicsParameters<dim>::iSize

Additional Inherited Members

Public Attributes inherited from model::MicrostructureContainer< _dim >
DefectiveCrystalBase< dim > & ddBase
Public Attributes inherited from model::MicrostructureBase< dim >
const std::string tag
MicrostructureContainerType & microstructures
double lastUpdateTime

Detailed Description

template<int _dim>
class model::DefectiveCrystal< _dim >

Definition at line 26 of file DefectiveCrystal.h.

Member Typedef Documentation

◆ ClusterDynamicsType

template<int _dim>
typedef ClusterDynamics<dim> model::DefectiveCrystal< _dim >::ClusterDynamicsType

Definition at line 40 of file DefectiveCrystal.h.

◆ DislocationNetworkType

Definition at line 39 of file DefectiveCrystal.h.

◆ ElasticDeformationType

template<int _dim>
typedef ElasticDeformation<dim> model::DefectiveCrystal< _dim >::ElasticDeformationType

Definition at line 41 of file DefectiveCrystal.h.

◆ InclusionMicrostructureType

template<int _dim>
typedef InclusionMicrostructure<dim> model::DefectiveCrystal< _dim >::InclusionMicrostructureType

Definition at line 38 of file DefectiveCrystal.h.

◆ MatrixDim

Definition at line 34 of file DefectiveCrystal.h.

◆ MicrostructureContainerType

template<int _dim>
typedef MicrostructureContainer<_dim> model::DefectiveCrystal< _dim >::MicrostructureContainerType

Definition at line 36 of file DefectiveCrystal.h.

◆ VectorDim

Definition at line 35 of file DefectiveCrystal.h.

Constructor & Destructor Documentation

◆ DefectiveCrystal()

template<int _dim>
model::DefectiveCrystal< _dim >::DefectiveCrystal ( DefectiveCrystalBase< _dim > & ddBase_in)

Definition at line 21 of file src/DefectiveCrystal/DefectiveCrystal.cpp.

Member Function Documentation

◆ dislocationNetwork()

template<int _dim>
const DislocationNetwork< _dim > & model::DefectiveCrystal< _dim >::dislocationNetwork ( ) const

Definition at line 200 of file src/DefectiveCrystal/DefectiveCrystal.cpp.

◆ initializeConfiguration()

template<int _dim>
void model::DefectiveCrystal< _dim >::initializeConfiguration ( const DefectiveCrystalConfigIO< dim > & configIO)

Definition at line 105 of file src/DefectiveCrystal/DefectiveCrystal.cpp.

◆ runSingleStep()

template<int _dim>
void model::DefectiveCrystal< _dim >::runSingleStep ( )

Definition at line 111 of file src/DefectiveCrystal/DefectiveCrystal.cpp.

◆ runSteps()

template<int _dim>
void model::DefectiveCrystal< _dim >::runSteps ( )

Runs a number of simulation time steps defined by simulationParameters.Nsteps

Definition at line 187 of file src/DefectiveCrystal/DefectiveCrystal.cpp.

Member Data Documentation

◆ dim

template<int _dim>
int model::DefectiveCrystal< _dim >::dim =_dim
staticconstexpr

Definition at line 33 of file DefectiveCrystal.h.


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