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>
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) | 
| 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. | |
| 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< ChBody > | ground | 
| std::shared_ptr< ChLinkMotorLinearSpeed > | actuator | 
| std::shared_ptr< ChLinkMateGeneric > | guide | 
| ChSystem * | mysystem | 
| std::shared_ptr< ChMesh > | mesh | 
| std::shared_ptr< ChBeamSectionCosserat > | beam_section | 
| double | h | 
| ChCoordsys | outlet | 
| double | mytime | 
| double | speed | 
| std::shared_ptr< ChMaterialSurfaceSMC > | contact_material | 
| std::shared_ptr< ChContactSurfaceNodeCloud > | contactcloud | 
| double | contact_radius | 
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
- 
  msystem system to store the constraints mmesh mesh to store the resulting elements sect section material for beam elements mh element length moutlet outlet pos & orientation (x is extrusion direction) mspeed speed morder element order, default =3 (cubic) 
Member Function Documentation
◆ SetContact()
| void chrono::fea::ChExtruderBeamIGA::SetContact | ( | std::shared_ptr< ChMaterialSurfaceSMC > | 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_material material to use for surface mcontact_radius radius 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
