Create parametric 3D fusion reactor CAD models
J. Shimwell, J. Billingsley, R Delaporte-Mathurin, D. Morbey, M. Bluteau, P. Shriwise, A. Davis
This work was funded by the RCUK Energy Programme
[Grant number EP/P012450/1]
Diagram / sketch / idea
Manual CAD model creation via GUI
CAD model geometry created
CAD model cleaned
Analysis
Shapes
Components
Reactors
Â
Â
Â
import paramak
height = 700
blanket_rear = 400
blanket_front = 300
blanket_mid_point = 350
blanket = paramak.RotateMixedShape(
rotation_angle=180,
points=[
(blanket_rear, height / 2.0, "straight"),
(blanket_rear, -height / 2.0, "straight"),
(blanket_front, -height / 2.0, "spline"),
(blanket_mid_point, 0, "spline"),
(blanket_front, height / 2.0, "straight"),
]
)
blanket.export_stp('"blanket.stp")
import paramak
blanket = paramak.RotateMixedShape(
rotation_angle=180,
points=[
(538, 305, "straight"),
(538, -305, "straight"),
(322, -305, "spline"),
(470, 0, "spline"),
(322, 305, "straight"),
]
)
blanket.export_stp("blanket.stp")
CAD from points
CAD from parameters
Rough estimate of how we have built up the number of parametric shapes, parametric components and parametric reactors over time.
Â
9
33
6
Geometry output formats:
Automatic conversion of geometry into neutronics model
Automated static code analysis with code-inspector.com
Automated docker build and distribution to dockerhub
Testing with Circle CI and Github Actions
Code coverage
Automated PyPi updating
Online Documentation
OpenMC: A state-of-the-art Monte Carlo code for research and development
Dimensional reduction removes some variables but the number of simulations require to explore the parameter space is stilll quite large.