chrono::fsi::ChFsiInterface Class Reference
Description
Base class for processing the interface between Chrono and FSI modules.
#include <ChFsiInterface.h>
Inheritance diagram for chrono::fsi::ChFsiInterface:
Collaboration diagram for chrono::fsi::ChFsiInterface:
Public Member Functions | |
ChFsiInterface (ChSystem &other_mphysicalSystem, std::shared_ptr< fea::ChMesh > other_fsiMesh, std::shared_ptr< SimParams > other_paramsH, std::shared_ptr< FsiBodiesDataH > other_fsiBodiesH, std::shared_ptr< FsiMeshDataH > other_fsiMeshH, std::vector< std::shared_ptr< ChBody >> &other_fsiBodies, std::vector< std::shared_ptr< fea::ChNodeFEAxyzD >> &other_fsiNodes, std::vector< std::shared_ptr< fea::ChElementCableANCF >> &other_fsiCables, std::vector< std::shared_ptr< fea::ChElementShellANCF_3423 >> &other_fsiShells, thrust::host_vector< int2 > &other_CableElementsNodesH, thrust::device_vector< int2 > &other_CableElementsNodes, thrust::host_vector< int4 > &other_ShellElementsNodesH, thrust::device_vector< int4 > &other_ShellElementsNodes, thrust::device_vector< Real3 > &other_rigid_FSI_ForcesD, thrust::device_vector< Real3 > &other_rigid_FSI_TorquesD, thrust::device_vector< Real3 > &other_Flex_FSI_ForcesD) | |
Constructor of the FSI interface class. | |
~ChFsiInterface () | |
Destructor of the FSI interface class. | |
void | Add_Rigid_ForceTorques_To_ChSystem () |
Read the surface-integrated pressure and viscous forces form the fluid/granular dynamics system, and add these forces and torques as external forces to the ChSystem rigid bodies. | |
void | Copy_External_To_ChSystem () |
Use an external configuration to set the generalized coordinates of the ChSystem. | |
void | Copy_ChSystem_to_External () |
Use the generalized coordinates of the ChSystem to set the configuration state in the FSI system. | |
void | Copy_fsiBodies_ChSystem_to_FluidSystem (std::shared_ptr< FsiBodiesDataD > fsiBodiesD) |
Copy the ChSystem rigid bodies from CPU to GPU. | |
void | ResizeChronoBodiesData () |
Resize the number of ChSystem rigid bodies. | |
void | SetFsiMesh (std::shared_ptr< fea::ChMesh > other_fsi_mesh) |
Set the FSI mesh for flexible elements. | |
void | Add_Flex_Forces_To_ChSystem () |
Add forces and torques as external forces to the ChSystem flexible bodies. | |
void | ResizeChronoNodesData () |
Resize number of nodes used in the flexible elements. | |
void | ResizeChronoCablesData (std::vector< std::vector< int >> CableElementsNodesSTDVector, thrust::host_vector< int2 > &CableElementsNodesH) |
Resize number of cable elements used in the flexible elements. | |
void | ResizeChronoShellsData (std::vector< std::vector< int >> ShellElementsNodesSTDVector, thrust::host_vector< int4 > &ShellElementsNodesH) |
Resize number of shell elements used in the flexible elements. | |
void | ResizeChronoFEANodesData () |
Resize number of nodes used in the flexible elements. | |
void | Copy_fsiNodes_ChSystem_to_FluidSystem (std::shared_ptr< FsiMeshDataD > FsiMeshD) |
Copy the nodes information in ChSystem from CPU to GPU. | |
Public Member Functions inherited from chrono::fsi::ChFsiGeneral | |
ChFsiGeneral (std::shared_ptr< SimParams > hostParams, std::shared_ptr< NumberOfObjects > hostNumObjects) | |
Constructor for the ChFsiGeneral class. More... | |
virtual | ~ChFsiGeneral () |
Destructor of the ChFsiGeneral class. | |
void | computeGridSize (uint n, uint blockSize, uint &numBlocks, uint &numThreads) |
Compute number of blocks and threads for calculation on GPU. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from chrono::fsi::ChFsiGeneral | |
uint | iDivUp (uint a, uint b) |
Return a/b or a/b + 1. | |
The documentation for this class was generated from the following files:
- /builds/uwsbel/chrono/src/chrono_fsi/ChFsiInterface.h
- /builds/uwsbel/chrono/src/chrono_fsi/ChFsiInterface.cpp