diff --git a/documentation/eng-models/plant-availability.md b/documentation/eng-models/plant-availability.md
index a333f6d52a..e0a1a513d1 100644
--- a/documentation/eng-models/plant-availability.md
+++ b/documentation/eng-models/plant-availability.md
@@ -1,15 +1,23 @@
# Plant Availability
-Switch `iavail` is used to control how the overall plant availability factor `cfactr` is calculated, as follows:
+Switch `i_plant_availability` is used to control how the overall plant availability factor `f_t_plant_available` is calculated, as follows:
-If `iavail = 0`, the input value of `cfactr` is used.
+If `i_plant_availability = 0`, the input value of `f_t_plant_available` is used.
+
+If `i_plant_availability = 1`, a model by N. Taylor and D. Ward[^1] is used instead, in which `f_t_plant_available` is calculated taking into account the time taken to replace certain components of the fusion power core, and various unplanned unavailability fractions which may be set by the user, as summerised in Table 1.
+
+------------------
+
+## Availability Class | `Availability`
+
+
+### Taylor-Ward 1999 Model | `avail()`
-If `iavail = 1`, a model by N. Taylor and D. Ward[^1] is used instead, in which `cfactr` is calculated taking into account the time taken to replace certain components of the fusion power core, and various unplanned unavailability fractions which may be set by the user, as summerised in Table 1.
| Input parameter | Description |
| :-: | - |
-| `tbktrepl` | time needed to replace blanket (years) |
-| `tdivrepl` | time needed to replace divertor (years) |
+| `t_blkt_replace_yrs` | time needed to replace blanket (years) |
+| `t_div_replace_yrs` | time needed to replace divertor (years) |
| `tcomrepl` | time needed to replace both blanket and divertor (years) |
| `uubop` | unplanned unavailability of balance of plant |
| `uucd` | unplanned unavailability of current drive system |
@@ -19,9 +27,13 @@ If `iavail = 1`, a model by N. Taylor and D. Ward[^1] is used instead, in which
| `uumag` | unplanned unavailability of magnets |
| `uuves` | unplanned unavailability of vessel |
-Table 3.4: *Summary of the variables in `PROCESS` that relate to the Taylor-Ward availability model (`iavail=1`).*
+Table 3.4: *Summary of the variables in `PROCESS` that relate to the Taylor-Ward availability model (`i_plant_availability=1`).*
-If `iavail = 2`, the new Morris model is implemented[^2]. It estimates both planned and unplanned unavailability, and the time during which no power is being generated if the reactor is pulsed.
+---------------------
+
+### Morris 2015 Model | `avail_2()`
+
+If `i_plant_availability = 2`, the new Morris model is implemented[^2]. It estimates both planned and unplanned unavailability, and the time during which no power is being generated if the reactor is pulsed.
The panned unavailability is linked to the lifetime of the blanket and the time taken to replace them. The lifetime of the blanket is based on the allowable fast neutron fluence. In contrast, the lifetime of the divertor is estimated using the particle and photon load. The time to replace the blanket and divertor have been estimated by Crofts et al, who studied the influence of the number of remote handling systems working in parallel. `PROCESS` uses a simple fit to their results, and adds a month to allow the dose rate to reduce to an acceptable level before remote handling operations start, and a month to allow for pump-down and preparation for operation for operation at the enf of the shutdown.
@@ -33,7 +45,11 @@ The unplanned downtime for the blanket is based on the number of cycles it exper
It is assumed that the vacuum system can be maintained in parallel with blanket replacement, so it does not contribute to the planned downtime. The unplanned downtime is baed on an assumed failure rate for a cryo-pump, and a specified total number pumps, with some of them being redundant. The resulting downtime can be reduced to a negligible level if there are several redundant pumps, but in addition, there is a fixed unavailability to allow for common mode failures affecting several pumps.
-If `iavail = 3`, the availability model for Spherical Tokamaks (ST) is implemented.
+-------------------
+
+### ST Model 2023 | `avail_st()`
+
+If `i_plant_availability = 3`, the availability model for Spherical Tokamaks (ST) is implemented.
This model takes the user-specified time to replace a centrepost `tmain` and the centrepost lifetime `cplife` (calculated, see below) and calculates the number of maintenance cycles
@@ -59,7 +75,7 @@ $$ A_{\text{tot}} = 1 - (U_{\text{planned}} + U_{\text{unplanned}} + U_{\text{pl
where $U_{\text{unplanned}}$ is unplanned unavailability. The cross term takes account of overlap between planned and unplanned unavailability.
-This model uses the unplanned unavailability calculations implemented in `iavail = 2` (see above). This includes the magnets, divertor, first wall and blanket, balance of plant, heating and current drive, and vacuum systems. The centrepost unplanned unavailability $U_{\text{unplanned,CP}}$ is provided by the user i.e. how often do you expect the centrepost to break over its lifetime. These unplanned unavailabilities are then added to $U_{\text{unplanned,CP}}$ to give $U_{\text{unplanned}}$.
+This model uses the unplanned unavailability calculations implemented in `i_plant_availability = 2` (see above). This includes the magnets, divertor, first wall and blanket, balance of plant, heating and current drive, and vacuum systems. The centrepost unplanned unavailability $U_{\text{unplanned,CP}}$ is provided by the user i.e. how often do you expect the centrepost to break over its lifetime. These unplanned unavailabilities are then added to $U_{\text{unplanned,CP}}$ to give $U_{\text{unplanned}}$.
Finally, the capcity factor is given by
@@ -67,8 +83,45 @@ $$ C = A_{\text{tot}} (t_{\text{burn}} / t_{\text{cycle}}) $$
where $t_{\text{burn}}$ is the burn time and $t_{\text{cycle}}$ is the full cycle time.
+
+-------------------------
+
+### Planned unavailability | `calc_u_planned()`
+
+
+
+------------------------
+
+### Unplanned unavailability magnets | `calc_u_unplanned_magnets()`
+
+-------------------------
+
+### Unplanned unavailability divertor | `calc_u_unplanned_divertor()`
+
+-------------------------
+
+### Unplanned unavailability fwbs | `calc_u_unplanned_fwbs()`
+
+-------------------------
+
+### Unplanned unavailability BOP | `calc_u_unplanned_bop()`
+
+-------------------------
+
+### Unplanned unavailability HCD | `calc_u_unplanned_hcd()`
+
+-------------------------
+
+### Unplanned unavailability vacuum | `calc_u_unplanned_vacuum()`
+
+-------------------------
+
+
+
## Centrepost Lifetime
+--------------
+
All availability models in PROCESS require the calculation of the centerpost lifetime, which is detailed here.
!!! Note "Note"
@@ -86,6 +139,8 @@ $$ t_{\text{CP,life}} = \min(f_{\text{CP, allowable}}/P_{\text{wall}}, t_{\text{
where $f_{\text{CP, allowable}}$ is the allowable centrepost neutron fluence and $P_{\text{wall}}$ is the average neutron wall load ($\mathrm{MW} \mathrm{m}^{-2}$).
+---------------
+
## Divertor lifetime
The divertor lifetime is calculated as
@@ -94,6 +149,11 @@ $$ t_{\text{div, life}} = \max (0, \min(f_{\text{div, allowable}} / P_{\text{div
where $f_{\text{div, allowable}}$ is the allowable divertor heat fluence ($\mathrm{MW}\text{-}\mathrm{yr} \mathrm{m}^{-2}$) and $P_{\text{div}}$ is the heat load to the divertor ($\mathrm{MW} \mathrm{m}^{-2}$).
+
+----------------
+
+
+
[^1]: P. J. Knight, *"PROCESS 3020: Plant Availability Model"*, Work File Note
F/PL/PJK/PROCESS/CODE/
[^2]: M. Kovari, F. Fox, C. Harrington, R. Kembleton, P. Knight, H. Lux, J. Morris *"PROCESS: a systems code for fusion power plants - Part 2: Engineering"*, Fus. Eng. & Des. 104, 9-20 (2016)
\ No newline at end of file
diff --git a/documentation/io/python-lib-guide.md b/documentation/io/python-lib-guide.md
index c6c1ba9530..1d4255c70d 100644
--- a/documentation/io/python-lib-guide.md
+++ b/documentation/io/python-lib-guide.md
@@ -49,7 +49,7 @@ To change the value or add/remove a regular input
```python
# Add parameter will change the parameter value if it already exists
i.add_parameter("blnktthdsd", 0.5)
-i.add_parameter("iavail", 1)
+i.add_parameter("i_plant_availability", 1)
i.remove_parameter("blnkithsddd")
i.remove_parameter("dr_blkt_inboard")
i.add_parameter("sweep", [3.0, 3.0])
diff --git a/examples/data/large_tokamak_1_MFILE.DAT b/examples/data/large_tokamak_1_MFILE.DAT
index be36bef6db..800c14027d 100644
--- a/examples/data/large_tokamak_1_MFILE.DAT
+++ b/examples/data/large_tokamak_1_MFILE.DAT
@@ -268,7 +268,7 @@ TF_coil_conduit_stress_upper_lim__normalised_residue_____________________ (eq_co
# Final Feasible Point #
# Power Reactor Costs (1990 US$) #
First_wall_/_blanket_life_(years)________________________________________ (life_blkt)____________________ 4.87888030705478215e+00
-Divertor_life_(years)____________________________________________________ (divlife_cal)__________________ 1.02473304239948826e+00
+Divertor_life_(years)____________________________________________________ (life_div)________________ 1.02473304239948826e+00
Cost_of_electricity_(m$/kWh)_____________________________________________ (coe)__________________________ 5.09300727575910003e+02
# Detailed Costings (1990 US$) #
Acc.22_multiplier_for_Nth_of_a_kind______________________________________ (fkind)________________________ 1.00000000000000000e+00
@@ -394,10 +394,10 @@ Total_capital_investment_(M$)____________________________________________ (capco
Allowable_blanket_neutron_fluence_(MW-yr/m2)_____________________________ (abktflnc)_____________________ 5.00000000000000000e+00
Allowable_divertor_heat_fluence_(MW-yr/m2)_______________________________ (adivflnc)_____________________ 7.00000000000000000e+00
First_wall_/_blanket_lifetime_(years)____________________________________ (life_blkt_fpy)________________ 6.09860038381847769e+00 OP
-Divertor_lifetime_(years)________________________________________________ (divlife)______________________ 1.28091630299936021e+00 OP
-Heating/CD_system_lifetime_(years)_______________________________________ (cdrlife)______________________ 6.09860038381847769e+00 OP
-Total_plant_lifetime_(years)_____________________________________________ (tlife)________________________ 3.00000000000000000e+01
-Total_plant_availability_fraction________________________________________ (cfactr)_______________________ 8.00000000000000044e-01
+Divertor_lifetime_(years)________________________________________________ (life_div_fpy)______________________ 1.28091630299936021e+00 OP
+Heating/CD_system_lifetime_(years)_______________________________________ (life_hcd_fpy)______________________ 6.09860038381847769e+00 OP
+Total_plant_lifetime_(years)_____________________________________________ (life_plant)________________________ 3.00000000000000000e+01
+Total_plant_availability_fraction________________________________________ (f_t_plant_available)_______________________ 8.00000000000000044e-01
Number_of_fusion_cycles_to_reach_allowable_fw/blanket_DPA________________ (bktcycles)____________________ 1.56507395752278735e+04
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0___________________________ (itart)________________________ 0
@@ -8210,10 +8210,10 @@ output_costs = 1
cost_model = 0
* Total plant availability fraction;
-cfactr = 0.80
+f_t_plant_available = 0.80
* Switch for plant availability model
-iavail = 0
+i_plant_availability = 0
* PF Coils *
************
diff --git a/examples/data/large_tokamak_2_MFILE.DAT b/examples/data/large_tokamak_2_MFILE.DAT
index 1b652e78f3..070ffcd7d2 100644
--- a/examples/data/large_tokamak_2_MFILE.DAT
+++ b/examples/data/large_tokamak_2_MFILE.DAT
@@ -268,7 +268,7 @@ TF_coil_conduit_stress_upper_lim__normalised_residue_____________________ (eq_co
# Final Feasible Point #
# Power Reactor Costs (1990 US$) #
First_wall_/_blanket_life_(years)________________________________________ (life_blkt)____________________ 5.17963270862489455e+00
-Divertor_life_(years)____________________________________________________ (divlife_cal)__________________ 1.02532710123514570e+00
+Divertor_life_(years)____________________________________________________ (life_div)________________ 1.02532710123514570e+00
Cost_of_electricity_(m$/kWh)_____________________________________________ (coe)__________________________ 5.34929618118524104e+02
# Detailed Costings (1990 US$) #
Acc.22_multiplier_for_Nth_of_a_kind______________________________________ (fkind)________________________ 1.00000000000000000e+00
@@ -394,10 +394,10 @@ Total_capital_investment_(M$)____________________________________________ (capco
Allowable_blanket_neutron_fluence_(MW-yr/m2)_____________________________ (abktflnc)_____________________ 5.00000000000000000e+00
Allowable_divertor_heat_fluence_(MW-yr/m2)_______________________________ (adivflnc)_____________________ 7.00000000000000000e+00
First_wall_/_blanket_lifetime_(years)____________________________________ (life_blkt_fpy)________________ 6.47454088578111797e+00 OP
-Divertor_lifetime_(years)________________________________________________ (divlife)______________________ 1.28165887654393207e+00 OP
-Heating/CD_system_lifetime_(years)_______________________________________ (cdrlife)______________________ 6.47454088578111797e+00 OP
-Total_plant_lifetime_(years)_____________________________________________ (tlife)________________________ 3.00000000000000000e+01
-Total_plant_availability_fraction________________________________________ (cfactr)_______________________ 8.00000000000000044e-01
+Divertor_lifetime_(years)________________________________________________ (life_div_fpy)______________________ 1.28165887654393207e+00 OP
+Heating/CD_system_lifetime_(years)_______________________________________ (life_hcd_fpy)______________________ 6.47454088578111797e+00 OP
+Total_plant_lifetime_(years)_____________________________________________ (life_plant)________________________ 3.00000000000000000e+01
+Total_plant_availability_fraction________________________________________ (f_t_plant_available)_______________________ 8.00000000000000044e-01
Number_of_fusion_cycles_to_reach_allowable_fw/blanket_DPA________________ (bktcycles)____________________ 1.66107236620331023e+04
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0___________________________ (itart)________________________ 0
@@ -8210,10 +8210,10 @@ output_costs = 1
cost_model = 0
* Total plant availability fraction;
-cfactr = 0.80
+f_t_plant_available = 0.80
* Switch for plant availability model
-iavail = 0
+i_plant_availability = 0
* PF Coils *
************
diff --git a/examples/data/large_tokamak_3_MFILE.DAT b/examples/data/large_tokamak_3_MFILE.DAT
index 460d1e4a39..7a1893da1c 100644
--- a/examples/data/large_tokamak_3_MFILE.DAT
+++ b/examples/data/large_tokamak_3_MFILE.DAT
@@ -268,7 +268,7 @@ TF_coil_conduit_stress_upper_lim__normalised_residue_____________________ (eq_co
# Final Feasible Point #
# Power Reactor Costs (1990 US$) #
First_wall_/_blanket_life_(years)________________________________________ (life_blkt)____________________ 5.43373544317899348e+00
-Divertor_life_(years)____________________________________________________ (divlife_cal)__________________ 1.02647128898011353e+00
+Divertor_life_(years)____________________________________________________ (life_div)________________ 1.02647128898011353e+00
Cost_of_electricity_(m$/kWh)_____________________________________________ (coe)__________________________ 5.63699801678242579e+02
# Detailed Costings (1990 US$) #
Acc.22_multiplier_for_Nth_of_a_kind______________________________________ (fkind)________________________ 1.00000000000000000e+00
@@ -394,10 +394,10 @@ Total_capital_investment_(M$)____________________________________________ (capco
Allowable_blanket_neutron_fluence_(MW-yr/m2)_____________________________ (abktflnc)_____________________ 5.00000000000000000e+00
Allowable_divertor_heat_fluence_(MW-yr/m2)_______________________________ (adivflnc)_____________________ 7.00000000000000000e+00
First_wall_/_blanket_lifetime_(years)____________________________________ (life_blkt_fpy)________________ 6.79216930397374163e+00 OP
-Divertor_lifetime_(years)________________________________________________ (divlife)______________________ 1.28308911122514191e+00 OP
-Heating/CD_system_lifetime_(years)_______________________________________ (cdrlife)______________________ 6.79216930397374163e+00 OP
-Total_plant_lifetime_(years)_____________________________________________ (tlife)________________________ 3.00000000000000000e+01
-Total_plant_availability_fraction________________________________________ (cfactr)_______________________ 8.00000000000000044e-01
+Divertor_lifetime_(years)________________________________________________ (life_div_fpy)______________________ 1.28308911122514191e+00 OP
+Heating/CD_system_lifetime_(years)_______________________________________ (life_hcd_fpy)______________________ 6.79216930397374163e+00 OP
+Total_plant_lifetime_(years)_____________________________________________ (life_plant)________________________ 3.00000000000000000e+01
+Total_plant_availability_fraction________________________________________ (f_t_plant_available)_______________________ 8.00000000000000044e-01
Number_of_fusion_cycles_to_reach_allowable_fw/blanket_DPA________________ (bktcycles)____________________ 1.74155681155038001e+04
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0___________________________ (itart)________________________ 0
@@ -8211,10 +8211,10 @@ output_costs = 1
cost_model = 0
* Total plant availability fraction;
-cfactr = 0.80
+f_t_plant_available = 0.80
* Switch for plant availability model
-iavail = 0
+i_plant_availability = 0
* PF Coils *
************
diff --git a/examples/data/large_tokamak_4_MFILE.DAT b/examples/data/large_tokamak_4_MFILE.DAT
index eb6a7a7af6..893fbbc606 100644
--- a/examples/data/large_tokamak_4_MFILE.DAT
+++ b/examples/data/large_tokamak_4_MFILE.DAT
@@ -268,7 +268,7 @@ TF_coil_conduit_stress_upper_lim__normalised_residue_____________________ (eq_co
# Final Feasible Point #
# Power Reactor Costs (1990 US$) #
First_wall_/_blanket_life_(years)________________________________________ (life_blkt)____________________ 5.56530219956865579e+00
-Divertor_life_(years)____________________________________________________ (divlife_cal)__________________ 1.03662639598136219e+00
+Divertor_life_(years)____________________________________________________ (life_div)________________ 1.03662639598136219e+00
Cost_of_electricity_(m$/kWh)_____________________________________________ (coe)__________________________ 5.87092647488882903e+02
# Detailed Costings (1990 US$) #
Acc.22_multiplier_for_Nth_of_a_kind______________________________________ (fkind)________________________ 1.00000000000000000e+00
@@ -394,10 +394,10 @@ Total_capital_investment_(M$)____________________________________________ (capco
Allowable_blanket_neutron_fluence_(MW-yr/m2)_____________________________ (abktflnc)_____________________ 5.00000000000000000e+00
Allowable_divertor_heat_fluence_(MW-yr/m2)_______________________________ (adivflnc)_____________________ 7.00000000000000000e+00
First_wall_/_blanket_lifetime_(years)____________________________________ (life_blkt_fpy)________________ 6.95662774946081974e+00 OP
-Divertor_lifetime_(years)________________________________________________ (divlife)______________________ 1.29578299497670257e+00 OP
-Heating/CD_system_lifetime_(years)_______________________________________ (cdrlife)______________________ 6.95662774946081974e+00 OP
-Total_plant_lifetime_(years)_____________________________________________ (tlife)________________________ 3.00000000000000000e+01
-Total_plant_availability_fraction________________________________________ (cfactr)_______________________ 8.00000000000000044e-01
+Divertor_lifetime_(years)________________________________________________ (life_div_fpy)______________________ 1.29578299497670257e+00 OP
+Heating/CD_system_lifetime_(years)_______________________________________ (life_hcd_fpy)______________________ 6.95662774946081974e+00 OP
+Total_plant_lifetime_(years)_____________________________________________ (life_plant)________________________ 3.00000000000000000e+01
+Total_plant_availability_fraction________________________________________ (f_t_plant_available)_______________________ 8.00000000000000044e-01
Number_of_fusion_cycles_to_reach_allowable_fw/blanket_DPA________________ (bktcycles)____________________ 1.78074347984943815e+04
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0___________________________ (itart)________________________ 0
@@ -8211,10 +8211,10 @@ output_costs = 1
cost_model = 0
* Total plant availability fraction;
-cfactr = 0.80
+f_t_plant_available = 0.80
* Switch for plant availability model
-iavail = 0
+i_plant_availability = 0
* PF Coils *
************
diff --git a/examples/data/large_tokamak_IN.DAT b/examples/data/large_tokamak_IN.DAT
index 2d29ef61b9..5b4d615240 100644
--- a/examples/data/large_tokamak_IN.DAT
+++ b/examples/data/large_tokamak_IN.DAT
@@ -522,10 +522,10 @@ output_costs = 1
cost_model = 0
* Total plant availability fraction;
-cfactr = 0.80
+f_t_plant_available = 0.80
* Switch for plant availability model
-iavail = 0
+i_plant_availability = 0
* PF Coils *
************
diff --git a/examples/data/large_tokamak_eval_IN.DAT b/examples/data/large_tokamak_eval_IN.DAT
index 0e1e9937e3..0eac93d3c6 100644
--- a/examples/data/large_tokamak_eval_IN.DAT
+++ b/examples/data/large_tokamak_eval_IN.DAT
@@ -114,9 +114,9 @@ f_alpha_energy_confinement_min = 5.0 * Lower limit on f_alpha_energy_confinement
*------------------Cost Variables------------------*
-cfactr = 0.80 * Total plant availability fraction; input if `iavail=0`
+f_t_plant_available = 0.80 * Total plant availability fraction; input if `i_plant_availability=0`
cost_model = 0 * Switch for cost model;
-iavail = 0 * Switch for plant availability model;
+i_plant_availability = 0 * Switch for plant availability model;
output_costs = 1 * Switch for costs output;
*----------------------Costs-----------------------*
diff --git a/examples/data/large_tokamak_nof_2_MFILE.DAT b/examples/data/large_tokamak_nof_2_MFILE.DAT
index abed5c0751..5dda240920 100644
--- a/examples/data/large_tokamak_nof_2_MFILE.DAT
+++ b/examples/data/large_tokamak_nof_2_MFILE.DAT
@@ -153,7 +153,7 @@ Burn_time_lower_limit_____________normalised_residue_____________________ (ineq_
# Final Feasible Point #
# Power Reactor Costs (1990 US$) #
First_wall_/_blanket_life_(years)________________________________________ (life_blkt)____________________ 5.02391013831785127e+00
-Divertor_life_(years)____________________________________________________ (divlife_cal)__________________ 1.02994561163140030e+00
+Divertor_life_(years)____________________________________________________ (life_div)__________________ 1.02994561163140030e+00
Cost_of_electricity_(m$/kWh)_____________________________________________ (coe)__________________________ 5.33545577941774582e+02
# Detailed Costings (1990 US$) #
Acc.22_multiplier_for_Nth_of_a_kind______________________________________ (fkind)________________________ 1.00000000000000000e+00
@@ -279,10 +279,10 @@ Total_capital_investment_(M$)____________________________________________ (capco
Allowable_blanket_neutron_fluence_(MW-yr/m2)_____________________________ (abktflnc)_____________________ 5.00000000000000000e+00
Allowable_divertor_heat_fluence_(MW-yr/m2)_______________________________ (adivflnc)_____________________ 7.00000000000000000e+00
First_wall_/_blanket_lifetime_(years)____________________________________ (life_blkt_fpy)________________ 6.27988767289731342e+00 OP
-Divertor_lifetime_(years)________________________________________________ (divlife)______________________ 1.28743201453925038e+00 OP
-Heating/CD_system_lifetime_(years)_______________________________________ (cdrlife)______________________ 6.27988767289731342e+00 OP
-Total_plant_lifetime_(years)_____________________________________________ (tlife)________________________ 3.00000000000000000e+01
-Total_plant_availability_fraction________________________________________ (cfactr)_______________________ 8.00000000000000044e-01
+Divertor_lifetime_(years)________________________________________________ (life_div_fpy)______________________ 1.28743201453925038e+00 OP
+Heating/CD_system_lifetime_(years)_______________________________________ (life_hcd_fpy)______________________ 6.27988767289731342e+00 OP
+Total_plant_lifetime_(years)_____________________________________________ (life_plant)________________________ 3.00000000000000000e+01
+Total_plant_availability_fraction________________________________________ (f_t_plant_available)_______________________ 8.00000000000000044e-01
Number_of_fusion_cycles_to_reach_allowable_fw/blanket_DPA________________ (bktcycles)____________________ 1.60934962133184090e+04
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0___________________________ (itart)________________________ 0
@@ -8095,10 +8095,10 @@ output_costs = 1
cost_model = 0
* Total plant availability fraction;
-cfactr = 0.80
+f_t_plant_available = 0.80
* Switch for plant availability model
-iavail = 0
+i_plant_availability = 0
* PF Coils *
************
diff --git a/examples/data/large_tokamak_nof_MFILE.DAT b/examples/data/large_tokamak_nof_MFILE.DAT
index 320e4a3745..1521096d4a 100644
--- a/examples/data/large_tokamak_nof_MFILE.DAT
+++ b/examples/data/large_tokamak_nof_MFILE.DAT
@@ -153,7 +153,7 @@ Burn_time_lower_limit_____________normalised_residue_____________________ (ineq_
# Final Feasible Point #
# Power Reactor Costs (1990 US$) #
First_wall_/_blanket_life_(years)________________________________________ (life_blkt)____________________ 4.78456493051545362e+00
-Divertor_life_(years)____________________________________________________ (divlife_cal)__________________ 1.02715668286433393e+00
+Divertor_life_(years)____________________________________________________ (life_div)________________ 1.02715668286433393e+00
Cost_of_electricity_(m$/kWh)_____________________________________________ (coe)__________________________ 5.06331202452568107e+02
# Detailed Costings (1990 US$) #
Acc.22_multiplier_for_Nth_of_a_kind______________________________________ (fkind)________________________ 1.00000000000000000e+00
@@ -279,10 +279,10 @@ Total_capital_investment_(M$)____________________________________________ (capco
Allowable_blanket_neutron_fluence_(MW-yr/m2)_____________________________ (abktflnc)_____________________ 5.00000000000000000e+00
Allowable_divertor_heat_fluence_(MW-yr/m2)_______________________________ (adivflnc)_____________________ 7.00000000000000000e+00
First_wall_/_blanket_lifetime_(years)____________________________________ (life_blkt_fpy)________________ 5.98070616314431636e+00 OP
-Divertor_lifetime_(years)________________________________________________ (divlife)______________________ 1.28394585358041735e+00 OP
-Heating/CD_system_lifetime_(years)_______________________________________ (cdrlife)______________________ 5.98070616314431636e+00 OP
-Total_plant_lifetime_(years)_____________________________________________ (tlife)________________________ 3.00000000000000000e+01
-Total_plant_availability_fraction________________________________________ (cfactr)_______________________ 8.00000000000000044e-01
+Divertor_lifetime_(years)________________________________________________ (life_div_fpy)______________________ 1.28394585358041735e+00 OP
+Heating/CD_system_lifetime_(years)_______________________________________ (life_hcd_fpy)______________________ 5.98070616314431636e+00 OP
+Total_plant_lifetime_(years)_____________________________________________ (life_plant)________________________ 3.00000000000000000e+01
+Total_plant_availability_fraction________________________________________ (f_t_plant_available)_______________________ 8.00000000000000044e-01
Number_of_fusion_cycles_to_reach_allowable_fw/blanket_DPA________________ (bktcycles)____________________ 1.53375028624725874e+04
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0___________________________ (itart)________________________ 0
@@ -8095,10 +8095,10 @@ output_costs = 1
cost_model = 0
* Total plant availability fraction;
-cfactr = 0.80
+f_t_plant_available = 0.80
* Switch for plant availability model
-iavail = 0
+i_plant_availability = 0
* PF Coils *
************
diff --git a/examples/data/scan_example_file_IN.DAT b/examples/data/scan_example_file_IN.DAT
index 22a5619984..8702043a6a 100644
--- a/examples/data/scan_example_file_IN.DAT
+++ b/examples/data/scan_example_file_IN.DAT
@@ -522,10 +522,10 @@ output_costs = 1
cost_model = 0
* Total plant availability fraction;
-cfactr = 0.80
+f_t_plant_available = 0.80
* Switch for plant availability model
-iavail = 0
+i_plant_availability = 0
* PF Coils *
************
diff --git a/process/availability.py b/process/availability.py
index 1306ac7157..6dd2259842 100644
--- a/process/availability.py
+++ b/process/availability.py
@@ -28,6 +28,13 @@
YEAR_SECONDS = DAY_SECONDS * DAYS_IN_YEAR
# Number of seconds in a year [s]
+AVAILABILITY_MODELS = {
+ 0: "Input value for f_t_plant_available",
+ 1: "Ward and Taylor model (1999)",
+ 2: "Morris model (2015)",
+ 3: "ST model (2023)",
+}
+
class Availability:
"""Module containing plant availability routines
@@ -46,7 +53,7 @@ def run(self, output: bool = False):
Availability switch values
No. | model
---- | ------
- 0 | Input value for cfactr
+ 0 | Input value for f_t_plant_available
1 | Ward and Taylor model (1999)
2 | Morris model (2015)
3 | ST model (2023)
@@ -55,13 +62,13 @@ def run(self, output: bool = False):
:type output: boolean
"""
- if cv.iavail == 3:
+ if cv.i_plant_availability == 3:
if pv.itart != 1:
raise ProcessValueError(
- f"{cv.iavail=} is for a Spherical Tokamak. Please set itart=1 to use this model."
+ f"{cv.i_plant_availability=} is for a Spherical Tokamak. Please set itart=1 to use this model."
)
self.avail_st(output) # ST model (2023)
- elif cv.iavail == 2:
+ elif cv.i_plant_availability == 2:
self.avail_2(output) # Morris model (2015)
else:
self.avail(output) # Taylor and Ward model (1999)
@@ -105,20 +112,22 @@ def avail(self, output: bool):
if cv.ibkt_life == 0:
fwbsv.life_blkt_fpy = min(
(cv.abktflnc / np.asarray(pv.pflux_fw_neutron_mw)).item(),
- cv.tlife,
+ cv.life_plant,
)
else:
- fwbsv.life_blkt_fpy = min(cv.life_dpa / dpa_fpy, cv.tlife) # DEMO
+ fwbsv.life_blkt_fpy = min(
+ cv.life_dpa / dpa_fpy, cv.life_plant
+ ) # DEMO
else:
if cv.ibkt_life == 0:
fwbsv.life_blkt_fpy = min(
fwbsv.life_fw_fpy,
cv.abktflnc / pv.pflux_fw_neutron_mw,
- cv.tlife,
+ cv.life_plant,
)
else:
fwbsv.life_blkt_fpy = min(
- fwbsv.life_fw_fpy, cv.life_dpa / dpa_fpy, cv.tlife
+ fwbsv.life_fw_fpy, cv.life_dpa / dpa_fpy, cv.life_plant
) # DEMO
# TODO Issue #834
@@ -127,31 +136,31 @@ def avail(self, output: bool):
dv.pflux_div_heat_load_mw = 1.0e-10
# Divertor lifetime (years)
- cv.divlife = self.divertor_lifetime()
+ cv.life_div_fpy = self.divertor_lifetime()
# Centrepost lifetime (years) (ST machines only)
if pv.itart == 1:
cv.cplife = self.cp_lifetime()
- # Plant Availability (iavail=0,1)
+ # Plant Availability (i_plant_availability=0,1)
# Calculate the number of fusion cycles for a given blanket lifetime
pulse_fpy = tv.t_plant_pulse_total / YEAR_SECONDS
cv.bktcycles = (fwbsv.life_blkt_fpy / pulse_fpy) + 1
- # if iavail = 0 use input value for cfactr
+ # if i_plant_availability = 0 use input value for f_t_plant_available
- # Taylor and Ward 1999 model (iavail=1)
- if cv.iavail == 1:
+ # Taylor and Ward 1999 model (i_plant_availability=1)
+ if cv.i_plant_availability == 1:
# Which component has the shorter life?
- if cv.divlife < fwbsv.life_blkt_fpy:
- ld = cv.divlife
+ if cv.life_div_fpy < fwbsv.life_blkt_fpy:
+ ld = cv.life_div_fpy
lb = fwbsv.life_blkt_fpy
- td = cv.tdivrepl
+ td = cv.t_div_replace_yrs
else:
ld = fwbsv.life_blkt_fpy
- lb = cv.divlife
- td = cv.tbktrepl
+ lb = cv.life_div_fpy
+ td = cv.t_blkt_replace_yrs
# Number of outages between each combined outage
n = math.ceil(lb / ld) - 1
@@ -172,28 +181,34 @@ def avail(self, output: bool):
uutot = uutot + (1.0e0 - uutot) * cv.uuves # vacuum vessel
# Total availability
- cv.cfactr = 1.0e0 - (uplanned + uutot - (uplanned * uutot))
+ cv.f_t_plant_available = 1.0e0 - (uplanned + uutot - (uplanned * uutot))
# Capacity factor
# Using the amount of time burning for a given pulse cycle
- cv.cpfact = cv.cfactr * (tv.t_plant_pulse_burn / tv.t_plant_pulse_total)
+ cv.cpfact = cv.f_t_plant_available * (
+ tv.t_plant_pulse_burn / tv.t_plant_pulse_total
+ )
# Modify lifetimes to take account of the availability
if ifev.ife != 1:
# First wall / blanket
- if fwbsv.life_blkt_fpy < cv.tlife:
- fwbsv.life_blkt_fpy = min(fwbsv.life_blkt_fpy / cv.cfactr, cv.tlife)
+ if fwbsv.life_blkt_fpy < cv.life_plant:
+ fwbsv.life_blkt_fpy = min(
+ fwbsv.life_blkt_fpy / cv.f_t_plant_available, cv.life_plant
+ )
# Divertor
- if cv.divlife < cv.tlife:
- cv.divlife = min(cv.divlife / cv.cfactr, cv.tlife)
+ if cv.life_div_fpy < cv.life_plant:
+ cv.life_div_fpy = min(
+ cv.life_div_fpy / cv.f_t_plant_available, cv.life_plant
+ )
# Centrepost
- if pv.itart == 1 and cv.cplife < cv.tlife:
- cv.cplife = min(cv.cplife / cv.cfactr, cv.tlife)
+ if pv.itart == 1 and cv.cplife < cv.life_plant:
+ cv.cplife = min(cv.cplife / cv.f_t_plant_available, cv.life_plant)
# Current drive system lifetime (assumed equal to first wall and blanket lifetime)
- cv.cdrlife = fwbsv.life_blkt_fpy
+ cv.life_hcd_fpy = fwbsv.life_blkt_fpy
# Output section
if output:
@@ -222,8 +237,8 @@ def avail(self, output: bool):
po.ovarre(
self.outfile,
"Divertor lifetime (years)",
- "(divlife)",
- cv.divlife,
+ "(life_div_fpy)",
+ cv.life_div_fpy,
"OP ",
)
@@ -239,26 +254,31 @@ def avail(self, output: bool):
po.ovarre(
self.outfile,
"Heating/CD system lifetime (years)",
- "(cdrlife)",
- cv.cdrlife,
+ "(life_hcd_fpy)",
+ cv.life_hcd_fpy,
"OP ",
)
- po.ovarre(self.outfile, "Total plant lifetime (years)", "(tlife)", cv.tlife)
+ po.ovarre(
+ self.outfile,
+ "Total plant lifetime (years)",
+ "(life_plant)",
+ cv.life_plant,
+ )
- if cv.iavail == 1:
- if cv.divlife < fwbsv.life_blkt_fpy:
+ if cv.i_plant_availability == 1:
+ if cv.life_div_fpy < fwbsv.life_blkt_fpy:
po.ovarre(
self.outfile,
"Time needed to replace divertor (years)",
- "(tdivrepl)",
- cv.tdivrepl,
+ "(t_div_replace_yrs)",
+ cv.t_div_replace_yrs,
)
else:
po.ovarre(
self.outfile,
"Time needed to replace blanket (years)",
- "(tbktrepl)",
- cv.tbktrepl,
+ "(t_blkt_replace_yrs)",
+ cv.t_blkt_replace_yrs,
)
po.ovarre(
@@ -282,12 +302,12 @@ def avail(self, output: bool):
"OP ",
)
- if cv.iavail == 0:
+ if cv.i_plant_availability == 0:
po.ovarre(
self.outfile,
"Total plant availability fraction",
- "(cfactr)",
- cv.cfactr,
+ "(f_t_plant_available)",
+ cv.f_t_plant_available,
)
po.ovarre(
self.outfile,
@@ -299,8 +319,8 @@ def avail(self, output: bool):
po.ovarre(
self.outfile,
"Total plant availability fraction",
- "(cfactr)",
- cv.cfactr,
+ "(f_t_plant_available)",
+ cv.f_t_plant_available,
"OP ",
)
@@ -324,7 +344,7 @@ def avail_2(self, output: bool):
u_planned = self.calc_u_planned(output)
# Operational time (years)
- cv.t_operation = cv.tlife * (1.0e0 - u_planned)
+ cv.t_plant_operational_total_yrs = cv.life_plant * (1.0e0 - u_planned)
# Un-planned unavailability
@@ -362,28 +382,34 @@ def avail_2(self, output: bool):
)
# Total availability
- cv.cfactr = max(
+ cv.f_t_plant_available = max(
1.0e0 - (u_planned + u_unplanned + u_planned * u_unplanned), 0.0e0
)
# Modify lifetimes to take account of the availability
if ifev.ife != 1:
# First wall / blanket
- if fwbsv.life_blkt_fpy < cv.tlife:
- fwbsv.life_blkt_fpy = min(fwbsv.life_blkt_fpy / cv.cfactr, cv.tlife)
+ if fwbsv.life_blkt_fpy < cv.life_plant:
+ fwbsv.life_blkt_fpy = min(
+ fwbsv.life_blkt_fpy / cv.f_t_plant_available, cv.life_plant
+ )
# Current drive system lifetime (assumed equal to first wall and blanket lifetime)
- cv.cdrlife = fwbsv.life_blkt_fpy
+ cv.life_hcd_fpy = fwbsv.life_blkt_fpy
# Divertor
- if cv.divlife < cv.tlife:
- cv.divlife = min(cv.divlife / cv.cfactr, cv.tlife)
+ if cv.life_div_fpy < cv.life_plant:
+ cv.life_div_fpy = min(
+ cv.life_div_fpy / cv.f_t_plant_available, cv.life_plant
+ )
# Centrepost
- if pv.itart == 1 and cv.cplife < cv.tlife:
- cv.cplife = min(cv.cplife / cv.cfactr, cv.tlife)
+ if pv.itart == 1 and cv.cplife < cv.life_plant:
+ cv.cplife = min(cv.cplife / cv.f_t_plant_available, cv.life_plant)
# Capacity factor
- cv.cpfact = cv.cfactr * (tv.t_plant_pulse_burn / tv.t_plant_pulse_total)
+ cv.cpfact = cv.f_t_plant_available * (
+ tv.t_plant_pulse_burn / tv.t_plant_pulse_total
+ )
# Output
if output:
@@ -395,7 +421,11 @@ def avail_2(self, output: bool):
"OP ",
)
po.ovarre(
- self.outfile, "Divertor lifetime (FPY)", "(divlife)", cv.divlife, "OP "
+ self.outfile,
+ "Divertor lifetime (FPY)",
+ "(life_div_fpy)",
+ cv.life_div_fpy,
+ "OP ",
)
if pv.itart == 1:
po.ovarre(
@@ -426,18 +456,23 @@ def avail_2(self, output: bool):
po.ovarre(
self.outfile,
"Total plant availability fraction",
- "(cfactr)",
- cv.cfactr,
+ "(f_t_plant_available)",
+ cv.f_t_plant_available,
"OP ",
)
po.ovarre(
self.outfile,
"Total DT operational time (years)",
- "(t_operation)",
- cv.t_operation,
+ "(t_plant_operational_total_yrs)",
+ cv.t_plant_operational_total_yrs,
"OP ",
)
- po.ovarre(self.outfile, "Total plant lifetime (years)", "(tlife)", cv.tlife)
+ po.ovarre(
+ self.outfile,
+ "Total plant lifetime (years)",
+ "(life_plant)",
+ cv.life_plant,
+ )
po.ovarre(
self.outfile,
"Capacity factor: total lifetime elec. energy output / output power",
@@ -482,19 +517,21 @@ def calc_u_planned(self, output: bool) -> float:
# Calculate blanket lifetime using neutron fluence model (ibkt_life=0)
# or DEMO fusion power model (ibkt_life=1)
if cv.ibkt_life == 0:
- fwbsv.life_blkt_fpy = min(cv.abktflnc / pv.pflux_fw_neutron_mw, cv.tlife)
+ fwbsv.life_blkt_fpy = min(
+ cv.abktflnc / pv.pflux_fw_neutron_mw, cv.life_plant
+ )
else:
- fwbsv.life_blkt_fpy = min(cv.life_dpa / dpa_fpy, cv.tlife) # DEMO
+ fwbsv.life_blkt_fpy = min(cv.life_dpa / dpa_fpy, cv.life_plant) # DEMO
# Divertor lifetime (years)
- cv.divlife = self.divertor_lifetime()
+ cv.life_div_fpy = self.divertor_lifetime()
# Centrepost lifetime (years) (ST only)
if pv.itart == 1:
cv.cplife = self.cp_lifetime()
# Current drive lifetime (assumed equal to first wall and blanket lifetime)
- cv.cdrlife = fwbsv.life_blkt_fpy
+ cv.life_hcd_fpy = fwbsv.life_blkt_fpy
# Calculate the blanket and divertor replacement times !
@@ -511,13 +548,13 @@ def calc_u_planned(self, output: bool) -> float:
mttr_divertor = 0.7e0 * mttr_blanket
# Which component has the shorter life?
- if cv.divlife < fwbsv.life_blkt_fpy:
- lifetime_shortest = cv.divlife
+ if cv.life_div_fpy < fwbsv.life_blkt_fpy:
+ lifetime_shortest = cv.life_div_fpy
lifetime_longest = fwbsv.life_blkt_fpy
mttr_shortest = mttr_divertor
else:
lifetime_shortest = fwbsv.life_blkt_fpy
- lifetime_longest = cv.divlife
+ lifetime_longest = cv.life_div_fpy
mttr_shortest = mttr_blanket
# Number of outages between each combined outage
@@ -608,7 +645,9 @@ def calc_u_unplanned_magnets(self, output: bool) -> float:
mag_main_time = 0.5e0
# Minimum unplanned unavailability
- mag_min_u_unplanned = mag_main_time / (cv.t_operation + mag_main_time)
+ mag_min_u_unplanned = mag_main_time / (
+ cv.t_plant_operational_total_yrs + mag_main_time
+ )
# Point at which risk of unplanned unavailability increases
# conf_mag is the c factor, which determines the temperature margin at which
@@ -622,7 +661,7 @@ def calc_u_unplanned_magnets(self, output: bool) -> float:
# Linear decrease in expected lifetime when approaching the limit
t_life = max(
0.0e0,
- (cv.t_operation / (start_of_risk - tmargmin))
+ (cv.t_plant_operational_total_yrs / (start_of_risk - tmargmin))
* (tfv.temp_margin - tmargmin),
)
u_unplanned_magnets = mag_main_time / (t_life + mag_main_time)
@@ -673,7 +712,7 @@ def calc_u_unplanned_divertor(self, output: bool) -> float:
# Calculate cycle limit in terms of days
# Number of cycles between planned blanket replacements, N
- n = cv.divlife * YEAR_SECONDS / tv.t_plant_pulse_total
+ n = cv.life_div_fpy * YEAR_SECONDS / tv.t_plant_pulse_total
# The probability of failure in one pulse cycle (before the reference cycle life)
pf = (cv.div_prob_fail / DAY_SECONDS) * tv.t_plant_pulse_total
@@ -865,7 +904,7 @@ def calc_u_unplanned_bop(self, output: bool) -> float:
# Number of balance of plant failures in plant operational lifetime
bop_num_failures = math.ceil(
- bop_fail_rate * DAYS_IN_YEAR * 24.0e0 * cv.t_operation
+ bop_fail_rate * DAYS_IN_YEAR * 24.0e0 * cv.t_plant_operational_total_yrs
)
# Balance of plant mean time to repair (years)
@@ -873,7 +912,9 @@ def calc_u_unplanned_bop(self, output: bool) -> float:
bop_mttr = 96.0e0 / (24.0e0 * DAYS_IN_YEAR)
# Unplanned downtime balance of plant
- u_unplanned_bop = (bop_mttr * bop_num_failures) / (cv.t_operation)
+ u_unplanned_bop = (bop_mttr * bop_num_failures) / (
+ cv.t_plant_operational_total_yrs
+ )
# Output
if output:
@@ -938,12 +979,12 @@ def calc_u_unplanned_vacuum(self, output: bool) -> float:
# Number of shutdowns
n_shutdown: int = round(
- (cv.tlife - cv.t_operation)
+ (cv.life_plant - cv.t_plant_operational_total_yrs)
/ ((21.0e0 * cv.num_rh_systems ** (-0.9e0) + 2.0e0) / 12.0e0)
)
# Operational time between shutdowns
- t_op_bt = cv.t_operation / (n_shutdown + 1.0e0)
+ t_op_bt = cv.t_plant_operational_total_yrs / (n_shutdown + 1.0e0)
# Cryopump maintenance time (y) = 2 months
cryo_main_time = 1.0e0 / 6.0e0
@@ -975,7 +1016,9 @@ def calc_u_unplanned_vacuum(self, output: bool) -> float:
t_down = (n_shutdown + 1.0e0) * cryo_main_time * sum_prob
# Total vacuum unplanned unavailability
- u_unplanned_vacuum = max(0.005, t_down / (cv.t_operation + t_down))
+ u_unplanned_vacuum = max(
+ 0.005, t_down / (cv.t_plant_operational_total_yrs + t_down)
+ )
# Output
if output:
@@ -1054,28 +1097,34 @@ def avail_st(self, output: bool):
dpa_fpy = f_scale * ref_dpa_fpy
if cv.ibkt_life == 0:
- fwbsv.life_blkt_fpy = min(cv.abktflnc / pv.pflux_fw_neutron_mw, cv.tlife)
+ fwbsv.life_blkt_fpy = min(
+ cv.abktflnc / pv.pflux_fw_neutron_mw, cv.life_plant
+ )
else:
- fwbsv.life_blkt_fpy = min(cv.life_dpa / dpa_fpy, cv.tlife) # DEMO
+ fwbsv.life_blkt_fpy = min(cv.life_dpa / dpa_fpy, cv.life_plant) # DEMO
# Divertor lifetime (years)
- cv.divlife = self.divertor_lifetime()
+ cv.life_div_fpy = self.divertor_lifetime()
# CP lifetime (years)
cv.cplife = self.cp_lifetime()
# Current drive lifetime (assumed equal to first wall and blanket lifetime)
- cv.cdrlife = fwbsv.life_blkt_fpy
+ cv.life_hcd_fpy = fwbsv.life_blkt_fpy
# Time for a maintenance cycle (years)
# Shortest component lifetime + time to replace
shortest_lifetime = min(
- fwbsv.life_blkt_fpy, cv.divlife, cv.cplife, cv.cdrlife, cv.tlife
+ fwbsv.life_blkt_fpy,
+ cv.life_div_fpy,
+ cv.cplife,
+ cv.life_hcd_fpy,
+ cv.life_plant,
)
maint_cycle = shortest_lifetime + cv.tmain
# Number of maintenance cycles over plant lifetime
- n_cycles_main = cv.tlife / maint_cycle
+ n_cycles_main = cv.life_plant / maint_cycle
# Number of centre columns over plant lifetime
n_centre_cols = math.ceil(n_cycles_main)
@@ -1084,7 +1133,7 @@ def avail_st(self, output: bool):
u_planned = cv.tmain / maint_cycle
# Operational time (years)
- cv.t_operation = cv.tlife * (1.0e0 - u_planned)
+ cv.t_plant_operational_total_yrs = cv.life_plant * (1.0e0 - u_planned)
if output:
po.oheadr(self.outfile, "Plant Availability")
@@ -1126,27 +1175,33 @@ def avail_st(self, output: bool):
)
# Total availability
- cv.cfactr = max(
+ cv.f_t_plant_available = max(
1.0e0 - (u_planned + u_unplanned + u_planned * u_unplanned), 0.0e0
)
# Modify lifetimes to take account of the availability
if ifev.ife != 1:
# First wall / blanket
- if fwbsv.life_blkt_fpy < cv.tlife:
- fwbsv.life_blkt_fpy = min(fwbsv.life_blkt_fpy / cv.cfactr, cv.tlife)
- cv.cdrlife = fwbsv.life_blkt_fpy
+ if fwbsv.life_blkt_fpy < cv.life_plant:
+ fwbsv.life_blkt_fpy = min(
+ fwbsv.life_blkt_fpy / cv.f_t_plant_available, cv.life_plant
+ )
+ cv.life_hcd_fpy = fwbsv.life_blkt_fpy
# Divertor
- if cv.divlife < cv.tlife:
- cv.divlife = min(cv.divlife / cv.cfactr, cv.tlife)
+ if cv.life_div_fpy < cv.life_plant:
+ cv.life_div_fpy = min(
+ cv.life_div_fpy / cv.f_t_plant_available, cv.life_plant
+ )
# Centrepost
- if pv.itart == 1 and cv.cplife < cv.tlife:
- cv.cplife = min(cv.cplife / cv.cfactr, cv.tlife)
+ if pv.itart == 1 and cv.cplife < cv.life_plant:
+ cv.cplife = min(cv.cplife / cv.f_t_plant_available, cv.life_plant)
# Capacity factor
- cv.cpfact = cv.cfactr * (tv.t_plant_pulse_burn / tv.t_plant_pulse_total)
+ cv.cpfact = cv.f_t_plant_available * (
+ tv.t_plant_pulse_burn / tv.t_plant_pulse_total
+ )
if output:
po.ocmmnt(self.outfile, "Plant Availability")
@@ -1171,7 +1226,11 @@ def avail_st(self, output: bool):
"OP ",
)
po.ovarre(
- self.outfile, "Divertor lifetime (FPY)", "(divlife)", cv.divlife, "OP "
+ self.outfile,
+ "Divertor lifetime (FPY)",
+ "(life_div_fpy)",
+ cv.life_div_fpy,
+ "OP ",
)
if tfv.i_tf_sup == 1:
po.ovarre(
@@ -1257,8 +1316,8 @@ def avail_st(self, output: bool):
po.ovarre(
self.outfile,
"Total plant availability fraction",
- "(cfactr)",
- cv.cfactr,
+ "(f_t_plant_available)",
+ cv.f_t_plant_available,
"OP ",
)
po.ovarre(
@@ -1271,12 +1330,16 @@ def avail_st(self, output: bool):
po.ovarre(
self.outfile,
"Total DT operational time (years)",
- "(t_operation)",
- cv.t_operation,
+ "(t_plant_operational_total_yrs)",
+ cv.t_plant_operational_total_yrs,
"OP ",
)
po.ovarre(
- self.outfile, "Total plant lifetime (years)", "(tlife)", cv.tlife, "OP"
+ self.outfile,
+ "Total plant lifetime (years)",
+ "(life_plant)",
+ cv.life_plant,
+ "OP",
)
@staticmethod
@@ -1296,13 +1359,13 @@ def cp_lifetime():
(
ctv.nflutfmax / (np.asarray(fwbsv.neut_flux_cp) * YEAR_SECONDS)
).item(),
- cv.tlife,
+ cv.life_plant,
)
# Aluminium/Copper magnets CP lifetime
# For now, we keep the original def, developed for GLIDCOP magnets ...
else:
- cplife = min(cv.cpstflnc / pv.pflux_fw_neutron_mw, cv.tlife)
+ cplife = min(cv.cpstflnc / pv.pflux_fw_neutron_mw, cv.life_plant)
return cplife
@@ -1316,4 +1379,4 @@ def divertor_lifetime():
"""
# Divertor lifetime
# Either 0.0, calculated from allowable divertor fluence and heat load, or lifetime of the plant
- return max(0.0, min(cv.adivflnc / dv.pflux_div_heat_load_mw, cv.tlife))
+ return max(0.0, min(cv.adivflnc / dv.pflux_div_heat_load_mw, cv.life_plant))
diff --git a/process/buildings.py b/process/buildings.py
index f715f796c9..7fd186b3c6 100644
--- a/process/buildings.py
+++ b/process/buildings.py
@@ -539,7 +539,7 @@ def bldgs_sizes(self, output, tf_radial_dim, tf_vertical_dim):
# Inboard 'component': shield, blanket, first wall:
# find height, maximum radial dimension, maximum toroidal dimension
- if cost_variables.tlife != 0.0e0:
+ if cost_variables.life_plant != 0.0e0:
hcomp_height = 2 * (
build_variables.z_tf_inside_half
- (
@@ -579,7 +579,7 @@ def bldgs_sizes(self, output, tf_radial_dim, tf_vertical_dim):
# ( number in build * (plant lifetime / component lifetime) ) * quantity safety factor
hcomp_req_supply = (
tfcoil_variables.n_tf_coils
- * (cost_variables.tlife / cost_variables.tlife)
+ * (cost_variables.life_plant / cost_variables.life_plant)
) * buildings_variables.qnty_sfty_fac
# total storage space for required supply of inboard shield-blanket-wall
ib_hotcell_vol = hcomp_req_supply * hcomp_vol
@@ -619,7 +619,7 @@ def bldgs_sizes(self, output, tf_radial_dim, tf_vertical_dim):
)
hcomp_req_supply = (
tfcoil_variables.n_tf_coils
- * (cost_variables.tlife / cost_variables.tlife)
+ * (cost_variables.life_plant / cost_variables.life_plant)
) * buildings_variables.qnty_sfty_fac
# total storage space for required supply of outboard wall-blanket-shield
ob_hotcell_vol = hcomp_req_supply * hcomp_vol
@@ -629,7 +629,7 @@ def bldgs_sizes(self, output, tf_radial_dim, tf_vertical_dim):
# Divertor
# Note: this estimation developed before the divertor design has been finalised
- if cost_variables.divlife != 0.0e0:
+ if cost_variables.life_div_fpy != 0.0e0:
hcomp_height = divertor_variables.dz_divertor
hcomp_rad_thk = 2 * physics_variables.rminor
hcomp_tor_thk = physics_variables.rmajor + physics_variables.rminor
@@ -641,7 +641,7 @@ def bldgs_sizes(self, output, tf_radial_dim, tf_vertical_dim):
)
hcomp_req_supply = (
tfcoil_variables.n_tf_coils
- * (cost_variables.tlife / cost_variables.divlife)
+ * (cost_variables.life_plant / cost_variables.life_div_fpy)
) * buildings_variables.qnty_sfty_fac
# total storage space for required supply of divertor segments
div_hotcell_vol = hcomp_req_supply * hcomp_vol
@@ -663,7 +663,7 @@ def bldgs_sizes(self, output, tf_radial_dim, tf_vertical_dim):
hcomp_rad_thk + buildings_variables.hot_sepdist
)
hcomp_req_supply = (
- cost_variables.tlife / cost_variables.cplife
+ cost_variables.life_plant / cost_variables.cplife
) * buildings_variables.qnty_sfty_fac
# total storage space for required supply of centre posts
cp_hotcell_vol = hcomp_req_supply * hcomp_vol
diff --git a/process/constraints.py b/process/constraints.py
index 0001be1c0f..154ef31006 100644
--- a/process/constraints.py
+++ b/process/constraints.py
@@ -1582,19 +1582,19 @@ def constraint_equation_61():
author: P B Lloyd, CCFE, Culham Science Centre
favail: F-value for minimum availability
- cfactr: Total plant availability fraction
+ f_t_plant_available: Total plant availability fraction
avail_min: Minimum availability
"""
cc = (
1.0
- data_structure.cost_variables.favail
- * data_structure.cost_variables.cfactr
+ * data_structure.cost_variables.f_t_plant_available
/ data_structure.cost_variables.avail_min
)
return ConstraintResult(
cc,
data_structure.cost_variables.avail_min * (1.0 - cc),
- data_structure.cost_variables.cfactr * cc,
+ data_structure.cost_variables.f_t_plant_available * cc,
)
@@ -2179,7 +2179,7 @@ def constraint_equation_85():
cplife: calculated CP full power year lifetime (years)
life_blkt_fpy: calculated first wall/blanket power year lifetime (years)
- divlife: calculated divertor power year lifetime (years)
+ life_div_fpy: calculated divertor power year lifetime (years)
i_cp_lifetime: switch chosing which plant element the CP
the CP lifetime must equate
"""
@@ -2195,7 +2195,7 @@ def constraint_equation_85():
cc = (
1.0
- data_structure.cost_variables.cplife
- / data_structure.cost_variables.divlife
+ / data_structure.cost_variables.life_div_fpy
)
# The CP lifetime is equal to the tritium breeding blankets / FW one
@@ -2209,13 +2209,14 @@ def constraint_equation_85():
elif data_structure.cost_variables.i_cp_lifetime == 3:
cc = (
1.0
- - data_structure.cost_variables.cplife / data_structure.cost_variables.tlife
+ - data_structure.cost_variables.cplife
+ / data_structure.cost_variables.life_plant
)
return ConstraintResult(
cc,
- data_structure.cost_variables.divlife * (1.0 - cc),
- data_structure.cost_variables.divlife * cc,
+ data_structure.cost_variables.life_div_fpy * (1.0 - cc),
+ data_structure.cost_variables.life_div_fpy * cc,
)
diff --git a/process/costs.py b/process/costs.py
index 0c6c2530f2..4a58b2a647 100644
--- a/process/costs.py
+++ b/process/costs.py
@@ -106,8 +106,8 @@ def output(self):
po.ovarrf(
self.outfile,
"Divertor life (years)",
- "(divlife_cal)",
- cost_variables.divlife_cal,
+ "(life_div)",
+ cost_variables.life_div,
)
if physics_variables.itart == 1:
po.ovarrf(
@@ -2859,14 +2859,14 @@ def coelc(self):
1.0e3
* heat_transport_variables.p_plant_electric_net_mw
* (24.0e0 * constants.N_DAY_YEAR)
- * cost_variables.cfactr
+ * cost_variables.f_t_plant_available
)
else:
kwhpy = (
1.0e3
* heat_transport_variables.p_plant_electric_net_mw
* (24.0e0 * constants.N_DAY_YEAR)
- * cost_variables.cfactr
+ * cost_variables.f_t_plant_available
* times_variables.t_plant_pulse_burn
/ times_variables.t_plant_pulse_total
)
@@ -2920,7 +2920,7 @@ def coelc(self):
if cost_variables.ifueltyp == 2:
annfwbl = annfwbl * (
- 1.0e0 - fwbs_variables.life_blkt_fpy / cost_variables.tlife
+ 1.0e0 - fwbs_variables.life_blkt_fpy / cost_variables.life_plant
)
# Cost of electricity due to first wall/blanket replacements
@@ -2936,9 +2936,7 @@ def coelc(self):
else:
# Compound interest factor
- fefdiv = (
- 1.0e0 + cost_variables.discount_rate
- ) ** cost_variables.divlife_cal
+ fefdiv = (1.0e0 + cost_variables.discount_rate) ** cost_variables.life_div
# Capital recovery factor
@@ -2957,7 +2955,7 @@ def coelc(self):
if cost_variables.ifueltyp == 2:
anndiv = anndiv * (
- 1.0e0 - cost_variables.divlife / cost_variables.tlife
+ 1.0e0 - cost_variables.life_div_fpy / cost_variables.life_plant
)
coediv = 1.0e9 * anndiv / kwhpy
@@ -2985,7 +2983,9 @@ def coelc(self):
# Cost of electricity due to centrepost replacements
if cost_variables.ifueltyp == 2:
- anncp = anncp * (1.0e0 - cost_variables.cplife / cost_variables.tlife)
+ anncp = anncp * (
+ 1.0e0 - cost_variables.cplife / cost_variables.life_plant
+ )
coecp = 1.0e9 * anncp / kwhpy
@@ -3078,7 +3078,7 @@ def coelc(self):
* 1.0e-3
* cost_variables.uche3
* constants.N_DAY_YEAR
- * cost_variables.cfactr
+ * cost_variables.f_t_plant_available
)
else:
annfuel = (
@@ -3086,7 +3086,7 @@ def coelc(self):
* ife_variables.uctarg
* ife_variables.reprat
* 3.1536e7
- * cost_variables.cfactr
+ * cost_variables.f_t_plant_available
)
# Cost of electricity due to reactor fuel
@@ -3123,7 +3123,7 @@ def coelc(self):
* cost_variables.concost
* cost_variables.fcr0
/ (1.0e0 + cost_variables.discount_rate - cost_variables.dintrt)
- ** (cost_variables.tlife - cost_variables.dtlife)
+ ** (cost_variables.life_plant - cost_variables.dtlife)
)
# Cost of electricity due to decommissioning fund
@@ -3162,9 +3162,9 @@ def convert_fpy_to_calendar() -> None:
Author: J Foster, CCFE, Culham Campus
"""
# FW/Blanket and HCD
- if fwbs_variables.life_blkt_fpy < cost_variables.tlife:
+ if fwbs_variables.life_blkt_fpy < cost_variables.life_plant:
fwbs_variables.life_blkt = (
- fwbs_variables.life_blkt_fpy * cost_variables.cfactr
+ fwbs_variables.life_blkt_fpy * cost_variables.f_t_plant_available
)
# Current drive system lifetime (assumed equal to first wall and blanket lifetime)
cost_variables.cdrlife_cal = fwbs_variables.life_blkt
@@ -3172,16 +3172,18 @@ def convert_fpy_to_calendar() -> None:
fwbs_variables.life_blkt = fwbs_variables.life_blkt_fpy
# Divertor
- if cost_variables.divlife < cost_variables.tlife:
- cost_variables.divlife_cal = cost_variables.divlife * cost_variables.cfactr
+ if cost_variables.life_div_fpy < cost_variables.life_plant:
+ cost_variables.life_div = (
+ cost_variables.life_div_fpy * cost_variables.f_t_plant_available
+ )
else:
- cost_variables.divlife_cal = cost_variables.divlife
+ cost_variables.life_div = cost_variables.life_div_fpy
# Centrepost
if physics_variables.itart == 1:
- if cost_variables.cplife < cost_variables.tlife:
+ if cost_variables.cplife < cost_variables.life_plant:
cost_variables.cplife_cal = (
- cost_variables.cplife * cost_variables.cfactr
+ cost_variables.cplife * cost_variables.f_t_plant_available
)
else:
cost_variables.cplife_cal = cost_variables.cplife
diff --git a/process/data_structure/cost_variables.py b/process/data_structure/cost_variables.py
index c141a3fdd6..ca5b93130c 100644
--- a/process/data_structure/cost_variables.py
+++ b/process/data_structure/cost_variables.py
@@ -239,7 +239,7 @@
"""total plant direct cost (M$)"""
-cdrlife: float = None
+life_hcd_fpy: float = None
"""Full power year lifetime of heating/current drive system (y)"""
@@ -247,8 +247,8 @@
"""Calendar year lifetime of heating/current drive system (y)"""
-cfactr: float = None
-"""Total plant availability fraction; input if `iavail=0`"""
+f_t_plant_available: float = None
+"""Total plant availability fraction; input if `i_plant_availability=0`"""
cpfact: float = None
@@ -401,11 +401,11 @@
"""divertor direct cost (M$)"""
-divlife: float = None
-"""Full power lifetime of divertor (y)"""
+life_div_fpy: float = None
+"""Full power year lifetime of divertor (fpy)"""
-divlife_cal: float = None
+life_div: float = None
"""Calendar year lifetime of divertor (y)"""
@@ -441,12 +441,12 @@
"""first wall cost (M$)"""
-iavail: int = None
+i_plant_availability: int = None
"""Switch for plant availability model:
-- =0 use input value for cfactr
-- =1 calculate cfactr using Taylor and Ward 1999 model
-- =2 calculate cfactr using new (2015) model
-- =3 calculate cfactr using ST model
+- =0 use input value for f_t_plant_available
+- =1 calculate f_t_plant_available using Taylor and Ward 1999 model
+- =2 calculate f_t_plant_available using new (2015) model
+- =3 calculate f_t_plant_available using ST model
"""
@@ -528,48 +528,48 @@
"""Number of redundant vacuum pumps"""
-t_operation: float = None
+t_plant_operational_total_yrs: float = None
"""Operational time (yrs)"""
-tbktrepl: float = None
-"""time taken to replace blanket (y) (`iavail=1`)"""
+t_blkt_replace_yrs: float = None
+"""time taken to replace blanket (y) (`i_plant_availability=1`)"""
tcomrepl: float = None
-"""time taken to replace both blanket and divertor (y) (`iavail=1`)"""
+"""time taken to replace both blanket and divertor (y) (`i_plant_availability=1`)"""
-tdivrepl: float = None
-"""time taken to replace divertor (y) (`iavail=1`)"""
+t_div_replace_yrs: float = None
+"""Time taken to replace divertor (y) (`i_plant_availability=1`)"""
uubop: float = None
-"""unplanned unavailability factor for balance of plant (`iavail=1`)"""
+"""unplanned unavailability factor for balance of plant (`i_plant_availability=1`)"""
uucd: float = None
-"""unplanned unavailability factor for current drive (`iavail=1`)"""
+"""unplanned unavailability factor for current drive (`i_plant_availability=1`)"""
uudiv: float = None
-"""unplanned unavailability factor for divertor (`iavail=1`)"""
+"""unplanned unavailability factor for divertor (`i_plant_availability=1`)"""
uufuel: float = None
-"""unplanned unavailability factor for fuel system (`iavail=1`)"""
+"""unplanned unavailability factor for fuel system (`i_plant_availability=1`)"""
uufw: float = None
-"""unplanned unavailability factor for first wall (`iavail=1`)"""
+"""unplanned unavailability factor for first wall (`i_plant_availability=1`)"""
uumag: float = None
-"""unplanned unavailability factor for magnets (`iavail=1`)"""
+"""unplanned unavailability factor for magnets (`i_plant_availability=1`)"""
uuves: float = None
-"""unplanned unavailability factor for vessel (`iavail=1`)"""
+"""unplanned unavailability factor for vessel (`i_plant_availability=1`)"""
ifueltyp: int = None
@@ -634,16 +634,16 @@
- =1 use $/kAm"""
-tlife: float = None
+life_plant: float = None
"""Full power year plant lifetime (years)"""
tmain: float = None
-"""Maintenance time for replacing CP (years) (iavail = 3)"""
+"""Maintenance time for replacing CP (years) (i_plant_availability = 3)"""
u_unplanned_cp: float = None
-"""User-input CP unplanned unavailability (iavail = 3)"""
+"""User-input CP unplanned unavailability (i_plant_availability = 3)"""
UCAD: float = 180.0
@@ -1285,9 +1285,9 @@ def init_cost_variables():
global cconshtf
global cdcost
global cdirt
- global cdrlife
+ global life_hcd_fpy
global cdrlife_cal
- global cfactr
+ global f_t_plant_available
global cpfact
global cfind
global cland
@@ -1323,8 +1323,8 @@ def init_cost_variables():
global decomf
global dintrt
global divcst
- global divlife
- global divlife_cal
+ global life_div_fpy
+ global life_div
global dtlife
global fcap0
global fcap0cp
@@ -1333,7 +1333,7 @@ def init_cost_variables():
global fcr0
global fkind
global fwallcst
- global iavail
+ global i_plant_availability
global ibkt_life
global life_dpa
global bktcycles
@@ -1353,10 +1353,10 @@ def init_cost_variables():
global fwbs_umain_time
global redun_vacp
global redun_vac
- global t_operation
- global tbktrepl
+ global t_plant_operational_total_yrs
+ global t_blkt_replace_yrs
global tcomrepl
- global tdivrepl
+ global t_div_replace_yrs
global uubop
global uucd
global uudiv
@@ -1374,7 +1374,7 @@ def init_cost_variables():
global startupratio
global startuppwr
global supercond_cost_model
- global tlife
+ global life_plant
global tmain
global u_unplanned_cp
global ucblbe
@@ -1442,9 +1442,9 @@ def init_cost_variables():
cconshtf = 75.0
cdcost = 0.0
cdirt = 0.0
- cdrlife = 0.0
+ life_hcd_fpy = 0.0
cdrlife_cal = 0.0
- cfactr = 0.75
+ f_t_plant_available = 0.75
cpfact = 0.0
cfind = [0.244, 0.244, 0.244, 0.29]
cland = 19.2
@@ -1478,8 +1478,8 @@ def init_cost_variables():
decomf = 0.1
dintrt = 0.0
divcst = 0.0
- divlife = 0.0
- divlife_cal = 0.0
+ life_div_fpy = 0.0
+ life_div = 0.0
dtlife = 0.0
fcap0 = 1.165
fcap0cp = 1.08
@@ -1488,7 +1488,7 @@ def init_cost_variables():
fcr0 = 0.0966
fkind = 1.0
fwallcst = 0.0
- iavail = 2
+ i_plant_availability = 2
ibkt_life = 0
life_dpa = 50
bktcycles = 1.0e3
@@ -1508,10 +1508,10 @@ def init_cost_variables():
fwbs_umain_time = 0.25
redun_vacp = 25.0
redun_vac = 0
- t_operation = 0.0
- tbktrepl = 0.5
+ t_plant_operational_total_yrs = 0.0
+ t_blkt_replace_yrs = 0.5
tcomrepl = 0.5
- tdivrepl = 0.25
+ t_div_replace_yrs = 0.25
uubop = 0.02
uucd = 0.02
uudiv = 0.04
@@ -1528,7 +1528,7 @@ def init_cost_variables():
discount_rate = 0.0435
startupratio = 1.0
startuppwr = 0.0
- tlife = 30.0
+ life_plant = 30.0
ucblbe = 260.0
ucblbreed = 875.0
ucblli = 875.0
diff --git a/process/data_structure/numerics.py b/process/data_structure/numerics.py
index cace7d6905..4bf548f81c 100644
--- a/process/data_structure/numerics.py
+++ b/process/data_structure/numerics.py
@@ -43,7 +43,7 @@
* (13) hydrogen production rate OBSOLETE
* (14) pulse length
* (15) plant availability factor (N.B. requires
-iavail=1 to be set)
+i_plant_availability=1 to be set)
* (16) linear combination of major radius (minimised) and pulse length (maximised)
note: FoM should be minimised only!
* (17) net electrical output
diff --git a/process/data_structure/scan_variables.py b/process/data_structure/scan_variables.py
index 30f2165612..c9467cccbf 100644
--- a/process/data_structure/scan_variables.py
+++ b/process/data_structure/scan_variables.py
@@ -56,7 +56,7 @@
19 boundl(16: dr_cs)
20 t_burn_min
21 not used
- 22 cfactr (N.B. requires iavail=0)
+ 22 f_t_plant_available (N.B. requires i_plant_availability=0)
23 boundu(72: fipir)
24 p_fusion_total_max_mw
25 kappa
diff --git a/process/ife.py b/process/ife.py
index 169d585701..2d5097579d 100644
--- a/process/ife.py
+++ b/process/ife.py
@@ -1848,12 +1848,15 @@ def ifefbs(self, output: bool = False):
# Blanket and first wall lifetimes (HYLIFE-II: = plant life)
if (ife_variables.ifetyp == 3) or (ife_variables.ifetyp == 4):
- life = cost_variables.tlife
+ life = cost_variables.life_plant
else:
life = min(
- cost_variables.tlife,
+ cost_variables.life_plant,
cost_variables.abktflnc
- / (physics_variables.pflux_fw_neutron_mw * cost_variables.cfactr),
+ / (
+ physics_variables.pflux_fw_neutron_mw
+ * cost_variables.f_t_plant_available
+ ),
)
fwbs_variables.life_blkt_fpy = life
diff --git a/process/input.py b/process/input.py
index 91c7eebfc1..022b7715ef 100644
--- a/process/input.py
+++ b/process/input.py
@@ -325,7 +325,9 @@ def __post_init__(self):
"cdriv0": InputVariable(data_structure.ife_variables, float, range=(50.0, 500.0)),
"cdriv1": InputVariable(data_structure.ife_variables, float, range=(50.0, 500.0)),
"cdriv2": InputVariable(data_structure.ife_variables, float, range=(50.0, 500.0)),
- "cfactr": InputVariable(data_structure.cost_variables, float, range=(0.0, 1.0)),
+ "f_t_plant_available": InputVariable(
+ data_structure.cost_variables, float, range=(0.0, 1.0)
+ ),
"chdzl": InputVariable(data_structure.ife_variables, float, range=(0.0, 10.0)),
"chdzu": InputVariable(data_structure.ife_variables, float, range=(0.0, 10.0)),
"chemlab_h": InputVariable(
@@ -1669,7 +1671,9 @@ def __post_init__(self):
data_structure.current_drive_variables, float, range=(0.0, 10.0)
),
"tbeta": InputVariable(data_structure.physics_variables, float, range=(0.0, 4.0)),
- "tbktrepl": InputVariable(data_structure.cost_variables, float, range=(0.01, 2.0)),
+ "t_blkt_replace_yrs": InputVariable(
+ data_structure.cost_variables, float, range=(0.01, 2.0)
+ ),
"tbrmin": InputVariable(
data_structure.constraint_variables, float, range=(0.001, 2.0)
),
@@ -1684,7 +1688,9 @@ def __post_init__(self):
data_structure.constraint_variables, float, range=(0.001, 2000000.0)
),
"tdiv": InputVariable(data_structure.divertor_variables, float, range=(0.1, 100.0)),
- "tdivrepl": InputVariable(data_structure.cost_variables, float, range=(0.01, 2.0)),
+ "t_div_replace_yrs": InputVariable(
+ data_structure.cost_variables, float, range=(0.01, 2.0)
+ ),
"t_tf_superconductor_quench": InputVariable(
data_structure.tfcoil_variables, float, range=(0.1, 100.0)
),
@@ -1750,7 +1756,9 @@ def __post_init__(self):
"dx_tf_wp_insulation": InputVariable(
data_structure.tfcoil_variables, float, range=(0.0, 0.1)
),
- "tlife": InputVariable(data_structure.cost_variables, float, range=(1.0, 100.0)),
+ "life_plant": InputVariable(
+ data_structure.cost_variables, float, range=(1.0, 100.0)
+ ),
"tmain": InputVariable(data_structure.cost_variables, float, range=(0.0, 100.0)),
"tmargmin": InputVariable(
data_structure.tfcoil_variables, float, range=(0.0, 20.0)
@@ -2122,7 +2130,9 @@ def __post_init__(self):
"i_tf_wp_geom": InputVariable(
data_structure.tfcoil_variables, int, choices=[0, 1, 2]
),
- "iavail": InputVariable(data_structure.cost_variables, int, range=(0, 3)),
+ "i_plant_availability": InputVariable(
+ data_structure.cost_variables, int, range=(0, 3)
+ ),
"ibkt_life": InputVariable(data_structure.cost_variables, int, choices=[0, 1, 2]),
"i_blkt_dual_coolant": InputVariable(
data_structure.fwbs_variables, int, choices=[0, 1, 2]
diff --git a/process/io/mfile_comparison.py b/process/io/mfile_comparison.py
index 43e660a05f..18a2898a46 100644
--- a/process/io/mfile_comparison.py
+++ b/process/io/mfile_comparison.py
@@ -141,7 +141,7 @@
"p_blkt_nuclear_heat_total_mw",
"p_shld_nuclear_heat_mw",
"p_plasma_separatrix_mw",
- "divlife",
+ "life_div_fpy",
"p_plant_primary_heat_mw",
"dr_bore",
"dr_cs",
diff --git a/process/io/obsolete_vars.py b/process/io/obsolete_vars.py
index 6a27444b89..9bf809f51c 100644
--- a/process/io/obsolete_vars.py
+++ b/process/io/obsolete_vars.py
@@ -470,6 +470,11 @@
"t_precharge": "t_plant_pulse_coil_precharge",
"t_burn": "t_plant_pulse_burn",
"tfootfi": "f_dr_tf_outboard_inboard",
+ "cfactr": "f_t_plant_available",
+ "tbktrepl": "t_blkt_replace_yrs",
+ "tdivrepl": "t_div_replace_yrs",
+ "tlife": "life_plant",
+ "iavail": "i_plant_availability",
}
OBS_VARS_HELP = {
diff --git a/process/io/plot_proc.py b/process/io/plot_proc.py
index d4c6a31258..22612945c9 100644
--- a/process/io/plot_proc.py
+++ b/process/io/plot_proc.py
@@ -7727,7 +7727,7 @@ def plot_power_info(axis, mfile_data, scan):
("p_shld_nuclear_heat_mw", "Nuclear heating in shield", "MW"),
(p_cryo_plant_electric_mw, "TF cryogenic power", "MW"),
("p_plasma_separatrix_mw", "Power to divertor", "MW"),
- ("divlife", "Divertor life", "years"),
+ ("life_div_fpy", "Divertor life", "years"),
("p_plant_primary_heat_mw", "Primary (high grade) heat", "MW"),
(gross_eff, "Gross cycle efficiency", "%"),
(net_eff, "Net cycle efficiency", "%"),
diff --git a/process/io/plot_radial_build.py b/process/io/plot_radial_build.py
index 7f48dabddd..8a63b1e1e4 100644
--- a/process/io/plot_radial_build.py
+++ b/process/io/plot_radial_build.py
@@ -162,7 +162,7 @@ def main(args=None):
"boundl(16)",
"cnstv.t_burn_min",
"",
- "cfactr",
+ "f_t_plant_available",
"boundu(72)",
"p_fusion_total_max_mw",
"kappa",
diff --git a/process/io/plot_scans.py b/process/io/plot_scans.py
index 8e08593e78..cab9099f24 100644
--- a/process/io/plot_scans.py
+++ b/process/io/plot_scans.py
@@ -311,7 +311,7 @@ def main(args=None):
19: "boundl(16)",
20: "cnstv.t_burn_min",
21: "",
- 22: "cfactr",
+ 22: "f_t_plant_available",
23: "boundu(72)",
24: "p_fusion_total_max_mw",
25: "kappa",
diff --git a/process/objectives.py b/process/objectives.py
index 65b1d977aa..cd54a9e459 100644
--- a/process/objectives.py
+++ b/process/objectives.py
@@ -96,9 +96,9 @@ def objective_function(minmax: int) -> float:
case 14:
objective_metric = times_variables.t_plant_pulse_burn / 2.0e4
case 15:
- if cost_variables.iavail != 1:
- raise ProcessValueError("minmax=15 requires iavail=1")
- objective_metric = cost_variables.cfactr
+ if cost_variables.i_plant_availability != 1:
+ raise ProcessValueError("minmax=15 requires i_plant_availability=1")
+ objective_metric = cost_variables.f_t_plant_available
case 16:
objective_metric = 0.95 * (physics_variables.rmajor / 9.0) - 0.05 * (
times_variables.t_plant_pulse_burn / 7200.0
diff --git a/process/scan.py b/process/scan.py
index 64d97f84f0..a5fe16bbdd 100644
--- a/process/scan.py
+++ b/process/scan.py
@@ -63,7 +63,7 @@ def __iter__(self):
18: ScanVariable("eta_cd_norm_hcd_primary_max", "Maximum_CD_gamma"),
19: ScanVariable("boundl(16)", "CS_thickness_lower_bound"),
20: ScanVariable("t_burn_min", "Minimum_burn_time_(s)"),
- 22: ScanVariable("cfactr", "Plant_availability_factor"),
+ 22: ScanVariable("f_t_plant_available", "Plant_availability_factor"),
23: ScanVariable("boundu(72)", "Ip/Irod_upper_bound"),
24: ScanVariable("p_fusion_total_max_mw", "Fusion_power_limit_(MW)"),
25: ScanVariable("kappa", "Plasma_elongation"),
@@ -974,9 +974,11 @@ def scan_select(self, nwp, swp, iscn):
case 20:
constraint_variables.t_burn_min = swp[iscn - 1]
case 22:
- if cost_variables.iavail == 1:
- raise ProcessValueError("Do not scan cfactr if iavail=1")
- cost_variables.cfactr = swp[iscn - 1]
+ if cost_variables.i_plant_availability == 1:
+ raise ProcessValueError(
+ "Do not scan f_t_plant_available if i_plant_availability=1"
+ )
+ cost_variables.f_t_plant_available = swp[iscn - 1]
case 23:
numerics.boundu[71] = swp[iscn - 1]
case 24:
diff --git a/process/stellarator.py b/process/stellarator.py
index f0651583be..b2c58bc629 100644
--- a/process/stellarator.py
+++ b/process/stellarator.py
@@ -1113,7 +1113,7 @@ def stfwbs(self, output: bool):
"""
fwbs_variables.life_fw_fpy = min(
cost_variables.abktflnc / physics_variables.pflux_fw_neutron_mw,
- cost_variables.tlife,
+ cost_variables.life_plant,
)
# First wall inboard, outboard areas (assume 50% of total each)
@@ -2482,7 +2482,7 @@ def sctfcoil_nuclear_heating_iter90(self):
# Full power DT operation years for replacement of TF Coil
# (or plant life)
- fpydt = cost_variables.cfactr * cost_variables.tlife
+ fpydt = cost_variables.f_t_plant_available * cost_variables.life_plant
fpsdt = fpydt * 3.154e7 # seconds
# Insulator dose (rad)
diff --git a/tests/integration/data/large_tokamak_1_MFILE.DAT b/tests/integration/data/large_tokamak_1_MFILE.DAT
index 28ab3241ef..52f523c2ba 100644
--- a/tests/integration/data/large_tokamak_1_MFILE.DAT
+++ b/tests/integration/data/large_tokamak_1_MFILE.DAT
@@ -186,7 +186,7 @@
# Final Feasible Point #
# Power Reactor Costs (1990 US$) #
First_wall_/_blanket_life_(years)_______________________________________ (fwbllife)____________________ 6.1566E+00
- Divertor_life_(years)___________________________________________________ (divlife.)____________________ 3.9769E+00
+ Divertor_life_(years)___________________________________________________ (life_div_fpy.)____________________ 3.9769E+00
Cost_of_electricity_(m$/kWh)____________________________________________ (coe)_________________________ 5.1257E+02
# Detailed Costings (1990 US$) #
Acc.22_multiplier_for_Nth_of_a_kind_____________________________________ (fkind)_______________________ 1.0000E+00
@@ -312,10 +312,10 @@
Allowable_blanket_neutron_fluence_(MW-yr/m2)____________________________ (abktflnc)____________________ 5.0000E+00
Allowable_divertor_heat_fluence_(MW-yr/m2)______________________________ (adivflnc)____________________ 7.0000E+00
First_wall_/_blanket_lifetime_(years)___________________________________ (life_blkt_fpy)_____________________ 6.1566E+00 OP
- Divertor_lifetime_(years)_______________________________________________ (divlife)_____________________ 3.9769E+00 OP
- Heating/CD_system_lifetime_(years)______________________________________ (cdrlife)_____________________ 6.1566E+00 OP
- Total_plant_lifetime_(years)____________________________________________ (tlife)_______________________ 3.0000E+01
- Total_plant_availability_fraction_______________________________________ (cfactr)______________________ 8.0000E-01
+ Divertor_lifetime_(years)_______________________________________________ (life_div_fpy)_____________________ 3.9769E+00 OP
+ Heating/CD_system_lifetime_(years)______________________________________ (life_hcd_fpy)_____________________ 6.1566E+00 OP
+ Total_plant_lifetime_(years)____________________________________________ (life_plant)_______________________ 3.0000E+01
+ Total_plant_availability_fraction_______________________________________ (f_t_plant_available)______________________ 8.0000E-01
Number_of_fusion_cycles_to_reach_allowable_fw/blanket_DPA_______________ (bktcycles)___________________ 1.5787E+04
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0__________________________ (itart)_______________________ 0.0000E+00
@@ -1716,10 +1716,10 @@ output_costs = 1
cost_model = 0
* Total plant availability fraction;
-cfactr = 0.80
+f_t_plant_available = 0.80
* Switch for plant availability model
-iavail = 0
+i_plant_availability = 0
* PF Coils *
************
diff --git a/tests/integration/data/large_tokamak_2_MFILE.DAT b/tests/integration/data/large_tokamak_2_MFILE.DAT
index 4d861cfdee..b8a0db8f52 100644
--- a/tests/integration/data/large_tokamak_2_MFILE.DAT
+++ b/tests/integration/data/large_tokamak_2_MFILE.DAT
@@ -187,7 +187,7 @@
# Final Feasible Point #
# Power Reactor Costs (1990 US$) #
First_wall_/_blanket_life_(years)_______________________________________ (fwbllife)____________________ 6.1566E+00
- Divertor_life_(years)___________________________________________________ (divlife.)____________________ 3.9769E+00
+ Divertor_life_(years)___________________________________________________ (life_div_fpy.)____________________ 3.9769E+00
Cost_of_electricity_(m$/kWh)____________________________________________ (coe)_________________________ 5.1257E+02
# Detailed Costings (1990 US$) #
Acc.22_multiplier_for_Nth_of_a_kind_____________________________________ (fkind)_______________________ 1.0000E+00
@@ -313,10 +313,10 @@
Allowable_blanket_neutron_fluence_(MW-yr/m2)____________________________ (abktflnc)____________________ 5.0000E+00
Allowable_divertor_heat_fluence_(MW-yr/m2)______________________________ (adivflnc)____________________ 7.0000E+00
First_wall_/_blanket_lifetime_(years)___________________________________ (life_blkt_fpy)_____________________ 6.1566E+00 OP
- Divertor_lifetime_(years)_______________________________________________ (divlife)_____________________ 3.9769E+00 OP
- Heating/CD_system_lifetime_(years)______________________________________ (cdrlife)_____________________ 6.1566E+00 OP
- Total_plant_lifetime_(years)____________________________________________ (tlife)_______________________ 3.0000E+01
- Total_plant_availability_fraction_______________________________________ (cfactr)______________________ 8.0000E-01
+ Divertor_lifetime_(years)_______________________________________________ (life_div_fpy)_____________________ 3.9769E+00 OP
+ Heating/CD_system_lifetime_(years)______________________________________ (life_hcd_fpy)_____________________ 6.1566E+00 OP
+ Total_plant_lifetime_(years)____________________________________________ (life_plant)_______________________ 3.0000E+01
+ Total_plant_availability_fraction_______________________________________ (f_t_plant_available)______________________ 8.0000E-01
Number_of_fusion_cycles_to_reach_allowable_fw/blanket_DPA_______________ (bktcycles)___________________ 1.5787E+04
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0__________________________ (itart)_______________________ 0.0000E+00
@@ -1717,10 +1717,10 @@ output_costs = 1
cost_model = 0
* Total plant availability fraction;
-cfactr = 0.80
+f_t_plant_available = 0.80
* Switch for plant availability model
-iavail = 0
+i_plant_availability = 0
* PF Coils *
************
diff --git a/tests/integration/data/large_tokamak_3_MFILE.DAT b/tests/integration/data/large_tokamak_3_MFILE.DAT
index 1776ecc3b5..aeac1e5be2 100644
--- a/tests/integration/data/large_tokamak_3_MFILE.DAT
+++ b/tests/integration/data/large_tokamak_3_MFILE.DAT
@@ -187,7 +187,7 @@
# Final Feasible Point #
# Power Reactor Costs (1990 US$) #
First_wall_/_blanket_life_(years)_______________________________________ (fwbllife)____________________ 6.1566E+00
- Divertor_life_(years)___________________________________________________ (divlife.)____________________ 3.9769E+00
+ Divertor_life_(years)___________________________________________________ (life_div_fpy.)____________________ 3.9769E+00
Cost_of_electricity_(m$/kWh)____________________________________________ (coe)_________________________ 5.1257E+02
# Detailed Costings (1990 US$) #
Acc.22_multiplier_for_Nth_of_a_kind_____________________________________ (fkind)_______________________ 1.0000E+00
@@ -313,10 +313,10 @@
Allowable_blanket_neutron_fluence_(MW-yr/m2)____________________________ (abktflnc)____________________ 5.0000E+00
Allowable_divertor_heat_fluence_(MW-yr/m2)______________________________ (adivflnc)____________________ 7.0000E+00
First_wall_/_blanket_lifetime_(years)___________________________________ (life_blkt_fpy)_____________________ 6.1566E+00 OP
- Divertor_lifetime_(years)_______________________________________________ (divlife)_____________________ 3.9769E+00 OP
- Heating/CD_system_lifetime_(years)______________________________________ (cdrlife)_____________________ 6.1566E+00 OP
- Total_plant_lifetime_(years)____________________________________________ (tlife)_______________________ 3.0000E+01
- Total_plant_availability_fraction_______________________________________ (cfactr)______________________ 8.0000E-01
+ Divertor_lifetime_(years)_______________________________________________ (life_div_fpy)_____________________ 3.9769E+00 OP
+ Heating/CD_system_lifetime_(years)______________________________________ (life_hcd_fpy)_____________________ 6.1566E+00 OP
+ Total_plant_lifetime_(years)____________________________________________ (life_plant)_______________________ 3.0000E+01
+ Total_plant_availability_fraction_______________________________________ (f_t_plant_available)______________________ 8.0000E-01
Number_of_fusion_cycles_to_reach_allowable_fw/blanket_DPA_______________ (bktcycles)___________________ 1.5787E+04
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0__________________________ (itart)_______________________ 0.0000E+00
@@ -1717,10 +1717,10 @@ output_costs = 1
cost_model = 0
* Total plant availability fraction;
-cfactr = 0.80
+f_t_plant_available = 0.80
* Switch for plant availability model
-iavail = 0
+i_plant_availability = 0
* PF Coils *
************
diff --git a/tests/integration/data/large_tokamak_4_MFILE.DAT b/tests/integration/data/large_tokamak_4_MFILE.DAT
index 21ae93198b..c63bdfe7d2 100644
--- a/tests/integration/data/large_tokamak_4_MFILE.DAT
+++ b/tests/integration/data/large_tokamak_4_MFILE.DAT
@@ -187,7 +187,7 @@
# Final Feasible Point #
# Power Reactor Costs (1990 US$) #
First_wall_/_blanket_life_(years)_______________________________________ (fwbllife)____________________ 6.1566E+00
- Divertor_life_(years)___________________________________________________ (divlife.)____________________ 3.9769E+00
+ Divertor_life_(years)___________________________________________________ (life_div_fpy.)____________________ 3.9769E+00
Cost_of_electricity_(m$/kWh)____________________________________________ (coe)_________________________ 5.1257E+02
# Detailed Costings (1990 US$) #
Acc.22_multiplier_for_Nth_of_a_kind_____________________________________ (fkind)_______________________ 1.0000E+00
@@ -313,10 +313,10 @@
Allowable_blanket_neutron_fluence_(MW-yr/m2)____________________________ (abktflnc)____________________ 5.0000E+00
Allowable_divertor_heat_fluence_(MW-yr/m2)______________________________ (adivflnc)____________________ 7.0000E+00
First_wall_/_blanket_lifetime_(years)___________________________________ (life_blkt_fpy)_____________________ 6.1566E+00 OP
- Divertor_lifetime_(years)_______________________________________________ (divlife)_____________________ 3.9769E+00 OP
- Heating/CD_system_lifetime_(years)______________________________________ (cdrlife)_____________________ 6.1566E+00 OP
- Total_plant_lifetime_(years)____________________________________________ (tlife)_______________________ 3.0000E+01
- Total_plant_availability_fraction_______________________________________ (cfactr)______________________ 8.0000E-01
+ Divertor_lifetime_(years)_______________________________________________ (life_div_fpy)_____________________ 3.9769E+00 OP
+ Heating/CD_system_lifetime_(years)______________________________________ (life_hcd_fpy)_____________________ 6.1566E+00 OP
+ Total_plant_lifetime_(years)____________________________________________ (life_plant)_______________________ 3.0000E+01
+ Total_plant_availability_fraction_______________________________________ (f_t_plant_available)______________________ 8.0000E-01
Number_of_fusion_cycles_to_reach_allowable_fw/blanket_DPA_______________ (bktcycles)___________________ 1.5787E+04
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0__________________________ (itart)_______________________ 0.0000E+00
@@ -1717,10 +1717,10 @@ output_costs = 1
cost_model = 0
* Total plant availability fraction;
-cfactr = 0.80
+f_t_plant_available = 0.80
* Switch for plant availability model
-iavail = 0
+i_plant_availability = 0
* PF Coils *
************
diff --git a/tests/integration/data/large_tokamak_IN.DAT b/tests/integration/data/large_tokamak_IN.DAT
index 5f655ebb7e..06a92f11a3 100644
--- a/tests/integration/data/large_tokamak_IN.DAT
+++ b/tests/integration/data/large_tokamak_IN.DAT
@@ -521,10 +521,10 @@ output_costs = 1
cost_model = 0
* Total plant availability fraction;
-cfactr = 0.80
+f_t_plant_available = 0.80
* Switch for plant availability model
-iavail = 0
+i_plant_availability = 0
* PF Coils *
************
diff --git a/tests/integration/data/large_tokamak_MFILE.DAT b/tests/integration/data/large_tokamak_MFILE.DAT
index 0b8a55f80e..b6516eda93 100644
--- a/tests/integration/data/large_tokamak_MFILE.DAT
+++ b/tests/integration/data/large_tokamak_MFILE.DAT
@@ -397,7 +397,7 @@ First_wall_/_blanket_lifetime_(years)____________________________________ (life_
Divertor_lifetime_(years)________________________________________________ (divlife)______________________ 1.37878869282044025e+00 OP
Heating/CD_system_lifetime_(years)_______________________________________ (cdrlife)______________________ 5.64275971138254118e+00 OP
Total_plant_lifetime_(years)_____________________________________________ (tlife)________________________ 3.00000000000000000e+01
-Total_plant_availability_fraction________________________________________ (cfactr)_______________________ 8.00000000000000044e-01
+Total_plant_availability_fraction________________________________________ (f_t_plant_available)_______________________ 8.00000000000000044e-01
Number_of_fusion_cycles_to_reach_allowable_fw/blanket_DPA________________ (bktcycles)____________________ 1.44267883213636560e+04
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0___________________________ (itart)________________________ 0
@@ -8129,10 +8129,10 @@ output_costs = 1
cost_model = 0
* Total plant availability fraction;
-cfactr = 0.80
+f_t_plant_available = 0.80
* Switch for plant availability model
-iavail = 0
+i_plant_availability = 0
* PF Coils *
************
diff --git a/tests/integration/data/large_tokamak_eval.IN.DAT b/tests/integration/data/large_tokamak_eval.IN.DAT
index 60cd97d7ae..146c59bed3 100644
--- a/tests/integration/data/large_tokamak_eval.IN.DAT
+++ b/tests/integration/data/large_tokamak_eval.IN.DAT
@@ -114,9 +114,9 @@ f_alpha_energy_confinement_min = 5.0 * Lower limit on f_alpha_energy_confinement
*------------------Cost Variables------------------*
-cfactr = 0.80 * Total plant availability fraction; input if `iavail=0`
+f_t_plant_available = 0.80 * Total plant availability fraction; input if `i_plant_availability=0`
cost_model = 0 * Switch for cost model;
-iavail = 0 * Switch for plant availability model;
+i_plant_availability = 0 * Switch for plant availability model;
output_costs = 1 * Switch for costs output;
*----------------------Costs-----------------------*
diff --git a/tests/integration/data/ref_IN.DAT b/tests/integration/data/ref_IN.DAT
index 61e945e10c..02fcf660a6 100644
--- a/tests/integration/data/ref_IN.DAT
+++ b/tests/integration/data/ref_IN.DAT
@@ -147,18 +147,18 @@ output_costs = 0
cost_model = 0
abktflnc = 15 * Allowable first wall/blanket neutron
adivflnc = 20.0 * Allowable divertor heat fluence (mw-yr/m2)
-cfactr = 0.75 * Total plant availability fraction;
+f_t_plant_available = 0.75 * Total plant availability fraction;
dintrt = 0.00 * Diff between borrowing and saving interest rates
fcap0 = 1.15 * Average cost of money for construction of plant
fcap0cp = 1.06 * Average cost of money for replaceable components
fcontng = 0.15 * Project contingency factor
fcr0 = 0.065 * Fixed charge rate during construction
fkind = 1.0 * Multiplier for nth of a kind costs
-iavail = 0 * Switch for plant availability model;
+i_plant_availability = 0 * Switch for plant availability model;
ifueltyp = 1 * Switch;
lsa = 2 * Level of safety assurance switch (generally; use 3 or 4);
discount_rate = 0.06 * Effective cost of money in constant dollars
-tlife = 40 * Plant life (years)
+life_plant = 40 * Plant life (years)
ucblvd = 280.0 * Unit cost for blanket vanadium ($/kg)
ucdiv = 5.0d5 * Cost of divertor blade ($)
ucme = 3.0d8 * Unit cost of maintenance equipment ($/w**0;3)
diff --git a/tests/integration/data/scan_2D_MFILE.DAT b/tests/integration/data/scan_2D_MFILE.DAT
index 80c322f217..0e720d4c21 100644
--- a/tests/integration/data/scan_2D_MFILE.DAT
+++ b/tests/integration/data/scan_2D_MFILE.DAT
@@ -188,7 +188,7 @@
# Final Feasible Point #
# Power Reactor Costs (1990 US$) #
First_wall_/_blanket_life_(years)_______________________________________ (fwbllife)____________________ 6.2378E+00
- Divertor_life_(years)___________________________________________________ (divlife.)____________________ 3.9781E+00
+ Divertor_life_(years)___________________________________________________ (life_div_fpy.)____________________ 3.9781E+00
Cost_of_electricity_(m$/kWh)____________________________________________ (coe)_________________________ 5.0680E+02
# Detailed Costings (1990 US$) #
Acc.22_multiplier_for_Nth_of_a_kind_____________________________________ (fkind)_______________________ 1.0000E+00
@@ -314,10 +314,10 @@
Allowable_blanket_neutron_fluence_(MW-yr/m2)____________________________ (abktflnc)____________________ 5.0000E+00
Allowable_divertor_heat_fluence_(MW-yr/m2)______________________________ (adivflnc)____________________ 7.0000E+00
First_wall_/_blanket_lifetime_(years)___________________________________ (life_blkt_fpy)_____________________ 6.2378E+00 OP
- Divertor_lifetime_(years)_______________________________________________ (divlife)_____________________ 3.9781E+00 OP
- Heating/CD_system_lifetime_(years)______________________________________ (cdrlife)_____________________ 6.2378E+00 OP
- Total_plant_lifetime_(years)____________________________________________ (tlife)_______________________ 3.0000E+01
- Total_plant_availability_fraction_______________________________________ (cfactr)______________________ 8.0000E-01
+ Divertor_lifetime_(years)_______________________________________________ (life_div_fpy)_____________________ 3.9781E+00 OP
+ Heating/CD_system_lifetime_(years)______________________________________ (life_hcd_fpy)_____________________ 6.2378E+00 OP
+ Total_plant_lifetime_(years)____________________________________________ (life_plant)_______________________ 3.0000E+01
+ Total_plant_availability_fraction_______________________________________ (f_t_plant_available)______________________ 8.0000E-01
Number_of_fusion_cycles_to_reach_allowable_fw/blanket_DPA_______________ (bktcycles)___________________ 1.6003E+04
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0__________________________ (itart)_______________________ 0.0000E+00
@@ -1351,7 +1351,7 @@
# Final Feasible Point #
# Power Reactor Costs (1990 US$) #
First_wall_/_blanket_life_(years)_______________________________________ (fwbllife)____________________ 6.1809E+00
- Divertor_life_(years)___________________________________________________ (divlife.)____________________ 3.9607E+00
+ Divertor_life_(years)___________________________________________________ (life_div_fpy.)____________________ 3.9607E+00
Cost_of_electricity_(m$/kWh)____________________________________________ (coe)_________________________ 4.9264E+02
# Detailed Costings (1990 US$) #
Acc.22_multiplier_for_Nth_of_a_kind_____________________________________ (fkind)_______________________ 1.0000E+00
@@ -1477,10 +1477,10 @@
Allowable_blanket_neutron_fluence_(MW-yr/m2)____________________________ (abktflnc)____________________ 5.0000E+00
Allowable_divertor_heat_fluence_(MW-yr/m2)______________________________ (adivflnc)____________________ 7.0000E+00
First_wall_/_blanket_lifetime_(years)___________________________________ (life_blkt_fpy)_____________________ 6.1809E+00 OP
- Divertor_lifetime_(years)_______________________________________________ (divlife)_____________________ 3.9607E+00 OP
- Heating/CD_system_lifetime_(years)______________________________________ (cdrlife)_____________________ 6.1809E+00 OP
- Total_plant_lifetime_(years)____________________________________________ (tlife)_______________________ 3.0000E+01
- Total_plant_availability_fraction_______________________________________ (cfactr)______________________ 8.0000E-01
+ Divertor_lifetime_(years)_______________________________________________ (life_div_fpy)_____________________ 3.9607E+00 OP
+ Heating/CD_system_lifetime_(years)______________________________________ (life_hcd_fpy)_____________________ 6.1809E+00 OP
+ Total_plant_lifetime_(years)____________________________________________ (life_plant)_______________________ 3.0000E+01
+ Total_plant_availability_fraction_______________________________________ (f_t_plant_available)______________________ 8.0000E-01
Number_of_fusion_cycles_to_reach_allowable_fw/blanket_DPA_______________ (bktcycles)___________________ 1.5395E+04
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0__________________________ (itart)_______________________ 0.0000E+00
@@ -2514,7 +2514,7 @@
# Final Feasible Point #
# Power Reactor Costs (1990 US$) #
First_wall_/_blanket_life_(years)_______________________________________ (fwbllife)____________________ 6.1514E+00
- Divertor_life_(years)___________________________________________________ (divlife.)____________________ 4.1198E+00
+ Divertor_life_(years)___________________________________________________ (life_div_fpy.)____________________ 4.1198E+00
Cost_of_electricity_(m$/kWh)____________________________________________ (coe)_________________________ 4.8552E+02
# Detailed Costings (1990 US$) #
Acc.22_multiplier_for_Nth_of_a_kind_____________________________________ (fkind)_______________________ 1.0000E+00
@@ -2640,10 +2640,10 @@
Allowable_blanket_neutron_fluence_(MW-yr/m2)____________________________ (abktflnc)____________________ 5.0000E+00
Allowable_divertor_heat_fluence_(MW-yr/m2)______________________________ (adivflnc)____________________ 7.0000E+00
First_wall_/_blanket_lifetime_(years)___________________________________ (life_blkt_fpy)_____________________ 6.1514E+00 OP
- Divertor_lifetime_(years)_______________________________________________ (divlife)_____________________ 4.1198E+00 OP
- Heating/CD_system_lifetime_(years)______________________________________ (cdrlife)_____________________ 6.1514E+00 OP
- Total_plant_lifetime_(years)____________________________________________ (tlife)_______________________ 3.0000E+01
- Total_plant_availability_fraction_______________________________________ (cfactr)______________________ 8.0000E-01
+ Divertor_lifetime_(years)_______________________________________________ (life_div_fpy)_____________________ 4.1198E+00 OP
+ Heating/CD_system_lifetime_(years)______________________________________ (life_hcd_fpy)_____________________ 6.1514E+00 OP
+ Total_plant_lifetime_(years)____________________________________________ (life_plant)_______________________ 3.0000E+01
+ Total_plant_availability_fraction_______________________________________ (f_t_plant_available)______________________ 8.0000E-01
Number_of_fusion_cycles_to_reach_allowable_fw/blanket_DPA_______________ (bktcycles)___________________ 1.5046E+04
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0__________________________ (itart)_______________________ 0.0000E+00
@@ -3677,7 +3677,7 @@
# Final Feasible Point #
# Power Reactor Costs (1990 US$) #
First_wall_/_blanket_life_(years)_______________________________________ (fwbllife)____________________ 6.1409E+00
- Divertor_life_(years)___________________________________________________ (divlife.)____________________ 4.0530E+00
+ Divertor_life_(years)___________________________________________________ (life_div_fpy.)____________________ 4.0530E+00
Cost_of_electricity_(m$/kWh)____________________________________________ (coe)_________________________ 4.8190E+02
# Detailed Costings (1990 US$) #
Acc.22_multiplier_for_Nth_of_a_kind_____________________________________ (fkind)_______________________ 1.0000E+00
@@ -3803,10 +3803,10 @@
Allowable_blanket_neutron_fluence_(MW-yr/m2)____________________________ (abktflnc)____________________ 5.0000E+00
Allowable_divertor_heat_fluence_(MW-yr/m2)______________________________ (adivflnc)____________________ 7.0000E+00
First_wall_/_blanket_lifetime_(years)___________________________________ (life_blkt_fpy)_____________________ 6.1409E+00 OP
- Divertor_lifetime_(years)_______________________________________________ (divlife)_____________________ 4.0530E+00 OP
- Heating/CD_system_lifetime_(years)______________________________________ (cdrlife)_____________________ 6.1409E+00 OP
- Total_plant_lifetime_(years)____________________________________________ (tlife)_______________________ 3.0000E+01
- Total_plant_availability_fraction_______________________________________ (cfactr)______________________ 8.0000E-01
+ Divertor_lifetime_(years)_______________________________________________ (life_div_fpy)_____________________ 4.0530E+00 OP
+ Heating/CD_system_lifetime_(years)______________________________________ (life_hcd_fpy)_____________________ 6.1409E+00 OP
+ Total_plant_lifetime_(years)____________________________________________ (life_plant)_______________________ 3.0000E+01
+ Total_plant_availability_fraction_______________________________________ (f_t_plant_available)______________________ 8.0000E-01
Number_of_fusion_cycles_to_reach_allowable_fw/blanket_DPA_______________ (bktcycles)___________________ 1.4929E+04
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0__________________________ (itart)_______________________ 0.0000E+00
@@ -4840,7 +4840,7 @@
# Final Feasible Point #
# Power Reactor Costs (1990 US$) #
First_wall_/_blanket_life_(years)_______________________________________ (fwbllife)____________________ 6.1311E+00
- Divertor_life_(years)___________________________________________________ (divlife.)____________________ 3.9130E+00
+ Divertor_life_(years)___________________________________________________ (life_div_fpy.)____________________ 3.9130E+00
Cost_of_electricity_(m$/kWh)____________________________________________ (coe)_________________________ 4.8502E+02
# Detailed Costings (1990 US$) #
Acc.22_multiplier_for_Nth_of_a_kind_____________________________________ (fkind)_______________________ 1.0000E+00
@@ -4966,10 +4966,10 @@
Allowable_blanket_neutron_fluence_(MW-yr/m2)____________________________ (abktflnc)____________________ 5.0000E+00
Allowable_divertor_heat_fluence_(MW-yr/m2)______________________________ (adivflnc)____________________ 7.0000E+00
First_wall_/_blanket_lifetime_(years)___________________________________ (life_blkt_fpy)_____________________ 6.1311E+00 OP
- Divertor_lifetime_(years)_______________________________________________ (divlife)_____________________ 3.9130E+00 OP
- Heating/CD_system_lifetime_(years)______________________________________ (cdrlife)_____________________ 6.1311E+00 OP
- Total_plant_lifetime_(years)____________________________________________ (tlife)_______________________ 3.0000E+01
- Total_plant_availability_fraction_______________________________________ (cfactr)______________________ 8.0000E-01
+ Divertor_lifetime_(years)_______________________________________________ (life_div_fpy)_____________________ 3.9130E+00 OP
+ Heating/CD_system_lifetime_(years)______________________________________ (life_hcd_fpy)_____________________ 6.1311E+00 OP
+ Total_plant_lifetime_(years)____________________________________________ (life_plant)_______________________ 3.0000E+01
+ Total_plant_availability_fraction_______________________________________ (f_t_plant_available)______________________ 8.0000E-01
Number_of_fusion_cycles_to_reach_allowable_fw/blanket_DPA_______________ (bktcycles)___________________ 1.5117E+04
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0__________________________ (itart)_______________________ 0.0000E+00
@@ -6003,7 +6003,7 @@
# Final Feasible Point #
# Power Reactor Costs (1990 US$) #
First_wall_/_blanket_life_(years)_______________________________________ (fwbllife)____________________ 6.1505E+00
- Divertor_life_(years)___________________________________________________ (divlife.)____________________ 3.7932E+00
+ Divertor_life_(years)___________________________________________________ (life_div_fpy.)____________________ 3.7932E+00
Cost_of_electricity_(m$/kWh)____________________________________________ (coe)_________________________ 4.9135E+02
# Detailed Costings (1990 US$) #
Acc.22_multiplier_for_Nth_of_a_kind_____________________________________ (fkind)_______________________ 1.0000E+00
@@ -6129,10 +6129,10 @@
Allowable_blanket_neutron_fluence_(MW-yr/m2)____________________________ (abktflnc)____________________ 5.0000E+00
Allowable_divertor_heat_fluence_(MW-yr/m2)______________________________ (adivflnc)____________________ 7.0000E+00
First_wall_/_blanket_lifetime_(years)___________________________________ (life_blkt_fpy)_____________________ 6.1505E+00 OP
- Divertor_lifetime_(years)_______________________________________________ (divlife)_____________________ 3.7932E+00 OP
- Heating/CD_system_lifetime_(years)______________________________________ (cdrlife)_____________________ 6.1505E+00 OP
- Total_plant_lifetime_(years)____________________________________________ (tlife)_______________________ 3.0000E+01
- Total_plant_availability_fraction_______________________________________ (cfactr)______________________ 8.0000E-01
+ Divertor_lifetime_(years)_______________________________________________ (life_div_fpy)_____________________ 3.7932E+00 OP
+ Heating/CD_system_lifetime_(years)______________________________________ (life_hcd_fpy)_____________________ 6.1505E+00 OP
+ Total_plant_lifetime_(years)____________________________________________ (life_plant)_______________________ 3.0000E+01
+ Total_plant_availability_fraction_______________________________________ (f_t_plant_available)______________________ 8.0000E-01
Number_of_fusion_cycles_to_reach_allowable_fw/blanket_DPA_______________ (bktcycles)___________________ 1.5342E+04
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0__________________________ (itart)_______________________ 0.0000E+00
@@ -7166,7 +7166,7 @@
# Final Feasible Point #
# Power Reactor Costs (1990 US$) #
First_wall_/_blanket_life_(years)_______________________________________ (fwbllife)____________________ 6.1381E+00
- Divertor_life_(years)___________________________________________________ (divlife.)____________________ 3.7356E+00
+ Divertor_life_(years)___________________________________________________ (life_div_fpy.)____________________ 3.7356E+00
Cost_of_electricity_(m$/kWh)____________________________________________ (coe)_________________________ 4.8875E+02
# Detailed Costings (1990 US$) #
Acc.22_multiplier_for_Nth_of_a_kind_____________________________________ (fkind)_______________________ 1.0000E+00
@@ -7292,10 +7292,10 @@
Allowable_blanket_neutron_fluence_(MW-yr/m2)____________________________ (abktflnc)____________________ 5.0000E+00
Allowable_divertor_heat_fluence_(MW-yr/m2)______________________________ (adivflnc)____________________ 7.0000E+00
First_wall_/_blanket_lifetime_(years)___________________________________ (life_blkt_fpy)_____________________ 6.1381E+00 OP
- Divertor_lifetime_(years)_______________________________________________ (divlife)_____________________ 3.7356E+00 OP
- Heating/CD_system_lifetime_(years)______________________________________ (cdrlife)_____________________ 6.1381E+00 OP
- Total_plant_lifetime_(years)____________________________________________ (tlife)_______________________ 3.0000E+01
- Total_plant_availability_fraction_______________________________________ (cfactr)______________________ 8.0000E-01
+ Divertor_lifetime_(years)_______________________________________________ (life_div_fpy)_____________________ 3.7356E+00 OP
+ Heating/CD_system_lifetime_(years)______________________________________ (life_hcd_fpy)_____________________ 6.1381E+00 OP
+ Total_plant_lifetime_(years)____________________________________________ (life_plant)_______________________ 3.0000E+01
+ Total_plant_availability_fraction_______________________________________ (f_t_plant_available)______________________ 8.0000E-01
Number_of_fusion_cycles_to_reach_allowable_fw/blanket_DPA_______________ (bktcycles)___________________ 1.5226E+04
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0__________________________ (itart)_______________________ 0.0000E+00
@@ -8329,7 +8329,7 @@
# Final Feasible Point #
# Power Reactor Costs (1990 US$) #
First_wall_/_blanket_life_(years)_______________________________________ (fwbllife)____________________ 6.1295E+00
- Divertor_life_(years)___________________________________________________ (divlife.)____________________ 3.8406E+00
+ Divertor_life_(years)___________________________________________________ (life_div_fpy.)____________________ 3.8406E+00
Cost_of_electricity_(m$/kWh)____________________________________________ (coe)_________________________ 4.8398E+02
# Detailed Costings (1990 US$) #
Acc.22_multiplier_for_Nth_of_a_kind_____________________________________ (fkind)_______________________ 1.0000E+00
@@ -8455,10 +8455,10 @@
Allowable_blanket_neutron_fluence_(MW-yr/m2)____________________________ (abktflnc)____________________ 5.0000E+00
Allowable_divertor_heat_fluence_(MW-yr/m2)______________________________ (adivflnc)____________________ 7.0000E+00
First_wall_/_blanket_lifetime_(years)___________________________________ (life_blkt_fpy)_____________________ 6.1295E+00 OP
- Divertor_lifetime_(years)_______________________________________________ (divlife)_____________________ 3.8406E+00 OP
- Heating/CD_system_lifetime_(years)______________________________________ (cdrlife)_____________________ 6.1295E+00 OP
- Total_plant_lifetime_(years)____________________________________________ (tlife)_______________________ 3.0000E+01
- Total_plant_availability_fraction_______________________________________ (cfactr)______________________ 8.0000E-01
+ Divertor_lifetime_(years)_______________________________________________ (life_div_fpy)_____________________ 3.8406E+00 OP
+ Heating/CD_system_lifetime_(years)______________________________________ (life_hcd_fpy)_____________________ 6.1295E+00 OP
+ Total_plant_lifetime_(years)____________________________________________ (life_plant)_______________________ 3.0000E+01
+ Total_plant_availability_fraction_______________________________________ (f_t_plant_available)______________________ 8.0000E-01
Number_of_fusion_cycles_to_reach_allowable_fw/blanket_DPA_______________ (bktcycles)___________________ 1.5037E+04
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0__________________________ (itart)_______________________ 0.0000E+00
@@ -9492,7 +9492,7 @@
# Final Feasible Point #
# Power Reactor Costs (1990 US$) #
First_wall_/_blanket_life_(years)_______________________________________ (fwbllife)____________________ 6.1526E+00
- Divertor_life_(years)___________________________________________________ (divlife.)____________________ 3.9127E+00
+ Divertor_life_(years)___________________________________________________ (life_div_fpy.)____________________ 3.9127E+00
Cost_of_electricity_(m$/kWh)____________________________________________ (coe)_________________________ 4.8291E+02
# Detailed Costings (1990 US$) #
Acc.22_multiplier_for_Nth_of_a_kind_____________________________________ (fkind)_______________________ 1.0000E+00
@@ -9618,10 +9618,10 @@
Allowable_blanket_neutron_fluence_(MW-yr/m2)____________________________ (abktflnc)____________________ 5.0000E+00
Allowable_divertor_heat_fluence_(MW-yr/m2)______________________________ (adivflnc)____________________ 7.0000E+00
First_wall_/_blanket_lifetime_(years)___________________________________ (life_blkt_fpy)_____________________ 6.1526E+00 OP
- Divertor_lifetime_(years)_______________________________________________ (divlife)_____________________ 3.9127E+00 OP
- Heating/CD_system_lifetime_(years)______________________________________ (cdrlife)_____________________ 6.1526E+00 OP
- Total_plant_lifetime_(years)____________________________________________ (tlife)_______________________ 3.0000E+01
- Total_plant_availability_fraction_______________________________________ (cfactr)______________________ 8.0000E-01
+ Divertor_lifetime_(years)_______________________________________________ (life_div_fpy)_____________________ 3.9127E+00 OP
+ Heating/CD_system_lifetime_(years)______________________________________ (life_hcd_fpy)_____________________ 6.1526E+00 OP
+ Total_plant_lifetime_(years)____________________________________________ (life_plant)_______________________ 3.0000E+01
+ Total_plant_availability_fraction_______________________________________ (f_t_plant_available)______________________ 8.0000E-01
Number_of_fusion_cycles_to_reach_allowable_fw/blanket_DPA_______________ (bktcycles)___________________ 1.4939E+04
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0__________________________ (itart)_______________________ 0.0000E+00
@@ -10655,7 +10655,7 @@
# Final Feasible Point #
# Power Reactor Costs (1990 US$) #
First_wall_/_blanket_life_(years)_______________________________________ (fwbllife)____________________ 6.1129E+00
- Divertor_life_(years)___________________________________________________ (divlife.)____________________ 3.8644E+00
+ Divertor_life_(years)___________________________________________________ (life_div_fpy.)____________________ 3.8644E+00
Cost_of_electricity_(m$/kWh)____________________________________________ (coe)_________________________ 4.7776E+02
# Detailed Costings (1990 US$) #
Acc.22_multiplier_for_Nth_of_a_kind_____________________________________ (fkind)_______________________ 1.0000E+00
@@ -10781,10 +10781,10 @@
Allowable_blanket_neutron_fluence_(MW-yr/m2)____________________________ (abktflnc)____________________ 5.0000E+00
Allowable_divertor_heat_fluence_(MW-yr/m2)______________________________ (adivflnc)____________________ 7.0000E+00
First_wall_/_blanket_lifetime_(years)___________________________________ (life_blkt_fpy)_____________________ 6.1129E+00 OP
- Divertor_lifetime_(years)_______________________________________________ (divlife)_____________________ 3.8644E+00 OP
- Heating/CD_system_lifetime_(years)______________________________________ (cdrlife)_____________________ 6.1129E+00 OP
- Total_plant_lifetime_(years)____________________________________________ (tlife)_______________________ 3.0000E+01
- Total_plant_availability_fraction_______________________________________ (cfactr)______________________ 8.0000E-01
+ Divertor_lifetime_(years)_______________________________________________ (life_div_fpy)_____________________ 3.8644E+00 OP
+ Heating/CD_system_lifetime_(years)______________________________________ (life_hcd_fpy)_____________________ 6.1129E+00 OP
+ Total_plant_lifetime_(years)____________________________________________ (life_plant)_______________________ 3.0000E+01
+ Total_plant_availability_fraction_______________________________________ (f_t_plant_available)______________________ 8.0000E-01
Number_of_fusion_cycles_to_reach_allowable_fw/blanket_DPA_______________ (bktcycles)___________________ 1.4788E+04
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0__________________________ (itart)_______________________ 0.0000E+00
@@ -11818,7 +11818,7 @@
# Final Feasible Point #
# Power Reactor Costs (1990 US$) #
First_wall_/_blanket_life_(years)_______________________________________ (fwbllife)____________________ 6.0770E+00
- Divertor_life_(years)___________________________________________________ (divlife.)____________________ 3.8640E+00
+ Divertor_life_(years)___________________________________________________ (life_div_fpy.)____________________ 3.8640E+00
Cost_of_electricity_(m$/kWh)____________________________________________ (coe)_________________________ 4.7771E+02
# Detailed Costings (1990 US$) #
Acc.22_multiplier_for_Nth_of_a_kind_____________________________________ (fkind)_______________________ 1.0000E+00
@@ -11944,10 +11944,10 @@
Allowable_blanket_neutron_fluence_(MW-yr/m2)____________________________ (abktflnc)____________________ 5.0000E+00
Allowable_divertor_heat_fluence_(MW-yr/m2)______________________________ (adivflnc)____________________ 7.0000E+00
First_wall_/_blanket_lifetime_(years)___________________________________ (life_blkt_fpy)_____________________ 6.0770E+00 OP
- Divertor_lifetime_(years)_______________________________________________ (divlife)_____________________ 3.8640E+00 OP
- Heating/CD_system_lifetime_(years)______________________________________ (cdrlife)_____________________ 6.0770E+00 OP
- Total_plant_lifetime_(years)____________________________________________ (tlife)_______________________ 3.0000E+01
- Total_plant_availability_fraction_______________________________________ (cfactr)______________________ 8.0000E-01
+ Divertor_lifetime_(years)_______________________________________________ (life_div_fpy)_____________________ 3.8640E+00 OP
+ Heating/CD_system_lifetime_(years)______________________________________ (life_hcd_fpy)_____________________ 6.0770E+00 OP
+ Total_plant_lifetime_(years)____________________________________________ (life_plant)_______________________ 3.0000E+01
+ Total_plant_availability_fraction_______________________________________ (f_t_plant_available)______________________ 8.0000E-01
Number_of_fusion_cycles_to_reach_allowable_fw/blanket_DPA_______________ (bktcycles)___________________ 1.4875E+04
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0__________________________ (itart)_______________________ 0.0000E+00
@@ -12981,7 +12981,7 @@
# Final Feasible Point #
# Power Reactor Costs (1990 US$) #
First_wall_/_blanket_life_(years)_______________________________________ (fwbllife)____________________ 6.0793E+00
- Divertor_life_(years)___________________________________________________ (divlife.)____________________ 3.7702E+00
+ Divertor_life_(years)___________________________________________________ (life_div_fpy.)____________________ 3.7702E+00
Cost_of_electricity_(m$/kWh)____________________________________________ (coe)_________________________ 4.8195E+02
# Detailed Costings (1990 US$) #
Acc.22_multiplier_for_Nth_of_a_kind_____________________________________ (fkind)_______________________ 1.0000E+00
@@ -13107,10 +13107,10 @@
Allowable_blanket_neutron_fluence_(MW-yr/m2)____________________________ (abktflnc)____________________ 5.0000E+00
Allowable_divertor_heat_fluence_(MW-yr/m2)______________________________ (adivflnc)____________________ 7.0000E+00
First_wall_/_blanket_lifetime_(years)___________________________________ (life_blkt_fpy)_____________________ 6.0793E+00 OP
- Divertor_lifetime_(years)_______________________________________________ (divlife)_____________________ 3.7702E+00 OP
- Heating/CD_system_lifetime_(years)______________________________________ (cdrlife)_____________________ 6.0793E+00 OP
- Total_plant_lifetime_(years)____________________________________________ (tlife)_______________________ 3.0000E+01
- Total_plant_availability_fraction_______________________________________ (cfactr)______________________ 8.0000E-01
+ Divertor_lifetime_(years)_______________________________________________ (life_div_fpy)_____________________ 3.7702E+00 OP
+ Heating/CD_system_lifetime_(years)______________________________________ (life_hcd_fpy)_____________________ 6.0793E+00 OP
+ Total_plant_lifetime_(years)____________________________________________ (life_plant)_______________________ 3.0000E+01
+ Total_plant_availability_fraction_______________________________________ (f_t_plant_available)______________________ 8.0000E-01
Number_of_fusion_cycles_to_reach_allowable_fw/blanket_DPA_______________ (bktcycles)___________________ 1.5063E+04
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0__________________________ (itart)_______________________ 0.0000E+00
@@ -14144,7 +14144,7 @@
# Final Feasible Point #
# Power Reactor Costs (1990 US$) #
First_wall_/_blanket_life_(years)_______________________________________ (fwbllife)____________________ 6.0468E+00
- Divertor_life_(years)___________________________________________________ (divlife.)____________________ 3.7245E+00
+ Divertor_life_(years)___________________________________________________ (life_div_fpy.)____________________ 3.7245E+00
Cost_of_electricity_(m$/kWh)____________________________________________ (coe)_________________________ 4.7748E+02
# Detailed Costings (1990 US$) #
Acc.22_multiplier_for_Nth_of_a_kind_____________________________________ (fkind)_______________________ 1.0000E+00
@@ -14270,10 +14270,10 @@
Allowable_blanket_neutron_fluence_(MW-yr/m2)____________________________ (abktflnc)____________________ 5.0000E+00
Allowable_divertor_heat_fluence_(MW-yr/m2)______________________________ (adivflnc)____________________ 7.0000E+00
First_wall_/_blanket_lifetime_(years)___________________________________ (life_blkt_fpy)_____________________ 6.0468E+00 OP
- Divertor_lifetime_(years)_______________________________________________ (divlife)_____________________ 3.7245E+00 OP
- Heating/CD_system_lifetime_(years)______________________________________ (cdrlife)_____________________ 6.0468E+00 OP
- Total_plant_lifetime_(years)____________________________________________ (tlife)_______________________ 3.0000E+01
- Total_plant_availability_fraction_______________________________________ (cfactr)______________________ 8.0000E-01
+ Divertor_lifetime_(years)_______________________________________________ (life_div_fpy)_____________________ 3.7245E+00 OP
+ Heating/CD_system_lifetime_(years)______________________________________ (life_hcd_fpy)_____________________ 6.0468E+00 OP
+ Total_plant_lifetime_(years)____________________________________________ (life_plant)_______________________ 3.0000E+01
+ Total_plant_availability_fraction_______________________________________ (f_t_plant_available)______________________ 8.0000E-01
Number_of_fusion_cycles_to_reach_allowable_fw/blanket_DPA_______________ (bktcycles)___________________ 1.4921E+04
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0__________________________ (itart)_______________________ 0.0000E+00
@@ -15307,7 +15307,7 @@
# Final Feasible Point #
# Power Reactor Costs (1990 US$) #
First_wall_/_blanket_life_(years)_______________________________________ (fwbllife)____________________ 6.0152E+00
- Divertor_life_(years)___________________________________________________ (divlife.)____________________ 3.8183E+00
+ Divertor_life_(years)___________________________________________________ (life_div_fpy.)____________________ 3.8183E+00
Cost_of_electricity_(m$/kWh)____________________________________________ (coe)_________________________ 4.7106E+02
# Detailed Costings (1990 US$) #
Acc.22_multiplier_for_Nth_of_a_kind_____________________________________ (fkind)_______________________ 1.0000E+00
@@ -15433,10 +15433,10 @@
Allowable_blanket_neutron_fluence_(MW-yr/m2)____________________________ (abktflnc)____________________ 5.0000E+00
Allowable_divertor_heat_fluence_(MW-yr/m2)______________________________ (adivflnc)____________________ 7.0000E+00
First_wall_/_blanket_lifetime_(years)___________________________________ (life_blkt_fpy)_____________________ 6.0152E+00 OP
- Divertor_lifetime_(years)_______________________________________________ (divlife)_____________________ 3.8183E+00 OP
- Heating/CD_system_lifetime_(years)______________________________________ (cdrlife)_____________________ 6.0152E+00 OP
- Total_plant_lifetime_(years)____________________________________________ (tlife)_______________________ 3.0000E+01
- Total_plant_availability_fraction_______________________________________ (cfactr)______________________ 8.0000E-01
+ Divertor_lifetime_(years)_______________________________________________ (life_div_fpy)_____________________ 3.8183E+00 OP
+ Heating/CD_system_lifetime_(years)______________________________________ (life_hcd_fpy)_____________________ 6.0152E+00 OP
+ Total_plant_lifetime_(years)____________________________________________ (life_plant)_______________________ 3.0000E+01
+ Total_plant_availability_fraction_______________________________________ (f_t_plant_available)______________________ 8.0000E-01
Number_of_fusion_cycles_to_reach_allowable_fw/blanket_DPA_______________ (bktcycles)___________________ 1.4739E+04
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0__________________________ (itart)_______________________ 0.0000E+00
@@ -16470,7 +16470,7 @@
# Final Feasible Point #
# Power Reactor Costs (1990 US$) #
First_wall_/_blanket_life_(years)_______________________________________ (fwbllife)____________________ 5.9822E+00
- Divertor_life_(years)___________________________________________________ (divlife.)____________________ 3.9249E+00
+ Divertor_life_(years)___________________________________________________ (life_div_fpy.)____________________ 3.9249E+00
Cost_of_electricity_(m$/kWh)____________________________________________ (coe)_________________________ 4.6464E+02
# Detailed Costings (1990 US$) #
Acc.22_multiplier_for_Nth_of_a_kind_____________________________________ (fkind)_______________________ 1.0000E+00
@@ -16596,10 +16596,10 @@
Allowable_blanket_neutron_fluence_(MW-yr/m2)____________________________ (abktflnc)____________________ 5.0000E+00
Allowable_divertor_heat_fluence_(MW-yr/m2)______________________________ (adivflnc)____________________ 7.0000E+00
First_wall_/_blanket_lifetime_(years)___________________________________ (life_blkt_fpy)_____________________ 5.9822E+00 OP
- Divertor_lifetime_(years)_______________________________________________ (divlife)_____________________ 3.9249E+00 OP
- Heating/CD_system_lifetime_(years)______________________________________ (cdrlife)_____________________ 5.9822E+00 OP
- Total_plant_lifetime_(years)____________________________________________ (tlife)_______________________ 3.0000E+01
- Total_plant_availability_fraction_______________________________________ (cfactr)______________________ 8.0000E-01
+ Divertor_lifetime_(years)_______________________________________________ (life_div_fpy)_____________________ 3.9249E+00 OP
+ Heating/CD_system_lifetime_(years)______________________________________ (life_hcd_fpy)_____________________ 5.9822E+00 OP
+ Total_plant_lifetime_(years)____________________________________________ (life_plant)_______________________ 3.0000E+01
+ Total_plant_availability_fraction_______________________________________ (f_t_plant_available)______________________ 8.0000E-01
Number_of_fusion_cycles_to_reach_allowable_fw/blanket_DPA_______________ (bktcycles)___________________ 1.4560E+04
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0__________________________ (itart)_______________________ 0.0000E+00
@@ -18003,10 +18003,10 @@ output_costs = 1
cost_model = 0
* Total plant availability fraction;
-cfactr = 0.80
+f_t_plant_available = 0.80
* Switch for plant availability model
-iavail = 0
+i_plant_availability = 0
* PF Coils *
************
diff --git a/tests/integration/data/scan_MFILE.DAT b/tests/integration/data/scan_MFILE.DAT
index 8cf8c2ac36..a090d0a7e8 100644
--- a/tests/integration/data/scan_MFILE.DAT
+++ b/tests/integration/data/scan_MFILE.DAT
@@ -169,10 +169,10 @@
Allowable_blanket_neutron_fluence_(MW-yr/m2)____________________________ (abktflnc)____________________ 1.5000E+01
Allowable_divertor_heat_fluence_(MW-yr/m2)______________________________ (adivflnc)____________________ 2.0000E+01
First_wall_/_blanket_lifetime_(years)___________________________________ (life_blkt_fpy)_____________________ 2.0217E+01 OP
- Divertor_lifetime_(years)_______________________________________________ (divlife)_____________________ 4.1594E+00 OP
- Heating/CD_system_lifetime_(years)______________________________________ (cdrlife)_____________________ 2.0217E+01 OP
- Total_plant_lifetime_(years)____________________________________________ (tlife)_______________________ 4.0000E+01
- Total_plant_availability_fraction_______________________________________ (cfactr)______________________ 7.5000E-01
+ Divertor_lifetime_(years)_______________________________________________ (life_div_fpy)_____________________ 4.1594E+00 OP
+ Heating/CD_system_lifetime_(years)______________________________________ (life_hcd_fpy)_____________________ 2.0217E+01 OP
+ Total_plant_lifetime_(years)____________________________________________ (life_plant)_______________________ 4.0000E+01
+ Total_plant_availability_fraction_______________________________________ (f_t_plant_available)______________________ 7.5000E-01
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0__________________________ (itart)_______________________ 0.0000E+00
Major_radius_(m)________________________________________________________ (rmajor)______________________ 9.1779E+00 ITV
@@ -1164,10 +1164,10 @@
Allowable_blanket_neutron_fluence_(MW-yr/m2)____________________________ (abktflnc)____________________ 1.5000E+01
Allowable_divertor_heat_fluence_(MW-yr/m2)______________________________ (adivflnc)____________________ 2.0000E+01
First_wall_/_blanket_lifetime_(years)___________________________________ (life_blkt_fpy)_____________________ 2.0217E+01 OP
- Divertor_lifetime_(years)_______________________________________________ (divlife)_____________________ 4.1594E+00 OP
- Heating/CD_system_lifetime_(years)______________________________________ (cdrlife)_____________________ 2.0217E+01 OP
- Total_plant_lifetime_(years)____________________________________________ (tlife)_______________________ 4.0000E+01
- Total_plant_availability_fraction_______________________________________ (cfactr)______________________ 7.5000E-01
+ Divertor_lifetime_(years)_______________________________________________ (life_div_fpy)_____________________ 4.1594E+00 OP
+ Heating/CD_system_lifetime_(years)______________________________________ (life_hcd_fpy)_____________________ 2.0217E+01 OP
+ Total_plant_lifetime_(years)____________________________________________ (life_plant)_______________________ 4.0000E+01
+ Total_plant_availability_fraction_______________________________________ (f_t_plant_available)______________________ 7.5000E-01
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0__________________________ (itart)_______________________ 0.0000E+00
Major_radius_(m)________________________________________________________ (rmajor)______________________ 9.1779E+00 ITV
@@ -2159,10 +2159,10 @@
Allowable_blanket_neutron_fluence_(MW-yr/m2)____________________________ (abktflnc)____________________ 1.5000E+01
Allowable_divertor_heat_fluence_(MW-yr/m2)______________________________ (adivflnc)____________________ 2.0000E+01
First_wall_/_blanket_lifetime_(years)___________________________________ (life_blkt_fpy)_____________________ 2.0217E+01 OP
- Divertor_lifetime_(years)_______________________________________________ (divlife)_____________________ 4.1594E+00 OP
- Heating/CD_system_lifetime_(years)______________________________________ (cdrlife)_____________________ 2.0217E+01 OP
- Total_plant_lifetime_(years)____________________________________________ (tlife)_______________________ 4.0000E+01
- Total_plant_availability_fraction_______________________________________ (cfactr)______________________ 7.5000E-01
+ Divertor_lifetime_(years)_______________________________________________ (life_div_fpy)_____________________ 4.1594E+00 OP
+ Heating/CD_system_lifetime_(years)______________________________________ (life_hcd_fpy)_____________________ 2.0217E+01 OP
+ Total_plant_lifetime_(years)____________________________________________ (life_plant)_______________________ 4.0000E+01
+ Total_plant_availability_fraction_______________________________________ (f_t_plant_available)______________________ 7.5000E-01
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0__________________________ (itart)_______________________ 0.0000E+00
Major_radius_(m)________________________________________________________ (rmajor)______________________ 9.1779E+00 ITV
@@ -3154,10 +3154,10 @@
Allowable_blanket_neutron_fluence_(MW-yr/m2)____________________________ (abktflnc)____________________ 1.5000E+01
Allowable_divertor_heat_fluence_(MW-yr/m2)______________________________ (adivflnc)____________________ 2.0000E+01
First_wall_/_blanket_lifetime_(years)___________________________________ (life_blkt_fpy)_____________________ 2.0217E+01 OP
- Divertor_lifetime_(years)_______________________________________________ (divlife)_____________________ 4.1594E+00 OP
- Heating/CD_system_lifetime_(years)______________________________________ (cdrlife)_____________________ 2.0217E+01 OP
- Total_plant_lifetime_(years)____________________________________________ (tlife)_______________________ 4.0000E+01
- Total_plant_availability_fraction_______________________________________ (cfactr)______________________ 7.5000E-01
+ Divertor_lifetime_(years)_______________________________________________ (life_div_fpy)_____________________ 4.1594E+00 OP
+ Heating/CD_system_lifetime_(years)______________________________________ (life_hcd_fpy)_____________________ 2.0217E+01 OP
+ Total_plant_lifetime_(years)____________________________________________ (life_plant)_______________________ 4.0000E+01
+ Total_plant_availability_fraction_______________________________________ (f_t_plant_available)______________________ 7.5000E-01
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0__________________________ (itart)_______________________ 0.0000E+00
Major_radius_(m)________________________________________________________ (rmajor)______________________ 9.1779E+00 ITV
@@ -4149,10 +4149,10 @@
Allowable_blanket_neutron_fluence_(MW-yr/m2)____________________________ (abktflnc)____________________ 1.5000E+01
Allowable_divertor_heat_fluence_(MW-yr/m2)______________________________ (adivflnc)____________________ 2.0000E+01
First_wall_/_blanket_lifetime_(years)___________________________________ (life_blkt_fpy)_____________________ 2.0217E+01 OP
- Divertor_lifetime_(years)_______________________________________________ (divlife)_____________________ 4.1594E+00 OP
- Heating/CD_system_lifetime_(years)______________________________________ (cdrlife)_____________________ 2.0217E+01 OP
- Total_plant_lifetime_(years)____________________________________________ (tlife)_______________________ 4.0000E+01
- Total_plant_availability_fraction_______________________________________ (cfactr)______________________ 7.5000E-01
+ Divertor_lifetime_(years)_______________________________________________ (life_div_fpy)_____________________ 4.1594E+00 OP
+ Heating/CD_system_lifetime_(years)______________________________________ (life_hcd_fpy)_____________________ 2.0217E+01 OP
+ Total_plant_lifetime_(years)____________________________________________ (life_plant)_______________________ 4.0000E+01
+ Total_plant_availability_fraction_______________________________________ (f_t_plant_available)______________________ 7.5000E-01
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0__________________________ (itart)_______________________ 0.0000E+00
Major_radius_(m)________________________________________________________ (rmajor)______________________ 9.1779E+00 ITV
@@ -5144,10 +5144,10 @@
Allowable_blanket_neutron_fluence_(MW-yr/m2)____________________________ (abktflnc)____________________ 1.5000E+01
Allowable_divertor_heat_fluence_(MW-yr/m2)______________________________ (adivflnc)____________________ 2.0000E+01
First_wall_/_blanket_lifetime_(years)___________________________________ (life_blkt_fpy)_____________________ 2.0217E+01 OP
- Divertor_lifetime_(years)_______________________________________________ (divlife)_____________________ 4.1594E+00 OP
- Heating/CD_system_lifetime_(years)______________________________________ (cdrlife)_____________________ 2.0217E+01 OP
- Total_plant_lifetime_(years)____________________________________________ (tlife)_______________________ 4.0000E+01
- Total_plant_availability_fraction_______________________________________ (cfactr)______________________ 7.5000E-01
+ Divertor_lifetime_(years)_______________________________________________ (life_div_fpy)_____________________ 4.1594E+00 OP
+ Heating/CD_system_lifetime_(years)______________________________________ (life_hcd_fpy)_____________________ 2.0217E+01 OP
+ Total_plant_lifetime_(years)____________________________________________ (life_plant)_______________________ 4.0000E+01
+ Total_plant_availability_fraction_______________________________________ (f_t_plant_available)______________________ 7.5000E-01
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0__________________________ (itart)_______________________ 0.0000E+00
Major_radius_(m)________________________________________________________ (rmajor)______________________ 9.1779E+00 ITV
@@ -6139,10 +6139,10 @@
Allowable_blanket_neutron_fluence_(MW-yr/m2)____________________________ (abktflnc)____________________ 1.5000E+01
Allowable_divertor_heat_fluence_(MW-yr/m2)______________________________ (adivflnc)____________________ 2.0000E+01
First_wall_/_blanket_lifetime_(years)___________________________________ (life_blkt_fpy)_____________________ 2.0217E+01 OP
- Divertor_lifetime_(years)_______________________________________________ (divlife)_____________________ 4.1594E+00 OP
- Heating/CD_system_lifetime_(years)______________________________________ (cdrlife)_____________________ 2.0217E+01 OP
- Total_plant_lifetime_(years)____________________________________________ (tlife)_______________________ 4.0000E+01
- Total_plant_availability_fraction_______________________________________ (cfactr)______________________ 7.5000E-01
+ Divertor_lifetime_(years)_______________________________________________ (life_div_fpy)_____________________ 4.1594E+00 OP
+ Heating/CD_system_lifetime_(years)______________________________________ (life_hcd_fpy)_____________________ 2.0217E+01 OP
+ Total_plant_lifetime_(years)____________________________________________ (life_plant)_______________________ 4.0000E+01
+ Total_plant_availability_fraction_______________________________________ (f_t_plant_available)______________________ 7.5000E-01
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0__________________________ (itart)_______________________ 0.0000E+00
Major_radius_(m)________________________________________________________ (rmajor)______________________ 9.1779E+00 ITV
@@ -7134,10 +7134,10 @@
Allowable_blanket_neutron_fluence_(MW-yr/m2)____________________________ (abktflnc)____________________ 1.5000E+01
Allowable_divertor_heat_fluence_(MW-yr/m2)______________________________ (adivflnc)____________________ 2.0000E+01
First_wall_/_blanket_lifetime_(years)___________________________________ (life_blkt_fpy)_____________________ 2.0217E+01 OP
- Divertor_lifetime_(years)_______________________________________________ (divlife)_____________________ 4.1594E+00 OP
- Heating/CD_system_lifetime_(years)______________________________________ (cdrlife)_____________________ 2.0217E+01 OP
- Total_plant_lifetime_(years)____________________________________________ (tlife)_______________________ 4.0000E+01
- Total_plant_availability_fraction_______________________________________ (cfactr)______________________ 7.5000E-01
+ Divertor_lifetime_(years)_______________________________________________ (life_div_fpy)_____________________ 4.1594E+00 OP
+ Heating/CD_system_lifetime_(years)______________________________________ (life_hcd_fpy)_____________________ 2.0217E+01 OP
+ Total_plant_lifetime_(years)____________________________________________ (life_plant)_______________________ 4.0000E+01
+ Total_plant_availability_fraction_______________________________________ (f_t_plant_available)______________________ 7.5000E-01
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0__________________________ (itart)_______________________ 0.0000E+00
Major_radius_(m)________________________________________________________ (rmajor)______________________ 9.1779E+00 ITV
@@ -8129,10 +8129,10 @@
Allowable_blanket_neutron_fluence_(MW-yr/m2)____________________________ (abktflnc)____________________ 1.5000E+01
Allowable_divertor_heat_fluence_(MW-yr/m2)______________________________ (adivflnc)____________________ 2.0000E+01
First_wall_/_blanket_lifetime_(years)___________________________________ (life_blkt_fpy)_____________________ 2.0217E+01 OP
- Divertor_lifetime_(years)_______________________________________________ (divlife)_____________________ 4.1594E+00 OP
- Heating/CD_system_lifetime_(years)______________________________________ (cdrlife)_____________________ 2.0217E+01 OP
- Total_plant_lifetime_(years)____________________________________________ (tlife)_______________________ 4.0000E+01
- Total_plant_availability_fraction_______________________________________ (cfactr)______________________ 7.5000E-01
+ Divertor_lifetime_(years)_______________________________________________ (life_div_fpy)_____________________ 4.1594E+00 OP
+ Heating/CD_system_lifetime_(years)______________________________________ (life_hcd_fpy)_____________________ 2.0217E+01 OP
+ Total_plant_lifetime_(years)____________________________________________ (life_plant)_______________________ 4.0000E+01
+ Total_plant_availability_fraction_______________________________________ (f_t_plant_available)______________________ 7.5000E-01
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0__________________________ (itart)_______________________ 0.0000E+00
Major_radius_(m)________________________________________________________ (rmajor)______________________ 9.1779E+00 ITV
@@ -9126,18 +9126,18 @@ output_costs = 0
cost_model = 0
abktflnc = 15 * Allowable first wall/blanket neutron
adivflnc = 20.0 * Allowable divertor heat fluence (mw-yr/m2)
-cfactr = 0.75 * Total plant availability fraction;
+f_t_plant_available = 0.75 * Total plant availability fraction;
dintrt = 0.00 * Diff between borrowing and saving interest rates
fcap0 = 1.15 * Average cost of money for construction of plant
fcap0cp = 1.06 * Average cost of money for replaceable components
fcontng = 0.15 * Project contingency factor
fcr0 = 0.065 * Fixed charge rate during construction
fkind = 1.0 * Multiplier for nth of a kind costs
-iavail = 0 * Switch for plant availability model;
+i_plant_availability = 0 * Switch for plant availability model;
ifueltyp = 1 * Switch;
lsa = 2 * Level of safety assurance switch (generally; use 3 or 4);
discount_rate = 0.06 * Effective cost of money in constant dollars
-tlife = 40 * Plant life (years)
+life_plant = 40 * Plant life (years)
ucblvd = 280.0 * Unit cost for blanket vanadium ($/kg)
ucdiv = 5.0d5 * Cost of divertor blade ($)
ucme = 3.0d8 * Unit cost of maintenance equipment ($/w**0;3)
diff --git a/tests/regression/input_files/IFE.IN.DAT b/tests/regression/input_files/IFE.IN.DAT
index dff76b5889..dab2734121 100644
--- a/tests/regression/input_files/IFE.IN.DAT
+++ b/tests/regression/input_files/IFE.IN.DAT
@@ -236,10 +236,10 @@ fhole = 0.0 *Area fraction taken up by other holes
*-----------------Cost Variables-------------------*
cost_model = 0 *1990 cost model
abktflnc = 20.0 *Allowable first wall/blanket neutron fluence (MW-yr/m2)
-cfactr = 0.75 *Total plant availability fraction
+f_t_plant_available = 0.75 *Total plant availability fraction
fcdfuel = 0.0 *Fraction of current drive cost treated as fuel (if ifueltyp = 1)
fkind = 1.0 *Multiplier for Nth of a kind costs
-iavail = 0 *Switch for plant availability model (use cfactr)
+i_plant_availability = 0 *Switch for plant availability model (use f_t_plant_available)
ifueltyp = 1 *Fuel Switch (1: Treat blankets, FW and fcdfuel of CD as fuel)
ireactor = 1 *Switch for net electric and CoE (1: calculate)
lsa = 4 *Level of safety assurance switch (4: like current fission plant)
diff --git a/tests/regression/input_files/helias_5b.IN.DAT b/tests/regression/input_files/helias_5b.IN.DAT
index afd0348cdc..a9f8a93537 100644
--- a/tests/regression/input_files/helias_5b.IN.DAT
+++ b/tests/regression/input_files/helias_5b.IN.DAT
@@ -192,19 +192,19 @@ zref(8) = 1.0
cost_model = 0 *0: 1990 cost module, the 2015 does not work yet for stellarators
abktflnc = 15.0 *Allowable first wall/blanket neutron (MW-yr/m2)
adivflnc = 25.0 *Allowable divertor heat fluence (MW-yr/m2)
-cfactr = 0.75 *Total plant capacity fraction
+f_t_plant_available = 0.75 *Total plant capacity fraction
dintrt = 0.00 *Diff between borrowing and saving interest rates
fcap0 = 1.15 *Average cost of money for construction of plant
fcap0cp = 1.06 *Average cost of money for replaceable components
fcontng = 0.15 *Project contingency factor
fcr0 = 0.065 *Fixed charge rate during construction
fkind = 1.0 *Multiplier for nth of a kind costs
-iavail = 0 *Switch for plant availability model (0: Use input value for cfactr)
+i_plant_availability = 0 *Switch for plant availability model (0: Use input value for f_t_plant_available)
ifueltyp = 0 *Switch (0: treat blanket divertor first wall and fraction fcdfuel of CD equipment as capital cost)
ireactor = 1 *Switch for net electric power calculations (1: Calculate MW electric and c-o-e)
lsa = 2 *Level of safety assurance switch (2: In-between)
discount_rate = 0.06 *Effective cost of money in constant dollars
-tlife = 40.0 *Plant life (years)
+life_plant = 40.0 *Plant life (years)
ucblvd = 280.0 *Unit cost for blanket vanadium ($/kg)
ucdiv = 5.0E5 *Cost of divertor blade ($)
ucme = 3.0E8 *Unit cost of maintenance equipment ($)
\ No newline at end of file
diff --git a/tests/regression/input_files/large_tokamak.IN.DAT b/tests/regression/input_files/large_tokamak.IN.DAT
index 755095a640..949abe3af6 100644
--- a/tests/regression/input_files/large_tokamak.IN.DAT
+++ b/tests/regression/input_files/large_tokamak.IN.DAT
@@ -530,10 +530,10 @@ output_costs = 1
cost_model = 0
* Total plant availability fraction;
-cfactr = 0.80
+f_t_plant_available = 0.80
* Switch for plant availability model
-iavail = 0
+i_plant_availability = 0
* PF Coils *
************
diff --git a/tests/regression/input_files/large_tokamak_eval.IN.DAT b/tests/regression/input_files/large_tokamak_eval.IN.DAT
index e442cf3567..b2621e0d54 100644
--- a/tests/regression/input_files/large_tokamak_eval.IN.DAT
+++ b/tests/regression/input_files/large_tokamak_eval.IN.DAT
@@ -114,9 +114,9 @@ f_alpha_energy_confinement_min = 5.0 * Lower limit on f_alpha_energy_confinement
*------------------Cost Variables------------------*
-cfactr = 0.80 * Total plant availability fraction; input if `iavail=0`
+f_t_plant_available = 0.80 * Total plant availability fraction; input if `i_plant_availability=0`
cost_model = 0 * Switch for cost model;
-iavail = 0 * Switch for plant availability model;
+i_plant_availability = 0 * Switch for plant availability model;
output_costs = 1 * Switch for costs output;
*----------------------Costs-----------------------*
diff --git a/tests/regression/input_files/large_tokamak_nof.IN.DAT b/tests/regression/input_files/large_tokamak_nof.IN.DAT
index 2225ef9803..8172a43112 100644
--- a/tests/regression/input_files/large_tokamak_nof.IN.DAT
+++ b/tests/regression/input_files/large_tokamak_nof.IN.DAT
@@ -506,10 +506,10 @@ output_costs = 1
cost_model = 0
* Total plant availability fraction;
-cfactr = 0.80
+f_t_plant_available = 0.80
* Switch for plant availability model
-iavail = 0
+i_plant_availability = 0
* PF Coils *
************
diff --git a/tests/regression/input_files/spherical_tokamak_eval.IN.DAT b/tests/regression/input_files/spherical_tokamak_eval.IN.DAT
index 1f2efb76e3..fea67a422e 100644
--- a/tests/regression/input_files/spherical_tokamak_eval.IN.DAT
+++ b/tests/regression/input_files/spherical_tokamak_eval.IN.DAT
@@ -124,7 +124,7 @@ p_plant_electric_net_required_mw = 100.0 * minimum net electric
*------------------Cost Variables------------------*
cost_model = 0 * Switch for cost model;
-iavail = 0 * Switch for plant availability model;
+i_plant_availability = 0 * Switch for plant availability model;
ifueltyp = 0 * Switch for fuel type;
lsa = 2 * Level of safety assurance switch (generally; use 3 or 4);
output_costs = 1 * Switch for costs output;
diff --git a/tests/regression/input_files/st_regression.IN.DAT b/tests/regression/input_files/st_regression.IN.DAT
index f6ce9d1792..d44be1cbb6 100644
--- a/tests/regression/input_files/st_regression.IN.DAT
+++ b/tests/regression/input_files/st_regression.IN.DAT
@@ -1751,7 +1751,7 @@ i_pf_conductor = 0
*icc = 60
* DESCRIPTION: Constraint equation for Central Solenoid s/c temperature margin lower limit
* JUSTIFICATION: Turned off, do not care about temp lower limit
-* VARIABLES: avail_min (Minimum availability), cfactr calculated in-situ
+* VARIABLES: avail_min (Minimum availability), f_t_plant_available calculated in-situ
*temp_cs_superconductor_margin_min =
* DESCRIPTION: Minimum allowable temp margin: CS (K) (icc = 60)
@@ -3026,7 +3026,7 @@ cost_model = 0
*adivflnc =
* DESCRIPTION: Allowable Divertor Heat Fluence (MW-yr/m2)
-* JUSTIFICATION: Set to enforce a divertor lifetime (`divlife`) of 5 years
+* JUSTIFICATION: Set to enforce a divertor lifetime (`life_div_fpy`) of 5 years
* NOTE: not currently functional, issue to be raised
*cpstflnc =
@@ -3222,15 +3222,15 @@ t_plant_pulse_dwell = 100.0
*-------------------------------Availability-----------------------------*
*‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾*
-iavail = 0
-* DESCRIPTION: Switch for Plant Availability Model (0: Use Input Value For cfactr)
-* =0 use input value for cfactr
-* =1 calculate cfactr using Taylor and Ward 1999 model
-* =2 calculate cfactr using new (2015) model
+i_plant_availability = 0
+* DESCRIPTION: Switch for Plant Availability Model (0: Use Input Value For f_t_plant_available)
+* =0 use input value for f_t_plant_available
+* =1 calculate f_t_plant_available using Taylor and Ward 1999 model
+* =2 calculate f_t_plant_available using new (2015) model
* JUSTIFICATION:
-*cfactr = 0.9
-* DESCRIPTION: Total plant availability fraction; input if iavail=0
+*f_t_plant_available = 0.9
+* DESCRIPTION: Total plant availability fraction; input if i_plant_availability=0
* JUSTIFICATION: testing
*ibkt_life =
@@ -3287,7 +3287,7 @@ iavail = 0
* DESCRIPTION: Vacuum system pump redundancy level (%)
* JUSTIFICATION: testing
-*tbktrepl =
+*t_blkt_replace_yrs =
* DESCRIPTION: Time needed to replace blanket (yr)
* JUSTIFICATION: testing
@@ -3295,11 +3295,11 @@ iavail = 0
* DESCRIPTION: Time needed to replace blanket+divertor (yr)
* JUSTIFICATION: testing
-*tdivrepl =
+*t_div_replace_yrs =
* DESCRIPTION: Time needed to replace divertor (yr)
* JUSTIFICATION: testing
-*tlife =
+*life_plant =
* DESCRIPTION: Plant life (yr)
* JUSTIFICATION: testing
diff --git a/tests/regression/input_files/stellarator_helias_eval.IN.DAT b/tests/regression/input_files/stellarator_helias_eval.IN.DAT
index f9f0637740..0e678383ed 100644
--- a/tests/regression/input_files/stellarator_helias_eval.IN.DAT
+++ b/tests/regression/input_files/stellarator_helias_eval.IN.DAT
@@ -106,7 +106,7 @@ falpha_energy_confinement = 1. * f-value for lower limit on taup/taueff the rati
abktflnc = 5. * allowable first wall/blanket neutron fluence (MW-yr/m2) (`blktmodel=0`)
adivflnc = 7. * allowable divertor heat fluence (MW-yr/m2)
-cfactr = 0.75 * Total plant availability fraction; input if `iavail=0`
+f_t_plant_available = 0.75 * Total plant availability fraction; input if `i_plant_availability=0`
cost_model = 0 * Switch for cost model;
dintrt = 0. * diff between borrowing and saving interest rates
fcap0 = 1.15 * average cost of money for construction of plant assuming design/construction time of six years
@@ -114,12 +114,12 @@ fcap0cp = 1.06 * average cost of money for replaceable components assuming lead
fcontng = 0.15 * project contingency factor
fcr0 = 0.065 * fixed charge rate during construction
fkind = 1. * multiplier for Nth of a kind costs
-iavail = 0 * Switch for plant availability model;
+i_plant_availability = 0 * Switch for plant availability model;
ifueltyp = 0 * Switch for fuel type;
ireactor = 1 * Switch for net electric power and cost of electricity calculations;
lsa = 2 * Level of safety assurance switch (generally; use 3 or 4);
discount_rate = 0.06 * effective cost of money in constant dollars
-tlife = 40. * Full power year plant lifetime (years)
+life_plant = 40. * Full power year plant lifetime (years)
ucblvd = 280. * unit cost for blanket vanadium ($/kg)
ucdiv = 500000. * cost of divertor blade ($)
ucme = 3.e8 * cost of maintenance equipment ($)
diff --git a/tests/unit/data/large_tokamak_IN.DAT b/tests/unit/data/large_tokamak_IN.DAT
index 15b9e2a2ad..9290580426 100644
--- a/tests/unit/data/large_tokamak_IN.DAT
+++ b/tests/unit/data/large_tokamak_IN.DAT
@@ -522,10 +522,10 @@ output_costs = 1
cost_model = 0
* Total plant availability fraction;
-cfactr = 0.80
+f_t_plant_available = 0.80
* Switch for plant availability model
-iavail = 0
+i_plant_availability = 0
* PF Coils *
************
diff --git a/tests/unit/data/large_tokamak_MFILE.DAT b/tests/unit/data/large_tokamak_MFILE.DAT
index b1a28d2197..ae84746444 100644
--- a/tests/unit/data/large_tokamak_MFILE.DAT
+++ b/tests/unit/data/large_tokamak_MFILE.DAT
@@ -397,7 +397,7 @@ First_wall_/_blanket_lifetime_(years)____________________________________ (life_
Divertor_lifetime_(years)________________________________________________ (divlife)______________________ 1.28385330450389534e+00 OP
Heating/CD_system_lifetime_(years)_______________________________________ (cdrlife)______________________ 6.09862312226963610e+00 OP
Total_plant_lifetime_(years)_____________________________________________ (tlife)________________________ 3.00000000000000000e+01
-Total_plant_availability_fraction________________________________________ (cfactr)_______________________ 8.00000000000000044e-01
+Total_plant_availability_fraction________________________________________ (f_t_plant_available)_______________________ 8.00000000000000044e-01
Number_of_fusion_cycles_to_reach_allowable_fw/blanket_DPA________________ (bktcycles)____________________ 1.56355108513279520e+04
# Plasma #
Tokamak_aspect_ratio_=_Conventional,_itart_=_0___________________________ (itart)________________________ 0
@@ -7606,6 +7606,7 @@ Error_status_____________________________________________________________ (error
# End of PROCESS Output #
# End of PROCESS Output #
# Copy of PROCESS Input Follows #
+
************************************************************************************************************************
***** *****
***** Generic large tokamak file *****
@@ -8130,10 +8131,10 @@ output_costs = 1
cost_model = 0
* Total plant availability fraction;
-cfactr = 0.80
+f_t_plant_available = 0.80
* Switch for plant availability model
-iavail = 0
+i_plant_availability = 0
* PF Coils *
************
diff --git a/tests/unit/test_availability.py b/tests/unit/test_availability.py
index 957fea093e..bcf3b2dc81 100644
--- a/tests/unit/test_availability.py
+++ b/tests/unit/test_availability.py
@@ -31,7 +31,7 @@ def availability():
((0.0000001, 0, 0.5), (0.0000001, 1, 2.5), (1.0, 0, 0.5), (1.0, 1, 1.25)),
)
def test_avail_0(monkeypatch, availability, life_fw_fpy, ibkt_life, bktlife_exp_param):
- """Test avail for iavail = 0
+ """Test avail for i_plant_availability = 0
:param monkeypatch: mocking fixture
:type monkeypatch: MonkeyPatch
@@ -46,13 +46,13 @@ def test_avail_0(monkeypatch, availability, life_fw_fpy, ibkt_life, bktlife_exp_
monkeypatch.setattr(cv, "ibkt_life", ibkt_life)
monkeypatch.setattr(cv, "abktflnc", 4.0)
monkeypatch.setattr(pv, "pflux_fw_neutron_mw", 10.0)
- monkeypatch.setattr(cv, "tlife", 30.0)
+ monkeypatch.setattr(cv, "life_plant", 30.0)
monkeypatch.setattr(cv, "life_dpa", 40.0)
monkeypatch.setattr(cv, "adivflnc", 8.0)
monkeypatch.setattr(dv, "pflux_div_heat_load_mw", 10.0)
monkeypatch.setattr(tv, "t_plant_pulse_total", 5.0)
- monkeypatch.setattr(cv, "iavail", 0)
- monkeypatch.setattr(cv, "cfactr", 0.8)
+ monkeypatch.setattr(cv, "i_plant_availability", 0)
+ monkeypatch.setattr(cv, "f_t_plant_available", 0.8)
monkeypatch.setattr(tv, "t_plant_pulse_burn", 500.0)
monkeypatch.setattr(pv, "itart", 1)
@@ -65,7 +65,7 @@ def test_avail_0(monkeypatch, availability, life_fw_fpy, ibkt_life, bktlife_exp_
bktlife_exp = bktlife_exp_param
assert pytest.approx(bktlife_obs) == bktlife_exp
- divlife_obs = cv.divlife
+ divlife_obs = cv.life_div_fpy
divlife_exp = 1.0
assert pytest.approx(divlife_obs) == divlife_exp
@@ -75,7 +75,7 @@ def test_avail_0(monkeypatch, availability, life_fw_fpy, ibkt_life, bktlife_exp_
def test_avail_1(monkeypatch, availability):
- """Test avail for iavail = 1
+ """Test avail for i_plant_availability = 1
:param monkeypatch: mocking fixture
:type monkeypatch: MonkeyPatch
@@ -86,11 +86,11 @@ def test_avail_1(monkeypatch, availability):
init_all_module_vars()
# Mock module vars
- monkeypatch.setattr(cv, "iavail", 1)
- monkeypatch.setattr(cv, "divlife", 1.0)
+ monkeypatch.setattr(cv, "i_plant_availability", 1)
+ monkeypatch.setattr(cv, "life_div_fpy", 1.0)
monkeypatch.setattr(fwbsv, "life_blkt_fpy", 7.0)
- monkeypatch.setattr(cv, "tdivrepl", 0.1)
- monkeypatch.setattr(cv, "tbktrepl", 0.2)
+ monkeypatch.setattr(cv, "t_div_replace_yrs", 0.1)
+ monkeypatch.setattr(cv, "t_blkt_replace_yrs", 0.2)
monkeypatch.setattr(cv, "tcomrepl", 0.3)
monkeypatch.setattr(cv, "uubop", 0.4)
monkeypatch.setattr(cv, "uucd", 0.5)
@@ -101,7 +101,7 @@ def test_avail_1(monkeypatch, availability):
monkeypatch.setattr(cv, "uuves", 0.11)
availability.avail(output=False)
- cfactr_obs = cv.cfactr
+ cfactr_obs = cv.f_t_plant_available
cfactr_exp = 0.0006344554455445239
assert pytest.approx(cfactr_exp) == cfactr_obs
@@ -130,8 +130,8 @@ def test_calc_u_unplanned_bop(monkeypatch, availability):
:type availability: tests.unit.test_availability.availability (functional fixture)
"""
- # Mock module variable t_operation
- monkeypatch.setattr(cv, "t_operation", 25.0)
+ # Mock module variable t_plant_operational_total_yrs
+ monkeypatch.setattr(cv, "t_plant_operational_total_yrs", 25.0)
# Call subroutine and check result is within an absolute tolerance
result = availability.calc_u_unplanned_bop(output=False)
@@ -149,7 +149,7 @@ def calc_u_planned_param(**kwargs):
"abktflnc": 5.0,
"adivflnc": 10.0,
"cpstflnc": 0.0,
- "tlife": 30.0,
+ "life_plant": 30.0,
"num_rh_systems": 5,
"pflux_fw_neutron_mw": 1.0,
"pflux_div_heat_load_mw": 10.0,
@@ -175,7 +175,7 @@ def calc_u_planned_params():
abktflnc=20.0,
adivflnc=25.0,
cpstflnc=20.0,
- tlife=30.0,
+ life_plant=30.0,
num_rh_systems=4,
pflux_fw_neutron_mw=1.0,
pflux_div_heat_load_mw=1.0,
@@ -213,11 +213,11 @@ def calc_u_planned_fix(request, monkeypatch):
monkeypatch.setattr(data_structure.fwbs_variables, "life_blkt_fpy", 0.0)
monkeypatch.setattr(pv, "pflux_fw_neutron_mw", param["pflux_fw_neutron_mw"])
monkeypatch.setattr(pv, "itart", param["itart"])
- monkeypatch.setattr(cv, "tlife", param["tlife"])
- monkeypatch.setattr(cv, "divlife", 0.0)
+ monkeypatch.setattr(cv, "life_plant", param["life_plant"])
+ monkeypatch.setattr(cv, "life_div_fpy", 0.0)
monkeypatch.setattr(cv, "adivflnc", param["adivflnc"])
monkeypatch.setattr(cv, "abktflnc", param["abktflnc"])
- monkeypatch.setattr(cv, "cdrlife", 0.0)
+ monkeypatch.setattr(cv, "life_hcd_fpy", 0.0)
monkeypatch.setattr(cv, "cplife", 0.0)
monkeypatch.setattr(cv, "cpstflnc", param["cpstflnc"])
monkeypatch.setattr(cv, "num_rh_systems", param["num_rh_systems"])
@@ -253,7 +253,7 @@ def calc_u_unplanned_magnets_param(**kwargs):
"temp_margin": 1.5,
"temp_tf_superconductor_margin_min": 1.5,
"temp_cs_superconductor_margin_min": 1.5,
- "t_operation": 30,
+ "t_plant_operational_total_yrs": 30,
"conf_mag": 1.0,
"expected": approx(0.02, abs=0.005),
}
@@ -310,7 +310,9 @@ def calc_u_unplanned_magnets_fix(request, monkeypatch):
param = request.param
# Mock module variables
- monkeypatch.setattr(cv, "t_operation", param["t_operation"])
+ monkeypatch.setattr(
+ cv, "t_plant_operational_total_yrs", param["t_plant_operational_total_yrs"]
+ )
monkeypatch.setattr(cv, "conf_mag", param["conf_mag"])
monkeypatch.setattr(
tfv,
@@ -348,7 +350,7 @@ def calc_u_unplanned_divertor_param(**kwargs):
"""
# Default parameters
defaults = {
- "divlife": 1.99,
+ "life_div_fpy": 1.99,
"t_plant_pulse_total": 9000,
"expected": approx(0.02, abs=0.005),
}
@@ -369,8 +371,8 @@ def calc_u_unplanned_divertor_params():
"""
return [
calc_u_unplanned_divertor_param(),
- calc_u_unplanned_divertor_param(divlife=4, expected=approx(1, abs=0)),
- calc_u_unplanned_divertor_param(divlife=3, expected=approx(0.1, abs=0.05)),
+ calc_u_unplanned_divertor_param(life_div_fpy=4, expected=approx(1, abs=0)),
+ calc_u_unplanned_divertor_param(life_div_fpy=3, expected=approx(0.1, abs=0.05)),
]
@@ -393,7 +395,7 @@ def calc_u_unplanned_divertor_fix(request, monkeypatch):
# Mock variables used by calc_u_unplanned_divertor()
# Some may be parameterised
monkeypatch.setattr(tv, "t_plant_pulse_total", param["t_plant_pulse_total"])
- monkeypatch.setattr(cv, "divlife", param["divlife"])
+ monkeypatch.setattr(cv, "life_div_fpy", param["life_div_fpy"])
# Return the expected result for the given parameter list
return param["expected"]
@@ -547,12 +549,12 @@ def mock_calc_u_unplanned_vacuum(*args, **kwargs):
monkeypatch.setattr(ifev, "ife", 0)
monkeypatch.setattr(pv, "itart", 1)
monkeypatch.setattr(fwbsv, "life_blkt_fpy", 5.0)
- monkeypatch.setattr(cv, "divlife", 10.0)
+ monkeypatch.setattr(cv, "life_div_fpy", 10.0)
monkeypatch.setattr(cv, "cplife", 15.0)
availability.avail_2(False)
- cfactr_obs = cv.cfactr
+ cfactr_obs = cv.f_t_plant_available
cfactr_exp = 0.7173
assert pytest.approx(cfactr_obs) == cfactr_exp
@@ -564,7 +566,7 @@ def mock_calc_u_unplanned_vacuum(*args, **kwargs):
bktlife_exp = 6.97058413
assert pytest.approx(bktlife_obs) == bktlife_exp
- divlife_obs = cv.divlife
+ divlife_obs = cv.life_div_fpy
divlife_exp = 13.94116827
assert pytest.approx(divlife_obs) == divlife_exp
@@ -585,7 +587,7 @@ def test_avail_st(monkeypatch, availability):
# Initialise fortran variables to keep test isolated from others
init_all_module_vars()
monkeypatch.setattr(cv, "tmain", 1.0)
- monkeypatch.setattr(cv, "tlife", 30.0)
+ monkeypatch.setattr(cv, "life_plant", 30.0)
monkeypatch.setattr(cv, "u_unplanned_cp", 0.05)
monkeypatch.setattr(tv, "t_plant_pulse_burn", 5.0)
monkeypatch.setattr(tv, "t_plant_pulse_total", 9000.0)
@@ -595,12 +597,12 @@ def test_avail_st(monkeypatch, availability):
monkeypatch.setattr(cv, "abktflnc", 10.0)
monkeypatch.setattr(pv, "pflux_fw_neutron_mw", 10.0)
monkeypatch.setattr(cv, "cplife", 5.0)
- monkeypatch.setattr(cv, "cdrlife", 15.0)
+ monkeypatch.setattr(cv, "life_hcd_fpy", 15.0)
availability.avail_st(output=False)
- assert pytest.approx(cv.t_operation) == 15.0
- assert pytest.approx(cv.cfactr) == 0.27008858
+ assert pytest.approx(cv.t_plant_operational_total_yrs) == 15.0
+ assert pytest.approx(cv.f_t_plant_available) == 0.27008858
assert pytest.approx(cv.cpfact, abs=1.0e-8) == 0.00015005
@@ -620,7 +622,7 @@ def test_cp_lifetime(monkeypatch, availability, i_tf_sup, exp):
monkeypatch.setattr(fwbsv, "neut_flux_cp", 5.0e14)
monkeypatch.setattr(cv, "cpstflnc", 20.0)
monkeypatch.setattr(pv, "pflux_fw_neutron_mw", 5.0)
- monkeypatch.setattr(cv, "tlife", 30.0)
+ monkeypatch.setattr(cv, "life_plant", 30.0)
cplife = availability.cp_lifetime()
@@ -639,7 +641,7 @@ def test_divertor_lifetime(monkeypatch, availability):
monkeypatch.setattr(cv, "adivflnc", 100.0)
monkeypatch.setattr(dv, "pflux_div_heat_load_mw", 10.0)
- monkeypatch.setattr(cv, "tlife", 30.0)
+ monkeypatch.setattr(cv, "life_plant", 30.0)
divlife_obs = availability.divertor_lifetime()
divlife_exp = 10.0
diff --git a/tests/unit/test_buildings.py b/tests/unit/test_buildings.py
index feb4e2289e..197155917b 100644
--- a/tests/unit/test_buildings.py
+++ b/tests/unit/test_buildings.py
@@ -134,9 +134,9 @@ class BldgsSizesParam(NamedTuple):
n_tf_coils: Any
i_tf_sup: Any
r_pf_coil_outer_max: Any
- tlife: Any
+ life_plant: Any
cplife: Any
- divlife: Any
+ life_div_fpy: Any
r_cryostat_inboard: Any
life_blkt_fpy: Any
z_tf_inside_half: Any
@@ -277,9 +277,9 @@ class BldgsSizesParam(NamedTuple):
n_tf_coils=16,
i_tf_sup=1,
r_pf_coil_outer_max=18.98258241468535,
- tlife=40,
+ life_plant=40,
cplife=0,
- divlife=0,
+ life_div_fpy=0,
r_cryostat_inboard=19.48258241468535,
life_blkt_fpy=0,
z_tf_inside_half=9.0730900215620327,
@@ -416,9 +416,9 @@ class BldgsSizesParam(NamedTuple):
n_tf_coils=16,
i_tf_sup=1,
r_pf_coil_outer_max=18.982980877139834,
- tlife=40,
+ life_plant=40,
cplife=0,
- divlife=6.1337250397740126,
+ life_div_fpy=6.1337250397740126,
r_cryostat_inboard=19.482980877139834,
life_blkt_fpy=19.216116010620578,
z_tf_inside_half=9.0730900215620327,
@@ -683,9 +683,9 @@ def test_bldgs_sizes(buildings, bldgssizesparam, monkeypatch):
monkeypatch.setattr(
pfcoil_variables, "r_pf_coil_outer_max", bldgssizesparam.r_pf_coil_outer_max
)
- monkeypatch.setattr(cost_variables, "tlife", bldgssizesparam.tlife)
+ monkeypatch.setattr(cost_variables, "life_plant", bldgssizesparam.life_plant)
monkeypatch.setattr(cost_variables, "cplife", bldgssizesparam.cplife)
- monkeypatch.setattr(cost_variables, "divlife", bldgssizesparam.divlife)
+ monkeypatch.setattr(cost_variables, "life_div_fpy", bldgssizesparam.life_div_fpy)
monkeypatch.setattr(
fwbs_variables, "r_cryostat_inboard", bldgssizesparam.r_cryostat_inboard
)
diff --git a/tests/unit/test_costs_1990.py b/tests/unit/test_costs_1990.py
index 5ed3e2cd07..260bf883e9 100644
--- a/tests/unit/test_costs_1990.py
+++ b/tests/unit/test_costs_1990.py
@@ -5533,7 +5533,7 @@ class CoelcParam(NamedTuple):
uche3: Any = None
- tlife: Any = None
+ life_plant: Any = None
ifueltyp: Any = None
@@ -5549,21 +5549,21 @@ class CoelcParam(NamedTuple):
lsa: Any = None
- cfactr: Any = None
+ f_t_plant_available: Any = None
divcst: Any = None
ucfuel: Any = None
- divlife: Any = None
+ life_div_fpy: Any = None
- divlife_cal: Any = None
+ life_div: Any = None
coefuelt: Any = None
moneyint: Any = None
- cdrlife: Any = None
+ life_hcd_fpy: Any = None
cdrlife_cal: Any = None
@@ -5644,7 +5644,7 @@ class CoelcParam(NamedTuple):
CoelcParam(
fcdfuel=0.10000000000000001,
uche3=1000000,
- tlife=40,
+ life_plant=40,
ifueltyp=1,
cpstcst=0,
coeoam=0,
@@ -5652,14 +5652,14 @@ class CoelcParam(NamedTuple):
output_costs=0,
coe=0,
lsa=2,
- cfactr=0.75000000000000011,
+ f_t_plant_available=0.75000000000000011,
divcst=88.904644548525795,
ucfuel=3.4500000000000002,
- divlife=6.1337250397740126,
- divlife_cal=6.1337250397740126,
+ life_div_fpy=6.1337250397740126,
+ life_div=6.1337250397740126,
coefuelt=0,
moneyint=0,
- cdrlife=19.216116010620578,
+ life_hcd_fpy=19.216116010620578,
cdrlife_cal=19.216116010620578,
capcost=0,
cplife=0,
@@ -5728,7 +5728,7 @@ class CoelcParam(NamedTuple):
CoelcParam(
fcdfuel=0.10000000000000001,
uche3=1000000,
- tlife=40,
+ life_plant=40,
ifueltyp=1,
cpstcst=0,
coeoam=4.4099029328740929e20,
@@ -5736,14 +5736,14 @@ class CoelcParam(NamedTuple):
output_costs=0,
coe=6.9525339143363677e21,
lsa=2,
- cfactr=0.75000000000000011,
+ f_t_plant_available=0.75000000000000011,
divcst=88.904644548525795,
ucfuel=3.4500000000000002,
- divlife=6.145510750914414,
- divlife_cal=6.145510750914414,
+ life_div_fpy=6.145510750914414,
+ life_div=6.145510750914414,
coefuelt=1.4801870771036603e21,
moneyint=1001.1727468691442,
- cdrlife=19.222115557991025,
+ life_hcd_fpy=19.222115557991025,
cdrlife_cal=19.222115557991025,
capcost=7675.6577259967762,
cplife=0,
@@ -5828,7 +5828,7 @@ def test_coelc(coelcparam, monkeypatch, costs):
monkeypatch.setattr(cost_variables, "uche3", coelcparam.uche3)
- monkeypatch.setattr(cost_variables, "tlife", coelcparam.tlife)
+ monkeypatch.setattr(cost_variables, "life_plant", coelcparam.life_plant)
monkeypatch.setattr(cost_variables, "ifueltyp", coelcparam.ifueltyp)
@@ -5844,21 +5844,23 @@ def test_coelc(coelcparam, monkeypatch, costs):
monkeypatch.setattr(cost_variables, "lsa", coelcparam.lsa)
- monkeypatch.setattr(cost_variables, "cfactr", coelcparam.cfactr)
+ monkeypatch.setattr(
+ cost_variables, "f_t_plant_available", coelcparam.f_t_plant_available
+ )
monkeypatch.setattr(cost_variables, "divcst", coelcparam.divcst)
monkeypatch.setattr(cost_variables, "ucfuel", coelcparam.ucfuel)
- monkeypatch.setattr(cost_variables, "divlife", coelcparam.divlife)
+ monkeypatch.setattr(cost_variables, "life_div_fpy", coelcparam.life_div_fpy)
- monkeypatch.setattr(cost_variables, "divlife_cal", coelcparam.divlife_cal)
+ monkeypatch.setattr(cost_variables, "life_div", coelcparam.life_div)
monkeypatch.setattr(cost_variables, "coefuelt", coelcparam.coefuelt)
monkeypatch.setattr(cost_variables, "moneyint", coelcparam.moneyint)
- monkeypatch.setattr(cost_variables, "cdrlife", coelcparam.cdrlife)
+ monkeypatch.setattr(cost_variables, "life_hcd_fpy", coelcparam.life_hcd_fpy)
monkeypatch.setattr(cost_variables, "cdrlife_cal", coelcparam.cdrlife_cal)
diff --git a/tests/unit/test_ife.py b/tests/unit/test_ife.py
index 349c7f7db0..ea9b87100b 100644
--- a/tests/unit/test_ife.py
+++ b/tests/unit/test_ife.py
@@ -1254,9 +1254,9 @@ def test_iondrv(iondrvparam, ife):
class IfefbsParam(NamedTuple):
a_fw_total: Any = None
- tlife: Any = None
+ life_plant: Any = None
abktflnc: Any = None
- cfactr: Any = None
+ f_t_plant_available: Any = None
den_steel: Any = None
m_fw_total: Any = None
m_blkt_total: Any = None
@@ -1304,9 +1304,9 @@ class IfefbsParam(NamedTuple):
(
IfefbsParam(
a_fw_total=188.02432031734912,
- tlife=30.0,
+ life_plant=30.0,
abktflnc=20.0,
- cfactr=0.75000000000000011,
+ f_t_plant_available=0.75000000000000011,
den_steel=7800.0,
m_fw_total=0.0,
m_blkt_total=0.0,
@@ -1571,9 +1571,11 @@ def test_ifefbs(ifefbsparam, monkeypatch, ife):
:type monkeypatch: _pytest.monkeypatch.monkeypatch
"""
monkeypatch.setattr(build_variables, "a_fw_total", ifefbsparam.a_fw_total)
- monkeypatch.setattr(cost_variables, "tlife", ifefbsparam.tlife)
+ monkeypatch.setattr(cost_variables, "life_plant", ifefbsparam.life_plant)
monkeypatch.setattr(cost_variables, "abktflnc", ifefbsparam.abktflnc)
- monkeypatch.setattr(cost_variables, "cfactr", ifefbsparam.cfactr)
+ monkeypatch.setattr(
+ cost_variables, "f_t_plant_available", ifefbsparam.f_t_plant_available
+ )
monkeypatch.setattr(fwbs_variables, "den_steel", ifefbsparam.den_steel)
monkeypatch.setattr(fwbs_variables, "m_fw_total", ifefbsparam.m_fw_total)
monkeypatch.setattr(fwbs_variables, "m_blkt_total", ifefbsparam.m_blkt_total)
diff --git a/tests/unit/test_stellarator.py b/tests/unit/test_stellarator.py
index 85c8bbab95..0ecf7a2814 100644
--- a/tests/unit/test_stellarator.py
+++ b/tests/unit/test_stellarator.py
@@ -2910,8 +2910,8 @@ class SctfcoilNuclearHeatingIter90Param(NamedTuple):
dr_fw_outboard: Any = None
dr_shld_inboard: Any = None
dr_shld_outboard: Any = None
- cfactr: Any = None
- tlife: Any = None
+ f_t_plant_available: Any = None
+ life_plant: Any = None
pflux_fw_neutron_mw: Any = None
dr_tf_plasma_case: Any = None
i_tf_sup: Any = None
@@ -2941,8 +2941,8 @@ class SctfcoilNuclearHeatingIter90Param(NamedTuple):
dr_fw_outboard=0.018000000000000002,
dr_shld_inboard=0.20000000000000001,
dr_shld_outboard=0.20000000000000001,
- cfactr=0.75000000000000011,
- tlife=40,
+ f_t_plant_available=0.75000000000000011,
+ life_plant=40,
pflux_fw_neutron_mw=0.61095969282042206,
dr_tf_plasma_case=0.050000000000000003,
i_tf_sup=1,
@@ -3008,10 +3008,12 @@ def test_sctfcoil_nuclear_heating_iter90(
sctfcoilnuclearheatingiter90param.dr_shld_outboard,
)
monkeypatch.setattr(
- cost_variables, "cfactr", sctfcoilnuclearheatingiter90param.cfactr
+ cost_variables,
+ "f_t_plant_available",
+ sctfcoilnuclearheatingiter90param.f_t_plant_available,
)
monkeypatch.setattr(
- cost_variables, "tlife", sctfcoilnuclearheatingiter90param.tlife
+ cost_variables, "life_plant", sctfcoilnuclearheatingiter90param.life_plant
)
monkeypatch.setattr(
physics_variables,
diff --git a/tracking/tracking_data.py b/tracking/tracking_data.py
index 4a6fff5216..93c0c569e9 100644
--- a/tracking/tracking_data.py
+++ b/tracking/tracking_data.py
@@ -126,7 +126,7 @@
"PFCoil.vs_cs_pf_total_pulse",
"Physics.nd_plasma_ions_total_vol_avg",
"Time.t_plant_pulse_burn",
- "Cost.divlife",
+ "Cost.life_div_fpy",
"Cost.cdirt",
"Cost.concost",
}