ORB5X 1.0.0
Performance-portable global electromagnetic gyrokinetic PIC code
Loading...
Searching...
No Matches
orb5x::EfluidModule Class Reference

Electron fluid model (FLU-ORB). More...

#include "efluid.hpp"

Public Types

using FieldP2COperatorHook = void (*)(int matnum, const Kokkos::View<Real***>& in, Kokkos::View<Real***>& out)
using MatmulOperatorHook = void (*)(int matnum, const Kokkos::View<Real***>& in, Kokkos::View<Real***>& out)

Static Public Member Functions

static void apar_rk4 (int i_it)
static void clear_test_operator_hooks ()
static void destroyStaticViews ()
static Kokkos::View< Real *** > get_apar_ohm ()
static void icond_efluid ()
static void init_efluid ()
static void ne_rk4 (int i_it)
static void pe_rk4 (int i_it)
static void push_apar ()
static void push_ne ()
static void push_pe ()
static void restart_fields (int flag, int datn)
static void set_test_operator_hooks (MatmulOperatorHook matmul_hook, FieldP2COperatorHook fieldP2C_hook)
static void sol_phi ()
static void sol_ue ()
static void update_field (int i_it, Kokkos::View< Real *** > &work0, Kokkos::View< Real *** > &work1, Kokkos::View< Real *** > &work2)
static void update_work1 (int iter, Kokkos::View< Real *** > &work1)

Detailed Description

Electron fluid model (FLU-ORB).

This module implements the electron fluid model as an alternative to fully gyrokinetic electron treatment. It solves for electron density (ne), electron parallel velocity (ue), and electron pressure (pe) using fluid equations.

Member Typedef Documentation

◆ FieldP2COperatorHook

using orb5x::EfluidModule::FieldP2COperatorHook = void (*)(int matnum, const Kokkos::View<Real***>& in, Kokkos::View<Real***>& out)

◆ MatmulOperatorHook

using orb5x::EfluidModule::MatmulOperatorHook = void (*)(int matnum, const Kokkos::View<Real***>& in, Kokkos::View<Real***>& out)

Member Function Documentation

◆ apar_rk4()

void orb5x::EfluidModule::apar_rk4 ( int i_it)
static

◆ clear_test_operator_hooks()

void orb5x::EfluidModule::clear_test_operator_hooks ( )
static

◆ destroyStaticViews()

void orb5x::EfluidModule::destroyStaticViews ( )
static

◆ get_apar_ohm()

Kokkos::View< Real *** > orb5x::EfluidModule::get_apar_ohm ( )
static

◆ icond_efluid()

void orb5x::EfluidModule::icond_efluid ( )
static

◆ init_efluid()

void orb5x::EfluidModule::init_efluid ( )
static

◆ ne_rk4()

void orb5x::EfluidModule::ne_rk4 ( int i_it)
static

◆ pe_rk4()

void orb5x::EfluidModule::pe_rk4 ( int i_it)
static

◆ push_apar()

void orb5x::EfluidModule::push_apar ( )
static

◆ push_ne()

void orb5x::EfluidModule::push_ne ( )
static

◆ push_pe()

void orb5x::EfluidModule::push_pe ( )
static

◆ restart_fields()

void orb5x::EfluidModule::restart_fields ( int flag,
int datn )
static

◆ set_test_operator_hooks()

void orb5x::EfluidModule::set_test_operator_hooks ( MatmulOperatorHook matmul_hook,
FieldP2COperatorHook fieldP2C_hook )
static

◆ sol_phi()

void orb5x::EfluidModule::sol_phi ( )
static

◆ sol_ue()

void orb5x::EfluidModule::sol_ue ( )
static

◆ update_field()

void orb5x::EfluidModule::update_field ( int i_it,
Kokkos::View< Real *** > & work0,
Kokkos::View< Real *** > & work1,
Kokkos::View< Real *** > & work2 )
static

◆ update_work1()

void orb5x::EfluidModule::update_work1 ( int iter,
Kokkos::View< Real *** > & work1 )
static

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