smod_equil_RTI_theta_pinch Submodule

This submodule defines Rayleigh-Taylor instabilities in rotating theta pinches. The straight cylinder approximation is used with a constant angular frequency. Density and pressure profiles decrease over the domain, with a uni-directional increasing magnetic field profile. Mode numbers correspond to HD Rayleigh-Taylor instabilities, while represent MHD RTIs. The geometry is hardcoded to 'cylindrical', the domain is forced to through division by x_end.

This equilibrium is taken from section IV in Goedbloed, J. P. "The Spectral Web of stationary plasma equilibria. II. Internal modes." Physics of Plasmas 25.3 (2018): 032110. and also appears in section 13.4, figs. 13.11 to 13.15 in Goedbloed, H., Keppens, R., & Poedts, S. (2019). Magnetohydrodynamics of Laboratory and Astrophysical Plasmas. Cambridge University Press. DOI.

Note

Default values are given by

  • k2 = 1
  • k3 = 0 : so HD RTI
  • cte_rho0 = 1 : maximum density value.
  • alpha = 2 : represents the stretching parameter.
  • delta = 1/6 : represents the magnetic field deviation parameter.
  • r0 = 0 : represents the normalised radius at maximum density.

and can all be changed in the parfile.



Variables

Type Visibility Attributes Name Initial
real(kind=dp), private :: width
real(kind=dp), private :: B_inf
real(kind=dp), private :: bigO

Functions

function fx(r)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in) :: r

Return Value real(kind=dp)

function dfx(r)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in) :: r

Return Value real(kind=dp)

function rho0(r)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in) :: r

Return Value real(kind=dp)

function drho0(r)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in) :: r

Return Value real(kind=dp)

function T0()

Arguments

None

Return Value real(kind=dp)

function v02(r)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in) :: r

Return Value real(kind=dp)

function dv02()

Arguments

None

Return Value real(kind=dp)

function B03(r)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in) :: r

Return Value real(kind=dp)

function dB03(r)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in) :: r

Return Value real(kind=dp)


Module Procedures

module procedure /home/runner/work/legolas/legolas/docs/ford/module/smod_equil_rti_theta_pinch.html RTI_theta_pinch_eq module subroutine RTI_theta_pinch_eq(settings, grid, background, physics)

Arguments

Type IntentOptional Attributes Name
type(settings_t), intent(inout) :: settings
type(grid_t), intent(inout) :: grid
type(background_t), intent(inout) :: background
type(physics_t), intent(inout) :: physics