Physical system for fluid-solid interaction problem.
This class is used to represent a fluid-solid interaction problem consist of fluid dynamics and multibody system. Each of the two underlying physics are independent objects owned and instantiated by this class. Additionally, the fsi system owns other objects to handle the interface between the two systems, boundary condition enforcing markers, and data.
|ChSystemFsi (ChSystem *other_physicalSystem, bool other_haveFluid)|
|constructor for fsi system More...|
|destructor for the fsi system |
|virtual void||DoStepDynamics_FSI ()|
|function to integrate the fsi system in time. More...|
|virtual void||DoStepDynamics_ChronoRK2 ()|
|function to integrate the multibody system dynamics based on Runge-Kutta 2nd order integration scheme |
|virtual void||CopyDeviceDataToHalfStep ()|
|function to initialize the midpoint device data of the fluid system by copying from the full step |
|virtual void||FinalizeData ()|
|Function to fill out the dependent data based on the independent one. More...|
|ChFsiDataManager *||GetDataManager ()|
|function to return the pointer to the data manager |
|SimParams *||GetSimParams ()|
|function to return the pointer to the data |
< ChBody > > *
|function to return the pointer to the fsi bodies. More...|
|void||InitializeChronoGraphics (chrono::ChVector<> CameraLocation=chrono::ChVector<>(1, 0, 0), chrono::ChVector<> CameraLookAt=chrono::ChVector<>(0, 0, 0))|
|Initialize the graphics interface of the chrono system. |
|virtual void||Finalize ()|
|Finzalize data by calling FinalizeData function and finalize fluid and bce objects if the system have fluid. More...|
Constructor & Destructor Documentation
constructor for fsi system
This class constructor instantiates all the member objects. Wherever relevant, the instantiation is handled by sending a pointer to other objects or data. Therefore, the sub-classes have pointers to the same data
Member Function Documentation
function to integrate the fsi system in time.
It uses a Runge-Kutta 2nd order algorithm to update both the fluid and multibody system dynamics. The midpoint data of MBS is needed for fluid dynamics update.
Finzalize data by calling FinalizeData function and finalize fluid and bce objects if the system have fluid.
Function to fill out the dependent data based on the independent one.
For instance it copies the position of the rigid bodies from the multibody dynamics system to arrays in fsi system since they are needed for internal use.
|std::vector<std::shared_ptr<ChBody> >* chrono::fsi::ChSystemFsi::GetFsiBodiesPtr||(||)|
function to return the pointer to the fsi bodies.
The pointer to all fsi bodies, i.e. the bodies with two representation in fluid and multibody systems, are stored in a vector.