Description
Utility class for creating complex beams using ChElementBeamIGA 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< ChBeamSectionCosserat > sect, const int N, const ChVector<> A, const ChVector<> B, const ChVector<> Ydir, const int order=3) |
Add beam FEM elements to the mesh to create a segment beam from point A to point B, using ChElementBeamIGA type elements. More... | |
void | BuildBeam (std::shared_ptr< ChMesh > mesh, std::shared_ptr< ChBeamSectionCosserat > sect, geometry::ChLineBspline &spline, const ChVector<> Ydirn) |
Add beam FEM elements to the mesh to create a spline beam using ChElementBeamIGA type elements, given a B-spline line in 3D space. More... | |
std::vector< std::shared_ptr< ChElementBeamIGA > > & | GetLastBeamElements () |
Access the list of elements used by the last built beam. More... | |
std::vector< std::shared_ptr< ChNodeFEAxyzrot > > & | GetLastBeamNodes () |
Access the list of nodes used by the last built beam. More... | |
Protected Attributes | |
std::vector< std::shared_ptr< ChElementBeamIGA > > | beam_elems |
std::vector< std::shared_ptr< ChNodeFEAxyzrot > > | beam_nodes |
Member Function Documentation
◆ BuildBeam() [1/2]
void chrono::fea::ChBuilderBeamIGA::BuildBeam | ( | std::shared_ptr< ChMesh > | mesh, |
std::shared_ptr< ChBeamSectionCosserat > | sect, | ||
const int | N, | ||
const ChVector<> | A, | ||
const ChVector<> | B, | ||
const ChVector<> | Ydir, | ||
const int | order = 3 |
||
) |
Add beam FEM elements to the mesh to create a segment beam from point A to point B, using ChElementBeamIGA type elements.
Before running, each time resets lists of beam_elems and beam_nodes.
- Parameters
-
mesh mesh to store the resulting elements sect section property for beam elements N number of elements in the segment A starting point B ending point Ydir the 'up' Y direction of the beam order the order of spline (default=3,cubic)
◆ BuildBeam() [2/2]
void chrono::fea::ChBuilderBeamIGA::BuildBeam | ( | std::shared_ptr< ChMesh > | mesh, |
std::shared_ptr< ChBeamSectionCosserat > | sect, | ||
geometry::ChLineBspline & | spline, | ||
const ChVector<> | Ydirn | ||
) |
Add beam FEM elements to the mesh to create a spline beam using ChElementBeamIGA type elements, given a B-spline line in 3D space.
Before running, each time resets lists of beam_elems and beam_nodes.
- Parameters
-
mesh mesh to store the resulting elements sect section material for beam elements spline the B-spline to be used as the centerline Ydirn the 'up' Y direction of the beam
◆ 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()
|
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