Graph Framework
|
Hot Plasma Expansion Disperison function. More...
#include <dispersion.hpp>
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) |
Hot plasma expansion dispersion function. | |
Additional Inherited Members | |
![]() | |
typedef T | base |
Type def to retrieve the backend base type. | |
![]() | |
static constexpr bool | safe_math = SAFE_MATH |
Retrieve template parameter of 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. | |
Hot Plasma Expansion Disperison function.
T | Base type of the calculation. |
Z | Z function class. |
SAFE_MATH | Use Safe Math operations. |
|
inlinevirtual |
Hot plasma expansion dispersion function.
Dw = -(1 + Ωe/⍵)n||ve/c(Γ1 + Γ2 + n⟂^2/(2n||)⍵^2/Ωe^2ve/cζΓ5)(1/Z(ζ) + ζ) (1)
Where:
Γ1 = (1 - q)n^2n⟂^2 + (1 - P)(n^2n||^2 - (1 - q)(n^2 + n||^2))
Γ2 = P⍵/Ωen⟂^2(n^2 - (1 - 2q))
Γ5 = P(n^2n||^2 - (1 - q)(n^2 + n||^2) + (1 - 2q)) (4)
ζ = (1 - Ωe/⍵)/(n||ve/c) (5)
P = ⍵pe^2/⍵^2 (6)
q = P/(2(1 + Ωe/⍵)) (7)
ve = Sqrt(2*ne*te/me) (8)
[in] | w | Omega variable. |
[in] | kx | Kx variable. |
[in] | ky | Ky variable. |
[in] | kz | Kz variable. |
[in] | x | x variable. |
[in] | y | y variable. |
[in] | z | z variable. |
[in] | t | Current time. |
[in] | eq | The plasma equilibrium. |
Implements dispersion::dispersion_function< T, SAFE_MATH >.