chrono::fsi Namespace Reference

Description

Namespace with classes for the FSI module.

Classes

class  ChBce
 Base class for processing boundary condition enforcing (BCE) marker forces in an FSI system. More...
 
class  ChCollisionSystemFsi
 Base class for processing proximity computation in an FSI system. More...
 
class  ChDeviceUtils
 This utility class encapsulates a operators on device vectors which might be needed in host files. More...
 
class  ChFluidDynamics
 Class to represent the fluid dynamics system. More...
 
class  ChFsiDataManager
 Data manager class that holds all the information of the SPH markers and MBD system. More...
 
class  ChFsiForceParallel
 Class to calculate force between SPH markers in Weakly Compressible SPH. More...
 
class  ChFsiInterface
 Base class for processing the interface between chrono and fsi modules. More...
 
class  ChFsiTypeConvert
 Class for converting Chrono data structure to/from FSI data structure. More...
 
class  ChSystemFsi
 Physical system for fluid-solid interaction problem. More...
 
class  FsiBodiesDataD
 Class for storing the information of rigid bodies of the simulation on the device. More...
 
class  FsiBodiesDataH
 Class for storing the information of rigid bodies of the simulation on the host. More...
 
class  FsiGeneralData
 Class to hold information of the fluid system that needs to be passed to Chrono. More...
 
class  GpuTimer
 A template time recorder for cuda events. More...
 
struct  NumberOfObjects
 Number of fluid markers, solid bodies, solid markers, boundary markers. More...
 
class  ProximityDataD
 Class for storing the neighbor search informations on the device. More...
 
struct  SimParams
 Simulation Parameters. More...
 
class  SphMarkerDataD
 Class for storing the information of SPH markers on the device. More...
 
class  SphMarkerDataH
 Class for storing the information of SPH markers on the host. More...
 

Typedefs

typedef unsigned int uint
 
typedef thrust::device_vector< Real3 >::iterator r3IterD
 typedef device iterators for shorthand sph operation of thrust vectors of Real3
 
typedef thrust::device_vector< Real4 >::iterator r4IterD
 typedef device iterators for shorthand sph operation of thrust vectors of Real4
 
typedef thrust::tuple< r3IterD, r3IterD, r4IterDiterTupleSphD
 typedef device tuple for holding sph data pos,vel,[rho,pressure,mu,type]
 
typedef thrust::zip_iterator< iterTupleSphDzipIterSphD
 
typedef thrust::host_vector< Real3 >::iterator r3IterH
 typedef host iterators for shorthand sph operation of thrust vectors of Real3
 
typedef thrust::host_vector< Real4 >::iterator r4IterH
 typedef host iterators for shorthand sph operation of thrust vectors of Real4
 
typedef thrust::tuple< r3IterH, r3IterH, r4IterHiterTupleH
 typedef host tuple for holding sph data pos,vel,[rho,pressure,mu,type]
 
typedef thrust::zip_iterator< iterTupleHzipIterSphH
 
typedef thrust::tuple< r3IterD, r4IterD, r3IterD, r4IterD, r3IterD, r3IterDiterTupleRigidD
 typedef device iterators for shorthand rigid body states: pos,orientation in position, velocity and acceleration level
 
typedef thrust::zip_iterator< iterTupleRigidDzipIterRigidD
 
typedef thrust::tuple< r3IterH, r4IterH, r3IterH, r4IterH, r3IterH, r3IterHiterTupleRigidH
 typedef host iterators for shorthand rigid body states: pos,orientation in position, velocity and acceleration level
 
typedef thrust::zip_iterator< iterTupleRigidHzipIterRigidH
 
typedef thrust::tuple< r3IterH, r3IterH, r3IterH, r4IterH, r3IterH, r3IterHiterTupleChronoBodiesH
 
typedef thrust::zip_iterator< iterTupleChronoBodiesH > zipIterChronoBodiesH
 
typedef float Real
 
