Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update first wall variables for clarity #3502

Merged
merged 34 commits into from
Feb 18, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
1981d15
:sparkle: Create new den_tungsten variable in constants and implement…
chris-ashe Jan 26, 2025
ff8f4a6
:fire: Remove `denw` variable and its references for tungsten density…
chris-ashe Jan 26, 2025
917da20
🔄 Rename `iblanket` to `i_blanket_type` for consistency across multip…
chris-ashe Jan 26, 2025
ec02c7b
🔄 Rename `fwinlet` to `temp_fw_coolant_in` for clarity and consistenc…
chris-ashe Jan 26, 2025
c6e84bf
🔄 Rename `fwoutlet` to `temp_fw_coolant_out` for clarity and consiste…
chris-ashe Jan 26, 2025
5e4bb6f
🔄 Rename `fwpressure` to `pres_fw_coolant` for clarity and consistenc…
chris-ashe Jan 26, 2025
2f68e23
🔄 Rename `fwareaib` to `a_fw_inboard` for clarity and consistency acr…
chris-ashe Jan 26, 2025
ba30d59
🔄 Rename `fwareaob` to `a_fw_outboard` for clarity and consistency ac…
chris-ashe Jan 26, 2025
7103edb
🔄 Rename `fwarea` to `a_fw_total` for clarity and consistency across …
chris-ashe Jan 26, 2025
1700ac1
🔄 Rename `volfw` to `vol_fw_total` for clarity and consistency across…
chris-ashe Jan 26, 2025
a298277
🔄 Rename `vffwo` to `f_a_fw_coolant_outboard` for clarity and consist…
chris-ashe Jan 26, 2025
4edd2fe
🔄 Rename `vffwi` to `f_a_fw_coolant_inboard` for clarity and consiste…
chris-ashe Jan 26, 2025
06e50e8
🔄 Rename `fwmass` to `m_fw_total` for clarity and consistency across …
chris-ashe Jan 26, 2025
761324d
🔄 Rename `fwcoolant` to `i_fw_coolant_type` for clarity and consisten…
chris-ashe Jan 26, 2025
a644392
🔄 Rename `afw` to `radius_fw_channel` for clarity and consistency acr…
chris-ashe Jan 31, 2025
4690521
🔄 Rename `fw_wall` to `dr_fw_wall` for clarity and consistency across…
chris-ashe Jan 31, 2025
d1fc3cc
🔄 Rename `pitch` to `dx_fw_module` for clarity and consistency across…
chris-ashe Jan 31, 2025
d64594c
🔄 Update description of `dx_fw_module` for clarity and consistency ac…
chris-ashe Jan 31, 2025
e7ab4d4
🔄 Refactor `fw_temp` method parameters and variable names for clarity…
chris-ashe Jan 31, 2025
ff767fd
Fix unit tests
chris-ashe Feb 13, 2025
dc3572b
:memo: Update documentation to include standards for component lifeti…
chris-ashe Feb 17, 2025
c53fe8c
🔄 Rename `fwlife` to `life_fw_fpy` for clarity and consistency across…
chris-ashe Feb 17, 2025
f2b2576
🔄 Rename `pnucfw` to `p_fw_nuclear_mw` for clarity and consistency ac…
chris-ashe Feb 17, 2025
1ba4c6e
🔄 Rename `fw_channel_length` to `len_fw_channel` for clarity and cons…
chris-ashe Feb 17, 2025
81bc55a
🔄 Rename `tpeak` to `temp_fw_peak` for clarity and consistency across…
chris-ashe Feb 17, 2025
f2a7520
🔄 Rename `tfwmatmax` to `temp_fw_max` for clarity and consistency acr…
chris-ashe Feb 17, 2025
73fef55
🔄 Rename `rhof_fw` to `den_fw_coolant` for clarity and consistency ac…
chris-ashe Feb 17, 2025
f6b2051
:memo: Update documentation to include standards for viscosity variab…
chris-ashe Feb 17, 2025
b37069c
🔄 Rename `visc_fw` to `visc_fw_coolant` for clarity and consistency a…
chris-ashe Feb 17, 2025
9afa87a
🔄 Rename `peaking_factor` to `f_fw_peak` for clarity and consistency …
chris-ashe Feb 17, 2025
a7eaccf
🔄 Rename obsolete variables for clarity and consistency across the co…
chris-ashe Feb 17, 2025
3657528
🔄 Rename p_fw_nuclear_mw to p_fw_nuclear_heat_total_mw for clarity an…
chris-ashe Feb 17, 2025
6912027
🔄 Add obsolete variable 'denw' to OBS_VARS for clarity and consistenc…
chris-ashe Feb 18, 2025
724c025
Update ST tests
chris-ashe Feb 18, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 15 additions & 0 deletions documentation/proc-pages/development/standards.md
Original file line number Diff line number Diff line change
Expand Up @@ -334,6 +334,21 @@ This should be used for units of $\text{kg} \cdot \text{m}^{-2}\text{s}^{-1}$

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

