Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions process/core/input.py
Original file line number Diff line number Diff line change
Expand Up @@ -499,8 +499,8 @@ def bounds(self) -> tuple[NumberType | None, NumberType | None]:
"f_radius_beam_tangency_rmajor": InputVariable(
"current_drive", float, range=(0.5, 2.0)
),
"frhocp": InputVariable("tfcoil", float, range=(0.01, 5.0)),
"frholeg": InputVariable("tfcoil", float, range=(0.01, 5.0)),
"frhocp": InputVariable("resistive_tfcoil", float, range=(0.01, 5.0)),
"frholeg": InputVariable("resistive_tfcoil", float, range=(0.01, 5.0)),
"fseppc": InputVariable("build", float, range=(1000000.0, 1000000000.0)),
"fvoldw": InputVariable("fwbs", float, range=(0.0, 10.0)),
"fvolsi": InputVariable("fwbs", float, range=(0.0, 10.0)),
Expand Down Expand Up @@ -725,7 +725,7 @@ def bounds(self) -> tuple[NumberType | None, NumberType | None]:
),
"redun_vacp": InputVariable("costs", float, range=(0.0, 100.0)),
"residual_sig_hoop": InputVariable("cs_fatigue", float, range=(0.0, 1000000000.0)),
"rho_tf_bus": InputVariable("tfcoil", float, range=(0.0, 1e-05)),
"rho_tf_bus": InputVariable("resistive_tfcoil", float, range=(0.0, 1e-05)),
"rho_tf_joints": InputVariable("tfcoil", float, range=(0.0, 0.01)),
"radius_plasma_pedestal_density_norm": InputVariable(
"physics", float, range=(0.01, 1.0)
Expand Down
2 changes: 2 additions & 0 deletions process/core/model.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@
from process.data_structure.pulse_variables import PulseData
from process.data_structure.rebco_variables import RebcoData
from process.data_structure.reinke_variables import ReinkeData
from process.data_structure.resistive_tf_coil_variables import ResistiveTFData
from process.data_structure.scan_variables import ScanData
from process.data_structure.stellarator_configuration import StellaratorConfigData
from process.data_structure.stellarator_variables import StellaratorData
Expand Down Expand Up @@ -82,6 +83,7 @@ class DataStructure:
rebco: RebcoData = initialise_later
tfcoil: TFData = initialise_later
superconducting_tfcoil: SuperconductingTFData = initialise_later
resistive_tfcoil: ResistiveTFData = initialise_later
globals: GlobalData = initialise_later
scan: ScanData = initialise_later
numerics: NumericsData = initialise_later
Expand Down
5 changes: 4 additions & 1 deletion process/core/solver/constraints.py
Original file line number Diff line number Diff line change
Expand Up @@ -695,7 +695,10 @@ def constraint_equation_19(constraint_registration, data):
p_tf_leg_resistive_mw: TF coil outboard leg resistive power (total) (MW)
mvalim: MVA limit for resistive TF coil set (total) (MW)
"""
totmva = data.tfcoil.p_cp_resistive_mw + data.tfcoil.p_tf_leg_resistive_mw
totmva = (
data.resistive_tfcoil.p_cp_resistive_mw
+ data.resistive_tfcoil.p_tf_leg_resistive_mw
)

return leq(totmva, data.constraints.mvalim, constraint_registration)

Expand Down
51 changes: 51 additions & 0 deletions process/data_structure/resistive_tf_coil_variables.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
"""Module containing variables for the resistive TF coil models"""

from dataclasses import dataclass


@dataclass(slots=True)
class ResistiveTFData:
"""Dataclass holding resistive TF coil variables"""

a_res_tf_coil_conductor: float = 0.0
"""Area of resistive conductor in resistive TF coil [m2]"""

cdtfleg: float = 0.0 # questioning this
"""TF outboard leg current density (A/m2)"""

res_tf_leg: float = 0.0
"""TF coil leg resistance (ohm)"""

p_cp_resistive_mw: float = 0.0
"""Peak resistive TF coil inboard leg power (MW)"""

p_tf_joints_resistive_mw: float = 0.0
"""TF joints resistive power losses (MW)"""

p_tf_leg_resistive_mw: float = 0.0
"""TF coil outboard leg resistive power (MW)"""

rho_cp: float = 0.0
"""TF coil inboard leg resistivity [Ohm-m]. If `itart=0`, this variable is the
average resistivity over the whole magnet
"""

rho_tf_leg: float = 0.0
"""Resistivity of a TF coil leg (Ohm-m)"""

rho_tf_bus: float = 1.86e-8
"""Resistivity of a TF coil bus (Ohm-m). Default values is for that of GLIDCOP AL-15 (C15715) at 293K"""

frhocp: float = 1.0
"""Centrepost resistivity enhancement factor. For `itart=0`, this factor
is used for the whole magnet
"""

frholeg: float = 1.0
"""Outboard legs resistivity enhancement factor. Only used for `itart=1`."""

p_tf_joints_resistive: float = 0.0
"""Calculated TF joints resistive power losses [W]"""

vtfkv: float = 0.0
"""TF coil voltage for resistive coil including bus (kV)"""
3 changes: 3 additions & 0 deletions process/data_structure/superconducting_tf_coil_variables.py
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,9 @@ class SuperconductingTFData:
a_tf_coil_inboard_insulation: float = 0.0
"""Inboard coil insulation cross-section per coil [m²]"""

a_tf_turn_insulation: float = 0.0
"""single turn insulation area (m2)"""

f_a_tf_coil_inboard_steel: float = 0.0
"""Inboard coil steel fraction [-]"""

Expand Down
Loading
Loading