typedef unsigned short ushort
 

Enumerations

enum  BceVersion { ADAMI = 0, mORIGINAL = 1 }
 

Functions

__device__ Real W3_Spline (Real d)
 
__device__ Real3 GradW_Spline (Real3 d)
 
__device__ Real Eos (Real rho, Real type)
 
__device__ Real InvEos (Real pw)
 
__device__ Real FerrariCi (Real rho)
 
__device__ Real3 Modify_Local_PosB (Real3 &b, Real3 a)
 
__device__ Real3 Distance (Real3 a, Real3 b)
 Distance. More...
 
__device__ void RotationMatirixFromQuaternion (Real3 &AD1, Real3 &AD2, Real3 &AD3, const Real4 &q)
 
__device__ Real3 InverseRotate_By_RotationMatrix_DeviceHost (const Real3 &A1, const Real3 &A2, const Real3 &A3, const Real3 &r3)
 
__device__ int3 calcGridPos (Real3 p)
 calcGridHash More...
 
__device__ uint calcGridHash (int3 gridPos)
 calcGridHash More...
 
__host__ __device__ float fminf (float a, float b)
 Return the minimum of two single precision numbers.
 
__host__ __device__ float fmaxf (float a, float b)
 Return the maximum of two single precision numbers.
 
__host__ __device__ int max (int a, int b)
 Return the maximum of two integer numbers.
 
__host__ __device__ int min (int a, int b)
 Return the minimum of two integer numbers.
 
__host__ __device__ float rsqrtf (float x)
 Return the reciprocal square root of a single precision number.
 
__VECTOR_FUNCTIONS_DECL__ uint2 make_uint2 (unsigned int x, unsigned int y)
 
__VECTOR_FUNCTIONS_DECL__ uint3 make_uint3 (unsigned int x, unsigned int y, unsigned int z)
 
__VECTOR_FUNCTIONS_DECL__ uint4 make_uint4 (unsigned int x, unsigned int y, unsigned int z, unsigned int w)
 
__VECTOR_FUNCTIONS_DECL__ int2 make_int2 (int x, int y)
 
__VECTOR_FUNCTIONS_DECL__ int3 make_int3 (int x, int y, int z)
 
__VECTOR_FUNCTIONS_DECL__ int4 make_int4 (int x, int y, int z, int w)
 
__VECTOR_FUNCTIONS_DECL__ float2 make_float2 (float x, float y)
 
__VECTOR_FUNCTIONS_DECL__ float3 make_float3 (float x, float y, float z)
 
__VECTOR_FUNCTIONS_DECL__ float4 make_float4 (float x, float y, float z, float w)
 
__VECTOR_FUNCTIONS_DECL__ double2 make_double2 (double x, double y)
 
__VECTOR_FUNCTIONS_DECL__ double3 make_double3 (double x, double y, double z)
 
__VECTOR_FUNCTIONS_DECL__ double4 make_double4 (double x, double y, double z, double w)
 
__host__ __device__ float2 make_float2 (float s)
 
__host__ __device__ float2 make_float2 (float3 a)
 
__host__ __device__ float2 make_float2 (int2 a)
 
__host__ __device__ float2 make_float2 (uint2 a)
 
__host__ __device__ int2 make_int2 (int s)
 
__host__ __device__ int2 make_int2 (int3 a)
 
__host__ __device__ int2 make_int2 (int4 a)
 
__host__ __device__ int2 make_int2 (uint2 a)
 
__host__ __device__ int2 make_int2 (float2 a)
 
__host__ __device__ uint2 make_uint2 (uint s)
 
__host__ __device__ uint2 make_uint2 (uint3 a)
 
__host__ __device__ uint2 make_uint2 (int2 a)
 
__host__ __device__ float3 make_float3 (float s)
 
__host__ __device__ float3 make_float3 (float2 a)
 
__host__ __device__ float3 make_float3 (float2 a, float s)
 
