chrono::fea::ChExtruderBeamIGA Class Reference

Description

Class for object that continuously extrude a beam with prescribed velocity.

#include <ChBuilderBeam.h>

Collaboration diagram for chrono::fea::ChExtruderBeamIGA:

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< ChMaterialSurfaceSMC > mcontact_material, double mcontact_radius)
 Sets the material for the beam, and enables collision detection for the beam nodes. More...
 
void Update ()
 Create beam elements, if needed, and update the constraint that imposes the extrusion speed.
 
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.
 

Protected Attributes

std::vector< std::shared_ptr< ChElementBeamIGA > > beam_elems
 
std::vector< std::shared_ptr< ChNodeFEAxyzrot > > beam_nodes
 
std::vector< double > beam_knots
 
int beam_order
 
std::shared_ptr< ChBodyground
 
std::shared_ptr< ChLinkMotorLinearSpeedactuator
 
std::shared_ptr< ChLinkMateGenericguide
 
ChSystemmysystem
 
std::shared_ptr< ChMeshmesh
 
std::shared_ptr< ChBeamSectionCosseratbeam_section
 
double h
 
ChCoordsys outlet
 
double mytime
 
double speed
 
std::shared_ptr< ChMaterialSurfaceSMCcontact_material
 
std::shared_ptr< ChContactSurfaceNodeCloudcontactcloud
 
double contact_radius
 

Constructor & Destructor Documentation

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 (x is extrusion direction)
mspeedspeed
morderelement order, default =3 (cubic)

Member Function Documentation

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

Sets 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)