V3FIT
Modules | Functions/Subroutines | Variables
v3fit_input.f File Reference

Contains module v3fit_input. More...

Go to the source code of this file.

Modules

module  v3fit_input
 This file contains all the variables and maximum sizes of the inputs for a v3fit namelist input file. The module contained within does not represent an object instance. Instead all variables are contained in a global context. This is required due to limitations of FORTRAN 95 and namelist inputs. Any information needed by a V3FIT task should be copied to a v3fit_context object. All non-parameters are inputs to the namelist input file.
 

Functions/Subroutines

subroutine v3fit_input::v3fit_input_read_namelist (namelist_file)
 Reads the namelist input file. More...
 
integer function v3fit_input::v3fit_input_find_scale_index (index)
 Finds the index of the scaling spec. More...
 
integer function v3fit_input::v3fit_input_find_offset_index (index)
 Finds the index of the offset spec. More...
 
subroutine v3fit_input::v3fit_input_write_namelist (namelist_file)
 Write the namelist input file. More...
 

Variables

integer, parameter v3fit_input::v3fit_max_diagnostics = 1000
 Maximum number of diagnostic signals.
 
integer, parameter v3fit_input::v3fit_max_limiters = 1000
 Maximum number of geometric signals.
 
integer, parameter v3fit_input::v3fit_max_priors = 1000
 Maximum number of prior signals.
 
integer, parameter v3fit_input::v3fit_max_combinations = 1000
 Maximum number of combination signals.
 
integer, parameter v3fit_input::v3fit_max_signals = v3fit_max_diagnostics + v3fit_max_limiters + v3fit_max_priors + v3fit_max_combinations + max_gaussprocess
 Maximum number of total signals.
 
integer, parameter v3fit_input::v3fit_max_parameters = 100
 Maximum number of reconstruction parameters.
 
integer, parameter v3fit_input::v3fit_max_spec_size = 150
 Maximum size of the easy specification arrays. More...
 
integer, parameter v3fit_input::v3fit_max_lif_size = 100
 Maximum number of phi positions for limiters.
 
integer, parameter v3fit_input::v3fit_max_cos_size = 100
 Maximum number of signals a combination signal can refer to.
 
integer, parameter v3fit_input::v3fit_step_name_length = 4
 Reconstruction step name length.
 
character(len=path_length) v3fit_input::main_nli_filename = ''
 File name for main namelist input. Namelist v3fit_main_nli definition.
 
character(len=path_length) v3fit_input::vmec_nli_filename = ''
 File name for VMEC namelist input.
 
character(len=path_length) v3fit_input::vmec_wout_input = ''
 File name for the VMEC wout input.
 
character(len=path_length) v3fit_input::vacuum_nli_filename = ''
 File name for a vacuum namelist input.
 
character(len=path_length) v3fit_input::siesta_nli_filename = ''
 File name for a siesta namelist input.
 
character(len=path_length) v3fit_input::siesta_restart_filename = ''
 File name for a siesta restart file.
 
character(len=path_length) v3fit_input::mdsig_list_filename = ''
 File name for list of MDSIG files.
 
character(len=path_length) v3fit_input::sxrch_dot_filename = ''
 File holding sxr chord information.
 
character(len=path_length) v3fit_input::ipch_dot_filename = ''
 File holding interferometry-polarimetry information. Inteferometry/Polarimetry Diagnostic Dot File.
 
character(len=path_length) v3fit_input::thscte_dot_filename = ''
 File holding Thomson Scattering information.
 
character(len=path_length) v3fit_input::mse_dot_filename = ''
 File holding motional stark effect information.
 
character(len=path_length) v3fit_input::ece_dot_filename = ''
 File holding ECE information.
 
character(len=path_length) v3fit_input::sxrem_ratio_dot_filename = ''
 File holding soft x-ray ratio information.
 
character(len=path_length) v3fit_input::limiter_grid_file = ''
 Limiter grid netcdf file.
 
