GranOO  3.0
A robust and versatile workbench to build 3D dynamic simulations based on the Discrete Element Method
Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
GranOO3::PlugIn::CrackClusterTracking Class Reference

#include <CrackClusterTracking.hpp>

Inheritance diagram for GranOO3::PlugIn::CrackClusterTracking:
Inheritance graph
[legend]

Public Member Functions

 CrackClusterTracking ()
 
 ~CrackClusterTracking ()
 
void parse_xml ()
 
void init ()
 
void run ()
 
- Public Member Functions inherited from GranOO3::Core::PlugInInterface< CrackClusterTracking >
virtual ~PlugInInterface ()
 
- Public Member Functions inherited from GranOO3::Core::PlugIn
 PlugIn (const std::string &id)
 
virtual ~PlugIn ()
 
const std::string & get_ID () const
 
void verbose ()
 
void run_and_init ()
 
void trigger_signal_run ()
 
double get_elapsed_time ()
 
int get_instance_number ()
 
void trigger_signal (const std::string &sigID)
 
virtual void read_xml_element (const TiXmlElement *el, bool verbose=false)
 
bool is_multi_thread () const
 
bool is_trigger () const
 
bool is_stop () const
 
void stop ()
 
void unstop ()
 
void set_tot_iter_number (unsigned int)
 

Private Types

using elpair = std::pair< const DEM::Element *, const DEM::Element * >
 

Private Member Functions

 DECLARE_STD_GRANOO_PLUGIN (CRACK-CLUSTER-TRACKING)
 
bool is_touch (const DEM::ElementT< Shape::Polyhedron > *current_el, const DEM::Bond *b1, const DEM::Bond *b2) const
 
elpair make_pair (const DEM::Bond *)
 
void parse_cluster_recursive (DEM::CrackFacet *current, Core::SetOfBase< DEM::CrackFacet > &cluster, std::map< DEM::CrackFacet *, Core::SetOfBase< DEM::CrackFacet >> &conn_table, Core::SetOfBase< DEM::CrackFacet > &parsed_crack)
 

Private Attributes

std::map< elpair, std::vector< elpair > > _touching_facet_map
 
std::string _crack_cluster_prefix
 
bool _periodic
 

Additional Inherited Members

- Static Public Member Functions inherited from GranOO3::Core::PlugInInterface< CrackClusterTracking >
static PlugInbuild ()
 
static CrackClusterTracking & get (unsigned int=0)
 
static bool exist (unsigned int rank=0)
 
static bool record (const std::string file, const std::string desc="")
 
- Static Public Member Functions inherited from GranOO3::Core::PlugIn
static PlugInget (const std::string &id, unsigned int rank=0)
 
static std::map< std::string, std::vector< PlugIn * > > get_all_plugin ()
 
static std::vector< PlugIn * > get_all_plugin_vector ()
 
static bool exist (const std::string &id, unsigned int rank=0)
 
static const std::string class_ID ()
 
- Static Public Member Functions inherited from GranOO3::Core::ObjectFactoryInterface< BaseClass, ChildClass >
static BaseClass * build ()
 
static bool record (const std::string &id, std::string file_name="", std::string desc="")
 
- Static Public Member Functions inherited from GranOO3::Core::ObjectFactory< BaseClass >
static void record (std::function< BaseClass *()>, const std::string &, const std::string file="", const std::string desc="")
 
static BaseClass * new_object (const std::string &)
 
static std::vector< std::string > get_ID ()
 
static std::map< const std::string, std::function< BaseClass *()> > & get_map ()
 
- Protected Member Functions inherited from GranOO3::Core::PlugInInterface< CrackClusterTracking >
 PlugInInterface ()
 
- Protected Member Functions inherited from GranOO3::Core::ObjectFactoryInterface< BaseClass, ChildClass >
 ObjectFactoryInterface ()
 
virtual ~ObjectFactoryInterface ()
 
- Protected Member Functions inherited from GranOO3::Core::ObjectFactory< BaseClass >
 ObjectFactory ()
 
virtual ~ObjectFactory ()
 
- Protected Attributes inherited from GranOO3::Core::PlugIn
std::vector< PlugIn * > _subplugin
 
PlugIn_current_subplugin
 
const std::string _ID
 
const std::string _description
 
PlugIn_parent
 
bool _init
 
bool _can_run
 
bool _verbose
 
unsigned int _current_iter_number
 
unsigned int _iter_number
 
double _total_time
 
bool _stop
 
unsigned int _every_iter
 
double _step_time
 
unsigned int _nb_outputs
 
Math::Expression_trigger_if_expr
 
Math::Expression_init_if_expr
 
std::chrono::microseconds _elapsed_time
 

Member Typedef Documentation

◆ elpair

using GranOO3::PlugIn::CrackClusterTracking::elpair = std::pair<const DEM::Element*, const DEM::Element*>
private

Constructor & Destructor Documentation

◆ CrackClusterTracking()

GranOO3::PlugIn::CrackClusterTracking::CrackClusterTracking ( )

◆ ~CrackClusterTracking()

GranOO3::PlugIn::CrackClusterTracking::~CrackClusterTracking ( )

Member Function Documentation

◆ DECLARE_STD_GRANOO_PLUGIN()

GranOO3::PlugIn::CrackClusterTracking::DECLARE_STD_GRANOO_PLUGIN ( CRACK-CLUSTER-  TRACKING)
private

◆ init()

void GranOO3::PlugIn::CrackClusterTracking::init ( )
virtual

Reimplemented from GranOO3::Core::PlugIn.

◆ is_touch()

bool GranOO3::PlugIn::CrackClusterTracking::is_touch ( const DEM::ElementT< Shape::Polyhedron > *  current_el,
const DEM::Bond b1,
const DEM::Bond b2 
) const
private

◆ make_pair()

CrackClusterTracking::elpair GranOO3::PlugIn::CrackClusterTracking::make_pair ( const DEM::Bond b)
private

◆ parse_cluster_recursive()

void GranOO3::PlugIn::CrackClusterTracking::parse_cluster_recursive ( DEM::CrackFacet *  current,
Core::SetOfBase< DEM::CrackFacet > &  cluster,
std::map< DEM::CrackFacet *, Core::SetOfBase< DEM::CrackFacet >> &  conn_table,
Core::SetOfBase< DEM::CrackFacet > &  parsed_crack 
)
private

◆ parse_xml()

void GranOO3::PlugIn::CrackClusterTracking::parse_xml ( )
virtual

Reimplemented from GranOO3::Core::PlugIn.

◆ run()

void GranOO3::PlugIn::CrackClusterTracking::run ( )
virtual

Reimplemented from GranOO3::Core::PlugIn.

Member Data Documentation

◆ _crack_cluster_prefix

std::string GranOO3::PlugIn::CrackClusterTracking::_crack_cluster_prefix
private

◆ _periodic

bool GranOO3::PlugIn::CrackClusterTracking::_periodic
private

◆ _touching_facet_map

std::map<elpair, std::vector<elpair> > GranOO3::PlugIn::CrackClusterTracking::_touching_facet_map
private

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