From 816d080db93f9173460112779c18355760e6f414 Mon Sep 17 00:00:00 2001 From: Michael Jarrett Date: Thu, 1 Dec 2022 09:14:06 -0800 Subject: [PATCH] Cleaning up flux reconstruction parameters (#1002) We are removing some parameters from ARMI, because they are too design specific to the one code that uses them: * `axialMgFluxReconCoeff` * `axialMgFluxProfileNeutron` * `axialMgFluxProfileGamma` * `radialMgFluxProfile` * `radialMgFluxProfileAdj` * `radialMgFluxProfileNeutron` * `radialMgFluxProfileNeutronAdj` * `radialMgFluxProfileGamma` But we are also adding back in some parameters that were recently moved out of ARMI: * `pointsEdgeFastFluxFr` * `pointsEdgeDpa` * `pointsEdgeDpaRate` --- armi/physics/neutronics/parameters.py | 176 +++++++++----------------- 1 file changed, 58 insertions(+), 118 deletions(-) diff --git a/armi/physics/neutronics/parameters.py b/armi/physics/neutronics/parameters.py index 3e322ee11..4674f0dcd 100644 --- a/armi/physics/neutronics/parameters.py +++ b/armi/physics/neutronics/parameters.py @@ -218,84 +218,6 @@ def mgFlux(self, value): default=None, ) - pb.defParam( - "axialMgFluxReconCoeff", - units="", - description=""" - The coefficients in the axial multigroup flux profile polynomial for this block. The flux profile is - usually A*z^4 + B*z^3 + C*z^2 + D*z + E, and so this variable will be the 5 x ng list, so - axialMgFluxReconCoeff[g][i] is the ith coefficient for flux group g. Also, this flux profile is - normalized (for each group) so that its average is always 1.0 in each block. One must multiply the - coefficients of each group by the block-average group flux to obtain the axial group flux profile. - """, - location=ParamLocation.AVERAGE, - saveToDB=True, - default=None, - ) - - pb.defParam( - "axialMgFluxProfileNeutron", - units="", - description="", - location=ParamLocation.AVERAGE, - saveToDB=False, - default=None, - ) - - pb.defParam( - "axialMgFluxProfileGamma", - units="", - description="", - location=ParamLocation.AVERAGE, - saveToDB=False, - default=None, - ) - - pb.defParam( - "radialMgFluxProfile", - units="", - description="", - location=ParamLocation.AVERAGE, - saveToDB=True, - default=None, - ) - - pb.defParam( - "radialMgFluxProfileAdj", - units="", - description="", - location=ParamLocation.AVERAGE, - saveToDB=True, - default=None, - ) - - pb.defParam( - "radialMgFluxProfileNeutron", - units="", - description="", - location=ParamLocation.AVERAGE, - saveToDB=True, - default=None, - ) - - pb.defParam( - "radialMgFluxProfileNeutronAdj", - units="", - description="", - location=ParamLocation.AVERAGE, - saveToDB=True, - default=None, - ) - - pb.defParam( - "radialMgFluxProfileGamma", - units="", - description="", - location=ParamLocation.AVERAGE, - saveToDB=True, - default=None, - ) - pb.defParam( "betad", units="", @@ -401,6 +323,64 @@ def linPowByPinGamma(self, value): default=None, ) + with pDefs.createBuilder( + saveToDB=True, + default=None, + location=ParamLocation.EDGES, + categories=[parameters.Category.detailedAxialExpansion, "depletion"], + ) as pb: + + pb.defParam( + "pointsEdgeFastFluxFr", + units=None, + description="Fraction of flux above 100keV at edges of the block", + ) + + pb.defParam( + "pointsEdgeDpa", + units="dpa", + description="displacements per atom at edges of the block", + categories=["cumulative", "detailedAxialExpansion", "depletion"], + ) + + pb.defParam( + "pointsEdgeDpaRate", + units="dpa/s", + description="Current time derivative of the displacement per atoms at edges of the block", + ) + + with pDefs.createBuilder( + saveToDB=True, + default=None, + location=ParamLocation.CORNERS, + categories=[parameters.Category.detailedAxialExpansion, "depletion"], + ) as pb: + pb.defParam( + "cornerFastFlux", + units="n/cm^2/s", + description="Neutron flux above 100keV at hexagon block corners", + ) + + pb.defParam( + "pointsCornerFastFluxFr", + units=None, + description="Fraction of flux above 100keV at corners of the block", + ) + + pb.defParam( + "pointsCornerDpa", + units="dpa", + description="displacements per atom at corners of the block", + location=ParamLocation.CORNERS, + categories=["cumulative", "detailedAxialExpansion", "depletion"], + ) + + pb.defParam( + "pointsCornerDpaRate", + units="dpa/s", + description="Current time derivative of the displacement per atoms at corners of the block", + ) + with pDefs.createBuilder( default=0.0, location=ParamLocation.AVERAGE, @@ -678,46 +658,6 @@ def linPowByPinGamma(self, value): categories=["detailedAxialExpansion"], ) - pb.defParam( - "cornerFastFlux", - units="n/cm^2/s", - description="Neutron flux above 100keV at hexagon block corners", - location=ParamLocation.CORNERS, - categories=["detailedAxialExpansion", "depletion"], - saveToDB=True, - default=None, - ) - - pb.defParam( - "pointsCornerFastFluxFr", - units=None, - description="Fraction of flux above 100keV at corners of the block", - location=ParamLocation.CORNERS, - categories=["detailedAxialExpansion", "depletion"], - saveToDB=True, - default=None, - ) - - pb.defParam( - "pointsCornerDpa", - units="dpa", - description="displacements per atom at corners of the block", - location=ParamLocation.CORNERS, - categories=["cumulative", "detailedAxialExpansion", "depletion"], - saveToDB=True, - default=None, - ) - - pb.defParam( - "pointsCornerDpaRate", - units="dpa/s", - description="Current time derivative of the displacement per atoms at corners of the block", - location=ParamLocation.CORNERS, - categories=["detailedAxialExpansion", "depletion"], - saveToDB=True, - default=None, - ) - pb.defParam( "pdensGenerated", units="W/cm^3",