__host__ __device__ float3 make_float3 (float4 a)
 
__host__ __device__ float3 make_float3 (int3 a)
 
__host__ __device__ float3 make_float3 (uint3 a)
 
__host__ __device__ int3 make_int3 (int s)
 
__host__ __device__ int3 make_int3 (int2 a)
 
__host__ __device__ int3 make_int3 (int2 a, int s)
 
__host__ __device__ int3 make_int3 (uint3 a)
 
__host__ __device__ int3 make_int3 (float3 a)
 
__host__ __device__ uint3 make_uint3 (uint s)
 
__host__ __device__ uint3 make_uint3 (uint2 a)
 
__host__ __device__ uint3 make_uint3 (uint2 a, uint s)
 
__host__ __device__ uint3 make_uint3 (uint4 a)
 
__host__ __device__ uint3 make_uint3 (int3 a)
 
__host__ __device__ float4 make_float4 (float s)
 
__host__ __device__ float4 make_float4 (float3 a)
 
__host__ __device__ float4 make_float4 (float3 a, float w)
 
__host__ __device__ float4 make_float4 (int4 a)
 
__host__ __device__ float4 make_float4 (uint4 a)
 
__host__ __device__ int4 make_int4 (int s)
 
__host__ __device__ int4 make_int4 (int3 a)
 
__host__ __device__ int4 make_int4 (int3 a, int w)
 
__host__ __device__ int4 make_int4 (uint4 a)
 
__host__ __device__ int4 make_int4 (float4 a)
 
__host__ __device__ uint4 make_uint4 (uint s)
 
__host__ __device__ uint4 make_uint4 (uint3 a)
 
__host__ __device__ uint4 make_uint4 (uint3 a, uint w)
 
__host__ __device__ uint4 make_uint4 (int4 a)
 
__host__ __device__ float2 operator- (float2 &a)
 
__host__ __device__ int2 operator- (int2 &a)
 
__host__ __device__ float3 operator- (float3 &a)
 
__host__ __device__ int3 operator- (int3 &a)
 
__host__ __device__ float4 operator- (float4 &a)
 
__host__ __device__ int4 operator- (int4 &a)
 
__host__ __device__ float2 operator+ (float2 a, float2 b)
 
__host__ __device__ void operator+= (float2 &a, float2 b)
 
__host__ __device__ float2 operator+ (float2 a, float b)
 
__host__ __device__ float2 operator+ (float b, float2 a)
 
__host__ __device__ void operator+= (float2 &a, float b)
 
__host__ __device__ int2 operator+ (int2 a, int2 b)
 
__host__ __device__ void operator+= (int2 &a, int2 b)
 
__host__ __device__ int2 operator+ (int2 a, int b)
 
__host__ __device__ int2 operator+ (int b, int2 a)
 
__host__ __device__ void operator+= (int2 &a, int b)
 
__host__ __device__ uint2 operator+ (uint2 a, uint2 b)
 
__host__ __device__ void operator+= (uint2 &a, uint2 b)
 
__host__ __device__ uint2 operator+ (uint2 a, uint b)
 
__host__ __device__ uint2 operator+ (uint b, uint2 a)
 
__host__ __device__ void operator+= (uint2 &a, uint b)
 
__host__ __device__ float3 operator+ (float3 a, float3 b)
 
__host__ __device__ void operator+= (float3 &a, float3 b)
 
__host__ __device__ float3 operator+ (float3 a, float b)
 
__host__ __device__ void operator+= (float3 &a, float b)
 
__host__ __device__ int3 operator+ (int3 a, int3 b)
 
__host__ __device__ void operator+= (int3 &a, int3 b)
 
__host__ __device__ int3 operator+ (int3 a, int b)
 
__host__ __device__ void operator+= (int3 &a, int b)
 
__host__ __device__ uint3 operator+ (uint3 a, uint3 b)
 
__host__ __device__ void operator+= (uint3 &a, uint3 b)
 
