chrono::fsi::ChFsiForceIISPH Class Reference

Description

Child class of ChForceParallel that implements the I2SPH method.

Inheritance diagram for chrono::fsi::ChFsiForceIISPH:
Collaboration diagram for chrono::fsi::ChFsiForceIISPH:

Public Member Functions

 ChFsiForceIISPH (ChBce *otherBceWorker, SphMarkerDataD *otherSortedSphMarkersD, ProximityDataD *otherMarkersProximityD, FsiGeneralData *otherFsiGeneralData, SimParams *otherParamsH, NumberOfObjects *otherNumObjects)
 
void Finalize () override
 Synchronize the copy of the data (parameters and number of objects) between device (GPU) and host (CPU). More...
 
- Public Member Functions inherited from chrono::fsi::ChFsiForce
 ChFsiForce (ChBce *otherBceWorker, SphMarkerDataD *otherSortedSphMarkersD, ProximityDataD *otherMarkersProximityD, FsiGeneralData *otherFsiGeneralData, SimParams *otherParamsH, NumberOfObjects *otherNumObjects)
 Base constructor for FSI force class. More...
 
virtual ~ChFsiForce ()
 Destructor. Deletes the collision system.
 
void SetLinearSolver (ChFsiLinearSolver::SolverType other_solverType)
 Set the linear solver used in the simulation.
 

Additional Inherited Members

- Static Public Member Functions inherited from chrono::fsi::ChFsiForce
static void CopySortedToOriginal_Invasive_R3 (thrust::device_vector< Real3 > &original, thrust::device_vector< Real3 > &sorted, const thrust::device_vector< uint > &gridMarkerIndex)
 Copy sorted data into original data. More...
 
static void CopySortedToOriginal_NonInvasive_R3 (thrust::device_vector< Real3 > &original, const thrust::device_vector< Real3 > &sorted, const thrust::device_vector< uint > &gridMarkerIndex)
 Copy sorted data into original data. More...
 
static void CopySortedToOriginal_Invasive_R4 (thrust::device_vector< Real4 > &original, thrust::device_vector< Real4 > &sorted, const thrust::device_vector< uint > &gridMarkerIndex)
 Copy sorted data into original data. More...
 
static void CopySortedToOriginal_NonInvasive_R4 (thrust::device_vector< Real4 > &original, thrust::device_vector< Real4 > &sorted, const thrust::device_vector< uint > &gridMarkerIndex)
 Copy sorted data into original data. More...
 
- Public Attributes inherited from chrono::fsi::ChFsiForce
ChFsiLinearSolvermyLinearSolver
 A pointer to the linear solver class used for ChFsiForce.
 
ChBcebceWorker
 pointer to Boundary Condition Enforcing markers class.
 
ChCollisionSystemFsifsiCollisionSystem
 collision system; takes care of constructing neighbors list
 
SphMarkerDataDsphMarkersD
 device copy of the sph markers data
 
SphMarkerDataDsortedSphMarkersD
 device copy of the sorted sph markers data
 
ProximityDataDmarkersProximityD
 pointer object that holds the proximity of the markers
 
FsiGeneralDatafsiGeneralData
 pointer to sph general data
 
SimParamsparamsH
 pointer to simulation parameters
 
NumberOfObjectsnumObjectsH
 pointer to number of objects, fluid and boundary markers
 
thrust::device_vector< Real3 > vel_vis_Sorted_D
 sorted visualization velocity data
 
thrust::device_vector< Real3 > vel_XSPH_Sorted_D
 sorted xsph velocity data
 
thrust::device_vector< Real4 > derivVelRhoD_Sorted_D
 sorted derivVelRhoD
 

Constructor & Destructor Documentation

chrono::fsi::ChFsiForceIISPH::ChFsiForceIISPH ( ChBce otherBceWorker,
SphMarkerDataD otherSortedSphMarkersD,
ProximityDataD otherMarkersProximityD,
FsiGeneralData otherFsiGeneralData,
SimParams otherParamsH,
NumberOfObjects otherNumObjects 
)
Parameters
otherBceWorkerPointer to the ChBce object that handles BCE markers
otherSortedSphMarkersDInformation of markers in the sorted array on device
otherMarkersProximityDPointer to the object that holds the proximity of the markers on device
otherFsiGeneralDataPointer to the sph general data
otherParamsHPointer to the simulation parameters on host
otherNumObjectsPointer to number of objects, fluid and boundary markers, etc.

Member Function Documentation

void chrono::fsi::ChFsiForceIISPH::Finalize ( )
overridevirtual

Synchronize the copy of the data (parameters and number of objects) between device (GPU) and host (CPU).

This function needs to be called once the host data are modified.

Reimplemented from chrono::fsi::ChFsiForce.