vars Module

Contains all global variables.


Used by

  • module~~vars~~UsedByGraph module~vars vars proc~map_read map_read proc~map_read->module~vars proc~om_read om_read proc~om_read->module~vars proc~radial_read radial_read proc~radial_read->module~vars proc~radial_read_0 radial_read_0 proc~radial_read_0->module~vars proc~radial_read_1 radial_read_1 proc~radial_read_1->module~vars proc~radial_read_2 radial_read_2 proc~radial_read_2->module~vars proc~radial_read_3 radial_read_3 proc~radial_read_3->module~vars proc~radial_read_4 radial_read_4 proc~radial_read_4->module~vars proc~radial_read_5 radial_read_5 proc~radial_read_5->module~vars proc~radial_read_6 radial_read_6 proc~radial_read_6->module~vars proc~read_guess_input read_guess_input proc~read_guess_input->module~vars proc~read_in_params read_in_params proc~read_in_params->module~vars proc~read_map_input read_map_input proc~read_map_input->module~vars proc~read_radial_input read_radial_input proc~read_radial_input->module~vars proc~read_scan_input read_scan_input proc~read_scan_input->module~vars proc~scan_read scan_read proc~scan_read->module~vars proc~spec_read spec_read proc~spec_read->module~vars program~plume plume program~plume->module~vars

Variables

Type Visibility Attributes Name Initial
real, public, target :: betap

Reference Species Parallel Thermal-to-Magnetic Pressure Ratio. 8 pi n_ref T_ref,par/B^2

real, public, target :: kperp

Wavenumber perpendicular to B0, normalized to reference gyroradius. k_perp rho_ref = k_perp w_perp,ref/Omega_ref

real, public, target :: kpar

Wavenumber parallel to B0, normalized to reference gyroradius. k_perp rho_ref = k_perp w_t,ref,perp/Omega_ref

real, public, target :: vtp

Parallel reference thermal velocity normalized to the speed of light. v_t,ref,par/c

integer, public :: nspec = 3

Number of species/components to be included in calculation.

integer, public :: nscan = 0

Number of parameter scans.

type(specie), public, dimension (:), allocatable, target :: spec

Dimensionless Species/Component Parameters.

type(specie), public, dimension (:,:), allocatable, target :: rad_spec

Array for Varying Species/Component Parameters (under development).

type(scanner), public, dimension (:), allocatable :: scan

Array of scan parameters for all scans to be calculated.

type(scanner), public, dimension (:), allocatable :: rad_scan

Array of scan parameters for extended parameter scans (under development).

real, public, pointer :: sw

Parameter Sweep parameter values.

real, public, pointer :: sw2

Parameter Sweep parameter values.

real, public, pointer :: sw3

Parameter Sweep parameter values.

real, public, pointer :: sw4

Parameter Sweep parameter values.

complex, public, dimension(:,:,:), allocatable :: susc

Susceptibility tensor. (1:nspec,1:3,1:3) with the 3x3 subarray arranged as: (1,1) xx; (1,2) xy; (1,3) xz; (2,1) yx; (2,2) yy; (2,3) yz; (3,1) zx; (3,2) zy; (3,3) zz;

complex, public, dimension(:,:,:,:), allocatable :: susc_low

low-n components of the susceptibility tensor. (1:nspec,1:3,1:3,0:1) with the 3x3 subarray arranged as susc. The final index contains the n=0 and n=\pm 1 contributions.

logical, public :: low_n = .true.

Toggle on low-n susceptibility suplementary calculation.

logical, public :: new_low_n = .true.

Flag to use Revised low_n for LD/TTD separation. This modifies the Collisionless Power Absorption Calculation! IF TRUE THEN low_n MUST BE TRUE TOO! (GGH: 1/18/23)

complex, public, dimension(3,3) :: lam

Matrix in Wave equation.

integer, public :: option

Selection for the type of dispersion calculation to be undertaken. -1: Calculate disp(om) at a single (omega, gamma) 0: Calculate Roots for input plasma parameters. 1: Calculate Roots for input plasma parameters or Reads in root value and then scan over plasma parameters, with range and type specified in .in file. 2: Calculate Roots for input plasma parameters or Reads in root value and then scan over two-dimensional plasma parameters space, with range and type specified in .in file. 3: deprecated 4: Make multiple maps of complex frequency space. 5: Find roots for parameters along a prescribed path Path is set by solar wind models, with values calculated and output by helper function (in development, the radial scan function.).

