Base class for an FSI-aware fluid solver.
|
|
void | SetVerbose (bool verbose) |
| | Enable/disable verbose terminal output (default: true).
|
| |
|
virtual void | SetGravitationalAcceleration (const ChVector3d &gravity)=0 |
| | Set gravity for the fluid system.
|
| |
|
void | SetStepSize (double step) |
| | Set integration step size.
|
| |
|
virtual void | Initialize () |
| | Initialize the fluid system with no FSI support.
|
| |
|
void | DoStepDynamics (double step) |
| | Function to integrate the FSI fluid system in time.
|
| |
|
double | GetSimTime () const |
| | Get current simulation time.
|
| |
|
double | GetStepSize () const |
| | Get the default constant integration step size.
|
| |
|
double | GetRtf () const |
| | Get current estimated RTF (real time factor).
|
| |
|
double | GetTimerStep () const |
| | Return the time in seconds for fluid dynamics over the last step.
|
| |
|
virtual void | OnDoStepDynamics (double time, double step)=0 |
| | Function to integrate the FSI fluid system from time to time + step.
|
| |
|
virtual void | OnExchangeSolidForces ()=0 |
| | Additional actions taken before applying fluid forces to the solid phase.
|
| |
|
virtual void | OnExchangeSolidStates ()=0 |
| | Additional actions taken after loading new solid phase states.
|
| |
| virtual void | LoadSolidStates (const std::vector< FsiBodyState > &body_states)=0 |
| | Load FSI body and mesh node states from the given vectors. More...
|
| |
| virtual void | StoreSolidForces (std::vector< FsiBodyForce > body_forces)=0 |
| | Store the body and mesh node forces to the given vectors. More...
|
| |
| virtual double | GetCurrentStepSize () |
| | Get the current step size. More...
|
| |
| virtual void chrono::fsi::ChFsiFluidSystem::LoadSolidStates |
( |
const std::vector< FsiBodyState > & |
body_states | ) |
|
|
pure virtual |
Load FSI body and mesh node states from the given vectors.
The functions LoadSolidStates and StoreSolidForces allow using a generic FSI interface. However, a concrete fluid system can be paired with a corresponding FSI interface, both of which work on the same data structures; in that case, the custom FSI interface need not use the mechanism provided by LoadSolidStates and StoreSolidForces (which incur the cost of additional data copies).
| virtual void chrono::fsi::ChFsiFluidSystem::StoreSolidForces |
( |
std::vector< FsiBodyForce > |
body_forces | ) |
|
|
pure virtual |
Store the body and mesh node forces to the given vectors.
The functions LoadSolidStates and StoreSolidForces allow using a generic FSI interface. However, a concrete fluid system can be paired with a corresponding FSI interface, both of which work on the same data structures; in that case, the custom FSI interface need not use the mechanism provided by LoadSolidStates and StoreSolidForces (which incur the cost of additional data copies).