From 6292783f51780a779aa39fced21a45912ea5d3c5 Mon Sep 17 00:00:00 2001 From: logan-nc <6198372+logan-nc@users.noreply.github.com> Date: Thu, 2 Jul 2026 18:48:51 -0400 Subject: [PATCH] EQUIL - IMPROVEMENT - Scope custom-Jacobian knobs to jac_custom_power_* Rename the custom Jacobian selector jac_type = "other" to "custom" and add user-facing jac_custom_power_bp/b/r/rc inputs to EquilibriumConfig, read only when jac_type = "custom". Named types (hamada/pest/boozer/equal_arc/park) keep forcing the internal power_* exponents; downstream Jacobian formulas are unchanged and still read the internal power_* fields as the single source of truth. The four power_* constructor slots are now derived-only (marked `_`). Deprecate power_bp/power_b/power_r/power_rc as [Equilibrium] TOML input keys by reusing the centralized deprecation mechanism: generalize _drop_deprecated_ffs_keys! to _drop_deprecated_keys!(table, keys, section) and add _DEPRECATED_EQUIL_KEYS, applied on both the gpec.toml and h5-replay input paths. A stale power_* key now warns loudly and is dropped instead of silently overriding the coordinate system. Also fix the _DEPRECATED_FFS_KEYS one-tuple bug (was a string, so the FFS deprecation never fired). Update the EquilibriumConfig docstring and conventions.md, and clean the now-inactive power_* lines out of the example/test gpec.toml files while standardizing the jac_type option-list comment. Regression: diiid_n1, solovev_n1, solovev_multi_n all 0.0e+00 diff vs develop. Closes #288 Co-Authored-By: Claude Opus 4.8 (1M context) --- docs/src/conventions.md | 5 +-- .../gpec.toml | 5 +-- .../gpec.toml | 5 +-- examples/DIIID-like_ideal_example/gpec.toml | 2 +- .../DIIID-like_ideal_example_IMAS/gpec.toml | 2 +- examples/LAR_beta_scan/gpec.toml | 2 +- examples/LAR_epsilon_scan/gpec.toml | 2 +- examples/Solovev_ideal_example/gpec.toml | 2 +- examples/Solovev_ideal_example_3D/gpec.toml | 2 +- .../Solovev_ideal_example_multi_n/gpec.toml | 2 +- .../single_n_1/gpec.toml | 2 +- .../single_n_2/gpec.toml | 2 +- .../gpec.toml | 5 +-- examples/a10_kinetic_example/gpec.toml | 2 +- src/Equilibrium/EquilibriumTypes.jl | 33 +++++++++++++++---- src/GeneralizedPerturbedEquilibrium.jl | 16 +++++---- src/Rerun.jl | 1 + .../gpec.toml | 2 +- .../gpec.toml | 2 +- .../gpec.toml | 2 +- .../gpec.toml | 2 +- .../gpec.toml | 2 +- .../gpec.toml | 5 +-- 23 files changed, 58 insertions(+), 47 deletions(-) diff --git a/docs/src/conventions.md b/docs/src/conventions.md index 268fde01..e5b6c4c9 100644 --- a/docs/src/conventions.md +++ b/docs/src/conventions.md @@ -84,8 +84,9 @@ field magnitude, ``B`` is the total field magnitude, ``R`` is the major radius, The powers are set automatically from `jac_type` (`EquilibriumConfig` in `src/Equilibrium/EquilibriumTypes.jl`) and applied in the field-line Jacobian -(`direct_fieldline_der!` in `src/Equilibrium/DirectEquilibrium.jl`). Setting `jac_type = "other"` -lets you specify the four exponents manually. +(`direct_fieldline_der!` in `src/Equilibrium/DirectEquilibrium.jl`). Setting `jac_type = "custom"` +lets you specify the four exponents manually via `jac_custom_power_bp`, `jac_custom_power_b`, +`jac_custom_power_r`, and `jac_custom_power_rc`. ## Helicity and Handedness diff --git a/examples/DIIID-like_gal_resistive_example/gpec.toml b/examples/DIIID-like_gal_resistive_example/gpec.toml index 4a816e50..1b4cb408 100644 --- a/examples/DIIID-like_gal_resistive_example/gpec.toml +++ b/examples/DIIID-like_gal_resistive_example/gpec.toml @@ -1,10 +1,7 @@ [Equilibrium] eq_filename = "TkMkr_D3Dlike_Hmode.geqdsk" # Path to equilibrium file eq_type = "efit" # Type of the input 2D equilibrium file -jac_type = "hamada" # Coordinate system (hamada, pest, boozer, equal_arc) -power_bp = 0 # Poloidal field power exponent for Jacobian -power_b = 0 # Toroidal field power exponent for Jacobian -power_r = 0 # Major radius power exponent for Jacobian +jac_type = "hamada" # Coordinate system (hamada, pest, boozer, equal_arc, park, custom) grid_type = "ldp" # Radial grid packing type (ldp = linear-derivative packing toward rationals) psilow = 1e-4 # Lower limit of normalized flux coordinate psihigh = 0.993 # Upper limit of normalized flux coordinate (0.993 stays clear of the separatrix; truncating at ≳0.998 is numerically unreasonable here) diff --git a/examples/DIIID-like_gal_resistive_pe_example/gpec.toml b/examples/DIIID-like_gal_resistive_pe_example/gpec.toml index 66345e63..6f33ccd7 100644 --- a/examples/DIIID-like_gal_resistive_pe_example/gpec.toml +++ b/examples/DIIID-like_gal_resistive_pe_example/gpec.toml @@ -1,10 +1,7 @@ [Equilibrium] eq_filename = "TkMkr_D3Dlike_Hmode.geqdsk" # Path to equilibrium file eq_type = "efit" # Type of the input 2D equilibrium file -jac_type = "hamada" # Coordinate system (hamada, pest, boozer, equal_arc) -power_bp = 0 # Poloidal field power exponent for Jacobian -power_b = 0 # Toroidal field power exponent for Jacobian -power_r = 0 # Major radius power exponent for Jacobian +jac_type = "hamada" # Coordinate system (hamada, pest, boozer, equal_arc, park, custom) grid_type = "ldp" # Radial grid packing type (ldp = linear-derivative packing toward rationals) psilow = 1e-4 # Lower limit of normalized flux coordinate psihigh = 0.993 # Upper limit of normalized flux coordinate (0.993 stays clear of the separatrix; truncating at ≳0.998 is numerically unreasonable here) diff --git a/examples/DIIID-like_ideal_example/gpec.toml b/examples/DIIID-like_ideal_example/gpec.toml index ed99887a..8eec1649 100644 --- a/examples/DIIID-like_ideal_example/gpec.toml +++ b/examples/DIIID-like_ideal_example/gpec.toml @@ -6,7 +6,7 @@ [Equilibrium] eq_filename = "TkMkr_D3Dlike_Hmode.geqdsk" # Path to equilibrium file eq_type = "efit" # Type of the input 2D equilibrium file -jac_type = "hamada" # Coordinate system (hamada, pest, boozer, equal_arc, park, other) +jac_type = "hamada" # Coordinate system (hamada, pest, boozer, equal_arc, park, custom) grid_type = "log_asymptotic" # Radial grid packing type psilow = 1e-4 # Lower limit of normalized poloidal flux psihigh = 0.9995 # Upper limit of normalized poloidal flux diff --git a/examples/DIIID-like_ideal_example_IMAS/gpec.toml b/examples/DIIID-like_ideal_example_IMAS/gpec.toml index dbf4f872..95591980 100644 --- a/examples/DIIID-like_ideal_example_IMAS/gpec.toml +++ b/examples/DIIID-like_ideal_example_IMAS/gpec.toml @@ -10,7 +10,7 @@ [Equilibrium] eq_type = "imas" # Type of the input 2D equilibrium file eq_filename = "from_dd" # Path to equilibrium file (placeholder: equilibrium comes from the runtime dd argument) -jac_type = "boozer" # Coordinate system (hamada, pest, boozer, equal_arc, park, other) +jac_type = "boozer" # Coordinate system (hamada, pest, boozer, equal_arc, park, custom) psilow = 0.01 # Lower limit of normalized poloidal flux psihigh = 0.9995 # Upper limit of normalized poloidal flux mpsi = 128 # Number of radial grid points (0 = auto-compute from psi_accuracy) diff --git a/examples/LAR_beta_scan/gpec.toml b/examples/LAR_beta_scan/gpec.toml index c4d1f316..0add35a3 100644 --- a/examples/LAR_beta_scan/gpec.toml +++ b/examples/LAR_beta_scan/gpec.toml @@ -9,7 +9,7 @@ [Equilibrium] eq_type = "tj_analytic" # TJ-analytic model (inverse pipeline; Fitzpatrick https://github.com/rfitzp/TJ) -jac_type = "hamada" # Coordinate system (hamada, pest, boozer, equal_arc, park, other) +jac_type = "hamada" # Coordinate system (hamada, pest, boozer, equal_arc, park, custom) grid_type = "ldp" # Radial grid packing type psilow = 0.01 # Lower limit of normalized poloidal flux psihigh = 0.995 # Upper limit of normalized poloidal flux diff --git a/examples/LAR_epsilon_scan/gpec.toml b/examples/LAR_epsilon_scan/gpec.toml index 0c8fceb3..c8706ac9 100644 --- a/examples/LAR_epsilon_scan/gpec.toml +++ b/examples/LAR_epsilon_scan/gpec.toml @@ -9,7 +9,7 @@ [Equilibrium] eq_type = "tj_analytic" # TJ-analytic model (inverse pipeline; overridden to "tj_analytic_direct" by run_scan.jl) -jac_type = "hamada" # Coordinate system (hamada, pest, boozer, equal_arc, park, other) +jac_type = "hamada" # Coordinate system (hamada, pest, boozer, equal_arc, park, custom) grid_type = "ldp" # Radial grid packing type psilow = 0.01 # Lower limit of normalized poloidal flux psihigh = 0.995 # Upper limit of normalized poloidal flux diff --git a/examples/Solovev_ideal_example/gpec.toml b/examples/Solovev_ideal_example/gpec.toml index d9fc70d2..ea638b83 100644 --- a/examples/Solovev_ideal_example/gpec.toml +++ b/examples/Solovev_ideal_example/gpec.toml @@ -5,7 +5,7 @@ [Equilibrium] eq_type = "sol" # Type of the input 2D equilibrium file -jac_type = "pest" # Coordinate system (hamada, pest, boozer, equal_arc, park, other) +jac_type = "pest" # Coordinate system (hamada, pest, boozer, equal_arc, park, custom) grid_type = "ldp" # Radial grid packing type psilow = 1e-4 # Lower limit of normalized poloidal flux psihigh = 0.9995 # Upper limit of normalized poloidal flux diff --git a/examples/Solovev_ideal_example_3D/gpec.toml b/examples/Solovev_ideal_example_3D/gpec.toml index 3d1caa78..87375c04 100644 --- a/examples/Solovev_ideal_example_3D/gpec.toml +++ b/examples/Solovev_ideal_example_3D/gpec.toml @@ -4,7 +4,7 @@ [Equilibrium] eq_type = "sol" # Type of the input 2D equilibrium file -jac_type = "pest" # Coordinate system (hamada, pest, boozer, equal_arc, park, other) +jac_type = "pest" # Coordinate system (hamada, pest, boozer, equal_arc, park, custom) grid_type = "ldp" # Radial grid packing type psilow = 1e-4 # Lower limit of normalized poloidal flux psihigh = 0.9995 # Upper limit of normalized poloidal flux diff --git a/examples/Solovev_ideal_example_multi_n/gpec.toml b/examples/Solovev_ideal_example_multi_n/gpec.toml index b17ab043..edfc42f4 100644 --- a/examples/Solovev_ideal_example_multi_n/gpec.toml +++ b/examples/Solovev_ideal_example_multi_n/gpec.toml @@ -5,7 +5,7 @@ [Equilibrium] eq_type = "sol" # Type of the input 2D equilibrium file -jac_type = "pest" # Coordinate system (hamada, pest, boozer, equal_arc, park, other) +jac_type = "pest" # Coordinate system (hamada, pest, boozer, equal_arc, park, custom) grid_type = "ldp" # Radial grid packing type psilow = 1e-4 # Lower limit of normalized poloidal flux psihigh = 0.9995 # Upper limit of normalized poloidal flux diff --git a/examples/Solovev_ideal_example_multi_n/single_n_1/gpec.toml b/examples/Solovev_ideal_example_multi_n/single_n_1/gpec.toml index 650cfe31..d262b026 100644 --- a/examples/Solovev_ideal_example_multi_n/single_n_1/gpec.toml +++ b/examples/Solovev_ideal_example_multi_n/single_n_1/gpec.toml @@ -4,7 +4,7 @@ [Equilibrium] eq_type = "sol" # Type of the input 2D equilibrium file -jac_type = "pest" # Coordinate system (hamada, pest, boozer, equal_arc, park, other) +jac_type = "pest" # Coordinate system (hamada, pest, boozer, equal_arc, park, custom) grid_type = "ldp" # Radial grid packing type psilow = 1e-4 # Lower limit of normalized poloidal flux psihigh = 0.9995 # Upper limit of normalized poloidal flux diff --git a/examples/Solovev_ideal_example_multi_n/single_n_2/gpec.toml b/examples/Solovev_ideal_example_multi_n/single_n_2/gpec.toml index e95f0cc9..bd71d3d5 100644 --- a/examples/Solovev_ideal_example_multi_n/single_n_2/gpec.toml +++ b/examples/Solovev_ideal_example_multi_n/single_n_2/gpec.toml @@ -4,7 +4,7 @@ [Equilibrium] eq_type = "sol" # Type of the input 2D equilibrium file -jac_type = "pest" # Coordinate system (hamada, pest, boozer, equal_arc, park, other) +jac_type = "pest" # Coordinate system (hamada, pest, boozer, equal_arc, park, custom) grid_type = "ldp" # Radial grid packing type psilow = 1e-4 # Lower limit of normalized poloidal flux psihigh = 0.9995 # Upper limit of normalized poloidal flux diff --git a/examples/Solovev_kinetic_calculated_example/gpec.toml b/examples/Solovev_kinetic_calculated_example/gpec.toml index ea3913fe..4a46bdb4 100644 --- a/examples/Solovev_kinetic_calculated_example/gpec.toml +++ b/examples/Solovev_kinetic_calculated_example/gpec.toml @@ -1,10 +1,7 @@ [Equilibrium] eq_type = "sol" # Type of the input 2D equilibrium file eq_filename = "sol.toml" # Path to equilibrium file -jac_type = "pest" # Coordinate system (hamada, pest, boozer, equal_arc) -power_bp = 0 # Poloidal field power exponent for Jacobian -power_b = 0 # Toroidal field power exponent for Jacobian -power_r = 0 # Major radius power exponent for Jacobian +jac_type = "pest" # Coordinate system (hamada, pest, boozer, equal_arc, park, custom) grid_type = "ldp" # Radial grid packing type psilow = 1e-4 # Lower limit of normalized flux coordinate psihigh = 0.9995 # Upper limit of normalized flux coordinate diff --git a/examples/a10_kinetic_example/gpec.toml b/examples/a10_kinetic_example/gpec.toml index 40d29c08..9601034a 100644 --- a/examples/a10_kinetic_example/gpec.toml +++ b/examples/a10_kinetic_example/gpec.toml @@ -9,7 +9,7 @@ [Equilibrium] eq_filename = "fix_a100_k10_q2_bn010_prof1" # Path to equilibrium file eq_type = "efit" # Type of the input 2D equilibrium file -jac_type = "hamada" # Coordinate system (hamada, pest, boozer, equal_arc, park, other) +jac_type = "hamada" # Coordinate system (hamada, pest, boozer, equal_arc, park, custom) grid_type = "ldp" # Radial grid packing type psilow = 1e-3 # Lower limit of normalized poloidal flux psihigh = 0.99 # Upper limit of normalized poloidal flux diff --git a/src/Equilibrium/EquilibriumTypes.jl b/src/Equilibrium/EquilibriumTypes.jl index 6fa0d9af..515e1f4d 100644 --- a/src/Equilibrium/EquilibriumTypes.jl +++ b/src/Equilibrium/EquilibriumTypes.jl @@ -12,11 +12,15 @@ Bundles all necessary settings originally specified in the equil fortran namelis - `eq_type::String` - Type of equilibrium file ("efit", "solovev", "lar", etc.) - `eq_filename::String` - Path to equilibrium input file - - `jac_type::String` - Jacobian coordinate type ("hamada", "pest", "equal_arc", "boozer", "park", "other") - - `power_bp::Int` - Poloidal field power exponent for Jacobian - - `power_b::Int` - Total field power exponent for Jacobian - - `power_r::Int` - Major radius power exponent for Jacobian - - `power_rc::Int` - Minor radius (rfac = √((R-R₀)²+(Z-Z₀)²)) power exponent for Jacobian + - `jac_type::String` - Jacobian coordinate type ("hamada", "pest", "equal_arc", "boozer", "park", "custom") + - `power_bp::Int` - Poloidal field power exponent for Jacobian (internal, derived from `jac_type`; deprecated as a TOML input key) + - `power_b::Int` - Total field power exponent for Jacobian (internal, derived from `jac_type`; deprecated as a TOML input key) + - `power_r::Int` - Major radius power exponent for Jacobian (internal, derived from `jac_type`; deprecated as a TOML input key) + - `power_rc::Int` - Minor radius (rfac = √((R-R₀)²+(Z-Z₀)²)) power exponent for Jacobian (internal, derived from `jac_type`; deprecated as a TOML input key) + - `jac_custom_power_bp::Int` - Poloidal-field exponent for a custom Jacobian `J = Bp^bp · B^b / (R^r · rfac^rc)`; read only when `jac_type = "custom"`, ignored for named types + - `jac_custom_power_b::Int` - Total-field exponent for a custom Jacobian; read only when `jac_type = "custom"`, ignored for named types + - `jac_custom_power_r::Int` - Major-radius exponent for a custom Jacobian; read only when `jac_type = "custom"`, ignored for named types + - `jac_custom_power_rc::Int` - Minor-radius (rfac) exponent for a custom Jacobian; read only when `jac_type = "custom"`, ignored for named types - `r0exp::Float64` - Major radius normalization for CHEASE/EQDSK [m] - `b0exp::Float64` - On-axis toroidal field normalization for CHEASE/EQDSK [T] - `grid_type::String` - Grid type for flux surface discretization ("log_asymptotic", "ldp", "pow1") @@ -42,6 +46,11 @@ Bundles all necessary settings originally specified in the equil fortran namelis power_r::Int = 0 power_rc::Int = 0 + jac_custom_power_bp::Int = 0 + jac_custom_power_b::Int = 0 + jac_custom_power_r::Int = 0 + jac_custom_power_rc::Int = 0 + grid_type::String = "log_asymptotic" psilow::Float64 = 1e-2 psihigh::Float64 = 0.9995 @@ -61,7 +70,11 @@ Bundles all necessary settings originally specified in the equil fortran namelis """ Modified internal constructor that enforces self consistency within the inputs """ - function EquilibriumConfig(eq_type, eq_filename, r0exp, b0exp, jac_type, power_bp, power_b, power_r, power_rc, + # The four `_` slots are the `power_bp/power_b/power_r/power_rc` struct fields, which @kwdef + # forwards positionally. They are always derived below from `jac_type` (or `jac_custom_power_*`), + # so their incoming values are ignored (hence `_`). + function EquilibriumConfig(eq_type, eq_filename, r0exp, b0exp, jac_type, _, _, _, _, + jac_custom_power_bp, jac_custom_power_b, jac_custom_power_r, jac_custom_power_rc, grid_type, psilow, psihigh, mpsi, psi_accuracy, mtheta, newq0, etol, force_termination, use_galgrid, imas_cocos) if jac_type == "hamada" @@ -94,7 +107,12 @@ Bundles all necessary settings originally specified in the equil fortran namelis power_bp = 0 power_r = 0 power_rc = 0 - elseif jac_type == "other" + elseif jac_type == "custom" + # Custom Jacobian: the user-facing knobs define the exponents. + power_bp = jac_custom_power_bp + power_b = jac_custom_power_b + power_r = jac_custom_power_r + power_rc = jac_custom_power_rc # Normalize to a named type when the powers match, so fast paths are taken. if power_b == 0 && power_bp == 0 && power_r == 0 && power_rc == 0 jac_type = "hamada" @@ -122,6 +140,7 @@ Bundles all necessary settings originally specified in the equil fortran namelis end psihigh = min(psihigh, 1.0) return new(eq_type, eq_filename, r0exp, b0exp, jac_type, power_bp, power_b, power_r, power_rc, + jac_custom_power_bp, jac_custom_power_b, jac_custom_power_r, jac_custom_power_rc, grid_type, psilow, psihigh, mpsi, psi_accuracy, mtheta, newq0, etol, force_termination, use_galgrid, imas_cocos) end diff --git a/src/GeneralizedPerturbedEquilibrium.jl b/src/GeneralizedPerturbedEquilibrium.jl index 51bd422b..e7ecef8a 100755 --- a/src/GeneralizedPerturbedEquilibrium.jl +++ b/src/GeneralizedPerturbedEquilibrium.jl @@ -59,14 +59,15 @@ using .ForceFreeStates: find_kinetic_singular_surfaces! using .ForceFreeStates: eulerlagrange_integration, free_run! using .ForceFreeStates: galerkin_solve, write_galerkin!, GalerkinResult, gal_matched_odestate -const _DEPRECATED_FFS_KEYS = ("mer_flag") +const _DEPRECATED_FFS_KEYS = ("mer_flag",) +const _DEPRECATED_EQUIL_KEYS = ("power_bp", "power_b", "power_r", "power_rc") -# Drop deprecated [ForceFreeStates] keys so legacy gpec.toml files -# keep parsing instead of throwing an unknown-keyword error. -function _drop_deprecated_ffs_keys!(table) - for k in _DEPRECATED_FFS_KEYS +# Drop deprecated keys from a parsed gpec.toml section so legacy files keep parsing +# instead of throwing an unknown-keyword error; warn so the removal is not silent. +function _drop_deprecated_keys!(table, deprecated_keys, section::String) + for k in deprecated_keys if haskey(table, k) - @warn "`$k` in [ForceFreeStates] is deprecated and ignored please remove it from gpec.toml." + @warn "`$k` in [$section] is deprecated and ignored; please remove it from gpec.toml." delete!(table, k) end end @@ -111,6 +112,7 @@ function build_inputs_from_toml(path::String; dd::Union{IMASdd.dd,Nothing}=nothi inputs = TOML.parsefile(joinpath(path, "gpec.toml")) haskey(inputs, "Equilibrium") || error("No [Equilibrium] section in gpec.toml") + _drop_deprecated_keys!(inputs["Equilibrium"], _DEPRECATED_EQUIL_KEYS, "Equilibrium") eq_config = Equilibrium.EquilibriumConfig(inputs["Equilibrium"], path) # An equilibrium is analytic (sol/lar/tj, parameters from its embedded section), @@ -169,7 +171,7 @@ function main_from_inputs( # Build data structures from inputs intr = ForceFreeStatesInternal(; dir_path=path) ffs_table = inputs["ForceFreeStates"] - _drop_deprecated_ffs_keys!(ffs_table) + _drop_deprecated_keys!(ffs_table, _DEPRECATED_FFS_KEYS, "ForceFreeStates") ctrl = ForceFreeStatesControl(; (Symbol(k) => v for (k, v) in ffs_table)...) equil = Equilibrium.setup_equilibrium(eq_config, additional_input) diff --git a/src/Rerun.jl b/src/Rerun.jl index 0ca1ea1e..2a5a8123 100644 --- a/src/Rerun.jl +++ b/src/Rerun.jl @@ -266,6 +266,7 @@ function build_inputs_from_h5(args::Vector{String}) " source: $(abspath(source_h5))\n" * " output: $(abspath(joinpath(output_dir, output_name)))\n$_BANNER" + _drop_deprecated_keys!(inputs["Equilibrium"], _DEPRECATED_EQUIL_KEYS, "Equilibrium") eq_config = Equilibrium.EquilibriumConfig(inputs["Equilibrium"], output_dir) # Clear eq_filename: unused on replay, and a stale absolute path could mislead downstream code. eq_config.eq_filename = "" diff --git a/test/test_data/regression_solovev_ideal_example/gpec.toml b/test/test_data/regression_solovev_ideal_example/gpec.toml index e0b34677..1b9a5b62 100644 --- a/test/test_data/regression_solovev_ideal_example/gpec.toml +++ b/test/test_data/regression_solovev_ideal_example/gpec.toml @@ -4,7 +4,7 @@ [Equilibrium] eq_type = "sol" # Type of the input 2D equilibrium file -jac_type = "pest" # Coordinate system (hamada, pest, boozer, equal_arc, park, other) +jac_type = "pest" # Coordinate system (hamada, pest, boozer, equal_arc, park, custom) grid_type = "ldp" # Radial grid packing type psilow = 1e-4 # Lower limit of normalized poloidal flux psihigh = 0.9995 # Upper limit of normalized poloidal flux diff --git a/test/test_data/regression_solovev_ideal_example_multi_n/gpec.toml b/test/test_data/regression_solovev_ideal_example_multi_n/gpec.toml index 02e3fcd1..68146406 100644 --- a/test/test_data/regression_solovev_ideal_example_multi_n/gpec.toml +++ b/test/test_data/regression_solovev_ideal_example_multi_n/gpec.toml @@ -4,7 +4,7 @@ [Equilibrium] eq_type = "sol" # Type of the input 2D equilibrium file -jac_type = "pest" # Coordinate system (hamada, pest, boozer, equal_arc, park, other) +jac_type = "pest" # Coordinate system (hamada, pest, boozer, equal_arc, park, custom) grid_type = "ldp" # Radial grid packing type psilow = 1e-4 # Lower limit of normalized poloidal flux psihigh = 0.9995 # Upper limit of normalized poloidal flux diff --git a/test/test_data/regression_solovev_kinetic_calculated/gpec.toml b/test/test_data/regression_solovev_kinetic_calculated/gpec.toml index 27224997..086f5e75 100644 --- a/test/test_data/regression_solovev_kinetic_calculated/gpec.toml +++ b/test/test_data/regression_solovev_kinetic_calculated/gpec.toml @@ -4,7 +4,7 @@ [Equilibrium] eq_type = "sol" # Type of the input 2D equilibrium file -jac_type = "pest" # Coordinate system (hamada, pest, boozer, equal_arc, park, other) +jac_type = "pest" # Coordinate system (hamada, pest, boozer, equal_arc, park, custom) grid_type = "ldp" # Radial grid packing type psilow = 1e-4 # Lower limit of normalized poloidal flux psihigh = 0.9995 # Upper limit of normalized poloidal flux diff --git a/test/test_data/regression_solovev_kinetic_example/gpec.toml b/test/test_data/regression_solovev_kinetic_example/gpec.toml index 8f3369c1..e6ee442f 100644 --- a/test/test_data/regression_solovev_kinetic_example/gpec.toml +++ b/test/test_data/regression_solovev_kinetic_example/gpec.toml @@ -4,7 +4,7 @@ [Equilibrium] eq_type = "sol" # Type of the input 2D equilibrium file -jac_type = "pest" # Coordinate system (hamada, pest, boozer, equal_arc, park, other) +jac_type = "pest" # Coordinate system (hamada, pest, boozer, equal_arc, park, custom) grid_type = "ldp" # Radial grid packing type psilow = 1e-4 # Lower limit of normalized poloidal flux psihigh = 0.9995 # Upper limit of normalized poloidal flux diff --git a/test/test_data/regression_solovev_kinetic_multi_n/gpec.toml b/test/test_data/regression_solovev_kinetic_multi_n/gpec.toml index e318749f..9a904296 100644 --- a/test/test_data/regression_solovev_kinetic_multi_n/gpec.toml +++ b/test/test_data/regression_solovev_kinetic_multi_n/gpec.toml @@ -4,7 +4,7 @@ [Equilibrium] eq_type = "sol" # Type of the input 2D equilibrium file -jac_type = "pest" # Coordinate system (hamada, pest, boozer, equal_arc, park, other) +jac_type = "pest" # Coordinate system (hamada, pest, boozer, equal_arc, park, custom) grid_type = "ldp" # Radial grid packing type psilow = 1e-4 # Lower limit of normalized poloidal flux psihigh = 0.9995 # Upper limit of normalized poloidal flux diff --git a/test/test_data/regression_solovev_kinetic_nuzero/gpec.toml b/test/test_data/regression_solovev_kinetic_nuzero/gpec.toml index f374c535..6d3b5b9b 100644 --- a/test/test_data/regression_solovev_kinetic_nuzero/gpec.toml +++ b/test/test_data/regression_solovev_kinetic_nuzero/gpec.toml @@ -1,9 +1,6 @@ [Equilibrium] eq_type = "sol" # Type of the input 2D equilibrium file -jac_type = "pest" # Coordinate system (hamada, pest, boozer, equal_arc) -power_bp = 0 # Poloidal field power exponent for Jacobian -power_b = 0 # Toroidal field power exponent for Jacobian -power_r = 0 # Major radius power exponent for Jacobian +jac_type = "pest" # Coordinate system (hamada, pest, boozer, equal_arc, park, custom) grid_type = "ldp" # Radial grid packing type psilow = 1e-4 # Lower limit of normalized flux coordinate psihigh = 0.9995 # Upper limit of normalized flux coordinate