Skip to main content
U.S. flag

An official website of the United States government

Dot gov

The .gov means it’s official.
Federal government websites often end in .gov or .mil. Before sharing sensitive information, make sure you’re on a federal government site.

Https

The site is secure.
The https:// ensures that you are connecting to the official website and that any information you provide is encrypted and transmitted securely.

Reflectometry Software

NCNR has a number of programs to aid in reflectometry.

Reductus

Reductus is a web application providing support for data reduction and simple fitting of NCNR data.  Reduction is driven by the reflred python libraries, which support the common operations  required to convert raw X-Ray and neutron reflectivity data to a reflectivity curve in physical units.

Data files are accessed directly by URL from the NCNR online data repository and the reduction templates (recipes) can be modified with a graphical editor, and downloaded and reused or shared by email.  Reduced data can be downloaded in columnar text-file form.  No login or password is required to use the application.

Reductus replaces the Reflpak application.  If you use reductus to reduce your experimental data, please consider including a citation to Journal of Applied Crystallography, Volume 51, Part 5, pages 1500-1506

Refl1D

Refl1D is a more powerful fitting program which adds capabilities for simultaneous fitting and uncertainty analysis. See the Refl1D manual for more details. Refl1D uses Bumps for fitting and PeriodicTable for scattering length density calculations.

Installation from the Python Package Index

  •  Install Python 2.7 or Python 3.6 (such as from  Python.org or Anaconda)
  • open a terminal window (plain terminal on mac, Anaconda Prompt on Windows) and issue these commands:
    • pip install numpy scipy matplotlib wxpython periodictable
    • pip install refl1d

Then issuing the command "refl1d" from the command line will start the command-line client, and "refl1d --edit" will start an interactive fitting session.  "pip install --upgrade refl1d" will update to the latest version, any time.

NOTE:  on Mac, if you use an Anaconda python distribution, to start an interactive refl1d session you will have to type "pythonw -m refl1d.main --edit" instead of the command above

NOTE:   on Windows, you might need to install a compatible C++ compiler (but you probably don't)

There is also a binary installer for Windows, that is not updated as often as the pip version.

PeriodicTable

Online SLD Calculator: The online SLD/activation calculator uses the same PeriodicTable package as Refl1D and SasView to compute scattering length density and neutron activation.

Web Reflectivity Calculators

We provide a browser-based  magnetic reflectivity calculator as well a non-magnetic (unpolarized) reflectivity calculator.  The user-generated SLD profiles can be exported to a heavily-commented Python Refl1D model file to provide an easy way to get started with modeling data in Refl1D.  Please see the article in J. Res. NIST for more details.

Citing this software

If no other citation is provided, acknowledging the use of these tools in publications may be done by making a reference to this site. For example:

The Refl1D and Reductus programs were used for elements of the data reduction and analysis.[1][1] P.A. Kienzle, B.B. Maranville, K.V. O'Donovan, J.F. Ankner, N.F. Berk, C.F. Majkrzak; https://www.nist.gov/ncnr/reflectometry-software 2017-

Disclaimer

This software was developed at the National Institute of Standards and Technology at the NIST Center for Neutron Research by employees of the Federal Government in the course of their official duties. Pursuant to title 17 section 105* of the United States Code this software is not subject to copyright protection and is in the public domain. NIST does not assume any responsibility whatsoever for the use of this software, and makes no guarantees, expressed or implied, about its quality, reliability, or any other characteristic. The use of certain trade names or commercial products does not imply any endorsement of a particular product, nor does it imply that the named product is necessarily the best product for the stated purpose. We would appreciate acknowledgment if the software is used.

*Subject matter of copyright: United States Government works

Copyright protection under this title is not available for any work of the United States Government, but the United States Government is not precluded from receiving and holding copyrights transferred to it by assignment, bequest, or otherwise.

Acknowledgments

Portions of this work are based upon activities supported by the National Science Foundation under Agreement No. DMR-0412074.

References

Calculating polarized neutron reflectometry
C.F. Majrkzak, K.V. O'Donovan, N.F. Berk (2006); Polarized neutron reflectometry. In Neutron Scattering from Magnetic Materials, T. Chatterji, editor. Elsevier.
Polarization corrections
C.F. Majkrzak (1996); Neutron scattering studies of magnetic thin films and multilayers, Physica B 221, 342-356.
Modelling interfaces with slabs
J.F. Ankner, C.F. Majkrzak (1992); Subsurface profile refinement for neutron specular reflectivity. In S.P.I.E. Conference Proceedings, Vol. 1738. C.F. Majkrzak and J.L. Wood, editors. S.P.I.E., Bellingham, WA.
Created April 14, 2017, Updated November 15, 2019