integer v3fit_input::na_s_desc = v3fit_max_signals
 Maximum number of signals to create. More...
 
character(len=data_name_length) v3fit_input::my_task = ''
 The v3fit task. Possible values are. More...
 
character(len=p_type_len) v3fit_input::pp_ne_ptype = 'none'
 Model electron density profile, parameterized profile type. More...
 
real(rprec), dimension(ilb_b:iub_b) v3fit_input::pp_ne_b = 0.0
 Array of b_coefficients for the electron density profile. More...
 
real(rprec), dimension(iub_asf) v3fit_input::pp_ne_as = 0.0
 Array of as_coefficients electron density splines. More...
 
real(rprec), dimension(iub_asf) v3fit_input::pp_ne_af = 0.0
 Array of af_coefficients electron density splines. More...
 
character(len=p_type_len) v3fit_input::pp_sxrem_ptype = 'none'
 
real(rprec), dimension(ilb_b:iub_b) v3fit_input::pp_sxrem_b = 0.0
 
real(rprec), dimension(iub_asf) v3fit_input::pp_sxrem_as = 0.0
 
real(rprec), dimension(iub_asf) v3fit_input::pp_sxrem_af = 0.0
 
integer v3fit_input::num_sxrem_p = 1
 Number of sxrem profiles.
 
character(len=p_type_len), dimension(max_sxrem_profiles) v3fit_input::pp_sxrem_ptype_a = 'none'
 Model soft x-ray emissvity profile, parameterized profile type. More...
 
real(rprec), dimension(max_sxrem_profiles, ilb_b:iub_b) v3fit_input::pp_sxrem_b_a = 0.0
 Array of b_coefficients for the soft x-ray emissvity profile. More...
 
real(rprec), dimension(max_sxrem_profiles, iub_asf) v3fit_input::pp_sxrem_as_a = 0.0
 Array of as_coefficients soft x-ray emissvity profile splines. More...
 
real(rprec), dimension(max_sxrem_profiles, iub_asf) v3fit_input::pp_sxrem_af_a = 0.0
 Array of af_coefficients soft x-ray emissvity profile splines. More...
 
character(len=p_type_len) v3fit_input::pp_te_ptype = 'none'
 Model electron temperature profile, parameterized profile type. More...
 
real(rprec), dimension(ilb_b:iub_b) v3fit_input::pp_te_b = 0.0
 Array of b_coefficients for the electron temperature profile. More...
 
real(rprec), dimension(iub_asf) v3fit_input::pp_te_as = 0.0
 Array of as_coefficients electron temperature splines. More...
 
real(rprec), dimension(iub_asf) v3fit_input::pp_te_af = 0.0
 Array of af_coefficients electron temperature splines. More...
 
character(len=p_type_len) v3fit_input::pp_ti_ptype = 'none'
 Model ion temperature profile, parameterized profile type. More...
 
real(rprec), dimension(ilb_b:iub_b) v3fit_input::pp_ti_b = 0.0
 Array of b_coefficients for the ion temperature profile. More...
 
real(rprec), dimension(iub_asf) v3fit_input::pp_ti_as = 0.0
 Array of as_coefficients ion temperature splines. More...
 
real(rprec), dimension(iub_asf) v3fit_input::pp_ti_af = 0.0
 Array of af_coefficients ion temperature splines. More...
 
character(len=p_type_len) v3fit_input::pp_ze_ptype = 'none'
 Model effective charge profile, parameterized profile type. More...
 
real(rprec), dimension(ilb_b:iub_b) v3fit_input::pp_ze_b = 0.0
 Array of b_coefficients for the effective charge profile. More...
 
real(rprec), dimension(iub_asf) v3fit_input::pp_ze_as = 0.0
 Array of as_coefficients effective charge splines. More...
 
real(rprec), dimension(iub_asf) v3fit_input::pp_ze_af = 0.0
 Array of af_coefficients effective charge splines. More...
 
real(rprec), dimension(iub_asf) v3fit_input::sxrem_te_a = 0.0
 Array of temperature points for the sxrem ratio function.
 
