init_param Subroutine

public subroutine init_param()

Uses

  • proc~~init_param~~UsesGraph proc~init_param init_param module~alps_var alps_var proc~init_param->module~alps_var mpi mpi module~alps_var->mpi

Read in system parameters from *.in file. Only processor 0 calls this routine:

Arguments

None

Calls

proc~~init_param~~CallsGraph proc~init_param init_param proc~alps_error alps_error proc~init_param->proc~alps_error proc~bm_read bM_read proc~init_param->proc~bm_read proc~fit_read fit_read proc~init_param->proc~fit_read proc~get_indexed_double_namelist_unit get_indexed_double_namelist_unit proc~init_param->proc~get_indexed_double_namelist_unit proc~get_indexed_namelist_unit get_indexed_namelist_unit proc~init_param->proc~get_indexed_namelist_unit proc~get_unused_unit~2 get_unused_unit proc~init_param->proc~get_unused_unit~2 proc~map_read map_read proc~init_param->proc~map_read proc~poly_read poly_read proc~init_param->proc~poly_read proc~scan_read scan_read proc~init_param->proc~scan_read proc~solution_read solution_read proc~init_param->proc~solution_read proc~spec_read spec_read proc~init_param->proc~spec_read mpi_abort mpi_abort proc~alps_error->mpi_abort proc~output_time output_time proc~alps_error->proc~output_time proc~get_indexed_double_namelist_unit->proc~alps_error proc~get_indexed_double_namelist_unit->proc~get_unused_unit~2 proc~input_unit_exist~2 input_unit_exist proc~get_indexed_double_namelist_unit->proc~input_unit_exist~2 proc~input_unit~2 input_unit proc~get_indexed_double_namelist_unit->proc~input_unit~2 proc~get_indexed_namelist_unit->proc~alps_error proc~get_indexed_namelist_unit->proc~get_unused_unit~2 proc~get_indexed_namelist_unit->proc~input_unit_exist~2 proc~get_indexed_namelist_unit->proc~input_unit~2

Called by

proc~~init_param~~CalledByGraph proc~init_param init_param program~alps alps program~alps->proc~init_param

Namelists

Namelist system


Variables

Name Type Default Description
kperp double precision None

Perpendicular wavenumber, normalized by inverse reference inertial length, .

kpar double precision None

Parallel wavenumber, normalized by inverse reference inertial length, .

nspec integer None

Number of plasma components.

nroots integer None

Number of dispersion solutions under consideration.

use_map logical None

Choice of: (T) searching for roots over a map in complex frequency space, via map_read; (F) input (nroots) guesses for solutions, via solution_read

writeOut logical .true.

Write or suppress output to screen.

nperp integer None

Number of perpendicular momentum space grid points, .

npar integer None

Number of parallel momentum space grid points, .

ngamma integer 100

Number of grid points in relativitic , (Eqn. 3.14).

npparbar integer 200

Number of grid points in dimensionless paralell momentum , .

vA double precision None

Alfven Velocity, normalized to speed of light, .

arrayName character(len=75) None

Name of input files for distributions.

Bessel_zero double precision 1.d-45

Calculate Bessel functions until the maximum is less than this value.

numiter integer 50

Maximum number of iterations in secant method.

D_threshold double precision 1.d-5

Minimum threshold for secant method.

D_prec double precision 1.d-5

Size of bounding region for secant method.

D_gap double precision 1.d-5

Size of allowable difference between roots.

positions_principal integer 5

Number of parallel momentum steps distant from the resonant momentum included in the numerical calculation of Eqn 3.5, .

Tlim double precision 0.01d0

Threshold for analytical principal-value integration for evaluating Eqn 3.6 and 3.7, .

maxsteps_fit integer 500

Maximum number of fitting iterations.

lambda_initial_fit double precision 1.d0

Inital Levenberg-Marquardt damping parameter.

lambdafac_fit double precision 1.d1

Adjustment factor for Levenberg-Marquardt damping parameter.

epsilon_fit double precision 1.d-8

Convergence for Levenberg-Marquardt fit.

fit_check logical .true.

If true, output fitted functions to ASCII file for each species.

determine_minima logical .true.

If true, after map search, determine minima and refine solutions.

n_resonance_interval integer 100

How many steps should be used to integrate around the resonance, , used for integrating near poles (see section 3.1).

scan_option integer 1

Select case for scans; 1) consecutive scans along input paths in wavevector space, 2) double scans of two selected parameters.

n_scan integer 0

Number of wavevector scans. Must be set to 2 for scan_option=2; Must be 1 or larger for scan_option=1. 0 turns off wavevector scans.