Description
FSI system using a TDPF-based fluid solver.
#include <ChFsiSystemTDPF.h>


Public Member Functions | |
| ChFsiSystemTDPF (ChSystem *sysMBS, ChFsiFluidSystemTDPF *sysTDPF, bool use_generic_interface=false) | |
| Construct an FSI system to couple the specified Chrono MBS system and TDPF fluid system. | |
| ChFsiFluidSystemTDPF & | GetFluidSystemTDPF () const |
| Access the associated TDPF fluid system. | |
| void | SetHydroFilename (const std::string &filename) |
| Set input file name with hydro data (HDF5 format). | |
| void | SetHydroReferencePoints (const std::vector< ChVector3d > &points) |
| Set the points about which the hydro data coefficients are given (default: body reference frame origins). More... | |
| void | SetBodyAddedMassBlocks (const std::vector< ChMatrixDynamic<>> &blocks) |
| Modify the added mass blocks. More... | |
| virtual void | Initialize () override |
| Initialize the FSI system. More... | |
Public Member Functions inherited from chrono::fsi::ChFsiSystem | |
| virtual | ~ChFsiSystem () |
| Destructor for the FSI system. | |
| void | AttachFluidSystem (ChFsiFluidSystem *sys) |
| Attach a fluid system. | |
| void | AttachMultibodySystem (ChSystem *sys) |
| Attach a MBS system. | |
| ChFsiFluidSystem & | GetFluidSystem () const |
| Access the associated fluid system. | |
| ChSystem & | GetMultibodySystem () const |
| Access the associated multibody system. | |
| ChFsiInterface & | GetFsiInterface () const |
| Access the associated FSI interface. | |
| void | SetVerbose (bool verbose) |
| Enable/disable verbose terminal output (default: true). More... | |
| void | SetGravitationalAcceleration (const ChVector3d &gravity) |
| Set gravitational acceleration for the FSI system. More... | |
| void | SetStepSizeCFD (double step) |
| Set integration step size for fluid dynamics. | |
| void | SetStepsizeMBD (double step) |
| Set integration step size for multibody dynamics. More... | |
| CouplingScheme | GetCouplingScheme () const |
| Get the co-simulation coupling scheme in effect. | |
| std::shared_ptr< FsiBody > | AddRigidBody (std::shared_ptr< ChBody > body, std::shared_ptr< ChBodyGeometry > geometry, bool check_embedded) |
| Add a rigid body to the FSI system. | |
| void | RegisterMBDCallback (std::shared_ptr< MBDCallback > callback) |
| Set a custom function for advancing the dynamics of the associated multibody system. More... | |
| void | DoStepDynamics (double step) |
| Function to advance the FSI system combined state. More... | |
| double | GetSimTime () const |
| Get current simulation time. | |
| double | GetStepSizeMBD () const |
| Get the integration step size for multibody dynamics. | |
| double | GetStepSizeCFD () const |
| Get the integration step size for fluid dynamics. | |
| double | GetRtf () const |
| Get current estimated RTF (real time factor) for the coupled problem. | |
| void | SetRtf (double rtf) |
| Set RTF value for the coupled problem. More... | |
| double | GetRtfCFD () const |
| Get current estimated RTF (real time factor) for the fluid system. | |
| double | GetRtfMBD () const |
| Get current estimated RTF (real time factor) for the multibody system. | |
| double | GetRatioMBD () const |
| Get ratio of simulation time spent in MBS integration. | |
| double | GetTimerStep () const |
| Return the time in seconds for for simulating the last step. | |
| double | GetTimerCFD () const |
| Return the time in seconds for fluid dynamics over the last step. | |
| double | GetTimerMBD () const |
| Return the time in seconds for multibody dynamics over the last step. | |
| double | GetTimerFSI () const |
| Return the time in seconds for data exchange between phases over the last step. | |
| const std::vector< std::shared_ptr< FsiBody > > & | GetBodies () const |
| Get a list of the FSI rigid bodies. | |
| const ChVector3d & | GetFsiBodyForce (size_t i) const |
| Return the FSI applied force on the body with specified index (as returned by AddRigidBody). More... | |
| const ChVector3d & | GetFsiBodyTorque (size_t i) const |
| Return the FSI applied torque on the body with specified index (as returned by AddRigidBody). More... | |
Additional Inherited Members | |
Public Types inherited from chrono::fsi::ChFsiSystem | |
| enum | CouplingScheme { CONCURRENT, SEQUENTIAL } |
| Co-simulation coupling scheme used by DoStepDynamics. More... | |
Protected Member Functions inherited from chrono::fsi::ChFsiSystem | |
| ChFsiSystem (ChSystem *sysMBS, ChFsiFluidSystem *sysCFD) | |
| Construct an FSI system coupling the provided multibody and fluid systems. More... | |
| void | SetCouplingScheme (CouplingScheme scheme) |
| Select the co-simulation coupling scheme. More... | |
Protected Attributes inherited from chrono::fsi::ChFsiSystem | |
| ChSystem * | m_sysMBS |
| multibody system | |
| ChFsiFluidSystem * | m_sysCFD |
| FSI fluid solver. | |
| std::shared_ptr< ChFsiInterface > | m_fsi_interface |
| FSI interface system. | |
| bool | m_verbose |
| enable/disable m_verbose terminal output | |
| bool | m_is_initialized |
| set to true once the Initialize function is called | |
Member Function Documentation
◆ Initialize()
|
overridevirtual |
Initialize the FSI system.
A call to this function marks the completion of system construction.
Reimplemented from chrono::fsi::ChFsiSystem.
◆ SetBodyAddedMassBlocks()
| void chrono::fsi::tdpf::ChFsiSystemTDPF::SetBodyAddedMassBlocks | ( | const std::vector< ChMatrixDynamic<>> & | blocks | ) |
Modify the added mass blocks.
This function can only be called after Initialize().
◆ SetHydroReferencePoints()
| void chrono::fsi::tdpf::ChFsiSystemTDPF::SetHydroReferencePoints | ( | const std::vector< ChVector3d > & | points | ) |
Set the points about which the hydro data coefficients are given (default: body reference frame origins).
One point must be provided for each body in the hydro data file, in the order of the bodies in that file (the order in which the FSI bodies are added), expressed in the body reference frame. Hydro data files do not record the point about which their coefficients were computed, so these points must be provided if they are not the origins of the body reference frames. The infinite-frequency added mass is shifted from these points to the body reference frame origins at initialization (see ChLoadHydrodynamics). This function must be called before Initialize().
The documentation for this class was generated from the following files:
- /builds/uwsbel/chrono/src/chrono_fsi/tdpf/ChFsiSystemTDPF.h
- /builds/uwsbel/chrono/src/chrono_fsi/tdpf/ChFsiSystemTDPF.cpp
Public Member Functions inherited from