Vlasiator ebf0dd394 on dev (v5.4.0 + 1054 commits)
Loading...
Searching...
No Matches
gpu_acc_semilag.hpp File Reference
Include dependency graph for gpu_acc_semilag.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

void gpu_accelerate_cells (dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > &mpiGrid, const std::vector< CellID > &acceleratedCells, const uint popID, const uint map_order)
 Propagates the distribution function in velocity space of given list of real space cells using a semi-Lagrangian acceleration approach. GPU version.

Function Documentation

◆ gpu_accelerate_cells()

void gpu_accelerate_cells ( dccrg::Dccrg< SpatialCell, dccrg::Cartesian_Geometry > & mpiGrid,
const std::vector< CellID > & acceleratedCells,
const uint popID,
const uint map_order )

Propagates the distribution function in velocity space of given list of real space cells using a semi-Lagrangian acceleration approach. GPU version.

Based on SLICE-3D algorithm: Zerroukat, M., and T. Allen. "A three‐dimensional monotone and conservative semi‐Lagrangian scheme (SLICE‐3D) for transport problems." Quarterly Journal of the Royal Meteorological Society 138.667 (2012): 1640-1651.

Parameters
mpiGridDCCRG container of spatial cells
acceleratedCellsvector of cells for which to perform acceleration
popIDID of the accelerated particle species.
map_orderOrder [0,2] in which vx,vy,vz mappings are performed.

Loop over three velocity dimensions, based on map_order, and accelerate all cells for that dimension.

Definition at line 52 of file gpu_acc_semilag.cpp.

Here is the call graph for this function:
Here is the caller graph for this function: