MPI-AMRVAC 3.1
The MPI - Adaptive Mesh Refinement - Versatile Advection Code (development version)
Loading...
Searching...
No Matches
Functions/Subroutines | Variables
mod_dust Module Reference

Module for including dust species, which interact with the gas through a drag force. More...

Functions/Subroutines

subroutine, public dust_init (g_rho, g_mom, g_energy)
 
subroutine, public dust_check_params ()
 
subroutine, public dust_check_w (ixil, ixol, w, flag)
 
subroutine, public dust_to_conserved (ixil, ixol, w, x)
 
subroutine, public dust_to_primitive (ixil, ixol, w, x)
 
subroutine, public dust_get_flux (w, x, ixil, ixol, idim, f)
 
subroutine, public dust_get_flux_prim (w, x, ixil, ixol, idim, f)
 
subroutine, public set_dusttozero (ixil, ixol, w, x)
 
subroutine, public dust_add_source (qdt, ixil, ixol, wct, w, x, qsourcesplit, active)
 w[iw]= w[iw]+qdt*S[wCT, x] where S is the source based on wCT within ixO
 
subroutine, public dust_evaluate_implicit (qtc, psa)
 inplace update of psa==>F_im(psa)
 
subroutine, public dust_implicit_update (dtfactor, qdt, qtc, psb, psa)
 Implicit solve of psb=psa+dtfactor*dt*F_im(psb)
 
subroutine, public dust_get_dt (w, ixil, ixol, dtnew, dxd, x)
 Get dt related to dust and gas stopping time (Laibe 2011)
 
subroutine, public dust_get_cmax (w, x, ixil, ixol, idim, cmax, cmin)
 
subroutine, public dust_get_cmax_prim (w, x, ixil, ixol, idim, cmax, cmin)
 

Variables

double precision, public, protected dust_min_rho = -1.0d0
 Minimum dust density as used when dust_small_to_zero=T.
 
double precision, dimension(:), allocatable, public dust_size
 Size of each dust species, dimensionless expression.
 
double precision, dimension(:), allocatable, public dust_density
 Internal density of each dust species, dimensionless expression.
 
integer, public, protected dust_n_species = 0
 The number of dust species.
 
integer, dimension(:), allocatable, public, protected dust_rho
 Indices of the dust densities.
 
integer, dimension(:, :), allocatable, public, protected dust_mom
 Indices of the dust momentum densities.
 
logical, public, protected dust_small_to_zero = .false.
 Set small dust densities to zero to avoid numerical problems.
 
character(len=std_len), public, protected dust_method = 'Kwok'
 What type of dust drag force to use. Can be 'Kwok', 'sticking', 'linear', 'usr' or 'none'.
 

Detailed Description

Module for including dust species, which interact with the gas through a drag force.

Function/Subroutine Documentation

◆ dust_add_source()

subroutine, public mod_dust::dust_add_source ( double precision, intent(in)  qdt,
integer, intent(in)  ixi,
integer, intent(in)  l,
integer, intent(in)  ixo,
  l,
double precision, dimension(ixi^s, 1:nw), intent(in)  wct,
double precision, dimension(ixi^s, 1:nw), intent(inout)  w,
double precision, dimension(ixi^s, 1:ndim), intent(in)  x,
logical, intent(in)  qsourcesplit,
logical, intent(inout)  active 
)

w[iw]= w[iw]+qdt*S[wCT, x] where S is the source based on wCT within ixO

Definition at line 529 of file mod_dust.t.

◆ dust_check_params()

subroutine, public mod_dust::dust_check_params

Definition at line 153 of file mod_dust.t.

◆ dust_check_w()

subroutine, public mod_dust::dust_check_w ( integer, intent(in)  ixi,
integer, intent(in)  l,
integer, intent(in)  ixo,
  l,
double precision, dimension(ixi^s,1:nw), intent(in)  w,
logical, dimension(ixi^s,1:nw), intent(inout)  flag 
)

Definition at line 193 of file mod_dust.t.

◆ dust_evaluate_implicit()

subroutine, public mod_dust::dust_evaluate_implicit ( double precision, intent(in)  qtc,
type(state), dimension(max_blocks), target  psa 
)

inplace update of psa==>F_im(psa)

Definition at line 582 of file mod_dust.t.

◆ dust_get_cmax()

subroutine, public mod_dust::dust_get_cmax ( double precision, dimension(ixi^s, 1:nw), intent(in)  w,
double precision, dimension(ixi^s, 1:ndim), intent(in)  x,
integer, intent(in)  ixi,
integer, intent(in)  l,
integer, intent(in)  ixo,
  l,
integer, intent(in)  idim,
double precision, dimension(ixi^s,1:number_species), intent(inout)  cmax,
double precision, dimension(ixi^s,1:number_species), intent(inout), optional  cmin 
)

Definition at line 1010 of file mod_dust.t.

◆ dust_get_cmax_prim()

subroutine, public mod_dust::dust_get_cmax_prim ( double precision, dimension(ixi^s, 1:nw), intent(in)  w,
double precision, dimension(ixi^s, 1:ndim), intent(in)  x,
integer, intent(in)  ixi,
integer, intent(in)  l,
integer, intent(in)  ixo,
  l,
integer, intent(in)  idim,
double precision, dimension(ixi^s), intent(inout)  cmax,
double precision, dimension(ixi^s), intent(inout), optional  cmin 
)

