From b1db90896ff1395d905bd8f5f6a34f8dfcd3cc46 Mon Sep 17 00:00:00 2001 From: Michael Kovari Date: Thu, 25 Apr 2024 15:35:14 +0100 Subject: [PATCH 1/2] Fixed #3150 (winding pack current densoty constraint). Removed obsolete reference to Users' Guide. --- process/availability.py | 1 - process/costs.py | 41 -------------- process/current_drive.py | 11 ---- process/divertor.py | 8 --- process/evaluators.py | 2 - process/final.py | 1 - process/ife.py | 2 - process/main.py | 1 - process/optimiser.py | 1 - process/output.py | 1 - process/pfcoil.py | 6 -- process/physics.py | 12 ---- process/physics_functions.py | 1 - process/plasma_geometry.py | 8 --- process/pulse.py | 3 - process/sctfcoil.py | 3 - process/stellarator.py | 9 --- process/structure.py | 1 - process/tfcoil.py | 2 - process/vacuum.py | 3 - process/water_use.py | 1 - source/fortran/build_variables.f90 | 3 +- source/fortran/buildings_variables.f90 | 3 +- source/fortran/constants.f90 | 3 +- source/fortran/constraint_equations.f90 | 5 +- source/fortran/constraint_variables.f90 | 3 +- source/fortran/cost_variables.f90 | 3 +- source/fortran/current_drive_variables.f90 | 5 +- source/fortran/divertor_variables.f90 | 3 +- source/fortran/evaluators.f90 | 3 +- source/fortran/fwbs_variables.f90 | 3 +- source/fortran/global_variables.f90 | 4 -- source/fortran/heat_transport_variables.f90 | 3 +- source/fortran/ife.f90 | 63 +++++++-------------- source/fortran/ife_variables.f90 | 3 +- source/fortran/init_module.f90 | 2 +- source/fortran/initial.f90 | 8 +-- source/fortran/iteration_variables.f90 | 5 +- source/fortran/main_module.f90 | 12 ++-- source/fortran/maths_library.f90 | 33 ++++------- source/fortran/output.f90 | 39 +++++-------- source/fortran/pf_power_variables.f90 | 3 +- source/fortran/pfcoil.f90 | 3 +- source/fortran/pfcoil_variables.f90 | 3 +- source/fortran/physics.f90 | 3 +- source/fortran/physics_functions.f90 | 30 ++++------ source/fortran/physics_variables.f90 | 3 +- source/fortran/pulse_variables.f90 | 3 +- source/fortran/scan.f90 | 6 +- source/fortran/startup_variables.f90 | 3 +- source/fortran/stellarator.f90 | 6 +- source/fortran/stellarator_fwbs.f90 | 6 +- source/fortran/structure_variables.f90 | 3 +- source/fortran/tfcoil_variables.f90 | 1 - source/fortran/times_variables.f90 | 3 +- source/fortran/vacuum_variables.f90 | 3 +- 56 files changed, 95 insertions(+), 308 deletions(-) diff --git a/process/availability.py b/process/availability.py index 78e5ceefb1..6a0069cced 100644 --- a/process/availability.py +++ b/process/availability.py @@ -32,7 +32,6 @@ class Availability: This module contains routines for calculating the plant availability and component lifetimes for a fusion power plant. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ def __init__(self) -> None: diff --git a/process/costs.py b/process/costs.py index ed5b96c4a9..317bfcd602 100644 --- a/process/costs.py +++ b/process/costs.py @@ -77,7 +77,6 @@ def run(self): unless otherwise stated. Account 22 costs include a multiplier to account for Nth-of-a-kind cost reductions.

The code is arranged in the order of the standard accounts. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ self.acc21() @@ -854,7 +853,6 @@ def acc22(self): None This routine evaluates the Account 22 (fusion power island - the tokamak itself plus auxiliary power systems, etc.) costs. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ self.acc221() @@ -917,7 +915,6 @@ def acc221(self): treated as fuel costs, rather than as capital costs.

If ifueltyp = 2, the initial first wall, blanket and divertor costs are treated as capital costs, and replacemnts are included as fuel costs. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ self.acc2211() @@ -950,7 +947,6 @@ def acc222(self): None This routine evaluates the Account 222 (magnet) costs, including the costs of associated cryostats. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ if ife_variables.ife == 1: cost_variables.c222 = 0.0e0 @@ -977,7 +973,6 @@ def acc225(self): author: P J Knight, CCFE, Culham Science Centre None This routine evaluates the Account 225 (power conditioning) costs. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ if ife_variables.ife == 1: self.c225 = 0.0e0 @@ -1012,7 +1007,6 @@ def acc21(self):

The general form of the cost algorithm is cost=ucxx*volume**expxx. Allowances are used for site improvements and for miscellaneous buildings and land costs. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ cmlsa = [0.6800e0, 0.8400e0, 0.9200e0, 1.0000e0] exprb = 1.0e0 @@ -1126,7 +1120,6 @@ def acc2211(self): rather than as a capital cost. If ifueltyp = 2, inital first wall is included as a capital cost, and the replacement first wall cost is treated as a fuel costs. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ cmlsa = [0.5000e0, 0.7500e0, 0.8750e0, 1.0000e0] @@ -1192,7 +1185,6 @@ def acc2212(self): rather than as a capital cost. If ifueltyp = 2, the initial blanket is included as a capital cost and the replacement blanket costs are treated as a fuel cost. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ cmlsa = [0.5000e0, 0.7500e0, 0.8750e0, 1.0000e0] @@ -1285,7 +1277,6 @@ def acc2213(self): author: P J Knight, CCFE, Culham Science Centre None This routine evaluates the Account 221.3 (shield) costs. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ cmlsa = [0.5000e0, 0.7500e0, 0.8750e0, 1.0000e0] @@ -1352,7 +1343,6 @@ def acc2214(self): None This routine evaluates the Account 221.4 (reactor structure) costs. The structural items are costed as standard steel elements. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ cmlsa = [0.6700e0, 0.8350e0, 0.9175e0, 1.0000e0] @@ -1378,7 +1368,6 @@ def acc2215(self): rather than as a capital cost.

