
A User Guide to the PROCESS Fusion Reactor Systems Code P. J. Knight M. D. Kovari Culham Centre for Fusion Energy Culham Science Centre, Abingdon, Oxon, OX14 3DB, UK 12 January 2016 PROCESS version: r412 1 Contents 1 Introduction 9 1.1 Rationale ....................................... .... 9 1.2 History ......................................... ... 9 1.3 Sourcesofinformation . ........ 10 2 Program Overview — The Fundamental Concepts 11 2.1 EquationSolvers ................................. ...... 11 2.1.1 Non-optimisationmode . 11 2.1.2 Optimisationmode.............................. 11 2.1.3 Scans ......................................... 15 2.2 TheVariableDescriptorFile . ......... 15 2.3 InputParameters................................. ...... 15 2.4 IterationVariables .............................. ........ 15 2.5 ConstraintEquations. ........ 19 2.5.1 Consistencyequations . ...... 19 2.5.2 Limitequations................................ 19 2.6 FiguresofMerit .................................. ..... 22 2.7 ScanningVariables ............................... ....... 22 3 Physics, Engineering and Other Models 25 3.1 TokamakPowerPlant ............................... ..... 25 3.1.1 Radialandverticalbuild . ...... 25 3.1.2 Plasmaphysicsmodels. ..... 28 3.1.3 Armour, first wall and breeding blanket . ........ 39 3.1.4 Shield ........................................ 42 3.1.5 Divertor...................................... 42 3.1.6 Toroidalfieldcoils .............................. 42 3.1.7 Poloidalfieldcoils .............................. 45 2 3.1.8 Centralsolenoid ............................... 47 3.1.9 Auxiliary power systems: heating and current drive . ............. 48 3.1.10 Structuralcomponents. ....... 51 3.1.11 Cryostat and vacuum system . ...... 51 3.1.12 Power conversion and heat dissipation systems . ............. 51 3.1.13 Buildings .................................... 54 3.2 SphericalTokamakModel . ....... 54 3.2.1 Spherical tokamak switches . ....... 55 3.3 PulsedPlantOperation . ....... 55 3.3.1 Thermalcyclingpackage. ...... 55 3.3.2 First wall coolant temperature rise limit . ............ 56 3.3.3 Firstwallpeaktemperaturelimit. ......... 56 3.3.4 Start-uppowerrequirements . ...... 56 3.3.5 Plasmacurrentramp-uptime . ..... 56 3.3.6 Burntime...................................... 56 3.3.7 Thermalstorage ................................ 56 3.4 HydrogenProductionFacility . .......... 57 3.5 StellaratorModel................................ ....... 57 3.5.1 Stellaratorphysics . ...... 58 3.5.2 Machineconfiguration . 61 3.6 ReversedFieldPinchModel. ........ 62 3.6.1 RFPphysics .................................... 62 3.6.2 TFcoils....................................... 63 3.6.3 Ohmicheatingcoils ............................. 64 3.6.4 EFcoils....................................... 64 3.6.5 Divertor...................................... 64 3.6.6 Codemodifications............................... 64 3.7 InertialFusionEnergyModel . ......... 64 3.8 SafetyandEnvironmentModels. ......... 65 3.8.1 Neutronics .................................... 65 3.8.2 Activation and inventory information . .......... 66 3.9 CostModels...................................... 66 3.9.1 1990 cost model (cost model = 0)......................... 66 3.9.2 2015 Kovari model (cost model = 1) ....................... 67 3.10 Plantavailability . ......... 67 3 4 Running PROCESS 69 4.1 Environmentset-up ................................ ..... 69 4.2 UserInterface................................... ...... 69 4.3 ExecutingtheCode ................................ ..... 71 4.4 TheInputFile .................................... 71 4.5 TheOutputFiles.................................. ..... 71 4.6 Optimisationmode................................ ...... 71 4.7 Non-optimisationmode ............................. ...... 72 4.8 Troubleshooting................................. ....... 72 4.8.1 Errorhandling ................................. 73 4.8.2 Generalproblems............................... 73 4.8.3 Optimisationproblems. ...... 73 4.8.4 Unfeasibleresults. ...... 74 4.8.5 Hints ......................................... 75 5 Changing the Source Code: New Models, Variables and Constraints 76 5.1 SourceCodeModification . ...... 76 5.1.1 ChangingtheFortrancode . ..... 76 5.1.2 Sourcecodedocumentation . ...... 77 5.2 InputParameters................................. ...... 78 5.3 IterationVariables .............................. ........ 78 5.4 OtherGlobalVariables. ........ 79 5.5 ConstraintEquations. ........ 79 5.6 FiguresofMerit .................................. ..... 80 5.7 ScanningVariables ............................... ....... 80 5.8 SubmissionofNewModels. ....... 81 5.9 CodeStructure ................................... ..... 81 5.9.1 Numericsmodules ............................... 81 5.9.2 Physicsmodules ................................ 81 5.9.3 Engineeringmodules. ..... 82 5.9.4 Costingmodule................................. 82 5.9.5 Othermodules .................................. 82 6 Utility Programs 84 6.1 Executables..................................... ..... 84 6.1.1 Turn output into input (write new in dat.py) ................... 84 4 6.1.2 Randomly vary the starting point (run process.py) ................ 85 6.1.3 List PROCESS runs with comments (build index.py)................ 86 6.1.4 test process.py .................................... 87 6.1.5 Output plotting: create data file (make plot dat.py) ............... 88 6.1.6 Create a two-page summary (plot proc.py) .................... 89 6.1.7 output data.py .................................... 89 6.1.8 plot sweep.py..................................... 90 6.1.9 Plot scan results (plot mfile sweep.py) ....................... 90 6.1.10 Plot iteration variables and constraint residuals (diagnose process.py) . 90 6.1.11 fit profile.py...................................... 91 6.1.12 Step from one model to another (a to b.py).................... 91 6.1.13 N-Dimensional Scanner Utility . ........ 93 6.1.14 UncertaintyTools . ..... 95 6.1.15 create dicts.py .................................... 99 6.1.16 BatchJobs .................................... 99 6.1.17 mfile comparison.py ................................. 100 6.1.18 test suite.py...................................... 100 6.2 PythonLibraries ................................. 104 6.2.1 in dat.py ....................................... 104 6.2.2 mfile.py ........................................ 105 6.2.3 process funcs.py ................................... 106 6.2.4 process config.py ................................... 107 6.2.5 process dicts.py.................................... 109 6.2.6 a to b config.py.................................... 109 6.2.7 proc plot func.py................................... 110 6.2.8 diagnose funcs.py................................... 110 6.3 UserInterface................................... 110 7 Code Management Tools 111 7.1 TheMakefile ....................................... 111 7.1.1 Compilation................................... 111 7.1.2 Archivingutilities . 112 7.1.3 Codedocumentation . 112 7.2 AutomaticDocumentation. ........ 112 7.3 CodeUpdatesandReleaseProcedure . ......... 113 7.3.1 Initialaccesstothesourcecode. ......... 113 5 7.3.2 Gitworkflow ..................................... 113 7.3.3 Fullcoderebuild ............................... 117 8 Acknowledgements & Bibliography 118 A The Optimisation Solver Explained 124 A.1 The General Nonlinear Programming Problem . ........... 124 A.2 TheLagrangeMethod ............................... 126 A.3 Sequential Quadratic Programming (SQP) . ............ 127 A.4 VMCON ............................................. 127 A.5 TheQuadraticSubproblem(QSP) . ........ 127 A.6 TheLineSearch ................................... 130 A.7 The Broyden-Fletcher-Goldfarb-Shanno (BFGS) quasi-Newton update . 131 A.8 Symbols......................................... 132 B The Input File 133 B.0.1 Tokamak, stellarator, RFP or IFE? . ........ 133 B.0.2 Fileformat .................................... 133 C Optimisation Input File 136 D Non-optimisation Input File 142 6 List of Figures 2.1 Flow diagram of PROCESS in non-optimisation mode . 12 2.2 Flow diagram of PROCESS inoptimisationmode . 14 3.1 Machine build for D-shaped major components . ........... 26 3.2 Machine build for elliptical-shaped major components . ................ 27 3.3 Machinebuildforasingle-nulldevice. ............ 29 3.4 Radiation power contributions . ........... 34 3.5 Power balance within the core plasma . .......... 37 3.6 Schematic diagram of the cross-section of a superconductingTFcoilinnerleg . 43 3.7 Coil and plasma current waveforms . .......... 46 3.8 Schematic diagram of the neutral beam access geometry . ............... 50 3.9 Power flow outside the fusion power plant core . ........... 52 3.10 HELIAS 5-B Stellarator Power Plant Design . ............ 58 3.11 Stellarator island divertor configuration . ............... 61 6.1 PROCESS Test suite folder structure after a test run. The test area folder is where the output of the test A.1 Illustration of Lagrange multiplier method . ............... 125 A.2 Flowchart of the VMCON optimisationsolver . 128 7 List of Tables 2.1 Listofiterationvariables1to55 . ........... 17 2.2 List of iteration variables 56 onwards . ............. 18 2.3 List of constraint equations 1–50 . ........... 21 2.4 List of constraint equations 51 onwards . ............ 22 2.5 Listoffiguresofmerit .............................. ...... 23 2.6 Listofscanningvariables . ......... 24 3.1 List of available energy confinement
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages144 Page
-
File Size-