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

Functions

auto get (GhostLayerField< double, uint_t{3u}> const *vec_field, Cell const &cell)
 
void set (GhostLayerField< double, uint_t{3u}> *vec_field, Vector3< double > const &vec, Cell const &cell)
 
void add (GhostLayerField< double, uint_t{3u}> *vec_field, Vector3< double > const &vec, Cell const &cell)
 
void initialize (GhostLayerField< double, uint_t{3u}> *vec_field, Vector3< double > const &vec)
 
void add_to_all (GhostLayerField< double, uint_t{3u}> *vec_field, Vector3< double > const &vec)
 
auto get (GhostLayerField< double, uint_t{3u}> const *vec_field, CellInterval const &ci)
 
void set (GhostLayerField< double, uint_t{3u}> *vec_field, std::vector< double > const &values, CellInterval const &ci)
 
__global__ void kernel_get (gpu::FieldAccessor< double > vec, double *u_out)
 
__global__ void kernel_set (gpu::FieldAccessor< double > vec, double const *RESTRICT u_in)
 
__global__ void kernel_broadcast (gpu::FieldAccessor< double > vec, double const *RESTRICT u_in)
 
__global__ void kernel_add (gpu::FieldAccessor< double > vec, double const *RESTRICT u_in)
 
__global__ void kernel_broadcast_add (gpu::FieldAccessor< double > vec, double const *RESTRICT u_in)
 
Vector3< doubleget (gpu::GPUField< double > const *field, Cell const &cell)
 Get value from a single cell.
 
void set (gpu::GPUField< double > *field, Vector3< double > const &vec, Cell const &cell)
 Set value on a single cell.
 
void add (gpu::GPUField< double > *field, Vector3< double > const &vec, Cell const &cell)
 Add value to a single cell.
 
void initialize (gpu::GPUField< double > *field, Vector3< double > const &vec)
 Initialize all cells with the same value.
 
void add_to_all (gpu::GPUField< double > *field, Vector3< double > const &vec)
 Add value to all cells.
 
std::vector< doubleget (gpu::GPUField< double > const *vec_field, CellInterval const &ci)
 Get values from a cell interval.
 
void set (gpu::GPUField< double > *vec_field, std::vector< double > const &values, CellInterval const &ci)
 Set values on a cell interval.
 
auto get (GhostLayerField< float, uint_t{3u}> const *vec_field, Cell const &cell)
 
void set (GhostLayerField< float, uint_t{3u}> *vec_field, Vector3< float > const &vec, Cell const &cell)
 
void add (GhostLayerField< float, uint_t{3u}> *vec_field, Vector3< float > const &vec, Cell const &cell)
 
void initialize (GhostLayerField< float, uint_t{3u}> *vec_field, Vector3< float > const &vec)
 
void add_to_all (GhostLayerField< float, uint_t{3u}> *vec_field, Vector3< float > const &vec)
 
auto get (GhostLayerField< float, uint_t{3u}> const *vec_field, CellInterval const &ci)
 
void set (GhostLayerField< float, uint_t{3u}> *vec_field, std::vector< float > const &values, CellInterval const &ci)
 
__global__ void kernel_get (gpu::FieldAccessor< float > vec, float *u_out)
 
__global__ void kernel_set (gpu::FieldAccessor< float > vec, float const *RESTRICT u_in)
 
__global__ void kernel_broadcast (gpu::FieldAccessor< float > vec, float const *RESTRICT u_in)
 
__global__ void kernel_add (gpu::FieldAccessor< float > vec, float const *RESTRICT u_in)
 
__global__ void kernel_broadcast_add (gpu::FieldAccessor< float > vec, float const *RESTRICT u_in)
 
Vector3< floatget (gpu::GPUField< float > const *field, Cell const &cell)
 Get value from a single cell.
 
void set (gpu::GPUField< float > *field, Vector3< float > const &vec, Cell const &cell)
 Set value on a single cell.
 
void add (gpu::GPUField< float > *field, Vector3< float > const &vec, Cell const &cell)
 Add value to a single cell.
 
