ExtractVelocityKernel Struct ReferenceΒΆ

adc_cpp: pops::detail::ExtractVelocityKernel Struct Reference
adc_cpp 0.3.0
Model-free C++23 core for coupled hyperbolic-elliptic systems on adaptive (AMR) meshes, with MPI and GPU (Kokkos) backends
pops::detail::ExtractVelocityKernel Struct Reference

Extracts the velocity v = (mx, my) / rho from the state (Density / MomentumX / MomentumY roles) into two scalar fields vx, vy. More...

#include <schur_source_kernels.hpp>

+ Collaboration diagram for pops::detail::ExtractVelocityKernel:

Public Member Functions

POPS_HD void operator() (int i, int j) const
 

Public Attributes

ConstArray4 st
 
Array4 vx
 
Array4 vy
 
int c_rho
 
int c_mx
 
int c_my
 

Detailed Description

Extracts the velocity v = (mx, my) / rho from the state (Density / MomentumX / MomentumY roles) into two scalar fields vx, vy.

rho = 0 -> velocity 0 (safeguard; in practice the source freezes rho > 0). NAMED device-clean functor.

Member Function Documentation

◆ operator()()

POPS_HD void pops::detail::ExtractVelocityKernel::operator() ( int  i,
int  j 
) const
inline

Member Data Documentation

◆ c_mx

int pops::detail::ExtractVelocityKernel::c_mx

◆ c_my

int pops::detail::ExtractVelocityKernel::c_my

◆ c_rho

int pops::detail::ExtractVelocityKernel::c_rho

◆ st

ConstArray4 pops::detail::ExtractVelocityKernel::st

◆ vx

Array4 pops::detail::ExtractVelocityKernel::vx

◆ vy

Array4 pops::detail::ExtractVelocityKernel::vy

The documentation for this struct was generated from the following file: