cosmicray_current

Module

Description

$Id: cosmicrayflux.f90 19193 2012-06-30 12:55:46Z wdobler $

Module for calculating Cosmic Ray Flux.

** AUTOMATIC CPARAM.INC GENERATION ************************ Declare (for generation of cparam.inc) the number of f array variables and auxiliary variables added by this module

CPARAM logical, parameter :: lcosmicrayflux = .true.

MVAR CONTRIBUTION 3 MAUX CONTRIBUTION 0

PENCILS PROVIDED ucr(3); ucrij(3,3); ucrgucr(3); divucr; del2ucr(3)


Quick access

Variables:

amplfcr, b_exp, cs2cr, fcr_const, gamma_cr, idiag_ekincr, idiag_ethmcr, initfcr, j_param, k_para, k_perp, kpara_t, kperp_t, kx_fcr, ky_fcr, kz_fcr, ladvect_fcr, lcosmicrayflux_diffus_dt, lno_crflux_evol, lsubgrid_cr, lupw_fcr, lupw_ucr, ma_param, nu_cr, omegahat, ratio_kpara_kperp, rhocr0, subgrid_bmin, subgrid_brms, subgrid_c1, subgrid_c2, subgrid_k, subgrid_s, tau1, vkpara, vkperp

Routines:

calc_pencils_cosmicrayflux(), dfcr_dt(), init_fcr(), initialize_cosmicrayflux(), pencil_criteria_cosmicrayflux(), pencil_interdep_cosmicrayflux(), read_cosmicrayflux_init_pars(), read_cosmicrayflux_run_pars(), register_cosmicrayflux(), rprint_cosmicrayflux(), write_cosmicrayflux_init_pars(), write_cosmicrayflux_run_pars()

Needed modules

Variables

  • cosmicrayflux/amplfcr [real,optional/default=0.0]
  • cosmicrayflux/cs2cr [real,optional/default=1.0]
  • cosmicrayflux/fcr_const [real,optional/default=0.0]
  • cosmicrayflux/gamma_cr [real,optional/default=1.0]
  • cosmicrayflux/idiag_ekincr [integer,optional/default=0]
  • cosmicrayflux/idiag_ethmcr [integer,optional/default=0]
  • cosmicrayflux/initfcr [character,optional/default='zero']
  • cosmicrayflux/j_param [real,optional/default=0.0]
  • cosmicrayflux/kx_fcr [real,optional/default=1.0]
  • cosmicrayflux/ky_fcr [real,optional/default=1.0]
  • cosmicrayflux/kz_fcr [real,optional/default=1.0]
  • cosmicrayflux/lno_crflux_evol [logical,optional/default=.false.]
  • cosmicrayflux/lupw_ucr [logical,optional/default=.false.]
  • cosmicrayflux/ma_param [real,optional/default=1.0]
  • cosmicrayflux/nu_cr [real,optional/default=0.0]
  • cosmicrayflux/omegahat [real,optional/default=0.0]
  • cosmicrayflux/rhocr0 [real,parameter=1.0]

Subroutines and functions

subroutine  cosmicrayflux/register_cosmicrayflux()

Initialise variables which should know that we solve for the vector potential: ifcr, etc; increase nvar accordingly

1-may-02/wolf: coded

Use :

farraymanager

Call to:

svn_id(), wave(), stop_it(), initial_condition_fcr(), gij(), div_mn(), del2v(), identify_bcs()

subroutine  cosmicrayflux/initialize_cosmicrayflux(f)

Perform any post-parameter-read initialization

24-nov-02/tony: dummy routine - nothing to do at present 20-may-03/axel: reinitalize_aa added

Parameters:

f (mx,my,mz,mfarray) [real]

Call to:

wave(), stop_it(), initial_condition_fcr(), gij(), div_mn(), del2v(), identify_bcs()

subroutine  cosmicrayflux/init_fcr(f)

initialise magnetic field; called from start.f90 AB: maybe we should here call different routines (such as rings) AB: and others, instead of accummulating all this in a huge routine. We have an init parameter (initaa) to stear magnetic i.c. independently.

7-nov-2001/wolf: coded

Parameters:

f (mx,my,mz,mfarray) [real]

Use :

mpicomm, sub, initcond, initialcondition (initial_condition_fcr())

Call to:

wave(), stop_it(), initial_condition_fcr(), gij(), div_mn(), del2v(), identify_bcs()

subroutine  cosmicrayflux/pencil_criteria_cosmicrayflux()

All pencils that the Magnetic module depends on are specified here.

19-nov-04/anders: coded

Call to:

gij(), div_mn(), del2v(), identify_bcs()

subroutine  cosmicrayflux/pencil_interdep_cosmicrayflux(lpencil_in)
Parameters:

lpencil_in (npencils) [logical]

Call to:

gij(), div_mn(), del2v(), identify_bcs()

subroutine  cosmicrayflux/calc_pencils_cosmicrayflux(f, p)

Calculate Cosmicray Flux pencils - to be done

Parameters:
Use :

sub (u_dot_grad(), gij(), div_mn(), del2v())

Call to:

gij(), div_mn(), del2v(), identify_bcs()

subroutine  cosmicrayflux/dfcr_dt(f, df, p)

Cosmicray Flux evolution

08-mar-05/snod: adapted from daa_dt

Parameters:
Use :

sub, debug_io (output_pencil()), mpicomm (stop_it()), diagnostics (sum_mn_name())

Call to:

identify_bcs()

subroutine  cosmicrayflux/read_cosmicrayflux_init_pars(iomsg)
Parameters:

iomsg [character,out]

Use :

file_io (parallel_unit())

subroutine  cosmicrayflux/write_cosmicrayflux_init_pars(unit)
Parameters:

unit [integer,in]

subroutine  cosmicrayflux/read_cosmicrayflux_run_pars(iomsg)
Parameters:

iomsg [character,out]

Use :

file_io (parallel_unit())

subroutine  cosmicrayflux/write_cosmicrayflux_run_pars(unit)
Parameters:

unit [integer,in]

subroutine  cosmicrayflux/rprint_cosmicrayflux(lreset[, lwrite])

Reads and registers print parameters relevant for cosmicrayflux.

3-may-02/axel: coded

27-may-02/axel: added possibility to reset list

Parameters:
  • lreset [logical]

  • lwrite [logical]

Use :

diagnostics (parse_name()), farraymanager (farray_index_append())