Skip to content

Conversation

@jjwalkowiak
Copy link

Description

Main changes:

  • coil minor radius scaling for stellarators
  • corrected stress equation for vacuum vessel
  • corrected coil height (this was actually more on the pre-process side)
  • stellarator module refactoring

Checklist

I confirm that I have completed the following checks:

  • My changes follow the PROCESS style guide
  • I have justified any large differences in the regression tests caused by this pull request in the comments.
  • I have added new tests where appropriate for the changes I have made.
  • If I have had to change any existing unit or integration tests, I have justified this change in the pull request comments.
  • If I have made documentation changes, I have checked they render correctly.
  • I have added documentation for my change, if appropriate.

jjwalkowiak and others added 30 commits March 7, 2025 16:45
@jjwalkowiak jjwalkowiak requested a review from a team as a code owner February 3, 2026 15:19
@timothy-nunn timothy-nunn self-assigned this Feb 3, 2026
Copy link
Collaborator

@timothy-nunn timothy-nunn left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is just a rough first review. Once these changes have been actioned I can do a more detailed review and get @ym1906 involved (and maybe others).

I notice that there are quite a few style violations. Most of these can be solved by using pre-commit https://ukaea.github.io/PROCESS/development/pre-commit/.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This file is automatically generated and should not be committed. Please remove iot

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These are probably not appropriate to be added into the main PROCESS branch.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure what this file is for. It should probably be removed

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this a copy of the list from numerics.py? I think we should avoid duplicating this list

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this a copy of the list from numerics.py? I think we should avoid duplicating this list

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
def print_output(stellarator, bt_ecrh, ne0_max_ECRH):
def output(stellarator, bt_ecrh, ne0_max_ECRH):

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
def print_output(stellarator, a_eff, l_d, l_w, f_x, l_q, w_r, Delta):
def output(stellarator, a_eff, l_d, l_w, f_x, l_q, w_r, Delta):

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
def print_output(stellarator, f_p_beam_injected_ions=None):
def output(stellarator, f_p_beam_injected_ions=None):

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Docstring