real(rprec), dimension(iub_asf) v3fit_input::sxrem_ratio_a = 0.0
 Array of ratio points for the sxrem ratio function.
 
character(len=data_name_length) v3fit_input::model_eq_type = 'vmec'
 Specify wich equilibrium to use.
 
character(len=data_name_length) v3fit_input::model_ne_type = 'pp_ne'
 Specify how electron density is computed by the model. More...
 
character(len=data_name_length) v3fit_input::model_sxrem_type = 'none'
 
character(len=data_name_length), dimension(max_sxrem_profiles) v3fit_input::model_sxrem_type_a = 'none'
 Specify how soft x-ray emissivity is computed by the model. More...
 
character(len=data_name_length) v3fit_input::model_te_type = 'none'
 Specify how electron temperature is computed by the model. More...
 
character(len=data_name_length) v3fit_input::model_ti_type = 'none'
 Specify how electron temperature is computed by the model. More...
 
character(len=data_name_length) v3fit_input::model_ze_type = 'none'
 Specify how effective chagre is computed by the model. More...
 
real(rprec) v3fit_input::ne_pp_unit = 1.0E18
 Normalization factor for the electron density.
 
real(rprec) v3fit_input::ne_min = 0.0
 Minimum electron density.
 
real(rprec) v3fit_input::te_min = 0.0
 Minimum electron temperature.
 
real(rprec) v3fit_input::ti_min = 0.0
 Minimum ion temperature.
 
real(rprec) v3fit_input::ze_min = 1.0
 Minimum effective charge.
 
real(rprec), dimension(max_sxrem_profiles) v3fit_input::sxrem_min = 0.0
 Minimum soft x-ray emission.
 
real(rprec) v3fit_input::e_pressure_fraction = 0.5
 Specifies the fraction of the pressure constributed by the electrons.
 
character(len=data_name_length) v3fit_input::emission_file = ''
 Specifies the path to the file contain the soft x-ray emission function.
 
real(rprec) v3fit_input::ece_resonance_range = 0.0
 ECE resonance search range.
 
real(rprec), dimension(v3fit_max_parameters) v3fit_input::coosig_wgts = 0.0
 Array of combination parameter signal weights.
 
integer v3fit_input::n_rc = 0
 Not implemented.
 
character(len=data_name_length), dimension(v3fit_max_parameters) v3fit_input::rc_type = ''
 Not implemented.
 
integer, dimension(v3fit_max_parameters) v3fit_input::rc_index = 0
 Not implemented.
 
real(rprec), dimension(v3fit_max_parameters) v3fit_input::rc_value = 0.0
 Not implemented.
 
integer v3fit_input::n_dp = 0
 Number of derived parameters.
 
character(len=data_name_length), dimension(v3fit_max_parameters) v3fit_input::dp_type = ''
 Names of derived parameters.
 
integer, dimension(v3fit_max_parameters, 2) v3fit_input::dp_index = 0
 Indices of derived parameters.
 
integer v3fit_input::n_rp = 0
 Number of reconstruction parameters.
 
character(len=data_name_length), dimension(v3fit_max_parameters) v3fit_input::rp_type = ''
 Names of reconstruction parameters.
 
integer, dimension(v3fit_max_parameters) v3fit_input::rp_index = 0
 Ith index of reconstruction parameters.
 
integer, dimension(v3fit_max_parameters) v3fit_input::rp_index2 = 0
 Jth index of reconstruction parameters.
 
real(rprec), dimension(v3fit_max_parameters) v3fit_input::rp_vrnc = 0.0
 Maximum reconstruction increment.
 
character(len=data_name_length), dimension(v3fit_max_parameters, 2) v3fit_input::rp_range_type = 'infinity'
 Parameter range types. The first index is the lower range and second index the upper range. More...
 
real(rprec), dimension(v3fit_max_parameters, 2) v3fit_input::rp_range_value = 0.0
 Parameter range value. The first index is the lower range and second index the upper range.
 
