Description

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

#include <ChBuilderBeam.h>

Collaboration diagram for chrono::fea::ChExtruderBeamEuler:

Public Member Functions

 ChExtruderBeamEuler (ChSystem *msystem, std::shared_ptr< ChMesh > mmesh, std::shared_ptr< ChBeamSectionEuler > sect, double mh, const ChCoordsys<> moutlet, double mspeed)
 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...
 
void Update ()
 Create beam elements, if needed, and update the constraint that imposes the extrusion speed.
 
std::vector< std::shared_ptr< ChElementBeamEuler > > & 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< ChElementBeamEuler > > beam_elems
 
std::vector< std::shared_ptr< ChNodeFEAxyzrot > > beam_nodes
 
std::shared_ptr< ChBodyground
 
std::shared_ptr< ChLinkMotorLinearSpeedactuator
 
std::shared_ptr< ChLinkMateGenericguide
 
ChSystemmysystem
 
std::shared_ptr< ChMeshmesh
 
std::shared_ptr< ChBeamSectionEulerbeam_section
 
double h
 
ChCoordsys outlet
 
double mytime
 
double speed
 
std::shared_ptr< ChContactMaterialSMCcontact_material
 
std::shared_ptr< ChContactSurfaceNodeCloudcontactcloud
 
double contact_radius
 

Constructor & Destructor Documentation

◆ ChExtruderBeamEuler()

chrono::fea::ChExtruderBeamEuler::ChExtruderBeamEuler ( ChSystem msystem,
std::shared_ptr< ChMesh mmesh,
std::shared_ptr< ChBeamSectionEuler sect,
double  mh,
const ChCoordsys<>  moutlet,
double  mspeed 
)

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

Member Function Documentation

◆ SetContact()

void chrono::fea::ChExtruderBeamEuler::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)

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