chrono::fea::ChExtruderBeamIGA Class Reference

Description

Class for an object that continuously extrude a beam (composed of ChElementBeamIGA elements) with prescribed velocity.

#include <ChBuilderBeam.h>

Public Member Functions

 ChExtruderBeamIGA (ChSystem *msystem, std::shared_ptr< ChMesh > mmesh, std::shared_ptr< ChBeamSectionCosserat > sect, double mh, const ChCoordsys<> moutlet, double mspeed, int morder)
 Initialize and add required constraints to system. More...
 
void SetContact (std::shared_ptr< ChContactMaterialSMC > mcontact_material, double mcontact_radius)
 Set the material for the beam, and enables collision detection for the beam nodes. More...
 
bool Update ()
 Create beam elements, as needed, and update the constraint that imposes the extrusion speed. More...
 
std::vector< std::shared_ptr< ChElementBeamIGA > > & GetLastBeamElements ()
 Access the list of created elements.
 
std::vector< std::shared_ptr< ChNodeFEAxyzrot > > & GetLastBeamNodes ()
 Access the list of created nodes.
 

Constructor & Destructor Documentation

◆ ChExtruderBeamIGA()

chrono::fea::ChExtruderBeamIGA::ChExtruderBeamIGA ( ChSystem msystem,
std::shared_ptr< ChMesh mmesh,
std::shared_ptr< ChBeamSectionCosserat sect,
double  mh,
const ChCoordsys<>  moutlet,
double  mspeed,
int  morder 
)

Initialize and add required constraints to system.

Parameters
msystemsystem to store the constraints
mmeshmesh to store the resulting elements
sectsection material for beam elements
mhelement length
moutletoutlet pos & orientation (z is extrusion direction)
mspeedspeed
morderelement order, default =3 (cubic)

Member Function Documentation

◆ SetContact()

void chrono::fea::ChExtruderBeamIGA::SetContact ( std::shared_ptr< ChContactMaterialSMC mcontact_material,
double  mcontact_radius 
)

Set the material for the beam, and enables collision detection for the beam nodes.

By default, collision not enabled.

Parameters
mcontact_materialmaterial to use for surface
mcontact_radiusradius of colliding spheres at each node (usually = to avg.beam thickness)

◆ Update()

bool chrono::fea::ChExtruderBeamIGA::Update ( )

Create beam elements, as needed, and update the constraint that imposes the extrusion speed.

Return 'true' if any new nodes/elements were created (hence a system change) and 'false' otherwise.


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