__host__ __device__ uint3 operator+ (uint3 a, uint b)
 
__host__ __device__ void operator+= (uint3 &a, uint b)
 
__host__ __device__ int3 operator+ (int b, int3 a)
 
__host__ __device__ uint3 operator+ (uint b, uint3 a)
 
__host__ __device__ float3 operator+ (float b, float3 a)
 
__host__ __device__ float4 operator+ (float4 a, float4 b)
 
__host__ __device__ void operator+= (float4 &a, float4 b)
 
__host__ __device__ float4 operator+ (float4 a, float b)
 
__host__ __device__ float4 operator+ (float b, float4 a)
 
__host__ __device__ void operator+= (float4 &a, float b)
 
__host__ __device__ int4 operator+ (int4 a, int4 b)
 
__host__ __device__ void operator+= (int4 &a, int4 b)
 
__host__ __device__ int4 operator+ (int4 a, int b)
 
__host__ __device__ int4 operator+ (int b, int4 a)
 
__host__ __device__ void operator+= (int4 &a, int b)
 
__host__ __device__ uint4 operator+ (uint4 a, uint4 b)
 
__host__ __device__ void operator+= (uint4 &a, uint4 b)
 
__host__ __device__ uint4 operator+ (uint4 a, uint b)
 
__host__ __device__ uint4 operator+ (uint b, uint4 a)
 
__host__ __device__ void operator+= (uint4 &a, uint b)
 
__host__ __device__ float2 operator- (float2 a, float2 b)
 
__host__ __device__ void operator-= (float2 &a, float2 b)
 
__host__ __device__ float2 operator- (float2 a, float b)
 
__host__ __device__ float2 operator- (float b, float2 a)
 
__host__ __device__ void operator-= (float2 &a, float b)
 
__host__ __device__ int2 operator- (int2 a, int2 b)
 
__host__ __device__ void operator-= (int2 &a, int2 b)
 
__host__ __device__ int2 operator- (int2 a, int b)
 
__host__ __device__ int2 operator- (int b, int2 a)
 
__host__ __device__ void operator-= (int2 &a, int b)
 
__host__ __device__ uint2 operator- (uint2 a, uint2 b)
 
__host__ __device__ void operator-= (uint2 &a, uint2 b)
 
__host__ __device__ uint2 operator- (uint2 a, uint b)
 
__host__ __device__ uint2 operator- (uint b, uint2 a)
 
__host__ __device__ void operator-= (uint2 &a, uint b)
 
__host__ __device__ float3 operator- (float3 a, float3 b)
 
__host__ __device__ void operator-= (float3 &a, float3 b)
 
__host__ __device__ float3 operator- (float3 a, float b)
 
__host__ __device__ float3 operator- (float b, float3 a)
 
__host__ __device__ void operator-= (float3 &a, float b)
 
__host__ __device__ int3 operator- (int3 a, int3 b)
 
__host__ __device__ void operator-= (int3 &a, int3 b)
 
__host__ __device__ int3 operator- (int3 a, int b)
 
__host__ __device__ int3 operator- (int b, int3 a)
 
__host__ __device__ void operator-= (int3 &a, int b)
 
__host__ __device__ uint3 operator- (uint3 a, uint3 b)
 
__host__ __device__ void operator-= (uint3 &a, uint3 b)
 
__host__ __device__ uint3 operator- (uint3 a, uint b)
 
__host__ __device__ uint3 operator- (uint b, uint3 a)
 
__host__ __device__ void operator-= (uint3 &a, uint b)
 
__host__ __device__ float4 operator- (float4 a, float4 b)
 
__host__ __device__ void operator-= (float4 &a, float4 b)
 
__host__ __device__ float4 operator- (float4 a, float b)
 
__host__ __device__ void operator-= (float4 &a, float b)
 
__host__ __device__ int4 operator- (int4 a, int4 b)
 
__host__ __device__ void operator-= (int4 &a, int4 b)
 
__host__ __device__ int4 operator- (int4 a, int b)
 
__host__ __device__ int4 operator- (int b, int4 a)
 
__host__ __device__ void operator-= (int4 &a, int b)
 
__host__ __device__ uint4 operator- (uint4 a, uint4 b)
 
__host__ __device__ void operator-= (uint4 &a, uint4 b)
 
__host__ __device__ uint4 operator- (uint4 a, uint b)
 
__host__ __device__ uint4 operator- (uint b, uint4 a)
 
__host__ __device__ void operator-= (uint4 &a, uint b)
 
__host__ __device__ float2 operator* (float2 a, float2 b)
 
__host__ __device__ void operator*= (float2 &a, float2 b)
 
__host__ __device__ float2 operator* (float2 a, float b)
 
__host__ __device__ float2 operator* (float b, float2 a)
 
__host__ __device__ void operator*= (float2 &a, float b)
 
__host__ __device__ int2 operator* (int2 a, int2 b)
 
__host__ __device__ void operator*= (int2 &a, int2 b)
 
__host__ __device__ int2 operator* (int2 a, int b)
 
__host__ __device__ int2 operator* (int b, int2 a)
 
__host__ __device__ void operator*= (int2 &a, int b)
 
__host__ __device__ uint2 operator* (uint2 a, uint2 b)
 
__host__ __device__ void operator*= (uint2 &a, uint2 b)
 
__host__ __device__ uint2 operator* (uint2 a, uint b)
 
__host__ __device__ uint2 operator* (uint b, uint2 a)
 
__host__ __device__ void operator*= (uint2 &a, uint b)
 
__host__ __device__ float3 operator* (float3 a, float3 b)
 
__host__ __device__ void operator*= (float3 &a, float3 b)
 
__host__ __device__ float3 operator* (float3 a, float b)
 
__host__ __device__ float3 operator* (float b, float3 a)
 
__host__ __device__ void operator*= (float3 &a, float b)
 
__host__ __device__ int3 operator* (int3 a, int3 b)
 
__host__ __device__ void operator*= (int3 &a, int3 b)
 
__host__ __device__ int3 operator* (int3 a, int b)
 
__host__ __device__ int3 operator* (int b, int3 a)
 
__host__ __device__ void operator*= (int3 &a, int b)
 
__host__ __device__ uint3 operator* (uint3 a, uint3 b)
 
__host__ __device__ void operator*= (uint3 &a, uint3 b)
 
__host__ __device__ uint3 operator* (uint3 a, uint b)
 
__host__ __device__ uint3 operator* (uint b, uint3 a)
 
__host__ __device__ void operator*= (uint3 &a, uint b)
 
__host__ __device__ float4 operator* (float4 a, float4 b)
 
__host__ __device__ void operator*= (float4 &a, float4 b)
 
__host__ __device__ float4 operator* (float4 a, float b)
 
__host__ __device__ float4 operator* (float b, float4 a)
 
__host__ __device__ void operator*= (float4 &a, float b)
 
__host__ __device__ int4 operator* (int4 a, int4 b)
 
__host__ __device__ void operator*= (int4 &a, int4 b)
 
__host__ __device__ int4 operator* (int4 a, int b)
 
__host__ __device__ int4 operator* (int b, int4 a)
 
__host__ __device__ void operator*= (int4 &a, int b)
 
__host__ __device__ uint4 operator* (uint4 a, uint4 b)
 
__host__ __device__ void operator*= (uint4 &a, uint4 b)
 
__host__ __device__ uint4 operator* (uint4 a, uint b)
 
__host__ __device__ uint4 operator* (uint b, uint4 a)
 
__host__ __device__ void operator*= (uint4 &a, uint b)
 
__host__ __device__ float2 operator/ (float2 a, float2 b)
 
__host__ __device__ void operator/= (float2 &a, float2 b)
 
__host__ __device__ float2 operator/ (float2 a, float b)
 