Comment on lines +1605 to +1618
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
# if (fwbs_variables.blktmodel == 0) :
# if ((fwbs_variables.blkttype == 1)or(fwbs_variables.blkttype == 2)) :
# po.write(self.outfile,601) vol_blkt_inboard, vol_blkt_outboard, vol_blkt_total, m_blkt_total, f_a_blkt_cooling_channels, fbllipb, wtbllipb, fblli, m_blkt_lithium, fblss, m_blkt_steel_total, fblvd, m_blkt_vanadium, vol_shld_inboard, vol_shld_outboard, vol_shld_total, whtshld, vfshld, fwbs_variables.wpenshld
# else: # (also if ipowerflow=0)
# po.write(self.outfile,600) vol_blkt_inboard, vol_blkt_outboard, vol_blkt_total, m_blkt_total, f_a_blkt_cooling_channels, fblbe, m_blkt_beryllium, fblli2o, m_blkt_li2o, fblss, m_blkt_steel_total, fblvd, m_blkt_vanadium, vol_shld_inboard, vol_shld_outboard, vol_shld_total, whtshld, vfshld, fwbs_variables.wpenshld
# else:
# po.write(self.outfile,602) vol_blkt_inboard, vol_blkt_outboard, vol_blkt_total, m_blkt_total, f_a_blkt_cooling_channels, (fwbs_variables.vol_blkt_inboard/fwbs_variables.vol_blkt_total * build_variables.blbuith/build_variables.dr_blkt_inboard + fwbs_variables.vol_blkt_outboard/fwbs_variables.vol_blkt_total * build_variables.blbuoth/build_variables.dr_blkt_outboard) * fblbe, m_blkt_beryllium, (fwbs_variables.vol_blkt_inboard/fwbs_variables.vol_blkt_total * build_variables.blbuith/build_variables.dr_blkt_inboard + fwbs_variables.vol_blkt_outboard/fwbs_variables.vol_blkt_total * build_variables.blbuoth/build_variables.dr_blkt_outboard) * fblbreed, whtblbreed, fwbs_variables.vol_blkt_inboard/fwbs_variables.vol_blkt_total/build_variables.dr_blkt_inboard * (build_variables.blbuith * fwbs_variables.fblss + build_variables.blbmith * (1.0e0-fwbs_variables.fblhebmi) + build_variables.blbpith * (1.0e0-fwbs_variables.fblhebpi)) + fwbs_variables.vol_blkt_outboard/fwbs_variables.vol_blkt_total/build_variables.dr_blkt_outboard * (build_variables.blbuoth * fwbs_variables.fblss + build_variables.blbmoth * (1.0e0-fwbs_variables.fblhebmo) + build_variables.blbpoth * (1.0e0-fwbs_variables.fblhebpo)), m_blkt_steel_total, vol_shld_inboard, vol_shld_outboard, vol_shld_total, whtshld, vfshld, fwbs_variables.wpenshld
# 600 format( t32,'volume (m3)',t45,'vol fraction',t62,'weight (kg)'/ t32,'-----------',t45,'------------',t62,'-----------'/ ' Inboard blanket' ,t32,1pe10.3,/ ' Outboard blanket' ,t32,1pe10.3,/ ' Total blanket' ,t32,1pe10.3,t62,1pe10.3/ ' Void fraction' ,t45,1pe10.3,/ ' Blanket Be ',t45,1pe10.3,t62,1pe10.3/ ' Blanket Li2O ',t45,1pe10.3,t62,1pe10.3/ ' Blanket ss ',t45,1pe10.3,t62,1pe10.3/ ' Blanket Vd ',t45,1pe10.3,t62,1pe10.3/ ' Inboard shield' ,t32,1pe10.3,/ ' Outboard shield' ,t32,1pe10.3,/ ' Primary shield',t32,1pe10.3,t62,1pe10.3/ ' Void fraction' ,t45,1pe10.3,/ ' Penetration shield' ,t62,1pe10.3)
# 601 format( t32,'volume (m3)',t45,'vol fraction',t62,'weight (kg)'/ t32,'-----------',t45,'------------',t62,'-----------'/ ' Inboard blanket' ,t32,1pe10.3,/ ' Outboard blanket' ,t32,1pe10.3,/ ' Total blanket' ,t32,1pe10.3,t62,1pe10.3/ ' Void fraction' ,t45,1pe10.3,/ ' Blanket LiPb ',t45,1pe10.3,t62,1pe10.3/ ' Blanket Li ',t45,1pe10.3,t62,1pe10.3/ ' Blanket ss ',t45,1pe10.3,t62,1pe10.3/ ' Blanket Vd ',t45,1pe10.3,t62,1pe10.3/ ' Inboard shield' ,t32,1pe10.3,/ ' Outboard shield' ,t32,1pe10.3,/ ' Primary shield',t32,1pe10.3,t62,1pe10.3/ ' Void fraction' ,t45,1pe10.3,/ ' Penetration shield' ,t62,1pe10.3)
# 602 format( t32,'volume (m3)',t45,'vol fraction',t62,'weight (kg)'/ t32,'-----------',t45,'------------',t62,'-----------'/ ' Inboard blanket' ,t32,1pe10.3,/ ' Outboard blanket' ,t32,1pe10.3,/ ' Total blanket' ,t32,1pe10.3,t62,1pe10.3/ ' Void fraction' ,t45,1pe10.3,/ ' Blanket Be ',t45,1pe10.3,t62,1pe10.3/ ' Blanket breeder',t45,1pe10.3,t62,1pe10.3/ ' Blanket steel',t45,1pe10.3,t62,1pe10.3/ ' Inboard shield' ,t32,1pe10.3,/ ' Outboard shield' ,t32,1pe10.3,/ ' Primary shield',t32,1pe10.3,t62,1pe10.3/ ' Void fraction' ,t45,1pe10.3,/ ' Penetration shield' ,t62,1pe10.3)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants