chrono::fsi::ChFsiForceI2SPH Class Reference
Description
Derived class of ChFsiForce that implements the I2SPH method.
Inheritance diagram for chrono::fsi::ChFsiForceI2SPH:
Collaboration diagram for chrono::fsi::ChFsiForceI2SPH:
Public Member Functions | |
ChFsiForceI2SPH (std::shared_ptr< ChBce > otherBceWorker, std::shared_ptr< SphMarkerDataD > otherSortedSphMarkersD, std::shared_ptr< ProximityDataD > otherMarkersProximityD, std::shared_ptr< FsiGeneralData > otherFsiGeneralData, std::shared_ptr< SimParams > otherParamsH, std::shared_ptr< NumberOfObjects > otherNumObjects) | |
Force class implemented using incompressible SPH method with implicit integrator. More... | |
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 (std::shared_ptr< ChBce > otherBceWorker, std::shared_ptr< SphMarkerDataD > otherSortedSphMarkersD, std::shared_ptr< ProximityDataD > otherMarkersProximityD, std::shared_ptr< FsiGeneralData > otherFsiGeneralData, std::shared_ptr< SimParams > otherParamsH, std::shared_ptr< NumberOfObjects > otherNumObjects) | |
Base constructor for the ChFsiForce class. More... | |
virtual | ~ChFsiForce () |
Destructor of the ChFsiForce. | |
void | SetLinearSolver (ChFsiLinearSolver::SolverType other_solverType) |
Function to set the linear solver type for the solver implemented using the ISPH method (ChFsiForceI2SPH and ChFsiForceIISPH) | |
Public Member Functions inherited from chrono::fsi::ChFsiGeneral | |
ChFsiGeneral (std::shared_ptr< SimParams > hostParams, std::shared_ptr< NumberOfObjects > hostNumObjects) | |
Constructor for the ChFsiGeneral class. More... | |
virtual | ~ChFsiGeneral () |
Destructor of the ChFsiGeneral class. | |
void | computeGridSize (uint n, uint blockSize, uint &numBlocks, uint &numThreads) |
Compute number of blocks and threads for calculation on GPU. More... | |
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 (real3). 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 (real3). 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 (real4). 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 (real4). More... | |
Public Attributes inherited from chrono::fsi::ChFsiForce | |
std::shared_ptr< ChFsiLinearSolver > | myLinearSolver |
pointer to the linear solver type. | |
std::shared_ptr< ChBce > | bceWorker |
pointer to Boundary Condition Enforcing particles class. | |
std::shared_ptr< ChCollisionSystemFsi > | fsiCollisionSystem |
collision system; takes care of constructing neighbors list | |
std::shared_ptr< SphMarkerDataD > | sphMarkersD |
device copy of the SPH particles data | |
std::shared_ptr< SphMarkerDataD > | sortedSphMarkersD |
device copy of the sorted sph particles data | |
std::shared_ptr< ProximityDataD > | markersProximityD |
pointer object that holds the proximity of the particles | |
std::shared_ptr< FsiGeneralData > | fsiGeneralData |
pointer to sph general data | |
std::shared_ptr< SimParams > | paramsH |
pointer to simulation parameters | |
std::shared_ptr< NumberOfObjects > | numObjectsH |
pointer to number of objects, fluid and boundary particles | |
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 | |
Protected Member Functions inherited from chrono::fsi::ChFsiGeneral | |
uint | iDivUp (uint a, uint b) |
Return a/b or a/b + 1. | |
Constructor & Destructor Documentation
◆ ChFsiForceI2SPH()
chrono::fsi::ChFsiForceI2SPH::ChFsiForceI2SPH | ( | std::shared_ptr< ChBce > | otherBceWorker, |
std::shared_ptr< SphMarkerDataD > | otherSortedSphMarkersD, | ||
std::shared_ptr< ProximityDataD > | otherMarkersProximityD, | ||
std::shared_ptr< FsiGeneralData > | otherFsiGeneralData, | ||
std::shared_ptr< SimParams > | otherParamsH, | ||
std::shared_ptr< NumberOfObjects > | otherNumObjects | ||
) |
Force class implemented using incompressible SPH method with implicit integrator.
- Parameters
-
otherBceWorker Pointer to the ChBce object that handles BCE particles otherSortedSphMarkersD Information of SPH particles in the sorted array on device otherMarkersProximityD Pointer to the object that holds the proximity of particles on device otherFsiGeneralData Pointer to the SPH general data otherParamsH Pointer to the simulation parameters on host otherNumObjects Pointer to number of objects, fluid and boundary particles, etc.
Member Function Documentation
◆ 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.
The documentation for this class was generated from the following file:
- /builds/uwsbel/chrono/src/chrono_fsi/physics/ChFsiForceI2SPH.cuh