integer, dimension(v3fit_max_parameters, 2, data_max_indices) v3fit_input::rp_range_index = 0
 Parameter range indices. The first index is the lower range and second index the upper range.
 
integer v3fit_input::n_lp = 0
 Number of locking parameters.
 
character(len=data_name_length), dimension(v3fit_max_parameters) v3fit_input::lp_type = ''
 Names of locking parameters.
 
integer, dimension(v3fit_max_parameters) v3fit_input::lp_index = 0
 Ith index of locking parameters.
 
integer, dimension(v3fit_max_parameters) v3fit_input::lp_index2 = 0
 Jth index of locking parameters.
 
character(len=data_name_length), dimension(v3fit_max_parameters, v3fit_max_parameters) v3fit_input::lp_sets = ''
 Names of parameters to lock to.
 
integer, dimension(v3fit_max_parameters, v3fit_max_parameters) v3fit_input::lp_sets_index = 0
 Ith index of parameters to lock to.
 
integer, dimension(v3fit_max_parameters, v3fit_max_parameters) v3fit_input::lp_sets_index2 = 0
 Jth index of parameters to lock to.
 
real(rprec), dimension(v3fit_max_parameters, v3fit_max_parameters) v3fit_input::lp_sets_coeff = 0.0
 Lock parameter coefficients.
 
integer v3fit_input::n_sdata_o = 0
 
integer v3fit_input::iw_sdo_verbose = -1
 Not implemented.
 
real(rprec), dimension(v3fit_max_signals) v3fit_input::sdo_data_a = 0.0
 Observed signals.
 
real(rprec), dimension(v3fit_max_signals) v3fit_input::sdo_sigma_a = 0.0
 Observed sigmas.
 
real(rprec), dimension(v3fit_max_signals) v3fit_input::sdo_weight_a = 1.0
 Observed weights.
 
logical v3fit_input::sdo_spec_can_overwrite = .true.
 Allow the sigma spec to overwrite the sigma array.
 
logical, dimension(v3fit_max_diagnostics) v3fit_input::mag_a = .true.
 Magnetic signal flags. Controls if the induced signal is included in the total signal.
 
logical, dimension(v3fit_max_diagnostics) v3fit_input::mag_3d_a = .false.
 Magnetic signal flags. Controls if the axisymmetric part of the signal is removed from the model signal.
 
logical v3fit_input::mag_force_coil = .false.
 Forces the magnetic signal to compute the induced signal.
 
integer, dimension(v3fit_max_spec_size) v3fit_input::sdo_s_spec_imin = 0
 Sigma specification lower index.
 
integer, dimension(v3fit_max_spec_size) v3fit_input::sdo_s_spec_imax = 0
 Sigma specification upper index.
 
real(rprec), dimension(v3fit_max_spec_size) v3fit_input::sdo_s_spec_floor = 0.0
 Sigma specification floor.
 
real(rprec), dimension(v3fit_max_spec_size) v3fit_input::sdo_s_spec_fraction = 0.0
 Sigma specification fraction.
 
integer, dimension(v3fit_max_spec_size) v3fit_input::sdo_w_spec_imin = 0
 Weight specification lower index.
 
integer, dimension(v3fit_max_spec_size) v3fit_input::sdo_w_spec_imax = 0
 Weight specification upper index.
 
real(rprec), dimension(v3fit_max_spec_size) v3fit_input::sdo_w_spec_weight = 0.0
 Weight specification weight.
 
integer, dimension(v3fit_max_spec_size) v3fit_input::mag_spec_imin = 0
 Magnetic specification lower index.
 
integer, dimension(v3fit_max_spec_size) v3fit_input::mag_spec_imax = 0
 Magnetic specification upper index.
 
logical, dimension(v3fit_max_spec_size) v3fit_input::mag_spec_use_induced = .true.
 Magnetic specification toggle induced coil signal.
 
real(rprec) v3fit_input::pol_rad_ratio = 1.0
 Ratio of the number of poloidal grid points to radial grid points.
 
integer, dimension(v3fit_max_spec_size) v3fit_input::sfactor_spec_imin = 0
 Signal factor specification lower index.
 
integer, dimension(v3fit_max_spec_size) v3fit_input::sfactor_spec_imax = 0
 Signal factor specification upper index.
 
real(rprec), dimension(v3fit_max_spec_size) v3fit_input::sfactor_spec_fac = 0.0
 Signal scale factor.
 
integer, dimension(v3fit_max_spec_size) v3fit_input::soffset_spec_imin = 0
 Signal factor specification lower index.
 
integer, dimension(v3fit_max_spec_size) v3fit_input::soffset_spec_imax = 0
 Signal factor specification upper index.
 
real(rprec), dimension(v3fit_max_spec_size) v3fit_input::soffset_spec_fac = 0.0
 Signal scale factor.
 
real(rprec) v3fit_input::extcurz_s0 = -1.0
 External Z current radial position. More...
 
real(rprec) v3fit_input::extcurz_u0 = 0.0
 External Z current poloidal angle.
 
real(rprec) v3fit_input::r_major_radius
 Geometric limiter major radius.
 
real(rprec) v3fit_input::a_minor_radius
 Geometric limiter minor radius.
 
integer v3fit_input::n_lif = 0
 Number of specified limiter iso functions.
 
integer, dimension(v3fit_max_limiters) v3fit_input::n_phi_lif = 0
 Number of phi planes for an iso functions.
 
real(rprec), dimension(v3fit_max_limiters, 0:4, 0:4) v3fit_input::lif_arz = 0.0
 Array of r-z polynomial coefficients.
 
real(rprec), dimension(v3fit_max_limiters) v3fit_input::lif_rc = 0.0
 Array of r offset values.
 
real(rprec), dimension(v3fit_max_limiters) v3fit_input::lif_zc = 0.0
 Array of z offset values.
 
real(rprec), dimension(v3fit_max_limiters) v3fit_input::lif_sigma = 0.001_dp
 Array of sigma values.
 
real(rprec), dimension(v3fit_max_limiters, v3fit_max_lif_size) v3fit_input::lif_phi_degree = 0.0
 Array of phi values. Number of phi values need to be match n_phi_lif.
 
logical, dimension(v3fit_max_limiters) v3fit_input::lif_on_edge = .false.
 True specifies that the edge hits the limiter. False specifies that the edge is inside the limiter.
 
integer v3fit_input::n_prior = 0
 Number of specified priors.
 
character(len=data_name_length), dimension(v3fit_max_priors) v3fit_input::prior_name = ''
 Prior names.
 
character(len=data_name_length), dimension(v3fit_max_priors) v3fit_input::prior_param_name = ''
 Prior parameter names.
 
integer, dimension(v3fit_max_priors, 2) v3fit_input::prior_indices = 0
 Prior parameter indicies.
 
character(len=data_short_name_length), dimension(v3fit_max_priors) v3fit_input::prior_units = ''
 Prior Units.
 
integer v3fit_input::n_coosig = 0
 Number of combination signals.
 
integer, dimension(v3fit_max_combinations) v3fit_input::n_sig_coosig = 0
 Number of signals in a combination signal.
 
integer, dimension(v3fit_max_combinations, v3fit_max_cos_size) v3fit_input::coosig_indices = 0
 Indices of the number signals to combine. Number if indices needs to match n_sig_coosig.
 
real(rprec), dimension(v3fit_max_combinations, v3fit_max_cos_size) v3fit_input::coosig_coeff = 0.0
 Coefficients of the signals to combine. Number if indices needs to match n_sig_coosig.
 
character(len=combination_type_length), dimension(v3fit_max_combinations) v3fit_input::coosig_type = 'sum'
 Combination type. More...
 
character(len=data_name_length), dimension(v3fit_max_combinations) v3fit_input::coosig_name = ''
 Name of the combination.
 