If ifueltyp = 2, the initial divertor is included as a capital cost and the replacement divertor costs ae treated as a fuel cost, - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ if ife_variables.ife != 1: self.c2215 = 1.0e-6 * divertor_variables.divsur * cost_variables.ucdiv @@ -1409,7 +1398,6 @@ def acc2221(self): cost, rather than as a capital cost. If ifueltyp = 2, the initial centrepost is included as a capital cost and the replacement TART centrepost costs are treated as a fuel - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ cmlsa = [0.6900e0, 0.8450e0, 0.9225e0, 1.0000e0] @@ -1543,7 +1531,6 @@ def acc2222(self): are used instead. Maximum values for current, current density and field are used. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ cmlsa = [0.6900e0, 0.8450e0, 0.9225e0, 1.0000e0] @@ -1713,7 +1700,6 @@ def acc2223(self): author: P J Knight, CCFE, Culham Science Centre None This routine evaluates the Account 222.3 (vacuum vessel) costs. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ cmlsa = [0.6900e0, 0.8450e0, 0.9225e0, 1.0000e0] @@ -1734,7 +1720,6 @@ def acc223(self): current drive system is considered as capital cost, and the fraction (fcdfuel) is considered a recurring fuel cost due to the system's short life. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ exprf = 1.0e0 @@ -1841,7 +1826,6 @@ def acc224(self): None This routine evaluates the Account 224 (vacuum system) costs. The costs are scaled from TETRA reactor code runs. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ if vacuum_variables.ntype == 1: self.c2241 = 1.0e-6 * vacuum_variables.vpumpn * cost_variables.uccpmp @@ -1907,7 +1891,6 @@ def acc2251(self): Costs are developed based on the major equipment specification of the tfcpwr module. A multiplier is used to account for bulk materials and installation. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ expel = 0.7e0 @@ -1972,7 +1955,6 @@ def acc2252(self): conditioning) costs. Costs are taken from the equipment specification of the pfpwr routine from the plant power module. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ self.c22521 = 1.0e-6 * cost_variables.ucpfps * heat_transport_variables.peakmva self.c22521 = cost_variables.fkind * self.c22521 @@ -2048,7 +2030,6 @@ def acc226(self): This routine evaluates the Account 226 (heat transport system) costs. Costs are estimated from major equipment and heat transport system loops developed in the heatpwr module of the code. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ self.c226 = self.c2261 + self.c2262 + self.c2263 @@ -2058,7 +2039,6 @@ def acc2261(self): author: J Morris, CCFE, Culham Science Centre None This routine evaluates the Account 2261 - - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ cmlsa = [0.4000e0, 0.7000e0, 0.8500e0, 1.0000e0] exphts = 0.7e0 @@ -2101,7 +2081,6 @@ def acc2262(self): author: J Morris, CCFE, Culham Science Centre None This routine evaluates the Account 2262 - Auxiliary component cooling - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ cmlsa = 0.4000e0, 0.7000e0, 0.8500e0, 1.0000e0 exphts = 0.7e0 @@ -2136,7 +2115,6 @@ def acc2263(self): author: J Morris, CCFE, Culham Science Centre None This routine evaluates the Account 2263 - Cryogenic system - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ cmlsa = 0.4000e0, 0.7000e0, 0.8500e0, 1.0000e0 expcry = 0.67e0 @@ -2159,7 +2137,6 @@ def acc227(self): None This routine evaluates the Account 227 (fuel handling) costs. Costs are scaled from TETRA reactor code runs. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ self.c227 = self.c2271 + self.c2272 + self.c2273 + self.c2274 @@ -2169,7 +2146,6 @@ def acc2271(self): author: J Morris, CCFE, Culham Science Centre None This routine evaluates the Account 2271 - Fuelling system - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ self.c2271 = 1.0e-6 * cost_variables.ucf1 @@ -2182,7 +2158,6 @@ def acc2272(self): author: J Morris, CCFE, Culham Science Centre None This routine evaluates the Account 2272 - Fuel processing - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ if ife_variables.ife != 1: # Previous calculation, using qfuel in Amps: @@ -2224,7 +2199,6 @@ def acc2273(self): author: J Morris, CCFE, Culham Science Centre None This routine evaluates the Account 2273 - Atmospheric recovery systems - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ cfrht = 1.0e5 @@ -2249,7 +2223,6 @@ def acc2274(self): author: J Morris, CCFE, Culham Science Centre None This routine evaluates the Account 2274 - Nuclear building ventilation - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ self.c2274 = ( 1.0e-6 @@ -2269,7 +2242,6 @@ def acc228(self): This routine evaluates the Account 228 (instrumentation and control) costs. Costs are based on TFCX and INTOR. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ self.c228 = 1.0e-6 * cost_variables.uciac self.c228 = cost_variables.fkind * self.c228 @@ -2281,7 +2253,6 @@ def acc229(self): author: J Morris, CCFE, Culham Science Centre None This routine evaluates the Account 229 (maintenance equipment) costs. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ self.c229 = 1.0e-6 * cost_variables.ucme self.c229 = cost_variables.fkind * self.c229 @@ -2293,7 +2264,6 @@ def acc23(self): author: J Morris, CCFE, Culham Science Centre None This routine evaluates the Account 23 (turbine plant equipment) costs. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ exptpe = 0.83e0 @@ -2311,7 +2281,6 @@ def acc24(self): author: J Morris, CCFE, Culham Science Centre None This routine evaluates the Account 24 (electric plant equipment) costs. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ self.c24 = self.c241 + self.c242 + self.c243 + self.c244 + self.c245 @@ -2321,7 +2290,6 @@ def acc241(self): author: J Morris, CCFE, Culham Science Centre None This routine evaluates the Account 241 - switchyard - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ cmlsa = 0.5700e0, 0.7850e0, 0.8925e0, 1.0000e0 @@ -2334,7 +2302,6 @@ def acc242(self): author: J Morris, CCFE, Culham Science Centre None This routine evaluates the Account 242 - Transformers - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ cmlsa = 0.5700e0, 0.7850e0, 0.8925e0, 1.0000e0 expepe = 0.9e0 @@ -2354,7 +2321,6 @@ def acc243(self): author: J Morris, CCFE, Culham Science Centre None This routine evaluates the Account 243 - Low voltage - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ cmlsa = 0.5700e0, 0.7850e0, 0.8925e0, 1.0000e0 @@ -2375,7 +2341,6 @@ def acc244(self): author: J Morris, CCFE, Culham Science Centre None This routine evaluates the Account 244 - Diesel generators - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ cmlsa = [0.5700e0, 0.7850e0, 0.8925e0, 1.0000e0] @@ -2390,7 +2355,6 @@ def acc245(self): author: J Morris, CCFE, Culham Science Centre None This routine evaluates the Account 245 - Aux facility power - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ cmlsa = 0.5700e0, 0.7850e0, 0.8925e0, 1.0000e0 @@ -2405,7 +2369,6 @@ def acc25(self): None This routine evaluates the Account 25 (miscellaneous plant equipment) costs, such as waste treatment. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ cmlsa = 0.7700e0, 0.8850e0, 0.9425e0, 1.0000e0 @@ -2421,7 +2384,6 @@ def acc26(self): Costs are scaled with the total plant heat rejection based on commercial systems. J. Delene, private communication, ORNL, June 1990 - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ cmlsa = [0.8000e0, 0.9000e0, 0.9500e0, 1.0000e0] @@ -2461,7 +2423,6 @@ def acc9(self): specification and unforeseen events during the plant construction.

