Mechanics of Defect Evolution Library
Loading...
Searching...
No Matches
model::BaseCrossSlipModel< dim > Struct Template Referenceabstract

#include <CrossSlipModels.h>

Inheritance diagram for model::BaseCrossSlipModel< dim >:
Collaboration diagram for model::BaseCrossSlipModel< dim >:

Public Types

typedef TypeTraits< DislocationNetwork< dim > > TraitsType
typedef TraitsType::NetworkLinkType NetworkLinkType
typedef TraitsType::NetworkNodeType NetworkNodeType
typedef std::tuple< std::shared_ptr< NetworkNodeType >, std::shared_ptr< NetworkNodeType >, size_t, size_t > CrossSlipTupleType
typedef std::deque< CrossSlipTupleType > CrossSlipContainerType

Public Member Functions

 BaseCrossSlipModel (const DefectiveCrystalTraitsIO &traitsIO)
virtual ~BaseCrossSlipModel ()=default
virtual void addToCrossSlip (const NetworkLinkType &link, CrossSlipContainerType &crossSlipDeq)=0
virtual std::pair< bool, std::pair< int, int > > isCrossSlipLink (const NetworkLinkType &link)=0
std::pair< bool, int > isBaseCrossSlipLink (const NetworkLinkType &link, const bool enforceRemeshLength=true) const
virtual bool isThermal () const
virtual std::optional< ThermalCrossSlipEvent > sampleBranch (const std::vector< const NetworkLinkType * > &, const double)

Public Attributes

const double crossSlipDeg
const double sinCrossSlip

Detailed Description

template<int dim>
struct model::BaseCrossSlipModel< dim >

Definition at line 31 of file CrossSlipModels.h.

Member Typedef Documentation

◆ CrossSlipContainerType

template<int dim>
typedef std::deque<CrossSlipTupleType> model::BaseCrossSlipModel< dim >::CrossSlipContainerType

Definition at line 37 of file CrossSlipModels.h.

◆ CrossSlipTupleType

template<int dim>
typedef std::tuple<std::shared_ptr<NetworkNodeType>,std::shared_ptr<NetworkNodeType>,size_t,size_t> model::BaseCrossSlipModel< dim >::CrossSlipTupleType

Definition at line 36 of file CrossSlipModels.h.

◆ NetworkLinkType

template<int dim>
typedef TraitsType::NetworkLinkType model::BaseCrossSlipModel< dim >::NetworkLinkType

Definition at line 34 of file CrossSlipModels.h.

◆ NetworkNodeType

Definition at line 35 of file CrossSlipModels.h.

◆ TraitsType

template<int dim>
typedef TypeTraits<DislocationNetwork<dim> > model::BaseCrossSlipModel< dim >::TraitsType

Definition at line 33 of file CrossSlipModels.h.

Constructor & Destructor Documentation

◆ BaseCrossSlipModel()

template<int dim>
model::BaseCrossSlipModel< dim >::BaseCrossSlipModel ( const DefectiveCrystalTraitsIO & traitsIO)

Definition at line 19 of file CrossSlipModels.cpp.

◆ ~BaseCrossSlipModel()

template<int dim>
virtual model::BaseCrossSlipModel< dim >::~BaseCrossSlipModel ( )
virtualdefault

Member Function Documentation

◆ addToCrossSlip()

template<int dim>
virtual void model::BaseCrossSlipModel< dim >::addToCrossSlip ( const NetworkLinkType & link,
CrossSlipContainerType & crossSlipDeq )
pure virtual

◆ isBaseCrossSlipLink()

template<int dim>
std::pair< bool, int > model::BaseCrossSlipModel< dim >::isBaseCrossSlipLink ( const NetworkLinkType & link,
const bool enforceRemeshLength = true ) const

Definition at line 32 of file CrossSlipModels.cpp.

◆ isCrossSlipLink()

template<int dim>
virtual std::pair< bool, std::pair< int, int > > model::BaseCrossSlipModel< dim >::isCrossSlipLink ( const NetworkLinkType & link)
pure virtual

◆ isThermal()

template<int dim>
virtual bool model::BaseCrossSlipModel< dim >::isThermal ( ) const
inlinevirtual

Reimplemented in model::EscaigCrossSlipModelHEX< dim >.

Definition at line 46 of file CrossSlipModels.h.

◆ sampleBranch()

template<int dim>
virtual std::optional< ThermalCrossSlipEvent > model::BaseCrossSlipModel< dim >::sampleBranch ( const std::vector< const NetworkLinkType * > & ,
const double  )
inlinevirtual

Reimplemented in model::EscaigCrossSlipModelHEX< dim >.

Definition at line 47 of file CrossSlipModels.h.

Member Data Documentation

◆ crossSlipDeg

template<int dim>
const double model::BaseCrossSlipModel< dim >::crossSlipDeg

Definition at line 49 of file CrossSlipModels.h.

◆ sinCrossSlip

template<int dim>
const double model::BaseCrossSlipModel< dim >::sinCrossSlip

Definition at line 50 of file CrossSlipModels.h.


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