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

#include <ApplyFracture.hpp>

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

Public Types

enum  ApplyCriterionOn { ALL , HALF_PLANE , CLOSEST }
 
enum  FailureMode { BRITTLE , PLASTIC }
 

Public Member Functions

 ApplyFracture ()
 
void init ()
 
void run ()
 
void parse_xml ()
 
void write (std::ofstream &, const std::vector< double > &, const std::string &)
 
void apply_failure_criterion ()
 
- Public Member Functions inherited from GranOO3::Core::PlugInInterface< ApplyFracture >
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)
 
- Public Member Functions inherited from GranOO3::Core::NeedSetOf< DEM::Element >
 NeedSetOf (bool required=true)
 
virtual ~NeedSetOf ()
 
bool get_required_flag (unsigned int rank=0) const
 
void set_required_flag (bool flag, unsigned int rank=0)
 
const std::string & get_xml_flag_name (unsigned int rank=0) const
 
void set_xml_flag_name (const std::string &str, unsigned int rank=0)
 
const std::string & get_xml_flag_nameByRank (unsigned int rank) const
 
void set_xml_flag_name_by_rank (const std::string &str, unsigned int rank)
 
bool is_setof_defined (unsigned int rank=0) const
 
Core::SetOf< DEM::Element > & get_setof (unsigned int rank=0)
 
const Core::SetOf< DEM::Element > & get_setof (unsigned int rank=0) const
 
void set_setof (Core::SetOf< DEM::Element > &set, unsigned int rank=0)
 

Private Member Functions

 DECLARE_STD_GRANOO_PLUGIN (APPLY-FRACTURE)
 
 ~ApplyFracture ()
 
void apply_failure_criterion (DEM::Element &de)
 
void apply_failure_criterion (Core::SetOfBase< DEM::Bond > &)
 
Geom::Vector compute_failure_direction (DEM::Element &de)
 

Private Attributes

const std::string _crack_set_ID
 
ApplyCriterionOn _apply_on
 
FailureMode _failure_mode
 
bool _add_element_to_crack_set
 
bool _delete_broken_bond
 
double _half_plane_coeff
 
double _hydrostatic_criterion
 
double _von_mises_criterion
 
double _tresca_criterion
 
double _max_principal_stress_criterion
 
double _s1
 
double _s2
 
double _s3
 
std::vector< Math::Variable * > _criterion_var
 
std::vector< double * > _criterion_var_value
 
std::vector< Math::Expression * > _criterion_var_expr
 
std::vector< Math::Expression * > _criterion_law_expr
 
unsigned int _broken_bond_number
 

Additional Inherited Members

- Static Public Member Functions inherited from GranOO3::Core::PlugInInterface< ApplyFracture >
static PlugInbuild ()
 
static ApplyFracture & 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< ApplyFracture >
 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 Enumeration Documentation

◆ ApplyCriterionOn

Enumerator
ALL 
HALF_PLANE 
CLOSEST 

◆ FailureMode

Enumerator
BRITTLE 
PLASTIC 

Constructor & Destructor Documentation

◆ ApplyFracture()

GranOO3::PlugIn::ApplyFracture::ApplyFracture ( )

◆ ~ApplyFracture()

GranOO3::PlugIn::ApplyFracture::~ApplyFracture ( )
inlineprivate

Member Function Documentation

◆ apply_failure_criterion() [1/3]

void GranOO3::PlugIn::ApplyFracture::apply_failure_criterion ( )

◆ apply_failure_criterion() [2/3]

void GranOO3::PlugIn::ApplyFracture::apply_failure_criterion ( Core::SetOfBase< DEM::Bond > &  set)
private

◆ apply_failure_criterion() [3/3]

void GranOO3::PlugIn::ApplyFracture::apply_failure_criterion ( DEM::Element de)
private

◆ compute_failure_direction()

Geom::Vector GranOO3::PlugIn::ApplyFracture::compute_failure_direction ( DEM::Element de)
private

◆ DECLARE_STD_GRANOO_PLUGIN()

GranOO3::PlugIn::ApplyFracture::DECLARE_STD_GRANOO_PLUGIN ( APPLY-  FRACTURE)
private

◆ init()

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

Reimplemented from GranOO3::Core::PlugIn.

◆ parse_xml()

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

◆ run()

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

Reimplemented from GranOO3::Core::PlugIn.

◆ write()

void GranOO3::PlugIn::ApplyFracture::write ( std::ofstream &  ,
const std::vector< double > &  ,
const std::string &   
)

Member Data Documentation

◆ _add_element_to_crack_set

bool GranOO3::PlugIn::ApplyFracture::_add_element_to_crack_set
private

◆ _apply_on

ApplyCriterionOn GranOO3::PlugIn::ApplyFracture::_apply_on
private

◆ _broken_bond_number

unsigned int GranOO3::PlugIn::ApplyFracture::_broken_bond_number
private

◆ _crack_set_ID

const std::string GranOO3::PlugIn::ApplyFracture::_crack_set_ID
private

◆ _criterion_law_expr

std::vector<Math::Expression*> GranOO3::PlugIn::ApplyFracture::_criterion_law_expr
private

◆ _criterion_var

std::vector<Math::Variable*> GranOO3::PlugIn::ApplyFracture::_criterion_var
private

◆ _criterion_var_expr

std::vector<Math::Expression*> GranOO3::PlugIn::ApplyFracture::_criterion_var_expr
private

◆ _criterion_var_value

std::vector<double*> GranOO3::PlugIn::ApplyFracture::_criterion_var_value
private

◆ _delete_broken_bond

bool GranOO3::PlugIn::ApplyFracture::_delete_broken_bond
private

◆ _failure_mode

FailureMode GranOO3::PlugIn::ApplyFracture::_failure_mode
private

◆ _half_plane_coeff

double GranOO3::PlugIn::ApplyFracture::_half_plane_coeff
private

◆ _hydrostatic_criterion

double GranOO3::PlugIn::ApplyFracture::_hydrostatic_criterion
private

◆ _max_principal_stress_criterion

double GranOO3::PlugIn::ApplyFracture::_max_principal_stress_criterion
private

◆ _s1

double GranOO3::PlugIn::ApplyFracture::_s1
private

◆ _s2

double GranOO3::PlugIn::ApplyFracture::_s2
private

◆ _s3

double GranOO3::PlugIn::ApplyFracture::_s3
private

◆ _tresca_criterion

double GranOO3::PlugIn::ApplyFracture::_tresca_criterion
private

◆ _von_mises_criterion

double GranOO3::PlugIn::ApplyFracture::_von_mises_criterion
private

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