Example #1
0
    def applyMaterialMassFracsToNumberDensities(self):
        """
        Set initial (cold) number densities of this component based Material composition.
        """
        density = self.material.getProperty("density",
                                            Tc=self.inputTemperatureInC)

        self.p.numberDensities = densityTools.getNDensFromMasses(
            density, self.material.p.massFrac)
Example #2
0
    def updateYieldVector(self,
                          numberDensities=None,
                          massFrac=None,
                          fpFiltered=False):
        """update the yield values on the single lumped fission product"""
        if massFrac is not None:
            numberDensities = densityTools.getNDensFromMasses(1, massFrac)

        if numberDensities is None:
            raise ValueError(
                "massFrac -- {} -- or numberDensities -- {} -- must be populated"
                .format(massFrac, numberDensities))
        self._updateYieldVectorFromNumberDensities(numberDensities,
                                                   fpFiltered=fpFiltered)
Example #3
0
    def applyHotHeightDensityReduction(self):
        """
        Set initial (hot) number densities of this component based Material composition.

        Notes
        -----
        We apply the hot-height density reduction here to account for pre-expanded
        block heights in blueprints.
        Future temperature changes can be handled by multiplications of 1/(1+dLL)**2
        instead of 1/(1+dLL)**3 since we have pre-expanded in the axial direction.
        """
        denistyIfNotPreExpandedAxially = self.material.getProperty(
            "density", self.temperatureInK)

        # axial expansion factor must be applied because ARMI expects hot heights
        # to be entered on assemblies in the blueprints  so that it doesn't have to
        # handle the problem of fuel axially expanding at a different rate than clad.
        axialExpansionFactor = 1.0 + self.material.linearExpansionFactor(
            self.temperatureInC, self.inputTemperatureInC)

        self.p.numberDensities = densityTools.getNDensFromMasses(
            denistyIfNotPreExpandedAxially / axialExpansionFactor,
            self.material.p.massFrac,
        )