__host__ __device__ void operator/= (float2 &a, float b)
 
__host__ __device__ float2 operator/ (float b, float2 a)
 
__host__ __device__ float3 operator/ (float3 a, float3 b)
 
__host__ __device__ void operator/= (float3 &a, float3 b)
 
__host__ __device__ float3 operator/ (float3 a, float b)
 
__host__ __device__ void operator/= (float3 &a, float b)
 
__host__ __device__ float3 operator/ (float b, float3 a)
 
__host__ __device__ float4 operator/ (float4 a, float4 b)
 
__host__ __device__ void operator/= (float4 &a, float4 b)
 
__host__ __device__ float4 operator/ (float4 a, float b)
 
__host__ __device__ void operator/= (float4 &a, float b)
 
__host__ __device__ float4 operator/ (float b, float4 a)
 
__host__ __device__ float2 fminf (float2 a, float2 b)
 
__host__ __device__ float3 fminf (float3 a, float3 b)
 
__host__ __device__ float4 fminf (float4 a, float4 b)
 
__host__ __device__ int2 min (int2 a, int2 b)
 
__host__ __device__ int3 min (int3 a, int3 b)
 
__host__ __device__ int4 min (int4 a, int4 b)
 
__host__ __device__ uint2 min (uint2 a, uint2 b)
 
__host__ __device__ uint3 min (uint3 a, uint3 b)
 
__host__ __device__ uint4 min (uint4 a, uint4 b)
 
__host__ __device__ float2 fmaxf (float2 a, float2 b)
 
__host__ __device__ float3 fmaxf (float3 a, float3 b)
 
__host__ __device__ float4 fmaxf (float4 a, float4 b)
 
__host__ __device__ int2 max (int2 a, int2 b)
 
__host__ __device__ int3 max (int3 a, int3 b)
 
__host__ __device__ int4 max (int4 a, int4 b)
 
__host__ __device__ uint2 max (uint2 a, uint2 b)
 
__host__ __device__ uint3 max (uint3 a, uint3 b)
 
__host__ __device__ uint4 max (uint4 a, uint4 b)
 
__device__ __host__ float lerp (float a, float b, float t)
 
__device__ __host__ float2 lerp (float2 a, float2 b, float t)
 
__device__ __host__ float3 lerp (float3 a, float3 b, float t)
 
__device__ __host__ float4 lerp (float4 a, float4 b, float t)
 
__host__ __device__ float dot (float2 a, float2 b)
 
__host__ __device__ float dot (float3 a, float3 b)
 
__host__ __device__ float dot (float4 a, float4 b)
 
__host__ __device__ int dot (int2 a, int2 b)
 
__host__ __device__ int dot (int3 a, int3 b)
 
__host__ __device__ int dot (int4 a, int4 b)
 
__host__ __device__ uint dot (uint2 a, uint2 b)
 
__host__ __device__ uint dot (uint3 a, uint3 b)
 
__host__ __device__ uint dot (uint4 a, uint4 b)
 
__host__ __device__ float length (float2 v)
 
__host__ __device__ float length (float3 v)
 
__host__ __device__ float length (float4 v)
 
__host__ __device__ float2 normalize (float2 v)
 
__host__ __device__ float3 normalize (float3 v)
 
__host__ __device__ float4 normalize (float4 v)
 
__host__ __device__ float3 cross (float3 a, float3 b)
 
__host__ __device__ Real rminr (Real a, Real b)
 
__host__ __device__ Real rmaxr (Real a, Real b)
 
__host__ __device__ Real rsqrtr (Real x)
 
__host__ __device__ Real2 make_Real2 (Real b, Real c)
 
__host__ __device__ Real2 make_Real2 (Real s)
 
__host__ __device__ Real2 make_Real2 (Real3 a)
 
__host__ __device__ Real2 make_Real2 (int2 a)
 
__host__ __device__ Real2 make_Real2 (uint2 a)
 
