conflux.SumEngine ================= .. py:module:: conflux.SumEngine Classes ------- .. autoapisummary:: conflux.SumEngine.SumEngine Module Contents --------------- .. py:class:: SumEngine(betaSpectraDB) Bases: :py:obj:`conflux.Basic.Spectrum`, :py:obj:`conflux.Basic.Summed` Class to carry out the summation of reactor antineutrino/beta spectrum by adding the spectra of fission and beta decaying isotopes based on their contributions in the model. The contributions is expected to be provided by the users. .. py:attribute:: FPYlist :type: dict Dictionary to save fission product yields in the summation model .. py:attribute:: istplist :type: dict Dictionary to save all fissile and non-fissile isotope that directly contribute in the summation model .. py:attribute:: betaSpectraList :type: dict Dictionary of the spectra of all fissile and non-fissile isotope that directly contribute in the summation model .. py:attribute:: betaUncertainty :type: dict Dictionary of the spectrum uncertainty of all fissile and non-fissile isotope that directly contribute in the summation model .. py:attribute:: countlist :type: dict Dictionary of contribution (decay accoungting or fractional) of all fissile and non-fissile isotope that directly contribute in the summation model .. py:attribute:: d_countlist :type: dict Dictionary of contribution incertainty of all fissile and non-fissile isotope that directly contribute in the summation model .. py:attribute:: betaDB :type: conflux.BetaEngine.BetaEngine Calculated database of beta/neutrino spectra to sum from. The object should only be called after running the :meth:`conflux.BetaEngine.BetaEngine.CalcBetaSpectra` function .. py:attribute:: modelUncList .. py:attribute:: yieldUncList .. py:attribute:: covariance .. py:method:: Clear() Clear out all associated dictionaries inside the SumEngine for recalculation. :return: DESCRIPTION :rtype: TYPE .. py:method:: AddFissionIstp(isotope, istpname, count=1, d_count=0) Add the spectrum of a fission isotope into the the list of FPYs in this SumEngine model. :param isotope: A fission isotope object after running :meth:`conflux.FPYEngine.FissionIstp.CalcBetaSpectra` so the spectrum of the fission isotope can be saved for the summation. :type isotope: :class:`conflux.FPYEngine.FissionIstp` :param istpname: A unique name assigned to the fission isotope. The name is required to be unique for editting the isotope, instead of redefining the SumEngine model. :type istpname: str :param count: The counting of total fissions, allowed to be float for fractional calculation, defaults to 1 :type count: float, optional :param d_count: The uncertainty of the counting, defaults to 0 :type d_count: float, optional .. py:method:: AddBetaIstp(betaIstp, istpname, count=1, d_count=0) Add the spectrum of a non-fissile beta decaying isotope into the the list of FPYs in this SumEngine model. NOTE: User can only expect the beta/neutrino spectrum of this individual beta decay, no decay chaine following this decay will be added. :param isotope: A beta isotope object after running :meth:`conflux.BetaEngine.BetaEngine.CalcBetaSpectra` so the spectrum of the fission isotope can be saved for the summation. If the object is a customized beta/neutrino source, one must add and calculate it in self.betaDB before calling it in this function. :type isotope: :class:`conflux.BetaEngine.BetaIstp` :param istpname: A unique name assigned to this isotope. The name is required to be unique for editting the isotope, instead of redefining the SumEngine model. :type istpname: str :param count: The counting of total decay, allowed to be float for fractional calculation, defaults to 1 :type count: float, optional :param d_count: The uncertainty of the counting, defaults to 0 :type d_count: float, optional .. py:method:: EditContribution(istpname, count, d_count) Edit the count and d_count parameters of a fissile isotope or beta isotope that is already added into this SumEngine model. :param istpname: The UNIQUE name of the isotope assigned when the isotope was added to this SumEngine model. :type istpname: str :param count: The to-be-updated counting of total decay, allowed to be float for fractional calculation, defaults to 1 :type count: float, optional :param d_count: The uncertainty of the counting, defaults to 0 :type d_count: float, optional .. py:method:: CalcReactorSpectrum() Summing all spectra of the added isotopes based on their count and d_count values. Running this function will update the spectrum and uncertainty, if already calculated. .. py:method:: CustomCovariance(DBname, percent=False, rel=False) Loads a user defined covariance matrix into the model. The loading of the covariance matrix into the model is very similar to the FissionIstp method LoadCovarianceDB Parameters: DBname (String) : The path to the user defined covariance csv file. has the format "/path/to/file" percent (boolean) : Determines whether the covarainces are relative or absolute rel (boolean) : Determines whether the product of the yields of each pair of isotopes is a value, or 1 Returns: None .. py:method:: AddModel(fissionModel, W=1.0) Adds a reactor model to the summation engine. (obsolete) Parameters: fissionModel (FissionModel): A Fission Model containing the fission/non-fissile/non-equilibrium isotopes W (float) : The weight applied to the reactor model in a multi-reactor engine. The default weight is set to 1. Returns: None .. py:method:: NormalizeFP() Normalizes the Fission Products in the summation engine. Normalization must occur before CalcReactorSpectrum is called for the normalization to be applied. Parameters: None Returns: None .. py:method:: OldCalcReactorSpectrum(betaSpectraDB, branchErange=[-1, 20], processMissing=False, ifp_begin=0, ifp_end=0, modelunc=True, silent=False) Calculates the reactor spectrum based off the fission yield database as well as the betaSpectra database. (obsolete) Parameters: betaSpectraDB (BetaEngine): a dictionary of the spectral information for each beta branch processMissing (boolean): Determines if missing fission product information is processed ifp_begin (float): The start decay time for immediate fission product calculations ifp_end (float): The end decay time for immediate fission product calculations modelUnc (boolean): Determines if model uncertainties are included in the calculation. Returns: None