character(len=data_short_name_length), dimension(v3fit_max_combinations) v3fit_input::coosig_units = ''
 Units of the combination.
 
integer, dimension(v3fit_max_combinations) v3fit_input::coosig_wgts_id = -1
 Array of parameter weight ids to use in the combination signal.
 
integer v3fit_input::n_gp = 0
 Number of gaussian process signals.
 
integer, dimension(max_gaussprocess) v3fit_input::n_gp_signal = 0
 Number of signals in a gaussian process signal.
 
integer, dimension(max_gaussprocess, v3fit_max_signals) v3fit_input::gp_signal_indices = 0
 Indices of the number signals to include in the GP. Number of indices needs to match n_sig_gpsig.
 
character(len=data_short_name_length), dimension(max_gaussprocess) v3fit_input::gp_model_type = 'none'
 Gaussian process model type. More...
 
integer, dimension(max_gaussprocess) v3fit_input::gp_model_index = 0
 Gaussian process model type ID for models with multiple profiles.
 
real(rprec), dimension(max_gaussprocess, v3fit_max_parameters) v3fit_input::gp_param_vrnc = 0.001
 Variances for the hyper parameters.
 
real(rprec), dimension(max_gaussprocess) v3fit_input::gp_tolerance = 1.0E-4
 Convergence criteria for the gradient ascent to maximize the log of the evidence.
 
real(rprec), dimension(max_gaussprocess) v3fit_input::gp_cholesky_fact = 0.0
 The Gaussian process uses a cholesky decompositions to factor a matrix. It assumes that the matrix is positive def. Which is true analytically. This input can be used to add a small offset to the matrix to insure positive def.
 
character(len=data_short_name_length) v3fit_input::int_method = 'add'
 Integation method. The evaultion the K_LL matrix can require multipe evaluation of a double path integral. Here naive quadrature using rectangle integration with small dx can really slow down v3fit. It is recommended to use the 'gleg' method when using the guassian processes.
 
integer v3fit_input::int_num_points = 40
 Integer control of numerical quadrature. For Gauss-legendre integration This parameter sets the number of nodes to use.
 
real(rprec) v3fit_input::int_size = 0.0025
 Real control of numerical quadrature. Set dx for addivative integration.
 
real(rprec) v3fit_input::phi_offset = 0
 Offset of plasma relative to the diagnostics.
 
real(rprec) v3fit_input::z_offset = 0
 Vertical shift of plasma relative to the center.
 
integer v3fit_input::nrstep = 0
 Max number of reconstruction steps to perform.
 
real(rprec) v3fit_input::dg2_stop = 0.0
 Stopping criterion on change in g^2.
 
real(rprec) v3fit_input::cut_svd = 0.0
 Cutoff value for relative Singular Values.
 
real(rprec) v3fit_input::cut_eff = 0.0
 Cutoff value for expected step efficiency.
 
real(rprec) v3fit_input::cut_marg_eff = 0.0
 Cutoff value for expected marginal step efficiency.
 
real(rprec) v3fit_input::cut_delta_a = 0.0
 Cutoff value for expected step size.
 
real(rprec) v3fit_input::cut_dg2 = 0.0
 Cutoff value for expected change in g^2.
 
real(rprec) v3fit_input::astep_max = 0.0
 Maximum allowable normalized step size.
 
character(len=v3fit_step_name_length) v3fit_input::step_type = 'sl'
 Reconstruction step type. Possible values are: More...
 
real(rprec) v3fit_input::cut_inv_svd = 1.0E-10
 Cutoff value for singular values in matrix inverse.
 
real(rprec) v3fit_input::cut_comp_svd = 0.0
 Cutoff value for singular values used in the magnetic data compression.
 
logical v3fit_input::use_central_diff = .false.
 Use central differencing to compute the jacobian.
 
logical v3fit_input::l_zero_xcdot = .true.
 Zero out vmec xcdot array. More...
 

Detailed Description

Contains module v3fit_input.

Definition in file v3fit_input.f.