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

#include <DislocationLoopNode.h>

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

Public Types

typedef DislocationLoopNode< dim > DislocationLoopNodeType
typedef TypeTraits< DislocationLoopNodeType > TraitsType
typedef TraitsType::LoopNetworkType LoopNetworkType
typedef TraitsType::LoopType LoopType
typedef TraitsType::LoopNodeType LoopNodeType
typedef TraitsType::LoopLinkType LoopLinkType
typedef TraitsType::NetworkNodeType NetworkNodeType
typedef TraitsType::NetworkLinkType NetworkLinkType
typedef TraitsType::FlowType FlowType
typedef TraitsType::VectorDim VectorDim
typedef TraitsType::VectorLowerDim VectorLowerDim
typedef SplineNode< DislocationLoopNode< dim >, dim, 0, Hermite > SplineNodeType
Public Types inherited from model::LoopNode< DislocationLoopNode< dim > >
typedef DislocationLoopNode< dim > LoopNodeType
typedef TypeTraits< DislocationLoopNode< dim > >::LoopLinkType LoopLinkType
typedef TypeTraits< DislocationLoopNode< dim > >::LoopType LoopType
typedef TypeTraits< DislocationLoopNode< dim > >::NetworkNodeType NetworkNodeType
typedef TypeTraits< DislocationLoopNode< dim > >::LoopNetworkType LoopNetworkType
typedef NetworkBase< DislocationLoopNode< dim >, size_t > NetworkBaseType
Public Types inherited from model::NetworkBase< DislocationLoopNode< dim >, size_t >
typedef size_t KeyType

Public Member Functions

 DislocationLoopNode (LoopNetworkType *const, const std::shared_ptr< LoopType > &, const std::shared_ptr< NetworkNodeType > &, const VectorDim &, const std::shared_ptr< PeriodicPlanePatch< dim > > &, const std::pair< const std::shared_ptr< PeriodicPlaneEdge< dim > >, const std::shared_ptr< PeriodicPlaneEdge< dim > > > &)
 DislocationLoopNode (LoopNetworkType *const, const std::shared_ptr< LoopType > &, const std::shared_ptr< NetworkNodeType > &, const LoopLinkType *const)
std::shared_ptr< DislocationLoopNode > clone (const std::shared_ptr< LoopType > &, const std::shared_ptr< NetworkNodeType > &) const
const DislocationLoopNodeType * periodicPrev () const
const DislocationLoopNodeType * periodicNext () const
std::vector< DislocationLoopNodeType * > boundaryPrev () const
std::vector< DislocationLoopNodeType * > boundaryNext () const
void updateGeometry ()
void updateConfinedGeometry ()
bool isPhysicalBoundaryNode () const
bool isPeriodicSubdivision () const
void set_P (const VectorDim &)
void set_P (const VectorLowerDim &)
std::shared_ptr< PeriodicPlanePatch< dim > > periodicPlanePatch () const
std::pair< bool, size_t > isRemovable (const double &Lmin, const double &Lmax, const double &relAreaTh)
bool isMovableTo (const VectorDim &) const
bool isContractableTo (const LoopNodeType *const other) const
bool isGeometricallyRemovable (const double &Lmin, const double &Lmax, const double &relAreaTh)
Public Member Functions inherited from model::LoopNode< DislocationLoopNode< dim > >
 LoopNode (LoopNetworkType *const loopNetwork_in, const std::shared_ptr< LoopType > &loop_in, const std::shared_ptr< NetworkNodeType > &networkNode_in)
 ~LoopNode ()
void resetLoop (const std::shared_ptr< LoopType > &newLoop)
bool isIsolated () const
const std::shared_ptr< LoopType > & loop () const
bool isContractableTo (const DislocationLoopNode< dim > *const other) const
size_t gID () const
void addLoopLink (LoopLinkType *const pL)
void removeLoopLink (LoopLinkType *const pL)
std::string tag () const
Public Member Functions inherited from model::StaticID< DislocationLoopNode< dim > >
 StaticID ()
Public Member Functions inherited from model::CRTP< DislocationLoopNode< dim > >
 CRTP ()
 The default constructor.
Public Member Functions inherited from model::NetworkBase< DislocationLoopNode< dim >, size_t >
 NetworkBase (const NetworkBase< LoopNetworkType, KeyType > &)=delete
NetworkBase & operator= (const NetworkBase< LoopNetworkType, KeyType > &other)=delete
 ~NetworkBase ()
const LoopNetworkType & network () const
LoopNetworkType * p_network () const
size_t networkID () const

Static Public Member Functions