##### Lifetimes

- Lifetimes of componenets should start with the `life_` prefix.

The unit declaration `_fpy` can be used to specify that it is the full-power year lifetime.

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

##### Viscosities

- Viscosities should start with the `visc_` prefix.

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


##### Variables representing fractions

If a variable is intended to demonstrate a fraction of a value or distribution etc. Then it should start with the `f_` prefix.
Expand Down
38 changes: 19 additions & 19 deletions documentation/proc-pages/eng-models/fw-blanket.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ The models used for the thermoydraulics of the first wall, the profile of
deposition of the neutron energy, tritium breeding, and conversion of heat to
electricity have been revised extensively.

`iblanket` -- This switch selects between different types of blanket.
`i_blanket_type` -- This switch selects between different types of blanket.

- `== 1` -- CCFE HCPB (helium-cooled pebble bed) model. The energy
deposition in the armour and first wall, blanket and shield are calculated
Expand Down Expand Up @@ -75,20 +75,20 @@ Summary of key variables and switches:
| | First Wall | Breeding Blanket Primary | Liquid Breeder/Coolant |
| :----------------------: | :---------------------: | ------------------------ | ------------------------------------ |
| Coolant Channels | :-----------: | ------------------------ | -------------------------- |
| length (m) | `fw_channel_length` | --- | --- |
| width (m) | `afw` (radius, cicular) | `afw` | `a_bz_liq`, `b_bz_liq` (rectangular) |
| wall thickness (m) | `fw_wall` | fw_wall | `th_wall_secondary` |
| pitch (m) | `pitch` | --- | --- |
| length (m) | `len_fw_channel` | --- | --- |
| width (m) | `radius_fw_channel` (radius, cicular) | `radius_fw_channel` | `a_bz_liq`, `b_bz_liq` (rectangular) |
| wall thickness (m) | `dr_fw_wall` | dr_fw_wall | `th_wall_secondary` |
| dx_fw_module (m) | `dx_fw_module` | --- | --- |
| roughness epsilon | `roughness` | --- | --- |
| peak FW temp (K) | `tpeak` | --- | --- |
| maximum temp (K) | `tfwmatmax` | --- | --- |
| peak FW temp (K) | `temp_fw_peak` | --- | --- |
| maximum temp (K) | `temp_fw_max` | --- | --- |
| FCI switch | --- | --- | `ifci` |
| Coolant | :-----------: | ------------------------ | -------------------------- |
| primary coolant switch | `fwcoolant` | `coolwh` | --- |
| primary coolant switch | `i_fw_coolant_type` | `coolwh` | --- |
| secondary coolant switch | --- | --- | `i_bb_liq` |
| inlet temp (K) | `fwinlet` | `inlet_temp` | `inlet_temp_liq` |
| outlet temp (K) | `fwoutlet` | `outlet_temp` | `outlet_temp_liq` |
| pressure (Pa) | `fwpressure` | `blpressure` | `blpressure_liq` |
| inlet temp (K) | `temp_fw_coolant_in` | `inlet_temp` | `inlet_temp_liq` |
| outlet temp (K) | `temp_fw_coolant_out` | `outlet_temp` | `outlet_temp_liq` |
| pressure (Pa) | `pres_fw_coolant` | `blpressure` | `blpressure_liq` |

The default thermo-hydraulic model assumes that a solid breeder is in use, with both the first wall and the breeding blanket using helium as a coolant.
This can be changed using the switches detailed in the following subsection.
Expand All @@ -110,7 +110,7 @@ Minimum distance travelled by surface heat load = $\texttt{fw} \_ \texttt{wall}$
Maximum distance travelled by surface heat load = $\texttt{diagonal}$

$$
\texttt{diagonal}=\sqrt{(\texttt{afw}+\texttt{fw} \_ \texttt{wall})^2 + \left(\frac{\texttt{pitch}}{2}-\texttt{afw}\right)^2 }
\texttt{diagonal}=\sqrt{(\texttt{radius_fw_channel}+\texttt{fw} \_ \texttt{wall})^2 + \left(\frac{\texttt{dx_fw_module}}{2}-\texttt{radius_fw_channel}\right)^2 }
$$

Typical distance travelled by surface heat load:
Expand All @@ -121,15 +121,15 @@ $$


