From c4affedb72f4ec358a72dc5f710fbb608a9e5a6a Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 14:58:27 +0000 Subject: [PATCH 01/42] Move availability under models directory --- process/main.py | 2 +- process/{ => models}/availability.py | 0 process/stellarator/stellarator.py | 2 +- tests/unit/test_availability.py | 2 +- tests/unit/test_ife.py | 2 +- tests/unit/test_stellarator.py | 2 +- 6 files changed, 5 insertions(+), 5 deletions(-) rename process/{ => models}/availability.py (100%) diff --git a/process/main.py b/process/main.py index 59a3c0d33..233719f6e 100644 --- a/process/main.py +++ b/process/main.py @@ -49,7 +49,6 @@ import process.data_structure as data_structure import process.init as init from process import constants -from process.availability import Availability from process.blanket_library import BlanketLibrary from process.build import Build from process.buildings import Buildings @@ -90,6 +89,7 @@ vary_iteration_variables, ) from process.log import logging_model_handler, show_errors +from process.models.availability import Availability from process.pfcoil import PFCoil from process.physics import DetailedPhysics, Physics, PlasmaBeta, PlasmaInductance from process.plasma_geometry import PlasmaGeom diff --git a/process/availability.py b/process/models/availability.py similarity index 100% rename from process/availability.py rename to process/models/availability.py diff --git a/process/stellarator/stellarator.py b/process/stellarator/stellarator.py index da36ef709..46c284215 100644 --- a/process/stellarator/stellarator.py +++ b/process/stellarator/stellarator.py @@ -38,11 +38,11 @@ from process.stellarator.preset_config import load_stellarator_config if TYPE_CHECKING: - from process.availability import Availability from process.buildings import Buildings from process.costs import Costs from process.current_drive import CurrentDrive from process.hcpb import CCFE_HCPB + from process.models.availability import Availability from process.plasma_profiles import PlasmaProfile from process.stellarator.neoclassics import Neoclassics from process.vacuum import Vacuum diff --git a/tests/unit/test_availability.py b/tests/unit/test_availability.py index c0dcc121c..b60ea2e6d 100644 --- a/tests/unit/test_availability.py +++ b/tests/unit/test_availability.py @@ -4,7 +4,6 @@ from pytest import approx from process import data_structure -from process.availability import Availability from process.data_structure import constraint_variables as ctv from process.data_structure import cost_variables as cv from process.data_structure import divertor_variables as dv @@ -14,6 +13,7 @@ from process.data_structure import tfcoil_variables as tfv from process.data_structure import times_variables as tv from process.init import init_all_module_vars +from process.models.availability import Availability @pytest.fixture diff --git a/tests/unit/test_ife.py b/tests/unit/test_ife.py index 4c8d9f245..ec3fa0262 100644 --- a/tests/unit/test_ife.py +++ b/tests/unit/test_ife.py @@ -5,7 +5,6 @@ import numpy as np import pytest -from process.availability import Availability from process.costs import Costs from process.data_structure import ( buildings_variables, @@ -17,6 +16,7 @@ physics_variables, ) from process.ife import IFE +from process.models.availability import Availability @pytest.fixture diff --git a/tests/unit/test_stellarator.py b/tests/unit/test_stellarator.py index 4f49d922f..f87130cb7 100644 --- a/tests/unit/test_stellarator.py +++ b/tests/unit/test_stellarator.py @@ -3,7 +3,6 @@ import numpy as np import pytest -from process.availability import Availability from process.buildings import Buildings from process.costs import Costs from process.current_drive import ( @@ -29,6 +28,7 @@ ) from process.fw import FirstWall from process.hcpb import CCFE_HCPB +from process.models.availability import Availability from process.physics import Physics, PlasmaBeta, PlasmaInductance from process.plasma_profiles import PlasmaProfile from process.power import Power From 6e277fccb1f0cf9501c02f2bc07de93665da9070 Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 14:59:45 +0000 Subject: [PATCH 02/42] Move blanket_library to models/blankets --- process/dcll.py | 4 ++-- process/fw.py | 6 +++++- process/hcpb.py | 4 ++-- process/main.py | 2 +- process/{ => models/blankets}/blanket_library.py | 0 process/shield.py | 7 ++++++- process/vacuum.py | 2 +- tests/integration/test_blanket_library_int.py | 2 +- tests/unit/test_blanket_library.py | 2 +- 9 files changed, 19 insertions(+), 10 deletions(-) rename process/{ => models/blankets}/blanket_library.py (100%) diff --git a/process/dcll.py b/process/dcll.py index 23904296a..f54f962dc 100644 --- a/process/dcll.py +++ b/process/dcll.py @@ -1,9 +1,8 @@ -import process.blanket_library as blanket_library +import process.models.blankets.blanket_library as blanket_library from process import constants from process import ( process_output as po, ) -from process.blanket_library import InboardBlanket, OutboardBlanket from process.data_structure import ( build_variables, current_drive_variables, @@ -15,6 +14,7 @@ physics_variables, primary_pumping_variables, ) +from process.models.blankets.blanket_library import InboardBlanket, OutboardBlanket class DCLL(InboardBlanket, OutboardBlanket): diff --git a/process/fw.py b/process/fw.py index 807d9e815..342e842b3 100644 --- a/process/fw.py +++ b/process/fw.py @@ -4,7 +4,6 @@ from process import constants from process import process_output as po -from process.blanket_library import BlanketLibrary, dshellarea, eshellarea from process.coolprop_interface import FluidProperties from process.data_structure import ( blanket_library, @@ -15,6 +14,11 @@ physics_variables, ) from process.exceptions import ProcessValueError +from process.models.blankets.blanket_library import ( + BlanketLibrary, + dshellarea, + eshellarea, +) logger = logging.getLogger(__name__) diff --git a/process/hcpb.py b/process/hcpb.py index 598f2f3e1..818d19e8e 100644 --- a/process/hcpb.py +++ b/process/hcpb.py @@ -2,13 +2,12 @@ import numpy as np -import process.blanket_library as blanket_library import process.data_structure.blanket_library as blanket_vars +import process.models.blankets.blanket_library as blanket_library from process import constants from process import ( process_output as po, ) -from process.blanket_library import InboardBlanket, OutboardBlanket from process.coolprop_interface import FluidProperties from process.data_structure import ( build_variables, @@ -24,6 +23,7 @@ tfcoil_variables, ) from process.exceptions import ProcessValueError +from process.models.blankets.blanket_library import InboardBlanket, OutboardBlanket logger = logging.getLogger(__name__) diff --git a/process/main.py b/process/main.py index 233719f6e..430c7c968 100644 --- a/process/main.py +++ b/process/main.py @@ -49,7 +49,6 @@ import process.data_structure as data_structure import process.init as init from process import constants -from process.blanket_library import BlanketLibrary from process.build import Build from process.buildings import Buildings from process.costs import Costs @@ -90,6 +89,7 @@ ) from process.log import logging_model_handler, show_errors from process.models.availability import Availability +from process.models.blankets.blanket_library import BlanketLibrary from process.pfcoil import PFCoil from process.physics import DetailedPhysics, Physics, PlasmaBeta, PlasmaInductance from process.plasma_geometry import PlasmaGeom diff --git a/process/blanket_library.py b/process/models/blankets/blanket_library.py similarity index 100% rename from process/blanket_library.py rename to process/models/blankets/blanket_library.py diff --git a/process/shield.py b/process/shield.py index fc505acfd..8660d2c1a 100644 --- a/process/shield.py +++ b/process/shield.py @@ -2,13 +2,18 @@ from process import constants from process import process_output as po -from process.blanket_library import dshellarea, dshellvol, eshellarea, eshellvol from process.data_structure import blanket_library as blanket_library from process.data_structure import build_variables as build_variables from process.data_structure import ccfe_hcpb_module as ccfe_hcpb_module from process.data_structure import divertor_variables as divertor_variables from process.data_structure import fwbs_variables as fwbs_variables from process.data_structure import physics_variables as physics_variables +from process.models.blankets.blanket_library import ( + dshellarea, + dshellvol, + eshellarea, + eshellvol, +) logger = logging.getLogger(__name__) diff --git a/process/vacuum.py b/process/vacuum.py index 45f210b50..1d3e87674 100644 --- a/process/vacuum.py +++ b/process/vacuum.py @@ -5,7 +5,6 @@ from process import constants, process_output from process import process_output as po -from process.blanket_library import dshellvol, eshellvol from process.data_structure import ( blanket_library, build_variables, @@ -16,6 +15,7 @@ times_variables, vacuum_variables, ) +from process.models.blankets.blanket_library import dshellvol, eshellvol logger = logging.getLogger(__name__) diff --git a/tests/integration/test_blanket_library_int.py b/tests/integration/test_blanket_library_int.py index 7266b3ff2..c9c443f94 100644 --- a/tests/integration/test_blanket_library_int.py +++ b/tests/integration/test_blanket_library_int.py @@ -1,11 +1,11 @@ import pytest -from process.blanket_library import BlanketLibrary from process.data_structure import build_variables as bv from process.data_structure import fwbs_variables as fwbs from process.data_structure import physics_variables as pv from process.fw import FirstWall from process.init import init_all_module_vars +from process.models.blankets.blanket_library import BlanketLibrary init_all_module_vars() diff --git a/tests/unit/test_blanket_library.py b/tests/unit/test_blanket_library.py index 68d93d3f6..e3904586a 100644 --- a/tests/unit/test_blanket_library.py +++ b/tests/unit/test_blanket_library.py @@ -3,7 +3,6 @@ import numpy as np import pytest -from process.blanket_library import BlanketLibrary from process.data_structure import ( blanket_library, build_variables, @@ -12,6 +11,7 @@ physics_variables, ) from process.fw import FirstWall +from process.models.blankets.blanket_library import BlanketLibrary @pytest.fixture From 0f0c5365e656465fadad66430ecfb09c17196ea1 Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:00:23 +0000 Subject: [PATCH 03/42] Move build under models --- process/io/plot_proc.py | 2 +- process/main.py | 2 +- process/{ => models}/build.py | 0 process/tf_coil.py | 2 +- tests/unit/test_build.py | 2 +- tests/unit/test_tfcoil.py | 2 +- 6 files changed, 5 insertions(+), 5 deletions(-) rename process/{ => models}/build.py (100%) diff --git a/process/io/plot_proc.py b/process/io/plot_proc.py index c1a37ea17..8f1f31300 100644 --- a/process/io/plot_proc.py +++ b/process/io/plot_proc.py @@ -33,7 +33,6 @@ import process.data_structure.pfcoil_variables as pfcoil_variables import process.io.mfile as mf import process.superconducting_tf_coil as sctf -from process.build import Build from process.current_drive import ElectronBernstein, ElectronCyclotron from process.data_structure import impurity_radiation_module, physics_variables from process.geometry.blanket_geometry import ( @@ -61,6 +60,7 @@ ) from process.impurity_radiation import read_impurity_file from process.io.mfile import MFileErrorClass +from process.models.build import Build from process.objectives import OBJECTIVE_NAMES from process.superconducting_tf_coil import SUPERCONDUCTING_TF_TYPES diff --git a/process/main.py b/process/main.py index 430c7c968..ba02c4f74 100644 --- a/process/main.py +++ b/process/main.py @@ -49,7 +49,6 @@ import process.data_structure as data_structure import process.init as init from process import constants -from process.build import Build from process.buildings import Buildings from process.costs import Costs from process.costs_2015 import Costs2015 @@ -90,6 +89,7 @@ from process.log import logging_model_handler, show_errors from process.models.availability import Availability from process.models.blankets.blanket_library import BlanketLibrary +from process.models.build import Build from process.pfcoil import PFCoil from process.physics import DetailedPhysics, Physics, PlasmaBeta, PlasmaInductance from process.plasma_geometry import PlasmaGeom diff --git a/process/build.py b/process/models/build.py similarity index 100% rename from process/build.py rename to process/models/build.py diff --git a/process/tf_coil.py b/process/tf_coil.py index 2867fc9fc..3645cd7c8 100644 --- a/process/tf_coil.py +++ b/process/tf_coil.py @@ -7,7 +7,6 @@ from process import constants from process import process_output as po -from process.build import Build from process.data_structure import ( build_variables, fwbs_variables, @@ -20,6 +19,7 @@ ) from process.data_structure import build_variables as bv from process.exceptions import ProcessValueError +from process.models.build import Build logger = logging.getLogger(__name__) diff --git a/tests/unit/test_build.py b/tests/unit/test_build.py index 4ec96d206..1a8be9060 100644 --- a/tests/unit/test_build.py +++ b/tests/unit/test_build.py @@ -2,12 +2,12 @@ import pytest -from process.build import Build from process.data_structure import ( build_variables, divertor_variables, physics_variables, ) +from process.models.build import Build @pytest.fixture diff --git a/tests/unit/test_tfcoil.py b/tests/unit/test_tfcoil.py index 68044b75e..5c270b784 100644 --- a/tests/unit/test_tfcoil.py +++ b/tests/unit/test_tfcoil.py @@ -10,13 +10,13 @@ import pytest import process.tf_coil as tfcoil_module -from process.build import Build from process.data_structure import ( build_variables, fwbs_variables, superconducting_tf_coil_variables, tfcoil_variables, ) +from process.models.build import Build from process.tf_coil import TFCoil From a7197e3fb9ac48b6039a78faa90b0a7a5e6c5ae4 Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:01:02 +0000 Subject: [PATCH 04/42] Move . buildings under models --- process/main.py | 2 +- process/{ => models}/buildings.py | 0 process/stellarator/stellarator.py | 2 +- tests/unit/test_buildings.py | 2 +- tests/unit/test_stellarator.py | 2 +- 5 files changed, 4 insertions(+), 4 deletions(-) rename process/{ => models}/buildings.py (100%) diff --git a/process/main.py b/process/main.py index ba02c4f74..a6ef89bb9 100644 --- a/process/main.py +++ b/process/main.py @@ -49,7 +49,6 @@ import process.data_structure as data_structure import process.init as init from process import constants -from process.buildings import Buildings from process.costs import Costs from process.costs_2015 import Costs2015 from process.cryostat import Cryostat @@ -90,6 +89,7 @@ from process.models.availability import Availability from process.models.blankets.blanket_library import BlanketLibrary from process.models.build import Build +from process.models.buildings import Buildings from process.pfcoil import PFCoil from process.physics import DetailedPhysics, Physics, PlasmaBeta, PlasmaInductance from process.plasma_geometry import PlasmaGeom diff --git a/process/buildings.py b/process/models/buildings.py similarity index 100% rename from process/buildings.py rename to process/models/buildings.py diff --git a/process/stellarator/stellarator.py b/process/stellarator/stellarator.py index 46c284215..348e6ccd7 100644 --- a/process/stellarator/stellarator.py +++ b/process/stellarator/stellarator.py @@ -38,11 +38,11 @@ from process.stellarator.preset_config import load_stellarator_config if TYPE_CHECKING: - from process.buildings import Buildings from process.costs import Costs from process.current_drive import CurrentDrive from process.hcpb import CCFE_HCPB from process.models.availability import Availability + from process.models.buildings import Buildings from process.plasma_profiles import PlasmaProfile from process.stellarator.neoclassics import Neoclassics from process.vacuum import Vacuum diff --git a/tests/unit/test_buildings.py b/tests/unit/test_buildings.py index f91d3954b..d567052ea 100644 --- a/tests/unit/test_buildings.py +++ b/tests/unit/test_buildings.py @@ -2,7 +2,6 @@ import pytest -from process.buildings import Buildings from process.data_structure import ( build_variables, buildings_variables, @@ -14,6 +13,7 @@ physics_variables, tfcoil_variables, ) +from process.models.buildings import Buildings @pytest.fixture diff --git a/tests/unit/test_stellarator.py b/tests/unit/test_stellarator.py index f87130cb7..e9313b575 100644 --- a/tests/unit/test_stellarator.py +++ b/tests/unit/test_stellarator.py @@ -3,7 +3,6 @@ import numpy as np import pytest -from process.buildings import Buildings from process.costs import Costs from process.current_drive import ( CurrentDrive, @@ -29,6 +28,7 @@ from process.fw import FirstWall from process.hcpb import CCFE_HCPB from process.models.availability import Availability +from process.models.buildings import Buildings from process.physics import Physics, PlasmaBeta, PlasmaInductance from process.plasma_profiles import PlasmaProfile from process.power import Power From 7f23c34a5e13e8f2e00027b2092e2906a964325b Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:02:01 +0000 Subject: [PATCH 05/42] Move confinement_time to models/physics --- process/io/plot_proc.py | 2 +- process/{ => models/physics}/confinement_time.py | 0 process/physics.py | 2 +- tests/unit/test_confinement_time.py | 2 +- 4 files changed, 3 insertions(+), 3 deletions(-) rename process/{ => models/physics}/confinement_time.py (100%) diff --git a/process/io/plot_proc.py b/process/io/plot_proc.py index 8f1f31300..a749ac94a 100644 --- a/process/io/plot_proc.py +++ b/process/io/plot_proc.py @@ -28,10 +28,10 @@ from matplotlib.path import Path from scipy.interpolate import interp1d -import process.confinement_time as confine import process.constants as constants import process.data_structure.pfcoil_variables as pfcoil_variables import process.io.mfile as mf +import process.models.physics.confinement_time as confine import process.superconducting_tf_coil as sctf from process.current_drive import ElectronBernstein, ElectronCyclotron from process.data_structure import impurity_radiation_module, physics_variables diff --git a/process/confinement_time.py b/process/models/physics/confinement_time.py similarity index 100% rename from process/confinement_time.py rename to process/models/physics/confinement_time.py diff --git a/process/physics.py b/process/physics.py index ba5111426..30cf82887 100644 --- a/process/physics.py +++ b/process/physics.py @@ -8,10 +8,10 @@ import scipy.integrate as integrate from scipy.optimize import root_scalar -import process.confinement_time as confinement import process.fusion_reactions as reactions import process.impurity_radiation as impurity_radiation import process.l_h_transition as transition +import process.models.physics.confinement_time as confinement import process.physics_functions as physics_funcs from process import constants from process import process_output as po diff --git a/tests/unit/test_confinement_time.py b/tests/unit/test_confinement_time.py index 825d033c6..5a36dbd59 100644 --- a/tests/unit/test_confinement_time.py +++ b/tests/unit/test_confinement_time.py @@ -1,6 +1,6 @@ import pytest -from process import confinement_time as conf +from process.models.physics import confinement_time as conf @pytest.mark.parametrize( From d8d3a0842dbee0a182d6644a5763c8f94a68b286 Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:02:46 +0000 Subject: [PATCH 06/42] Move costs_2015 under models/costs --- process/main.py | 2 +- process/{ => models/costs}/costs_2015.py | 0 tests/unit/test_costs_2015.py | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) rename process/{ => models/costs}/costs_2015.py (100%) diff --git a/process/main.py b/process/main.py index a6ef89bb9..67da25401 100644 --- a/process/main.py +++ b/process/main.py @@ -50,7 +50,6 @@ import process.init as init from process import constants from process.costs import Costs -from process.costs_2015 import Costs2015 from process.cryostat import Cryostat from process.cs_fatigue import CsFatigue from process.current_drive import ( @@ -90,6 +89,7 @@ from process.models.blankets.blanket_library import BlanketLibrary from process.models.build import Build from process.models.buildings import Buildings +from process.models.costs.costs_2015 import Costs2015 from process.pfcoil import PFCoil from process.physics import DetailedPhysics, Physics, PlasmaBeta, PlasmaInductance from process.plasma_geometry import PlasmaGeom diff --git a/process/costs_2015.py b/process/models/costs/costs_2015.py similarity index 100% rename from process/costs_2015.py rename to process/models/costs/costs_2015.py diff --git a/tests/unit/test_costs_2015.py b/tests/unit/test_costs_2015.py index 865062f54..9f6c4aad5 100644 --- a/tests/unit/test_costs_2015.py +++ b/tests/unit/test_costs_2015.py @@ -5,7 +5,6 @@ import numpy as np import pytest -from process.costs_2015 import Costs2015 from process.data_structure import ( build_variables, cost_2015_variables, @@ -18,6 +17,7 @@ physics_variables, tfcoil_variables, ) +from process.models.costs.costs_2015 import Costs2015 @pytest.fixture From f8d31d8df6386a6e906068a6be7c5a3647d5ce4c Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:03:13 +0000 Subject: [PATCH 07/42] Move costs under models/costs --- process/main.py | 2 +- process/{ => models/costs}/costs.py | 0 process/stellarator/stellarator.py | 2 +- tests/unit/test_costs_1990.py | 2 +- tests/unit/test_ife.py | 2 +- tests/unit/test_stellarator.py | 2 +- 6 files changed, 5 insertions(+), 5 deletions(-) rename process/{ => models/costs}/costs.py (100%) diff --git a/process/main.py b/process/main.py index 67da25401..a1f8a7a31 100644 --- a/process/main.py +++ b/process/main.py @@ -49,7 +49,6 @@ import process.data_structure as data_structure import process.init as init from process import constants -from process.costs import Costs from process.cryostat import Cryostat from process.cs_fatigue import CsFatigue from process.current_drive import ( @@ -89,6 +88,7 @@ from process.models.blankets.blanket_library import BlanketLibrary from process.models.build import Build from process.models.buildings import Buildings +from process.models.costs.costs import Costs from process.models.costs.costs_2015 import Costs2015 from process.pfcoil import PFCoil from process.physics import DetailedPhysics, Physics, PlasmaBeta, PlasmaInductance diff --git a/process/costs.py b/process/models/costs/costs.py similarity index 100% rename from process/costs.py rename to process/models/costs/costs.py diff --git a/process/stellarator/stellarator.py b/process/stellarator/stellarator.py index 348e6ccd7..48e6ba5df 100644 --- a/process/stellarator/stellarator.py +++ b/process/stellarator/stellarator.py @@ -38,11 +38,11 @@ from process.stellarator.preset_config import load_stellarator_config if TYPE_CHECKING: - from process.costs import Costs from process.current_drive import CurrentDrive from process.hcpb import CCFE_HCPB from process.models.availability import Availability from process.models.buildings import Buildings + from process.models.costs.costs import Costs from process.plasma_profiles import PlasmaProfile from process.stellarator.neoclassics import Neoclassics from process.vacuum import Vacuum diff --git a/tests/unit/test_costs_1990.py b/tests/unit/test_costs_1990.py index cd6614923..1843269b9 100644 --- a/tests/unit/test_costs_1990.py +++ b/tests/unit/test_costs_1990.py @@ -7,7 +7,6 @@ from pytest import approx from process import data_structure -from process.costs import Costs from process.data_structure import ( build_variables, buildings_variables, @@ -27,6 +26,7 @@ times_variables, vacuum_variables, ) +from process.models.costs.costs import Costs @pytest.fixture diff --git a/tests/unit/test_ife.py b/tests/unit/test_ife.py index ec3fa0262..aabbdcb00 100644 --- a/tests/unit/test_ife.py +++ b/tests/unit/test_ife.py @@ -5,7 +5,6 @@ import numpy as np import pytest -from process.costs import Costs from process.data_structure import ( buildings_variables, cost_variables, @@ -17,6 +16,7 @@ ) from process.ife import IFE from process.models.availability import Availability +from process.models.costs.costs import Costs @pytest.fixture diff --git a/tests/unit/test_stellarator.py b/tests/unit/test_stellarator.py index e9313b575..269aaba8f 100644 --- a/tests/unit/test_stellarator.py +++ b/tests/unit/test_stellarator.py @@ -3,7 +3,6 @@ import numpy as np import pytest -from process.costs import Costs from process.current_drive import ( CurrentDrive, ElectronBernstein, @@ -29,6 +28,7 @@ from process.hcpb import CCFE_HCPB from process.models.availability import Availability from process.models.buildings import Buildings +from process.models.costs.costs import Costs from process.physics import Physics, PlasmaBeta, PlasmaInductance from process.plasma_profiles import PlasmaProfile from process.power import Power From cc2e91bf2ce700478a7bf1c621e5030f835dc252 Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:03:52 +0000 Subject: [PATCH 08/42] Move cryostat under models --- process/main.py | 2 +- process/{ => models}/cryostat.py | 0 tests/unit/test_cryostat.py | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) rename process/{ => models}/cryostat.py (100%) diff --git a/process/main.py b/process/main.py index a1f8a7a31..9e6352531 100644 --- a/process/main.py +++ b/process/main.py @@ -49,7 +49,6 @@ import process.data_structure as data_structure import process.init as init from process import constants -from process.cryostat import Cryostat from process.cs_fatigue import CsFatigue from process.current_drive import ( CurrentDrive, @@ -90,6 +89,7 @@ from process.models.buildings import Buildings from process.models.costs.costs import Costs from process.models.costs.costs_2015 import Costs2015 +from process.models.cryostat import Cryostat from process.pfcoil import PFCoil from process.physics import DetailedPhysics, Physics, PlasmaBeta, PlasmaInductance from process.plasma_geometry import PlasmaGeom diff --git a/process/cryostat.py b/process/models/cryostat.py similarity index 100% rename from process/cryostat.py rename to process/models/cryostat.py diff --git a/tests/unit/test_cryostat.py b/tests/unit/test_cryostat.py index a23cb9c30..ef0fe2771 100644 --- a/tests/unit/test_cryostat.py +++ b/tests/unit/test_cryostat.py @@ -3,7 +3,6 @@ import numpy as np import pytest -from process.cryostat import Cryostat from process.data_structure import ( blanket_library, build_variables, @@ -11,6 +10,7 @@ fwbs_variables, pfcoil_variables, ) +from process.models.cryostat import Cryostat @pytest.fixture From 95ee3453d6266838127eee27e6d3625519d88cf4 Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:04:27 +0000 Subject: [PATCH 09/42] Move cs_fatigue under models --- process/main.py | 2 +- process/{ => models}/cs_fatigue.py | 0 tests/integration/test_pfcoil_int.py | 2 +- tests/unit/test_cs_fatigue.py | 2 +- tests/unit/test_pfcoil.py | 2 +- 5 files changed, 4 insertions(+), 4 deletions(-) rename process/{ => models}/cs_fatigue.py (100%) diff --git a/process/main.py b/process/main.py index 9e6352531..dff978ec2 100644 --- a/process/main.py +++ b/process/main.py @@ -49,7 +49,6 @@ import process.data_structure as data_structure import process.init as init from process import constants -from process.cs_fatigue import CsFatigue from process.current_drive import ( CurrentDrive, ElectronBernstein, @@ -90,6 +89,7 @@ from process.models.costs.costs import Costs from process.models.costs.costs_2015 import Costs2015 from process.models.cryostat import Cryostat +from process.models.cs_fatigue import CsFatigue from process.pfcoil import PFCoil from process.physics import DetailedPhysics, Physics, PlasmaBeta, PlasmaInductance from process.plasma_geometry import PlasmaGeom diff --git a/process/cs_fatigue.py b/process/models/cs_fatigue.py similarity index 100% rename from process/cs_fatigue.py rename to process/models/cs_fatigue.py diff --git a/tests/integration/test_pfcoil_int.py b/tests/integration/test_pfcoil_int.py index 72b1bedc4..5d6b86a64 100644 --- a/tests/integration/test_pfcoil_int.py +++ b/tests/integration/test_pfcoil_int.py @@ -14,7 +14,6 @@ from numpy.testing import assert_array_almost_equal from process import constants -from process.cs_fatigue import CsFatigue from process.data_structure import build_variables as bv from process.data_structure import fwbs_variables as fwbsv from process.data_structure import pfcoil_variables, superconducting_tf_coil_variables @@ -22,6 +21,7 @@ from process.data_structure import tfcoil_variables as tfv from process.data_structure import times_variables as tv from process.init import init_all_module_vars +from process.models.cs_fatigue import CsFatigue from process.pfcoil import ( CSCoil, PFCoil, diff --git a/tests/unit/test_cs_fatigue.py b/tests/unit/test_cs_fatigue.py index 1f7bf0125..a2441f314 100644 --- a/tests/unit/test_cs_fatigue.py +++ b/tests/unit/test_cs_fatigue.py @@ -2,7 +2,7 @@ import pytest -from process.cs_fatigue import CsFatigue +from process.models.cs_fatigue import CsFatigue @pytest.fixture diff --git a/tests/unit/test_pfcoil.py b/tests/unit/test_pfcoil.py index 498869cfe..7a8d38078 100644 --- a/tests/unit/test_pfcoil.py +++ b/tests/unit/test_pfcoil.py @@ -6,10 +6,10 @@ import pytest from numpy.testing import assert_array_almost_equal -from process.cs_fatigue import CsFatigue from process.data_structure import build_variables as bv from process.data_structure import pfcoil_variables from process.data_structure import tfcoil_variables as tfv +from process.models.cs_fatigue import CsFatigue from process.pfcoil import CSCoil, PFCoil, calculate_b_field_at_point, rsid From 48e49f3df44923d13c222078a4e038f001ea1475 Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:05:36 +0000 Subject: [PATCH 10/42] Move current_drive under models/physics --- process/io/plot_proc.py | 2 +- process/main.py | 16 ++++++++-------- process/{ => models/physics}/current_drive.py | 0 process/stellarator/stellarator.py | 2 +- tests/unit/test_current_drive.py | 12 ++++++------ tests/unit/test_physics.py | 14 +++++++------- tests/unit/test_stellarator.py | 16 ++++++++-------- 7 files changed, 31 insertions(+), 31 deletions(-) rename process/{ => models/physics}/current_drive.py (100%) diff --git a/process/io/plot_proc.py b/process/io/plot_proc.py index a749ac94a..30a32c73a 100644 --- a/process/io/plot_proc.py +++ b/process/io/plot_proc.py @@ -33,7 +33,6 @@ import process.io.mfile as mf import process.models.physics.confinement_time as confine import process.superconducting_tf_coil as sctf -from process.current_drive import ElectronBernstein, ElectronCyclotron from process.data_structure import impurity_radiation_module, physics_variables from process.geometry.blanket_geometry import ( blanket_geometry_double_null, @@ -61,6 +60,7 @@ from process.impurity_radiation import read_impurity_file from process.io.mfile import MFileErrorClass from process.models.build import Build +from process.models.physics.current_drive import ElectronBernstein, ElectronCyclotron from process.objectives import OBJECTIVE_NAMES from process.superconducting_tf_coil import SUPERCONDUCTING_TF_TYPES diff --git a/process/main.py b/process/main.py index dff978ec2..53d2444b9 100644 --- a/process/main.py +++ b/process/main.py @@ -49,14 +49,6 @@ import process.data_structure as data_structure import process.init as init from process import constants -from process.current_drive import ( - CurrentDrive, - ElectronBernstein, - ElectronCyclotron, - IonCyclotron, - LowerHybrid, - NeutralBeam, -) from process.dcll import DCLL from process.divertor import Divertor from process.fw import FirstWall @@ -90,6 +82,14 @@ from process.models.costs.costs_2015 import Costs2015 from process.models.cryostat import Cryostat from process.models.cs_fatigue import CsFatigue +from process.models.physics.current_drive import ( + CurrentDrive, + ElectronBernstein, + ElectronCyclotron, + IonCyclotron, + LowerHybrid, + NeutralBeam, +) from process.pfcoil import PFCoil from process.physics import DetailedPhysics, Physics, PlasmaBeta, PlasmaInductance from process.plasma_geometry import PlasmaGeom diff --git a/process/current_drive.py b/process/models/physics/current_drive.py similarity index 100% rename from process/current_drive.py rename to process/models/physics/current_drive.py diff --git a/process/stellarator/stellarator.py b/process/stellarator/stellarator.py index 48e6ba5df..a54be7c32 100644 --- a/process/stellarator/stellarator.py +++ b/process/stellarator/stellarator.py @@ -38,11 +38,11 @@ from process.stellarator.preset_config import load_stellarator_config if TYPE_CHECKING: - from process.current_drive import CurrentDrive from process.hcpb import CCFE_HCPB from process.models.availability import Availability from process.models.buildings import Buildings from process.models.costs.costs import Costs + from process.models.physics.current_drive import CurrentDrive from process.plasma_profiles import PlasmaProfile from process.stellarator.neoclassics import Neoclassics from process.vacuum import Vacuum diff --git a/tests/unit/test_current_drive.py b/tests/unit/test_current_drive.py index 2d6cc7cd9..7e94370bf 100644 --- a/tests/unit/test_current_drive.py +++ b/tests/unit/test_current_drive.py @@ -1,7 +1,12 @@ import pytest from process import constants -from process.current_drive import ( +from process.data_structure import ( + current_drive_variables, + heat_transport_variables, + physics_variables, +) +from process.models.physics.current_drive import ( CurrentDrive, ElectronBernstein, ElectronCyclotron, @@ -9,11 +14,6 @@ LowerHybrid, NeutralBeam, ) -from process.data_structure import ( - current_drive_variables, - heat_transport_variables, - physics_variables, -) from process.plasma_profiles import PlasmaProfile diff --git a/tests/unit/test_physics.py b/tests/unit/test_physics.py index 9992a24a7..b0adce8cb 100644 --- a/tests/unit/test_physics.py +++ b/tests/unit/test_physics.py @@ -6,7 +6,13 @@ import pytest from process import constants -from process.current_drive import ( +from process.data_structure import ( + current_drive_variables, + impurity_radiation_module, + physics_variables, +) +from process.impurity_radiation import initialise_imprad +from process.models.physics.current_drive import ( CurrentDrive, ElectronBernstein, ElectronCyclotron, @@ -14,12 +20,6 @@ LowerHybrid, NeutralBeam, ) -from process.data_structure import ( - current_drive_variables, - impurity_radiation_module, - physics_variables, -) -from process.impurity_radiation import initialise_imprad from process.physics import ( DetailedPhysics, Physics, diff --git a/tests/unit/test_stellarator.py b/tests/unit/test_stellarator.py index 269aaba8f..997c54658 100644 --- a/tests/unit/test_stellarator.py +++ b/tests/unit/test_stellarator.py @@ -3,14 +3,6 @@ import numpy as np import pytest -from process.current_drive import ( - CurrentDrive, - ElectronBernstein, - ElectronCyclotron, - IonCyclotron, - LowerHybrid, - NeutralBeam, -) from process.data_structure import ( build_variables, cost_variables, @@ -29,6 +21,14 @@ from process.models.availability import Availability from process.models.buildings import Buildings from process.models.costs.costs import Costs +from process.models.physics.current_drive import ( + CurrentDrive, + ElectronBernstein, + ElectronCyclotron, + IonCyclotron, + LowerHybrid, + NeutralBeam, +) from process.physics import Physics, PlasmaBeta, PlasmaInductance from process.plasma_profiles import PlasmaProfile from process.power import Power From d2ce7c28552c4ca5db00598e8acbdd2aa12ed939 Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:06:19 +0000 Subject: [PATCH 11/42] Move dcll under models/blankets --- process/main.py | 2 +- process/{ => models/blankets}/dcll.py | 0 tests/unit/test_dcll.py | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) rename process/{ => models/blankets}/dcll.py (100%) diff --git a/process/main.py b/process/main.py index 53d2444b9..828cde8ba 100644 --- a/process/main.py +++ b/process/main.py @@ -49,7 +49,6 @@ import process.data_structure as data_structure import process.init as init from process import constants -from process.dcll import DCLL from process.divertor import Divertor from process.fw import FirstWall from process.hcpb import CCFE_HCPB @@ -76,6 +75,7 @@ from process.log import logging_model_handler, show_errors from process.models.availability import Availability from process.models.blankets.blanket_library import BlanketLibrary +from process.models.blankets.dcll import DCLL from process.models.build import Build from process.models.buildings import Buildings from process.models.costs.costs import Costs diff --git a/process/dcll.py b/process/models/blankets/dcll.py similarity index 100% rename from process/dcll.py rename to process/models/blankets/dcll.py diff --git a/tests/unit/test_dcll.py b/tests/unit/test_dcll.py index 7ab1d71e0..ffd6b0a91 100644 --- a/tests/unit/test_dcll.py +++ b/tests/unit/test_dcll.py @@ -11,8 +11,8 @@ fwbs_variables, physics_variables, ) -from process.dcll import DCLL from process.fw import FirstWall +from process.models.blankets.dcll import DCLL @pytest.fixture From 88aace32ecbe105b19eb37e1d9cf4129077741c0 Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:07:00 +0000 Subject: [PATCH 12/42] Move divertor under models --- process/main.py | 2 +- process/{ => models}/divertor.py | 0 tests/unit/test_divertor.py | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) rename process/{ => models}/divertor.py (100%) diff --git a/process/main.py b/process/main.py index 828cde8ba..57a0cc015 100644 --- a/process/main.py +++ b/process/main.py @@ -49,7 +49,6 @@ import process.data_structure as data_structure import process.init as init from process import constants -from process.divertor import Divertor from process.fw import FirstWall from process.hcpb import CCFE_HCPB from process.ife import IFE @@ -82,6 +81,7 @@ from process.models.costs.costs_2015 import Costs2015 from process.models.cryostat import Cryostat from process.models.cs_fatigue import CsFatigue +from process.models.divertor import Divertor from process.models.physics.current_drive import ( CurrentDrive, ElectronBernstein, diff --git a/process/divertor.py b/process/models/divertor.py similarity index 100% rename from process/divertor.py rename to process/models/divertor.py diff --git a/tests/unit/test_divertor.py b/tests/unit/test_divertor.py index 1e8c905d0..68836d4e2 100644 --- a/tests/unit/test_divertor.py +++ b/tests/unit/test_divertor.py @@ -4,7 +4,7 @@ from process.data_structure import divertor_variables as dv from process.data_structure import tfcoil_variables as tfv -from process.divertor import Divertor +from process.models.divertor import Divertor @pytest.fixture From e2eea3c166b18b7798896bf72e060da08b876f2b Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:07:59 +0000 Subject: [PATCH 13/42] Move fusion_reactions under models/physics --- process/{ => models/physics}/fusion_reactions.py | 0 process/physics.py | 2 +- process/stellarator/stellarator.py | 2 +- tests/unit/test_fusion_reactions.py | 2 +- 4 files changed, 3 insertions(+), 3 deletions(-) rename process/{ => models/physics}/fusion_reactions.py (100%) diff --git a/process/fusion_reactions.py b/process/models/physics/fusion_reactions.py similarity index 100% rename from process/fusion_reactions.py rename to process/models/physics/fusion_reactions.py diff --git a/process/physics.py b/process/physics.py index 30cf82887..74a6487b4 100644 --- a/process/physics.py +++ b/process/physics.py @@ -8,10 +8,10 @@ import scipy.integrate as integrate from scipy.optimize import root_scalar -import process.fusion_reactions as reactions import process.impurity_radiation as impurity_radiation import process.l_h_transition as transition import process.models.physics.confinement_time as confinement +import process.models.physics.fusion_reactions as reactions import process.physics_functions as physics_funcs from process import constants from process import process_output as po diff --git a/process/stellarator/stellarator.py b/process/stellarator/stellarator.py index a54be7c32..4e2cfad8c 100644 --- a/process/stellarator/stellarator.py +++ b/process/stellarator/stellarator.py @@ -6,7 +6,7 @@ import numpy as np -import process.fusion_reactions as reactions +import process.models.physics.fusion_reactions as reactions import process.physics_functions as physics_funcs from process import constants from process import process_output as po diff --git a/tests/unit/test_fusion_reactions.py b/tests/unit/test_fusion_reactions.py index d41a7f680..21bca7c52 100644 --- a/tests/unit/test_fusion_reactions.py +++ b/tests/unit/test_fusion_reactions.py @@ -6,8 +6,8 @@ import pytest from pytest import approx -from process import fusion_reactions as reactions from process.data_structure import physics_variables as pv +from process.models.physics import fusion_reactions as reactions class SetFusionPowersParam(NamedTuple): From ece0b7d3cd709e8e5165aae12c89b65cf8d5f5a1 Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:09:39 +0000 Subject: [PATCH 14/42] Move fw under models --- process/main.py | 2 +- process/{ => models}/fw.py | 0 tests/integration/test_blanket_library_int.py | 2 +- tests/unit/test_blanket_library.py | 2 +- tests/unit/test_ccfe_hcpb.py | 2 +- tests/unit/test_dcll.py | 2 +- tests/unit/test_fw.py | 2 +- tests/unit/test_stellarator.py | 2 +- 8 files changed, 7 insertions(+), 7 deletions(-) rename process/{ => models}/fw.py (100%) diff --git a/process/main.py b/process/main.py index 57a0cc015..157398bb4 100644 --- a/process/main.py +++ b/process/main.py @@ -49,7 +49,6 @@ import process.data_structure as data_structure import process.init as init from process import constants -from process.fw import FirstWall from process.hcpb import CCFE_HCPB from process.ife import IFE from process.impurity_radiation import initialise_imprad @@ -82,6 +81,7 @@ from process.models.cryostat import Cryostat from process.models.cs_fatigue import CsFatigue from process.models.divertor import Divertor +from process.models.fw import FirstWall from process.models.physics.current_drive import ( CurrentDrive, ElectronBernstein, diff --git a/process/fw.py b/process/models/fw.py similarity index 100% rename from process/fw.py rename to process/models/fw.py diff --git a/tests/integration/test_blanket_library_int.py b/tests/integration/test_blanket_library_int.py index c9c443f94..09793307a 100644 --- a/tests/integration/test_blanket_library_int.py +++ b/tests/integration/test_blanket_library_int.py @@ -3,9 +3,9 @@ from process.data_structure import build_variables as bv from process.data_structure import fwbs_variables as fwbs from process.data_structure import physics_variables as pv -from process.fw import FirstWall from process.init import init_all_module_vars from process.models.blankets.blanket_library import BlanketLibrary +from process.models.fw import FirstWall init_all_module_vars() diff --git a/tests/unit/test_blanket_library.py b/tests/unit/test_blanket_library.py index e3904586a..118e01b77 100644 --- a/tests/unit/test_blanket_library.py +++ b/tests/unit/test_blanket_library.py @@ -10,8 +10,8 @@ fwbs_variables, physics_variables, ) -from process.fw import FirstWall from process.models.blankets.blanket_library import BlanketLibrary +from process.models.fw import FirstWall @pytest.fixture diff --git a/tests/unit/test_ccfe_hcpb.py b/tests/unit/test_ccfe_hcpb.py index 74a33afc1..1613b0774 100644 --- a/tests/unit/test_ccfe_hcpb.py +++ b/tests/unit/test_ccfe_hcpb.py @@ -15,8 +15,8 @@ primary_pumping_variables, tfcoil_variables, ) -from process.fw import FirstWall from process.hcpb import CCFE_HCPB +from process.models.fw import FirstWall @pytest.fixture diff --git a/tests/unit/test_dcll.py b/tests/unit/test_dcll.py index ffd6b0a91..a1f7d4849 100644 --- a/tests/unit/test_dcll.py +++ b/tests/unit/test_dcll.py @@ -11,8 +11,8 @@ fwbs_variables, physics_variables, ) -from process.fw import FirstWall from process.models.blankets.dcll import DCLL +from process.models.fw import FirstWall @pytest.fixture diff --git a/tests/unit/test_fw.py b/tests/unit/test_fw.py index 5cbb23143..33fee23e6 100644 --- a/tests/unit/test_fw.py +++ b/tests/unit/test_fw.py @@ -3,7 +3,7 @@ import pytest from process.data_structure import fwbs_variables -from process.fw import FirstWall +from process.models.fw import FirstWall @pytest.fixture diff --git a/tests/unit/test_stellarator.py b/tests/unit/test_stellarator.py index 997c54658..fd2a459a1 100644 --- a/tests/unit/test_stellarator.py +++ b/tests/unit/test_stellarator.py @@ -16,11 +16,11 @@ structure_variables, tfcoil_variables, ) -from process.fw import FirstWall from process.hcpb import CCFE_HCPB from process.models.availability import Availability from process.models.buildings import Buildings from process.models.costs.costs import Costs +from process.models.fw import FirstWall from process.models.physics.current_drive import ( CurrentDrive, ElectronBernstein, From 6bbbdc1bafba512f967bc061459774a73882b7bb Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:10:22 +0000 Subject: [PATCH 15/42] Move hcpb under models/blankets --- process/main.py | 2 +- process/{ => models/blankets}/hcpb.py | 0 process/stellarator/stellarator.py | 2 +- tests/unit/test_ccfe_hcpb.py | 2 +- tests/unit/test_stellarator.py | 2 +- 5 files changed, 4 insertions(+), 4 deletions(-) rename process/{ => models/blankets}/hcpb.py (100%) diff --git a/process/main.py b/process/main.py index 157398bb4..540dd2ea5 100644 --- a/process/main.py +++ b/process/main.py @@ -49,7 +49,6 @@ import process.data_structure as data_structure import process.init as init from process import constants -from process.hcpb import CCFE_HCPB from process.ife import IFE from process.impurity_radiation import initialise_imprad from process.io import ( @@ -74,6 +73,7 @@ from process.models.availability import Availability from process.models.blankets.blanket_library import BlanketLibrary from process.models.blankets.dcll import DCLL +from process.models.blankets.hcpb import CCFE_HCPB from process.models.build import Build from process.models.buildings import Buildings from process.models.costs.costs import Costs diff --git a/process/hcpb.py b/process/models/blankets/hcpb.py similarity index 100% rename from process/hcpb.py rename to process/models/blankets/hcpb.py diff --git a/process/stellarator/stellarator.py b/process/stellarator/stellarator.py index 4e2cfad8c..b4bff8996 100644 --- a/process/stellarator/stellarator.py +++ b/process/stellarator/stellarator.py @@ -38,8 +38,8 @@ from process.stellarator.preset_config import load_stellarator_config if TYPE_CHECKING: - from process.hcpb import CCFE_HCPB from process.models.availability import Availability + from process.models.blankets.hcpb import CCFE_HCPB from process.models.buildings import Buildings from process.models.costs.costs import Costs from process.models.physics.current_drive import CurrentDrive diff --git a/tests/unit/test_ccfe_hcpb.py b/tests/unit/test_ccfe_hcpb.py index 1613b0774..40aea4cca 100644 --- a/tests/unit/test_ccfe_hcpb.py +++ b/tests/unit/test_ccfe_hcpb.py @@ -15,7 +15,7 @@ primary_pumping_variables, tfcoil_variables, ) -from process.hcpb import CCFE_HCPB +from process.models.blankets.hcpb import CCFE_HCPB from process.models.fw import FirstWall diff --git a/tests/unit/test_stellarator.py b/tests/unit/test_stellarator.py index fd2a459a1..56d6fdafd 100644 --- a/tests/unit/test_stellarator.py +++ b/tests/unit/test_stellarator.py @@ -16,8 +16,8 @@ structure_variables, tfcoil_variables, ) -from process.hcpb import CCFE_HCPB from process.models.availability import Availability +from process.models.blankets.hcpb import CCFE_HCPB from process.models.buildings import Buildings from process.models.costs.costs import Costs from process.models.fw import FirstWall From 486acb1b541ba6cb739642e7e70d582ab8c8484e Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:11:06 +0000 Subject: [PATCH 16/42] Move ife under models --- process/main.py | 2 +- process/{ => models}/ife.py | 0 tests/unit/test_ife.py | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) rename process/{ => models}/ife.py (100%) diff --git a/process/main.py b/process/main.py index 540dd2ea5..23baf0b5e 100644 --- a/process/main.py +++ b/process/main.py @@ -49,7 +49,6 @@ import process.data_structure as data_structure import process.init as init from process import constants -from process.ife import IFE from process.impurity_radiation import initialise_imprad from process.io import ( mfile, @@ -82,6 +81,7 @@ from process.models.cs_fatigue import CsFatigue from process.models.divertor import Divertor from process.models.fw import FirstWall +from process.models.ife import IFE from process.models.physics.current_drive import ( CurrentDrive, ElectronBernstein, diff --git a/process/ife.py b/process/models/ife.py similarity index 100% rename from process/ife.py rename to process/models/ife.py diff --git a/tests/unit/test_ife.py b/tests/unit/test_ife.py index aabbdcb00..66879372a 100644 --- a/tests/unit/test_ife.py +++ b/tests/unit/test_ife.py @@ -14,9 +14,9 @@ ife_variables, physics_variables, ) -from process.ife import IFE from process.models.availability import Availability from process.models.costs.costs import Costs +from process.models.ife import IFE @pytest.fixture From d601f445f44f7a2245142bc29df9a0f6afa01600 Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:11:59 +0000 Subject: [PATCH 17/42] Move impurity_radiation under models/physics --- process/io/plot_proc.py | 2 +- process/main.py | 2 +- process/{ => models/physics}/impurity_radiation.py | 0 process/physics.py | 2 +- process/physics_functions.py | 2 +- tests/unit/test_impurity_radiation.py | 2 +- tests/unit/test_physics.py | 2 +- 7 files changed, 6 insertions(+), 6 deletions(-) rename process/{ => models/physics}/impurity_radiation.py (100%) diff --git a/process/io/plot_proc.py b/process/io/plot_proc.py index 30a32c73a..cf114e71f 100644 --- a/process/io/plot_proc.py +++ b/process/io/plot_proc.py @@ -57,10 +57,10 @@ vacuum_vessel_geometry_double_null, vacuum_vessel_geometry_single_null, ) -from process.impurity_radiation import read_impurity_file from process.io.mfile import MFileErrorClass from process.models.build import Build from process.models.physics.current_drive import ElectronBernstein, ElectronCyclotron +from process.models.physics.impurity_radiation import read_impurity_file from process.objectives import OBJECTIVE_NAMES from process.superconducting_tf_coil import SUPERCONDUCTING_TF_TYPES diff --git a/process/main.py b/process/main.py index 23baf0b5e..733f5ef75 100644 --- a/process/main.py +++ b/process/main.py @@ -49,7 +49,6 @@ import process.data_structure as data_structure import process.init as init from process import constants -from process.impurity_radiation import initialise_imprad from process.io import ( mfile, plot_plotly_sankey, @@ -90,6 +89,7 @@ LowerHybrid, NeutralBeam, ) +from process.models.physics.impurity_radiation import initialise_imprad from process.pfcoil import PFCoil from process.physics import DetailedPhysics, Physics, PlasmaBeta, PlasmaInductance from process.plasma_geometry import PlasmaGeom diff --git a/process/impurity_radiation.py b/process/models/physics/impurity_radiation.py similarity index 100% rename from process/impurity_radiation.py rename to process/models/physics/impurity_radiation.py diff --git a/process/physics.py b/process/physics.py index 74a6487b4..3bca7e4c6 100644 --- a/process/physics.py +++ b/process/physics.py @@ -8,10 +8,10 @@ import scipy.integrate as integrate from scipy.optimize import root_scalar -import process.impurity_radiation as impurity_radiation import process.l_h_transition as transition import process.models.physics.confinement_time as confinement import process.models.physics.fusion_reactions as reactions +import process.models.physics.impurity_radiation as impurity_radiation import process.physics_functions as physics_funcs from process import constants from process import process_output as po diff --git a/process/physics_functions.py b/process/physics_functions.py index 003ecb63f..3c8022d34 100644 --- a/process/physics_functions.py +++ b/process/physics_functions.py @@ -3,7 +3,7 @@ import numpy as np -import process.impurity_radiation as impurity +import process.models.physics.impurity_radiation as impurity from process.plasma_profiles import PlasmaProfile logger = logging.getLogger(__name__) diff --git a/tests/unit/test_impurity_radiation.py b/tests/unit/test_impurity_radiation.py index d7984f6d1..04cf87c85 100644 --- a/tests/unit/test_impurity_radiation.py +++ b/tests/unit/test_impurity_radiation.py @@ -5,7 +5,7 @@ import numpy as np import pytest -import process.impurity_radiation as impurity_radiation +import process.models.physics.impurity_radiation as impurity_radiation from process.data_structure import impurity_radiation_module diff --git a/tests/unit/test_physics.py b/tests/unit/test_physics.py index b0adce8cb..a85b9590b 100644 --- a/tests/unit/test_physics.py +++ b/tests/unit/test_physics.py @@ -11,7 +11,6 @@ impurity_radiation_module, physics_variables, ) -from process.impurity_radiation import initialise_imprad from process.models.physics.current_drive import ( CurrentDrive, ElectronBernstein, @@ -20,6 +19,7 @@ LowerHybrid, NeutralBeam, ) +from process.models.physics.impurity_radiation import initialise_imprad from process.physics import ( DetailedPhysics, Physics, From 453e8579ecefe0c86117ae1733e5e00997e40064 Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:12:39 +0000 Subject: [PATCH 18/42] Move l_h_transition under models/physics --- process/{ => models/physics}/l_h_transition.py | 0 process/physics.py | 2 +- tests/unit/test_l_h_transition.py | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) rename process/{ => models/physics}/l_h_transition.py (100%) diff --git a/process/l_h_transition.py b/process/models/physics/l_h_transition.py similarity index 100% rename from process/l_h_transition.py rename to process/models/physics/l_h_transition.py diff --git a/process/physics.py b/process/physics.py index 3bca7e4c6..693d6bc83 100644 --- a/process/physics.py +++ b/process/physics.py @@ -8,10 +8,10 @@ import scipy.integrate as integrate from scipy.optimize import root_scalar -import process.l_h_transition as transition import process.models.physics.confinement_time as confinement import process.models.physics.fusion_reactions as reactions import process.models.physics.impurity_radiation as impurity_radiation +import process.models.physics.l_h_transition as transition import process.physics_functions as physics_funcs from process import constants from process import process_output as po diff --git a/tests/unit/test_l_h_transition.py b/tests/unit/test_l_h_transition.py index d66f0b9c6..970c85497 100644 --- a/tests/unit/test_l_h_transition.py +++ b/tests/unit/test_l_h_transition.py @@ -1,6 +1,6 @@ import pytest -from process.l_h_transition import ( +from process.models.physics.l_h_transition import ( calculate_hubbard2012_lower, calculate_hubbard2012_nominal, calculate_hubbard2012_upper, From 49fc09dcee76b5669485f828d7b9a36b0028a575 Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:13:34 +0000 Subject: [PATCH 19/42] Move pfcoil under models --- process/main.py | 2 +- process/{ => models}/pfcoil.py | 0 tests/integration/test_pfcoil_int.py | 2 +- tests/unit/test_pfcoil.py | 2 +- 4 files changed, 3 insertions(+), 3 deletions(-) rename process/{ => models}/pfcoil.py (100%) diff --git a/process/main.py b/process/main.py index 733f5ef75..4fae914c9 100644 --- a/process/main.py +++ b/process/main.py @@ -81,6 +81,7 @@ from process.models.divertor import Divertor from process.models.fw import FirstWall from process.models.ife import IFE +from process.models.pfcoil import PFCoil from process.models.physics.current_drive import ( CurrentDrive, ElectronBernstein, @@ -90,7 +91,6 @@ NeutralBeam, ) from process.models.physics.impurity_radiation import initialise_imprad -from process.pfcoil import PFCoil from process.physics import DetailedPhysics, Physics, PlasmaBeta, PlasmaInductance from process.plasma_geometry import PlasmaGeom from process.plasma_profiles import PlasmaProfile diff --git a/process/pfcoil.py b/process/models/pfcoil.py similarity index 100% rename from process/pfcoil.py rename to process/models/pfcoil.py diff --git a/tests/integration/test_pfcoil_int.py b/tests/integration/test_pfcoil_int.py index 5d6b86a64..6c1662fde 100644 --- a/tests/integration/test_pfcoil_int.py +++ b/tests/integration/test_pfcoil_int.py @@ -22,7 +22,7 @@ from process.data_structure import times_variables as tv from process.init import init_all_module_vars from process.models.cs_fatigue import CsFatigue -from process.pfcoil import ( +from process.models.pfcoil import ( CSCoil, PFCoil, fixb, diff --git a/tests/unit/test_pfcoil.py b/tests/unit/test_pfcoil.py index 7a8d38078..18f013f24 100644 --- a/tests/unit/test_pfcoil.py +++ b/tests/unit/test_pfcoil.py @@ -10,7 +10,7 @@ from process.data_structure import pfcoil_variables from process.data_structure import tfcoil_variables as tfv from process.models.cs_fatigue import CsFatigue -from process.pfcoil import CSCoil, PFCoil, calculate_b_field_at_point, rsid +from process.models.pfcoil import CSCoil, PFCoil, calculate_b_field_at_point, rsid @pytest.fixture From 047c1ae77782df1794bd75aed4328e6e8cc97d90 Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:15:09 +0000 Subject: [PATCH 20/42] Move physics_functions under models --- process/{ => models/physics}/physics_functions.py | 0 process/physics.py | 2 +- process/stellarator/stellarator.py | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) rename process/{ => models/physics}/physics_functions.py (100%) diff --git a/process/physics_functions.py b/process/models/physics/physics_functions.py similarity index 100% rename from process/physics_functions.py rename to process/models/physics/physics_functions.py diff --git a/process/physics.py b/process/physics.py index 693d6bc83..832f1aa08 100644 --- a/process/physics.py +++ b/process/physics.py @@ -12,7 +12,7 @@ import process.models.physics.fusion_reactions as reactions import process.models.physics.impurity_radiation as impurity_radiation import process.models.physics.l_h_transition as transition -import process.physics_functions as physics_funcs +import process.models.physics.physics_functions as physics_funcs from process import constants from process import process_output as po from process.data_structure import ( diff --git a/process/stellarator/stellarator.py b/process/stellarator/stellarator.py index b4bff8996..d34f96e76 100644 --- a/process/stellarator/stellarator.py +++ b/process/stellarator/stellarator.py @@ -7,7 +7,7 @@ import numpy as np import process.models.physics.fusion_reactions as reactions -import process.physics_functions as physics_funcs +import process.models.physics.physics_functions as physics_funcs from process import constants from process import process_output as po from process.coolprop_interface import FluidProperties From b4993402bfab2081066930418d960664502c85a3 Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:17:33 +0000 Subject: [PATCH 21/42] Move physics under models --- process/main.py | 7 ++++++- process/{ => models/physics}/physics.py | 0 process/stellarator/stellarator.py | 2 +- tests/unit/test_physics.py | 2 +- tests/unit/test_stellarator.py | 2 +- 5 files changed, 9 insertions(+), 4 deletions(-) rename process/{ => models/physics}/physics.py (100%) diff --git a/process/main.py b/process/main.py index 4fae914c9..64b9399d4 100644 --- a/process/main.py +++ b/process/main.py @@ -91,7 +91,12 @@ NeutralBeam, ) from process.models.physics.impurity_radiation import initialise_imprad -from process.physics import DetailedPhysics, Physics, PlasmaBeta, PlasmaInductance +from process.models.physics.physics import ( + DetailedPhysics, + Physics, + PlasmaBeta, + PlasmaInductance, +) from process.plasma_geometry import PlasmaGeom from process.plasma_profiles import PlasmaProfile from process.power import Power diff --git a/process/physics.py b/process/models/physics/physics.py similarity index 100% rename from process/physics.py rename to process/models/physics/physics.py diff --git a/process/stellarator/stellarator.py b/process/stellarator/stellarator.py index d34f96e76..b51a5df39 100644 --- a/process/stellarator/stellarator.py +++ b/process/stellarator/stellarator.py @@ -29,7 +29,7 @@ tfcoil_variables, ) from process.exceptions import ProcessValueError -from process.physics import Physics, rether +from process.models.physics.physics import Physics, rether from process.stellarator.build import st_build from process.stellarator.coils.calculate import st_coil from process.stellarator.denisty_limits import power_at_ignition_point, st_denisty_limits diff --git a/tests/unit/test_physics.py b/tests/unit/test_physics.py index a85b9590b..8d9a1acdd 100644 --- a/tests/unit/test_physics.py +++ b/tests/unit/test_physics.py @@ -20,7 +20,7 @@ NeutralBeam, ) from process.models.physics.impurity_radiation import initialise_imprad -from process.physics import ( +from process.models.physics.physics import ( DetailedPhysics, Physics, PlasmaBeta, diff --git a/tests/unit/test_stellarator.py b/tests/unit/test_stellarator.py index 56d6fdafd..f778c1f78 100644 --- a/tests/unit/test_stellarator.py +++ b/tests/unit/test_stellarator.py @@ -29,7 +29,7 @@ LowerHybrid, NeutralBeam, ) -from process.physics import Physics, PlasmaBeta, PlasmaInductance +from process.models.physics.physics import Physics, PlasmaBeta, PlasmaInductance from process.plasma_profiles import PlasmaProfile from process.power import Power from process.stellarator.build import st_build From 04e203cf61b3c16cc492071f807165bed293dbb2 Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:18:35 +0000 Subject: [PATCH 22/42] Move plasma_profiles under models/physics --- process/main.py | 2 +- process/models/physics/current_drive.py | 2 +- process/models/physics/fusion_reactions.py | 2 +- process/models/physics/physics_functions.py | 2 +- process/{ => models/physics}/plasma_profiles.py | 0 process/stellarator/stellarator.py | 2 +- tests/unit/test_current_drive.py | 2 +- tests/unit/test_physics.py | 2 +- tests/unit/test_plasma_profiles.py | 2 +- tests/unit/test_stellarator.py | 2 +- 10 files changed, 9 insertions(+), 9 deletions(-) rename process/{ => models/physics}/plasma_profiles.py (100%) diff --git a/process/main.py b/process/main.py index 64b9399d4..6c3ba2d7c 100644 --- a/process/main.py +++ b/process/main.py @@ -97,8 +97,8 @@ PlasmaBeta, PlasmaInductance, ) +from process.models.physics.plasma_profiles import PlasmaProfile from process.plasma_geometry import PlasmaGeom -from process.plasma_profiles import PlasmaProfile from process.power import Power from process.process_output import OutputFileManager, oheadr from process.pulse import Pulse diff --git a/process/models/physics/current_drive.py b/process/models/physics/current_drive.py index 402eb4b81..c071a0474 100644 --- a/process/models/physics/current_drive.py +++ b/process/models/physics/current_drive.py @@ -12,7 +12,7 @@ physics_variables, ) from process.exceptions import ProcessError, ProcessValueError -from process.plasma_profiles import PlasmaProfile +from process.models.physics.plasma_profiles import PlasmaProfile logger = logging.getLogger(__name__) diff --git a/process/models/physics/fusion_reactions.py b/process/models/physics/fusion_reactions.py index 6627b3831..045a32827 100644 --- a/process/models/physics/fusion_reactions.py +++ b/process/models/physics/fusion_reactions.py @@ -6,7 +6,7 @@ from process import constants from process.data_structure import physics_variables -from process.plasma_profiles import PlasmaProfile +from process.models.physics.plasma_profiles import PlasmaProfile logger = logging.getLogger(__name__) diff --git a/process/models/physics/physics_functions.py b/process/models/physics/physics_functions.py index 3c8022d34..dd2e6d3fb 100644 --- a/process/models/physics/physics_functions.py +++ b/process/models/physics/physics_functions.py @@ -4,7 +4,7 @@ import numpy as np import process.models.physics.impurity_radiation as impurity -from process.plasma_profiles import PlasmaProfile +from process.models.physics.plasma_profiles import PlasmaProfile logger = logging.getLogger(__name__) diff --git a/process/plasma_profiles.py b/process/models/physics/plasma_profiles.py similarity index 100% rename from process/plasma_profiles.py rename to process/models/physics/plasma_profiles.py diff --git a/process/stellarator/stellarator.py b/process/stellarator/stellarator.py index b51a5df39..4deb9c9ab 100644 --- a/process/stellarator/stellarator.py +++ b/process/stellarator/stellarator.py @@ -43,7 +43,7 @@ from process.models.buildings import Buildings from process.models.costs.costs import Costs from process.models.physics.current_drive import CurrentDrive - from process.plasma_profiles import PlasmaProfile + from process.models.physics.plasma_profiles import PlasmaProfile from process.stellarator.neoclassics import Neoclassics from process.vacuum import Vacuum diff --git a/tests/unit/test_current_drive.py b/tests/unit/test_current_drive.py index 7e94370bf..1bc26b050 100644 --- a/tests/unit/test_current_drive.py +++ b/tests/unit/test_current_drive.py @@ -14,7 +14,7 @@ LowerHybrid, NeutralBeam, ) -from process.plasma_profiles import PlasmaProfile +from process.models.physics.plasma_profiles import PlasmaProfile @pytest.fixture diff --git a/tests/unit/test_physics.py b/tests/unit/test_physics.py index 8d9a1acdd..93273518b 100644 --- a/tests/unit/test_physics.py +++ b/tests/unit/test_physics.py @@ -34,7 +34,7 @@ res_diff_time, rether, ) -from process.plasma_profiles import PlasmaProfile +from process.models.physics.plasma_profiles import PlasmaProfile @pytest.fixture diff --git a/tests/unit/test_plasma_profiles.py b/tests/unit/test_plasma_profiles.py index 0b23bbc3b..c9b4b2971 100644 --- a/tests/unit/test_plasma_profiles.py +++ b/tests/unit/test_plasma_profiles.py @@ -4,7 +4,7 @@ import pytest from process.data_structure import divertor_variables, physics_variables -from process.plasma_profiles import PlasmaProfile +from process.models.physics.plasma_profiles import PlasmaProfile from process.profiles import NeProfile, TeProfile diff --git a/tests/unit/test_stellarator.py b/tests/unit/test_stellarator.py index f778c1f78..940ab4b3a 100644 --- a/tests/unit/test_stellarator.py +++ b/tests/unit/test_stellarator.py @@ -30,7 +30,7 @@ NeutralBeam, ) from process.models.physics.physics import Physics, PlasmaBeta, PlasmaInductance -from process.plasma_profiles import PlasmaProfile +from process.models.physics.plasma_profiles import PlasmaProfile from process.power import Power from process.stellarator.build import st_build from process.stellarator.coils.coils import bmax_from_awp, intersect From 5df4c8c044ebb9638fc3f6c145131c7ff6cfcb40 Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:19:30 +0000 Subject: [PATCH 23/42] Move power under models --- process/main.py | 2 +- process/{ => models}/power.py | 0 tests/unit/test_power.py | 2 +- tests/unit/test_stellarator.py | 2 +- 4 files changed, 3 insertions(+), 3 deletions(-) rename process/{ => models}/power.py (100%) diff --git a/process/main.py b/process/main.py index 6c3ba2d7c..d2399bdda 100644 --- a/process/main.py +++ b/process/main.py @@ -98,8 +98,8 @@ PlasmaInductance, ) from process.models.physics.plasma_profiles import PlasmaProfile +from process.models.power import Power from process.plasma_geometry import PlasmaGeom -from process.power import Power from process.process_output import OutputFileManager, oheadr from process.pulse import Pulse from process.resistive_tf_coil import AluminiumTFCoil, CopperTFCoil, ResistiveTFCoil diff --git a/process/power.py b/process/models/power.py similarity index 100% rename from process/power.py rename to process/models/power.py diff --git a/tests/unit/test_power.py b/tests/unit/test_power.py index ba98fc562..8ad3c1aea 100644 --- a/tests/unit/test_power.py +++ b/tests/unit/test_power.py @@ -21,7 +21,7 @@ times_variables, ) from process.data_structure import primary_pumping_variables as ppv -from process.power import Power +from process.models.power import Power @pytest.fixture diff --git a/tests/unit/test_stellarator.py b/tests/unit/test_stellarator.py index 940ab4b3a..a5100e854 100644 --- a/tests/unit/test_stellarator.py +++ b/tests/unit/test_stellarator.py @@ -31,7 +31,7 @@ ) from process.models.physics.physics import Physics, PlasmaBeta, PlasmaInductance from process.models.physics.plasma_profiles import PlasmaProfile -from process.power import Power +from process.models.power import Power from process.stellarator.build import st_build from process.stellarator.coils.coils import bmax_from_awp, intersect from process.stellarator.coils.quench import ( From 9bf75fff648100b170b45477005bb32a4286f2ed Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:22:11 +0000 Subject: [PATCH 24/42] Move tfcoils under models/tfcoils --- process/main.py | 2 +- process/{ => models/tfcoil}/tf_coil.py | 0 process/resistive_tf_coil.py | 2 +- process/superconducting_tf_coil.py | 2 +- tests/unit/test_tfcoil.py | 4 ++-- 5 files changed, 5 insertions(+), 5 deletions(-) rename process/{ => models/tfcoil}/tf_coil.py (100%) diff --git a/process/main.py b/process/main.py index d2399bdda..6eee9b4e8 100644 --- a/process/main.py +++ b/process/main.py @@ -99,6 +99,7 @@ ) from process.models.physics.plasma_profiles import PlasmaProfile from process.models.power import Power +from process.models.tfcoil.tf_coil import TFCoil from process.plasma_geometry import PlasmaGeom from process.process_output import OutputFileManager, oheadr from process.pulse import Pulse @@ -109,7 +110,6 @@ from process.stellarator.stellarator import Stellarator from process.structure import Structure from process.superconducting_tf_coil import SuperconductingTFCoil -from process.tf_coil import TFCoil from process.vacuum import Vacuum, VacuumVessel from process.water_use import WaterUse diff --git a/process/tf_coil.py b/process/models/tfcoil/tf_coil.py similarity index 100% rename from process/tf_coil.py rename to process/models/tfcoil/tf_coil.py diff --git a/process/resistive_tf_coil.py b/process/resistive_tf_coil.py index 73576f834..820ed1790 100644 --- a/process/resistive_tf_coil.py +++ b/process/resistive_tf_coil.py @@ -12,7 +12,7 @@ superconducting_tf_coil_variables, tfcoil_variables, ) -from process.tf_coil import TFCoil +from process.models.tfcoil.tf_coil import TFCoil logger = logging.getLogger(__name__) diff --git a/process/superconducting_tf_coil.py b/process/superconducting_tf_coil.py index 977d0cb7c..9a6ce1cd3 100644 --- a/process/superconducting_tf_coil.py +++ b/process/superconducting_tf_coil.py @@ -21,7 +21,7 @@ tfcoil_variables, ) from process.exceptions import ProcessValueError -from process.tf_coil import TFCoil +from process.models.tfcoil.tf_coil import TFCoil logger = logging.getLogger(__name__) diff --git a/tests/unit/test_tfcoil.py b/tests/unit/test_tfcoil.py index 5c270b784..21b905a73 100644 --- a/tests/unit/test_tfcoil.py +++ b/tests/unit/test_tfcoil.py @@ -9,7 +9,7 @@ import numpy as np import pytest -import process.tf_coil as tfcoil_module +import process.models.tfcoil.tf_coil as tfcoil_module from process.data_structure import ( build_variables, fwbs_variables, @@ -17,7 +17,7 @@ tfcoil_variables, ) from process.models.build import Build -from process.tf_coil import TFCoil +from process.models.tfcoil.tf_coil import TFCoil @pytest.fixture From 76ad710e8b9ddb9e786e9f59cb617bca62a53c36 Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:24:29 +0000 Subject: [PATCH 25/42] Move superconducting_tf_coils under models/tfcoils --- process/io/plot_proc.py | 4 ++-- process/main.py | 2 +- process/{ => models/tfcoil}/superconducting_tf_coil.py | 0 tests/unit/test_sctfcoil.py | 4 ++-- 4 files changed, 5 insertions(+), 5 deletions(-) rename process/{ => models/tfcoil}/superconducting_tf_coil.py (100%) diff --git a/process/io/plot_proc.py b/process/io/plot_proc.py index cf114e71f..9256f8f71 100644 --- a/process/io/plot_proc.py +++ b/process/io/plot_proc.py @@ -32,7 +32,7 @@ import process.data_structure.pfcoil_variables as pfcoil_variables import process.io.mfile as mf import process.models.physics.confinement_time as confine -import process.superconducting_tf_coil as sctf +import process.models.tfcoil.superconducting_tf_coil as sctf from process.data_structure import impurity_radiation_module, physics_variables from process.geometry.blanket_geometry import ( blanket_geometry_double_null, @@ -61,8 +61,8 @@ from process.models.build import Build from process.models.physics.current_drive import ElectronBernstein, ElectronCyclotron from process.models.physics.impurity_radiation import read_impurity_file +from process.models.tfcoil.superconducting_tf_coil import SUPERCONDUCTING_TF_TYPES from process.objectives import OBJECTIVE_NAMES -from process.superconducting_tf_coil import SUPERCONDUCTING_TF_TYPES mpl.rcParams["figure.max_open_warning"] = 40 diff --git a/process/main.py b/process/main.py index 6eee9b4e8..3ffb3f43a 100644 --- a/process/main.py +++ b/process/main.py @@ -99,6 +99,7 @@ ) from process.models.physics.plasma_profiles import PlasmaProfile from process.models.power import Power +from process.models.tfcoil.superconducting_tf_coil import SuperconductingTFCoil from process.models.tfcoil.tf_coil import TFCoil from process.plasma_geometry import PlasmaGeom from process.process_output import OutputFileManager, oheadr @@ -109,7 +110,6 @@ from process.stellarator.neoclassics import Neoclassics from process.stellarator.stellarator import Stellarator from process.structure import Structure -from process.superconducting_tf_coil import SuperconductingTFCoil from process.vacuum import Vacuum, VacuumVessel from process.water_use import WaterUse diff --git a/process/superconducting_tf_coil.py b/process/models/tfcoil/superconducting_tf_coil.py similarity index 100% rename from process/superconducting_tf_coil.py rename to process/models/tfcoil/superconducting_tf_coil.py diff --git a/tests/unit/test_sctfcoil.py b/tests/unit/test_sctfcoil.py index eeff15831..042ee277b 100644 --- a/tests/unit/test_sctfcoil.py +++ b/tests/unit/test_sctfcoil.py @@ -3,7 +3,6 @@ import numpy as np import pytest -from process import superconducting_tf_coil as sctf from process.data_structure import ( build_variables, constraint_variables, @@ -14,7 +13,8 @@ superconducting_tf_coil_variables, tfcoil_variables, ) -from process.superconducting_tf_coil import SuperconductingTFCoil +from process.models.tfcoil import superconducting_tf_coil as sctf +from process.models.tfcoil.superconducting_tf_coil import SuperconductingTFCoil @pytest.fixture From 36803d3a700dbf7b36face29f893c4f06ebfda48 Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:27:15 +0000 Subject: [PATCH 26/42] Move profiles under models/physics --- process/models/physics/plasma_profiles.py | 2 +- process/{ => models/physics}/profiles.py | 0 tests/unit/test_plasma_profiles.py | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) rename process/{ => models/physics}/profiles.py (100%) diff --git a/process/models/physics/plasma_profiles.py b/process/models/physics/plasma_profiles.py index 3ccc54acf..00e96e46c 100644 --- a/process/models/physics/plasma_profiles.py +++ b/process/models/physics/plasma_profiles.py @@ -3,7 +3,7 @@ import numpy as np import scipy as sp -import process.profiles as profiles +import process.models.physics.profiles as profiles from process import constants from process.data_structure import divertor_variables, physics_variables from process.exceptions import ProcessValueError diff --git a/process/profiles.py b/process/models/physics/profiles.py similarity index 100% rename from process/profiles.py rename to process/models/physics/profiles.py diff --git a/tests/unit/test_plasma_profiles.py b/tests/unit/test_plasma_profiles.py index c9b4b2971..3c6f9abc7 100644 --- a/tests/unit/test_plasma_profiles.py +++ b/tests/unit/test_plasma_profiles.py @@ -5,7 +5,7 @@ from process.data_structure import divertor_variables, physics_variables from process.models.physics.plasma_profiles import PlasmaProfile -from process.profiles import NeProfile, TeProfile +from process.models.physics.profiles import NeProfile, TeProfile class ProfileParam(NamedTuple): From 7e5ec00617a1d9517470646026fd1b7ee4fbb8ca Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:27:42 +0000 Subject: [PATCH 27/42] Move pulse under models --- process/main.py | 2 +- process/{ => models}/pulse.py | 0 tests/unit/test_pulse.py | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) rename process/{ => models}/pulse.py (100%) diff --git a/process/main.py b/process/main.py index 3ffb3f43a..c66209e4c 100644 --- a/process/main.py +++ b/process/main.py @@ -99,11 +99,11 @@ ) from process.models.physics.plasma_profiles import PlasmaProfile from process.models.power import Power +from process.models.pulse import Pulse from process.models.tfcoil.superconducting_tf_coil import SuperconductingTFCoil from process.models.tfcoil.tf_coil import TFCoil from process.plasma_geometry import PlasmaGeom from process.process_output import OutputFileManager, oheadr -from process.pulse import Pulse from process.resistive_tf_coil import AluminiumTFCoil, CopperTFCoil, ResistiveTFCoil from process.scan import Scan from process.shield import Shield diff --git a/process/pulse.py b/process/models/pulse.py similarity index 100% rename from process/pulse.py rename to process/models/pulse.py diff --git a/tests/unit/test_pulse.py b/tests/unit/test_pulse.py index a73fe0044..a958098cd 100644 --- a/tests/unit/test_pulse.py +++ b/tests/unit/test_pulse.py @@ -11,7 +11,7 @@ physics_variables, pulse_variables, ) -from process.pulse import Pulse +from process.models.pulse import Pulse @pytest.fixture From 82c209c44f5938952254094740a55c1aa86ce460 Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:28:24 +0000 Subject: [PATCH 28/42] Move plasma_geometry under models/physics --- process/main.py | 2 +- process/{ => models/physics}/plasma_geometry.py | 0 tests/unit/test_plasma_geom.py | 4 ++-- 3 files changed, 3 insertions(+), 3 deletions(-) rename process/{ => models/physics}/plasma_geometry.py (100%) diff --git a/process/main.py b/process/main.py index c66209e4c..60f03ea64 100644 --- a/process/main.py +++ b/process/main.py @@ -97,12 +97,12 @@ PlasmaBeta, PlasmaInductance, ) +from process.models.physics.plasma_geometry import PlasmaGeom from process.models.physics.plasma_profiles import PlasmaProfile from process.models.power import Power from process.models.pulse import Pulse from process.models.tfcoil.superconducting_tf_coil import SuperconductingTFCoil from process.models.tfcoil.tf_coil import TFCoil -from process.plasma_geometry import PlasmaGeom from process.process_output import OutputFileManager, oheadr from process.resistive_tf_coil import AluminiumTFCoil, CopperTFCoil, ResistiveTFCoil from process.scan import Scan diff --git a/process/plasma_geometry.py b/process/models/physics/plasma_geometry.py similarity index 100% rename from process/plasma_geometry.py rename to process/models/physics/plasma_geometry.py diff --git a/tests/unit/test_plasma_geom.py b/tests/unit/test_plasma_geom.py index eeef55a4d..eeb109da6 100644 --- a/tests/unit/test_plasma_geom.py +++ b/tests/unit/test_plasma_geom.py @@ -4,8 +4,8 @@ import pytest -import process.plasma_geometry as pg -from process.plasma_geometry import PlasmaGeom +import process.models.physics.plasma_geometry as pg +from process.models.physics.plasma_geometry import PlasmaGeom @pytest.fixture From fc0ed66f0ae7412223455655ab70ad562861ed97 Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:29:04 +0000 Subject: [PATCH 29/42] Move quench under models/tfcoil --- process/{ => models/tfcoil}/quench.py | 0 process/models/tfcoil/superconducting_tf_coil.py | 2 +- tests/unit/test_quench.py | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) rename process/{ => models/tfcoil}/quench.py (100%) diff --git a/process/quench.py b/process/models/tfcoil/quench.py similarity index 100% rename from process/quench.py rename to process/models/tfcoil/quench.py diff --git a/process/models/tfcoil/superconducting_tf_coil.py b/process/models/tfcoil/superconducting_tf_coil.py index 9a6ce1cd3..058a153f3 100644 --- a/process/models/tfcoil/superconducting_tf_coil.py +++ b/process/models/tfcoil/superconducting_tf_coil.py @@ -4,7 +4,7 @@ import numpy as np from scipy import optimize -import process.quench as quench +import process.models.tfcoil.quench as quench import process.superconductors as superconductors from process import constants from process import process_output as po diff --git a/tests/unit/test_quench.py b/tests/unit/test_quench.py index e8afc36a0..77fa7a327 100644 --- a/tests/unit/test_quench.py +++ b/tests/unit/test_quench.py @@ -2,7 +2,7 @@ import pytest from scipy.optimize import approx_fprime -from process.quench import ( +from process.models.tfcoil.quench import ( _copper_irradiation_resistivity, _copper_magneto_resistivity, _copper_rrr_resistivity, From 2f5fb66fd2e2cba6c458b46f778064d8684b605c Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:30:11 +0000 Subject: [PATCH 30/42] Move resistive_tf_coils under models/tfcoil --- process/main.py | 6 +++++- process/{ => models/tfcoil}/resistive_tf_coil.py | 0 tests/unit/test_resistive_tf_coil.py | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) rename process/{ => models/tfcoil}/resistive_tf_coil.py (100%) diff --git a/process/main.py b/process/main.py index 60f03ea64..719f63dc0 100644 --- a/process/main.py +++ b/process/main.py @@ -101,10 +101,14 @@ from process.models.physics.plasma_profiles import PlasmaProfile from process.models.power import Power from process.models.pulse import Pulse +from process.models.tfcoil.resistive_tf_coil import ( + AluminiumTFCoil, + CopperTFCoil, + ResistiveTFCoil, +) from process.models.tfcoil.superconducting_tf_coil import SuperconductingTFCoil from process.models.tfcoil.tf_coil import TFCoil from process.process_output import OutputFileManager, oheadr -from process.resistive_tf_coil import AluminiumTFCoil, CopperTFCoil, ResistiveTFCoil from process.scan import Scan from process.shield import Shield from process.stellarator.neoclassics import Neoclassics diff --git a/process/resistive_tf_coil.py b/process/models/tfcoil/resistive_tf_coil.py similarity index 100% rename from process/resistive_tf_coil.py rename to process/models/tfcoil/resistive_tf_coil.py diff --git a/tests/unit/test_resistive_tf_coil.py b/tests/unit/test_resistive_tf_coil.py index 12a88496c..fe09aabca 100644 --- a/tests/unit/test_resistive_tf_coil.py +++ b/tests/unit/test_resistive_tf_coil.py @@ -8,7 +8,7 @@ superconducting_tf_coil_variables, tfcoil_variables, ) -from process.resistive_tf_coil import ResistiveTFCoil +from process.models.tfcoil.resistive_tf_coil import ResistiveTFCoil @pytest.fixture From 4881e62d6328ac255718f912a3220f0db89192d3 Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:30:43 +0000 Subject: [PATCH 31/42] Move shield under models --- process/main.py | 2 +- process/{ => models}/shield.py | 0 tests/unit/test_shield.py | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) rename process/{ => models}/shield.py (100%) diff --git a/process/main.py b/process/main.py index 719f63dc0..4d7c6f985 100644 --- a/process/main.py +++ b/process/main.py @@ -101,6 +101,7 @@ from process.models.physics.plasma_profiles import PlasmaProfile from process.models.power import Power from process.models.pulse import Pulse +from process.models.shield import Shield from process.models.tfcoil.resistive_tf_coil import ( AluminiumTFCoil, CopperTFCoil, @@ -110,7 +111,6 @@ from process.models.tfcoil.tf_coil import TFCoil from process.process_output import OutputFileManager, oheadr from process.scan import Scan -from process.shield import Shield from process.stellarator.neoclassics import Neoclassics from process.stellarator.stellarator import Stellarator from process.structure import Structure diff --git a/process/shield.py b/process/models/shield.py similarity index 100% rename from process/shield.py rename to process/models/shield.py diff --git a/tests/unit/test_shield.py b/tests/unit/test_shield.py index 8c6704869..37d1c6e3d 100644 --- a/tests/unit/test_shield.py +++ b/tests/unit/test_shield.py @@ -2,7 +2,7 @@ import pytest -from process.shield import Shield +from process.models.shield import Shield @pytest.fixture From 13486f881b05cf516ae6b344190e144b9cf28b51 Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:31:18 +0000 Subject: [PATCH 32/42] Move structure under models --- process/main.py | 2 +- process/{ => models}/structure.py | 0 tests/unit/test_structure.py | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) rename process/{ => models}/structure.py (100%) diff --git a/process/main.py b/process/main.py index 4d7c6f985..fa0b2e445 100644 --- a/process/main.py +++ b/process/main.py @@ -102,6 +102,7 @@ from process.models.power import Power from process.models.pulse import Pulse from process.models.shield import Shield +from process.models.structure import Structure from process.models.tfcoil.resistive_tf_coil import ( AluminiumTFCoil, CopperTFCoil, @@ -113,7 +114,6 @@ from process.scan import Scan from process.stellarator.neoclassics import Neoclassics from process.stellarator.stellarator import Stellarator -from process.structure import Structure from process.vacuum import Vacuum, VacuumVessel from process.water_use import WaterUse diff --git a/process/structure.py b/process/models/structure.py similarity index 100% rename from process/structure.py rename to process/models/structure.py diff --git a/tests/unit/test_structure.py b/tests/unit/test_structure.py index 17b224db2..8b83731ca 100644 --- a/tests/unit/test_structure.py +++ b/tests/unit/test_structure.py @@ -2,7 +2,7 @@ import pytest -from process.structure import Structure +from process.models.structure import Structure @pytest.fixture From fd51139431a1af4fbb384cfab2fc31e4d4065c5a Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:32:03 +0000 Subject: [PATCH 33/42] Move superconductors under models --- .../scripts/plotting_scripts/2nd_gen_rebco_critical_surface.py | 2 +- .../scripts/plotting_scripts/bi_2212_critical_surface.py | 2 +- .../scripts/plotting_scripts/durham_nbti_critical_surface.py | 2 +- .../scripts/plotting_scripts/durham_rebco_critical_surface.py | 2 +- .../scripts/plotting_scripts/eutf4_nb3sn_critical_surface.py | 2 +- .../plotting_scripts/hazelton_zhai_rebco_critical_surface.py | 2 +- .../plotting_scripts/old_empirical_nbti_critical_surface.py | 2 +- .../scripts/plotting_scripts/western_nb3sn_critical_surface.py | 2 +- process/models/pfcoil.py | 2 +- process/{ => models}/superconductors.py | 0 process/models/tfcoil/superconducting_tf_coil.py | 2 +- process/stellarator/coils/coils.py | 2 +- tests/unit/test_superconductors.py | 2 +- 13 files changed, 12 insertions(+), 12 deletions(-) rename process/{ => models}/superconductors.py (100%) diff --git a/documentation/scripts/plotting_scripts/2nd_gen_rebco_critical_surface.py b/documentation/scripts/plotting_scripts/2nd_gen_rebco_critical_surface.py index 89d45279d..f07d5db50 100644 --- a/documentation/scripts/plotting_scripts/2nd_gen_rebco_critical_surface.py +++ b/documentation/scripts/plotting_scripts/2nd_gen_rebco_critical_surface.py @@ -2,7 +2,7 @@ import numpy as np import plotly.graph_objects as go -import process.superconductors as superconductors +import process.models.superconductors as superconductors temp_c0max = 90.0 # Critical temperature (K) at zero field and strain b_c20max = ( diff --git a/documentation/scripts/plotting_scripts/bi_2212_critical_surface.py b/documentation/scripts/plotting_scripts/bi_2212_critical_surface.py index fba4635c4..475027432 100644 --- a/documentation/scripts/plotting_scripts/bi_2212_critical_surface.py +++ b/documentation/scripts/plotting_scripts/bi_2212_critical_surface.py @@ -2,7 +2,7 @@ import numpy as np import plotly.graph_objects as go -import process.superconductors as superconductors +import process.models.superconductors as superconductors # Create a grid of temperature and field values temp_conductor = np.linspace(1, 11.0, 50) # Temperature range (K) diff --git a/documentation/scripts/plotting_scripts/durham_nbti_critical_surface.py b/documentation/scripts/plotting_scripts/durham_nbti_critical_surface.py index 728dc5d5b..b4749e539 100644 --- a/documentation/scripts/plotting_scripts/durham_nbti_critical_surface.py +++ b/documentation/scripts/plotting_scripts/durham_nbti_critical_surface.py @@ -2,7 +2,7 @@ import numpy as np import plotly.graph_objects as go -import process.superconductors as superconductors +import process.models.superconductors as superconductors # Create a grid of temperature and field values temp_conductor = np.linspace(1, 8.0, 50) # Temperature range (K) diff --git a/documentation/scripts/plotting_scripts/durham_rebco_critical_surface.py b/documentation/scripts/plotting_scripts/durham_rebco_critical_surface.py index 9b1f69b0d..aa78d7ce9 100644 --- a/documentation/scripts/plotting_scripts/durham_rebco_critical_surface.py +++ b/documentation/scripts/plotting_scripts/durham_rebco_critical_surface.py @@ -2,7 +2,7 @@ import numpy as np import plotly.graph_objects as go -import process.superconductors as superconductors +import process.models.superconductors as superconductors # Create a grid of temperature and field values temp_conductor = np.linspace(4.2, 30.0, 50) # Temperature range (K) diff --git a/documentation/scripts/plotting_scripts/eutf4_nb3sn_critical_surface.py b/documentation/scripts/plotting_scripts/eutf4_nb3sn_critical_surface.py index 8f2b9ad19..80cd2455a 100644 --- a/documentation/scripts/plotting_scripts/eutf4_nb3sn_critical_surface.py +++ b/documentation/scripts/plotting_scripts/eutf4_nb3sn_critical_surface.py @@ -2,7 +2,7 @@ import numpy as np import plotly.graph_objects as go -import process.superconductors as superconductors +import process.models.superconductors as superconductors temp_c0max = 16.06 # Critical temperature (K) at zero field and strain b_c20max = ( diff --git a/documentation/scripts/plotting_scripts/hazelton_zhai_rebco_critical_surface.py b/documentation/scripts/plotting_scripts/hazelton_zhai_rebco_critical_surface.py index 65851f46a..deeef3e80 100644 --- a/documentation/scripts/plotting_scripts/hazelton_zhai_rebco_critical_surface.py +++ b/documentation/scripts/plotting_scripts/hazelton_zhai_rebco_critical_surface.py @@ -2,7 +2,7 @@ import numpy as np import plotly.graph_objects as go -import process.superconductors as superconductors +import process.models.superconductors as superconductors # Create a grid of temperature and field values temp_conductor = np.linspace(4.2, 40.0, 50) # Temperature range (K) diff --git a/documentation/scripts/plotting_scripts/old_empirical_nbti_critical_surface.py b/documentation/scripts/plotting_scripts/old_empirical_nbti_critical_surface.py index 4d029acc2..1490149a8 100644 --- a/documentation/scripts/plotting_scripts/old_empirical_nbti_critical_surface.py +++ b/documentation/scripts/plotting_scripts/old_empirical_nbti_critical_surface.py @@ -2,7 +2,7 @@ import numpy as np import plotly.graph_objects as go -import process.superconductors as superconductors +import process.models.superconductors as superconductors # Create a grid of temperature and field values temp_conductor = np.linspace(1, 10.0, 50) # Temperature range (K) diff --git a/documentation/scripts/plotting_scripts/western_nb3sn_critical_surface.py b/documentation/scripts/plotting_scripts/western_nb3sn_critical_surface.py index 3844e9588..22558745b 100644 --- a/documentation/scripts/plotting_scripts/western_nb3sn_critical_surface.py +++ b/documentation/scripts/plotting_scripts/western_nb3sn_critical_surface.py @@ -2,7 +2,7 @@ import numpy as np import plotly.graph_objects as go -import process.superconductors as superconductors +import process.models.superconductors as superconductors temp_c0max = 16.34 # Critical temperature (K) at zero field and strain b_c20max = ( diff --git a/process/models/pfcoil.py b/process/models/pfcoil.py index 8d298c17e..efe82eba9 100644 --- a/process/models/pfcoil.py +++ b/process/models/pfcoil.py @@ -7,7 +7,7 @@ from scipy.linalg import svd from scipy.special import ellipe, ellipk -import process.superconductors as superconductors +import process.models.superconductors as superconductors from process import constants from process import process_output as op from process.data_structure import build_variables as bv diff --git a/process/superconductors.py b/process/models/superconductors.py similarity index 100% rename from process/superconductors.py rename to process/models/superconductors.py diff --git a/process/models/tfcoil/superconducting_tf_coil.py b/process/models/tfcoil/superconducting_tf_coil.py index 058a153f3..c4df14131 100644 --- a/process/models/tfcoil/superconducting_tf_coil.py +++ b/process/models/tfcoil/superconducting_tf_coil.py @@ -4,8 +4,8 @@ import numpy as np from scipy import optimize +import process.models.superconductors as superconductors import process.models.tfcoil.quench as quench -import process.superconductors as superconductors from process import constants from process import process_output as po from process.data_structure import ( diff --git a/process/stellarator/coils/coils.py b/process/stellarator/coils/coils.py index 0511adc94..017f9236c 100644 --- a/process/stellarator/coils/coils.py +++ b/process/stellarator/coils/coils.py @@ -2,7 +2,7 @@ import numpy as np -import process.superconductors as superconductors +import process.models.superconductors as superconductors from process.data_structure import ( stellarator_configuration, ) diff --git a/tests/unit/test_superconductors.py b/tests/unit/test_superconductors.py index a982a6381..b7c412c93 100644 --- a/tests/unit/test_superconductors.py +++ b/tests/unit/test_superconductors.py @@ -2,7 +2,7 @@ import pytest -import process.superconductors as superconductors +import process.models.superconductors as superconductors class IterscParam(NamedTuple): From ac9db65f265bb027a3e7abc04e4e494e1c5ebdf7 Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:32:51 +0000 Subject: [PATCH 34/42] Move vacuum under models --- process/main.py | 2 +- process/{ => models}/vacuum.py | 0 process/stellarator/stellarator.py | 2 +- tests/unit/test_stellarator.py | 2 +- tests/unit/test_vacuum.py | 2 +- 5 files changed, 4 insertions(+), 4 deletions(-) rename process/{ => models}/vacuum.py (100%) diff --git a/process/main.py b/process/main.py index fa0b2e445..daae55a0b 100644 --- a/process/main.py +++ b/process/main.py @@ -110,11 +110,11 @@ ) from process.models.tfcoil.superconducting_tf_coil import SuperconductingTFCoil from process.models.tfcoil.tf_coil import TFCoil +from process.models.vacuum import Vacuum, VacuumVessel from process.process_output import OutputFileManager, oheadr from process.scan import Scan from process.stellarator.neoclassics import Neoclassics from process.stellarator.stellarator import Stellarator -from process.vacuum import Vacuum, VacuumVessel from process.water_use import WaterUse os.environ["PYTHON_PROCESS_ROOT"] = os.path.join(os.path.dirname(__file__)) diff --git a/process/vacuum.py b/process/models/vacuum.py similarity index 100% rename from process/vacuum.py rename to process/models/vacuum.py diff --git a/process/stellarator/stellarator.py b/process/stellarator/stellarator.py index 4deb9c9ab..f6a6d6891 100644 --- a/process/stellarator/stellarator.py +++ b/process/stellarator/stellarator.py @@ -44,8 +44,8 @@ from process.models.costs.costs import Costs from process.models.physics.current_drive import CurrentDrive from process.models.physics.plasma_profiles import PlasmaProfile + from process.models.vacuum import Vacuum from process.stellarator.neoclassics import Neoclassics - from process.vacuum import Vacuum logger = logging.getLogger(__name__) diff --git a/tests/unit/test_stellarator.py b/tests/unit/test_stellarator.py index a5100e854..26681e2b6 100644 --- a/tests/unit/test_stellarator.py +++ b/tests/unit/test_stellarator.py @@ -32,6 +32,7 @@ from process.models.physics.physics import Physics, PlasmaBeta, PlasmaInductance from process.models.physics.plasma_profiles import PlasmaProfile from process.models.power import Power +from process.models.vacuum import Vacuum from process.stellarator.build import st_build from process.stellarator.coils.coils import bmax_from_awp, intersect from process.stellarator.coils.quench import ( @@ -41,7 +42,6 @@ from process.stellarator.denisty_limits import st_d_limit_ecrh, st_sudo_density_limit from process.stellarator.neoclassics import Neoclassics from process.stellarator.stellarator import Stellarator -from process.vacuum import Vacuum @pytest.fixture diff --git a/tests/unit/test_vacuum.py b/tests/unit/test_vacuum.py index 63298880a..a20ef5a1e 100644 --- a/tests/unit/test_vacuum.py +++ b/tests/unit/test_vacuum.py @@ -6,7 +6,7 @@ from process.data_structure import tfcoil_variables as tfv from process.data_structure import times_variables as tv from process.data_structure import vacuum_variables as vacv -from process.vacuum import Vacuum, VacuumVessel +from process.models.vacuum import Vacuum, VacuumVessel @pytest.fixture From 6801bd12b9cf17497ac8d1546d95c5d2e874bcb1 Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:33:16 +0000 Subject: [PATCH 35/42] Move water_use under models --- process/main.py | 2 +- process/{ => models}/water_use.py | 0 tests/unit/test_water_usage.py | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) rename process/{ => models}/water_use.py (100%) diff --git a/process/main.py b/process/main.py index daae55a0b..6d5e6e63a 100644 --- a/process/main.py +++ b/process/main.py @@ -111,11 +111,11 @@ from process.models.tfcoil.superconducting_tf_coil import SuperconductingTFCoil from process.models.tfcoil.tf_coil import TFCoil from process.models.vacuum import Vacuum, VacuumVessel +from process.models.water_use import WaterUse from process.process_output import OutputFileManager, oheadr from process.scan import Scan from process.stellarator.neoclassics import Neoclassics from process.stellarator.stellarator import Stellarator -from process.water_use import WaterUse os.environ["PYTHON_PROCESS_ROOT"] = os.path.join(os.path.dirname(__file__)) diff --git a/process/water_use.py b/process/models/water_use.py similarity index 100% rename from process/water_use.py rename to process/models/water_use.py diff --git a/tests/unit/test_water_usage.py b/tests/unit/test_water_usage.py index 27a5a6b4a..bb28a18c9 100644 --- a/tests/unit/test_water_usage.py +++ b/tests/unit/test_water_usage.py @@ -3,7 +3,7 @@ import pytest from process.data_structure import water_usage_variables -from process.water_use import WaterUse +from process.models.water_use import WaterUse @pytest.fixture From fe2f24767cf0654c2f483a69882688e2f336292b Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:34:40 +0000 Subject: [PATCH 36/42] Move stellarator under models --- process/init.py | 2 +- process/main.py | 4 ++-- process/{ => models}/stellarator/__init__.py | 0 process/{ => models}/stellarator/build.py | 0 .../{ => models}/stellarator/coils/__init__.py | 0 .../{ => models}/stellarator/coils/calculate.py | 14 +++++++++----- process/{ => models}/stellarator/coils/coils.py | 0 .../{ => models}/stellarator/coils/forces.py | 0 process/{ => models}/stellarator/coils/mass.py | 0 .../{ => models}/stellarator/coils/output.py | 0 .../{ => models}/stellarator/coils/quench.py | 0 .../{ => models}/stellarator/denisty_limits.py | 0 process/{ => models}/stellarator/divertor.py | 0 process/{ => models}/stellarator/heating.py | 0 .../{ => models}/stellarator/initialization.py | 0 process/{ => models}/stellarator/neoclassics.py | 2 +- .../{ => models}/stellarator/preset_config.py | 0 process/{ => models}/stellarator/stellarator.py | 17 ++++++++++------- tests/unit/test_neoclassics.py | 2 +- tests/unit/test_stellarator.py | 17 ++++++++++------- 20 files changed, 34 insertions(+), 24 deletions(-) rename process/{ => models}/stellarator/__init__.py (100%) rename process/{ => models}/stellarator/build.py (100%) rename process/{ => models}/stellarator/coils/__init__.py (100%) rename process/{ => models}/stellarator/coils/calculate.py (98%) rename process/{ => models}/stellarator/coils/coils.py (100%) rename process/{ => models}/stellarator/coils/forces.py (100%) rename process/{ => models}/stellarator/coils/mass.py (100%) rename process/{ => models}/stellarator/coils/output.py (100%) rename process/{ => models}/stellarator/coils/quench.py (100%) rename process/{ => models}/stellarator/denisty_limits.py (100%) rename process/{ => models}/stellarator/divertor.py (100%) rename process/{ => models}/stellarator/heating.py (100%) rename process/{ => models}/stellarator/initialization.py (100%) rename process/{ => models}/stellarator/neoclassics.py (99%) rename process/{ => models}/stellarator/preset_config.py (100%) rename process/{ => models}/stellarator/stellarator.py (99%) diff --git a/process/init.py b/process/init.py index 58be94e8a..0db06f1a0 100644 --- a/process/init.py +++ b/process/init.py @@ -59,7 +59,7 @@ from process.exceptions import ProcessValidationError from process.input import parse_input_file from process.log import logging_model_handler -from process.stellarator.initialization import st_init +from process.models.stellarator.initialization import st_init def init_process(): diff --git a/process/main.py b/process/main.py index 6d5e6e63a..535184704 100644 --- a/process/main.py +++ b/process/main.py @@ -102,6 +102,8 @@ from process.models.power import Power from process.models.pulse import Pulse from process.models.shield import Shield +from process.models.stellarator.neoclassics import Neoclassics +from process.models.stellarator.stellarator import Stellarator from process.models.structure import Structure from process.models.tfcoil.resistive_tf_coil import ( AluminiumTFCoil, @@ -114,8 +116,6 @@ from process.models.water_use import WaterUse from process.process_output import OutputFileManager, oheadr from process.scan import Scan -from process.stellarator.neoclassics import Neoclassics -from process.stellarator.stellarator import Stellarator os.environ["PYTHON_PROCESS_ROOT"] = os.path.join(os.path.dirname(__file__)) diff --git a/process/stellarator/__init__.py b/process/models/stellarator/__init__.py similarity index 100% rename from process/stellarator/__init__.py rename to process/models/stellarator/__init__.py diff --git a/process/stellarator/build.py b/process/models/stellarator/build.py similarity index 100% rename from process/stellarator/build.py rename to process/models/stellarator/build.py diff --git a/process/stellarator/coils/__init__.py b/process/models/stellarator/coils/__init__.py similarity index 100% rename from process/stellarator/coils/__init__.py rename to process/models/stellarator/coils/__init__.py diff --git a/process/stellarator/coils/calculate.py b/process/models/stellarator/coils/calculate.py similarity index 98% rename from process/stellarator/coils/calculate.py rename to process/models/stellarator/coils/calculate.py index 66fc774b6..6767e0251 100644 --- a/process/stellarator/coils/calculate.py +++ b/process/models/stellarator/coils/calculate.py @@ -2,7 +2,7 @@ import numpy as np -import process.stellarator.coils.forces as forces +import process.models.stellarator.coils.forces as forces from process.data_structure import ( build_variables, constraint_variables, @@ -11,10 +11,14 @@ stellarator_variables, tfcoil_variables, ) -from process.stellarator.coils.coils import bmax_from_awp, intersect, jcrit_from_material -from process.stellarator.coils.mass import calculate_coils_mass -from process.stellarator.coils.output import write -from process.stellarator.coils.quench import calculate_quench_protection +from process.models.stellarator.coils.coils import ( + bmax_from_awp, + intersect, + jcrit_from_material, +) +from process.models.stellarator.coils.mass import calculate_coils_mass +from process.models.stellarator.coils.output import write +from process.models.stellarator.coils.quench import calculate_quench_protection logger = logging.getLogger(__name__) diff --git a/process/stellarator/coils/coils.py b/process/models/stellarator/coils/coils.py similarity index 100% rename from process/stellarator/coils/coils.py rename to process/models/stellarator/coils/coils.py diff --git a/process/stellarator/coils/forces.py b/process/models/stellarator/coils/forces.py similarity index 100% rename from process/stellarator/coils/forces.py rename to process/models/stellarator/coils/forces.py diff --git a/process/stellarator/coils/mass.py b/process/models/stellarator/coils/mass.py similarity index 100% rename from process/stellarator/coils/mass.py rename to process/models/stellarator/coils/mass.py diff --git a/process/stellarator/coils/output.py b/process/models/stellarator/coils/output.py similarity index 100% rename from process/stellarator/coils/output.py rename to process/models/stellarator/coils/output.py diff --git a/process/stellarator/coils/quench.py b/process/models/stellarator/coils/quench.py similarity index 100% rename from process/stellarator/coils/quench.py rename to process/models/stellarator/coils/quench.py diff --git a/process/stellarator/denisty_limits.py b/process/models/stellarator/denisty_limits.py similarity index 100% rename from process/stellarator/denisty_limits.py rename to process/models/stellarator/denisty_limits.py diff --git a/process/stellarator/divertor.py b/process/models/stellarator/divertor.py similarity index 100% rename from process/stellarator/divertor.py rename to process/models/stellarator/divertor.py diff --git a/process/stellarator/heating.py b/process/models/stellarator/heating.py similarity index 100% rename from process/stellarator/heating.py rename to process/models/stellarator/heating.py diff --git a/process/stellarator/initialization.py b/process/models/stellarator/initialization.py similarity index 100% rename from process/stellarator/initialization.py rename to process/models/stellarator/initialization.py diff --git a/process/stellarator/neoclassics.py b/process/models/stellarator/neoclassics.py similarity index 99% rename from process/stellarator/neoclassics.py rename to process/models/stellarator/neoclassics.py index 996770103..aa7e81241 100644 --- a/process/stellarator/neoclassics.py +++ b/process/models/stellarator/neoclassics.py @@ -10,7 +10,7 @@ stellarator_configuration, stellarator_variables, ) -from process.stellarator.stellarator import KEV +from process.models.stellarator.stellarator import KEV logger = logging.getLogger(__name__) diff --git a/process/stellarator/preset_config.py b/process/models/stellarator/preset_config.py similarity index 100% rename from process/stellarator/preset_config.py rename to process/models/stellarator/preset_config.py diff --git a/process/stellarator/stellarator.py b/process/models/stellarator/stellarator.py similarity index 99% rename from process/stellarator/stellarator.py rename to process/models/stellarator/stellarator.py index f6a6d6891..989c03012 100644 --- a/process/stellarator/stellarator.py +++ b/process/models/stellarator/stellarator.py @@ -30,12 +30,15 @@ ) from process.exceptions import ProcessValueError from process.models.physics.physics import Physics, rether -from process.stellarator.build import st_build -from process.stellarator.coils.calculate import st_coil -from process.stellarator.denisty_limits import power_at_ignition_point, st_denisty_limits -from process.stellarator.divertor import st_div -from process.stellarator.heating import st_heat -from process.stellarator.preset_config import load_stellarator_config +from process.models.stellarator.build import st_build +from process.models.stellarator.coils.calculate import st_coil +from process.models.stellarator.denisty_limits import ( + power_at_ignition_point, + st_denisty_limits, +) +from process.models.stellarator.divertor import st_div +from process.models.stellarator.heating import st_heat +from process.models.stellarator.preset_config import load_stellarator_config if TYPE_CHECKING: from process.models.availability import Availability @@ -44,8 +47,8 @@ from process.models.costs.costs import Costs from process.models.physics.current_drive import CurrentDrive from process.models.physics.plasma_profiles import PlasmaProfile + from process.models.stellarator.neoclassics import Neoclassics from process.models.vacuum import Vacuum - from process.stellarator.neoclassics import Neoclassics logger = logging.getLogger(__name__) diff --git a/tests/unit/test_neoclassics.py b/tests/unit/test_neoclassics.py index f220216d9..46dd6350f 100644 --- a/tests/unit/test_neoclassics.py +++ b/tests/unit/test_neoclassics.py @@ -4,7 +4,7 @@ import pytest from process.data_structure import neoclassics_variables, physics_variables -from process.stellarator.neoclassics import Neoclassics +from process.models.stellarator.neoclassics import Neoclassics @pytest.fixture diff --git a/tests/unit/test_stellarator.py b/tests/unit/test_stellarator.py index 26681e2b6..268a94b67 100644 --- a/tests/unit/test_stellarator.py +++ b/tests/unit/test_stellarator.py @@ -32,16 +32,19 @@ from process.models.physics.physics import Physics, PlasmaBeta, PlasmaInductance from process.models.physics.plasma_profiles import PlasmaProfile from process.models.power import Power -from process.models.vacuum import Vacuum -from process.stellarator.build import st_build -from process.stellarator.coils.coils import bmax_from_awp, intersect -from process.stellarator.coils.quench import ( +from process.models.stellarator.build import st_build +from process.models.stellarator.coils.coils import bmax_from_awp, intersect +from process.models.stellarator.coils.quench import ( calculate_quench_protection_current_density, max_dump_voltage, ) -from process.stellarator.denisty_limits import st_d_limit_ecrh, st_sudo_density_limit -from process.stellarator.neoclassics import Neoclassics -from process.stellarator.stellarator import Stellarator +from process.models.stellarator.denisty_limits import ( + st_d_limit_ecrh, + st_sudo_density_limit, +) +from process.models.stellarator.neoclassics import Neoclassics +from process.models.stellarator.stellarator import Stellarator +from process.models.vacuum import Vacuum @pytest.fixture From 10ca4b697b1984d7ed42f6ee717c995c19d6664c Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:35:20 +0000 Subject: [PATCH 37/42] Make process/models a package --- process/models/__init__.py | 0 process/models/blankets/__init__.py | 0 process/models/costs/__init__.py | 0 process/models/physics/__init__.py | 0 process/models/tfcoil/__init__.py | 0 5 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 process/models/__init__.py create mode 100644 process/models/blankets/__init__.py create mode 100644 process/models/costs/__init__.py create mode 100644 process/models/physics/__init__.py create mode 100644 process/models/tfcoil/__init__.py diff --git a/process/models/__init__.py b/process/models/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/process/models/blankets/__init__.py b/process/models/blankets/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/process/models/costs/__init__.py b/process/models/costs/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/process/models/physics/__init__.py b/process/models/physics/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/process/models/tfcoil/__init__.py b/process/models/tfcoil/__init__.py new file mode 100644 index 000000000..e69de29bb From a2e20e7ffeb5839f64e1c67a70a2577c8b7619a7 Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:36:04 +0000 Subject: [PATCH 38/42] Move geometry under models --- process/io/plot_proc.py | 20 +++++++++---------- process/{ => models}/geometry/__init__.py | 0 .../{ => models}/geometry/blanket_geometry.py | 4 ++-- .../geometry/cryostat_geometry.py | 2 +- .../geometry/firstwall_geometry.py | 4 ++-- .../geometry/geometry_parameterisations.py | 0 .../{ => models}/geometry/pfcoil_geometry.py | 2 +- .../{ => models}/geometry/plasma_geometry.py | 0 .../{ => models}/geometry/shield_geometry.py | 4 ++-- .../{ => models}/geometry/tfcoil_geometry.py | 4 ++-- process/{ => models}/geometry/utils.py | 0 .../geometry/vacuum_vessel_geometry.py | 4 ++-- 12 files changed, 22 insertions(+), 22 deletions(-) rename process/{ => models}/geometry/__init__.py (100%) rename process/{ => models}/geometry/blanket_geometry.py (97%) rename process/{ => models}/geometry/cryostat_geometry.py (95%) rename process/{ => models}/geometry/firstwall_geometry.py (97%) rename process/{ => models}/geometry/geometry_parameterisations.py (100%) rename process/{ => models}/geometry/pfcoil_geometry.py (95%) rename process/{ => models}/geometry/plasma_geometry.py (100%) rename process/{ => models}/geometry/shield_geometry.py (97%) rename process/{ => models}/geometry/tfcoil_geometry.py (97%) rename process/{ => models}/geometry/utils.py (100%) rename process/{ => models}/geometry/vacuum_vessel_geometry.py (97%) diff --git a/process/io/plot_proc.py b/process/io/plot_proc.py index 9256f8f71..30ef68a5f 100644 --- a/process/io/plot_proc.py +++ b/process/io/plot_proc.py @@ -34,31 +34,31 @@ import process.models.physics.confinement_time as confine import process.models.tfcoil.superconducting_tf_coil as sctf from process.data_structure import impurity_radiation_module, physics_variables -from process.geometry.blanket_geometry import ( +from process.io.mfile import MFileErrorClass +from process.models.build import Build +from process.models.geometry.blanket_geometry import ( blanket_geometry_double_null, blanket_geometry_single_null, ) -from process.geometry.cryostat_geometry import cryostat_geometry -from process.geometry.firstwall_geometry import ( +from process.models.geometry.cryostat_geometry import cryostat_geometry +from process.models.geometry.firstwall_geometry import ( first_wall_geometry_double_null, first_wall_geometry_single_null, ) -from process.geometry.pfcoil_geometry import pfcoil_geometry -from process.geometry.plasma_geometry import plasma_geometry -from process.geometry.shield_geometry import ( +from process.models.geometry.pfcoil_geometry import pfcoil_geometry +from process.models.geometry.plasma_geometry import plasma_geometry +from process.models.geometry.shield_geometry import ( shield_geometry_double_null, shield_geometry_single_null, ) -from process.geometry.tfcoil_geometry import ( +from process.models.geometry.tfcoil_geometry import ( tfcoil_geometry_d_shape, tfcoil_geometry_rectangular_shape, ) -from process.geometry.vacuum_vessel_geometry import ( +from process.models.geometry.vacuum_vessel_geometry import ( vacuum_vessel_geometry_double_null, vacuum_vessel_geometry_single_null, ) -from process.io.mfile import MFileErrorClass -from process.models.build import Build from process.models.physics.current_drive import ElectronBernstein, ElectronCyclotron from process.models.physics.impurity_radiation import read_impurity_file from process.models.tfcoil.superconducting_tf_coil import SUPERCONDUCTING_TF_TYPES diff --git a/process/geometry/__init__.py b/process/models/geometry/__init__.py similarity index 100% rename from process/geometry/__init__.py rename to process/models/geometry/__init__.py diff --git a/process/geometry/blanket_geometry.py b/process/models/geometry/blanket_geometry.py similarity index 97% rename from process/geometry/blanket_geometry.py rename to process/models/geometry/blanket_geometry.py index 3bdf42c88..9aa6300e8 100644 --- a/process/geometry/blanket_geometry.py +++ b/process/models/geometry/blanket_geometry.py @@ -4,8 +4,8 @@ import numpy as np -from process.geometry.geometry_parameterisations import ArbitraryGeometry -from process.geometry.utils import dh_vertices, dhgap_vertices +from process.models.geometry.geometry_parameterisations import ArbitraryGeometry +from process.models.geometry.utils import dh_vertices, dhgap_vertices def blanket_geometry_single_null( diff --git a/process/geometry/cryostat_geometry.py b/process/models/geometry/cryostat_geometry.py similarity index 95% rename from process/geometry/cryostat_geometry.py rename to process/models/geometry/cryostat_geometry.py index 8687cf0c2..5953c3f99 100644 --- a/process/geometry/cryostat_geometry.py +++ b/process/models/geometry/cryostat_geometry.py @@ -2,7 +2,7 @@ Calculate cryostat geometries """ -from process.geometry.geometry_parameterisations import RectangleGeometry +from process.models.geometry.geometry_parameterisations import RectangleGeometry def cryostat_geometry( diff --git a/process/geometry/firstwall_geometry.py b/process/models/geometry/firstwall_geometry.py similarity index 97% rename from process/geometry/firstwall_geometry.py rename to process/models/geometry/firstwall_geometry.py index cbcce86b9..1016c5994 100644 --- a/process/geometry/firstwall_geometry.py +++ b/process/models/geometry/firstwall_geometry.py @@ -4,8 +4,8 @@ import numpy as np -from process.geometry.geometry_parameterisations import ArbitraryGeometry -from process.geometry.utils import dh_vertices, dhgap_vertices +from process.models.geometry.geometry_parameterisations import ArbitraryGeometry +from process.models.geometry.utils import dh_vertices, dhgap_vertices def first_wall_geometry_single_null( diff --git a/process/geometry/geometry_parameterisations.py b/process/models/geometry/geometry_parameterisations.py similarity index 100% rename from process/geometry/geometry_parameterisations.py rename to process/models/geometry/geometry_parameterisations.py diff --git a/process/geometry/pfcoil_geometry.py b/process/models/geometry/pfcoil_geometry.py similarity index 95% rename from process/geometry/pfcoil_geometry.py rename to process/models/geometry/pfcoil_geometry.py index 3e39ac2dd..282eddc1c 100644 --- a/process/geometry/pfcoil_geometry.py +++ b/process/models/geometry/pfcoil_geometry.py @@ -4,7 +4,7 @@ import numpy as np -from process.geometry.geometry_parameterisations import RectangleGeometry +from process.models.geometry.geometry_parameterisations import RectangleGeometry def pfcoil_geometry( diff --git a/process/geometry/plasma_geometry.py b/process/models/geometry/plasma_geometry.py similarity index 100% rename from process/geometry/plasma_geometry.py rename to process/models/geometry/plasma_geometry.py diff --git a/process/geometry/shield_geometry.py b/process/models/geometry/shield_geometry.py similarity index 97% rename from process/geometry/shield_geometry.py rename to process/models/geometry/shield_geometry.py index 99a83839a..ad5acebc3 100644 --- a/process/geometry/shield_geometry.py +++ b/process/models/geometry/shield_geometry.py @@ -4,8 +4,8 @@ import numpy as np -from process.geometry.geometry_parameterisations import ArbitraryGeometry -from process.geometry.utils import dh_vertices +from process.models.geometry.geometry_parameterisations import ArbitraryGeometry +from process.models.geometry.utils import dh_vertices def shield_geometry_single_null( diff --git a/process/geometry/tfcoil_geometry.py b/process/models/geometry/tfcoil_geometry.py similarity index 97% rename from process/geometry/tfcoil_geometry.py rename to process/models/geometry/tfcoil_geometry.py index efa062d59..f459e497f 100644 --- a/process/geometry/tfcoil_geometry.py +++ b/process/models/geometry/tfcoil_geometry.py @@ -2,8 +2,8 @@ Calculate radial and vertical coordinates for the geometry of the tf coils """ -from process.geometry.geometry_parameterisations import RectangleGeometry -from process.geometry.utils import ellips_fill_vertices +from process.models.geometry.geometry_parameterisations import RectangleGeometry +from process.models.geometry.utils import ellips_fill_vertices def tfcoil_geometry_rectangular_shape( diff --git a/process/geometry/utils.py b/process/models/geometry/utils.py similarity index 100% rename from process/geometry/utils.py rename to process/models/geometry/utils.py diff --git a/process/geometry/vacuum_vessel_geometry.py b/process/models/geometry/vacuum_vessel_geometry.py similarity index 97% rename from process/geometry/vacuum_vessel_geometry.py rename to process/models/geometry/vacuum_vessel_geometry.py index 78d6a5e89..f697cf2f6 100644 --- a/process/geometry/vacuum_vessel_geometry.py +++ b/process/models/geometry/vacuum_vessel_geometry.py @@ -4,8 +4,8 @@ import numpy as np -from process.geometry.geometry_parameterisations import ArbitraryGeometry -from process.geometry.utils import dh_vertices +from process.models.geometry.geometry_parameterisations import ArbitraryGeometry +from process.models.geometry.utils import dh_vertices def vacuum_vessel_geometry_single_null( From f8c62372ff9ca9570f7204123e53b27bce753870 Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:54:06 +0000 Subject: [PATCH 39/42] Rename physics_functions to radiation_power --- process/models/physics/physics.py | 2 +- .../models/physics/{physics_functions.py => radiation_power.py} | 0 process/models/stellarator/stellarator.py | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) rename process/models/physics/{physics_functions.py => radiation_power.py} (100%) diff --git a/process/models/physics/physics.py b/process/models/physics/physics.py index 832f1aa08..91dd3bef0 100644 --- a/process/models/physics/physics.py +++ b/process/models/physics/physics.py @@ -12,7 +12,7 @@ import process.models.physics.fusion_reactions as reactions import process.models.physics.impurity_radiation as impurity_radiation import process.models.physics.l_h_transition as transition -import process.models.physics.physics_functions as physics_funcs +import process.models.physics.radiation_power as physics_funcs from process import constants from process import process_output as po from process.data_structure import ( diff --git a/process/models/physics/physics_functions.py b/process/models/physics/radiation_power.py similarity index 100% rename from process/models/physics/physics_functions.py rename to process/models/physics/radiation_power.py diff --git a/process/models/stellarator/stellarator.py b/process/models/stellarator/stellarator.py index 989c03012..790f67597 100644 --- a/process/models/stellarator/stellarator.py +++ b/process/models/stellarator/stellarator.py @@ -7,7 +7,7 @@ import numpy as np import process.models.physics.fusion_reactions as reactions -import process.models.physics.physics_functions as physics_funcs +import process.models.physics.radiation_power as physics_funcs from process import constants from process import process_output as po from process.coolprop_interface import FluidProperties From 2f8b78561d450378bfaed30b6983920d2c50eb3a Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 15:54:54 +0000 Subject: [PATCH 40/42] Strip tf_coil from tf_coil models --- process/io/plot_proc.py | 4 ++-- process/main.py | 4 ++-- process/models/tfcoil/{resistive_tf_coil.py => resistive.py} | 0 .../tfcoil/{superconducting_tf_coil.py => superconducting.py} | 0 tests/unit/test_resistive_tf_coil.py | 2 +- tests/unit/test_sctfcoil.py | 4 ++-- 6 files changed, 7 insertions(+), 7 deletions(-) rename process/models/tfcoil/{resistive_tf_coil.py => resistive.py} (100%) rename process/models/tfcoil/{superconducting_tf_coil.py => superconducting.py} (100%) diff --git a/process/io/plot_proc.py b/process/io/plot_proc.py index 30ef68a5f..f8bbc60f4 100644 --- a/process/io/plot_proc.py +++ b/process/io/plot_proc.py @@ -32,7 +32,7 @@ import process.data_structure.pfcoil_variables as pfcoil_variables import process.io.mfile as mf import process.models.physics.confinement_time as confine -import process.models.tfcoil.superconducting_tf_coil as sctf +import process.models.tfcoil.superconducting as sctf from process.data_structure import impurity_radiation_module, physics_variables from process.io.mfile import MFileErrorClass from process.models.build import Build @@ -61,7 +61,7 @@ ) from process.models.physics.current_drive import ElectronBernstein, ElectronCyclotron from process.models.physics.impurity_radiation import read_impurity_file -from process.models.tfcoil.superconducting_tf_coil import SUPERCONDUCTING_TF_TYPES +from process.models.tfcoil.superconducting import SUPERCONDUCTING_TF_TYPES from process.objectives import OBJECTIVE_NAMES mpl.rcParams["figure.max_open_warning"] = 40 diff --git a/process/main.py b/process/main.py index 535184704..462008d22 100644 --- a/process/main.py +++ b/process/main.py @@ -105,12 +105,12 @@ from process.models.stellarator.neoclassics import Neoclassics from process.models.stellarator.stellarator import Stellarator from process.models.structure import Structure -from process.models.tfcoil.resistive_tf_coil import ( +from process.models.tfcoil.resistive import ( AluminiumTFCoil, CopperTFCoil, ResistiveTFCoil, ) -from process.models.tfcoil.superconducting_tf_coil import SuperconductingTFCoil +from process.models.tfcoil.superconducting import SuperconductingTFCoil from process.models.tfcoil.tf_coil import TFCoil from process.models.vacuum import Vacuum, VacuumVessel from process.models.water_use import WaterUse diff --git a/process/models/tfcoil/resistive_tf_coil.py b/process/models/tfcoil/resistive.py similarity index 100% rename from process/models/tfcoil/resistive_tf_coil.py rename to process/models/tfcoil/resistive.py diff --git a/process/models/tfcoil/superconducting_tf_coil.py b/process/models/tfcoil/superconducting.py similarity index 100% rename from process/models/tfcoil/superconducting_tf_coil.py rename to process/models/tfcoil/superconducting.py diff --git a/tests/unit/test_resistive_tf_coil.py b/tests/unit/test_resistive_tf_coil.py index fe09aabca..aec855892 100644 --- a/tests/unit/test_resistive_tf_coil.py +++ b/tests/unit/test_resistive_tf_coil.py @@ -8,7 +8,7 @@ superconducting_tf_coil_variables, tfcoil_variables, ) -from process.models.tfcoil.resistive_tf_coil import ResistiveTFCoil +from process.models.tfcoil.resistive import ResistiveTFCoil @pytest.fixture diff --git a/tests/unit/test_sctfcoil.py b/tests/unit/test_sctfcoil.py index 042ee277b..52d4a95b7 100644 --- a/tests/unit/test_sctfcoil.py +++ b/tests/unit/test_sctfcoil.py @@ -13,8 +13,8 @@ superconducting_tf_coil_variables, tfcoil_variables, ) -from process.models.tfcoil import superconducting_tf_coil as sctf -from process.models.tfcoil.superconducting_tf_coil import SuperconductingTFCoil +from process.models.tfcoil import superconducting as sctf +from process.models.tfcoil.superconducting import SuperconductingTFCoil @pytest.fixture From 44553e1fbbb39cdb43fe163062afcf741fa1c8bb Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 16:01:29 +0000 Subject: [PATCH 41/42] Remove _geometry suffix from geometry files --- process/io/plot_proc.py | 16 ++++++++-------- .../geometry/{blanket_geometry.py => blanket.py} | 2 +- .../{cryostat_geometry.py => cryostat.py} | 2 +- .../{firstwall_geometry.py => firstwall.py} | 2 +- ...parameterisations.py => parameterisations.py} | 0 .../geometry/{pfcoil_geometry.py => pfcoil.py} | 2 +- .../geometry/{plasma_geometry.py => plasma.py} | 0 .../geometry/{shield_geometry.py => shield.py} | 2 +- .../geometry/{tfcoil_geometry.py => tfcoil.py} | 2 +- ...acuum_vessel_geometry.py => vacuum_vessel.py} | 2 +- 10 files changed, 15 insertions(+), 15 deletions(-) rename process/models/geometry/{blanket_geometry.py => blanket.py} (98%) rename process/models/geometry/{cryostat_geometry.py => cryostat.py} (95%) rename process/models/geometry/{firstwall_geometry.py => firstwall.py} (98%) rename process/models/geometry/{geometry_parameterisations.py => parameterisations.py} (100%) rename process/models/geometry/{pfcoil_geometry.py => pfcoil.py} (95%) rename process/models/geometry/{plasma_geometry.py => plasma.py} (100%) rename process/models/geometry/{shield_geometry.py => shield.py} (98%) rename process/models/geometry/{tfcoil_geometry.py => tfcoil.py} (98%) rename process/models/geometry/{vacuum_vessel_geometry.py => vacuum_vessel.py} (98%) diff --git a/process/io/plot_proc.py b/process/io/plot_proc.py index f8bbc60f4..d97d0bbcb 100644 --- a/process/io/plot_proc.py +++ b/process/io/plot_proc.py @@ -36,26 +36,26 @@ from process.data_structure import impurity_radiation_module, physics_variables from process.io.mfile import MFileErrorClass from process.models.build import Build -from process.models.geometry.blanket_geometry import ( +from process.models.geometry.blanket import ( blanket_geometry_double_null, blanket_geometry_single_null, ) -from process.models.geometry.cryostat_geometry import cryostat_geometry -from process.models.geometry.firstwall_geometry import ( +from process.models.geometry.cryostat import cryostat_geometry +from process.models.geometry.firstwall import ( first_wall_geometry_double_null, first_wall_geometry_single_null, ) -from process.models.geometry.pfcoil_geometry import pfcoil_geometry -from process.models.geometry.plasma_geometry import plasma_geometry -from process.models.geometry.shield_geometry import ( +from process.models.geometry.pfcoil import pfcoil_geometry +from process.models.geometry.plasma import plasma_geometry +from process.models.geometry.shield import ( shield_geometry_double_null, shield_geometry_single_null, ) -from process.models.geometry.tfcoil_geometry import ( +from process.models.geometry.tfcoil import ( tfcoil_geometry_d_shape, tfcoil_geometry_rectangular_shape, ) -from process.models.geometry.vacuum_vessel_geometry import ( +from process.models.geometry.vacuum_vessel import ( vacuum_vessel_geometry_double_null, vacuum_vessel_geometry_single_null, ) diff --git a/process/models/geometry/blanket_geometry.py b/process/models/geometry/blanket.py similarity index 98% rename from process/models/geometry/blanket_geometry.py rename to process/models/geometry/blanket.py index 9aa6300e8..51440b238 100644 --- a/process/models/geometry/blanket_geometry.py +++ b/process/models/geometry/blanket.py @@ -4,7 +4,7 @@ import numpy as np -from process.models.geometry.geometry_parameterisations import ArbitraryGeometry +from process.models.geometry.parameterisations import ArbitraryGeometry from process.models.geometry.utils import dh_vertices, dhgap_vertices diff --git a/process/models/geometry/cryostat_geometry.py b/process/models/geometry/cryostat.py similarity index 95% rename from process/models/geometry/cryostat_geometry.py rename to process/models/geometry/cryostat.py index 5953c3f99..9660abb7e 100644 --- a/process/models/geometry/cryostat_geometry.py +++ b/process/models/geometry/cryostat.py @@ -2,7 +2,7 @@ Calculate cryostat geometries """ -from process.models.geometry.geometry_parameterisations import RectangleGeometry +from process.models.geometry.parameterisations import RectangleGeometry def cryostat_geometry( diff --git a/process/models/geometry/firstwall_geometry.py b/process/models/geometry/firstwall.py similarity index 98% rename from process/models/geometry/firstwall_geometry.py rename to process/models/geometry/firstwall.py index 1016c5994..31f25f141 100644 --- a/process/models/geometry/firstwall_geometry.py +++ b/process/models/geometry/firstwall.py @@ -4,7 +4,7 @@ import numpy as np -from process.models.geometry.geometry_parameterisations import ArbitraryGeometry +from process.models.geometry.parameterisations import ArbitraryGeometry from process.models.geometry.utils import dh_vertices, dhgap_vertices diff --git a/process/models/geometry/geometry_parameterisations.py b/process/models/geometry/parameterisations.py similarity index 100% rename from process/models/geometry/geometry_parameterisations.py rename to process/models/geometry/parameterisations.py diff --git a/process/models/geometry/pfcoil_geometry.py b/process/models/geometry/pfcoil.py similarity index 95% rename from process/models/geometry/pfcoil_geometry.py rename to process/models/geometry/pfcoil.py index 282eddc1c..f6298eebe 100644 --- a/process/models/geometry/pfcoil_geometry.py +++ b/process/models/geometry/pfcoil.py @@ -4,7 +4,7 @@ import numpy as np -from process.models.geometry.geometry_parameterisations import RectangleGeometry +from process.models.geometry.parameterisations import RectangleGeometry def pfcoil_geometry( diff --git a/process/models/geometry/plasma_geometry.py b/process/models/geometry/plasma.py similarity index 100% rename from process/models/geometry/plasma_geometry.py rename to process/models/geometry/plasma.py diff --git a/process/models/geometry/shield_geometry.py b/process/models/geometry/shield.py similarity index 98% rename from process/models/geometry/shield_geometry.py rename to process/models/geometry/shield.py index ad5acebc3..7efaaffd4 100644 --- a/process/models/geometry/shield_geometry.py +++ b/process/models/geometry/shield.py @@ -4,7 +4,7 @@ import numpy as np -from process.models.geometry.geometry_parameterisations import ArbitraryGeometry +from process.models.geometry.parameterisations import ArbitraryGeometry from process.models.geometry.utils import dh_vertices diff --git a/process/models/geometry/tfcoil_geometry.py b/process/models/geometry/tfcoil.py similarity index 98% rename from process/models/geometry/tfcoil_geometry.py rename to process/models/geometry/tfcoil.py index f459e497f..af1779e19 100644 --- a/process/models/geometry/tfcoil_geometry.py +++ b/process/models/geometry/tfcoil.py @@ -2,7 +2,7 @@ Calculate radial and vertical coordinates for the geometry of the tf coils """ -from process.models.geometry.geometry_parameterisations import RectangleGeometry +from process.models.geometry.parameterisations import RectangleGeometry from process.models.geometry.utils import ellips_fill_vertices diff --git a/process/models/geometry/vacuum_vessel_geometry.py b/process/models/geometry/vacuum_vessel.py similarity index 98% rename from process/models/geometry/vacuum_vessel_geometry.py rename to process/models/geometry/vacuum_vessel.py index f697cf2f6..500dae950 100644 --- a/process/models/geometry/vacuum_vessel_geometry.py +++ b/process/models/geometry/vacuum_vessel.py @@ -4,7 +4,7 @@ import numpy as np -from process.models.geometry.geometry_parameterisations import ArbitraryGeometry +from process.models.geometry.parameterisations import ArbitraryGeometry from process.models.geometry.utils import dh_vertices From 071da2667c22be607aa87a4cf8ca6c5791fd3c1d Mon Sep 17 00:00:00 2001 From: Timothy Nunn Date: Thu, 19 Feb 2026 16:02:07 +0000 Subject: [PATCH 42/42] Rename tfcoil/tf_coil to tfcoil/base --- process/main.py | 2 +- process/models/tfcoil/{tf_coil.py => base.py} | 0 process/models/tfcoil/resistive.py | 2 +- process/models/tfcoil/superconducting.py | 2 +- tests/unit/test_tfcoil.py | 4 ++-- 5 files changed, 5 insertions(+), 5 deletions(-) rename process/models/tfcoil/{tf_coil.py => base.py} (100%) diff --git a/process/main.py b/process/main.py index 462008d22..8276732ef 100644 --- a/process/main.py +++ b/process/main.py @@ -105,13 +105,13 @@ from process.models.stellarator.neoclassics import Neoclassics from process.models.stellarator.stellarator import Stellarator from process.models.structure import Structure +from process.models.tfcoil.base import TFCoil from process.models.tfcoil.resistive import ( AluminiumTFCoil, CopperTFCoil, ResistiveTFCoil, ) from process.models.tfcoil.superconducting import SuperconductingTFCoil -from process.models.tfcoil.tf_coil import TFCoil from process.models.vacuum import Vacuum, VacuumVessel from process.models.water_use import WaterUse from process.process_output import OutputFileManager, oheadr diff --git a/process/models/tfcoil/tf_coil.py b/process/models/tfcoil/base.py similarity index 100% rename from process/models/tfcoil/tf_coil.py rename to process/models/tfcoil/base.py diff --git a/process/models/tfcoil/resistive.py b/process/models/tfcoil/resistive.py index 820ed1790..310ffcc4a 100644 --- a/process/models/tfcoil/resistive.py +++ b/process/models/tfcoil/resistive.py @@ -12,7 +12,7 @@ superconducting_tf_coil_variables, tfcoil_variables, ) -from process.models.tfcoil.tf_coil import TFCoil +from process.models.tfcoil.base import TFCoil logger = logging.getLogger(__name__) diff --git a/process/models/tfcoil/superconducting.py b/process/models/tfcoil/superconducting.py index c4df14131..5bd7e533e 100644 --- a/process/models/tfcoil/superconducting.py +++ b/process/models/tfcoil/superconducting.py @@ -21,7 +21,7 @@ tfcoil_variables, ) from process.exceptions import ProcessValueError -from process.models.tfcoil.tf_coil import TFCoil +from process.models.tfcoil.base import TFCoil logger = logging.getLogger(__name__) diff --git a/tests/unit/test_tfcoil.py b/tests/unit/test_tfcoil.py index 21b905a73..e52b3a6f8 100644 --- a/tests/unit/test_tfcoil.py +++ b/tests/unit/test_tfcoil.py @@ -9,7 +9,7 @@ import numpy as np import pytest -import process.models.tfcoil.tf_coil as tfcoil_module +import process.models.tfcoil.base as tfcoil_module from process.data_structure import ( build_variables, fwbs_variables, @@ -17,7 +17,7 @@ tfcoil_variables, ) from process.models.build import Build -from process.models.tfcoil.tf_coil import TFCoil +from process.models.tfcoil.base import TFCoil @pytest.fixture