void initialize (gpu::GPUField< float > *field, Vector3< float > const &vec)
 Initialize all cells with the same value.
 
void add_to_all (gpu::GPUField< float > *field, Vector3< float > const &vec)
 Add value to all cells.
 
std::vector< floatget (gpu::GPUField< float > const *vec_field, CellInterval const &ci)
 Get values from a cell interval.
 
void set (gpu::GPUField< float > *vec_field, std::vector< float > const &values, CellInterval const &ci)
 Set values on a cell interval.
 

Function Documentation

◆ add() [1/4]

void walberla::ek::accessor::Vector::add ( GhostLayerField< double, uint_t{3u}> *  vec_field,
Vector3< double > const vec,
Cell const cell 
)
inline

Definition at line 126 of file EK_FieldAccessors_double_precision.h.

◆ add() [2/4]

void walberla::ek::accessor::Vector::add ( GhostLayerField< float, uint_t{3u}> *  vec_field,
Vector3< float > const vec,
Cell const cell 
)
inline

Definition at line 126 of file EK_FieldAccessors_single_precision.h.

◆ add() [3/4]

void walberla::ek::accessor::Vector::add ( gpu::GPUField< double > *  vec_field,
Vector3< double > const vec,
Cell const cell 
)

Add value to a single cell.

Definition at line 316 of file EK_FieldAccessors_double_precision_CUDA.cu.

References kernel_add(), and stream.

◆ add() [4/4]

void walberla::ek::accessor::Vector::add ( gpu::GPUField< float > *  vec_field,
Vector3< float > const vec,
Cell const cell 
)

Add value to a single cell.

Definition at line 316 of file EK_FieldAccessors_single_precision_CUDA.cu.

References kernel_add(), and stream.

◆ add_to_all() [1/4]

void walberla::ek::accessor::Vector::add_to_all ( GhostLayerField< double, uint_t{3u}> *  vec_field,
Vector3< double > const vec 
)
inline

Definition at line 144 of file EK_FieldAccessors_double_precision.h.

◆ add_to_all() [2/4]

void walberla::ek::accessor::Vector::add_to_all ( GhostLayerField< float, uint_t{3u}> *  vec_field,
Vector3< float > const vec 
)
inline

Definition at line 144 of file EK_FieldAccessors_single_precision.h.

◆ add_to_all() [3/4]

void walberla::ek::accessor::Vector::add_to_all ( gpu::GPUField< double > *  vec_field,
Vector3< double > const vec 
)

Add value to all cells.

Definition at line 341 of file EK_FieldAccessors_double_precision_CUDA.cu.

References kernel_broadcast_add(), and stream.

◆ add_to_all() [4/4]

void walberla::ek::accessor::Vector::add_to_all ( gpu::GPUField< float > *  vec_field,
Vector3< float > const vec 
)

Add value to all cells.

Definition at line 341 of file EK_FieldAccessors_single_precision_CUDA.cu.

References kernel_broadcast_add(), and stream.

◆ get() [1/8]

auto walberla::ek::accessor::Vector::get ( GhostLayerField< double, uint_t{3u}> const vec_field,
Cell const cell 
)
inline

Definition at line 108 of file EK_FieldAccessors_double_precision.h.

◆ get() [2/8]

auto walberla::ek::accessor::Vector::get ( GhostLayerField< double, uint_t{3u}> const vec_field,
CellInterval const ci 
)
inline

Definition at line 154 of file EK_FieldAccessors_double_precision.h.

◆ get() [3/8]

auto walberla::ek::accessor::Vector::get ( GhostLayerField< float, uint_t{3u}> const vec_field,
Cell const cell 
)
inline

Definition at line 108 of file EK_FieldAccessors_single_precision.h.

◆ get() [4/8]

auto walberla::ek::accessor::Vector::get ( GhostLayerField< float, uint_t{3u}> const vec_field,
CellInterval const ci 
)
inline

Definition at line 154 of file EK_FieldAccessors_single_precision.h.

◆ get() [5/8]