$$
\texttt{diagonal}=\sqrt{(\texttt{afw}+\texttt{fw} \_ \texttt{wall})^2 + \left(\frac{\texttt{pitch}}{2}-\texttt{afw}\right)^2 }
\texttt{diagonal}=\sqrt{(\texttt{radius_fw_channel}+\texttt{fw} \_ \texttt{wall})^2 + \left(\frac{\texttt{dx_fw_module}}{2}-\texttt{radius_fw_channel}\right)^2 }
$$

The energy travels over a cross-section which is initially $= \texttt{pitch}$
The energy travels over a cross-section which is initially $= \texttt{dx_fw_module}$
It spreads out, arriving at the coolant pipe over an area of half the circumference.
We use the mean of these values:

$$
\texttt{mean} \_ \texttt{width} = \frac{\texttt{pitch} + \pi \times \texttt{afw}}{2}
\texttt{mean} \_ \texttt{width} = \frac{\texttt{dx_fw_module} + \pi \times \texttt{radius_fw_channel}}{2}
$$

The temperature difference between the plasma-facing surface and the coolant is then:
Expand Down Expand Up @@ -159,8 +159,8 @@ There are three blanket model options, chosen by the user to match their selecte
The default assuption for all blanket models is that the first wall and breeding blanket have the same coolant (flow = FW inlet -> FW outlet -> BB inlet-> BB outlet).
It is possible to choose a different coolant for the FW and breeding blanket, in which case the mechanical pumping powers for the FW and BB are calculated seperately.
The model has three mechanical pumping power options, chosen by the user to match their selected blanket design using the switch 'ipump' (default=0):
0. Same coolant for FW and BB ('fwcoolant`=`coolwh`)
1. Different coolant for FW and BB ('fwcoolant`/=`coolwh`)
0. Same coolant for FW and BB ('i_fw_coolant_type`=`coolwh`)
1. Different coolant for FW and BB ('i_fw_coolant_type`/=`coolwh`)

!!! Note "Note"
For the dual-coolant blanket the 'ipump' switch is relavent for the blanket structure coolant and not the liquid metal breeder/coolant choice.
Expand Down Expand Up @@ -190,8 +190,8 @@ The Hartmann number is also calculated (using the magnetic feild strength in the
| `inlet_temp_liq` | K | 68 | idualcool=1,2 | 570 | Inlet temperatute of liquid metal breeder/coolant |
| `outlet_temp_liq` | K | 69 | idualcool=1,2 | 720 | Outlet temperatute of liquid metal breeder/coolant |
| `n_liq_recirc` | --- | 71 | idualcool=1 | 10 | Number of liquid metal breeder recirculations per day |
| `f_nuc_pow_bz_struct` | --- | 73 | iblanket=5 | 0.34 | FW nuclear power as fraction of total |
| `f_nuc_pow_bz_liq` | --- | 74 | iblanket=5 | 0.66 | Fraction of BZ power cooled by primary coolant |
| `f_nuc_pow_bz_struct` | --- | 73 | i_blanket_type=5 | 0.34 | FW nuclear power as fraction of total |
| `f_nuc_pow_bz_liq` | --- | 74 | i_blanket_type=5 | 0.66 | Fraction of BZ power cooled by primary coolant |

#### Flow Channel Inserts for Liquid Metal Breeder

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ for the primary coolant.
the coolant channel diameter, and the segmentation of the blanket are used. The peak temperature
in the first wall material (underneath the armour) is derived. The user can apply an upper limit
to this temperature, and if this constraint is used then it is strongly recommended to set the
length of the first wall pipe (`fw_channel_length`) as an iteration variable. The Gnielinski
length of the first wall pipe (`len_fw_channel`) as an iteration variable. The Gnielinski
correlation is used to determine the heat transfer in the channel. The stresses in the first
wall are currently taken into account.
- The mechanical pumping power required for the first wall and breeder zone is calculated using
Expand Down
10 changes: 5 additions & 5 deletions examples/data/csv_output_large_tokamak_MFILE.DAT
Original file line number Diff line number Diff line change
Expand Up @@ -960,12 +960,12 @@
Coolant_fraction________________________________________________________ (vfcblkt)_____________________ 5.2950E-02
Purge_gas_fraction______________________________________________________ (vfpblkt)_____________________ 1.0000E-01
First_Wall_Armour_Volume_(m3)___________________________________________ (fw_armour_vol)_______________ 5.8692E+00
First_Wall_Volume_(m3)__________________________________________________ (volfw)_______________________ 1.9807E+01
First_Wall_Volume_(m3)__________________________________________________ (vol_fw_total)_______________________ 1.9807E+01
Blanket_Volume_(m3)_____________________________________________________ (volblkt)_____________________ 1.1849E+03
Shield_Volume_(m3)______________________________________________________ (volshld)_____________________ 7.8520E+02
Vacuum_vessel_volume_(m3)_______________________________________________ (vdewin)______________________ 1.0178E+03
First_Wall_Armour_Mass_(kg)_____________________________________________ (fw_armour_mass)______________ 1.1298E+05 OP
First_Wall_Mass,_excluding_armour_(kg)__________________________________ (fwmass)______________________ 1.5449E+05 OP
First_Wall_Mass,_excluding_armour_(kg)__________________________________ (m_fw_total)______________________ 1.5449E+05 OP
Blanket_Mass_-_Total(kg)________________________________________________ (whtblkt)_____________________ 2.9676E+06 OP
____Blanket_Mass_-_TiBe12_(kg)__________________________________________ (whtbltibe12)_________________ 1.0042E+06 OP
____Blanket_Mass_-_Li4SiO4_(kg)_________________________________________ (whtblli4sio4)________________ 1.0664E+06 OP
Expand All @@ -974,7 +974,7 @@
Shield_Mass_(kg)________________________________________________________ (whtshld)_____________________ 2.4498E+06 OP
Vacuum_vessel_mass_(kg)_________________________________________________ (vvmass)______________________ 7.9388E+06 OP
Total_nuclear_heating_in_TF+PF_coils_(CS_is_negligible)_(MW)____________ (ptfnuc)______________________ 2.2718E-02 OP
Total_nuclear_heating_in_FW_(MW)________________________________________ (pnucfw)______________________ 1.6038E+02 OP
Total_nuclear_heating_in_FW_(MW)________________________________________ (p_fw_nuclear_heat_total_mw)______________________ 1.6038E+02 OP
Total_nuclear_heating_in_the_blanket_(including_emult)_(MW)_____________ (pnucblkt)____________________ 1.2682E+03 OP
Total_nuclear_heating_in_the_shield_(MW)________________________________ (pnucshld)____________________ 1.3897E+00 OP
Total_nuclear_heating_in_the_divertor_(MW)______________________________ (pnucdiv)_____________________ 1.4652E+02 OP
Expand All @@ -983,15 +983,15 @@
Shield:_second_exponential______________________________________________ (exp_shield2)_________________ 2.5427E-01 OP
Solid_angle_fraction_taken_by_on_divertor_______________________________ (fdiv)________________________ 1.1500E-01
Switch_for_plant_secondary_cycle________________________________________ (secondary_cycle)_____________ 2
First_wall_coolant_pressure_(Pa)________________________________________ (fwpressure)__________________ 1.5500E+07
First_wall_coolant_pressure_(Pa)________________________________________ (pres_fw_coolant)__________________ 1.5500E+07
Blanket_coolant_pressure_(Pa)___________________________________________ (blpressure)__________________ 1.5500E+07
Allowable_nominal_neutron_fluence_at_first_wall_(MW.year/m2)____________ (abktflnc)____________________ 5.0000E+00
No_of_inboard_blanket_modules_poloidally________________________________ (nblktmodpi)__________________ 7
No_of_inboard_blanket_modules_toroidally________________________________ (nblktmodti)__________________ 32
No_of_outboard_blanket_modules_poloidally_______________________________ (nblktmodpo)__________________ 8
No_of_outboard_blanket_modules_toroidally_______________________________ (nblktmodto)__________________ 48
Isentropic_efficiency_of_first_wall_/_blanket_coolant_pumps_____________ (etaiso)______________________ 9.0000E-01
First_wall_area_(m2)____________________________________________________ (fwarea)______________________ 1.6044E+03 OP
First_wall_area_(m2)____________________________________________________ (a_fw_total)______________________ 1.6044E+03 OP
Cryostat_internal_radius_(m)____________________________________________ (r_cryostat_inboard)______________________ 1.7769E+01 OP
Cryostat_internal_half-height_(m)_______________________________________ (z_cryostat_half_inside)______________________ 1.5292E+01 OP
Vertical_clearance_from_TF_coil_to_cryostat_(m)_________________________ (dz_tf_cryostat)________________________ 5.6091E+00 OP
Expand Down
10 changes: 5 additions & 5 deletions examples/data/large_tokamak_1_MFILE.DAT
Original file line number Diff line number Diff line change
Expand Up @@ -955,12 +955,12 @@
Coolant_fraction________________________________________________________ (vfcblkt)_____________________ 5.2950E-02
Purge_gas_fraction______________________________________________________ (vfpblkt)_____________________ 1.0000E-01
First_Wall_Armour_Volume_(m3)___________________________________________ (fw_armour_vol)_______________ 5.8692E+00
First_Wall_Volume_(m3)__________________________________________________ (volfw)_______________________ 1.9807E+01
First_Wall_Volume_(m3)__________________________________________________ (vol_fw_total)_______________________ 1.9807E+01
Blanket_Volume_(m3)_____________________________________________________ (volblkt)_____________________ 1.1849E+03
Shield_Volume_(m3)______________________________________________________ (volshld)_____________________ 7.8520E+02
Vacuum_vessel_volume_(m3)_______________________________________________ (vdewin)______________________ 1.0178E+03
First_Wall_Armour_Mass_(kg)_____________________________________________ (fw_armour_mass)______________ 1.1298E+05 OP
First_Wall_Mass,_excluding_armour_(kg)__________________________________ (fwmass)______________________ 1.5449E+05 OP
First_Wall_Mass,_excluding_armour_(kg)__________________________________ (m_fw_total)______________________ 1.5449E+05 OP
Blanket_Mass_-_Total(kg)________________________________________________ (whtblkt)_____________________ 2.9676E+06 OP
____Blanket_Mass_-_TiBe12_(kg)__________________________________________ (whtbltibe12)_________________ 1.0042E+06 OP
____Blanket_Mass_-_Li4SiO4_(kg)_________________________________________ (whtblli4sio4)________________ 1.0664E+06 OP
Expand All @@ -969,7 +969,7 @@
Shield_Mass_(kg)________________________________________________________ (whtshld)_____________________ 2.4498E+06 OP
Vacuum_vessel_mass_(kg)_________________________________________________ (vvmass)______________________ 7.9388E+06 OP
Total_nuclear_heating_in_TF+PF_coils_(CS_is_negligible)_(MW)____________ (ptfnuc)______________________ 2.5118E-02 OP
Total_nuclear_heating_in_FW_(MW)________________________________________ (pnucfw)______________________ 1.6315E+02 OP
Total_nuclear_heating_in_FW_(MW)________________________________________ (p_fw_nuclear_heat_total_mw)______________________ 1.6315E+02 OP
Total_nuclear_heating_in_the_blanket_(including_emult)_(MW)_____________ (pnucblkt)____________________ 1.2901E+03 OP
Total_nuclear_heating_in_the_shield_(MW)________________________________ (pnucshld)____________________ 1.4138E+00 OP
Total_nuclear_heating_in_the_divertor_(MW)______________________________ (pnucdiv)_____________________ 1.4906E+02 OP
Expand All @@ -978,15 +978,15 @@
Shield:_second_exponential______________________________________________ (exp_shield2)_________________ 2.5427E-01 OP
Solid_angle_fraction_taken_by_on_divertor_______________________________ (fdiv)________________________ 1.1500E-01
Switch_for_plant_secondary_cycle________________________________________ (secondary_cycle)_____________ 2
First_wall_coolant_pressure_(Pa)________________________________________ (fwpressure)__________________ 1.5500E+07
First_wall_coolant_pressure_(Pa)________________________________________ (pres_fw_coolant)__________________ 1.5500E+07
Blanket_coolant_pressure_(Pa)___________________________________________ (blpressure)__________________ 1.5500E+07
Allowable_nominal_neutron_fluence_at_first_wall_(MW.year/m2)____________ (abktflnc)____________________ 5.0000E+00
No_of_inboard_blanket_modules_poloidally________________________________ (nblktmodpi)__________________ 7
No_of_inboard_blanket_modules_toroidally________________________________ (nblktmodti)__________________ 32
No_of_outboard_blanket_modules_poloidally_______________________________ (nblktmodpo)__________________ 8
No_of_outboard_blanket_modules_toroidally_______________________________ (nblktmodto)__________________ 48
Isentropic_efficiency_of_first_wall_/_blanket_coolant_pumps_____________ (etaiso)______________________ 9.0000E-01
First_wall_area_(m2)____________________________________________________ (fwarea)______________________ 1.6044E+03 OP
First_wall_area_(m2)____________________________________________________ (a_fw_total)______________________ 1.6044E+03 OP
Cryostat_internal_radius_(m)____________________________________________ (r_cryostat_inboard)______________________ 1.7798E+01 OP
Cryostat_internal_half-height_(m)_______________________________________ (z_cryostat_half_inside)______________________ 1.5339E+01 OP
Vertical_clearance_from_TF_coil_to_cryostat_(m)_________________________ (dz_tf_cryostat)________________________ 5.6044E+00 OP
Expand Down
Loading
Loading