The factors used are estimated from commercial plant experience. J. Delene, private communication, ORNL, June 1990 - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ self.cindrt = ( cost_variables.cfind[cost_variables.lsa - 1] @@ -2479,7 +2440,6 @@ def acc2253(self): author: P J Knight, CCFE, Culham Science Centre None This routine evaluates the Account 225.3 (energy storage) costs. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ self.c2253 = 0.0e0 @@ -2584,7 +2544,6 @@ def coelc(self):

Annual costs are in megadollars/year, electricity costs are in millidollars/kWh, while other costs are in megadollars. All values are based on 1990 dollars. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ if ife_variables.ife == 1: kwhpy = ( diff --git a/process/current_drive.py b/process/current_drive.py index 55280deb5e..06fc7f8840 100644 --- a/process/current_drive.py +++ b/process/current_drive.py @@ -24,7 +24,6 @@ def cudriv(self, output: bool): This routine calculates the power requirements of the current drive system, using a choice of models for the current drive efficiency. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ current_drive_variables.echpwr = 0.0e0 @@ -1279,7 +1278,6 @@ def iternb(self): fshine : output real : shine-through fraction of beam This routine calculates the current drive parameters for a neutral beam system, based on the 1990 ITER model. - AEA FUS 251: A User's Guide to the PROCESS Systems Code ITER Physics Design Guidelines: 1989 [IPDG89], N. A. Uckan et al, ITER Documentation Series No.10, IAEA/ITER/DS/10, IAEA, Vienna, 1990 """ @@ -1349,7 +1347,6 @@ def cullhy(self): effrfss : output real : lower hybrid current drive efficiency (A/W) This routine calculates the current drive parameters for a lower hybrid system, based on the AEA FUS 172 model. - AEA FUS 251: A User's Guide to the PROCESS Systems Code AEA FUS 172: Physics Assessment for the European Reactor Study """ rratio = self.lhrad() @@ -1416,7 +1413,6 @@ def culecd(self): effrfss : output real : electron cyclotron current drive efficiency (A/W) This routine calculates the current drive parameters for a electron cyclotron system, based on the AEA FUS 172 model. - AEA FUS 251: A User's Guide to the PROCESS Systems Code AEA FUS 172: Physics Assessment for the European Reactor Study """ rrr = 1.0e0 / 3.0e0 @@ -1492,7 +1488,6 @@ def eccdef(self, tlocal, epsloc, zlocal, cosang, coulog):

The answer ECGAM is the normalised efficiency nIR/P with n the local density in 10**20 /m**3, I the driven current in MAmps, R the major radius in metres, and P the absorbed power in MWatts. - AEA FUS 251: A User's Guide to the PROCESS Systems Code AEA FUS 172: Physics Assessment for the European Reactor Study ITER Physics Design Guidelines: 1989 [IPDG89], N. A. Uckan et al, ITER Documentation Series No.10, IAEA/ITER/DS/10, IAEA, Vienna, 1990 @@ -1551,7 +1546,6 @@ def culnbi(self): using the corrections outlined in AEA FUS 172 to the ITER method.

The result cannot be guaranteed for devices with aspect ratios far from that of ITER (approx. 2.8). - AEA FUS 251: A User's Guide to the PROCESS Systems Code AEA FUS 172: Physics Assessment for the European Reactor Study """ if (1.0e0 + physics_variables.eps) < current_drive_variables.frbeam: @@ -1630,7 +1624,6 @@ def lhrad(self): rratio : output real : minor radius of penetration / rminor This routine determines numerically the minor radius at which the damping of Lower Hybrid waves occurs, using a Newton-Raphson method. - AEA FUS 251: A User's Guide to the PROCESS Systems Code AEA FUS 172: Physics Assessment for the European Reactor Study """ # Correction to refractive index (kept within valid bounds) @@ -1718,7 +1711,6 @@ def etanb2( a neutral beam system, based on the 1990 ITER model, plus correction terms outlined in Culham Report AEA FUS 172.

The formulae are from AEA FUS 172, unless denoted by IPDG89. - AEA FUS 251: A User's Guide to the PROCESS Systems Code AEA FUS 172: Physics Assessment for the European Reactor Study ITER Physics Design Guidelines: 1989 [IPDG89], N. A. Uckan et al, ITER Documentation Series No.10, IAEA/ITER/DS/10, IAEA, Vienna, 1990 @@ -1814,7 +1806,6 @@ def lheval(self, drfind, rratio): AEA FUS 172, p.58. This difference is used to locate the Lower Hybrid wave absorption radius via a Newton-Raphson method, in calling routine lhrad. - AEA FUS 251: A User's Guide to the PROCESS Systems Code AEA FUS 172: Physics Assessment for the European Reactor Study """ dlocal = 1.0e-19 * profiles_module.nprofile( @@ -1882,7 +1873,6 @@ def etanb(self, abeam, alphan, alphat, aspect, dene, ebeam, rmajor, ten, zeff): zeff : input real : plasma effective charge This routine calculates the current drive efficiency of a neutral beam system, based on the 1990 ITER model. - AEA FUS 251: A User's Guide to the PROCESS Systems Code ITER Physics Design Guidelines: 1989 [IPDG89], N. A. Uckan et al, ITER Documentation Series No.10, IAEA/ITER/DS/10, IAEA, Vienna, 1990 """ @@ -1928,7 +1918,6 @@ def cfnbi(self, afast, efast, te, ne, nd, nt, zeffai, xlmbda): fpion : output real : fraction of fast particle energy coupled to ions This routine calculates the fast particle energy coupled to the ions in the neutral beam system. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ # atmd = 2.0 atmdt = 2.5 diff --git a/process/divertor.py b/process/divertor.py index 3594dba10c..711e793712 100644 --- a/process/divertor.py +++ b/process/divertor.py @@ -15,7 +15,6 @@ class Divertor: This module contains routines relevant for calculating the divertor parameters for a fusion power plant. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ def __init__(self) -> None: @@ -29,7 +28,6 @@ def run(self, output: bool) -> None: This subroutine calls the divertor routine. This routine scales dimensions, powers and field levels which are used as input to the Harrison divertor model. - AEA FUS 251: A User's Guide to the PROCESS Systems Code :param output: indicate whether output should be written to the output file, or not :type output: boolean @@ -225,7 +223,6 @@ def divert( This subroutine performs the iteration described in M. Harrison's and Kukushkin's analytic ITER divertor model. Report ITER-IL-PH-13-9-e12 - AEA FUS 251: A User's Guide to the PROCESS Systems Code :param adas: divertor flux area / main plasma area (long separatrix) :type adas: float @@ -543,7 +540,6 @@ def erprcy(self, tdiv: float, ndiv: float) -> float: ionized, per neutral recycle event, from the Harrison / Kukushkin ITER model. Report ITER-IL-PH-13-9-e12 - AEA FUS 251: A User's Guide to the PROCESS Systems Code :param tdiv: electron temperature at the plate (eV) :type tdiv: float @@ -578,7 +574,6 @@ def ftdiv( This function calculates an estimate for the divertor temperature (eV). Report ITER-IL-PH-13-9-e12 - AEA FUS 251: A User's Guide to the PROCESS Systems Code :param aion: ion mass (assumes fuel only) (AMU) :type aion: float @@ -667,7 +662,6 @@ def ftpts( This function updates the divertor model temperature ratio solution. Report ITER-IL-PH-13-9-e12 - AEA FUS 251: A User's Guide to the PROCESS Systems Code :param aion: ion mass (assumes fuel only) (AMU) :type aion: float @@ -739,7 +733,6 @@ def gammash(self, gcoef: float, tdiv: float) -> float: This function provides the plasma sheath energy transfer coefficient from the Harrison / Kukushkin ITER model. Report ITER-IL-PH-13-9-e12 - AEA FUS 251: A User's Guide to the PROCESS Systems Code :param gcoef: coefficient :type gcoef: float @@ -771,7 +764,6 @@ def divtart( divertor chamber by the action of a gaseous target. Each divertor is assumed to be approximately triangular in the R,Z plane. AEA FUS 64: Figure 2 - AEA FUS 251: A User's Guide to the PROCESS Systems Code :param rmajor: plasma major radius (m) :type rmajor: float diff --git a/process/evaluators.py b/process/evaluators.py index e20d69245c..a4d2db18b5 100644 --- a/process/evaluators.py +++ b/process/evaluators.py @@ -37,7 +37,6 @@ def fcnvmc1(self, n, m, xv, ifail): n-dimensional point of interest xv. Note that the equality constraints must precede the inequality constraints in conf. - AEA FUS 251: A User's Guide to the PROCESS Systems Code :param n: number of variables :type n: int :param m: number of constraints @@ -110,7 +109,6 @@ def fcnvmc2(self, n, m, xv, lcnorm): constraints in conf. The constraint gradients or normals are returned as the columns of cnorm. - AEA FUS 251: A User's Guide to the PROCESS Systems Code :param n: number of variables :type n: int :param m: number of constraints diff --git a/process/final.py b/process/final.py index de1b152cf3..94a61e6502 100644 --- a/process/final.py +++ b/process/final.py @@ -7,7 +7,6 @@ def finalise(models, ifail): """Routine to print out the final point in the scan. - AEA FUS 251: A User's Guide to the PROCESS Systems Code :param models: physics and engineering model objects :type models: process.main.Models :param ifail: error flag diff --git a/process/ife.py b/process/ife.py index c442f81b71..fafa38ffd4 100644 --- a/process/ife.py +++ b/process/ife.py @@ -10,7 +10,6 @@ class IFE: N/A This module contains routines for calculating the parameters of an Inertial Fusion Energy power plant. - AEA FUS 251: A User's Guide to the PROCESS Systems Code NOTE: currently the IFE module is only partially wrapped to unblock the wrapping of availability """ @@ -36,7 +35,6 @@ def run(self, output: bool): This routine outputs the physics and engineering information relevant to inertial fusion energy power plants. F/MI/PJK/LOGBOOK12, p.66 - AEA FUS 251: A User's Guide to the PROCESS Systems Code :param output: indicate whether output should be written to the output file, or not :type output: boolean diff --git a/process/main.py b/process/main.py index c660236b3a..41ccf6a6c9 100644 --- a/process/main.py +++ b/process/main.py @@ -36,7 +36,6 @@ aid the inclusion of more advanced physics and engineering models under development as part of a number of EFDA-sponsored collaborations. -AEA FUS 251: A User's Guide to the PROCESS Systems Code Box file F/RS/CIRE5523/PWF (up to 15/01/96) Box file F/MI/PJK/PROCESS and F/PL/PJK/PROCESS (15/01/96 to 24/01/12) Box file T&M/PKNIGHT/PROCESS (from 24/01/12) diff --git a/process/optimiser.py b/process/optimiser.py index c5ec4e480c..dfcc63c1f3 100644 --- a/process/optimiser.py +++ b/process/optimiser.py @@ -12,7 +12,6 @@ def __init__(self, models, solver_name): developed by Argonne National Laboratory. On exit, the (normalised) value of the variable being maximised or minimised (i.e. the figure of merit) is returned in argument f. - AEA FUS 251: A User's Guide to the PROCESS Systems Code. This represents the old optimiz subroutine in the numerics module. diff --git a/process/output.py b/process/output.py index 71f60f9d1a..8eaf1e565d 100644 --- a/process/output.py +++ b/process/output.py @@ -6,7 +6,6 @@ def write(models, outfile): Write the program results to a file, in a tidy format. - AEA FUS 251: A User's Guide to the PROCESS Systems Code :param models: physics and engineering model objects :type models: process.main.Models :param outfile: Fortran output unit identifier diff --git a/process/pfcoil.py b/process/pfcoil.py index 63451837cb..36759da301 100644 --- a/process/pfcoil.py +++ b/process/pfcoil.py @@ -64,7 +64,6 @@ def pfcoil(self): This subroutine performs the calculations for the PF and Central Solenoid coils, to determine their size, location, current waveforms, stresses etc. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ lrow1 = 2 * pfv.nptsmx + pfv.ngrpmx lcol1 = pfv.ngrpmx @@ -987,7 +986,6 @@ def ohcalc(self): author: P J Knight, CCFE, Culham Science Centre This subroutine performs the calculations for the Central Solenoid solenoid coil. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ hohc = bv.hmax * pfv.ohhghf @@ -1246,7 +1244,6 @@ def peakb(self, i, ii, it): at the inner and outer edges of a given PF coil. The calculation includes the effects from all the coils and the plasma. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ if bv.iohcl != 0 and i == pfv.nohc: # Peak field is to be calculated at the Central Solenoid itself, @@ -1377,7 +1374,6 @@ def bfmax(self, rj, a, b, h): inner radius, using fits taken from the figure on p.22 of M. Wilson's book Superconducting Magnets, Clarendon Press, Oxford, N.Y., 1983 - AEA FUS 251: A User's Guide to the PROCESS Systems Code :param rj: overall current density (A/m2) :type rj: float @@ -1846,7 +1842,6 @@ def outpf(self): author: P J Knight, CCFE, Culham Science Centre This routine writes the PF coil information to the output file. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ op.oheadr(self.outfile, "Central Solenoid and PF Coils") @@ -2677,7 +2672,6 @@ def waveform(self): This routine sets up the PF coil current waveforms. waves[i,j] is the current in coil i, at time j, normalized to the peak current in that coil at any time. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ nplas = pfv.nohc + 1 for it in range(6): diff --git a/process/physics.py b/process/physics.py index b60174fd27..7b8addc9f0 100644 --- a/process/physics.py +++ b/process/physics.py @@ -243,7 +243,6 @@ def vscalc( vsstt : output real : total volt-seconds needed (Wb) This subroutine calculates the volt-second requirements and some other related items. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ # Internal inductance @@ -310,7 +309,6 @@ def culblm(bt, dnbeta, plascur, rminor): The default value for the g coefficient is dnbeta = 3.5 AEA FUS 172: Physics Assessment for the European Reactor Study - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ return 0.01 * dnbeta * (plascur / 1.0e6) / (rminor * bt) @@ -332,9 +330,7 @@ def conhas(alphaj, alphap, bt, delta95, eps, kappa95, p0, rmu0): cross-section cylindrical case This routine calculates the F coefficient used for scaling the plasma current, using the Connor-Hastie scaling given in - AEA FUS 172. AEA FUS 172: Physics Assessment for the European Reactor Study - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ # Exponent in Connor-Hastie current profile - matching total @@ -406,7 +402,6 @@ def bsinteg( y : input real : abscissa of integration, = normalised minor radius This function calculates the integrand function for the Nevins et al bootstrap current scaling, 4/11/90. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ # Constants for fit to q-profile c1 = 1.0 @@ -1596,7 +1591,6 @@ def culdlm( This routine calculates several different formulae for the density limit, and enforces the one chosen by the user. AEA FUS 172: Physics Assessment for the European Reactor Study - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ if idensl < 1 or idensl > 7: error_handling.idiags[0] = idensl @@ -1915,7 +1909,6 @@ def phyaux( taup : output real : (alpha) particle confinement time (s) This subroutine calculates extra physics related items needed by other parts of the code - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ figmer = 1e-6 * plascur * aspect**sbar @@ -2249,7 +2242,6 @@ def outplas(self): self.outfile : input integer : Fortran output unit identifier This routine writes the plasma physics information to a file, in a tidy format. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ # ############################################### @@ -4334,7 +4326,6 @@ def igmarcal(self): outfile : input integer : Fortran output unit identifier This routine calculates the ignition margin at the final point with different scalings. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ po.oheadr(self.outfile, "Energy confinement times, and required H-factors :") @@ -4556,7 +4547,6 @@ def bootstrap_fraction_nevins( zeff : input real : plasma effective charge This function calculates the bootstrap current fraction, using the Nevins et al method, 4/11/90. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ # Calculate peak electron beta @@ -4744,7 +4734,6 @@ def fhfac(self, is_): is : input integer : confinement time scaling law of interest This function calculates the H-factor required for power balance, using the given energy confinement scaling law. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ physics_module.iscz = is_ @@ -4759,7 +4748,6 @@ def fhz(self, hhh): FHZ is zero at power balance, which is achieved using routine ZEROIN to adjust the value of hhh, the confinement time H-factor. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ ( diff --git a/process/physics_functions.py b/process/physics_functions.py index e0f337d377..79b25aa939 100644 --- a/process/physics_functions.py +++ b/process/physics_functions.py @@ -351,7 +351,6 @@ def fint(plasma_profile, reactionconstants): P J Knight, CCFE, Culham Science Centre G Turkington (UKAEA) References: - AEA FUS 251: A User's Guide to the PROCESS Systems Code :param plasma_profile: Parameterised temperature and density profiles :type plasma_profile: PlasmaProfile diff --git a/process/plasma_geometry.py b/process/plasma_geometry.py index 0950fdd129..bd606e404e 100644 --- a/process/plasma_geometry.py +++ b/process/plasma_geometry.py @@ -20,7 +20,6 @@ def geomty(self): J D Galambos, STAR Code : Spherical Tokamak Analysis and Reactor Code, unpublished internal Oak Ridge document F/MI/PJK/LOGBOOK14, pp.41-43 - AEA FUS 251: A User's Guide to the PROCESS Systems Code H. Zohm et al, On the Physics Guidelines for a Tokamak DEMO, FTP/3-3, Proc. IAEA Fusion Energy Conference, October 2012, San Diego """ @@ -290,7 +289,6 @@ def xparam(self, a, kap, tri): This calculation is appropriate for plasmas with a separatrix. F/MI/PJK/LOGBOOK14, p.42 F/PL/PJK/PROCESS/CODE/047 - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ t = 1.0e0 - tri denomi = (kap**2 - t**2) / (2.0e0 * t) @@ -354,7 +352,6 @@ def xsurf(self, rmajor, rminor, xi, thetai, xo, thetao): revolution of two intersecting arcs around the device centreline. This calculation is appropriate for plasmas with a separatrix. F/MI/PJK/LOGBOOK14, p.43 - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ fourpi = 4.0e0 * numpy.pi @@ -377,7 +374,6 @@ def perim(self, a, kap, tri): revolution of two intersecting arcs around the device centreline. This calculation is appropriate for plasmas with a separatrix. F/PL/PJK/PROCESS/CODE/047 - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ # Inboard arc @@ -410,7 +406,6 @@ def xvol(self, rmajor, rminor, xi, thetai, xo, thetao): revolution of two intersecting arcs around the device centreline. This calculation is appropriate for plasmas with a separatrix. F/MI/PJK/LOGBOOK14, p.43 - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ # !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! @@ -459,7 +454,6 @@ def xsecta(self, xi, thetai, xo, thetao): revolution of two intersecting arcs around the device centreline. This calculation is appropriate for plasmas with a separatrix. F/MI/PJK/LOGBOOK14, p.41 - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ xsecta = xo**2 * ( @@ -481,7 +475,6 @@ def fvol(self, r, a, kap, tri): This calculation is appropriate for plasmas with a separatrix. F/MI/PJK/LOGBOOK14, p.41 F/PL/PJK/PROCESS/CODE/047 - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ zn = kap * a @@ -529,7 +522,6 @@ def xsect0(self, a, kap, tri): by Peng. F/MI/PJK/LOGBOOK14, p.41 F/PL/PJK/PROCESS/CODE/047 - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ denomi = (tri**2 + kap**2 - 1.0e0) / (2.0e0 * (1.0e0 - tri)) + tri diff --git a/process/pulse.py b/process/pulse.py index e283d88266..561b2ce487 100755 --- a/process/pulse.py +++ b/process/pulse.py @@ -21,7 +21,6 @@ def run(self, output: bool) -> None: This calls the routines relevant to a pulsed reactor scenario. Work File Notes F/MPE/MOD/CAG/PROCESS/PULSE - AEA FUS 251: A User's Guide to the PROCESS Systems Code :param output: indicate whether output should be written to the output file, or not :type output: boolean @@ -41,7 +40,6 @@ def tohswg(self, output: bool) -> None: for a pulsed reactor. Work File Note F/MPE/MOD/CAG/PROCESS/PULSE/0013 Work File Note F/PL/PJK/PROCESS/CODE/050 - AEA FUS 251: A User's Guide to the PROCESS Systems Code :param output: indicate whether output should be written to the output file, or not :type output: boolean @@ -129,7 +127,6 @@ def burn(self, output: bool): This routine calculates the burn time for a pulsed reactor. Work File Note F/MPE/MOD/CAG/PROCESS/PULSE/0012 - AEA FUS 251: A User's Guide to the PROCESS Systems Code :param output: indicate whether output should be written to the output file, or not :type output: boolean diff --git a/process/sctfcoil.py b/process/sctfcoil.py index 521291ab3e..b84fcdd3cd 100644 --- a/process/sctfcoil.py +++ b/process/sctfcoil.py @@ -1445,7 +1445,6 @@ def protect(self, aio, tfes, acs, aturn, tdump, fcond, fcu, tba, tmax): limits the peak temperature in the winding to a given limit (tmax). It also finds the dump voltage.

These calculations are based on Miller's formulations. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ # Integration coefficients p1,p2,p3 p1 = ( @@ -2004,7 +2003,6 @@ def cpost( 26/11/19 SK added the coolant area, the conuctor/isulator/outer casing volume 30/11/20 SK added the ground outer ground insulation volume F/MI/PJK/LOGBOOK12, pp.33,34 - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ yy_ins = numpy.zeros((101,)) # Exact conductor area (to be integrated) yy_cond = numpy.zeros((101,)) # Turn insulation area (to be integrated) @@ -6421,7 +6419,6 @@ def sigvm(sx: float, sy: float, sz: float, txy: float, txz: float, tyz: float) - author: B Reimer, FEDC This routine calculates the Von Mises combination of stresses (Pa) in a TF coil. - AEA FUS 251: A User's Guide to the PROCESS Systems Code :param sx: In-plane stress in X direction [Pa] :param sy: In-plane stress in Y direction [Pa] diff --git a/process/stellarator.py b/process/stellarator.py index 8979be67ec..4a2cd5f547 100644 --- a/process/stellarator.py +++ b/process/stellarator.py @@ -49,7 +49,6 @@ class Stellarator: parameters of the first wall, blanket and shield components of a fusion power plant. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ def __init__( @@ -104,7 +103,6 @@ def run(self, output: bool): author: F Warmer, IPP Greifswald This routine is the caller for the stellarator models. - AEA FUS 251: A User's Guide to the PROCESS Systems Code :param output: indicate whether output should be written to the output file, or not :type output: boolean @@ -181,7 +179,6 @@ def stigma(self): outfile : input integer : output file unit This routine calculates the ignition margin at the final point with different stellarator confinement time scaling laws - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ po.osubhd(self.outfile, "Confinement times, and required H-factors :") @@ -370,7 +367,6 @@ def stbild(self, output: bool): The values calculated are based on the mean minor radius, etc., as the actual radial and vertical build thicknesses vary with toroidal angle. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ if fwbs_variables.blktmodel > 0: build_variables.blnkith = ( @@ -772,7 +768,6 @@ def ststrc(self, output): STRUCT. In practice, many of the masses are simply set to zero to avoid double-counting of structural components that are specified differently for tokamaks. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ structure_variables.fncmass = 0.0e0 @@ -1128,7 +1123,6 @@ def stfwbs(self, output: bool): fwbs), except for the volume calculations, which scale the surface area of the components from that of the plasma. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ fwbs_variables.fwlife = min( cost_variables.abktflnc / physics_variables.wallmw, cost_variables.tlife @@ -3315,7 +3309,6 @@ def stdlim(self, bt, powht, rmajor, rminor): S.Sudo, Y.Takeiri, H.Zushi et al., Scalings of Energy Confinement and Density Limit in Stellarator/Heliotron Devices, Nuclear Fusion vol.30, 11 (1990). - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ arg = powht * bt / (rmajor * rminor * rminor) @@ -3856,7 +3849,6 @@ def stphys(self, output): None This routine calculates the physics quantities relevant to a stellarator device. - AEA FUS 251: A User's Guide to the PROCESS Systems Code AEA FUS 172: Physics Assessment for the European Reactor Study """ # ############################################### @@ -4636,7 +4628,6 @@ def stheat(self, output: bool): iprint : input integer : switch for writing to output file (1=yes) This routine calculates the auxiliary heating power for a stellarator device. - AEA FUS 251: A User's Guide to the PROCESS Systems Code AEA FUS 172: Physics Assessment for the European Reactor Study """ if stellarator_variables.isthtr == 1: diff --git a/process/structure.py b/process/structure.py index 52296435b9..f4cac89f40 100644 --- a/process/structure.py +++ b/process/structure.py @@ -22,7 +22,6 @@ class Structure: This class contains routines for calculating the parameters of the support structure for a fusion power plant. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ def __init__(self) -> None: diff --git a/process/tfcoil.py b/process/tfcoil.py index 355b02a732..505d1de952 100644 --- a/process/tfcoil.py +++ b/process/tfcoil.py @@ -40,7 +40,6 @@ def tfcoil(self): This subroutine calculates various parameters for the TF coil set. If the TF coils are superconducting the calculations are performed in routine sctfcoil instead. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ # TF coil calculations @@ -58,7 +57,6 @@ def cntrpst(self): This subroutine evaluates the parameters of the centrepost for a tight aspect ratio tokamak. The centrepost is assumed to be tapered, i.e. narrowest on the midplane (z=0). - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ # Temperature margin used in calculations (K) diff --git a/process/vacuum.py b/process/vacuum.py index 2526db2a41..f425d486e0 100644 --- a/process/vacuum.py +++ b/process/vacuum.py @@ -22,7 +22,6 @@ class Vacuum: This module contains routines for calculating the parameters of the vacuum system for a fusion power plant. - AEA FUS 251: A User's Guide to the PROCESS Systems Code """ def __init__(self) -> None: @@ -33,7 +32,6 @@ def run(self, output: bool) -> None: author: P J Knight, CCFE, Culham Science Centre This routine calls the main vacuum package. - AEA FUS 251: A User's Guide to the PROCESS Systems Code :param output: indicate whether output should be written to the output file, or not :type output: boolean @@ -203,7 +201,6 @@ def vacuum( author: P C Shipe, ORNL This routine calculates the parameters of the vacuum system. - AEA FUS 251: A User's Guide to the PROCESS Systems Code :param pfusmw: Fusion power (MW) :type pfusmw: float diff --git a/process/water_use.py b/process/water_use.py index d5fc8853dc..5715a47b9f 100644 --- a/process/water_use.py +++ b/process/water_use.py @@ -18,7 +18,6 @@ def run(self, output: bool): author: R Chapman, UKAEA This routine calls the different water usage routines. - AEA FUS 251: A User's Guide to the PROCESS Systems Code :param output: indicate whether output should be written to the output file, or not :type output: boolean diff --git a/source/fortran/build_variables.f90 b/source/fortran/build_variables.f90 index 5b643985cd..747b2ac6c6 100644 --- a/source/fortran/build_variables.f90 +++ b/source/fortran/build_variables.f90 @@ -5,8 +5,7 @@ module build_variables !! !!### References !! - !! - AEA FUS 251: A User's Guide to the PROCESS Systems Code - + !! - #ifndef dp use, intrinsic :: iso_fortran_env, only: dp=>real64 #endif diff --git a/source/fortran/buildings_variables.f90 b/source/fortran/buildings_variables.f90 index 82b8c3084d..2e56a85d49 100644 --- a/source/fortran/buildings_variables.f90 +++ b/source/fortran/buildings_variables.f90 @@ -7,8 +7,7 @@ module buildings_variables !! !!### References !! - !! - AEA FUS 251: A User's Guide to the PROCESS Systems Code - + !! - #ifndef dp use, intrinsic :: iso_fortran_env, only: dp=>real64 #endif diff --git a/source/fortran/constants.f90 b/source/fortran/constants.f90 index 000f607593..68a18929ea 100644 --- a/source/fortran/constants.f90 +++ b/source/fortran/constants.f90 @@ -5,8 +5,7 @@ module constants !! !!### References !! - !! - AEA FUS 251: A User's Guide to the PROCESS Systems Code - + !! - #ifndef dp use, intrinsic :: iso_fortran_env, only: dp=>real64 #endif diff --git a/source/fortran/constraint_equations.f90 b/source/fortran/constraint_equations.f90 index c8d75d7724..289d0bd7c7 100755 --- a/source/fortran/constraint_equations.f90 +++ b/source/fortran/constraint_equations.f90 @@ -45,8 +45,7 @@ subroutine constraint_eqns(m,ieqn,cc,con,err,symbol,units) !! !! **References** !! - !! 1. AEA FUS 251: A User's Guide to the PROCESS Systems Code - + !! 1. use numerics, only: icc use maths_library, only: variable_error @@ -1660,7 +1659,7 @@ subroutine constraint_eqn_035(tmp_cc, tmp_con, tmp_err, tmp_symbol, tmp_units) tmp_cc = 1.0D0 - fjprot * jwdgpro/jwptf tmp_con = jwdgpro - tmp_err = jwptf - jwptf + tmp_err = jwptf - jwdgpro tmp_symbol = '<' tmp_units = 'A/m2' diff --git a/source/fortran/constraint_variables.f90 b/source/fortran/constraint_variables.f90 index b9a776b479..de00506cfc 100644 --- a/source/fortran/constraint_variables.f90 +++ b/source/fortran/constraint_variables.f90 @@ -6,8 +6,7 @@ module constraint_variables !! !!### References !! - !! - AEA FUS 251: A User's Guide to the PROCESS Systems Code - + !! - #ifndef dp use, intrinsic :: iso_fortran_env, only: dp=>real64 #endif diff --git a/source/fortran/cost_variables.f90 b/source/fortran/cost_variables.f90 index f677f61b9b..dca8023ca0 100644 --- a/source/fortran/cost_variables.f90 +++ b/source/fortran/cost_variables.f90 @@ -5,8 +5,7 @@ module cost_variables !! !!### References !! - !! - AEA FUS 251: A User's Guide to the PROCESS Systems Code - + !! - #ifndef dp use, intrinsic :: iso_fortran_env, only: dp=>real64 #endif diff --git a/source/fortran/current_drive_variables.f90 b/source/fortran/current_drive_variables.f90 index 103f7c35d6..45b357e961 100644 --- a/source/fortran/current_drive_variables.f90 +++ b/source/fortran/current_drive_variables.f90 @@ -5,8 +5,7 @@ module current_drive_variables !! !!### References !! - !! - AEA FUS 251: A User's Guide to the PROCESS Systems Code - + !! - #ifndef dp use, intrinsic :: iso_fortran_env, only: dp=>real64 #endif @@ -75,7 +74,7 @@ module current_drive_variables !! !! - =0 O-mode !! - =1 X-mode - + real(dp) :: enbeam !! neutral beam energy (keV) (`iteration variable 19`) diff --git a/source/fortran/divertor_variables.f90 b/source/fortran/divertor_variables.f90 index 81d3f97bee..68fd2d4a34 100644 --- a/source/fortran/divertor_variables.f90 +++ b/source/fortran/divertor_variables.f90 @@ -5,8 +5,7 @@ module divertor_variables !! !!### References !! - !! - AEA FUS 251: A User's Guide to the PROCESS Systems Code - + !! - #ifndef dp use, intrinsic :: iso_fortran_env, only: dp=>real64 #endif diff --git a/source/fortran/evaluators.f90 b/source/fortran/evaluators.f90 index 5fcd1ae7b4..5086acc9e6 100644 --- a/source/fortran/evaluators.f90 +++ b/source/fortran/evaluators.f90 @@ -88,8 +88,7 @@ subroutine funfom(fc) !! point of interest. !!

Each equation for fc gives a value of the !! order of unity for the sake of the numerics. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use global_variables, only: xlabel, iscan_global diff --git a/source/fortran/fwbs_variables.f90 b/source/fortran/fwbs_variables.f90 index 0a6be8590d..e427777766 100644 --- a/source/fortran/fwbs_variables.f90 +++ b/source/fortran/fwbs_variables.f90 @@ -6,8 +6,7 @@ module fwbs_variables !! !!### References !! - !! - AEA FUS 251: A User's Guide to the PROCESS Systems Code - + !! - #ifndef dp use, intrinsic :: iso_fortran_env, only: dp=>real64 #endif diff --git a/source/fortran/global_variables.f90 b/source/fortran/global_variables.f90 index 0ce46574b9..4d6146aaa7 100644 --- a/source/fortran/global_variables.f90 +++ b/source/fortran/global_variables.f90 @@ -4,10 +4,6 @@ module global_variables !! This module contains miscellaneous global variables not well-suited to any !! of the other 'variables' modules. !! - !!### References - !! - !! - AEA FUS 251: A User's Guide to the PROCESS Systems Code - #ifndef dp use, intrinsic :: iso_fortran_env, only: dp=>real64 #endif diff --git a/source/fortran/heat_transport_variables.f90 b/source/fortran/heat_transport_variables.f90 index 896731c73a..074f1e8c54 100644 --- a/source/fortran/heat_transport_variables.f90 +++ b/source/fortran/heat_transport_variables.f90 @@ -6,8 +6,7 @@ module heat_transport_variables !! !!### References !! - !! - AEA FUS 251: A User's Guide to the PROCESS Systems Code - + !! - #ifndef dp use, intrinsic :: iso_fortran_env, only: dp=>real64 #endif diff --git a/source/fortran/ife.f90 b/source/fortran/ife.f90 index 0215e5388b..96ad849e98 100644 --- a/source/fortran/ife.f90 +++ b/source/fortran/ife.f90 @@ -6,8 +6,7 @@ module ife_module !! N/A !! This module contains routines for calculating the !! parameters of an Inertial Fusion Energy power plant. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! #ifndef dp use, intrinsic :: iso_fortran_env, only: dp=>real64 @@ -28,8 +27,7 @@ subroutine ifephy(outfile,iprint) !! This routine calculates the physics parameters of an Inertial Fusion !! Energy power plant. !! F/MI/PJK/LOGBOOK12, pp.68,85 - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use constants, only: pi @@ -203,8 +201,7 @@ subroutine iondrv(aaion,bmax,dpp,dtheta,edrive,emitt,etai,lf, & !! Heavy-ion Driver Design and Scaling, R. Bieri et al., !! Fusion Technology, vol.21 (1992) 1583 !! Meier and Bieri, Fusion Technology, vol.21 (1992) 1547 - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use constants, only: echarge, mproton, degrad, pi @@ -577,8 +574,7 @@ function cbeam(etai,bmax,aaion,qion,sigma,sigma0,emitt,vi,eomc2) !! of a heavy ion driver suitable for inertial fusion energy. !! Heavy-ion Driver Design and Scaling, R. Bieri et al., !! Fusion Technology, vol.21 (1992) 1583 - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! implicit none @@ -623,8 +619,7 @@ function betgam(aaion,qion,v) !! heavy ions in a beam driver suitable for inertial fusion energy. !! Heavy-ion Driver Design and Scaling, R. Bieri et al., !! Fusion Technology, vol.21 (1992) 1583 - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! implicit none @@ -663,8 +658,7 @@ subroutine lasdrv(edrive,gain,etadrv) !! Meier and Rosenberg. !! Meier and Rosenberg, Fusion Technology vol.21 (1992) p.1552 !! F/MI/PJK/LOGBOOK12, p.86 - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! implicit none @@ -755,8 +749,7 @@ subroutine driver(edrive,gainve,etave,gain,etadrv) !! suitable for inertial fusion energy. !! Gain and driver efficiency data are interpolated from input data. !! F/MI/PJK/LOGBOOK12, p.85 - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! implicit none @@ -817,8 +810,7 @@ subroutine ifebld(outfile,iprint) !! This routine constructs the build of an inertial fusion energy device !! and calculates the material volumes for the device core. !! F/MI/PJK/LOGBOOK12, p.52 - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use process_output, only: oheadr, obuild, ovarre @@ -1051,8 +1043,7 @@ subroutine bld2019 !! and top corners and with a lower shield at the centre. See diagram !! attached to Issue #907. !! Issue #907 - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use constants, only: pi use build_variables, only: fwarea @@ -1248,8 +1239,7 @@ subroutine genbld !! device, assumed to be cylindrically-symmetric, and to calculate !! the material volumes for the device core. !! F/MI/PJK/LOGBOOK12, p.52 - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use constants, only: pi @@ -1372,8 +1362,7 @@ subroutine osibld !! device, based on the design of the OSIRIS study, and to calculate !! the material volumes for the device core. !! F/MI/PJK/LOGBOOK12, p.56 - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use constants, only: pi @@ -1406,8 +1395,7 @@ subroutine sombld !! the material volumes for the device core. !! Sviatoslavsky et al, Fusion Technology vol.21 (1992) 1470 !! F/MI/PJK/LOGBOOK12, p.53 - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use constants, only: pi @@ -1550,8 +1538,7 @@ subroutine hylbld !! the material volumes for the device core. !! Moir, Fusion Technology vol.21 (1992) 1475 !! F/MI/PJK/LOGBOOK12, p.57 - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use constants, only: pi @@ -1670,8 +1657,7 @@ subroutine ifestr !! an Inertial Fusion Energy power plant. !!

In fact, the output masses are all trivially zero, as they are !! magnetic fusion specific. F/MI/PJK/LOGBOOK12, p.87 - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use structure_variables, only: aintmass, clgsmass, coldmass, fncmass, gsmass @@ -1697,8 +1683,7 @@ subroutine ifetgt() !! delivery system and the target factory, for an Inertial !! Fusion Energy power plant. !! F/MI/PJK/LOGBOOK12, pp.87-88 - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use ife_variables, only: tfacmw, ptargf, reprat @@ -1729,8 +1714,7 @@ subroutine ifefbs(outfile,iprint) !! masses and other parameters, for an Inertial Fusion Energy device. !! F/MI/PJK/LOGBOOK12, p.86 !! Moir et al., Fusion Technology, vol.25 (1994) p.5 - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use build_variables, only: fwarea @@ -1873,8 +1857,7 @@ subroutine ifepw1 !! and plant power balance constituents, for an IFE power plant. !! F/MI/PJK/LOGBOOK12, pp.67,89 !! Bourque et al., Fusion Technology vol.21 (1992) 1465 - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use fwbs_variables, only: emult, fhole, pnucblkt, pnucshld, pnucloss @@ -1956,8 +1939,7 @@ subroutine ifeacp(outfile,iprint) !! iprint : input integer : switch for writing to output file (1=yes) !! This routine calculates the AC power requirements for an IFE power plant. !! F/MI/PJK/LOGBOOK12, p.68 - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use buildings_variables, only: efloor @@ -2046,8 +2028,7 @@ subroutine ifepw2(outfile,iprint) !! routines IFEPW1 or !! IFEACP. !! F/MI/PJK/LOGBOOK12, p.67 - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use cost_variables, only: ireactor, ipnet @@ -2132,8 +2113,7 @@ subroutine ifevac !! Inertial Fusion Energy power plant. !!

The calculated values are hard-wired; they are based loosely !! on those for a tokamak of 6m major radius. F/MI/PJK/LOGBOOK12, p.87 - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use vacuum_variables, only: dlscal, nvduct, vacdshm, vcdimax, vpumpn @@ -2161,8 +2141,7 @@ subroutine ifebdg(outfile,iprint) !! closely on that for tokamaks etc. in routine !! BLDGS. !! F/MI/PJK/LOGBOOK12, p.87 - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use buildings_variables, only: wrbi, rbwt, rbrt, fndt, trcl, hcwt, hccl, & diff --git a/source/fortran/ife_variables.f90 b/source/fortran/ife_variables.f90 index 788c156813..fe15297bf6 100644 --- a/source/fortran/ife_variables.f90 +++ b/source/fortran/ife_variables.f90 @@ -5,8 +5,7 @@ module ife_variables !! !!### References !! - !! - AEA FUS 251: A User's Guide to the PROCESS Systems Code - + !! - #ifndef dp use, intrinsic :: iso_fortran_env, only: dp=>real64 #endif diff --git a/source/fortran/init_module.f90 b/source/fortran/init_module.f90 index ac6072b56d..3d3e3c76cf 100644 --- a/source/fortran/init_module.f90 +++ b/source/fortran/init_module.f90 @@ -111,7 +111,7 @@ subroutine init !! the input file, and checks the run parameters for consistency. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Codefile:///home/mkumar/process/source/fortran/divertor_ode.f90 + !! file:///home/mkumar/process/source/fortran/divertor_ode.f90 ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!file:///home/mkumar/process/source/fortran/input.f90 diff --git a/source/fortran/initial.f90 b/source/fortran/initial.f90 index 0de7763f43..e9f9db3174 100755 --- a/source/fortran/initial.f90 +++ b/source/fortran/initial.f90 @@ -5,8 +5,7 @@ subroutine initial !! Routine to initialise !! author: P J Knight, CCFE, Culham Science Centre !! None - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use define_iteration_variables, only: init_itv_1, init_itv_2, init_itv_3, & @@ -106,7 +105,7 @@ subroutine initial call init_itv_49 call init_itv_50 call init_itv_51 - + call init_itv_53 call init_itv_54 @@ -239,8 +238,7 @@ subroutine check !! This routine performs a sanity check of the input variables !! and ensures other dependent variables are given suitable values. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use build_variables, only: blnkith, bore, gapoh, ohcth, precomp, iprecomp, & diff --git a/source/fortran/iteration_variables.f90 b/source/fortran/iteration_variables.f90 index 9342641211..1371cd56da 100755 --- a/source/fortran/iteration_variables.f90 +++ b/source/fortran/iteration_variables.f90 @@ -4264,7 +4264,7 @@ subroutine convxc(xc,nn) case (49); call set_itv_49(ratio) case (50); call set_itv_50(ratio) case (51); call set_itv_51(ratio) - case (52); + case (52); case (53); call set_itv_53(ratio) case (54); call set_itv_54(ratio) case (55); @@ -4429,8 +4429,7 @@ subroutine boundxc !! None !! This subroutine converts the scaled iteration variable bounds !! back to their real values. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use numerics, only: nvar, bondl, bondu, scale, ixc, boundl, boundu diff --git a/source/fortran/main_module.f90 b/source/fortran/main_module.f90 index 3a952f53d4..b254f7c0d0 100644 --- a/source/fortran/main_module.f90 +++ b/source/fortran/main_module.f90 @@ -34,8 +34,7 @@ subroutine inform(progid) !! This subroutine uses system calls to identify the user, date, !! machine etc. for the present run, and stores the information !! in a character string array. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use constants, only: nout @@ -321,8 +320,7 @@ end subroutine run_summary ! !! author: P J Knight, CCFE, Culham Science Centre ! !! ifail : output integer : error flag ! !! This routine calls the non-optimising equation solver. -! !! AEA FUS 251: A User's Guide to the PROCESS Systems Code -! ! +! !! ! ! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! use constants, only: nout, mfile, iotty ! use constraints, only: constraint_eqns @@ -473,8 +471,7 @@ subroutine herror(ifail) !! by default the output file and screen, respectively. !!

If IFAIL=1 then a feasible solution has been !! found and therefore no error message is required. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use constants, only: nout, iotty @@ -563,8 +560,7 @@ subroutine verror(ifail) !! by default the output file and screen, respectively. !!

If IFAIL=1 then a feasible solution has been !! found and therefore no error message is required. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use constants, only: nout, iotty diff --git a/source/fortran/maths_library.f90 b/source/fortran/maths_library.f90 index 126380cc72..57ab63b2f2 100644 --- a/source/fortran/maths_library.f90 +++ b/source/fortran/maths_library.f90 @@ -675,8 +675,7 @@ subroutine linesolv(a, ndim, b, x) !! x(ndim) : output real array : solution for Ax = b !! This routine solves the linear equation Ax = b. !! It calls (local copies of) the linpack routines sgefa and sgesl. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! implicit none @@ -720,8 +719,7 @@ subroutine hinv(h,ih,n,ipvt,info) !! = 1 normal return !! = 2 H matrix is singular !! This routine inverts the matrix H by use of linpack software. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use global_variables, only: verbose implicit none @@ -779,8 +777,7 @@ subroutine dotpmc(x,ix,y,iy,c,total,n,iflag) !! This subroutine computes !! total = (plus or minus c) plus or minus the dot product of x and y !! by invoking the basic linear algebra routine dot. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! implicit none @@ -832,8 +829,7 @@ subroutine sgesl(a,lda,n,ipvt,b,job) !! zero on the diagonal. Technically this indicates singularity !! but it is often caused by improper arguments or improper !! setting of lda. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! implicit none @@ -927,8 +923,7 @@ subroutine sgefa(a,lda,n,ipvt,info) !! = 0 normal completion !! = k if u(k,k) == 0.0 !! This routine factors a real matrix by Gaussian elimination. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use global_variables, only: verbose implicit none @@ -1044,8 +1039,7 @@ subroutine sgedi(a,lda,n,ipvt,det,job) !! using the factors computed by (SGECO or) SGEFA. !!

A division by zero will occur if the input factor contains !! a zero on the diagonal and the inverse is requested. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! implicit none @@ -1154,8 +1148,7 @@ subroutine sscal(n,sa,sx,incx) !! incx : input integer : interval in storage between sx array elements !! This routine scales a vector by a constant, using !! unrolled loops for increments equal to 1. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! implicit none @@ -1222,8 +1215,7 @@ subroutine saxpy(n,sa,sx,incx,sy,incy) !! incy : input integer : interval in storage between sy array elements !! This routine calculates sa*sx(:) + sy(:), !! using unrolled loops for increments equal to 1. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! implicit none @@ -1290,8 +1282,7 @@ subroutine sswap(n,sx,incx,sy,incy) !! incy : input integer : interval in storage between sy array elements !! This routine swaps the contents of two vectors, !! using unrolled loops for increments equal to 1. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! implicit none @@ -1367,8 +1358,7 @@ function sdot(n,sx,incx,sy,incy) !! incy : input integer : interval in storage between sy array elements !! This routine performs the dot product of two vectors, i.e. !! calculates the sum from i=1 to N, of X(i)*Y(i). - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! implicit none @@ -1414,8 +1404,7 @@ function isamax(n,sx,incx) !! incx : input integer : interval in storage between sx array elements !! This routine finds the array element with the maximum !! absolute value, and returns the element index. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! implicit none diff --git a/source/fortran/output.f90 b/source/fortran/output.f90 index 47313ab38e..8c28ac9fb9 100755 --- a/source/fortran/output.f90 +++ b/source/fortran/output.f90 @@ -7,8 +7,7 @@ module process_output !! N/A !! This module contains a number of routines that allow the !! program to write output to a file unit in a uniform style. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! #ifndef dp use, intrinsic :: iso_fortran_env, only: dp=>real64 @@ -33,8 +32,7 @@ subroutine ocentr(file,string,width) !! This routine writes out a centred header within a line of asterisks. !! It cannot cope with a zero-length string; routine !! ostars should be used instead. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use numerics, only: active_constraints, ncalls, ipnvars, ioptimz @@ -106,8 +104,7 @@ subroutine ostars(file,width) !! file : input integer : Fortran output unit identifier !! width : input integer : Total width of header !! This routine writes out a line of asterisks. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use global_variables, only: output_prefix, fileprefix @@ -142,8 +139,7 @@ subroutine oheadr(file,string) !! string : input character string : Character string to be used !! This routine writes out a centred header within a line of !! asterisks, and between two blank lines. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use numerics, only: active_constraints, sqsumsq, ioptimz @@ -179,8 +175,7 @@ subroutine oshead(file,string) !! string : input character string : Character string to be used !! This routine writes out a short, centred header within a line of !! asterisks, and between two blank lines. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use global_variables, only: icase @@ -212,8 +207,7 @@ subroutine oblnkl(file) !! author: P J Knight, CCFE, Culham Science Centre !! file : input integer : Fortran output unit identifier !! This routine writes out a simple blank line. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use constants, only: pi, nout @@ -239,8 +233,7 @@ subroutine osubhd(file,string) !! file : input integer : Fortran output unit identifier !! string : input character string : Character string to be used !! This routine writes out a subheading between two blank lines. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use constants, only: iotty, nout @@ -268,8 +261,7 @@ subroutine ocmmnt(file,string) !! file : input integer : Fortran output unit identifier !! string : input character string : Character string to be used !! This routine writes out a comment line. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use numerics, only: boundl, boundu, sqsumsq @@ -354,8 +346,7 @@ subroutine ovarrf(file,descr,varnam,value,output_flag) !! This routine writes out the description, name and value of a !! double precision variable in F format (e.g. !! -12345.000). - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use numerics, only: name_xc @@ -426,8 +417,7 @@ subroutine ovarre(file,descr,varnam,value,output_flag) !! This routine writes out the description, name and value of a !! double precision variable in E format (e.g. !! -1.234E+04). - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use numerics, only: name_xc @@ -507,8 +497,7 @@ subroutine ovarin(file,descr,varnam,value,output_flag) !! output_flag : optional character !! This routine writes out the description, name and value of an !! integer variable. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use numerics, only: name_xc, icc, ioptimz @@ -627,8 +616,7 @@ subroutine ocosts(file,ccode,descr,value) !! value : input real : Value of the cost item !! This routine writes out the cost code, description and value !! of a cost item. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use constants, only: pi, mfile, nplot, twopi @@ -675,8 +663,7 @@ subroutine obuild(file,descr,thick,total,variable_name) !! total : input real : Total build, including this component (m) !! This routine writes out a description, the thickness and !! summed build of a component of the radial or vertical build. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use numerics, only: boundl, boundu diff --git a/source/fortran/pf_power_variables.f90 b/source/fortran/pf_power_variables.f90 index 1111df94ae..5fc94e7f92 100644 --- a/source/fortran/pf_power_variables.f90 +++ b/source/fortran/pf_power_variables.f90 @@ -5,8 +5,7 @@ module pf_power_variables !! !!### References !! - !! - AEA FUS 251: A User's Guide to the PROCESS Systems Code - + !! - #ifndef dp use, intrinsic :: iso_fortran_env, only: dp=>real64 #endif diff --git a/source/fortran/pfcoil.f90 b/source/fortran/pfcoil.f90 index d768592a9f..ec87282344 100644 --- a/source/fortran/pfcoil.f90 +++ b/source/fortran/pfcoil.f90 @@ -7,8 +7,7 @@ module pfcoil_module !! N/A !! This module contains routines for calculating the !! parameters of the PF coil systems for a fusion power plant. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! #ifndef dp use, intrinsic :: iso_fortran_env, only: dp=>real64 diff --git a/source/fortran/pfcoil_variables.f90 b/source/fortran/pfcoil_variables.f90 index 98ac278108..c11e2edbf8 100644 --- a/source/fortran/pfcoil_variables.f90 +++ b/source/fortran/pfcoil_variables.f90 @@ -5,8 +5,7 @@ module pfcoil_variables !! !!### References !! - !! - AEA FUS 251: A User's Guide to the PROCESS Systems Code - + !! - #ifndef dp use, intrinsic :: iso_fortran_env, only: dp=>real64 #endif diff --git a/source/fortran/physics.f90 b/source/fortran/physics.f90 index 530616996c..e4a16e65dd 100644 --- a/source/fortran/physics.f90 +++ b/source/fortran/physics.f90 @@ -7,8 +7,7 @@ module physics_module !! N/A !! This module contains all the primary plasma physics routines !! for a tokamak device. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! #ifndef dp use, intrinsic :: iso_fortran_env, only: dp=>real64 diff --git a/source/fortran/physics_functions.f90 b/source/fortran/physics_functions.f90 index 77cf3aa2c8..d940671ae9 100644 --- a/source/fortran/physics_functions.f90 +++ b/source/fortran/physics_functions.f90 @@ -5,8 +5,7 @@ module physics_functions_module !! N/A !! This module contains physics routines which can be called by physics or !! other modules - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! #ifndef dp use, intrinsic :: iso_fortran_env, only: dp=>real64 @@ -51,8 +50,7 @@ subroutine pthresh(dene,dnla,bt,rmajor,kappa,sarea,aion,aspect,pthrmw) !! 123 (2008) 012033 !! J A Snipes and the International H-mode Threshold Database !! Working Group, 2000, Plasma Phys. Control. Fusion, 42, A299 - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use physics_variables, only: rminor, plascur @@ -311,8 +309,7 @@ function fint(rho) !! in routine PALPH. !! The fusion reaction assumed is controlled by flag !! ireaction set in PALPH. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use physics_variables, only: te, rhopedt, te0, teped, tesep, tbeta, & dene, rhopedn, ne0, neped, nesep @@ -605,8 +602,7 @@ subroutine beamfus(beamfus0,betbm0,bp,bt,cnbeam,dene,deni,dlamie, & !! dnbeam2: output real : hot beam ion density (/m3) !! palpnb : output real : alpha power from hot neutral beam ions (MW) !! This routine calculates the beam slowing down properties. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! implicit none @@ -684,8 +680,7 @@ subroutine beamcalc(nd,nt,ealphadt,ebeam,ecritd,ecritt,tausbme, & !! palfdb : output real : alpha power from deut. beam-background fusion (MW) !! palftb : output real : alpha power from trit. beam-background fusion (MW) !! This routine calculates the neutral beam alpha power and ion energy. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use constants, only: echarge, mproton @@ -767,8 +762,7 @@ function xbrak(e0,ec) !! ec : input real : critical energy for electron/ion slowing down of !! the beam ion (keV) !! This routine calculates something to do with the hot ion energy... - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! implicit none @@ -812,8 +806,7 @@ function palphabm(ealphadt,nbm,nblk,sigv,vol,ti,svdt) !! vol : input real : plasma volume (m3) !! This routine calculates the alpha power from !! beam-background fusion. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! implicit none @@ -847,8 +840,7 @@ function sgvhot(iabm,vcrx,ebeam) !! vcrx : input real : critical velocity for electron/ion slowing down of !! the beam ion (m/s) !! This routine calculates the hot beam fusion reaction rate in m3/s. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use error_handling, only: idiags, report_error @@ -910,8 +902,7 @@ function fsv(u) !! u : input real : abscissa of integration, = ratio of beam velocity !! to the critical velocity !! This is the integrand function for the hot beam fusion reaction rate. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use constants, only: mproton, echarge @@ -954,8 +945,7 @@ function sigbmfus(vrelsq) !! The functional form of the cross-section is in terms of the equivalent !! deuterium energy, i.e. for a tritium beam at 500 keV the energy !! used in the cross-section function is 333 keV. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! implicit none diff --git a/source/fortran/physics_variables.f90 b/source/fortran/physics_variables.f90 index 3d3e0150bc..06305449e2 100644 --- a/source/fortran/physics_variables.f90 +++ b/source/fortran/physics_variables.f90 @@ -5,8 +5,7 @@ module physics_variables !! !!### References !! - !! - AEA FUS 251: A User's Guide to the PROCESS Systems Code - + !! - #ifndef dp use, intrinsic :: iso_fortran_env, only: dp=>real64 #endif diff --git a/source/fortran/pulse_variables.f90 b/source/fortran/pulse_variables.f90 index eebf0b241b..2b4fa678ed 100644 --- a/source/fortran/pulse_variables.f90 +++ b/source/fortran/pulse_variables.f90 @@ -6,8 +6,7 @@ module pulse_variables !!### References !! !! - Work File Notes in F/MPE/MOD/CAG/PROCESS/PULSE - !! - AEA FUS 251: A User's Guide to the PROCESS Systems Code - + !! - #ifndef dp use, intrinsic :: iso_fortran_env, only: dp=>real64 #endif diff --git a/source/fortran/scan.f90 b/source/fortran/scan.f90 index 178ccf850a..80fcff114b 100644 --- a/source/fortran/scan.f90 +++ b/source/fortran/scan.f90 @@ -7,8 +7,7 @@ module scan_module !! None !! This module contains routines to perform a parameter scan !! over a range of values of a particular scanning variable. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! #ifndef dp @@ -861,8 +860,7 @@ subroutine post_optimise(ifail) !! Called after calling the optimising equation solver from Python. !! author: P J Knight, CCFE, Culham Science Centre !! ifail : input integer : error flag - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - + !! use constraints use error_handling use function_evaluator diff --git a/source/fortran/startup_variables.f90 b/source/fortran/startup_variables.f90 index 4bb37a9dba..de47e92fe3 100644 --- a/source/fortran/startup_variables.f90 +++ b/source/fortran/startup_variables.f90 @@ -6,8 +6,7 @@ module startup_variables !!### References !! !! - Work File Notes in F/MPE/MOD/CAG/PROCESS/PULSE - !! - AEA FUS 251: A User's Guide to the PROCESS Systems Code - + !! - #ifndef dp use, intrinsic :: iso_fortran_env, only: dp=>real64 #endif diff --git a/source/fortran/stellarator.f90 b/source/fortran/stellarator.f90 index 6acfa36bc1..c3e37d1e1a 100644 --- a/source/fortran/stellarator.f90 +++ b/source/fortran/stellarator.f90 @@ -7,8 +7,7 @@ module stellarator_module !! parameters of the first wall, blanket and shield components !! of a fusion power plant. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! #ifndef dp use, intrinsic :: iso_fortran_env, only: dp=>real64 @@ -49,8 +48,7 @@ subroutine stinit !! This routine initialises the variables relevant to stellarators. !! Many of these may override the values set in routine !! initial. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use build_variables, only: gapoh, iohcl, ohcth, tfootfi diff --git a/source/fortran/stellarator_fwbs.f90 b/source/fortran/stellarator_fwbs.f90 index d103c7cdb8..469696f420 100644 --- a/source/fortran/stellarator_fwbs.f90 +++ b/source/fortran/stellarator_fwbs.f90 @@ -7,8 +7,7 @@ module fwbs_module !! parameters of the first wall, blanket and shield components !! of a fusion power plant. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! #ifndef dp use, intrinsic :: iso_fortran_env, only: dp=>real64 @@ -48,8 +47,7 @@ subroutine sctfcoil_nuclear_heating_iter90(coilhtmx,dpacop,htheci,nflutf, & !!

  • j = 2 : tungsten shield (not used) !! Note: Costing and mass calculations elsewhere assume !! stainless steel only. - !! AEA FUS 251: A User's Guide to the PROCESS Systems Code - ! + !! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use build_variables, only: blnkith, blnkoth, fwith, fwoth, shldith, shldoth use cost_variables, only: cfactr, tlife diff --git a/source/fortran/structure_variables.f90 b/source/fortran/structure_variables.f90 index 24d2dd2019..d5e483fa6f 100644 --- a/source/fortran/structure_variables.f90 +++ b/source/fortran/structure_variables.f90 @@ -5,8 +5,7 @@ module structure_variables !! !!### References !! - !! - AEA FUS 251: A User's Guide to the PROCESS Systems Code - + !! - #ifndef dp use, intrinsic :: iso_fortran_env, only: dp=>real64 #endif diff --git a/source/fortran/tfcoil_variables.f90 b/source/fortran/tfcoil_variables.f90 index 7fd249051a..d3e5cfc28e 100644 --- a/source/fortran/tfcoil_variables.f90 +++ b/source/fortran/tfcoil_variables.f90 @@ -5,7 +5,6 @@ module tfcoil_variables !! !!### References !! - !! - AEA FUS 251: A User's Guide to the PROCESS Systems Code !! - ITER Magnets design description document DDD11-2 v2 2 (2009) #ifndef dp diff --git a/source/fortran/times_variables.f90 b/source/fortran/times_variables.f90 index 35614321f4..d08c094f9d 100644 --- a/source/fortran/times_variables.f90 +++ b/source/fortran/times_variables.f90 @@ -5,8 +5,7 @@ module times_variables !! !!### References !! - !! - AEA FUS 251: A User's Guide to the PROCESS Systems Code - + !! - #ifndef dp use, intrinsic :: iso_fortran_env, only: dp=>real64 #endif diff --git a/source/fortran/vacuum_variables.f90 b/source/fortran/vacuum_variables.f90 index df98a6cb29..7b017e5aec 100644 --- a/source/fortran/vacuum_variables.f90 +++ b/source/fortran/vacuum_variables.f90 @@ -5,8 +5,7 @@ module vacuum_variables !! !!### References !! - !! - AEA FUS 251: A User's Guide to the PROCESS Systems Code - + !! - #ifndef dp use, intrinsic :: iso_fortran_env, only: dp=>real64 #endif From 0987aa36724f6c72255a04276ffd6289a5cf6033 Mon Sep 17 00:00:00 2001 From: Michael Kovari Date: Wed, 12 Jun 2024 11:24:12 +0100 Subject: [PATCH 2/2] Removed two obsolete comments --- source/fortran/init_module.f90 | 6 ------ 1 file changed, 6 deletions(-) diff --git a/source/fortran/init_module.f90 b/source/fortran/init_module.f90 index 3d3e3c76cf..528f858b99 100644 --- a/source/fortran/init_module.f90 +++ b/source/fortran/init_module.f90 @@ -110,12 +110,6 @@ subroutine init !! the default values for the global variables, reads in data from !! the input file, and checks the run parameters for consistency. - - !! file:///home/mkumar/process/source/fortran/divertor_ode.f90 - - ! - ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!file:///home/mkumar/process/source/fortran/input.f90 - use global_variables, only: verbose, fileprefix, output_prefix use main_module, only: run_summary use constants, only: opt_file, vfile, nout, nplot, mfile, sig_file