Graph Framework
Loading...
Searching...
No Matches
dispersion::cold_plasma_expansion< T, SAFE_MATH > Class Template Reference

Cold Plasma expansion disperison function. More...

#include <dispersion.hpp>

Inheritance diagram for dispersion::cold_plasma_expansion< T, SAFE_MATH >:
dispersion::physics< T, SAFE_MATH > dispersion::dispersion_function< T, SAFE_MATH >

Public Member Functions

virtual graph::shared_leaf< T, SAFE_MATH > D (graph::shared_leaf< T, SAFE_MATH > w, graph::shared_leaf< T, SAFE_MATH > kx, graph::shared_leaf< T, SAFE_MATH > ky, graph::shared_leaf< T, SAFE_MATH > kz, graph::shared_leaf< T, SAFE_MATH > x, graph::shared_leaf< T, SAFE_MATH > y, graph::shared_leaf< T, SAFE_MATH > z, graph::shared_leaf< T, SAFE_MATH > t, equilibrium::shared< T, SAFE_MATH > &eq)
 Cold Plasma expansion Disperison function.
 

Additional Inherited Members

- Public Types inherited from dispersion::dispersion_function< T, SAFE_MATH >
typedef T base
 Type def to retrieve the backend base type.
 
- Static Public Attributes inherited from dispersion::dispersion_function< T, SAFE_MATH >
static constexpr bool safe_math = SAFE_MATH
 Retrieve template parameter of safe math.
 
- Protected Attributes inherited from dispersion::physics< T, SAFE_MATH >
const T epsion0 = 8.8541878138E-12
 Vacuum permitivity.
 
const T mu0 = M_PI*4.0E-7
 Vacuum permeability.
 
const T q = 1.602176634E-19
 Fundamental charge.
 
const T me = 9.1093837015E-31
 Electron mass.
 
const T c = static_cast<T> (1.0)/std::sqrt(epsion0*mu0)
 Speed of light.
 

Detailed Description

template<jit::float_scalar T, bool SAFE_MATH = false>
class dispersion::cold_plasma_expansion< T, SAFE_MATH >

Cold Plasma expansion disperison function.

Template Parameters
TBase type of the calculation.
SAFE_MATHUse Safe Math operations.

Member Function Documentation

◆ D()

template<jit::float_scalar T, bool SAFE_MATH = false>
virtual graph::shared_leaf< T, SAFE_MATH > dispersion::cold_plasma_expansion< T, SAFE_MATH >::D ( graph::shared_leaf< T, SAFE_MATH >  w,
graph::shared_leaf< T, SAFE_MATH >  kx,
graph::shared_leaf< T, SAFE_MATH >  ky,
graph::shared_leaf< T, SAFE_MATH >  kz,
graph::shared_leaf< T, SAFE_MATH >  x,
graph::shared_leaf< T, SAFE_MATH >  y,
graph::shared_leaf< T, SAFE_MATH >  z,
graph::shared_leaf< T, SAFE_MATH >  t,
equilibrium::shared< T, SAFE_MATH > &  eq 
)
inlinevirtual

Cold Plasma expansion Disperison function.

Dc = -P/2(1 + Ωe/⍵)Γ0 + (1 - Ωe^2/⍵^2)Γ1 (1)

Γ0 = n⟂^2(n^2 - 2(1 - 2q)) + (1 - P)(2(1 - 2q) - (n^2 + n||^2)) (2)

Γ1 = n⟂^2((1 - q)n^2 - (1 - 2q))

  • (1 - P)(n^2n||^2 - (1 - q)(n^2 + n||^2) + (1 - 2q)) (3)

P = ⍵pe^2/⍵^2 (4)

q = P/(2(1 + Ωe/⍵)) (5)

Parameters
[in]wOmega variable.
[in]kxKx variable.
[in]kyKy variable.
[in]kzKz variable.
[in]xx variable.
[in]yy variable.
[in]zz variable.
[in]tCurrent time.
[in]eqThe plasma equilibrium.

Implements dispersion::dispersion_function< T, SAFE_MATH >.


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