Description

Physics objects for the Chrono::FSI module. Including the fluid dynamics system, force system, interface with Chrono core module, simulation parameters, and data structures.

Collaboration diagram for Physics objects:

Namespaces

 chrono::fsi::BoxSide
 Enumeration for box sides.
 
 chrono::fsi::CylSide
 Enumeration for cylinder sides.
 

Classes

class  chrono::fsi::ChFluidSystem
 Base class for an FSI-aware fluid solver. More...
 
struct  chrono::fsi::FsiBodyState
 Definition of a body state. More...
 
struct  chrono::fsi::FsiBodyForce
 Definition of a body wrench (force + torque). More...
 
struct  chrono::fsi::FsiMeshState
 Definition of node states for a mesh. More...
 
struct  chrono::fsi::FsiMeshForce
 Definition of a node forces for a mesh. More...
 
struct  chrono::fsi::FsiBody
 Description of a rigid body exposed to the FSI system. More...
 
struct  chrono::fsi::FsiMesh1D
 Description of an FEA mesh with 1-D segments exposed to the FSI system. More...
 
struct  chrono::fsi::FsiMesh2D
 Description of an FEA mesh with 2-D faces exposed to the FSI system. More...
 
class  chrono::fsi::ChFsiInterface
 Base class for processing the interface between Chrono and FSI modules. More...
 
class  chrono::fsi::ChFsiInterfaceGeneric
 Generic interface between a Chrono multibody system and a fluid system. More...
 
class  chrono::fsi::ChFsiSystem
 Base class for a system for fluid-solid interaction problems. More...
 
class  chrono::fsi::ChFluidSystemSPH
 Physical system for and SPH FSI-aware fluid solver. More...
 
class  chrono::fsi::ChFsiInterfaceSPH
 Custom FSI interface between a Chrono multibody system and the SPH-based fluid system. More...
 
class  chrono::fsi::ChFsiProblemSPH
 Base class to set up a Chrono::FSI problem. More...
 
class  chrono::fsi::ChFsiProblemCartesian
 Class to set up a Chrono::FSI problem using particles and markers on a Cartesian coordinates grid. More...
 
class  chrono::fsi::ChFsiProblemCylindrical
 Class to set up a Chrono::FSI problem using particles and markers on a cylindrical coordinates grid. More...
 
class  chrono::fsi::DepthPressurePropertiesCallback
 Predefined SPH particle initial properties callback (depth-based pressure). More...
 
class  chrono::fsi::WaveTankRampBeach
 Predefined wave tank profile with a ramp beach. More...
 
class  chrono::fsi::WaveTankParabolicBeach
 Predefined wave tank profile with a parabolic beach. More...
 
class  chrono::fsi::ChFsiSystemSPH
 FSI system using an SPH-based fluid solver. More...
 
class  chrono::fsi::sph::BceManager
 Manager for processing boundary condition enforcing (BCE) particle forces in an FSI system. More...
 
class  chrono::fsi::sph::ChFluidDynamics
 Class to represent the fluid/granular dynamics system. More...
 
class  chrono::fsi::sph::ChFsiForce
 Base class to calculate force between SPH particles. More...
 
class  chrono::fsi::sph::ChFsiForceExplicitSPH
 Inter-particle force calculation for explicit schemes. More...
 
class  chrono::fsi::sph::ChFsiForceI2SPH
 Inter-particle force calculation for the I2SPH method. More...
 
struct  chrono::fsi::sph::SimParams
 Structure with FSI simulation parameters. More...
 
struct  chrono::fsi::sph::SphMarkerDataD
 Struct to store the information of SPH particles on the device. More...
 
struct  chrono::fsi::sph::SphMarkerDataH
 Struct to store the information of SPH particles on the host. More...
 
struct  chrono::fsi::sph::FsiBodyStateH
 Rigid body states on host. More...
 
struct  chrono::fsi::sph::FsiBodyStateD
 Rigid body states on device. More...
 
struct  chrono::fsi::sph::FsiMeshStateH
 FEA mesh states on host. More...
 
struct  chrono::fsi::sph::FsiMeshStateD
 FEA mesh state on device. More...
 
struct  chrono::fsi::sph::ProximityDataD
 Struct to store neighbor search information on the device. More...
 
struct  chrono::fsi::sph::CudaDeviceInfo
 Struct to store CUDA device information. More...
 
struct  chrono::fsi::sph::Counters
 Number of rigid and flexible solid bodies, fluid SPH particles, solid SPH particles, boundary SPH particles. More...
 
class  chrono::fsi::sph::FsiDataManager
 Data manager for the SPH-based FSI system. More...
 

Typedefs

typedef thrust::device_vector< Real3 >::iterator chrono::fsi::sph::r3IterD
 typedef device iterators for shorthand SPH operation of thrust vectors of Real3
 
typedef thrust::device_vector< Real4 >::iterator chrono::fsi::sph::r4IterD
 typedef device iterators for shorthand SPH operation of thrust vectors of Real4
 
typedef thrust::tuple< r4IterD, r3IterD, r4IterD, r3IterD, r3IterDchrono::fsi::sph::iterTupleSphD
 typedef device tuple for holding SPH data pos,vel,[rho,pressure,mu,type]
 
typedef thrust::zip_iterator< iterTupleSphDchrono::fsi::sph::zipIterSphD
 
typedef thrust::host_vector< Real3 >::iterator chrono::fsi::sph::r3IterH
 typedef host iterators for shorthand SPH operation of thrust vectors of Real3
 
typedef thrust::host_vector< Real4 >::iterator chrono::fsi::sph::r4IterH
 typedef host iterators for shorthand SPH operation of thrust vectors of Real4
 
typedef thrust::tuple< r4IterH, r3IterH, r4IterH, r3IterH, r3IterHchrono::fsi::sph::iterTupleH
 typedef host tuple for holding SPH data pos,vel,[rho,pressure,mu,type]
 
typedef thrust::zip_iterator< iterTupleHchrono::fsi::sph::zipIterSphH
 
typedef thrust::tuple< r3IterD, r3IterD, r3IterD, r4IterD, r3IterD, r3IterDchrono::fsi::sph::iterTupleRigidD
 typedef device iterators for shorthand rigid body states: pos,lin_vel,lin_acc,rot,ang_Vel,ang_acc
 
typedef thrust::zip_iterator< iterTupleRigidDchrono::fsi::sph::zipIterRigidD
 
typedef thrust::tuple< r3IterH, r3IterH, r3IterH, r4IterH, r3IterH, r3IterHchrono::fsi::sph::iterTupleRigidH
 typedef host iterators for shorthand rigid body states: pos,lin_vel,lin_acc,rot,ang_Vel,ang_acc
 
typedef thrust::zip_iterator< iterTupleRigidHchrono::fsi::sph::zipIterRigidH
 
typedef thrust::tuple< r3IterH, r3IterH, r3IterH, r4IterH, r3IterH, r3IterHchrono::fsi::sph::iterTupleChronoBodiesH
 typedef device iterators for shorthand chrono bodies operations
 
typedef thrust::zip_iterator< iterTupleChronoBodiesHchrono::fsi::sph::zipIterChronoBodiesH
 

Enumerations

enum  chrono::fsi::PhysicsProblem { chrono::fsi::PhysicsProblem::CFD, chrono::fsi::PhysicsProblem::CRM }
 Physics problem type. More...
 
enum  chrono::fsi::SPHMethod { chrono::fsi::SPHMethod::WCSPH, chrono::fsi::SPHMethod::I2SPH }
 SPH method. More...
 
enum  chrono::fsi::EosType { TAIT, ISOTHERMAL }
 Equation of State type. More...
 
enum  chrono::fsi::KernelType { QUADRATIC, CUBIC_SPLINE, QUINTIC_SPLINE, WENDLAND }
 SPH kernel type.
 
enum  chrono::fsi::ViscosityType { LAMINAR, ARTIFICIAL_UNILATERAL, ARTIFICIAL_BILATERAL }
 Visosity method type.
 
enum  chrono::fsi::BoundaryType { ADAMI, HOLMES }
 Boundary type.
 
enum  chrono::fsi::Rheology { INERTIA_RHEOLOGY, NONLOCAL_FLUIDITY }
 Rheology type.
 
enum  chrono::fsi::FrictionLaw { CONSTANT, LINEAR, NONLINEAR }
 Friction law in ISPH.
 
enum  chrono::fsi::SolverType {
  JACOBI, BICGSTAB, GMRES, CR,
  CG, SAP
}
 Linear solver type.
 
enum  chrono::fsi::BcePatternMesh1D { FULL, STAR }
 BCE pattern in cross section of 1-D flexible elements. More...
 
enum  chrono::fsi::BcePatternMesh2D { CENTERED, OUTWARD, INWARD }
 BCE pattern along normal of 2-D surface of flexible elements. More...
 
enum  chrono::fsi::OutputLevel { chrono::fsi::OutputLevel::STATE, chrono::fsi::OutputLevel::STATE_PRESSURE, chrono::fsi::OutputLevel::CFD_FULL, chrono::fsi::OutputLevel::CRM_FULL }
 Output level. More...
 
enum  chrono::fsi::OutputMode { chrono::fsi::OutputMode::CSV, chrono::fsi::OutputMode::CHPF }
 Output mode. More...
 

Enumeration Type Documentation

◆ BcePatternMesh1D

BCE pattern in cross section of 1-D flexible elements.

The available patterns are illustrated below (assuming 3 BCE layers):

FULL:
     X--X--X
     X--X--X
     X--X--X
STAR:
     ---X---
     X--X--X
     ---X---

◆ BcePatternMesh2D

BCE pattern along normal of 2-D surface of flexible elements.

The choices are illustrated below (assuming 3 BCE layers):

OUTWARD:
   ^ n
   |    ...--X--X--X--...
   |    ...--X--X--X--...
---|---------X--X--X-------- surface
CENTERED:
   ^ n
   |    ...--X--X--X--...
---|---------X--X--X-------- surface
   |    ...--X--X--X--...
INWARD:
   ^ n
---|---------X--X--X-------- surface
   |    ...--X--X--X--...
   |    ...--X--X--X--...

◆ EosType

◆ OutputLevel

Output level.

Enumerator
STATE 

marker state, velocity, and acceleration

STATE_PRESSURE 

STATE plus density and pressure.

CFD_FULL 

STATE_PRESSURE plus various CFD parameters.

CRM_FULL 

STATE_PRESSURE plus normal and shear stress.

◆ OutputMode

Output mode.

Enumerator
CSV 

comma-separated value

CHPF 

binary

◆ PhysicsProblem

Physics problem type.

Enumerator
CFD 

incompressible fluid problem

CRM 

continuous granular problem

◆ SPHMethod

SPH method.

Enumerator
WCSPH 

Weakly Compressible SPH (explicit)

I2SPH 

Implicit SPH.