Description
For testing purposes.
Utility class for creating a box filled with a 3d structured grid of hexahedral finite elements. Adding nodes and finite elements to fields and domains is up to you.
#include <ChBuilderVolume.h>
Public Member Functions | |
| void | BuildVolume (const ChFrame<> &frame, int nlayers_x, int nlayers_y, int nlayers_z, double W_x, double W_y, double W_z) |
| Fills a box with origin (corner) at "frame", with finite elements. More... | |
| void | AddToDomain (std::shared_ptr< ChDomain > domain) |
| After you called BuildVolume(), the builder object has populated its "nodes" and "elements" fields. More... | |
Public Attributes | |
| Ch3DArrayOfNodes | nodes |
| Ch3DArrayOfHexa8 | elements |
| std::vector< std::shared_ptr< ChFieldElementSurface > > | faces_x_hi |
| std::vector< std::shared_ptr< ChFieldElementSurface > > | faces_x_lo |
| std::vector< std::shared_ptr< ChFieldElementSurface > > | faces_y_hi |
| std::vector< std::shared_ptr< ChFieldElementSurface > > | faces_y_lo |
| std::vector< std::shared_ptr< ChFieldElementSurface > > | faces_z_hi |
| std::vector< std::shared_ptr< ChFieldElementSurface > > | faces_z_lo |
Member Function Documentation
◆ AddToDomain()
| void chrono::fea::ChBuilderVolumeBox::AddToDomain | ( | std::shared_ptr< ChDomain > | domain | ) |
After you called BuildVolume(), the builder object has populated its "nodes" and "elements" fields.
Then you need to add all the elements to the domain, and add all the the nodes to the field(s) of the domain: you can do this by yourself or use this AddDomain() shortcut.
◆ BuildVolume()
| void chrono::fea::ChBuilderVolumeBox::BuildVolume | ( | const ChFrame<> & | frame, |
| int | nlayers_x, | ||
| int | nlayers_y, | ||
| int | nlayers_z, | ||
| double | W_x, | ||
| double | W_y, | ||
| double | W_z | ||
| ) |
Fills a box with origin (corner) at "frame", with finite elements.
After calling this, you may want to call AddToDomain()
- Parameters
-
frame origin and rotation of the box being meshed
The documentation for this class was generated from the following files:
- /builds/uwsbel/chrono/src/chrono/fea/ChBuilderVolume.h
- /builds/uwsbel/chrono/src/chrono/fea/ChBuilderVolume.cpp