bluemira.codes.process.model_mapping

PROCESS model mappings

Classes

classproperty

Hacking for properties to work with Enums

ModelSelection

Mixin dataclass for a Model selection in PROCESSModel

PROCESSModel

Baseclass for PROCESS models

PROCESSOptimisationAlgorithm

Switch for the optimisation algorithm to use in PROCESS

PlasmaGeometryModel

Switch for plasma geometry

PlasmaNullConfigurationModel

Switch for single-null / double-null

PlasmaPedestalModel

Switch for plasma profile model

BetaNormMaxModel

Switch for determining how the beta g coefficient beta_norm_max is calculated.

PlasmaProfileModel

Switch for current profile consistency

AlphaJModel

Switch for current profile index

BetaLimitModel

Switch for the plasma beta limit model

AlphaPressureModel

Switch for the pressure contribution from fast alphas

DensityLimitModel

Switch for the density limit model

PlasmaCurrentScalingLaw

Switch for plasma current scaling law

ConfinementTimeScalingLaw

Switch for the energy confinement time scaling law

BootstrapCurrentScalingLaw

Switch for the model to calculate bootstrap fraction

DiamagneticCurrentScalingLaw

Switch for the model of diamagnetic current calculation

PfirschSchluterCurrentScalingLaw

Switch for the model of Pfirsch-Schlüter current calculation

LHThreshholdScalingLaw

Switch for the model to calculate the L-H power threshhold

RadiationLossModel

Switch for radiation loss term usage in power balance

PlasmaWallGapModel

Switch to select plasma-wall gap model

SphericalTokamakModel

Switch to enable spherical tokamak approximations

SphericalTokamakPFModel

Switch to enable spherical tokamak PF approximations

OperationModel

Switch to set the operation mode

PowerFlowModel

Switch to control power flow model

ThermalStorageModel

Switch to et the power cycle thermal storage model

BlanketModel

Switch to select the blanket model

StelleratorBlanketModel

Switch to select the blanket model for Stellerator

InboardBlanketSwitch

Switch to determin whether or not there is an inboard blanket

InVesselGeometryModel

Switch to control the geometry of the FW, blanket, shield, and VV shape

TFTurnsInteger

Switch for TF coil integer/non-integer turns

TFCSTopologyModel

Switch to select the TF-CS topology

TFCoilConductorTechnology

Switch for TF coil conductor model:

TFSuperconductorModel

Switch for the TF superconductor model

TFCasingGeometryModel

Switch for the TF casing geometry model

TFWindingPackGeometryModel

Switch for the TF winding pack geometry model

TFWindingPackTurnModel

Switch for the TF winding pack turn model

TFCoilShapeModel

Switch for the TF coil shape model

ResistiveCentrepostModel

Swtich for the resistive centrepost model

TFCoilJointsModel

Switch for the TF coil joints

TFStressModel

Switch for the TF inboard midplane stress model

TFTrescaStressModel

Switch for the TF coil conduit Tresca stress criterion

TFCoilSupportModel

Switch for the TF inboard coil support model

PFConductorModel

Switch for the PF conductor technology model

PFSuperconductorModel

Switch for the PF superconductor model

PFCurrentControlModel

Switch to control the currents in the PF coils

PFCoilPlacmentModel

Switch for the placement of Location 3 (outboard) PF coils

SolenoidSwitchModel

Switch to control whether or not a central solenoid should be

CSSuperconductorModel

Switch for the CS superconductor model

CSPrecompressionModel

Switch to control the existence of pre-compression tie plates in the CS

CSStressModel

Switch for the calculation of the CS stress

DivertorHeatFluxModel

Switch for the divertor heat flux model

DivertorThermalHeatUse

Switch to control if the divertor thermal power is used in the

ShieldThermalHeatUse

Switch to control if shield (inside VV) is used in the power cycle

TFNuclearHeatingModel

Switch to control nuclear heating in TF model

PrimaryPumpingModel

Switch for the calculation method of the pumping power

SecondaryCycleModel

Switch for the calculation of thermal to electric conversion efficiency

CurrentDriveEfficiencyModel

Switch for current drive efficiency model:

ECRHWaveModel

Switch for ECRH wave mode

PlasmaIgnitionModel

Switch to control whether or not the plasma is ignited

VacuumPumpingModel

Switch to control the vacuum pumping technology model

VacuumPumpingDwellModel

Switch to control when vacuum pumping occurs

AvailabilityModel

Switch to control the availability model

SafetyAssuranceLevel

Switch to control the level of safety assurance

CostModel

Switch to control the cost model used

CapCostFracTetraModel

Switch for Tetra cost model.

BuildingSizeModel

Switch for Building size estimation model

OutputCostsSwitch

Switch to control whether or not cost information is output

VacuumPumpSwitch

Switch for whether the FW and BB are on the same pump system

FWCoolantSwitch

Switch for first wall coolant (can be different from blanket coolant)

ModuleSegmentSwitch

Switch for Multi Module Segment (MMS) or Single Modle Segment (SMS)

LiquidMetalBreederMaterialSwitch

Switch for Liquid Metal Breeder Material

BBCoolantSwitch

Switch to specify whether breeding blanket is single-cooled or dual-coolant

FlowChannelInsertSwitch

Switch for Flow Channel Insert (FCI) type if liquid metal breeder blanket.

Module Contents

class bluemira.codes.process.model_mapping.classproperty(func)

Hacking for properties to work with Enums

func
__get__(obj, owner)

Apply function to owner

class bluemira.codes.process.model_mapping.ModelSelection

Mixin dataclass for a Model selection in PROCESSModel

Parameters:
  • _value_ – Integer value of the model selection

  • requires – List of required inputs for the model selection

  • description – Short description of the model selection

_value_: int
requires_values: tuple[str] = ()
description: str = ''
class bluemira.codes.process.model_mapping.PROCESSModel(*args, **kwds)

Bases: ModelSelection, bluemira.codes.utilities.Model

Inheritance diagram of bluemira.codes.process.model_mapping.PROCESSModel

Baseclass for PROCESS models

abstract switch_name() str

PROCESS switch name

Return type:

str

