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

Functions

auto get (GhostLayerField< double, uint_t{19u}> const *pdf_field, Cell const &cell)
 
void set (GhostLayerField< double, uint_t{19u}> *pdf_field, std::array< double, 19u > const &pop, Cell const &cell)
 
void set (GhostLayerField< double, uint_t{19u}> *pdf_field, GhostLayerField< double, uint_t{3u}> *velocity_field, GhostLayerField< double, uint_t{3u}> const *force_field, std::array< double, 19u > const &pop, Cell const &cell)
 
void initialize (GhostLayerField< double, uint_t{19u}> *pdf_field, std::array< double, 19u > const &pop)
 
auto get (GhostLayerField< double, uint_t{19u}> const *pdf_field, CellInterval const &ci)
 
void set (GhostLayerField< double, uint_t{19u}> *pdf_field, std::vector< double > const &values, CellInterval const &ci)
 
void set (GhostLayerField< double, uint_t{19u}> *pdf_field, GhostLayerField< double, uint_t{3u}> *velocity_field, GhostLayerField< double, uint_t{3u}> const *force_field, std::vector< double > const &values, CellInterval const &ci)
 
__global__ void kernel_get (gpu::FieldAccessor< double > pdf, double *RESTRICT pop)
 
__global__ void kernel_set (gpu::FieldAccessor< double > pdf, double const *RESTRICT pop)
 
__global__ void kernel_broadcast (gpu::FieldAccessor< double > pdf, double const *RESTRICT pop)
 
__global__ void kernel_set_vel (gpu::FieldAccessor< double > pdf, gpu::FieldAccessor< double > velocity, gpu::FieldAccessor< double > force, double const *RESTRICT pop)
 
std::array< double, 19u > get (gpu::GPUField< double > const *pdf_field, Cell const &cell)
 Get populations from a single cell.
 
void set (gpu::GPUField< double > *pdf_field, std::array< double, 19u > const &pop, Cell const &cell)
 Set populations on a single cell.
 
void set (gpu::GPUField< double > *pdf_field, gpu::GPUField< double > *velocity_field, gpu::GPUField< double > const *force_field, std::array< double, 19u > const &pop, Cell const &cell)
 Set populations and recalculate velocities on a single cell.
 
void initialize (gpu::GPUField< double > *pdf_field, std::array< double, 19u > const &pop)
 Initialize all cells with the same value.
 
std::vector< double > get (gpu::GPUField< double > const *pdf_field, CellInterval const &ci)
 Get populations from a cell interval.
 
void set (gpu::GPUField< double > *pdf_field, std::vector< double > const &values, CellInterval const &ci)
 Set populations on a cell interval.
 
void set (gpu::GPUField< double > *pdf_field, gpu::GPUField< double > *velocity_field, gpu::GPUField< double > const *force_field, std::vector< double > const &values, CellInterval const &ci)
 Set populations and recalculate velocities on a cell interval.
 
auto get (GhostLayerField< float, uint_t{19u}> const *pdf_field, Cell const &cell)
 
void set (GhostLayerField< float, uint_t{19u}> *pdf_field, std::array< float, 19u > const &pop, Cell const &cell)
 
void set (GhostLayerField< float, uint_t{19u}> *pdf_field, GhostLayerField< float, uint_t{3u}> *velocity_field, GhostLayerField< float, uint_t{3u}> const *force_field, std::array< float, 19u > const &pop, Cell const &cell)
 
void initialize (GhostLayerField< float, uint_t{19u}> *pdf_field, std::array< float, 19u > const &pop)
 
auto get (GhostLayerField< float, uint_t{19u}> const *pdf_field, CellInterval const &ci)
 
void set (GhostLayerField< float, uint_t{19u}> *pdf_field, std::vector< float > const &values, CellInterval const &ci)
 
void set (GhostLayerField< float, uint_t{19u}> *pdf_field, GhostLayerField< float, uint_t{3u}> *velocity_field, GhostLayerField< float, uint_t{3u}> const *force_field, std::vector< float > const &values, CellInterval const &ci)
 
__global__ void kernel_get (gpu::FieldAccessor< float > pdf, float *RESTRICT pop)
 
__global__ void kernel_set (gpu::FieldAccessor< float > pdf, float const *RESTRICT pop)
 
__global__ void kernel_broadcast (gpu::FieldAccessor< float > pdf, float const *RESTRICT pop)
 
__global__ void kernel_set_vel (gpu::FieldAccessor< float > pdf, gpu::FieldAccessor< float > velocity, gpu::FieldAccessor< float > force, float const *RESTRICT pop)
 
std::array< float, 19u > get (gpu::GPUField< float > const *pdf_field, Cell const &cell)
 Get populations from a single cell.
 
void set (gpu::GPUField< float > *pdf_field, std::array< float, 19u > const &pop, Cell const &cell)
 Set populations on a single cell.
 
void set (gpu::GPUField< float > *pdf_field, gpu::GPUField< float > *velocity_field, gpu::GPUField< float > const *force_field, std::array< float, 19u > const &pop, Cell const &cell)
 Set populations and recalculate velocities on a single cell.
 
void initialize (gpu::GPUField< float > *pdf_field, std::array< float, 19u > const &pop)
 Initialize all cells with the same value.
 
std::vector< float > get (gpu::GPUField< float > const *pdf_field, CellInterval const &ci)
 Get populations from a cell interval.
 
void set (gpu::GPUField< float > *pdf_field, std::vector< float > const &values, CellInterval const &ci)
 Set populations on a cell interval.
 
void set (gpu::GPUField< float > *pdf_field, gpu::GPUField< float > *velocity_field, gpu::GPUField< float > const *force_field, std::vector< float > const &values, CellInterval const &ci)
 Set populations and recalculate velocities on a cell interval.
 

Function Documentation

◆ get() [1/8]

auto walberla::lbm::accessor::Population::get ( GhostLayerField< double, uint_t{19u}> const *  pdf_field,
Cell const &  cell 
)
inline

◆ get() [2/8]

auto walberla::lbm::accessor::Population::get ( GhostLayerField< double, uint_t{19u}> const *  pdf_field,
CellInterval const &  ci 
)
inline

Definition at line 187 of file FieldAccessorsDoublePrecision.h.

◆ get() [3/8]

auto walberla::lbm::accessor::Population::get ( GhostLayerField< float, uint_t{19u}> const *  pdf_field,
Cell const &  cell 
)
inline

Definition at line 63 of file FieldAccessorsSinglePrecision.h.

◆ get() [4/8]

auto walberla::lbm::accessor::Population::get ( GhostLayerField< float, uint_t{19u}> const *  pdf_field,
CellInterval const &  ci 
)
inline

Definition at line 187 of file FieldAccessorsSinglePrecision.h.

◆ get() [5/8]

std::array< double, 19u > walberla::lbm::accessor::Population::get ( gpu::GPUField< double > const *  pdf_field,
Cell const &  cell 
)

Get populations from a single cell.

Definition at line 231 of file FieldAccessorsDoublePrecisionCUDA.cu.

References kernel_get().

◆ get() [6/8]

std::vector< double > walberla::lbm::accessor::Population::get ( gpu::GPUField< double > const *  pdf_field,
CellInterval const &  ci 
)

Get populations from a cell interval.

Definition at line 288 of file FieldAccessorsDoublePrecisionCUDA.cu.

References kernel_get().

◆ get() [7/8]

std::array< float, 19u > walberla::lbm::accessor::Population::get ( gpu::GPUField< float > const *  pdf_field,
Cell const &  cell 
)

Get populations from a single cell.

Definition at line 231 of file FieldAccessorsSinglePrecisionCUDA.cu.

References kernel_get().

◆ get() [8/8]

std::vector< float > walberla::lbm::accessor::Population::get ( gpu::GPUField< float > const *  pdf_field,
CellInterval const &  ci 
)

Get populations from a cell interval.

Definition at line 288 of file FieldAccessorsSinglePrecisionCUDA.cu.

References kernel_get().

◆ initialize() [1/4]

void walberla::lbm::accessor::Population::initialize ( GhostLayerField< double, uint_t{19u}> *  pdf_field,
std::array< double, 19u > const &  pop 
)
inline

◆ initialize() [2/4]

void walberla::lbm::accessor::Population::initialize ( GhostLayerField< float, uint_t{19u}> *  pdf_field,
std::array< float, 19u > const &  pop 
)
inline

Definition at line 161 of file FieldAccessorsSinglePrecision.h.

◆ initialize() [3/4]

void walberla::lbm::accessor::Population::initialize ( gpu::GPUField< double > *  pdf_field,
std::array< double, 19u > const &  pop 
)

Initialize all cells with the same value.

Definition at line 276 of file FieldAccessorsDoublePrecisionCUDA.cu.

References kernel_broadcast().

◆ initialize() [4/4]

void walberla::lbm::accessor::Population::initialize ( gpu::GPUField< float > *  pdf_field,
std::array< float, 19u > const &  pop 
)

Initialize all cells with the same value.

Definition at line 276 of file FieldAccessorsSinglePrecisionCUDA.cu.

References kernel_broadcast().

◆ kernel_broadcast() [1/2]

__global__ void walberla::lbm::accessor::Population::kernel_broadcast ( gpu::FieldAccessor< double >  pdf,
double const *RESTRICT  pop 
)

Definition at line 156 of file FieldAccessorsDoublePrecisionCUDA.cu.

Referenced by initialize(), and initialize().

◆ kernel_broadcast() [2/2]

__global__ void walberla::lbm::accessor::Population::kernel_broadcast ( gpu::FieldAccessor< float >  pdf,
float const *RESTRICT  pop 
)

Definition at line 156 of file FieldAccessorsSinglePrecisionCUDA.cu.

◆ kernel_get() [1/2]

__global__ void walberla::lbm::accessor::Population::kernel_get ( gpu::FieldAccessor< double >  pdf,
double *RESTRICT  pop 
)

Definition at line 98 of file FieldAccessorsDoublePrecisionCUDA.cu.

References getLinearIndex().

Referenced by get(), get(), get(), and get().

◆ kernel_get() [2/2]

__global__ void walberla::lbm::accessor::Population::kernel_get ( gpu::FieldAccessor< float >  pdf,
float *RESTRICT  pop 
)

Definition at line 98 of file FieldAccessorsSinglePrecisionCUDA.cu.

References getLinearIndex().

◆ kernel_set() [1/2]

__global__ void walberla::lbm::accessor::Population::kernel_set ( gpu::FieldAccessor< double >  pdf,
double const *RESTRICT  pop 
)

Definition at line 127 of file FieldAccessorsDoublePrecisionCUDA.cu.

References getLinearIndex().

Referenced by set(), set(), set(), and set().

◆ kernel_set() [2/2]

__global__ void walberla::lbm::accessor::Population::kernel_set ( gpu::FieldAccessor< float >  pdf,
float const *RESTRICT  pop 
)

Definition at line 127 of file FieldAccessorsSinglePrecisionCUDA.cu.

References getLinearIndex().

◆ kernel_set_vel() [1/2]

__global__ void walberla::lbm::accessor::Population::kernel_set_vel ( gpu::FieldAccessor< double >  pdf,
gpu::FieldAccessor< double >  velocity,
gpu::FieldAccessor< double >  force,
double const *RESTRICT  pop 
)

Definition at line 183 of file FieldAccessorsDoublePrecisionCUDA.cu.

References getLinearIndex(), and velocity().

Referenced by set(), set(), set(), and set().

◆ kernel_set_vel() [2/2]

__global__ void walberla::lbm::accessor::Population::kernel_set_vel ( gpu::FieldAccessor< float >  pdf,
gpu::FieldAccessor< float >  velocity,
gpu::FieldAccessor< float >  force,
float const *RESTRICT  pop 
)

Definition at line 183 of file FieldAccessorsSinglePrecisionCUDA.cu.

References getLinearIndex(), and velocity().

◆ set() [1/16]

void walberla::lbm::accessor::Population::set ( GhostLayerField< double, uint_t{19u}> *  pdf_field,
GhostLayerField< double, uint_t{3u}> *  velocity_field,
GhostLayerField< double, uint_t{3u}> const *  force_field,
std::array< double, 19u > const &  pop,
Cell const &  cell 
)
inline

Definition at line 113 of file FieldAccessorsDoublePrecision.h.

◆ set() [2/16]

void walberla::lbm::accessor::Population::set ( GhostLayerField< double, uint_t{19u}> *  pdf_field,
GhostLayerField< double, uint_t{3u}> *  velocity_field,
GhostLayerField< double, uint_t{3u}> const *  force_field,
std::vector< double > const &  values,
CellInterval const &  ci 
)
inline

Definition at line 253 of file FieldAccessorsDoublePrecision.h.

◆ set() [3/16]

void walberla::lbm::accessor::Population::set ( GhostLayerField< double, uint_t{19u}> *  pdf_field,
std::array< double, 19u > const &  pop,
Cell const &  cell 
)
inline

◆ set() [4/16]

void walberla::lbm::accessor::Population::set ( GhostLayerField< double, uint_t{19u}> *  pdf_field,
std::vector< double > const &  values,
CellInterval const &  ci 
)
inline

Definition at line 220 of file FieldAccessorsDoublePrecision.h.

◆ set() [5/16]