logical, public :: writeOut

Enables or suppressed output to screen.

character(len=100), public :: dataName

Data Subdirectory where output is stored.

character(len=100), public :: outputName

Common name string for output files.

character(len=100), public :: print_Name

Additional string for output files.

logical, public :: use_map

Determines method for selecting initial solutions. T-> Use map routine to determine solutions in defined regions of complex frequency space. Map parameters determined by &maps list in .in file. F-> Read nroot_max initial guesses for complex frequency solutions. Guesses determined by &guess_N lists in .in file.

logical, public :: loggridw

Set log or linear spacing for real frequency axis of the map search.

logical, public :: loggridg

Set log or linear spacing for imaginary frequency axis of the map search.

real, public :: omi

Lower bound on real frequency map search axis.

real, public :: omf

Upper bound on real frequency map search axis.

real, public :: gami

Lower bound on imaginary frequency map search axis.

real, public :: gamf

Upper bound on imaginary frequency map search axis.

logical, public :: positive_roots = .false.

Consider all solutions (false) or only solutions with positive real frequencies (true).

integer, public, parameter :: nr = 128

Number of grid points along real frequency axis

integer, public, parameter :: ni = 128

Number of grid points along imaginary frequency axis

integer, public, parameter :: numroots = 500

Maximum number of minima to keep for a further refinement from a map search.

integer, public :: nRad

Number of points to scan in radial models.

character(len=100), public :: modelName

Input file name for radial model

real, public, dimension (:), allocatable :: radius

Radial distance from the Sun, in Rs.

real, public, dimension (:), allocatable :: beta_rad
real, public, dimension (:), allocatable :: vtp_rad
logical, public :: radial_heating
logical, public :: radial_eigen
integer, public :: k_scan

Determines wavevector values to include in radial scan 0: single point in kperp, kpar space 1: fixed kperp, scan over kpar 2: fixed kpar, scan over kperp 3: fixed theta, scan over k 4: fixed k, scan over theta 5: plane scan over (kperp, kpar) 6: plane scan over (k, theta)

real, public :: pi

4.*atan(1)

integer, public :: nroots

Number of roots found.

real, public, dimension(1:2,1:numroots) :: wroots

Real and Imaginary components of each solution.

integer, public :: nroot_max

Input specified nroots to follow.


Derived Types

type, public ::  specie

Species Input Parameters

Components

Type Visibility Attributes Name Initial
real, public :: tau_s

Relative Temperature ratio.

real, public :: mu_s

Relative Mass ratio.

real, public :: alph_s

Temperature Anisotropy.

real, public :: Q_s

Relative charge ratio.

real, public :: D_s

Density Ratio.

real, public :: vv_s

Relative Drift, normalized to reference Alfven velocity with .

type, public ::  scanner

Parameters to control parameter scans.

Components

Type Visibility Attributes Name Initial
real, public :: range_i

Initial value of scanned parameter.

real, public :: range_f

Final value of scanned parameter.

logical, public :: log_scan

Linear or Logarithmic scan. T-> log, F-> linear scan

logical, public :: heat_s

Controls supplementary heating calculation. T-> Heating Calculation; F-> No heating calculation.

logical, public :: eigen_s

Controls supplementary eigenfunction calculation. T-> Eigenfunction calculation; F-> No eigenfunction Calculation.

logical, public :: tensor_s

Controls supplementary output of susceptibility tensor. T-> Output tensor; F-> Supress output.

integer, public :: type_s

Defines nature of parameter scans. Style: -1- Global two component Scan: Type: 0 k_0-> k_1 1 theta_0 -> theta_1 2 k_fixed angle Style: 0- Global Scan: Type: 0 kperp 1 kpar 2 betap 3 vtp Style: 1-nspec-> Species Scan: Type: 0 tau_s 1 mu_s 2 alph_s 3 Q_s 4 D_s 5 vv_s

integer, public :: style_s

Defines nature of parameter scan. -1: Global two-component scan 0: Global one-component 1 to nspec: species specific parameter scan

integer, public :: n_scan

Number of output steps. n_scan*n_res Total steps taken.

integer, public :: n_res

Scan resolution between output steps. n_scan*n_res Total steps taken.

real, public :: diff

Step size for scanned parameter. Either (swf-swi)/(n_scann_res) or (log10(swf)-log10(swi))/(n_scann_res).