Theseus
Compressible flow solver
Loading...
Searching...
No Matches
theseus_kernels.hpp File Reference
#include <cmath>
#include "mfem.hpp"
Include dependency graph for theseus_kernels.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  Theseus
 
namespace  Theseus::Kernels
 

Functions

MFEM_HOST_DEVICE mfem::real_t Theseus::Kernels::rmax (mfem::real_t a, mfem::real_t b)
 
MFEM_HOST_DEVICE mfem::real_t Theseus::Kernels::rmin (mfem::real_t a, mfem::real_t b)
 
MFEM_HOST_DEVICE mfem::real_t Theseus::Kernels::rsqrt (mfem::real_t x)
 
MFEM_HOST_DEVICE mfem::real_t Theseus::Kernels::rlog (mfem::real_t x)
 
MFEM_HOST_DEVICE mfem::real_t Theseus::Kernels::rpow (mfem::real_t x, mfem::real_t y)
 
MFEM_HOST_DEVICE mfem::real_t Theseus::Kernels::rabs (mfem::real_t x)
 
MFEM_HOST_DEVICE void Theseus::Kernels::Normalize (const int dim, mfem::real_t *vec)
 
MFEM_HOST_DEVICE void Theseus::Kernels::Normal (const int dim, const mfem::real_t *vec, mfem::real_t *nor)
 
MFEM_HOST_DEVICE mfem::real_t Theseus::Kernels::Dot (const int dim, const mfem::real_t *vec1, const mfem::real_t *vec2)
 
MFEM_HOST_DEVICE void Theseus::Kernels::Cross (const int dim, const mfem::real_t *vec1, const mfem::real_t *vec2, mfem::real_t *cross)
 
MFEM_HOST_DEVICE void Theseus::Kernels::ComputeMeanVec (const mfem::real_t *a, const mfem::real_t *b, mfem::real_t *out, int n)
 
MFEM_HOST_DEVICE mfem::real_t Theseus::Kernels::ComputeLogMean (mfem::real_t x, mfem::real_t y, mfem::real_t eps)
 
MFEM_HOST_DEVICE mfem::real_t Theseus::Kernels::el_get (const mfem::real_t *u, int dof, int num_eq, int id, int q)
 
MFEM_HOST_DEVICE void Theseus::Kernels::el_gather_state (const mfem::real_t *u, const int dof, const int num_eq, const int id, mfem::real_t *dst)
 
MFEM_HOST_DEVICE void Theseus::Kernels::el_gather_grad_state (const mfem::real_t *grad_state_x, const mfem::real_t *grad_state_y, const mfem::real_t *grad_state_z, const int dim, const int dof, const int neq, const int id, mfem::real_t *dqx, mfem::real_t *dqy, mfem::real_t *dqz)
 
MFEM_HOST_DEVICE void Theseus::Kernels::el_scatter_add (const mfem::real_t *f, const int dof, const int num_eq, const int id, const mfem::real_t scale, mfem::real_t *du)
 
MFEM_HOST_DEVICE void Theseus::Kernels::el_scatter_assign (const mfem::real_t *f, const int dof, const int num_eq, const int id, const mfem::real_t scale, mfem::real_t *du)
 
MFEM_HOST_DEVICE void Theseus::Kernels::el_scale (const mfem::real_t *scale_d, const mfem::real_t fac, const int dof, const int neq, mfem::real_t *el_soln)
 
MFEM_HOST_DEVICE bool Theseus::Kernels::is_bad_value (mfem::real_t x)
 

Variables

constexpr const int Theseus::MAXEQ = 5
 
constexpr const int Theseus::MAXDIM = 3