36 #ifndef _libDEM_FlatBond_Ortho_hpp_
37 #define _libDEM_FlatBond_Ortho_hpp_
68 FlatBond_Ortho(
Element& el1,
Element& el2,
double Ex,
double Ey,
double Ez,
double C11,
double C12,
double C13,
double C21,
double C22,
double C23,
double C31,
double C32,
double C33,
double C44,
double C55,
double C66,
bool build_voronoi_bond =
true);
77 virtual std::string
info()
const;
80 GRANOO_ACCESS(Ex ,
double ,
_Ex );
81 GRANOO_ACCESS(Ey ,
double ,
_Ey );
82 GRANOO_ACCESS(Ez ,
double ,
_Ez );
83 GRANOO_ACCESS(C11 ,
double ,
_C11 );
84 GRANOO_ACCESS(C12 ,
double ,
_C12 );
85 GRANOO_ACCESS(C13 ,
double ,
_C13 );
86 GRANOO_ACCESS(C21 ,
double ,
_C21 );
87 GRANOO_ACCESS(C22 ,
double ,
_C22 );
88 GRANOO_ACCESS(C23 ,
double ,
_C23 );
89 GRANOO_ACCESS(C31 ,
double ,
_C31 );
90 GRANOO_ACCESS(C32 ,
double ,
_C32 );
91 GRANOO_ACCESS(C33 ,
double ,
_C33 );
92 GRANOO_ACCESS(C44 ,
double ,
_C44 );
93 GRANOO_ACCESS(C55 ,
double ,
_C55 );
94 GRANOO_ACCESS(C66 ,
double ,
_C66 );
107 template<
class Archive>
void serialize(Archive&,
const unsigned int);
134 template<
class Archive>
void
136 ar & boost::serialization::base_object<Bond>(*
this);
162 #include <boost/serialization/version.hpp>
169 namespace serialization
172 template<
class Archive>
175 const unsigned int) {
183 template<
class Archive>
186 const unsigned int) {
198 GRANOO_CLASS_DECLARE_TPL(DEM::FlatBond_Ortho);
BOOST_CLASS_VERSION(GranOO3::DEM::FlatBond_Ortho, 1) namespace boost
Definition: FlatBond_Ortho.hpp:163
Definition: SetOf.hpp:346
the base class for all bonds between discrete elements.
Definition: Bond.hpp:49
void build_voronoi_bond()
build a voronoi bond from the current bond
Definition: Bond.cpp:361
a base class that represents an element
Definition: Element.hpp:55
Definition: FlatBond_Ortho.hpp:61
double _C44
Definition: FlatBond_Ortho.hpp:123
double _Ex
Definition: FlatBond_Ortho.hpp:111
double _C55
Definition: FlatBond_Ortho.hpp:124
virtual ~FlatBond_Ortho()
Definition: FlatBond_Ortho.cpp:111
double _C31
Definition: FlatBond_Ortho.hpp:120
double _current_normal_stress
Definition: FlatBond_Ortho.hpp:130
void update_strain_tensor_and_compute_reaction_force_and_torque()
Definition: FlatBond_Ortho.cpp:116
Geom::Point _FC1
Definition: FlatBond_Ortho.hpp:127
virtual void compute_load()
compute the reaction force and torque of the bond
Definition: FlatBond_Ortho.cpp:186
double _C66
Definition: FlatBond_Ortho.hpp:125
double _C11
Definition: FlatBond_Ortho.hpp:114
Geom::Point _FC2
Definition: FlatBond_Ortho.hpp:128
double _C33
Definition: FlatBond_Ortho.hpp:122
double _C22
Definition: FlatBond_Ortho.hpp:118
double get_angular_stiffness() const
similar as get_linear_stiffness() for rotation
Definition: FlatBond_Ortho.cpp:222
double _Ez
Definition: FlatBond_Ortho.hpp:113
Geom::Vector _current_stress_vector
Definition: FlatBond_Ortho.hpp:129
VoronoiBond * _voronoi_bond
Definition: FlatBond_Ortho.hpp:110
double _C12
Definition: FlatBond_Ortho.hpp:115
double get_linear_stiffness() const
compute the linear stiffness of the bond
Definition: FlatBond_Ortho.cpp:211
double _C13
Definition: FlatBond_Ortho.hpp:116
double _Ey
Definition: FlatBond_Ortho.hpp:112
void serialize(Archive &, const unsigned int)
Definition: FlatBond_Ortho.hpp:135
double _C23
Definition: FlatBond_Ortho.hpp:119
double _C21
Definition: FlatBond_Ortho.hpp:117
friend class boost::serialization::access
Definition: FlatBond_Ortho.hpp:106
virtual std::string info() const
Display some useful info in the terminal
Definition: FlatBond_Ortho.cpp:233
FlatBond_Ortho & operator=(const FlatBond_Ortho &)=delete
FlatBond_Ortho(const FlatBond_Ortho &)=delete
virtual double compute_critical_time_step() const
a pure virtual method able to return the critical time step value
Definition: FlatBond_Ortho.cpp:196
double _C32
Definition: FlatBond_Ortho.hpp:121
a bond property which is dedicated to voronoi domain.
Definition: VoronoiBond.hpp:47
Definition: Vector.hpp:75
pure virtual class for modeling classes able to compute a critical time step
Definition: CriticalTimeStep.hpp:50
Definition: Common.hpp:198
void save_construct_data(Archive &ar, const GranOO3::Core::Pair< type > *t, const unsigned int)
Definition: Pair.hpp:207
void load_construct_data(Archive &ar, GranOO3::Core::Pair< type > *t, const unsigned int)
Definition: Pair.hpp:217
x y t t *t x y t t t x y t t t x *y t *t t x *y t *t t x y t t t x y t t t t(t+t)") define_sfop3(16