Skip to content
jessicahunter24 edited this page Apr 14, 2013 · 35 revisions

##DRAFTING##

In PINSPEC isotopes are constructs that allow the user to access cross sections both inside and outside of simulations. Isotopes are added to materials, which are assigned to regions, which are added to the overall geometry. Adding isotopes to the simulation is very simple in PINSPEC. Users can add as many different isotopes as desired using the "Isotope" constructor. The argument is the element abbreviation and the mass number, surrounded in single quotes. An example defining the isotope for U235 and O16 is shown below.

>>> u235 = Isotope('U-235')
>>> o16 = Isotope('O-16')

Adding New Isotopes to the Library

The PINSPEC package comes with a small library of isotope cross sections (ENDF/B-VII). In order to view this library, navigate to the cross section library, found at PINSPEC/pinspec/xs-lib. In another terminal window (or outside of the Python interpreter) you can navigate to the directory from the PINSPEC directory:

cd pinspec/xs-lib
ls

The ls command will list all of the files in the directory. This library contains isotopes of common reactor materials with capture, elastic scattering, and fission cross sections. It is possible to add to this library and use other isotopes from the ENDF/B-VII cross section library. To do this, visit the National Nuclear Data Center and follow the steps below:

  • Select the element you wish to add to the library.
  • On the right hand side, select the isotope.
  • On the right hand side, select the "plot" link next to the cross section desired ((n,elastic), (n,gamma) or (n,total fission)). A new tab will appear.
  • On the right hand side, click "view evaluated data".
  • At the top of the page, scroll over the link called "Text". Right click and select "Save Link As..". This will give you the option of saving the cross section file as a text file. Save it in the xs-lib folder(PINSPEC/pinspec/xs-lib), and title it with the element abbreviation, mass number, and isotope designation. For example, the capture cross section (n,gamma) for Boron 10 should be saved as B-10-capture.txt. When the isotope is initialized in the input file, use the same formatting as the isotopes in the example; the element abbreviation and mass number: B-10.

##Other Isotope/Cross Section Options

After initializing isotopes, the user can set options for them. One option available is to neglect the thermal scattering for an isotope. This causes the neutron to continue elastically scattering past the 4eV thermal energy cutoff.

>>> o16.neglectThermalScattering()

It is also possible to set group cross sections for isotopes. In the example, the command setMultigroupElasticXS() is used to create a flat elastic cross section over an energy interval. The first argument is an array with energies, and the second argument is the corresponding cross sections for those energies.

>>> # Set one group potential elastic scattering xs for u-235
>>> xs_energies = numpy.array([1E-5, 20E6])
>>> xs = numpy.array([29.5])
>>> u235.setMultigroupElasticXS(xs_energies, xs)

The same function also exists for the capture cross section. In this case the cross section is set to 34.5.

    #Set one group capture scattering xs for u-235
    xs = numpy.array([34.5])
    u235.setMultigroupCaptureXS(xs_energies, xs)

Next: Materials

Tutorials

Home

Clone this wiki locally