smod_equil_MRI Submodule

This submodule defines magneto-rotational instabilities in an accretion disk. Due to the special nature of this equilibrium x_start is hardcoded to one and can not be overridden in the parfile, the same goes for the geometry which is hardcoded to 'cylindrical'. The outer edge can be chosen freely. This equilibrium is chosen in such a way that the angular rotation is of order unity, implying Keplerian rotation. The thin-disk approximation is valid with small magnetic fields, but still large enough to yield magneto-rotational instabilities. Gravity is assumed to go like .

This equilibrium is taken from section V 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.5, fig. 13.7 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 = 0
  • k3 = 70
  • beta = 100 : parameter .
  • tau = 1 : represents parameter
  • nu = 0.1 : represents parameter
  • x_end = 2 : fixes the parameter

and can all be changed in the parfile.



Variables

Type Visibility Attributes Name Initial
real(kind=dp), private :: Bth1
real(kind=dp), private :: Bz1
real(kind=dp), private :: p1
real(kind=dp), private :: delta
real(kind=dp), private :: epsilon
real(kind=dp), private :: mu1
real(kind=dp), private :: vth1

Functions

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(r)

Arguments

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

Return Value real(kind=dp)

function dT0(r)

Arguments

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

Return Value real(kind=dp)

function p0(r)

Arguments

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

Return Value real(kind=dp)

function dp0(r)

Arguments

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

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(r)

Arguments

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

Return Value real(kind=dp)

function B02(r)

Arguments

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

Return Value real(kind=dp)

function dB02(r)

Arguments

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

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)

function g0(x)

Arguments

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

Return Value real(kind=dp)


Module Procedures

module procedure /home/runner/work/legolas/legolas/docs/ford/module/smod_equil_mri.html MRI_accretion_eq module subroutine MRI_accretion_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