b2api
B2000++ API Reference Manual, VERSION 4.6
 
Loading...
Searching...
No Matches
b2000::b2dbv3::ElementPropertyStressExample Class Reference
Inheritance diagram for b2000::b2dbv3::ElementPropertyStressExample:
Collaboration diagram for b2000::b2dbv3::ElementPropertyStressExample:

Public Types

typedef ObjectTypeComplete< ElementPropertyStressExample, FortranElementProperty::type_ttype_t
 For the object creation.
 

Public Member Functions

void set_model_and_case (b2000::Model &model, b2000::Case &case_) override
 Patch-through from the parent class.
 
b2000::SolidMechanics::LinearType linear (const int layer_id=-1) const override
 Specify unique final overrider.
 
bool path_dependent (const int layer_id=-1) const override
 Specify unique final overrider.
 
bool isotropic (const int layer_id=-1) const override
 Specify unique final overrider.
 
int number_of_layer () const override
 Specify unique final overrider.
 
void laminate (b2000::b2linalg::Vector< double, b2000::b2linalg::Vdense_constref > nodes_interpolation, double &laminate_begin, double &laminate_end) const override
 Specify unique final overrider.
 
void layer (b2000::b2linalg::Vector< double, b2000::b2linalg::Vdense_constref > nodes_interpolation, const int layer_id, double &layer_begin, double &layer_end) const override
 Specify unique final overrider.
 
- Public Member Functions inherited from b2000::b2dbv3::ElementPropertyStressExample3D
void set_model_and_case (b2000::Model &model, b2000::Case &case_) override
 Is called when B2000++ starts.
 
b2000::SolidMechanics::LinearType linear (const int layer_id=-1) const override
 
bool isotropic (const int layer_id=-1) const override
 
int number_of_layer () const override
 To simplify this example, only a single layer is allowed.
 
void laminate (const b2000::b2linalg::Vector< double, b2000::b2linalg::Vdense_constref > nodes_interpolation, double &laminate_begin, double &laminate_end) const override
 "patch-through" from FortranElementProperty
 
void layer (const b2000::b2linalg::Vector< double, b2000::b2linalg::Vdense_constref > nodes_interpolation, const int layer_id, double &layer_begin, double &layer_end) const override
 "patch-through" from FortranElementProperty
 
double get_density (const int layer_id) const override
 "patch-through" from FortranElementProperty
 
void get_stress (b2000::Model *model, const bool linear, const b2000::EquilibriumSolution equilibrium_solution, const double time, const double delta_time, b2000::GradientContainer *gradient_container, b2000::SolverHints *solver_hints, const b2000::Element *element, const double el_coordinates[3], const int layer_id, b2000::b2linalg::Vector< double, b2000::b2linalg::Vdense_constref > nodes_interpolation, const double bg_coordinates[3], const double covariant_base[3][3], const bool use_covariant_base, const double volume, const double displacement_gradient[3][3], const double strain[6], const double strain_dot[6], const double velocity[3], const double acceleration[3], double stress[6], double d_stress_d_strain[21], double d_stress_d_strain_dot[21], double d_stress_d_time[6], double inertia_force[3], double &density) override
 Is called by the elements.
 
- Public Member Functions inherited from b2000::b2dbv3::FortranElementProperty
void init (BranchProperty *branch_property_, MaterialProperty *material_, int integration_order_[3], const std::vector< b2000::csda< double > > &tl_, const std::vector< b2000::csda< double > > &ecc_, int bmtype_, std::bitset< 6 > endreleases_[2], const std::vector< b2000::csda< double > > &mbase_)
 Called by the Domain object.
 
const int * get_integration_order () const override
 
Domainget_domain ()
 
void laminate (b2linalg::Vector< double, b2linalg::Vdense_constref > nodes_interpolation, b2000::csda< double > &laminate_begin, b2000::csda< double > &laminate_end) const
 
void layer (b2linalg::Vector< double, b2linalg::Vdense_constref > nodes_interpolation, const int layer_id, double &layer_begin, double &layer_end) const
 
bool get_material_ref_3d (b2000::Model *model, const Element *element, const double coordinates[3], const int layer_id, const double covariant_base[3][3], double material_ref[3][3])
 
bool get_material_ref_3d (b2000::Model *model, const Element *element, const b2000::csda< double > coordinates[3], const int layer_id, const b2000::csda< double > covariant_base[3][3], b2000::csda< double > material_ref[3][3])
 
bool get_material_ref_25d (b2000::Model *model, const Element *element, const double coordinates[3], const int layer_id, const double covariant_base[3][3], const bool isotropic, double material_ref[3][3])
 
bool get_material_ref_25d (b2000::Model *model, const Element *element, const b2000::csda< double > coordinates[3], const int layer_id, const b2000::csda< double > covariant_base[3][3], const bool isotropic, b2000::csda< double > material_ref[3][3])
 
bool get_material_ref_2d (b2000::Model *model, const Element *element, const double coordinates[3], const int layer_id, const double covariant_base[2][2], double material_ref[2][2])
 