static void initFromFile (const std::string &)
Static Public Member Functions inherited from model::StaticID< DislocationLoopNode< dim > >
static size_t nextID ()
static size_t & get_count ()
static void set_count (const size_t &newCount)
static void force_count (const size_t &newCount)
static void set_increment (const size_t &newIncrement)

Public Attributes

const std::pair< const std::shared_ptr< PeriodicPlaneEdge< dim > >, const std::shared_ptr< PeriodicPlaneEdge< dim > > > periodicPlaneEdge
bool periodicContourVertex =false
Public Attributes inherited from model::LoopNode< DislocationLoopNode< dim > >
std::shared_ptr< NetworkNodeType > networkNode
std::pair< LoopNodeType *, LoopLinkType * > prev
std::pair< LoopNodeType *, LoopLinkType * > next
Public Attributes inherited from model::StaticID< DislocationLoopNode< dim > >
const size_t sID
 The static ID of this.
Public Attributes inherited from model::NetworkBase< DislocationLoopNode< dim >, size_t >
const KeyType key

Static Public Attributes

static int verboseDislocationLoopNode
Static Public Attributes inherited from model::LoopNode< DislocationLoopNode< dim > >
static int verboseLevel

Additional Inherited Members

Protected Member Functions inherited from model::CRTP< DislocationLoopNode< dim > >
DislocationLoopNode< dim > & derived ()
 A reference to the derived object.
DislocationLoopNode< dim > * p_derived ()
 A pointer to the derived object.

Detailed Description

template<int dim>
class model::DislocationLoopNode< dim >

Definition at line 26 of file DislocationLoopNode.h.

Member Typedef Documentation

◆ DislocationLoopNodeType

template<int dim>
typedef DislocationLoopNode<dim> model::DislocationLoopNode< dim >::DislocationLoopNodeType

Definition at line 35 of file DislocationLoopNode.h.

◆ FlowType

template<int dim>
typedef TraitsType::FlowType model::DislocationLoopNode< dim >::FlowType

Definition at line 43 of file DislocationLoopNode.h.

◆ LoopLinkType

template<int dim>
typedef TraitsType::LoopLinkType model::DislocationLoopNode< dim >::LoopLinkType

Definition at line 40 of file DislocationLoopNode.h.

◆ LoopNetworkType

template<int dim>
typedef TraitsType::LoopNetworkType model::DislocationLoopNode< dim >::LoopNetworkType

Definition at line 37 of file DislocationLoopNode.h.

◆ LoopNodeType

template<int dim>
typedef TraitsType::LoopNodeType model::DislocationLoopNode< dim >::LoopNodeType

Definition at line 39 of file DislocationLoopNode.h.

◆ LoopType

template<int dim>
typedef TraitsType::LoopType model::DislocationLoopNode< dim >::LoopType

Definition at line 38 of file DislocationLoopNode.h.

◆ NetworkLinkType

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

Definition at line 42 of file DislocationLoopNode.h.

◆ NetworkNodeType

template<int dim>
typedef TraitsType::NetworkNodeType model::DislocationLoopNode< dim >::NetworkNodeType

Definition at line 41 of file DislocationLoopNode.h.

◆ SplineNodeType

template<int dim>
typedef SplineNode<DislocationLoopNode<dim>,dim,0,Hermite> model::DislocationLoopNode< dim >::SplineNodeType

Definition at line 46 of file DislocationLoopNode.h.

◆ TraitsType

template<int dim>
typedef TypeTraits<DislocationLoopNodeType> model::DislocationLoopNode< dim >::TraitsType

Definition at line 36 of file DislocationLoopNode.h.

◆ VectorDim

template<int dim>
typedef TraitsType::VectorDim model::DislocationLoopNode< dim >::VectorDim

Definition at line 44 of file DislocationLoopNode.h.

◆ VectorLowerDim

template<int dim>
typedef TraitsType::VectorLowerDim model::DislocationLoopNode< dim >::VectorLowerDim

Definition at line 45 of file DislocationLoopNode.h.

Constructor & Destructor Documentation

◆ DislocationLoopNode() [1/2]

template<int dim>
model::DislocationLoopNode< dim >::DislocationLoopNode ( LoopNetworkType * const ,
const std::shared_ptr< LoopType > & ,
const std::shared_ptr< NetworkNodeType > & ,
const VectorDim & ,
const std::shared_ptr< PeriodicPlanePatch< dim > > & ,
const std::pair< const std::shared_ptr< PeriodicPlaneEdge< dim > >, const std::shared_ptr< PeriodicPlaneEdge< dim > > > &  )

◆ DislocationLoopNode() [2/2]