void walberla::lbm::accessor::Population::set ( GhostLayerField< float, uint_t{19u}> *  pdf_field,
GhostLayerField< float, uint_t{3u}> *  velocity_field,
GhostLayerField< float, uint_t{3u}> const *  force_field,
std::array< float, 19u > const &  pop,
Cell const &  cell 
)
inline

Definition at line 113 of file FieldAccessorsSinglePrecision.h.

◆ set() [6/16]

void walberla::lbm::accessor::Population::set ( GhostLayerField< float, uint_t{19u}> *  pdf_field,
GhostLayerField< float, uint_t{3u}> *  velocity_field,
GhostLayerField< float, uint_t{3u}> const *  force_field,
std::vector< float > const &  values,
CellInterval const &  ci 
)
inline

Definition at line 253 of file FieldAccessorsSinglePrecision.h.

◆ set() [7/16]

void walberla::lbm::accessor::Population::set ( GhostLayerField< float, uint_t{19u}> *  pdf_field,
std::array< float, 19u > const &  pop,
Cell const &  cell 
)
inline

Definition at line 89 of file FieldAccessorsSinglePrecision.h.

◆ set() [8/16]

void walberla::lbm::accessor::Population::set ( GhostLayerField< float, uint_t{19u}> *  pdf_field,
std::vector< float > const &  values,
CellInterval const &  ci 
)
inline

Definition at line 220 of file FieldAccessorsSinglePrecision.h.

◆ set() [9/16]

void walberla::lbm::accessor::Population::set ( gpu::GPUField< double > *  pdf_field,
gpu::GPUField< double > *  velocity_field,
gpu::GPUField< double > const *  force_field,
std::array< double, 19u > const &  pop,
Cell const &  cell 
)

Set populations and recalculate velocities on a single cell.

Definition at line 259 of file FieldAccessorsDoublePrecisionCUDA.cu.

References kernel_set_vel().

◆ set() [10/16]

void walberla::lbm::accessor::Population::set ( gpu::GPUField< double > *  pdf_field,
gpu::GPUField< double > *  velocity_field,
gpu::GPUField< double > const *  force_field,
std::vector< double > const &  values,
CellInterval const &  ci 
)

Set populations and recalculate velocities on a cell interval.

Definition at line 314 of file FieldAccessorsDoublePrecisionCUDA.cu.

References kernel_set_vel().

◆ set() [11/16]

void walberla::lbm::accessor::Population::set ( gpu::GPUField< double > *  pdf_field,
std::array< double, 19u > const &  pop,
Cell const &  cell 
)

Set populations on a single cell.

Definition at line 246 of file FieldAccessorsDoublePrecisionCUDA.cu.

References kernel_set().

◆ set() [12/16]

void walberla::lbm::accessor::Population::set ( gpu::GPUField< double > *  pdf_field,
std::vector< double > const &  values,
CellInterval const &  ci 
)

Set populations on a cell interval.

Definition at line 302 of file FieldAccessorsDoublePrecisionCUDA.cu.

References kernel_set().

◆ set() [13/16]

void walberla::lbm::accessor::Population::set ( gpu::GPUField< float > *  pdf_field,
gpu::GPUField< float > *  velocity_field,
gpu::GPUField< float > const *  force_field,
std::array< float, 19u > const &  pop,
Cell const &  cell 
)

Set populations and recalculate velocities on a single cell.

Definition at line 259 of file FieldAccessorsSinglePrecisionCUDA.cu.

References kernel_set_vel().

◆ set() [14/16]

void walberla::lbm::accessor::Population::set ( gpu::GPUField< float > *  pdf_field,
gpu::GPUField< float > *  velocity_field,
gpu::GPUField< float > const *  force_field,
std::vector< float > const &  values,
CellInterval const &  ci 
)

Set populations and recalculate velocities on a cell interval.

Definition at line 314 of file FieldAccessorsSinglePrecisionCUDA.cu.

References kernel_set_vel().

◆ set() [15/16]

void walberla::lbm::accessor::Population::set ( gpu::GPUField< float > *  pdf_field,
std::array< float, 19u > const &  pop,
Cell const &  cell 
)

Set populations on a single cell.

Definition at line 246 of file FieldAccessorsSinglePrecisionCUDA.cu.

References kernel_set().

◆ set() [16/16]

void walberla::lbm::accessor::Population::set ( gpu::GPUField< float > *  pdf_field,
std::vector< float > const &  values,
CellInterval const &  ci 
)

Set populations on a cell interval.

Definition at line 302 of file FieldAccessorsSinglePrecisionCUDA.cu.

References kernel_set().