__host__ __device__ int2 make_int2 (Real2 a)
 
__host__ __device__ Real3 make_Real3 (Real a, Real b, Real c)
 
__host__ __device__ Real3 make_Real3 (Real s)
 
__host__ __device__ Real3 make_Real3 (Real2 a)
 
__host__ __device__ Real3 make_Real3 (Real2 a, Real s)
 
__host__ __device__ Real3 make_Real3 (Real4 a)
 
__host__ __device__ Real3 make_Real3 (int3 a)
 
__host__ __device__ Real3 make_Real3 (uint3 a)
 
__host__ __device__ int3 make_int3 (Real3 a)
 
__host__ __device__ Real4 make_Real4 (Real a, Real b, Real c, Real d)
 
__host__ __device__ Real4 make_Real4 (Real s)
 
__host__ __device__ Real4 make_Real4 (Real3 a)
 
__host__ __device__ Real4 make_Real4 (Real3 a, Real w)
 
__host__ __device__ Real4 make_Real4 (int4 a)
 
__host__ __device__ Real4 make_Real4 (uint4 a)
 
__host__ __device__ int4 make_int4 (Real4 a)
 
__host__ __device__ Real2 operator- (Real2 &a)
 
__host__ __device__ Real3 operator- (Real3 &a)
 
__host__ __device__ Real4 operator- (Real4 &a)
 
__host__ __device__ Real2 operator+ (Real2 a, Real2 b)
 
__host__ __device__ void operator+= (Real2 &a, Real2 b)
 
__host__ __device__ Real2 operator+ (Real2 a, Real b)
 
__host__ __device__ Real2 operator+ (Real b, Real2 a)
 
__host__ __device__ void operator+= (Real2 &a, Real b)
 
__host__ __device__ Real3 operator+ (Real3 a, Real3 b)
 
__host__ __device__ void operator+= (Real3 &a, Real3 b)
 
__host__ __device__ Real3 operator+ (Real3 a, Real b)
 
__host__ __device__ void operator+= (Real3 &a, Real b)
 
__host__ __device__ Real3 operator+ (Real b, Real3 a)
 
__host__ __device__ Real4 operator+ (Real4 a, Real4 b)
 
__host__ __device__ void operator+= (Real4 &a, Real4 b)
 
__host__ __device__ Real4 operator+ (Real4 a, Real b)
 
__host__ __device__ Real4 operator+ (Real b, Real4 a)
 
__host__ __device__ void operator+= (Real4 &a, Real b)
 
__host__ __device__ Real2 operator- (Real2 a, Real2 b)
 
__host__ __device__ void operator-= (Real2 &a, Real2 b)
 
__host__ __device__ Real2 operator- (Real2 a, Real b)
 
__host__ __device__ Real2 operator- (Real b, Real2 a)
 
__host__ __device__ void operator-= (Real2 &a, Real b)
 
__host__ __device__ Real3 operator- (Real3 a, Real3 b)
 
__host__ __device__ void operator-= (Real3 &a, Real3 b)
 
__host__ __device__ Real3 operator- (Real3 a, Real b)
 
__host__ __device__ Real3 operator- (Real b, Real3 a)
 
__host__ __device__ void operator-= (Real3 &a, Real b)
 
__host__ __device__ Real4 operator- (Real4 a, Real4 b)
 
__host__ __device__ void operator-= (Real4 &a, Real4 b)
 
__host__ __device__ Real4 operator- (Real4 a, Real b)
 
__host__ __device__ void operator-= (Real4 &a, Real b)
 
__host__ __device__ Real2 operator* (Real2 a, Real2 b)
 
__host__ __device__ void operator*= (Real2 &a, Real2 b)
 
__host__ __device__ Real2 operator* (Real2 a, Real b)
 
__host__ __device__ Real2 operator* (Real b, Real2 a)
 
__host__ __device__ void operator*= (Real2 &a, Real b)
 