template<int dim>
model::DislocationLoopNode< dim >::DislocationLoopNode ( LoopNetworkType * const ,
const std::shared_ptr< LoopType > & ,
const std::shared_ptr< NetworkNodeType > & ,
const LoopLinkType * const  )

Member Function Documentation

◆ boundaryNext()

template<int dim>
std::vector< DislocationLoopNode< dim > * > model::DislocationLoopNode< dim >::boundaryNext ( ) const

Definition at line 133 of file DislocationLoopNode.cpp.

◆ boundaryPrev()

template<int dim>
std::vector< DislocationLoopNode< dim > * > model::DislocationLoopNode< dim >::boundaryPrev ( ) const

Definition at line 116 of file DislocationLoopNode.cpp.

◆ clone()

template<int dim>
std::shared_ptr< DislocationLoopNode< dim > > model::DislocationLoopNode< dim >::clone ( const std::shared_ptr< LoopType > & ,
const std::shared_ptr< NetworkNodeType > &  ) const

Definition at line 63 of file DislocationLoopNode.cpp.

◆ initFromFile()

template<int dim>
void model::DislocationLoopNode< dim >::initFromFile ( const std::string & fileName)
static

Definition at line 72 of file DislocationLoopNode.cpp.

◆ isContractableTo()

template<int dim>
bool model::DislocationLoopNode< dim >::isContractableTo ( const LoopNodeType *const other) const

Definition at line 56 of file DislocationLoopNode.cpp.

◆ isGeometricallyRemovable()

template<int dim>
bool model::DislocationLoopNode< dim >::isGeometricallyRemovable ( const double & Lmin,
const double & Lmax,
const double & relAreaTh )

Definition at line 258 of file DislocationLoopNode.cpp.

◆ isMovableTo()

template<int dim>
bool model::DislocationLoopNode< dim >::isMovableTo ( const VectorDim & X) const

Definition at line 443 of file DislocationLoopNode.cpp.

◆ isPeriodicSubdivision()

template<int dim>
bool model::DislocationLoopNode< dim >::isPeriodicSubdivision ( ) const

Definition at line 222 of file DislocationLoopNode.cpp.

◆ isPhysicalBoundaryNode()

template<int dim>
bool model::DislocationLoopNode< dim >::isPhysicalBoundaryNode ( ) const

Definition at line 203 of file DislocationLoopNode.cpp.

◆ isRemovable()

template<int dim>
std::pair< bool, size_t > model::DislocationLoopNode< dim >::isRemovable ( const double & Lmin,
const double & Lmax,
const double & relAreaTh )

Definition at line 309 of file DislocationLoopNode.cpp.

◆ periodicNext()

template<int dim>
const DislocationLoopNode< dim > * model::DislocationLoopNode< dim >::periodicNext ( ) const

Definition at line 97 of file DislocationLoopNode.cpp.

◆ periodicPlanePatch()

template<int dim>
std::shared_ptr< PeriodicPlanePatch< dim > > model::DislocationLoopNode< dim >::periodicPlanePatch ( ) const

Definition at line 246 of file DislocationLoopNode.cpp.

◆ periodicPrev()

template<int dim>
const DislocationLoopNode< dim > * model::DislocationLoopNode< dim >::periodicPrev ( ) const

Definition at line 78 of file DislocationLoopNode.cpp.

◆ set_P() [1/2]

template<int dim>
void model::DislocationLoopNode< dim >::set_P ( const VectorDim & )

◆ set_P() [2/2]

template<int dim>
void model::DislocationLoopNode< dim >::set_P ( const VectorLowerDim & )

◆ updateConfinedGeometry()

template<int dim>
void model::DislocationLoopNode< dim >::updateConfinedGeometry ( )

◆ updateGeometry()

template<int dim>
void model::DislocationLoopNode< dim >::updateGeometry ( )

Definition at line 252 of file DislocationLoopNode.cpp.

Member Data Documentation

◆ periodicContourVertex

template<int dim>
bool model::DislocationLoopNode< dim >::periodicContourVertex =false

Definition at line 87 of file DislocationLoopNode.h.

◆ periodicPlaneEdge

template<int dim>
const std::pair<const std::shared_ptr<PeriodicPlaneEdge<dim> >,const std::shared_ptr<PeriodicPlaneEdge<dim> > > model::DislocationLoopNode< dim >::periodicPlaneEdge

Definition at line 50 of file DislocationLoopNode.h.

◆ verboseDislocationLoopNode

template<int dim>
int model::DislocationLoopNode< dim >::verboseDislocationLoopNode
static

Definition at line 49 of file DislocationLoopNode.h.


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