diagnostics_config Module

A module for handling the configuration of the diagnostics module via the namelist diagnostics_config.



Contents


Variables

Type Visibility Attributes Name Initial
real, private, parameter :: initial_value = -1.0
logical, public :: override_screen_printout_options = .false.

Used for testing... causes screen printout to be generated regardless of the values of print_line and print_flux_line if set to true

logical, private :: initialized = .false.

Derived Types

type, public ::  results_summary_type

A type for storing the current results of the simulation

Components

Type Visibility Attributes Name Initial
real, public :: phi2 = initial_value
real, public :: apar2 = initial_value
real, public :: bpar2 = initial_value
real, public :: total_heat_flux = initial_value
real, public :: total_momentum_flux = initial_value
real, public :: total_particle_flux = initial_value
real, public :: max_growth_rate = initial_value
real, public :: diffusivity = initial_value
real, public, dimension(:), allocatable :: species_es_heat_flux
real, public, dimension(:), allocatable :: species_apar_heat_flux
real, public, dimension(:), allocatable :: species_bpar_heat_flux
real, public, dimension(:), allocatable :: species_heat_flux
real, public, dimension(:), allocatable :: species_momentum_flux
real, public, dimension(:), allocatable :: species_particle_flux
real, public, dimension(:), allocatable :: species_energy_exchange
real, public, dimension(:), allocatable :: species_heat_flux_avg
real, public, dimension(:), allocatable :: species_momentum_flux_avg
real, public, dimension(:), allocatable :: species_particle_flux_avg
real, public, dimension(:), allocatable :: species_heating
real, public, dimension(:), allocatable :: species_heating_avg
complex, public, dimension(:,:), allocatable :: omega_average
complex, public, dimension(:,:), allocatable :: zonal_transfer

type, public ::  diagnostics_type

A type for storing the diagnostics configuration, a reference to the output file, and current results of the simulation

Components

Type Visibility Attributes Name Initial
type(diagnostics_ascii_type), public :: ascii_files
type(results_summary_type), public :: current_results
integer, public :: file_id

NetCDF file ID

integer, public :: nout = 1

Current timestep

integer, public :: istep
integer, public :: verbosity = 3
logical, public :: create
logical, public :: writing
logical, public :: distributed
logical, public :: parallel
logical, public :: exit
logical, public :: vary_vnew_only
logical, public :: calculate_fluxes
logical, public :: appending
real, public :: user_time
real, public :: user_time_old
real, public :: start_time
real, public, dimension(:), allocatable :: fluxfac
integer, public :: nwrite
integer, public :: nwrite_mult
logical, public :: write_any
logical, public :: append_old
logical, public :: enable_parallel
logical, public :: serial_netcdf4
integer, public :: igomega
logical, public :: print_line
logical, public :: print_flux_line
logical, public :: write_line
logical, public :: write_flux_line
logical, public :: write_fields
logical, public :: write_phi_over_time
logical, public :: write_apar_over_time
logical, public :: write_bpar_over_time
logical, public :: make_movie
logical, public :: dump_fields_periodically
logical, public :: write_moments
logical, public :: write_full_moments_notgc
logical, public :: write_ntot_over_time
logical, public :: write_density_over_time
logical, public :: write_upar_over_time
logical, public :: write_tperp_over_time
logical, public :: write_fluxes
logical, public :: write_fluxes_by_mode
logical, public :: write_symmetry
logical, public :: write_nl_flux_dist
logical, public :: write_parity
logical, public :: write_omega
logical, public :: write_ql_metric
integer, public :: navg
real, public :: omegatinst
real, public :: omegatol
logical, public :: exit_when_converged
logical, public :: write_verr
logical, public :: write_cerr
logical, public :: write_max_verr
integer, public :: ncheck
logical, public :: write_heating
logical, public :: write_ascii
logical, public :: write_gyx
logical, public :: write_g
integer, public :: conv_nstep_av
real, public :: conv_test_multiplier
integer, public :: conv_min_step
integer, public :: conv_max_step
integer, public :: conv_nsteps_converged
logical, public :: use_nonlin_convergence
logical, public :: write_cross_phase
logical, public :: write_correlation
logical, public :: write_correlation_extend
logical, public :: write_jext
logical, public :: write_lorentzian
logical, public :: write_eigenfunc
logical, public :: write_final_fields
logical, public :: write_kpar
logical, public :: write_final_epar
logical, public :: write_final_db
logical, public :: write_final_moments
logical, public :: write_final_antot
logical, public :: write_gs
integer, public :: nsave
logical, public :: save_for_restart
logical, public :: save_many
logical, public :: file_safety_check
logical, public :: save_distfn
logical, public :: save_glo_info_and_grids
logical, public :: save_velocities
logical, public :: write_zonal_transfer
logical, public :: write_kinetic_energy_transfer
logical, public :: write_collisional
logical, public :: write_omavg
logical, public :: ob_midplane
logical, public :: write_avg_moments
logical, public :: dump_check1
logical, public :: dump_check2
integer, public :: nmovie
integer, public :: nc_sync_freq

Subroutines

public subroutine init_diagnostics_config(gnostics, new_gs2_diagnostics_config_in)

Arguments

Type IntentOptional Attributes Name
type(diagnostics_type), intent(inout) :: gnostics
type(diagnostics_config_type), intent(in), optional :: new_gs2_diagnostics_config_in

public subroutine finish_diagnostics_config(gnostics)

Arguments

Type IntentOptional Attributes Name
type(diagnostics_type), intent(inout) :: gnostics

private subroutine allocate_current_results(gnostics)

Arguments

Type IntentOptional Attributes Name
type(diagnostics_type), intent(inout) :: gnostics

private subroutine deallocate_current_results(gnostics)

Arguments

Type IntentOptional Attributes Name
type(diagnostics_type), intent(inout) :: gnostics

public subroutine read_parameters(gnostics, new_gs2_diagnostics_config_in, warn_nonfunctional)

Arguments

Type IntentOptional Attributes Name
type(diagnostics_type), intent(out) :: gnostics
type(diagnostics_config_type), intent(in), optional :: new_gs2_diagnostics_config_in
logical, intent(in), optional :: warn_nonfunctional