Description

Utility class for creating complex beams using ChElementBeamANCF 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< ChMaterialBeamANCF > mat, const int N, const ChVector<> A, const ChVector<> B, const double h, const double w, const ChVector<> DIR, const ChVector<> CUR, const bool Poisson_effect=false, const bool grav=false, const double damp=0)
 Add beam FEM elements to the mesh to create a segment beam from point A to point B, using ChElementCableANCF type elements. More...
 
std::vector< std::shared_ptr< ChElementBeamANCF > > & GetLastBeamElements ()
 Access the list of elements used by the last built beam. More...
 
std::vector< std::shared_ptr< ChNodeFEAxyzDD > > & GetLastBeamNodes ()
 Access the list of nodes used by the last built beam. More...
 

Protected Attributes

std::vector< std::shared_ptr< ChElementBeamANCF > > beam_elems
 
std::vector< std::shared_ptr< ChNodeFEAxyzDD > > beam_nodes
 

Member Function Documentation

◆ BuildBeam()

void chrono::fea::ChBuilderBeamANCF::BuildBeam ( std::shared_ptr< ChMesh mesh,
std::shared_ptr< ChMaterialBeamANCF mat,
const int  N,
const ChVector<>  A,
const ChVector<>  B,
const double  h,
const double  w,
const ChVector<>  DIR,
const ChVector<>  CUR,
const bool  Poisson_effect = false,
const bool  grav = false,
const double  damp = 0 
)

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

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

Parameters
meshmesh to store the resulting elements
matmaterial for beam elements
Nnumber of elements in the segment
Astarting point
Bending point
hheight
wwidth
DIRinitial nodal direction
CURinitial nodal curvature
Poisson_effectset true to evaluate poisson effects
gravset true to apply gravity force

◆ GetLastBeamElements()

std::vector<std::shared_ptr<ChElementBeamANCF> >& chrono::fea::ChBuilderBeamANCF::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<ChNodeFEAxyzDD> >& chrono::fea::ChBuilderBeamANCF::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:
  • /builds/uwsbel/chrono/src/chrono/fea/ChBuilderBeam.h
  • /builds/uwsbel/chrono/src/chrono/fea/ChBuilderBeam.cpp