diff --git a/documentation/source/physics-models/plasma_beta/plasma_beta.md b/documentation/source/physics-models/plasma_beta/plasma_beta.md
index 20e81f5a14..634adc1850 100644
--- a/documentation/source/physics-models/plasma_beta/plasma_beta.md
+++ b/documentation/source/physics-models/plasma_beta/plasma_beta.md
@@ -390,7 +390,7 @@ $$
### Beta consistency
-This constraint can be activated by stating `icc = 1` in the input file.
+`beta_total_vol_avg` is calculated directly from the current plasma state and is no longer an iteration variable. Constraint 1 may be activated as an optional global consistency check or safeguard against potential non-idempotent behaviour by stating `icc = 1` in the input file.
Ensures the relationship between $\beta$, density, temperature and total magnetic field is withheld by checking the fixed input or iteration variable $\texttt{beta}$ is consistent in value with the rest of the physics parameters
@@ -404,8 +404,6 @@ $$
\langle n_{\text{e}}T_{\text{e}} \rangle_{\text{V}} = \overbrace{\langle n_{\text{e}} \rangle_{\text{V}}}^{\texttt{nd_plasma_electrons_vol_avg}} \times \overbrace{\langle T_{\text{e}} \rangle_{\text{n}}}^{\texttt{temp_plasma_electron_density_weighted_kev}}
$$
-**It is highly recommended to always have this constraint on as it is a global consistency checker**
-
----------------
### Poloidal beta and inverse aspect upper limit
diff --git a/documentation/source/physics-models/profiles/plasma_profiles.md b/documentation/source/physics-models/profiles/plasma_profiles.md
index 362da0f76e..4697d4f4df 100644
--- a/documentation/source/physics-models/profiles/plasma_profiles.md
+++ b/documentation/source/physics-models/profiles/plasma_profiles.md
@@ -405,7 +405,7 @@ $$
With the coefficients used to turn the temperature from $\text{keV}$ back to Joules.
-We calculate the volume averaged thermal plasma pressure using the volume averaged density and the density weighted volume averaged temperature for the electrons and ions. The density weighted temperature is used as $\langle nT \rangle \neq \langle n \rangle \langle T \rangle$. This can be seen also in the [equality constraint for thermal $\beta$](../plasma_beta/plasma_beta.md#beta-consistency)
+We calculate the volume averaged thermal plasma pressure using the volume averaged density and the density weighted volume averaged temperature for the electrons and ions. The density weighted temperature is used as $\langle nT \rangle \neq \langle n \rangle \langle T \rangle$.
$$
\langle p_{\text{thermal}} \rangle = \overbrace{\langle n_{\text{e}} \rangle_{\text{V}}}^{\texttt{nd_plasma_electrons_vol_avg}} \times \overbrace{\langle T_{\text{e}} \rangle_{\text{n}}}^{\texttt{temp_plasma_electron_density_weighted_kev}}\\
diff --git a/documentation/source/solver/solver-guide.md b/documentation/source/solver/solver-guide.md
index be891cce1a..a4d0ecfebe 100644
--- a/documentation/source/solver/solver-guide.md
+++ b/documentation/source/solver/solver-guide.md
@@ -18,7 +18,6 @@ A PROCESS input file will, for example, define which constraint equations are be
n_equality_constraints = 3
* Equalities
-icc = 1 * Beta
icc = 2 * Global power balance
icc = 11 * Radial build
@@ -144,7 +143,6 @@ i_process_run_mode = -2 * evaluation mode
n_equality_constraints = 2
* Equalities
-icc = 1 * Beta
icc = 2 * Global power balance
* Inequalities
@@ -160,4 +158,4 @@ ixc = 4 * temp_plasma_electron_vol_avg_kev
ixc = 6 * nd_plasma_electrons_vol_avg
...
```
-The beta and plasma power balance equality constraints are recommended to ensure model consistency, and the `temp_plasma_electron_vol_avg_kev` and `nd_plasma_electrons_vol_avg` iteration variables used to solve them.
+The plasma power balance equality constraint is recommended to ensure model consistency, the user may select one of `temp_plasma_electron_vol_avg_kev` and `nd_plasma_electrons_vol_avg` to solve it.
diff --git a/examples/data/large_tokamak_IN.DAT b/examples/data/large_tokamak_IN.DAT
index 00f98e25e7..cc19dd2588 100644
--- a/examples/data/large_tokamak_IN.DAT
+++ b/examples/data/large_tokamak_IN.DAT
@@ -17,17 +17,11 @@ i_figure_merit = 1
* Error tolerance for VMCON
epsvmc = 1e-7
-n_equality_constraints = 3
+n_equality_constraints = 2
* Constraint Equations - Consistency Equations *
************************************************
-* Beta consistency *
-*------------------*
-icc = 1
-ixc = 5 * beta_total_vol_avg
-beta_total_vol_avg = 0.03
-
* Global power balance *
*----------------------*
icc = 2
diff --git a/examples/data/large_tokamak_eval_IN.DAT b/examples/data/large_tokamak_eval_IN.DAT
index 96fe08dcc4..e429ad9720 100644
--- a/examples/data/large_tokamak_eval_IN.DAT
+++ b/examples/data/large_tokamak_eval_IN.DAT
@@ -3,10 +3,9 @@ i_process_run_mode = -2
*---------------Constraint Equations---------------*
* Define number of equality constraints
-n_equality_constraints = 2
+n_equality_constraints = 1
* Equalities
-icc = 1 * Beta
icc = 2 * Global power balance
* Inequalities
@@ -38,7 +37,7 @@ icc = 32 * TF coil conduit stress upper limit
ixc = 4 * temp_plasma_electron_vol_avg_kev
boundu(4) = 100.0
-ixc = 6 * nd_plasma_electrons_vol_avg
+
*---------------Cs Fatigue Variables---------------*
@@ -101,7 +100,7 @@ p_fusion_total_max_mw = 3000 * maximum fusion power (MW) (`constraint equation
p_div_bt_q_aspect_rmajor_max_mw = 10.0 * maximum ratio of Psep*Bt/qAR (MWT/m) (`constraint equation 68`)
t_burn_min = 7200.0 * minimum burn time (s) (KE - no longer itv;; see issue #706)
pflux_fw_neutron_max_mw = 2.0 * allowable neutron wall-load (MW/m2) (`constraint equation 8`)
-f_t_alpha_energy_confinement_min = 5.0 * Lower limit on f_t_alpha_energy_confinementnt the ratio of alpha particle to energy confinement
+f_t_alpha_energy_confinement_min = 5.0 * Lower limit on f_t_alpha_energy_confinement the ratio of alpha particle to energy confinement
*-------------------Constraints--------------------*
@@ -272,8 +271,8 @@ zref(10) = 1.0
alphan = 1.00 * density profile index
alphat = 1.45 * temperature profile index
+i_alphaj = 1 * Current profile index selection (0 = user input)
aspect = 3.0 * aspect ratio (`iteration variable 1`)
-beta_total_vol_avg = 0.03230408815355488 * total plasma beta (`iteration variable 5`) (calculated if stellarator)
b_plasma_toroidal_on_axis = 5.318322174644904 * toroidal field on axis (T) (`iteration variable 2`)
nd_plasma_electrons_vol_avg = 7.796223900029837e+19 * electron density (/m3) (`iteration variable 6`)
beta_norm_max = 3.0 * Troyon-like coefficient for beta scaling calculated
@@ -294,9 +293,9 @@ plasma_res_factor = 0.7 * plasma resistivity pre-factor
radius_plasma_pedestal_density_norm = 0.94 * r/a of density pedestal (`i_plasma_pedestal==1`)
radius_plasma_pedestal_temp_norm = 0.94 * r/a of temperature pedestal (`i_plasma_pedestal==1`)
tbeta = 2.0 * temperature profile index beta (`i_plasma_pedestal==1)
-temp_plasma_separatrix_electron_kev = 5.5 * electron temperature of pedestal (keV) (`i_plasma_pedestal==1')
+temp_plasma_pedestal_electron_kev = 5.5 * electron temperature of pedestal (keV) (`i_plasma_pedestal==1')
temp_plasma_separatrix_electron_kev = 0.1 * electron temperature at separatrix (keV) (`i_plasma_pedestal==1`) calculated if reinke
-i_confinement_time = 34 * switch for energy confinement time scaling law (see description in `tauscl`)
+i_confinement_time = 34 * switch for energy confinement time scaling law (see description in `labels_confinement_scalings`)
i_plasma_geometry = 0 * switch for plasma cross-sectional shape calculation;
kappa = 1.85 * plasma separatrix elongation (calculated if `i_plasma_geometry = 1-5; 7 or 9-10`)
q95 = 3.7339078193128556 * Safety factor 'near' plasma edge (`iteration variable 18`) equal to q95
@@ -307,6 +306,7 @@ i_single_null = 1 * switch for single null / double null plasma;
f_sync_reflect = 0.6 * synchrotron wall reflectivity factor
temp_plasma_electron_vol_avg_kev = 12.221383528378944 * volume averaged electron temperature (keV) (`iteration variable 4`)
triang = 0.5 * plasma separatrix triangularity (calculated if `i_plasma_geometry = 1; 3-5 or 7`)
+i_ind_plasma_internal_norm = 1 * Normalised plasma internal induction selection switch (0 = user input)
*----------------------Power-----------------------*
@@ -375,13 +375,15 @@ t_tf_superconductor_quench = 17.97282589344206 * fast discharge time for TF co
n_tf_coils = 16 * Number of TF coils (default = 50 for stellarators); Number of TF coils outer legs for ST
tftmp = 4.75 * peak helium coolant temperature in TF coils and PF coils (K)
dr_tf_nose_case = 0.2816873221155309 * inboard TF coil case outer (non-plasma side) thickness (m) (`iteration variable 57`)
-dr_tf_wp_with_insulation = 0.5153787768966674 * radial thickness of winding pack (m) (`iteration variable 140`) (issue #514)
+dr_tf_wp_with_insulation = 0.5153787768966674 * radial thickness of winding pack (m) (issue #514)
dx_tf_turn_steel = 0.008012110032981922 * TF coil conduit case thickness (m) (`iteration variable 58`)
dx_tf_wp_insulation = 0.008 * Thickness of the ground insulation layer surrounding (m)
temp_cs_superconductor_margin_min = 1.5 * minimum allowable temperature margin ; CS (K)
tmargmin = 1.5 * minimum allowable temperature margin ; TFC AND CS (K)
v_tf_coil_dump_quench_max_kv = 10.0 * max voltage across TF coil during quench (kV) (`iteration variable 52`)
f_a_tf_turn_cable_space_extra_void = 0.3 * coolant fraction of TFC 'cable' (`i_tf_sup=1`); or of TFC leg (`i_tf_sup=0`)
+flu_tf_neutron_fast_max = 1e22 * max fluence in the TF coil
+
*-----------------Times Variables------------------*
diff --git a/examples/data/large_tokamak_varied_min_net_electric_IN.DAT b/examples/data/large_tokamak_varied_min_net_electric_IN.DAT
index f60f49cdb1..652aea9d3e 100644
--- a/examples/data/large_tokamak_varied_min_net_electric_IN.DAT
+++ b/examples/data/large_tokamak_varied_min_net_electric_IN.DAT
@@ -17,17 +17,11 @@ i_figure_merit = 1
* Error tolerance for VMCON
epsvmc = 1e-7
-n_equality_constraints = 3
+n_equality_constraints = 1
* Constraint Equations - Consistency Equations *
************************************************
-* Beta consistency *
-*------------------*
-icc = 1
-ixc = 5 * beta_total_vol_avg
-beta_total_vol_avg = 0.03
-
* Global power balance *
*----------------------*
icc = 2
diff --git a/examples/data/large_tokamak_varyrun_IN.DAT b/examples/data/large_tokamak_varyrun_IN.DAT
index 1b76e61add..567e4a2e79 100644
--- a/examples/data/large_tokamak_varyrun_IN.DAT
+++ b/examples/data/large_tokamak_varyrun_IN.DAT
@@ -17,16 +17,11 @@ i_figure_merit = 1
* Error tolerance for VMCON
epsvmc = 1e-7
-n_equality_constraints = 3
+n_equality_constraints = 2
* Constraint Equations - Consistency Equations *
************************************************
-* Beta consistency *
-*------------------*
-icc = 1
-ixc = 5 * beta_total_vol_avg
-beta_total_vol_avg = 0.03
* Global power balance *
*----------------------*
diff --git a/examples/data/scan_example_file_IN.DAT b/examples/data/scan_example_file_IN.DAT
index c93e031720..323c0321ca 100644
--- a/examples/data/scan_example_file_IN.DAT
+++ b/examples/data/scan_example_file_IN.DAT
@@ -20,7 +20,7 @@ epsvmc = 1e-7
* Inequality constraint tolerance
force_vmcon_inequality_tolerance = 1e-6
-n_equality_constraints = 3
+n_equality_constraints = 2
* Scan Variables *
******************
@@ -32,12 +32,6 @@ sweep = 10.5, 10.4, 10.3, 10.2, 10.1, 10.0
* Constraint Equations - Consistency Equations *
************************************************
-* Beta consistency *
-*------------------*
-icc = 1
-ixc = 5 * beta_total_vol_avg
-beta_total_vol_avg = 0.03
-
* Global power balance *
*----------------------*
icc = 2
diff --git a/process/core/input.py b/process/core/input.py
index 31b6c6f6cd..73f67ac078 100644
--- a/process/core/input.py
+++ b/process/core/input.py
@@ -164,7 +164,6 @@ def bounds(self) -> tuple[NumberType | None, NumberType | None]:
"alphat": InputVariable("physics", float, range=(0.0, 10.0)),
"aspect": InputVariable("physics", float, range=(1.001, 40.0)),
"beamfus0": InputVariable("physics", float, range=(0.01, 10.0)),
- "beta_total_vol_avg": InputVariable("physics", float, range=(0.0, 1.0)),
"beta_vol_avg_max": InputVariable("physics", float, range=(0.0, 1.0)),
"beta_vol_avg_min": InputVariable("physics", float, range=(0.0, 1.0)),
"betbm0": InputVariable("physics", float, range=(0.0, 10.0)),
diff --git a/process/core/solver/iteration_variables.py b/process/core/solver/iteration_variables.py
index fd468c5537..1e4665bb6b 100644
--- a/process/core/solver/iteration_variables.py
+++ b/process/core/solver/iteration_variables.py
@@ -46,7 +46,6 @@ class IterationVariable:
2: IterationVariable("b_plasma_toroidal_on_axis", "physics", 0.010, 30.00),
3: IterationVariable("rmajor", "physics", 0.1, 50.00),
4: IterationVariable("temp_plasma_electron_vol_avg_kev", "physics", 5.0, 150.0),
- 5: IterationVariable("beta_total_vol_avg", "physics", 0.001, 1.0),
6: IterationVariable("nd_plasma_electrons_vol_avg", "physics", 2.0e19, 1.0e21),
7: IterationVariable("f_nd_beam_electron", "physics", 1.0e-6, 1.0),
10: IterationVariable("hfact", "physics", 0.1, 3.0),
diff --git a/process/data_structure/numerics.py b/process/data_structure/numerics.py
index 85785576a4..4687dddd74 100644
--- a/process/data_structure/numerics.py
+++ b/process/data_structure/numerics.py
@@ -295,11 +295,11 @@ class NumericsData:
]
)
"""Labels describing constraint equations (corresponding itvs)
- * ( 1) Beta (consistency equation) (itv 5)
+ * ( 1) Beta consistency equation
* ( 2) Global power balance (consistency equation) (itv 10,1,2,3,4,6,11)
* ( 3) Ion power balance DEPRECATED (itv 10,1,2,3,4,6,11)
* ( 4) Electron power balance DEPRECATED (itv 10,1,2,3,4,6,11)
- * ( 5) Density upper limit (itv 9,1,2,3,4,5,6)
+ * ( 5) Density upper limit (itv 9,1,2,3,4,6)
* ( 6) (Epsilon x beta poloidal) upper limit (itv 8,1,2,3,4,6)
* ( 7) Beam ion density (NBI) (consistency equation) (itv 7)
* ( 8) Neutron wall load upper limit (itv 14,1,2,3,4,6)
@@ -409,7 +409,6 @@ class NumericsData:
* ( 2) b_plasma_toroidal_on_axis
* ( 3) rmajor
* ( 4) temp_plasma_electron_vol_avg_kev
- * ( 5) beta_total_vol_avg
* ( 6) nd_plasma_electrons_vol_avg
* ( 7) f_nd_beam_electron
* ( 8) NOT USED
diff --git a/process/data_structure/physics_variables.py b/process/data_structure/physics_variables.py
index dad94478af..bbc0b8573d 100644
--- a/process/data_structure/physics_variables.py
+++ b/process/data_structure/physics_variables.py
@@ -639,7 +639,7 @@ class PhysicsData:
"""multiplier for beam-background fusion calculation"""
beta_total_vol_avg: float = 0.042
- """Volume averaged total plasma beta (⟨β⟩) (`iteration variable 5`) (calculated if stellarator)"""
+ """Volume averaged total plasma beta (⟨β⟩)"""
beta_fast_alpha: float = 0.0
"""Fast alpha beta component (β_alpha)"""
diff --git a/process/models/physics/physics.py b/process/models/physics/physics.py
index 43975e3f0e..1a442b8ba4 100644
--- a/process/models/physics/physics.py
+++ b/process/models/physics/physics.py
@@ -430,12 +430,6 @@ def run(self):
# ============================================
- # -----------------------------------------------------
- # Beta Components
- # -----------------------------------------------------
-
- self.beta.run()
-
# Stored thermal energies in the plasma
(
@@ -680,19 +674,8 @@ def run(self):
self.data.physics.f_p_alpha_plasma_deposited,
)
- self.data.physics.beta_fast_alpha = self.beta.fast_alpha_beta(
- b_plasma_poloidal_average=self.data.physics.b_plasma_surface_poloidal_average,
- b_plasma_toroidal_on_axis=self.data.physics.b_plasma_toroidal_on_axis,
- nd_plasma_electrons_vol_avg=self.data.physics.nd_plasma_electrons_vol_avg,
- nd_plasma_fuel_ions_vol_avg=self.data.physics.nd_plasma_fuel_ions_vol_avg,
- nd_plasma_ions_total_vol_avg=self.data.physics.nd_plasma_ions_total_vol_avg,
- temp_plasma_electron_density_weighted_kev=self.data.physics.temp_plasma_electron_density_weighted_kev,
- temp_plasma_ion_density_weighted_kev=self.data.physics.temp_plasma_ion_density_weighted_kev,
- pden_alpha_total_vol_avg_mw=self.data.physics.pden_alpha_total_vol_avg_mw,
- pden_plasma_alpha_vol_avg_mw=self.data.physics.pden_plasma_alpha_vol_avg_mw,
- i_beta_fast_alpha=self.data.physics.i_beta_fast_alpha,
- f_plasma_fuel_deuterium=self.data.physics.f_plasma_fuel_deuterium,
- )
+ # Calculate beta quantities.
+ self.beta.run()
# Calculate ion/electron equilibration power
@@ -3506,6 +3489,44 @@ def run(self):
If an illegal value of i_beta_norm_max is provided.
"""
+ # Thermal beta is derived directly from the current plasma state.
+ self.data.physics.beta_thermal_vol_avg = self.calculate_plasma_beta(
+ pres_plasma=(
+ constants.KILOELECTRON_VOLT
+ * (
+ self.data.physics.nd_plasma_electrons_vol_avg
+ * self.data.physics.temp_plasma_electron_density_weighted_kev
+ + self.data.physics.nd_plasma_ions_total_vol_avg
+ * self.data.physics.temp_plasma_ion_density_weighted_kev
+ )
+ ),
+ b_field=self.data.physics.b_plasma_total,
+ )
+
+ # Fast-alpha beta is calculated here so all tokamak beta calculations are
+ # owned by PlasmaBeta.run(). Keep fast_alpha_beta() unchanged because it is
+ # also called directly by the stellarator physics model.
+ self.data.physics.beta_fast_alpha = self.fast_alpha_beta(
+ b_plasma_poloidal_average=self.data.physics.b_plasma_surface_poloidal_average,
+ b_plasma_toroidal_on_axis=self.data.physics.b_plasma_toroidal_on_axis,
+ nd_plasma_electrons_vol_avg=self.data.physics.nd_plasma_electrons_vol_avg,
+ nd_plasma_fuel_ions_vol_avg=self.data.physics.nd_plasma_fuel_ions_vol_avg,
+ nd_plasma_ions_total_vol_avg=self.data.physics.nd_plasma_ions_total_vol_avg,
+ temp_plasma_electron_density_weighted_kev=self.data.physics.temp_plasma_electron_density_weighted_kev,
+ temp_plasma_ion_density_weighted_kev=self.data.physics.temp_plasma_ion_density_weighted_kev,
+ pden_alpha_total_vol_avg_mw=self.data.physics.pden_alpha_total_vol_avg_mw,
+ pden_plasma_alpha_vol_avg_mw=self.data.physics.pden_plasma_alpha_vol_avg_mw,
+ i_beta_fast_alpha=self.data.physics.i_beta_fast_alpha,
+ f_plasma_fuel_deuterium=self.data.physics.f_plasma_fuel_deuterium,
+ )
+
+ # Total beta is derived from the thermal and fast-particle components.
+ self.data.physics.beta_total_vol_avg = (
+ self.data.physics.beta_thermal_vol_avg
+ + self.data.physics.beta_fast_alpha
+ + self.data.physics.beta_beam
+ )
+
# -----------------------------------------------------
# Normalised Beta Limit
# -----------------------------------------------------
@@ -3570,6 +3591,10 @@ def run(self):
rminor=self.data.physics.rminor,
)
+ # -----------------------------------------------------
+ # Derived beta components
+ # -----------------------------------------------------
+
self.data.physics.beta_toroidal_vol_avg = (
self.data.physics.beta_total_vol_avg
* self.data.physics.b_plasma_total**2
@@ -3583,12 +3608,6 @@ def run(self):
beta=self.data.physics.beta_total_vol_avg,
)
- self.data.physics.beta_thermal_vol_avg = (
- self.data.physics.beta_total_vol_avg
- - self.data.physics.beta_fast_alpha
- - self.data.physics.beta_beam
- )
-
self.data.physics.beta_poloidal_eps = (
self.data.physics.beta_poloidal_vol_avg * self.data.physics.eps
)
@@ -3601,6 +3620,7 @@ def run(self):
)
** 2
)
+
self.data.physics.beta_thermal_toroidal_vol_avg = (
self.data.physics.beta_thermal_vol_avg
* (
@@ -3643,6 +3663,7 @@ def run(self):
)
** 2
)
+
self.data.physics.beta_norm_poloidal = (
self.data.physics.beta_norm_total
* (
diff --git a/tests/integration/data/large_tokamak_IN.DAT b/tests/integration/data/large_tokamak_IN.DAT
index fe77b15abf..16230592e5 100644
--- a/tests/integration/data/large_tokamak_IN.DAT
+++ b/tests/integration/data/large_tokamak_IN.DAT
@@ -17,17 +17,11 @@ i_figure_merit = 1
* Error tolerance for VMCON
epsvmc = 1e-7
-n_equality_constraints = 3
+n_equality_constraints = 2
* Constraint Equations - Consistency Equations *
************************************************
-* Beta consistency *
-*------------------*
-icc = 1
-ixc = 5 * beta_total_vol_avg
-beta_total_vol_avg = 0.03
-
* Global power balance *
*----------------------*
icc = 2
diff --git a/tests/integration/data/large_tokamak_eval.IN.DAT b/tests/integration/data/large_tokamak_eval.IN.DAT
index 852633fa65..b739105f1f 100644
--- a/tests/integration/data/large_tokamak_eval.IN.DAT
+++ b/tests/integration/data/large_tokamak_eval.IN.DAT
@@ -3,10 +3,9 @@ i_process_run_mode = -2
*---------------Constraint Equations---------------*
* Define number of equality constraints
-n_equality_constraints = 2
+n_equality_constraints = 1
* Equalities
-icc = 1 * Beta
icc = 2 * Global power balance
* Inequalities
@@ -38,7 +37,7 @@ icc = 32 * TF coil conduit stress upper limit
ixc = 4 * temp_plasma_electron_vol_avg_kev
boundu(4) = 100.0
-ixc = 6 * nd_plasma_electrons_vol_avg
+*ixc = 6 * nd_plasma_electrons_vol_avg
*---------------Cs Fatigue Variables---------------*
@@ -273,7 +272,6 @@ zref(10) = 1.0
alphan = 1.00 * density profile index
alphat = 1.45 * temperature profile index
aspect = 3.0 * aspect ratio (`iteration variable 1`)
-beta_total_vol_avg = 0.03230408815355488 * total plasma beta (`iteration variable 5`) (calculated if stellarator)
b_plasma_toroidal_on_axis = 5.318322174644904 * toroidal field on axis (T) (`iteration variable 2`)
nd_plasma_electrons_vol_avg = 7.796223900029837e+19 * electron density (/m3) (`iteration variable 6`)
beta_norm_max = 3.0 * Troyon-like coefficient for beta scaling calculated
diff --git a/tests/regression/input_files/large_tokamak_eval.IN.DAT b/tests/regression/input_files/large_tokamak_eval.IN.DAT
index 66a44b7c0a..e429ad9720 100644
--- a/tests/regression/input_files/large_tokamak_eval.IN.DAT
+++ b/tests/regression/input_files/large_tokamak_eval.IN.DAT
@@ -3,10 +3,9 @@ i_process_run_mode = -2
*---------------Constraint Equations---------------*
* Define number of equality constraints
-n_equality_constraints = 2
+n_equality_constraints = 1
* Equalities
-icc = 1 * Beta
icc = 2 * Global power balance
* Inequalities
@@ -38,7 +37,7 @@ icc = 32 * TF coil conduit stress upper limit
ixc = 4 * temp_plasma_electron_vol_avg_kev
boundu(4) = 100.0
-ixc = 6 * nd_plasma_electrons_vol_avg
+
*---------------Cs Fatigue Variables---------------*
@@ -274,7 +273,6 @@ alphan = 1.00 * density profile index
alphat = 1.45 * temperature profile index
i_alphaj = 1 * Current profile index selection (0 = user input)
aspect = 3.0 * aspect ratio (`iteration variable 1`)
-beta_total_vol_avg = 0.03230408815355488 * total plasma beta (`iteration variable 5`) (calculated if stellarator)
b_plasma_toroidal_on_axis = 5.318322174644904 * toroidal field on axis (T) (`iteration variable 2`)
nd_plasma_electrons_vol_avg = 7.796223900029837e+19 * electron density (/m3) (`iteration variable 6`)
beta_norm_max = 3.0 * Troyon-like coefficient for beta scaling calculated
diff --git a/tests/regression/input_files/large_tokamak_nof.IN.DAT b/tests/regression/input_files/large_tokamak_nof.IN.DAT
index 6bdc4128be..ac584697b6 100644
--- a/tests/regression/input_files/large_tokamak_nof.IN.DAT
+++ b/tests/regression/input_files/large_tokamak_nof.IN.DAT
@@ -19,7 +19,7 @@ epsvmc = 1e-7
* Number of equality constraints
* (the first n_equality_constraints icc=... statements are equality constraints)
-n_equality_constraints = 3
+n_equality_constraints = 2
* Maximum number of solver iterations
maxcal = 100
@@ -27,12 +27,6 @@ maxcal = 100
* Constraint Equations - Consistency Equations *
************************************************
-* Beta consistency *
-*------------------*
-icc = 1
-ixc = 5 * beta_total_vol_avg
-beta_total_vol_avg = 0.03
-
* Global power balance *
*----------------------*
icc = 2
diff --git a/tests/regression/input_files/low_aspect_ratio_DEMO.IN.DAT b/tests/regression/input_files/low_aspect_ratio_DEMO.IN.DAT
index fc7557a2ca..f58ad98972 100644
--- a/tests/regression/input_files/low_aspect_ratio_DEMO.IN.DAT
+++ b/tests/regression/input_files/low_aspect_ratio_DEMO.IN.DAT
@@ -33,15 +33,12 @@ i_figure_merit = -14 * Switch for figure-of-merit (see lablmm for descriptions
* DESCRIPTION: Switch for Figure-of-Merit (1: Minimise major radius)
* JUSTIFICATION: Aim to minimise major radius
-n_equality_constraints = 4
+n_equality_constraints = 3
* DESCRIPTION: No of equality constraints
* JUSTIFICATION:
*--------------------------Constraint Equations-------------------------*
-icc = 1
-* DESCRIPTION: Beta Consistency
-* JUSTIFICATION: Consistency equations should always be on
icc = 2
* DESCRIPTION: Global Power Balance Consistency
@@ -173,11 +170,6 @@ boundu(4) = 150.0
* DESCRIPTION: Volume averaged electron temperature (keV)
* JUSTIFICATION: Iterate temperature to get solution
-ixc = 5
-beta_total_vol_avg = 3.71965626913446160e-02
-* DESCRIPTION: Total Plasma Beta
-* JUSTIFICATION: Beta is limited by dnbeta
-
ixc = 6
nd_plasma_electrons_vol_avg = 6.88360041658364314e+19
* DESCRIPTION: Electron density (/m3)
diff --git a/tests/regression/input_files/spherical_tokamak_eval.IN.DAT b/tests/regression/input_files/spherical_tokamak_eval.IN.DAT
index f79f323f4e..a7a8282f58 100644
--- a/tests/regression/input_files/spherical_tokamak_eval.IN.DAT
+++ b/tests/regression/input_files/spherical_tokamak_eval.IN.DAT
@@ -3,10 +3,9 @@ i_process_run_mode = -2
*---------------Constraint Equations---------------*
* Define number of equality constraints
-n_equality_constraints = 3
+n_equality_constraints = 2
* Equalities
-icc = 1 * Beta
icc = 2 * Global power balance
icc = 11 * Radial build
@@ -32,9 +31,7 @@ icc = 16 * Net electric lower limit
ixc = 4 * temp_plasma_electron_vol_avg_kev
boundl(4) = 5.0
boundu(4) = 25.0
-ixc = 6 * nd_plasma_electrons_vol_avg
-boundl(6) = 0.5d+20
-boundu(6) = 5.0d+20
+
ixc = 29 * bore
boundl(29) = 0.1
boundu(29) = 0.8
@@ -258,7 +255,6 @@ i_alphaj = 0 * Current profile index selection (0 = user input)
alphan = 0.9 * density profile index
alphat = 1.4 * temperature profile index
aspect = 1.8 * aspect ratio (`iteration variable 1`)
-beta_total_vol_avg = 0.13134204235647895 * total plasma beta (`iteration variable 5`) (calculated if stellarator)
b_plasma_toroidal_on_axis = 3.0 * toroidal field on axis (T) (`iteration variable 2`)
nd_plasma_electrons_vol_avg = 9.69888313737236e+19 * electron density (/m3) (`iteration variable 6`)
beta_norm_max = 5.0 * Troyon-like coefficient for beta scaling
diff --git a/tests/regression/input_files/st_regression.IN.DAT b/tests/regression/input_files/st_regression.IN.DAT
index 5b2f404a4c..a112c0d424 100644
--- a/tests/regression/input_files/st_regression.IN.DAT
+++ b/tests/regression/input_files/st_regression.IN.DAT
@@ -55,7 +55,7 @@ i_figure_merit = -5
* DESCRIPTION: Switch for Figure-of-Merit
* JUSTIFICATION: Selected optimisation
-n_equality_constraints = 3
+n_equality_constraints = 2
* DESCRIPTION: Number of equality constraints (the first n_equality_constraints icc = ... statements are considered equality)
* JUSTIFICATION: 3 equality (consistency) equations
@@ -70,10 +70,6 @@ itart = 1
*_______________________________________________________________________________________*
*------------------------------- *Consistency Equations* -------------------------------*
*‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾*
-icc = 1
-* DESCRIPTION: Beta Consistency
-* JUSTIFICATION: Consistency equations should always be on
-* VARIABLES: Calculated in-situ, no iteration variables
icc = 2
* DESCRIPTION: Global Power Balance Consistency
@@ -295,13 +291,6 @@ icc = 24
* DESCRIPTION: Plasma beta upper limit
* JUSTIFICATION: Turned off, not in use. icc=24. Allow to be calculated in-situ
-ixc = 5
-beta_total_vol_avg = 0.2
-boundl(5) = 0.01
-boundu(5) = 1.0
-* DESCRIPTION: Total Plasma Beta,
-* JUSTIFICATION: Beta is limited by beta_norm_max
-
*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
diff --git a/tests/unit/data/large_tokamak_IN.DAT b/tests/unit/data/large_tokamak_IN.DAT
index fe77b15abf..16230592e5 100644
--- a/tests/unit/data/large_tokamak_IN.DAT
+++ b/tests/unit/data/large_tokamak_IN.DAT
@@ -17,17 +17,11 @@ i_figure_merit = 1
* Error tolerance for VMCON
epsvmc = 1e-7
-n_equality_constraints = 3
+n_equality_constraints = 2
* Constraint Equations - Consistency Equations *
************************************************
-* Beta consistency *
-*------------------*
-icc = 1
-ixc = 5 * beta_total_vol_avg
-beta_total_vol_avg = 0.03
-
* Global power balance *
*----------------------*
icc = 2