Description

Utility class for creating complex beams using ChElementBeamEuler elements, for example subdivides a segment in multiple finite elements.

#include <ChBuilderBeam.h>

Public Member Functions

void BuildBeam (std::shared_ptr< ChMesh > mesh, std::shared_ptr< ChBeamSectionEuler > sect, const int N, const ChVector3d A, const ChVector3d B, const ChVector3d Ydir)
 Add beam FEM elements to the mesh to create a segment beam from point A to point B, using ChElementBeamEuler type elements.
 
void BuildBeam (std::shared_ptr< ChMesh > mesh, std::shared_ptr< ChBeamSectionEuler > sect, const int N, std::shared_ptr< ChNodeFEAxyzrot > nodeA, std::shared_ptr< ChNodeFEAxyzrot > nodeB, const ChVector3d Ydir)
 Add beam FEM elements to the mesh to create a segment beam from one existing node to another existing node, using ChElementBeamEuler type elements.
 
void BuildBeam (std::shared_ptr< ChMesh > mesh, std::shared_ptr< ChBeamSectionEuler > sect, const int N, std::shared_ptr< ChNodeFEAxyzrot > nodeA, const ChVector3d B, const ChVector3d Ydir)
 Add beam FEM elements to the mesh to create a segment beam from one existing node to a point B, using ChElementBeamEuler type elements.
 
std::vector< std::shared_ptr< ChElementBeamEuler > > & GetLastBeamElements ()
 Access the list of elements used by the last built beam.
 
std::vector< std::shared_ptr< ChNodeFEAxyzrot > > & GetLastBeamNodes ()
 Access the list of nodes used by the last built beam.
 

Protected Attributes

std::vector< std::shared_ptr< ChElementBeamEuler > > beam_elems
 
std::vector< std::shared_ptr< ChNodeFEAxyzrot > > beam_nodes
 

Member Function Documentation

◆ BuildBeam() [1/3]

void chrono::fea::ChBuilderBeamEuler::BuildBeam ( std::shared_ptr< ChMesh > mesh,
std::shared_ptr< ChBeamSectionEuler > sect,
const int N,
const ChVector3d A,
const ChVector3d B,
const ChVector3d Ydir )

Add beam FEM elements to the mesh to create a segment beam from point A to point B, using ChElementBeamEuler type elements.

Before running, each time resets lists of beam_elems and beam_nodes.

Parameters
meshmesh to store the resulting elements
sectsection material for beam elements
Nnumber of elements in the segment
Astarting point
Bending point
Ydirthe 'up' Y direction of the beam

◆ BuildBeam() [2/3]

void chrono::fea::ChBuilderBeamEuler::BuildBeam ( std::shared_ptr< ChMesh > mesh,
std::shared_ptr< ChBeamSectionEuler > sect,
const int N,
std::shared_ptr< ChNodeFEAxyzrot > nodeA,
const ChVector3d B,
const ChVector3d Ydir )

Add beam FEM elements to the mesh to create a segment beam from one existing node to a point B, using ChElementBeamEuler type elements.

Before running, each time resets lists of beam_elems and beam_nodes.

Parameters
meshmesh to store the resulting elements
sectsection material for beam elements
Nnumber of elements in the segment
nodeAstarting point
Bending point
Ydirthe 'up' Y direction of the beam

◆ BuildBeam() [3/3]

void chrono::fea::ChBuilderBeamEuler::BuildBeam ( std::shared_ptr< ChMesh > mesh,
std::shared_ptr< ChBeamSectionEuler > sect,
const int N,
std::shared_ptr< ChNodeFEAxyzrot > nodeA,
std::shared_ptr< ChNodeFEAxyzrot > nodeB,
const ChVector3d Ydir )

Add beam FEM elements to the mesh to create a segment beam from one existing node to another existing node, using ChElementBeamEuler type elements.

Before running, each time resets lists of beam_elems and beam_nodes.

Parameters
meshmesh to store the resulting elements
sectsection material for beam elements
Nnumber of elements in the segment
nodeAstarting point
nodeBending point
Ydirthe 'up' Y direction of the beam

◆ GetLastBeamElements()

std::vector< std::shared_ptr< ChElementBeamEuler > > & chrono::fea::ChBuilderBeamEuler::GetLastBeamElements ( )
inline

Access the list of elements used by the last built beam.

It can be useful for changing properties afterwards. This list is reset all times a BuildBeam function is called.

◆ GetLastBeamNodes()

std::vector< std::shared_ptr< ChNodeFEAxyzrot > > & chrono::fea::ChBuilderBeamEuler::GetLastBeamNodes ( )
inline

Access the list of nodes used by the last built beam.

It can be useful for adding constraints or changing properties afterwards. This list is reset all times a BuildBeam function is called.


The documentation for this class was generated from the following files:
  • C:/M/B/src/chrono-9.0.1/src/chrono/fea/ChBuilderBeam.h
  • C:/M/B/src/chrono-9.0.1/src/chrono/fea/ChBuilderBeam.cpp