Skip to content

Commit

Permalink
3049 review and clarify timings (#3413)
Browse files Browse the repository at this point in the history
* Updated time variable names

* Further variable renaming

* Updated docs

* Updated obsolete vars

* Tidying up missed renames

* Changed tcycle to t_cycle
  • Loading branch information
j-a-foster authored Dec 2, 2024
1 parent f503057 commit 7463ac7
Show file tree
Hide file tree
Showing 70 changed files with 1,009 additions and 934 deletions.
15 changes: 5 additions & 10 deletions documentation/proc-pages/eng-models/central-solenoid.md
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ An example output follows. Note that in this example the cycle life is *not* su

```text
Residual hoop stress in CS Steel (Pa) (residual_sig_hoop) 2.400E+08
Minimum burn time (s) (tbrnmn) 7.200E+03
Minimum burn time (s) (t_burn_min) 7.200E+03
Initial vertical crack size (m) (t_crack_vertical) 8.900E-04
Initial radial crack size (m) (t_crack_radial) 2.670E-03
CS turn area (m) (a_oh_turn) 1.904E-03
Expand Down Expand Up @@ -150,15 +150,7 @@ The absolute value of the central solenoid current density at the end-of-flat-to
is specified by the user, and can be used as an iteration variable (no. 37). The current density at
the beginning-of-pulse ('BOP' - See Figure 1) is specified as a (positive) fraction of `coheof`
using `fcohbop` (iteration variable no. 41). The current density in the CS at all other times is
calculated by taking into account the flux swing necessary to initiate and maintain plasma current.

<figure markdown>
![current-vs-time-plot](../images/current_vs_time.png){ width="100%"}
<figcaption>Figure 2: Plot showing schematically the current waveforms for the plasma, a typical PF
coil, and the central solenoid. Note that the currents in some of the PF coils may be the opposite
sign to that shown, and the central solenoid current may remain positive during the I<sub>p</sub>
ramp-up period, although it will pass through zero during the burn phase.</figcaption>
</figure>
calculated by taking into account the flux swing necessary to initiate and maintain plasma current.

The current density in the central solenoid can be limited at BOP and at EOF. To limit the current
density at BOP, constraint equation no. 27 is used with iteration variable no. 39 (`fjohc0`). To
Expand All @@ -177,3 +169,6 @@ constraints (26 and 27) are activated.

!!! tip "Recommended maximum current ratio"
For engineering feasibility, the centrepost currents at end of flat-top and beginning of pulse (`fjohc` and `fjohc0` respectively) shouldn't be set above 0.7.

!!! note "Central solenoid current over time"
A plot of how the central solenoid current varies over time can be found [here](../physics-models/pulsed-plant.md#burn-time)
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,6 @@ The recirculating power comprises the electrical power required to run all of th
electrical systems surrounding the fusion power core, plus the on-site building services, offices,
etc., as shown in Figure 1. Of these, the cryogenic plant power includes the power required to cool
the TF coils from the neutron power absorbed by the coils, the PF coils (as defined by the ratio of
the total PF coil stored energy to the fusion power pulse time `tpulse`), and other 'cold' components.
the total PF coil stored energy to the fusion power pulse time `t_pulse_repetition`), and other 'cold' components.

[^1]: C. Harrington, *"Development and Implementation of Improved Balance of Plant Models for PROCESS"*, CCFE C5.M15 Milestone Report, August 2014 (copy stored as CCFE internal note T&M/PKNIGHT/PROCESS/027)
Binary file modified documentation/proc-pages/images/current_vs_time.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion documentation/proc-pages/io/utilities.md
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@ Produces a three-page PDF file in the same directory as the input MFILE. The PDF
`Plasma Composition` - Number densities of several ion species relative to the electron density.

`Coil Currents etc` - Peak coil currents of the PF coils in $\text{MA}$, flux swing of the central solenoid
used for startup and total available in $\text{Wb}$. Total burn time `tburn` in hrs.
used for startup and total available in $\text{Wb}$. Total burn time `t_burn` in hrs.

`Cost of electricity` - This is the cost of electricity in $ $/ \text{MWh}$. Check the respective cost model
for the reference year of the inflation used.
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
Expand Up @@ -669,11 +669,11 @@ $$

This constraint can be activated by stating `icc = 41` in the input file.

The value of `tohsm` can be set to the required minimum plasma current ramp up time at the start of a pulse. The scaling value `ftohs` can be varied also
The value of `tohsm` can be set to the required minimum plasma current ramp up time at the start of a pulse. The scaling value `ft_current_ramp_up` can be varied also

The calculated plasma current ramp up time `tohs` is dictated by the [pulsed plant operation configuration](../pulsed-plant.md).
The calculated plasma current ramp up time `t_current_ramp_up` is dictated by the [pulsed plant operation configuration](../pulsed-plant.md).

This constraint will ensure that the value of `tohs` is always greater than or equal to `tohsm`
This constraint will ensure that the value of `t_current_ramp_up` is always greater than or equal to `tohsm`

--------------------

Expand Down
40 changes: 31 additions & 9 deletions documentation/proc-pages/physics-models/pulsed-plant.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,27 +29,49 @@ change equal to the maximum proposed in [^1], or it can be set by the user. The
constraint is likely to depend on whether the ramp-up is purely inductive or includes current drive,
but this is not taken ito account.

In the steady-state scenario (`lpulse` = 0), the plasma current ramp-up time `tohs` is determined as follows.
In the steady-state scenario (`lpulse` = 0), the plasma current ramp-up time `t_current_ramp_up` is determined as follows.

- If `tohsin` = 0, the rate of change of plasma current is 0.5 MA/s. The PF coil ramp time `tramp`
and shutdown time `tqnch` are (arbitrarily) set equal to `tohs`.
- If `tohsin` $\neq$ 0, the plasma current ramp-up time `tohs` = `tohsin`, and the PF coil ramp
- If `tohsin` = 0, the rate of change of plasma current is 0.5 MA/s. The PF coil ramp time `t_precharge`
and shutdown time `t_ramp_down` are (arbitrarily) set equal to `t_current_ramp_up`.
- If `tohsin` $\neq$ 0, the plasma current ramp-up time `t_current_ramp_up` = `tohsin`, and the PF coil ramp
and shutdown times are input parameters.

In the pulsed scenario, (`lpulse` = 1), the plasma current ramp-up time `tohs` is an input, and it
In the pulsed scenario, (`lpulse` = 1), the plasma current ramp-up time `t_current_ramp_up` is an input, and it
can be set as an iteration variable (65). The ramp-up and shutdown time in the pulsed case are set
equal to `tohs`. To ensure that the plasma current ramp rate during start-up is prevented from being
equal to `t_current_ramp_up`. To ensure that the plasma current ramp rate during start-up is prevented from being
too high, as governed by the requirement to maintain plasma stability by ensuring that the induced
current has time to diffuse into the body of the plasma, constraint equation no. 41 should be
turned on with iteration variable no. 66 `ftohs` and input `tohsmn`, the minimum plasma current
turned on with iteration variable no. 66 `ft_current_ramp_up` and input `t_current_ramp_up_min`, the minimum plasma current
ramp-up time.

## Burn time

The length of the burn time is calculated from the surplus volt-seconds available from the Central
Solenoid and the other PF coils during the plasma burn phase, after the flux required during the
plasma start-up is taken into account. A minimum burn time (`tbrnmn`) can be enforced via
constraint equation no. 13 and iteration variable no 21 (`ftburn`).
plasma start-up is taken into account. A minimum burn time (`t_burn_min`) can be enforced via
constraint equation no. 13 and iteration variable no 21 (`ft_burn`).

## Currents over time

Over the course of a pulse, the timings are detailed as:

- Precharge (`t_precharge`) - the CS current ramps from zero to maximum value. The other PF coils also ramp from zero to their required values.
- Current ramp-up (`t_current_ramp_up`) - The plasma current ramps up to approx full value. Auxiliary heating is possibly on.
- Fusion ramp (`t_fusion_ramp`) - The plasma temperature and density rise to the full values. The CS and other PF coil currents all change steadily. Auxiliary heating is on.
- Burn time (`t_burn`) - Flat-top duration. The plasma is approximately steady. Fusion power and electricity are produced. The CS and other PF coil currents all change steadily in a pulsed reactor, but are constant for a "steady-state" reactor. Auxiliary heating is on.
- Ramp-down (`t_ramp_down`) - The plasma current, density and temperature all ramp down to zero simultaneously. As a starter for ten we could assume that the CS and PF coil currents also ramp to zero at the same time. Auxiliary heating is possibly on.
- Between pulse (`t_between_pulse`) - CS and PF coil currents are zero - a few minutes may be required to permit vacuum pumping. May be much longer for an experimental device such as DEMO.
- Pulse repitition (`t_pulse_repitition`) - Sum of all the above times.

A plot showing schematically these timings over a pulse can be found in Figure 2.

<figure markdown>
![current-vs-time-plot](../current_vs_time.png){ width="100%"}
<figcaption>Figure 1: Plot showing schematically the current waveforms for the plasma, a typical PF
coil, and the central solenoid. Note that the currents in some of the PF coils may be the opposite
sign to that shown, and the central solenoid current may remain positive during the I<sub>p</sub>
ramp-up period, although it will pass through zero during the burn phase.</figcaption>
</figure>

## Thermal storage and back-up generation

Expand Down
26 changes: 13 additions & 13 deletions examples/data/csv_output_large_tokamak_MFILE.DAT
Original file line number Diff line number Diff line change
Expand Up @@ -557,13 +557,13 @@
Required_volt-seconds_during_start-up_(Wb)______________________________ (vssoft)______________________ 2.8401E+02
Available_volt-seconds_during_burn_(Wb)_________________________________ (vsmax)_______________________ 2.8571E+02
# Times #
Initial_charge_time_for_CS_from_zero_current_(s)________________________ (tramp)_______________________ 5.0000E+02
Plasma_current_ramp-up_time_(s)_________________________________________ (tohs)________________________ 1.6699E+02
Initial_charge_time_for_CS_from_zero_current_(s)________________________ (t_precharge)_______________________ 5.0000E+02
Plasma_current_ramp-up_time_(s)_________________________________________ (t_current_ramp_up)________________________ 1.6699E+02
Heating_time_(s)________________________________________________________ (theat)_______________________ 1.0000E+01
Burn_time_(s)___________________________________________________________ (tburn)_______________________ 7.1999E+03 OP
Reset_time_to_zero_current_for_CS_(s)___________________________________ (tqnch)_______________________ 1.6699E+02
Time_between_pulses_(s)_________________________________________________ (tdwell)______________________ 1.8000E+03
Total_plant_cycle_time_(s)______________________________________________ (tcycle)______________________ 9.8441E+03 OP
Burn_time_(s)___________________________________________________________ (t_burn)_______________________ 7.1999E+03 OP
Reset_time_to_zero_current_for_CS_(s)___________________________________ (t_ramp_down)_______________________ 1.6699E+02
Time_between_pulses_(s)_________________________________________________ (t_between_pulse)______________________ 1.8000E+03
Total_plant_cycle_time_(s)______________________________________________ (t_cycle)______________________ 9.8441E+03 OP
kallenbach_switch_______________________________________________________ (kallenbach_switch)___________ 0
# Radial Build #
TF_coil_radial_placement_switch_________________________________________ (tf_in_cs)____________________ 0
Expand Down Expand Up @@ -806,7 +806,7 @@
CS_temperature_margin_(K)_______________________________________________ (tmargoh)_____________________ 1.5000E+00 OP
Minimum_permitted_temperature_margin_(K)________________________________ (tmargmin_cs)_________________ 1.5000E+00
Residual_hoop_stress_in_CS_Steel_(Pa)___________________________________ (residual_sig_hoop)___________ 2.4000E+08
Minimum_burn_time_(s)___________________________________________________ (tbrnmn)______________________ 7.2000E+03
Minimum_burn_time_(s)___________________________________________________ (t_burn_min)______________________ 7.2000E+03
Initial_vertical_crack_size_(m)_________________________________________ (t_crack_vertical)____________ 8.9000E-04
Initial_radial_crack_size_(m)___________________________________________ (t_crack_radial)______________ 2.6700E-03
CS_turn_area_(m)________________________________________________________ (a_oh_turn)___________________ 1.9935E-03
Expand Down Expand Up @@ -1048,8 +1048,8 @@
Chamber_pressure_after_burn_(Pa)________________________________________ (pend)________________________ 1.6766E-01 OP
Chamber_pressure_before_burn_(Pa)_______________________________________ (pstart)______________________ 1.6766E-03
Allowable_pumping_time_switch___________________________________________ (dwell_pump)__________________ 0
Dwell_time_between_burns_(s)____________________________________________ (tdwell.)_____________________ 1.8000E+03
CS_ramp-up_time_burns_(s)_______________________________________________ (tramp.)______________________ 5.0000E+02
Dwell_time_between_burns_(s)____________________________________________ (t_between_pulse.)_____________________ 1.8000E+03
CS_ramp-up_time_burns_(s)_______________________________________________ (t_precharge.)______________________ 5.0000E+02
Allowable_pumping_time_between_burns_(s)________________________________ (tpump)_______________________ 1.8000E+03
Required_D-T_pump_speed_(m3/s)__________________________________________ (s(2))________________________ 5.7790E+00 OP
D-T_pump_speed_provided_(m3/s)__________________________________________ (snet(2))_____________________ 5.6929E+01 OP
Expand Down Expand Up @@ -1256,9 +1256,9 @@ powfmax = 3000
* Burn time lower limit *
*-----------------------*
icc = 13
ixc = 21 * ftburn
ixc = 21 * ft_burn
* minimum burn time [s]
tbrnmn = 7200.0
t_burn_min = 7200.0

* L-H threshold scaling *
*-----------------------*
Expand Down Expand Up @@ -1637,13 +1637,13 @@ plasma_res_factor = 0.7
lpulse = 1

* dwell time [s]
tdwell = 1800.0
t_between_pulse = 1800.0

* Switch for pulse timing calculations
pulsetimings = 0

* CS ramp up time [s]
tramp = 500.0
t_precharge = 500.0

* Current drive *
*---------------*
Expand Down
26 changes: 13 additions & 13 deletions examples/data/large_tokamak_1_MFILE.DAT
Original file line number Diff line number Diff line change
Expand Up @@ -555,13 +555,13 @@
Required_volt-seconds_during_start-up_(Wb)______________________________ (vssoft)______________________ 2.8601E+02
Available_volt-seconds_during_burn_(Wb)_________________________________ (vsmax)_______________________ 2.7014E+02
# Times #
Initial_charge_time_for_CS_from_zero_current_(s)________________________ (tramp)_______________________ 5.0000E+02
Plasma_current_ramp-up_time_(s)_________________________________________ (tohs)________________________ 1.6631E+02
Initial_charge_time_for_CS_from_zero_current_(s)________________________ (t_precharge)_______________________ 5.0000E+02
Plasma_current_ramp-up_time_(s)_________________________________________ (t_current_ramp_up)________________________ 1.6631E+02
Heating_time_(s)________________________________________________________ (theat)_______________________ 1.0000E+01
Burn_time_(s)___________________________________________________________ (tburn)_______________________ 7.2035E+03 OP
Reset_time_to_zero_current_for_CS_(s)___________________________________ (tqnch)_______________________ 1.6631E+02
Time_between_pulses_(s)_________________________________________________ (tdwell)______________________ 1.8000E+03
Total_plant_cycle_time_(s)______________________________________________ (tcycle)______________________ 9.8463E+03 OP
Burn_time_(s)___________________________________________________________ (t_burn)_______________________ 7.2035E+03 OP
Reset_time_to_zero_current_for_CS_(s)___________________________________ (t_ramp_down)_______________________ 1.6631E+02
Time_between_pulses_(s)_________________________________________________ (t_between_pulse)______________________ 1.8000E+03
Total_plant_cycle_time_(s)______________________________________________ (t_cycle)______________________ 9.8463E+03 OP
# Radial Build #
TF_coil_radial_placement_switch_________________________________________ (tf_in_cs)____________________ 0
TF_coil_radial_placement_switch_________________________________________ (tf_in_cs)____________________ 0
Expand Down Expand Up @@ -801,7 +801,7 @@
CS_temperature_margin_(K)_______________________________________________ (tmargoh)_____________________ 1.5052E+00 OP
Minimum_permitted_temperature_margin_(K)________________________________ (tmargmin_cs)_________________ 1.5000E+00
Residual_hoop_stress_in_CS_Steel_(Pa)___________________________________ (residual_sig_hoop)___________ 2.4000E+08
Minimum_burn_time_(s)___________________________________________________ (tbrnmn)______________________ 7.2000E+03
Minimum_burn_time_(s)___________________________________________________ (t_burn_min)______________________ 7.2000E+03
Initial_vertical_crack_size_(m)_________________________________________ (t_crack_vertical)____________ 8.9000E-04
Initial_radial_crack_size_(m)___________________________________________ (t_crack_radial)______________ 2.6700E-03
CS_turn_area_(m)________________________________________________________ (a_oh_turn)___________________ 1.9739E-03
Expand Down Expand Up @@ -1043,8 +1043,8 @@
Chamber_pressure_after_burn_(Pa)________________________________________ (pend)________________________ 1.6698E-01 OP
Chamber_pressure_before_burn_(Pa)_______________________________________ (pstart)______________________ 1.6698E-03
Allowable_pumping_time_switch___________________________________________ (dwell_pump)__________________ 0
Dwell_time_between_burns_(s)____________________________________________ (tdwell.)_____________________ 1.8000E+03
CS_ramp-up_time_burns_(s)_______________________________________________ (tramp.)______________________ 5.0000E+02
Dwell_time_between_burns_(s)____________________________________________ (t_between_pulse.)_____________________ 1.8000E+03
CS_ramp-up_time_burns_(s)_______________________________________________ (t_precharge.)______________________ 5.0000E+02
Allowable_pumping_time_between_burns_(s)________________________________ (tpump)_______________________ 1.8000E+03
Required_D-T_pump_speed_(m3/s)__________________________________________ (s(2))________________________ 5.7790E+00 OP
D-T_pump_speed_provided_(m3/s)__________________________________________ (snet(2))_____________________ 5.6700E+01 OP
Expand Down Expand Up @@ -1251,9 +1251,9 @@ powfmax = 3000
* Burn time lower limit *
*-----------------------*
icc = 13
ixc = 21 * ftburn
ixc = 21 * ft_burn
* minimum burn time [s]
tbrnmn = 7200.0
t_burn_min = 7200.0

* L-H threshold scaling *
*-----------------------*
Expand Down Expand Up @@ -1631,13 +1631,13 @@ plasma_res_factor = 0.7
lpulse = 1

* dwell time [s]
tdwell = 1800.0
t_between_pulse = 1800.0

* Switch for pulse timing calculations
pulsetimings = 0

* CS ramp up time [s]
tramp = 500.0
t_precharge = 500.0

* Current drive *
*---------------*
Expand Down
Loading

0 comments on commit 7463ac7

Please sign in to comment.