Skip to content

times_variables

CREATE_DICTS_FROM_DATACLASS = TimesData module-attribute

TimesData dataclass

Source code in process/data_structure/times_variables.py
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
@dataclass
class TimesData:
    pulsetimings: int = 1
    """Switch for pulse timings (if i_pulsed_plant=1):

      - =0, t_plant_pulse_plasma_current_ramp_up = Ip(MA)/0.1 t_plant_pulse_coil_precharge, t_plant_pulse_plasma_current_ramp_down = input
      - =1, t_plant_pulse_plasma_current_ramp_up = iteration var or input. t_plant_pulse_coil_precharge/t_plant_pulse_plasma_current_ramp_down max of input or t_plant_pulse_plasma_current_ramp_up"""

    t_plant_pulse_burn: float = field(
        default_factory=lambda: np.array(1000.0, dtype=np.float64)
    )
    """flat-top duration (s) (calculated if `i_pulsed_plant=1`)"""

    t_burn_0: float = 0.0
    """burn time (s) - used for internal consistency"""

    t_plant_pulse_total: float = field(
        default_factory=lambda: np.array(0.0, dtype=np.float64)
    )
    """Total plant pulse cycle time (s)"""

    t_plant_pulse_no_burn: float = 0.0
    """Plant pulse time spent not a flat-top burn phase (s)"""

    t_plant_pulse_dwell: float = 1800.0
    """Plant pulse dwell time before start of next pulse (s) (`iteration variable 17`)"""

    t_plant_pulse_fusion_ramp: float = 10.0
    """time for plasma temperature and density rise to full values (s)"""

    t_pulse_cumulative: list[float] = field(
        default_factory=lambda: np.zeros(6, dtype=np.float64)
    )
    """array of time points during plasma pulse (s)"""

    timelabel: list[str] = field(
        default_factory=lambda: ["Start", "BOP  ", "EOR  ", "BOF  ", "EOF  ", "EOP  "]
    )
    """array of time labels during plasma pulse (s)"""

    intervallabel: list[str] = field(
        default_factory=lambda: [
            "t_plant_pulse_coil_precharge        ",
            "t_plant_pulse_plasma_current_ramp_up  ",
            "t_plant_pulse_fusion_ramp      ",
            "t_plant_pulse_burn             ",
            "t_plant_pulse_plasma_current_ramp_down        ",
        ]
    )

    """time intervals - as strings (s)"""

    t_plant_pulse_plasma_current_ramp_up: float = 30.0
    """Plant pulse time for plasma current to ramp up to approx. full value (s) (calculated if `i_pulsed_plant=0`)
      (`iteration variable 65`)"""

    i_t_current_ramp_up: int = 0
    """Switch for plasma current ramp-up time (if i_pulsed_plant=0):
      - = 0, t_plant_pulse_plasma_current_ramp_up = t_plant_pulse_coil_precharge = t_plant_pulse_plasma_current_ramp_down = Ip(MA)/0.5
      - = 1, t_plant_pulse_plasma_current_ramp_up, t_plant_pulse_coil_precharge, t_plant_pulse_plasma_current_ramp_down are input"""

    t_plant_pulse_plasma_present: float = 0.0
    """Plant pulse time in which a plasma is present (s)"""

    t_plant_pulse_plasma_current_ramp_down: float = 15.0
    """Plant pulse time for plasma current, density, and temperature to ramp down to zero, simultaneously (s); if pulsed, = t_plant_pulse_plasma_current_ramp_up
      the CS and PF coil currents also ramp to zero at the same time"""

    t_plant_pulse_coil_precharge: float = 15.0
    """the time for the central solenoid and PF coils to ramp from zero to max current (s); if pulsed, = t_plant_pulse_plasma_current_ramp_up"""

pulsetimings = 1 class-attribute instance-attribute

Switch for pulse timings (if i_pulsed_plant=1):

  • =0, t_plant_pulse_plasma_current_ramp_up = Ip(MA)/0.1 t_plant_pulse_coil_precharge, t_plant_pulse_plasma_current_ramp_down = input
  • =1, t_plant_pulse_plasma_current_ramp_up = iteration var or input. t_plant_pulse_coil_precharge/t_plant_pulse_plasma_current_ramp_down max of input or t_plant_pulse_plasma_current_ramp_up

t_plant_pulse_burn = field(default_factory=(lambda: np.array(1000.0, dtype=(np.float64)))) class-attribute instance-attribute

flat-top duration (s) (calculated if i_pulsed_plant=1)

t_burn_0 = 0.0 class-attribute instance-attribute

burn time (s) - used for internal consistency

t_plant_pulse_total = field(default_factory=(lambda: np.array(0.0, dtype=(np.float64)))) class-attribute instance-attribute

Total plant pulse cycle time (s)

t_plant_pulse_no_burn = 0.0 class-attribute instance-attribute

Plant pulse time spent not a flat-top burn phase (s)

t_plant_pulse_dwell = 1800.0 class-attribute instance-attribute

Plant pulse dwell time before start of next pulse (s) (iteration variable 17)

t_plant_pulse_fusion_ramp = 10.0 class-attribute instance-attribute

time for plasma temperature and density rise to full values (s)

t_pulse_cumulative = field(default_factory=(lambda: np.zeros(6, dtype=(np.float64)))) class-attribute instance-attribute

array of time points during plasma pulse (s)

timelabel = field(default_factory=(lambda: ['Start', 'BOP ', 'EOR ', 'BOF ', 'EOF ', 'EOP '])) class-attribute instance-attribute

array of time labels during plasma pulse (s)

intervallabel = field(default_factory=(lambda: ['t_plant_pulse_coil_precharge ', 't_plant_pulse_plasma_current_ramp_up ', 't_plant_pulse_fusion_ramp ', 't_plant_pulse_burn ', 't_plant_pulse_plasma_current_ramp_down '])) class-attribute instance-attribute

time intervals - as strings (s)

t_plant_pulse_plasma_current_ramp_up = 30.0 class-attribute instance-attribute

Plant pulse time for plasma current to ramp up to approx. full value (s) (calculated if i_pulsed_plant=0) (iteration variable 65)

i_t_current_ramp_up = 0 class-attribute instance-attribute

Switch for plasma current ramp-up time (if i_pulsed_plant=0): - = 0, t_plant_pulse_plasma_current_ramp_up = t_plant_pulse_coil_precharge = t_plant_pulse_plasma_current_ramp_down = Ip(MA)/0.5 - = 1, t_plant_pulse_plasma_current_ramp_up, t_plant_pulse_coil_precharge, t_plant_pulse_plasma_current_ramp_down are input

t_plant_pulse_plasma_present = 0.0 class-attribute instance-attribute

Plant pulse time in which a plasma is present (s)

t_plant_pulse_plasma_current_ramp_down = 15.0 class-attribute instance-attribute

Plant pulse time for plasma current, density, and temperature to ramp down to zero, simultaneously (s); if pulsed, = t_plant_pulse_plasma_current_ramp_up the CS and PF coil currents also ramp to zero at the same time

t_plant_pulse_coil_precharge = 15.0 class-attribute instance-attribute

the time for the central solenoid and PF coils to ramp from zero to max current (s); if pulsed, = t_plant_pulse_plasma_current_ramp_up