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, 19uget (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< doubleget (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, 19uget (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< floatget (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]

◆ get() [2/8]

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

Definition at line 178 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 53 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 178 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 250 of file FieldAccessorsDoublePrecisionCUDA.cu.

References kernel_get(), and stream.

◆ 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 307 of file FieldAccessorsDoublePrecisionCUDA.cu.

References kernel_get(), and stream.

◆ 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 250 of file FieldAccessorsSinglePrecisionCUDA.cu.

References kernel_get(), and stream.

◆ 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 307 of file FieldAccessorsSinglePrecisionCUDA.cu.

References kernel_get(), and stream.

◆ 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 152 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 295 of file FieldAccessorsDoublePrecisionCUDA.cu.

References kernel_broadcast(), and stream.

◆ 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 295 of file FieldAccessorsSinglePrecisionCUDA.cu.

References kernel_broadcast(), and stream.

◆ kernel_broadcast() [1/2]

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

Definition at line 174 of file FieldAccessorsDoublePrecisionCUDA.cu.

References stream.

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 174 of file FieldAccessorsSinglePrecisionCUDA.cu.

References stream.

◆ kernel_get() [1/2]

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

Definition at line 116 of file FieldAccessorsDoublePrecisionCUDA.cu.

References getLinearIndex(), and stream.

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 116 of file FieldAccessorsSinglePrecisionCUDA.cu.

References getLinearIndex(), and stream.

◆ kernel_set() [1/2]

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

Definition at line 145 of file FieldAccessorsDoublePrecisionCUDA.cu.

References getLinearIndex(), and stream.

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 145 of file FieldAccessorsSinglePrecisionCUDA.cu.

References getLinearIndex(), and stream.

◆ 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 201 of file FieldAccessorsDoublePrecisionCUDA.cu.

References getLinearIndex(), stream, 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 201 of file FieldAccessorsSinglePrecisionCUDA.cu.

References getLinearIndex(), stream, 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 103 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 244 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 211 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 103 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 244 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 79 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 211 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 278 of file FieldAccessorsDoublePrecisionCUDA.cu.

References kernel_set_vel(), and stream.

◆ 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 333 of file FieldAccessorsDoublePrecisionCUDA.cu.

References kernel_set_vel(), and stream.

◆ 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 265 of file FieldAccessorsDoublePrecisionCUDA.cu.

References kernel_set(), and stream.

◆ 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 321 of file FieldAccessorsDoublePrecisionCUDA.cu.

References kernel_set(), and stream.

◆ 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 278 of file FieldAccessorsSinglePrecisionCUDA.cu.

References kernel_set_vel(), and stream.

◆ 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 333 of file FieldAccessorsSinglePrecisionCUDA.cu.

References kernel_set_vel(), and stream.

◆ 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 265 of file FieldAccessorsSinglePrecisionCUDA.cu.

References kernel_set(), and stream.

◆ 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 321 of file FieldAccessorsSinglePrecisionCUDA.cu.

References kernel_set(), and stream.