OpenBeam
C++ library for static analysis of mechanical structures
|
#include <CBaseElementBeam.h>
Public Types | |
using | Ptr = std::shared_ptr< CBaseElementBeam > |
using | ConstPtr = std::shared_ptr< const CBaseElementBeam > |
Public Types inherited from openbeam::CElement | |
using | Ptr = std::shared_ptr< CElement > |
using | ConstPtr = std::shared_ptr< const CElement > |
Public Member Functions | |
CBaseElementBeam (const bool pinned_end0, const bool pinned_end1) | |
CBaseElementBeam (const size_t from_node_id, const size_t to_node_id, const bool pinned_end0, const bool pinned_end1) | |
void | copyCommonBeamParamsFrom (const CBaseElementBeam &o) |
std::string | asString () const override |
void | drawSVG (void *_cairo_context, const DrawStructureOptions &options, const RenderInitData &ri, const DrawElementExtraParams &draw_el_params, const MeshOutputInfo *meshing_info) const override |
mrpt::opengl::CSetOfObjects::Ptr | getVisualization (const DrawStructureOptions &o, const DrawElementExtraParams &draw_el_params, const MeshOutputInfo *meshing_info) const override |
void | do_mesh (const size_t my_idx, CStructureProblem &out_fem, MeshOutputInfo &out_info, const MeshParams ¶ms) override |
void | loadParamsFromSet (const mrpt::containers::yaml &p, const EvaluationContext &ctx) override |
Public Member Functions inherited from openbeam::CElement | |
unsigned char | getNumberEdges () const |
virtual void | getLocalStiffnessMatrices (std::vector< TStiffnessSubmatrix > &outSubMats) const =0 |
virtual void | getLocalDoFs (std::vector< used_DoFs_t > &dofs) const =0 |
void | getGlobalDoFs (std::vector< used_DoFs_t > &dofs) const |
virtual void | getGlobalStiffnessMatrices (std::vector< TStiffnessSubmatrix > &outSubMats) const |
void | setGlobalOrientation (const TRotation3D &new_orientation) |
const TRotation3D & | getGlobalOrientation () const |
virtual void | updateOrientationFromNodePositions () |
void | setDesignRotationAroundLinearAxis (num_t ang) |
void | setParent (CFiniteElementProblem *parent) |
void | loadParamsFromSet (const mrpt::containers::yaml &p) |
CFiniteElementProblem * | getParent () const |
Public Attributes | |
num_t | E = UNINITIALIZED_VALUE |
Young modulus (N/m^2) | |
num_t | A = UNINITIALIZED_VALUE |
Section (m^2) | |
num_t | Iz = UNINITIALIZED_VALUE |
Section inertia moment (m^4) | |
num_t | G = 0 |
Shear modulus of elasticity (N/m^2) | |
num_t | J = 0 |
Polar moment of inertia (m^4) | |
Public Attributes inherited from openbeam::CElement | |
std::vector< size_t > | conected_nodes_ids |
Additional Inherited Members | |
Static Public Member Functions inherited from openbeam::CElement | |
static Ptr | createElementByName (const std::string &sName) |
Protected Member Functions inherited from openbeam::CElement | |
CElement (unsigned char nEdges) | |
CElement (unsigned char nEdges, const size_t from_node_id, const size_t to_node_id) | |
Protected Attributes inherited from openbeam::CElement | |
const unsigned char | m_nEdges |
CFiniteElementProblem * | m_parent |
num_t | m_design_rotation_around_linear_axis |
For linear elements, the rotation around +X(local) | |
TRotation3D | m_global_orientation |
Orientation of the element wrt global coords. | |
A base class for Beam elements; not usable as an standalone element.
|
inline |
Sets the basic beam parameters from another existing element.
|
overridevirtual |
Mesh this element into a set of (possibly) smaller ones
Implements openbeam::CElement.
|
overridevirtual |
Draws the element to a SVG Cairo context (a pointer to a Cairo::RefPtr<Cairo::Context> casted to void*), according to the passed options
Implements openbeam::CElement.
|
overridevirtual |
Parse a set of parameters by (casi insensitive) name and set the element values from them. Each element must document the supported parameters and their meaning.
Implements openbeam::CElement.