Vector3< double > walberla::ek::accessor::Vector::get ( gpu::GPUField< double > const vec_field,
Cell const cell 
)

Get value from a single cell.

Definition at line 288 of file EK_FieldAccessors_double_precision_CUDA.cu.

References kernel_get(), and stream.

◆ get() [6/8]

std::vector< double > walberla::ek::accessor::Vector::get ( gpu::GPUField< double > const vec_field,
CellInterval const ci 
)

Get values from a cell interval.

Definition at line 353 of file EK_FieldAccessors_double_precision_CUDA.cu.

References kernel_get(), and stream.

◆ get() [7/8]

Vector3< float > walberla::ek::accessor::Vector::get ( gpu::GPUField< float > const vec_field,
Cell const cell 
)

Get value from a single cell.

Definition at line 288 of file EK_FieldAccessors_single_precision_CUDA.cu.

References kernel_get(), and stream.

◆ get() [8/8]

std::vector< float > walberla::ek::accessor::Vector::get ( gpu::GPUField< float > const vec_field,
CellInterval const ci 
)

Get values from a cell interval.

Definition at line 353 of file EK_FieldAccessors_single_precision_CUDA.cu.

References kernel_get(), and stream.

◆ initialize() [1/4]

void walberla::ek::accessor::Vector::initialize ( GhostLayerField< double, uint_t{3u}> *  vec_field,
Vector3< double > const vec 
)
inline

Definition at line 134 of file EK_FieldAccessors_double_precision.h.

◆ initialize() [2/4]

void walberla::ek::accessor::Vector::initialize ( GhostLayerField< float, uint_t{3u}> *  vec_field,
Vector3< float > const vec 
)
inline

Definition at line 134 of file EK_FieldAccessors_single_precision.h.

◆ initialize() [3/4]

void walberla::ek::accessor::Vector::initialize ( gpu::GPUField< double > *  vec_field,
Vector3< double > const vec 
)

Initialize all cells with the same value.

Definition at line 329 of file EK_FieldAccessors_double_precision_CUDA.cu.

References kernel_broadcast(), and stream.

◆ initialize() [4/4]

void walberla::ek::accessor::Vector::initialize ( gpu::GPUField< float > *  vec_field,
Vector3< float > const vec 
)

Initialize all cells with the same value.

Definition at line 329 of file EK_FieldAccessors_single_precision_CUDA.cu.

References kernel_broadcast(), and stream.

◆ kernel_add() [1/2]

__global__ void walberla::ek::accessor::Vector::kernel_add ( gpu::FieldAccessor< double vec,
double const *RESTRICT  u_in 
)

Definition at line 263 of file EK_FieldAccessors_double_precision_CUDA.cu.

References getLinearIndex(), and stream.

Referenced by add(), and add().

◆ kernel_add() [2/2]

__global__ void walberla::ek::accessor::Vector::kernel_add ( gpu::FieldAccessor< float vec,
float const *RESTRICT  u_in 
)

Definition at line 263 of file EK_FieldAccessors_single_precision_CUDA.cu.

References getLinearIndex(), and stream.

◆ kernel_broadcast() [1/2]

__global__ void walberla::ek::accessor::Vector::kernel_broadcast ( gpu::FieldAccessor< double vec,
double const *RESTRICT  u_in 
)

Definition at line 252 of file EK_FieldAccessors_double_precision_CUDA.cu.

References stream.

Referenced by initialize(), and initialize().

◆ kernel_broadcast() [2/2]

__global__ void walberla::ek::accessor::Vector::kernel_broadcast ( gpu::FieldAccessor< float vec,
float const *RESTRICT  u_in 
)

Definition at line 252 of file EK_FieldAccessors_single_precision_CUDA.cu.

References stream.

◆ kernel_broadcast_add() [1/2]

__global__ void walberla::ek::accessor::Vector::kernel_broadcast_add ( gpu::FieldAccessor< double vec,
double const *RESTRICT  u_in 
)

Definition at line 276 of file EK_FieldAccessors_double_precision_CUDA.cu.

References stream.

