smod_equil_interchange_modes Submodule

This submodule defines an exponentially stratified medium in Cartesian geometry with a constant gravity term and magnetic shear. The geometry can be overridden in the parfile.

This equilibrium is taken from section 12.1.3 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 =
  • k3 =
  • cte_p0 = 0.25 : pressure, used to set the plasma beta.
  • g = 0.5 : gravitational constant.
  • lambda = 0 : magnetic shear value.
  • alpha = 20 : constant to constrain the density value.

and can all be changed in the parfile.



Variables

Type Visibility Attributes Name Initial
real(kind=dp), private :: B0

Functions

function rho0(x)

Arguments

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

Return Value real(kind=dp)

function drho0(x)

Arguments

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

Return Value real(kind=dp)

function T0()

Arguments

None

Return Value real(kind=dp)

function B02(x)

Arguments

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

Return Value real(kind=dp)

function dB02(x)

Arguments

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

Return Value real(kind=dp)

function B03(x)

Arguments

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

Return Value real(kind=dp)

function dB03(x)

Arguments

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

Return Value real(kind=dp)

function g0()

Arguments

None

Return Value real(kind=dp)


Module Procedures

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

Sets the equilibrium.

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