__host__ __device__ Real3 operator* (Real3 a, Real3 b)
 
__host__ __device__ void operator*= (Real3 &a, Real3 b)
 
__host__ __device__ Real3 operator* (Real3 a, Real b)
 
__host__ __device__ Real3 operator* (Real b, Real3 a)
 
__host__ __device__ void operator*= (Real3 &a, Real b)
 
__host__ __device__ Real4 operator* (Real4 a, Real4 b)
 
__host__ __device__ void operator*= (Real4 &a, Real4 b)
 
__host__ __device__ Real4 operator* (Real4 a, Real b)
 
__host__ __device__ Real4 operator* (Real b, Real4 a)
 
__host__ __device__ void operator*= (Real4 &a, Real b)
 
__host__ __device__ Real2 operator/ (Real2 a, Real2 b)
 
__host__ __device__ void operator/= (Real2 &a, Real2 b)
 
__host__ __device__ Real2 operator/ (Real2 a, Real b)
 
__host__ __device__ void operator/= (Real2 &a, Real b)
 
__host__ __device__ Real2 operator/ (Real b, Real2 a)
 
__host__ __device__ Real3 operator/ (Real3 a, Real3 b)
 
__host__ __device__ void operator/= (Real3 &a, Real3 b)
 
__host__ __device__ Real3 operator/ (Real3 a, Real b)
 
__host__ __device__ void operator/= (Real3 &a, Real b)
 
__host__ __device__ Real3 operator/ (Real b, Real3 a)
 
__host__ __device__ Real4 operator/ (Real4 a, Real4 b)
 
__host__ __device__ void operator/= (Real4 &a, Real4 b)
 
__host__ __device__ Real4 operator/ (Real4 a, Real b)
 
__host__ __device__ void operator/= (Real4 &a, Real b)
 
__host__ __device__ Real4 operator/ (Real b, Real4 a)
 
__host__ __device__ Real2 rminr (Real2 a, Real2 b)
 
__host__ __device__ Real3 rminr (Real3 a, Real3 b)
 
__host__ __device__ Real4 rminr (Real4 a, Real4 b)
 
__host__ __device__ Real2 rmaxr (Real2 a, Real2 b)
 
__host__ __device__ Real3 rmaxr (Real3 a, Real3 b)
 
__host__ __device__ Real4 rmaxr (Real4 a, Real4 b)
 
__host__ __device__ Real2 lerp (Real2 a, Real2 b, Real t)
 
__host__ __device__ Real3 lerp (Real3 a, Real3 b, Real t)
 
__host__ __device__ Real4 lerp (Real4 a, Real4 b, Real t)
 
__host__ __device__ Real dot (Real2 a, Real2 b)
 
__host__ __device__ Real dot (Real3 a, Real3 b)
 
__host__ __device__ Real dot (Real4 a, Real4 b)
 
__host__ __device__ Real length (Real2 v)
 
__host__ __device__ Real length (Real3 v)
 
__host__ __device__ Real length (Real4 v)
 
__host__ __device__ Real2 normalize (Real2 v)
 
__host__ __device__ Real3 normalize (Real3 v)
 
__host__ __device__ Real4 normalize (Real4 v)
 
__host__ __device__ Real3 cross (Real3 a, Real3 b)
 

Variables

__constant__ SimParams paramsD
 
__constant__ NumberOfObjects numObjectsD
 

Function Documentation

__device__ uint chrono::fsi::calcGridHash ( int3  gridPos)

calcGridHash

See SDKCollisionSystem.cuh

__device__ int3 chrono::fsi::calcGridPos ( Real3  p)

calcGridHash

See SDKCollisionSystem.cuh

__device__ Real3 chrono::fsi::Distance ( Real3  a,
Real3  b 
)

Distance.

Distance between two particles, considering the periodic boundary condition

Parameters
posRadAPosition of Particle A
posRadBPosition of Particle B
Returns
Distance vector (distance in x, distance in y, distance in z)