bool get_material_ref_2d (b2000::Model *model, const Element *element, const b2000::csda< double > coordinates[3], const int layer_id, const b2000::csda< double > covariant_base[2][2], b2000::csda< double > material_ref[2][2])
 
const RTableget_material (const int layer_id)
 
bool have_temperature () const
 
bool get_material_temperature (const Element *element, b2linalg::Vector< double, b2linalg::Vdense_constref > nodes_interpolation, const int nb_thickness_interpolation, const double thickness_interpolation[], const double time, double &temp, double &d_temp_d_time) const
 
const std::string & get_object_name () const override
 
- Public Member Functions inherited from b2000::ElementProperty
const std::string & get_object_name () const override
 
- Public Member Functions inherited from b2000::Object
virtual ~Object ()
 
- Public Member Functions inherited from b2000::SolidMechanics3D< double >
virtual SolidMechanics3D< double > * copy (int layer_)
 
- Public Member Functions inherited from b2000::b2dbv3::ElementPropertyStressExample25D
void set_model_and_case (b2000::Model &model, b2000::Case &case_) override
 Is called when B2000++ starts.
 
b2000::SolidMechanics::LinearType linear (const int layer_id=-1) const override
 
bool isotropic (const int layer_id=-1) const override
 
int number_of_layer () const override
 To simplify this example, only a single layer is allowed.
 
void laminate (const b2000::b2linalg::Vector< double, b2000::b2linalg::Vdense_constref > nodes_interpolation, double &laminate_begin, double &laminate_end) const override
 "patch-through" from FortranElementProperty
 
void layer (const b2000::b2linalg::Vector< double, b2000::b2linalg::Vdense_constref > nodes_interpolation, const int layer_id, double &layer_begin, double &layer_end) const override
 "patch-through" from FortranElementProperty
 
double get_density (const int layer_id) const override
 "patch-through" from FortranElementProperty
 
void get_stress (b2000::Model *model, const bool linear, const b2000::EquilibriumSolution equilibrium_solution, const double time, const double delta_time, b2000::GradientContainer *gradient_container, b2000::SolverHints *solver_hints, const b2000::Element *element, const double el_coordinates[3], const int layer_id, b2000::b2linalg::Vector< double, b2000::b2linalg::Vdense_constref > nodes_interpolation, const double thickness_interpolation[2], const double bg_coordinates[3], const double covariant_base[3][3], const bool use_covariant_base, const double volume, const double displacement_gradient[3][3], const double strain[6], const double strain_dot[6], const double velocity[3], const double acceleration[3], double stress[6], double d_stress_d_strain[21], double d_stress_d_strain_dot[21], double d_stress_d_time[6], double inertia_force[3], double &density) override
 Is called by the elements.
 
- Public Member Functions inherited from b2000::SolidMechanics25D< double >
virtual SolidMechanics25D< double > * copy (int layer_)
 
virtual void get_static_nonlinear_shell_stress (Model *model, const EquilibriumSolution equilibrium_solution, const double time, const double delta_time, GradientContainer *gradient_container, SolverHints *solver_hints, const Element *element, const double el_coordinates[2], const b2linalg::Vector< double, b2linalg::Vdense_constref > nodes_interpolation, const double bg_coordinates[3], const double covariant_base[6][3], const bool use_covariant_base, const double displacement_gradient[6][3], const double shell_strain[8], double shell_stress[8], double d_shell_stress_d_strain[36], double d_shell_stress_d_time[8])
 
virtual void set_static_nonlinear_shell_stress (Model *model, const double time, const double delta_time, GradientContainer *gradient_container, const Element *element, const double el_coordinates[2], const b2linalg::Vector< double, b2linalg::Vdense_constref > nodes_interpolation, const double bg_coordinates[3], const double covariant_base[6][3], const bool use_covariant_base, const double displacement_gradient[6][3], const double shell_strain[8], const double shell_stress[8], const double d_shell_stress_d_ec[2][8])
 
virtual void get_shell_stress (Model *model, const EquilibriumSolution equilibrium_solution, const double time, const double delta_time, GradientContainer *gradient_container, SolverHints *solver_hints, const Element *element, const double el_coordinates[2], const b2linalg::Vector< double, b2linalg::Vdense_constref > nodes_interpolation, const double bg_coordinates[3], const double covariant_base[6][3], const bool use_covariant_base, const double volume, const double displacement_gradient[6][3], const double shell_strain[8], const double strain_dot[8], const double velocity[6], const double acceleration[6], double shell_stress[8], double d_shell_stress_d_strain[36], double d_stress_d_strain_dot[36], double d_shell_stress_d_time[8], double d_stress_d_time[6], double inertia_force[6], double density[3])
 

Static Public Attributes

static type_t type
 For the object creation.
 
- Static Public Attributes inherited from b2000::Object
static ObjectType type
 

Detailed Description

Combines one or several classes (3D, shell, 2D, etc.) into a single class that is instantiated by B2000++. The elements cast this to the class (e.g. SolidMechanics3D<double>) they need.


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