class bluemira.codes.process.model_mapping.PROCESSOptimisationAlgorithm(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.PROCESSOptimisationAlgorithm

Switch for the optimisation algorithm to use in PROCESS

# TODO: This switch will be used in future to support alternative optimisation algorithms.

switch_name() str

PROCESS switch name

Return type:

str

NO_OPTIMISATION = (0, (), 'Do not use optimisation')
VMCON = (1, (), 'The traditional VMCON optimisation algorithm')
class bluemira.codes.process.model_mapping.PlasmaGeometryModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.PlasmaGeometryModel

Switch for plasma geometry

switch_name() str

PROCESS switch name

Return type:

str

HENDER_K_D_100 = (0, ('kappa', 'triang'))
GALAMBOS_K_D_95 = (1, ('kappa95', 'triang95'))
ZOHM_ITER = (2, ('triang', 'fkzohm'))
ZOHM_ITER_D_95 = (3, ('triang95', 'fkzohm'))
HENDER_K_D_95 = (4, 'kappa95, triang95')
MAST_95 = (5, 'kappa95, triang95')
MAST_100 = (6, 'kappa, triang')
FIESTA_95 = (7, 'kappa95, triang95')
FIESTA_100 = (8, 'kappa, triang')
A_LI3 = (9, ('triang',))
CREATE_A_M_S = (10, ('aspect', 'm_s_limit', 'triang'), 'A fit to CREATE data for conventional A tokamaks')
MENARD = (11, ('triang', 'aspect'))
class bluemira.codes.process.model_mapping.PlasmaNullConfigurationModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.PlasmaNullConfigurationModel

Switch for single-null / double-null

switch_name() str

PROCESS switch name

Return type:

str

DOUBLE_NULL = (0, ('f_p_div_lower',))
SINGLE_NULL = 1
class bluemira.codes.process.model_mapping.PlasmaPedestalModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.PlasmaPedestalModel

Switch for plasma profile model

switch_name() str

PROCESS switch name

Return type:

str

NO_PEDESTAL = (0, ('temp_plasma_electron_vol_avg_kev',))
PEDESTAL_GW = (1, ('temp_plasma_electron_vol_avg_kev', 'nd_plasma_pedestal_electron',...
class bluemira.codes.process.model_mapping.BetaNormMaxModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.BetaNormMaxModel

Switch for determining how the beta g coefficient beta_norm_max is calculated.

switch_name() str

PROCESS switch name

Return type:

str

INPUT = (0, ('beta_norm_max',))
WESSON = (1, ('q0', 'q95', 'i_alphaj', 'i_ind_plasma_internal_norm'))
ORIG_SCALING = 2
MENARD = (3, 'i_ind_plasma_internal_norm')
THOLERUS = 4
STAMBAUGH = 5
class bluemira.codes.process.model_mapping.PlasmaProfileModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.PlasmaProfileModel

Switch for current profile consistency

switch_name() str

PROCESS switch name

Return type:

str

INPUT = (0, ('ind_plasma_internal_norm',))
WESSON = (1, ('q95', 'q0'))
MENARD = (2, ('q95', 'q0', 'ind_plasma_internal_norm'))
class bluemira.codes.process.model_mapping.AlphaJModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.AlphaJModel

Switch for current profile index

switch_name() str

PROCESS switch name

Return type:

str

INPUT = (0, ('alphaj', 'ind_plasma_internal_norm'))
WESSON = (1, ('q95', 'q0'))
class bluemira.codes.process.model_mapping.BetaLimitModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.BetaLimitModel

Switch for the plasma beta limit model

switch_name() str

PROCESS switch name

Return type:

str

TOTAL = 0
THERMAL = 1
THERMAL_NBI = 2
TOTAL_TF = 3
class bluemira.codes.process.model_mapping.AlphaPressureModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.AlphaPressureModel

Switch for the pressure contribution from fast alphas

switch_name() str

PROCESS switch name

Return type:

str

HENDER = 0
WARD = 1
class bluemira.codes.process.model_mapping.DensityLimitModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.DensityLimitModel

Switch for the density limit model

switch_name() str

PROCESS switch name

Return type:

str

ASDEX = 1
BORRASS_ITER_I = 2
BORRASS_ITER_II = 3
JET_RADIATION = 4
JET_SIMPLE = 5
HUGILL_MURAKAMI = 6
GREENWALD = 7
class bluemira.codes.process.model_mapping.PlasmaCurrentScalingLaw(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.PlasmaCurrentScalingLaw

Switch for plasma current scaling law

switch_name() str

PROCESS switch name

Return type:

str

PENG = 1
PENG_DN = 2
ITER_SIMPLE = 3
ITER_REVISED = 4
TODD_I = 5
TODD_II = 6
CONNOR_HASTIE = 7
SAUTER = 8
FIESTA = 9
class bluemira.codes.process.model_mapping.ConfinementTimeScalingLaw(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.ConfinementTimeScalingLaw

Switch for the energy confinement time scaling law

switch_name() str

PROCESS switch name

Return type:

str

NEO_ALCATOR_OHMIC = 1
MIRNOV_H_MODE = 2
MEREZHKIN_MUHKOVATOV_L_MODE = 3
SHIMOMURA_H_MODE = 4
KAYE_GOLDSTON_L_MODE = 5
ITER_89_P_L_MODE = 6
ITER_89_O_L_MODE = 7
REBUT_LALLIA_L_MODE = 8
GOLDSTON_L_MODE = 9
T10_L_MODE = 10
JAERI_88_L_MODE = 11
KAYE_BIG_COMPLEX_L_MODE = 12
ITER_H90_P_H_MODE = 13
ITER_MIX = 14
RIEDEL_L_MODE = 15
CHRISTIANSEN_L_MODE = 16
LACKNER_GOTTARDI_L_MODE = 17
NEO_KAYE_L_MODE = 18
RIEDEL_H_MODE = 19
ITER_H90_P_H_MODE_AMENDED = 20
LHD_STELLARATOR = 21
GRYO_RED_BOHM_STELLARATOR = 22
LACKNER_GOTTARDI_STELLARATOR = 23
ITER_93H_H_MODE = 24
TITAN_RFP = 25
ITER_H97_P_NO_ELM_H_MODE = 26
ITER_H97_P_ELMY_H_MODE = 27
ITER_96P_L_MODE = 28
VALOVIC_ELMY_H_MODE = 29
KAYE_PPPL98_L_MODE = 30
ITERH_PB98P_H_MODE = 31
IPB98_Y_H_MODE = 32
IPB98_Y1_H_MODE = 33
IPB98_Y2_H_MODE = 34
IPB98_Y3_H_MODE = 35
IPB98_Y4_H_MODE = 36
ISS95_STELLARATOR = 37
ISS04_STELLARATOR = 38
DS03_H_MODE = 39
MURARI_H_MODE = 40
PETTY_H_MODE = 41
LANG_H_MODE = 42
HUBBARD_NOM_I_MODE = 43
HUBBARD_LOW_I_MODE = 44
HUBBARD_HI_I_MODE = 45
NSTX_H_MODE = 46
NSTX_PETTY_H_MODE = 47
NSTX_GB_H_MODE = 48
INPUT = (49, ('tauee_in',))
class bluemira.codes.process.model_mapping.BootstrapCurrentScalingLaw(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.BootstrapCurrentScalingLaw

Switch for the model to calculate bootstrap fraction

switch_name() str

PROCESS switch name

Return type:

str

FIXED = 0
ITER = (1, ('cboot',))
GENERAL = 2
NUMERICAL = 3
SAUTER = 4
class bluemira.codes.process.model_mapping.DiamagneticCurrentScalingLaw(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.DiamagneticCurrentScalingLaw

Switch for the model of diamagnetic current calculation

switch_name() str

PROCESS switch name

Return type:

str

OFF = 0
ST_FIT = 1
SCENE_FIT = (2, ('q', 'q0'))
class bluemira.codes.process.model_mapping.PfirschSchluterCurrentScalingLaw(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.PfirschSchluterCurrentScalingLaw

Switch for the model of Pfirsch-Schlüter current calculation

switch_name() str

PROCESS switch name

Return type:

str

OFF = 0
SCENE_FIT = 1
class bluemira.codes.process.model_mapping.LHThreshholdScalingLaw(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.LHThreshholdScalingLaw

Switch for the model to calculate the L-H power threshhold

switch_name() str

PROCESS switch name

Return type:

str

ITER_1996_NOM = 1
ITER_1996_LOW = 2
ITER_1996_HI = 3
ITER_1997 = 4
ITER_1997_K = 5
MARTIN_NOM = 6
MARTIN_HI = 7
MARTIN_LOW = 8
SNIPES_NOM = 9
SNIPES_HI = 10
SNIPES_LOW = 11
SNIPES_CLOSED_DIVERTOR_NOM = 12
SNIPES_CLOSED_DIVERTOR_HI = 13
SNIPES_CLOSED_DIVERTOR_LOW = 14
HUBBARD_LI_NOM = 15
HUBBARD_LI_HI = 16
HUBBARD_LI_LOW = 17
HUBBARD_2017_LI = 18
MARTIN_ACORRECT_NOM = 19
MARTIN_ACORRECT_HI = 20
MARTIN_ACORRECT_LOW = 21
class bluemira.codes.process.model_mapping.RadiationLossModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.RadiationLossModel

Switch for radiation loss term usage in power balance

switch_name() str

PROCESS switch name

Return type:

str

SCALING_PEDSETAL = 0
SCALING_CORE = 1
SCALING_ONLY = 2
class bluemira.codes.process.model_mapping.PlasmaWallGapModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.PlasmaWallGapModel

Switch to select plasma-wall gap model

switch_name() str

PROCESS switch name

Return type:

str

TEN_PERCENT = (0, (), 'SOL thickness calculated as 10 percent of minor radius')
INPUT = (1, ('dr_fw_plasma_gap_inboard', 'dr_fw_plasma_gap_outboard'), 'Fixed thickness SOL values')
class bluemira.codes.process.model_mapping.SphericalTokamakModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.SphericalTokamakModel

Switch to enable spherical tokamak approximations

switch_name() str

PROCESS switch name

Return type:

str

OFF = 0
ON = 1
class bluemira.codes.process.model_mapping.SphericalTokamakPFModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.SphericalTokamakPFModel

Switch to enable spherical tokamak PF approximations

switch_name() str

PROCESS switch name

Return type:

str

PENG_STRICKLER = (0, (), 'Peng and Strickler (1986)')
CONVENTIONAL = 1
class bluemira.codes.process.model_mapping.OperationModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.OperationModel

Switch to set the operation mode

switch_name() str

PROCESS switch name

Return type:

str

STEADY_STATE = 0
PULSED = 1
class bluemira.codes.process.model_mapping.PowerFlowModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.PowerFlowModel

Switch to control power flow model

switch_name() str

PROCESS switch name

Return type:

str

SIMPLE = 0
STELLARATOR = 1
class bluemira.codes.process.model_mapping.ThermalStorageModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.ThermalStorageModel

Switch to et the power cycle thermal storage model

switch_name() str

PROCESS switch name

Return type:

str

INHERENT_STEAM = 1
BOILER = 2
STEEL = (3, ('dtstor',))
class bluemira.codes.process.model_mapping.BlanketModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.BlanketModel

Switch to select the blanket model

switch_name() str

PROCESS switch name

Return type:

str

CCFE_HCPB = (1, ('dr_blkt_inboard', 'dr_blkt_outboard', 'tbrmin'), 'CCFE HCPB model')
DCLL = (5, ('blbuith', 'blbuoth'), 'no neutronics model included')
class bluemira.codes.process.model_mapping.StelleratorBlanketModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.StelleratorBlanketModel

Switch to select the blanket model for Stellerator

switch_name() str

PROCESS switch name

Return type:

str

SIMPLE = (0, ('i_blkt_coolant_type',))
KIT_HCPB = (1, ('i_blkt_coolant_type',))
class bluemira.codes.process.model_mapping.InboardBlanketSwitch(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.InboardBlanketSwitch

Switch to determin whether or not there is an inboard blanket

switch_name() str

PROCESS switch name

Return type:

str

ABSENT = 0
PRESENT = 1
class bluemira.codes.process.model_mapping.InVesselGeometryModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.InVesselGeometryModel

Switch to control the geometry of the FW, blanket, shield, and VV shape

switch_name() str

PROCESS switch name

Return type:

str

CYL_ELLIPSE = 1
TWO_ELLIPSE = 2
class bluemira.codes.process.model_mapping.TFTurnsInteger(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.TFTurnsInteger

Switch for TF coil integer/non-integer turns

switch_name() str

PROCESS switch name

Return type:

str

NON_INTEGER = 0
INTEGER = 1
class bluemira.codes.process.model_mapping.TFCSTopologyModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.TFCSTopologyModel

Switch to select the TF-CS topology

switch_name() str

PROCESS switch name

Return type:

str

ITER = 0
INSANITY = 1
class bluemira.codes.process.model_mapping.TFCoilConductorTechnology(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.TFCoilConductorTechnology

Switch for TF coil conductor model:

switch_name() str

PROCESS switch name

Return type:

str

COPPER = (0, ('f_dr_tf_outboard_inboard',))
SC = 1
CRYO_AL = 2
class bluemira.codes.process.model_mapping.TFSuperconductorModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.TFSuperconductorModel

Switch for the TF superconductor model

switch_name() str

PROCESS switch name

Return type:

str

NB3SN_ITER_STD = 1
BI_2212 = 2
NBTI = 3
NB3SN_ITER_INPUT = 4
NB3SN_WST = 5
REBCO_CROCO = 6
NBTI_DGL = 7
REBCO_DGL = 8
REBCO_ZHAI = 9
class bluemira.codes.process.model_mapping.TFCasingGeometryModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.TFCasingGeometryModel

Switch for the TF casing geometry model

switch_name() str

PROCESS switch name

Return type:

str

CURVED = 0
FLAT = 1
class bluemira.codes.process.model_mapping.TFWindingPackGeometryModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.TFWindingPackGeometryModel

Switch for the TF winding pack geometry model

switch_name() str

PROCESS switch name

Return type:

str

RECTANGULAR = 0
DOUBLE_RECTANGULAR = 1
TRAPEZOIDAL = 2
class bluemira.codes.process.model_mapping.TFWindingPackTurnModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.TFWindingPackTurnModel

Switch for the TF winding pack turn model

switch_name() str

PROCESS switch name

Return type:

str

CURRENT_PER_TURN = (0, ('c_tf_turn',))
class bluemira.codes.process.model_mapping.TFCoilShapeModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.TFCoilShapeModel

Switch for the TF coil shape model

switch_name() str

PROCESS switch name

Return type:

str

PRINCETON = 1
PICTURE_FRAME = 2
class bluemira.codes.process.model_mapping.ResistiveCentrepostModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.ResistiveCentrepostModel

Swtich for the resistive centrepost model

switch_name() str

PROCESS switch name

Return type:

str

CALCULATED = 0
INPUT = 1
MID_TOP_RATIO = 2
class bluemira.codes.process.model_mapping.TFCoilJointsModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.TFCoilJointsModel

Switch for the TF coil joints

switch_name() str

PROCESS switch name

Return type:

str

SC_CLAMP_RES_SLIDE
NO_JOINTS = 0
SLIDING_JOINTS = (1, ('tho_tf_joints', 'n_tf_joints_contact', 'n_tf_joints', 'th_joint_contact'))
class bluemira.codes.process.model_mapping.TFStressModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.TFStressModel

Switch for the TF inboard midplane stress model

switch_name() str

PROCESS switch name

Return type:

str

GEN_PLANE_STRAIN = 0
PLANE_STRESS = 1
GEN_PLANE_STRAIN_NEW = 2
class bluemira.codes.process.model_mapping.TFTrescaStressModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.TFTrescaStressModel

Switch for the TF coil conduit Tresca stress criterion

switch_name() str

PROCESS switch name

Return type:

str

OFF = 0
ON = (1, (), 'Tresca with CEA adjustment factors (radial+2%, vertical+60%)')
class bluemira.codes.process.model_mapping.TFCoilSupportModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.TFCoilSupportModel

Switch for the TF inboard coil support model

switch_name() str

PROCESS switch name

Return type:

str

NO_SUPPORT = 0
BUCKED = 1
BUCKED_WEDGED = 2
class bluemira.codes.process.model_mapping.PFConductorModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.PFConductorModel

Switch for the PF conductor technology model

switch_name() str

PROCESS switch name

Return type:

str

SUPERCONDUCTING = 0
RESISTIVE = 1
class bluemira.codes.process.model_mapping.PFSuperconductorModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.PFSuperconductorModel

Switch for the PF superconductor model

switch_name() str

PROCESS switch name

Return type:

str

NB3SN_ITER_STD = 1
BI_2212 = (2, ('fhts',))
NBTI = 3
NB3SN_ITER_INPUT = 4
NB3SN_WST = 5
REBCO_CROCO = 6
NBTI_DGL = 7
REBCO_DGL = 8
REBCO_ZHAI = 9
class bluemira.codes.process.model_mapping.PFCurrentControlModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.PFCurrentControlModel

Switch to control the currents in the PF coils

switch_name() str

PROCESS switch name

Return type:

str

INPUT = (0, ('c_pf_cs_coil_pulse_start_ma', 'c_pf_cs_coil_flat_top_ma', 'c_pf_cs_coil_pulse_end_ma'))
SVD = 1
class bluemira.codes.process.model_mapping.PFCoilPlacmentModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.PFCoilPlacmentModel

Switch for the placement of Location 3 (outboard) PF coils when the TF coils are superconducting (TFCoilConductorTechnology.SC)

switch_name() str

PROCESS switch name

Return type:

str

DEFAULT = 0
OUTBOARD_EQUAL = (1, ('i_tf_sup',))
class bluemira.codes.process.model_mapping.SolenoidSwitchModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.SolenoidSwitchModel

Switch to control whether or not a central solenoid should be used.

switch_name() str

PROCESS switch name

Return type:

str

NO_SOLENOID = 0
SOLENOID = 1
class bluemira.codes.process.model_mapping.CSSuperconductorModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.CSSuperconductorModel

Switch for the CS superconductor model

switch_name() str

PROCESS switch name

Return type:

str

NB3SN_ITER_STD = 1
BI_2212 = 2
NBTI = 3
NB3SN_ITER_INPUT = 4
NB3SN_WST = 5
REBCO_CROCO = 6
NBTI_DGL = 7
REBCO_DGL = 8
REBCO_ZHAI = 9
class bluemira.codes.process.model_mapping.CSPrecompressionModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.CSPrecompressionModel

Switch to control the existence of pre-compression tie plates in the CS

switch_name() str

PROCESS switch name

Return type:

str

ABSENT = 0
PRESENT = 1
class bluemira.codes.process.model_mapping.CSStressModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.CSStressModel

Switch for the calculation of the CS stress

# TODO: Listed as an output?!

switch_name() str

PROCESS switch name

Return type:

str

HOOP_ONLY = 0
HOOP_AXIAL = 1
class bluemira.codes.process.model_mapping.DivertorHeatFluxModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.DivertorHeatFluxModel

Switch for the divertor heat flux model

switch_name() str

PROCESS switch name

Return type:

str

INPUT = 0
CHAMBER = 1
WADE = 2
class bluemira.codes.process.model_mapping.DivertorThermalHeatUse(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.DivertorThermalHeatUse

Switch to control if the divertor thermal power is used in the power cycle

switch_name() str

PROCESS switch name

Return type:

str

LOW_GRADE_HEAT = 0
HIGH_GRADE_HEAT = 1
class bluemira.codes.process.model_mapping.ShieldThermalHeatUse(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.ShieldThermalHeatUse

Switch to control if shield (inside VV) is used in the power cycle

switch_name() str

PROCESS switch name

Return type:

str

NOT_USED = 0
LOW_GRADE_HEAT = 1
class bluemira.codes.process.model_mapping.TFNuclearHeatingModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.TFNuclearHeatingModel

Switch to control nuclear heating in TF model

switch_name() str

PROCESS switch name

Return type:

str

FRANCES_FOX = 0
INPUT = (1, ('qnuc',))
class bluemira.codes.process.model_mapping.PrimaryPumpingModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.PrimaryPumpingModel

Switch for the calculation method of the pumping power required for the primary coolant

switch_name() str

PROCESS switch name

Return type:

str

INPUT = 0
FRACTION = 1
PRESSURE_DROP = 2
PRESSURE_DROP_INPUT = 3
class bluemira.codes.process.model_mapping.SecondaryCycleModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.SecondaryCycleModel

Switch for the calculation of thermal to electric conversion efficiency

switch_name() str

PROCESS switch name

Return type:

str

FIXED = 0
FIXED_W_DIVERTOR = 1
INPUT = 2
RANKINE = 3
BRAYTON = 4
class bluemira.codes.process.model_mapping.CurrentDriveEfficiencyModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.CurrentDriveEfficiencyModel

Switch for current drive efficiency model:

1 - Fenstermacher Lower Hybrid 2 - Ion Cyclotron current drive 3 - Fenstermacher ECH 4 - Ehst Lower Hybrid 5 - ITER Neutral Beam 6 - new Culham Lower Hybrid model 7 - new Culham ECCD model 8 - new Culham Neutral Beam model 10 - ECRH user input gamma 11 - ECRH “HARE” model (E. Poli, Physics of Plasmas 2019) 12 - EBW user scaling input. Scaling (S. Freethy) 13 - ECRH O-mode cutoff with Zeff and Te (Physical review letters. 90. 075003)

switch_name() str

PROCESS switch name

Return type:

str

FENSTER_LH = 1
ICYCCD = 2
FENSTER_ECH = 3
EHST_LH = 4
ITER_NB = 5
CUL_LH = 6
CUL_ECCD = 7
CUL_NB = 8
ECRH_UI_GAM = 10
ECRH_HARE = 11
EBW_UI = 12
ECRH_O = 13
class bluemira.codes.process.model_mapping.ECRHWaveModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.ECRHWaveModel

Switch for ECRH wave mode

switch_name() str

PROCESS switch name

Return type:

str

O_MODE = 0
X_MODE = 1
class bluemira.codes.process.model_mapping.PlasmaIgnitionModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.PlasmaIgnitionModel

Switch to control whether or not the plasma is ignited

switch_name() str

PROCESS switch name

Return type:

str

NOT_IGNITED = 0
IGNITED = 1
class bluemira.codes.process.model_mapping.VacuumPumpingModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.VacuumPumpingModel

Switch to control the vacuum pumping technology model

switch_name() str

PROCESS switch name

Return type:

str

TURBO_PUMP = 0
CRYO_PUMP = 1
class bluemira.codes.process.model_mapping.VacuumPumpingDwellModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.VacuumPumpingDwellModel

Switch to control when vacuum pumping occurs

switch_name() str

PROCESS switch name

Return type:

str

T_DWELL = 0
T_RAMP = 1
T_DWELL_RAMP = 2
class bluemira.codes.process.model_mapping.AvailabilityModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.AvailabilityModel

Switch to control the availability model

switch_name() str

PROCESS switch name

Return type:

str

INPUT = 0
TAYLOR_WARD = 1
MORRIS = 2
class bluemira.codes.process.model_mapping.SafetyAssuranceLevel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.SafetyAssuranceLevel

Switch to control the level of safety assurance

switch_name() str

PROCESS switch name

Return type:

str

TRULY_SAFE = 1
VERY_SAFE = 2
SOMEWHAT_SAFE = 3
FISSION = 4
class bluemira.codes.process.model_mapping.CostModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.CostModel

Switch to control the cost model used

switch_name() str

PROCESS switch name

Return type:

str

TETRA_1990 = 0
KOVARI_2015 = 1
CUSTOM = 2
class bluemira.codes.process.model_mapping.CapCostFracTetraModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.CapCostFracTetraModel

Switch for Tetra cost model.

Decides whether blanket, divertor and first wall are capital or fuel costs

switch_name() str

PROCESS switch name

Return type:

str

ALL_CAPCOST = 0
ALL_FUELCOST = (1, ('fcdfuel',))
INIT_CAPCOST = (2, ('fcdfuel',))
class bluemira.codes.process.model_mapping.BuildingSizeModel(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.BuildingSizeModel

Switch for Building size estimation model

switch_name() str

PROCESS switch name

Return type:

str

DEFAULT = 0
NEW = 1
class bluemira.codes.process.model_mapping.OutputCostsSwitch(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.OutputCostsSwitch

Switch to control whether or not cost information is output

switch_name() str

PROCESS switch name

Return type:

str

NO = (0, (), 'Do not print cost information to output')
YES = (1, (), 'Print cost information to output')
class bluemira.codes.process.model_mapping.VacuumPumpSwitch(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.VacuumPumpSwitch

Switch for whether the FW and BB are on the same pump system i.e. do they have the same primary coolant or not

switch_name() str

PROCESS switch name

Return type:

str

SAME = (0, (), 'FW and BB have the same primary coolant')
DIFFERENT = (1, (), 'FW and BB have the different primary coolant and are on different pump systems')
class bluemira.codes.process.model_mapping.FWCoolantSwitch(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.FWCoolantSwitch

Switch for first wall coolant (can be different from blanket coolant)

switch_name() str

PROCESS switch name

Return type:

str

HELIUM = 'helium'
WATER = 'water'
class bluemira.codes.process.model_mapping.ModuleSegmentSwitch(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.ModuleSegmentSwitch

Switch for Multi Module Segment (MMS) or Single Modle Segment (SMS)

switch_name() str

PROCESS switch name

Return type:

str

MMS = (0, (), 'Multi Module Segment (MMS)')
SMS = (1, (), 'Single Modle Segment (SMS)')
class bluemira.codes.process.model_mapping.LiquidMetalBreederMaterialSwitch(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.LiquidMetalBreederMaterialSwitch

Switch for Liquid Metal Breeder Material

switch_name() str

PROCESS switch name

Return type:

str

PBLI = (0, (), 'PbLi')
LI = (1, (), 'Li')
class bluemira.codes.process.model_mapping.BBCoolantSwitch(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.BBCoolantSwitch

Switch to specify whether breeding blanket is single-cooled or dual-coolant

switch_name() str

PROCESS switch name

Return type:

str

SINGLE_FOR_SB = (0, (), 'Single coolant, Solid Breeder')
SINGLE_FOR_LB = (1, ('n_liq_recirc',), 'Single coolant, Liquid metal breeder')
DUAL = (2, (), 'Dual coolant')
class bluemira.codes.process.model_mapping.FlowChannelInsertSwitch(*args, **kwds)

Bases: PROCESSModel

Inheritance diagram of bluemira.codes.process.model_mapping.FlowChannelInsertSwitch

Switch for Flow Channel Insert (FCI) type if liquid metal breeder blanket.

switch_name() str

PROCESS switch name

Return type:

str

THIN = (0, ('bz_channel_conduct_liq',), 'Thin conducting walls')
INS_PERFECT = (1, (), 'Insulating Material, perfect electrical insulator')
INS_INPUT = (2, ('bz_channel_conduct_liq',), 'Insulating Material, electrical conductivity is input')