Definition at line 1034 of file mod_dust.t.

◆ dust_get_dt()

subroutine, public mod_dust::dust_get_dt ( double precision, dimension(ixi^s, 1:nw), intent(in)  w,
integer, intent(in)  ixi,
integer, intent(in)  l,
integer, intent(in)  ixo,
  l,
double precision, intent(inout)  dtnew,
double precision, intent(in)  dx,
double precision, intent(in)  d,
double precision, dimension(ixi^s, 1:ndim), intent(in)  x 
)

Get dt related to dust and gas stopping time (Laibe 2011)

Definition at line 897 of file mod_dust.t.

◆ dust_get_flux()

subroutine, public mod_dust::dust_get_flux ( double precision, dimension(ixi^s, 1:nw), intent(in)  w,
double precision, dimension(ixi^s, 1:ndim), intent(in)  x,
integer, intent(in)  ixi,
integer, intent(in)  l,
integer, intent(in)  ixo,
  l,
integer, intent(in)  idim,
double precision, dimension(ixi^s, nwflux), intent(inout)  f 
)

Definition at line 251 of file mod_dust.t.

◆ dust_get_flux_prim()

subroutine, public mod_dust::dust_get_flux_prim ( double precision, dimension(ixi^s, 1:nw), intent(in)  w,
double precision, dimension(ixi^s, 1:ndim), intent(in)  x,
integer, intent(in)  ixi,
integer, intent(in)  l,
integer, intent(in)  ixo,
  l,
integer, intent(in)  idim,
double precision, dimension(ixi^s, nwflux), intent(inout)  f 
)

Definition at line 274 of file mod_dust.t.

◆ dust_implicit_update()

subroutine, public mod_dust::dust_implicit_update ( double precision, intent(in)  dtfactor,
double precision, intent(in)  qdt,
double precision, intent(in)  qtc,
type(state), dimension(max_blocks), target  psb,
type(state), dimension(max_blocks), target  psa 
)

Implicit solve of psb=psa+dtfactor*dt*F_im(psb)

Definition at line 651 of file mod_dust.t.

◆ dust_init()

subroutine, public mod_dust::dust_init ( integer, intent(in)  g_rho,
integer, dimension(ndir), intent(in)  g_mom,
integer, intent(in)  g_energy 
)

Definition at line 94 of file mod_dust.t.

◆ dust_to_conserved()

subroutine, public mod_dust::dust_to_conserved ( integer, intent(in)  ixi,
integer, intent(in)  l,
integer, intent(in)  ixo,
  l,
double precision, dimension(ixi^s, 1:nw), intent(inout)  w,
double precision, dimension(ixi^s, 1:ndim), intent(in)  x 
)

Definition at line 207 of file mod_dust.t.

Here is the call graph for this function:

◆ dust_to_primitive()

subroutine, public mod_dust::dust_to_primitive ( integer, intent(in)  ixi,
integer, intent(in)  l,
integer, intent(in)  ixo,
  l,
double precision, dimension(ixi^s, 1:nw), intent(inout)  w,
double precision, dimension(ixi^s, 1:ndim), intent(in)  x 
)

Definition at line 227 of file mod_dust.t.

Here is the call graph for this function:

◆ set_dusttozero()

subroutine, public mod_dust::set_dusttozero ( integer, intent(in)  ixi,
integer, intent(in)  l,
integer, intent(in)  ixo,
  l,
double precision, dimension(ixi^s, 1:nw), intent(inout)  w,
double precision, dimension(ixi^s, 1:ndim), intent(in)  x 
)

Definition at line 326 of file mod_dust.t.

Variable Documentation

◆ dust_density

double precision, dimension(:), allocatable, public mod_dust::dust_density

Internal density of each dust species, dimensionless expression.

Definition at line 34 of file mod_dust.t.

◆ dust_method

character(len=std_len), public, protected mod_dust::dust_method = 'Kwok'

What type of dust drag force to use. Can be 'Kwok', 'sticking', 'linear', 'usr' or 'none'.

Definition at line 66 of file mod_dust.t.

◆ dust_min_rho

double precision, public, protected mod_dust::dust_min_rho = -1.0d0

Minimum dust density as used when dust_small_to_zero=T.

Definition at line 28 of file mod_dust.t.

◆ dust_mom

integer, dimension(:, :), allocatable, public, protected mod_dust::dust_mom

Indices of the dust momentum densities.

Definition at line 47 of file mod_dust.t.

◆ dust_n_species

integer, public, protected mod_dust::dust_n_species = 0

The number of dust species.

Definition at line 37 of file mod_dust.t.

◆ dust_rho

integer, dimension(:), allocatable, public, protected mod_dust::dust_rho

Indices of the dust densities.

Definition at line 44 of file mod_dust.t.

◆ dust_size

double precision, dimension(:), allocatable, public mod_dust::dust_size

Size of each dust species, dimensionless expression.

Definition at line 31 of file mod_dust.t.

◆ dust_small_to_zero

logical, public, protected mod_dust::dust_small_to_zero = .false.

Set small dust densities to zero to avoid numerical problems.

Definition at line 50 of file mod_dust.t.