diff --git a/docs/source/methods/cross_sections.rst b/docs/source/methods/cross_sections.rst index 7fc076f6df..9c11d3626d 100644 --- a/docs/source/methods/cross_sections.rst +++ b/docs/source/methods/cross_sections.rst @@ -76,48 +76,46 @@ The format is described in the :ref:`mgxs_lib_spec`. The data itself can be prepared via traditional paths or directly from a continuous-energy OpenMC calculation by use of the Python API as is shown in the Python API :ref:`_notebook_mgxs_part_iv` example notebook. This multi-group -library consists of library meta-data (such as the energy group structure) and -multiple `xsdata` objects which contains the required microscopic or macroscopic +library consists of meta-data (such as the energy group structure) and multiple +`xsdata` objects which contains the required microscopic or macroscopic multi-group data. At a minimum, the library must contain the absorption cross section (:math:`\sigma_{a,g}`) and a scattering matrix. If the problem is an eigenvalue -problem then all fissionable materials must also contain either fission spectrum -data (:math:`\chi{g'}`) and a fission production cross section -(:math:`\nu\sigma_{f,g}`), or, a fission production matrix cross section -(:math:`\nu\sigma_{f,g\arrow\g'}`). If fission or energy release from fission -tallies are requested by the user, then the library must also contain the -fission cross section (:math:`\sigma_{f,g}`) or the fission energy release -cross section (:math:`\kappa\sigma_{f,g}`). +problem then all fissionable materials must also contain either +a fission production matrix cross section (:math:`\nu\sigma_{f,g\arrow\g'}`), or +both the fission spectrum data (:math:`\chi{g'}`) and a fission production cross +section (:math:`\nu\sigma_{f,g}`), or, . The library must also contain +the fission cross section (:math:`\sigma_{f,g}`) or the fission energy release +cross section (:math:`\kappa\sigma_{f,g}`) if the associated tallies are +required by the model using the library. After a scattering collision, the outgoing particle experiences a change in both energy and angle. The probability of a particle resulting in a given outgoing energy group (`g'`) given a certain incoming energy group (`g`) is provided -by the scattering matrix cross sections themselves. The angular information, -however, can be expressed either via Legendre expansion of the particle's -change-in-angle (:math:`\mu`), a tabular representation of the probability of -a particle experiencing a given :math:`\mu`, or a histogram representation of the -probability of a particle experiencing a given :math:`\mu`. The formats used to +by the scattering matrix data. The angular information can be expressed either +via Legendre expansion of the particle's change-in-angle (:math:`\mu`), a +tabular representation of the probability distribution function of :math:`\mu`, +or a histogram representation of the same PDF. The formats used to represent these are described in the :ref:`mgxs_lib_spec`. Unlike the continuous-energy mode, the multi-group mode does not explicitly track particles produced from scattering multiplication (i.e., :math:`(n,xn)`) reactions. These are instead accounted for by adjusting the weight of the particle after the collision such that the correct total weight is maintained. -The information for how to adjust this weight is optionally provided by the -`multiplicity` data which exists as a group-wise matrix. This data represents -the average number of particles emitted from a scattering reaction, given a -scattering reaction has occurred: +The weight adjustment factor is optionally provided by the `multiplicity` data +which is required to be provided in the form of a group-wise matrix. +This data is provided as a group-wise matrix since the probability of producing +multiple particles in a scattering reaction depends on both the incoming energy, +`g`, and the sampled outgoing energy, `g'`. This data represents the average +number of particles emitted from a scattering reaction, given a scattering +reaction has occurred: .. math:: multiplicity_{g \arrow g'} = \frac{\nu_{scatter}\sigma_{s,g \arrow g'}}{ \sigma_{s,g \arrow g'}} -This data is provided as a group-wise matrix since the probability of producing -multiple particles in a scattering reaction depends on both the incoming energy, -`g`, and the sampled outgoing energy, `g'`. - If this scattering multiplication information is not provided in the library then no weight adjustment will be performed. This is equivalent to neglecting any additional particles produced in scattering multiplication reactions. @@ -134,7 +132,7 @@ follows: \sigma_{a,g} = \sigma_{t,g} - \sum_{g'}{\nu_{scatter}\sigma_{s,g \arrow g'}} -The above method is the same as is typically done with most deterministic methods. +The above method is the same as is usually done with most deterministic solvers. Note that this method is less accurate than using the scattering multiplication weight adjustment since simply reducing the absorption cross section does not include any information about the outgoing energy of the particles produced in diff --git a/docs/source/methods/physics.rst b/docs/source/methods/physics.rst index 3a243f7e8c..e08965371c 100644 --- a/docs/source/methods/physics.rst +++ b/docs/source/methods/physics.rst @@ -219,7 +219,7 @@ Multi-Group Scattering In multi-group mode, a scattering collision requires that the outgoing energy group of the simulated particle be selected from a probability distribution, -then the change-in-angle selected from a probability distribution according to +the change-in-angle selected from a probability distribution according to the outgoing energy group, and finally the particle's weight adjusted again according to the outgoing energy group. @@ -232,17 +232,19 @@ produced from the outgoing group (`g'`) data for the given incoming group (`g`): CDF = \sum_{g'=0}^{h}\Sigma_{s,g \arrow g'} If the scattering data is represented as a Legendre expansion, then the -value of :math:`\Sigma_{s,g \arrow g'}` above is simply the 0th order. If the -data is provided as tabular or histogram data, then the value of -:math:`\Sigma_{s,g \arrow g'}` is the sum of all bins of data for a given `g` -and `g'` pair. +value of :math:`\Sigma_{s,g \arrow g'}` above is simply the 0th order for the +given group transfer. If the data is provided as tabular or histogram data, then +the value of :math:`\Sigma_{s,g \arrow g'}` is the sum of all bins of data for a +given `g` and `g'` pair. Now that the outgoing energy is known the change-in-angle, :math:`\mu` can be determined. If the data is provided as a Legendre expansion, this is done by rejection sampling of the probability distribution represented by the Legendre series. For efficiency, the selected values of the PDF (:math:`f(\mu)`) are chosen to be between 0 and the maximum value of :math:`f(\mu)` in the domain of --1 to 1. +-1 to 1. Note that this sampling scheme automatically forces negative values of +the :math:`f(\mu)` probability distribution function to be treated as zero +probabilities. If the angular data is instead provided as a tabular representation, then the value of :math:`\mu` is selected as described in the :ref:`angle-tabular` @@ -254,7 +256,7 @@ the selection of the outgoing energy (since the energy group representation is simply a histogram representation) except the CDF is composed of the angular bins and not the energy groups. However, since we are interested in a specific value of :math:`\mu` instead of a group, then an angle selected from a uniform -distribution within from the chosen histogram bin. +distribution within from the chosen angular bin. The final step in the scattering treatment is to adjust the weight of the neutron to account for any production of neutrons due to :math:`(n,xn)`