Referenced by add_to_all(), and add_to_all().

◆ kernel_broadcast_add() [2/2]

__global__ void walberla::ek::accessor::Vector::kernel_broadcast_add ( gpu::FieldAccessor< float vec,
float const *RESTRICT  u_in 
)

Definition at line 276 of file EK_FieldAccessors_single_precision_CUDA.cu.

References stream.

◆ kernel_get() [1/2]

__global__ void walberla::ek::accessor::Vector::kernel_get ( gpu::FieldAccessor< double vec,
double u_out 
)

Definition at line 226 of file EK_FieldAccessors_double_precision_CUDA.cu.

References getLinearIndex(), and stream.

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

◆ kernel_get() [2/2]

__global__ void walberla::ek::accessor::Vector::kernel_get ( gpu::FieldAccessor< float vec,
float u_out 
)

Definition at line 226 of file EK_FieldAccessors_single_precision_CUDA.cu.

References getLinearIndex(), and stream.

◆ kernel_set() [1/2]

__global__ void walberla::ek::accessor::Vector::kernel_set ( gpu::FieldAccessor< double vec,
double const *RESTRICT  u_in 
)

Definition at line 239 of file EK_FieldAccessors_double_precision_CUDA.cu.

References getLinearIndex(), and stream.

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

◆ kernel_set() [2/2]

__global__ void walberla::ek::accessor::Vector::kernel_set ( gpu::FieldAccessor< float vec,
float const *RESTRICT  u_in 
)

Definition at line 239 of file EK_FieldAccessors_single_precision_CUDA.cu.

References getLinearIndex(), and stream.

◆ set() [1/8]

void walberla::ek::accessor::Vector::set ( GhostLayerField< double, uint_t{3u}> *  vec_field,
std::vector< double > const values,
CellInterval const ci 
)
inline

Definition at line 171 of file EK_FieldAccessors_double_precision.h.

◆ set() [2/8]

void walberla::ek::accessor::Vector::set ( GhostLayerField< double, uint_t{3u}> *  vec_field,
Vector3< double > const vec,
Cell const cell 
)
inline

Definition at line 118 of file EK_FieldAccessors_double_precision.h.

◆ set() [3/8]

void walberla::ek::accessor::Vector::set ( GhostLayerField< float, uint_t{3u}> *  vec_field,
std::vector< float > const values,
CellInterval const ci 
)
inline

Definition at line 171 of file EK_FieldAccessors_single_precision.h.

◆ set() [4/8]

void walberla::ek::accessor::Vector::set ( GhostLayerField< float, uint_t{3u}> *  vec_field,
Vector3< float > const vec,
Cell const cell 
)
inline

Definition at line 118 of file EK_FieldAccessors_single_precision.h.

◆ set() [5/8]

void walberla::ek::accessor::Vector::set ( gpu::GPUField< double > *  vec_field,
Vector3< double > const vec,
Cell const cell 
)

Set value on a single cell.

Definition at line 303 of file EK_FieldAccessors_double_precision_CUDA.cu.

References kernel_set(), and stream.

◆ set() [6/8]

void walberla::ek::accessor::Vector::set ( gpu::GPUField< double > *  vec_field,
std::vector< double > const values,
CellInterval const ci 
)

Set values on a cell interval.

Definition at line 367 of file EK_FieldAccessors_double_precision_CUDA.cu.

References kernel_set(), and stream.

◆ set() [7/8]

void walberla::ek::accessor::Vector::set ( gpu::GPUField< float > *  vec_field,
Vector3< float > const vec,
Cell const cell 
)

Set value on a single cell.

Definition at line 303 of file EK_FieldAccessors_single_precision_CUDA.cu.

References kernel_set(), and stream.

◆ set() [8/8]

void walberla::ek::accessor::Vector::set ( gpu::GPUField< float > *  vec_field,
std::vector< float > const values,
CellInterval const ci 
)

Set values on a cell interval.

Definition at line 367 of file EK_FieldAccessors_single_precision_CUDA.cu.

References kernel_set(), and stream.