ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
Loading...
Searching...
No Matches
walberla::lbm::accessor::Interpolation Namespace Reference

Functions

static __forceinline__ __device__ void calculate_weights (double const *RESTRICT const pos, int *RESTRICT const corner, double *RESTRICT const weights, uint gl)
 Calculate interpolation weights.
 
__global__ void kernel_get_rho (gpu::FieldAccessor< double > pdf, double const *RESTRICT const pos, double *RESTRICT const rho_out, double const density, uint n_pos, uint gl)
 
__global__ void kernel_get_vel (gpu::FieldAccessor< double > vel, double const *RESTRICT const pos, double *RESTRICT const vel_out, uint n_pos, uint gl)
 
__global__ void kernel_add_force (gpu::FieldAccessor< double > force, double const *RESTRICT const pos, double const *RESTRICT const forces, uint n_pos, uint gl)
 
std::vector< doubleget_rho (gpu::GPUField< double > const *field, std::vector< double > const &pos, double const density, uint gl)
 
std::vector< doubleget_vel (gpu::GPUField< double > const *field, std::vector< double > const &pos, uint gl)
 
void add_force (gpu::GPUField< double > const *field, std::vector< double > const &pos, std::vector< double > const &forces, uint gl)
 
static __forceinline__ __device__ void calculate_weights (float const *RESTRICT const pos, int *RESTRICT const corner, float *RESTRICT const weights, uint gl)
 Calculate interpolation weights.
 
__global__ void kernel_get_rho (gpu::FieldAccessor< float > pdf, float const *RESTRICT const pos, float *RESTRICT const rho_out, float const density, uint n_pos, uint gl)
 
__global__ void kernel_get_vel (gpu::FieldAccessor< float > vel, float const *RESTRICT const pos, float *RESTRICT const vel_out, uint n_pos, uint gl)
 
__global__ void kernel_add_force (gpu::FieldAccessor< float > force, float const *RESTRICT const pos, float const *RESTRICT const forces, uint n_pos, uint gl)
 
std::vector< floatget_rho (gpu::GPUField< float > const *field, std::vector< float > const &pos, float const density, uint gl)
 
std::vector< floatget_vel (gpu::GPUField< float > const *field, std::vector< float > const &pos, uint gl)
 
void add_force (gpu::GPUField< float > const *field, std::vector< float > const &pos, std::vector< float > const &forces, uint gl)
 

Function Documentation

◆ add_force() [1/2]

void walberla::lbm::accessor::Interpolation::add_force ( gpu::GPUField< double > const field,
std::vector< double > const pos,
std::vector< double > const forces,
uint  gl 
)

◆ add_force() [2/2]

void walberla::lbm::accessor::Interpolation::add_force ( gpu::GPUField< float > const field,
std::vector< float > const pos,
std::vector< float > const forces,
uint  gl 
)

Definition at line 746 of file FieldAccessorsSinglePrecisionCUDA.cu.

References calculate_dim_grid(), and stream.

◆ calculate_weights() [1/2]

static __forceinline__ __device__ void walberla::lbm::accessor::Interpolation::calculate_weights ( double const *RESTRICT const  pos,
int *RESTRICT const  corner,
double *RESTRICT const  weights,
uint  gl 
)
static

Calculate interpolation weights.

Definition at line 547 of file FieldAccessorsDoublePrecisionCUDA.cu.

References stream.

Referenced by kernel_add_force(), kernel_add_force(), kernel_get_rho(), kernel_get_rho(), kernel_get_vel(), and kernel_get_vel().

◆ calculate_weights() [2/2]

static __forceinline__ __device__ void walberla::lbm::accessor::Interpolation::calculate_weights ( float const *RESTRICT const  pos,
int *RESTRICT const  corner,
float *RESTRICT const  weights,
uint  gl 
)
static

Calculate interpolation weights.

Definition at line 547 of file FieldAccessorsSinglePrecisionCUDA.cu.

References stream.

◆ get_rho() [1/2]

std::vector< double > walberla::lbm::accessor::Interpolation::get_rho ( gpu::GPUField< double > const field,
std::vector< double > const pos,
double const  density,
uint  gl 
)

◆ get_rho() [2/2]

std::vector< float > walberla::lbm::accessor::Interpolation::get_rho ( gpu::GPUField< float > const field,
std::vector< float > const pos,
float const  density,
uint  gl 
)

Definition at line 702 of file FieldAccessorsSinglePrecisionCUDA.cu.

References calculate_dim_grid(), density, and stream.

◆ get_vel() [1/2]

std::vector< double > walberla::lbm::accessor::Interpolation::get_vel ( gpu::GPUField< double > const field,
std::vector< double > const pos,
uint  gl 
)

◆ get_vel() [2/2]

std::vector< float > walberla::lbm::accessor::Interpolation::get_vel ( gpu::GPUField< float > const field,
std::vector< float > const pos,
uint  gl 
)

Definition at line 725 of file FieldAccessorsSinglePrecisionCUDA.cu.

References calculate_dim_grid(), and stream.

◆ kernel_add_force() [1/2]

__global__ void walberla::lbm::accessor::Interpolation::kernel_add_force ( gpu::FieldAccessor< double force,
double const *RESTRICT const  pos,
double const *RESTRICT const  forces,
uint  n_pos,
uint  gl 
)

Definition at line 661 of file FieldAccessorsDoublePrecisionCUDA.cu.

References calculate_weights(), stream, and weight().

◆ kernel_add_force() [2/2]

__global__ void walberla::lbm::accessor::Interpolation::kernel_add_force ( gpu::FieldAccessor< float force,
float const *RESTRICT const  pos,
float const *RESTRICT const  forces,
uint  n_pos,
uint  gl 
)

Definition at line 661 of file FieldAccessorsSinglePrecisionCUDA.cu.

References calculate_weights(), stream, and weight().

◆ kernel_get_rho() [1/2]

__global__ void walberla::lbm::accessor::Interpolation::kernel_get_rho ( gpu::FieldAccessor< double pdf,
double const *RESTRICT const  pos,
double *RESTRICT const  rho_out,
double const  density,
uint  n_pos,
uint  gl 
)

Definition at line 563 of file FieldAccessorsDoublePrecisionCUDA.cu.

References calculate_weights(), density, stream, and weight().

◆ kernel_get_rho() [2/2]

__global__ void walberla::lbm::accessor::Interpolation::kernel_get_rho ( gpu::FieldAccessor< float pdf,
float const *RESTRICT const  pos,
float *RESTRICT const  rho_out,
float const  density,
uint  n_pos,
uint  gl 
)

Definition at line 563 of file FieldAccessorsSinglePrecisionCUDA.cu.

References calculate_weights(), density, stream, and weight().

◆ kernel_get_vel() [1/2]

__global__ void walberla::lbm::accessor::Interpolation::kernel_get_vel ( gpu::FieldAccessor< double vel,
double const *RESTRICT const  pos,
double *RESTRICT const  vel_out,
uint  n_pos,
uint  gl 
)

Definition at line 623 of file FieldAccessorsDoublePrecisionCUDA.cu.

References calculate_weights(), stream, and weight().

◆ kernel_get_vel() [2/2]

__global__ void walberla::lbm::accessor::Interpolation::kernel_get_vel ( gpu::FieldAccessor< float vel,
float const *RESTRICT const  pos,
float *RESTRICT const  vel_out,
uint  n_pos,
uint  gl 
)

Definition at line 623 of file FieldAccessorsSinglePrecisionCUDA.cu.

References calculate_weights(), stream, and weight().