Difference between revisions of "Software"

From GISAXS
Jump to: navigation, search
(General)
(Data Viewing, Reduction, and Simple Analysis)
(15 intermediate revisions by 2 users not shown)
Line 15: Line 15:
 
* '''NeXpy''': [[Python]] GUI for working with the [[NeXus data format]].
 
* '''NeXpy''': [[Python]] GUI for working with the [[NeXus data format]].
 
** [https://nexpy.github.io/nexpy/ Official site.]
 
** [https://nexpy.github.io/nexpy/ Official site.]
 +
* '''pycxdgui''': Very simple viewer for area images.
 +
** [https://github.com/CFN-softbio/pycxdgui Code available on github.]
 
* '''[[view.gtk]]''': A simple interface for viewing 2D data, calibrating your data into ''q''-space, and extracting linecuts. Written by Lin Yang for the [[X9]] beamline at [[NSLS]]. Installation requires (free) GTK libraries.
 
* '''[[view.gtk]]''': A simple interface for viewing 2D data, calibrating your data into ''q''-space, and extracting linecuts. Written by Lin Yang for the [[X9]] beamline at [[NSLS]]. Installation requires (free) GTK libraries.
 
** Citation:  L. Yang, [http://journals.iucr.org/s/issues/2013/02/00/issconts.html Using an in-vacuum CCD detector for simultaneous small- and wide-angle scattering at beamline X9] ''J. Synchrotron Rad.'' '''2013''', 20, 211. [http://dx.doi.org/10.1107/S0909049512048984 doi: 10.1107/S0909049512048984]
 
** Citation:  L. Yang, [http://journals.iucr.org/s/issues/2013/02/00/issconts.html Using an in-vacuum CCD detector for simultaneous small- and wide-angle scattering at beamline X9] ''J. Synchrotron Rad.'' '''2013''', 20, 211. [http://dx.doi.org/10.1107/S0909049512048984 doi: 10.1107/S0909049512048984]
Line 20: Line 22:
 
* '''[[pyXS]]''': Python scripts (with C++ backend) for performing analysis of 2D data.
 
* '''[[pyXS]]''': Python scripts (with C++ backend) for performing analysis of 2D data.
 
** [http://www.bnl.gov/ps/x9/software/pyXS.asp Official site.]
 
** [http://www.bnl.gov/ps/x9/software/pyXS.asp Official site.]
 +
* '''[[SciAnalysis]]''': Python scripts for analysis of 2D x-ray scattering data. Well-suited to batch analysis of many files.
 +
** [https://github.com/CFN-softbio/SciAnalysis Code available on github.]
 
* '''[[GIXSGUI]]''': Visualization and reduction package for GISAXS. Requires the commerical Matlab software. Written by Zhang Jiang ([[APS]]).
 
* '''[[GIXSGUI]]''': Visualization and reduction package for GISAXS. Requires the commerical Matlab software. Written by Zhang Jiang ([[APS]]).
 
** Citation: Z. Jiang [http://scripts.iucr.org/cgi-bin/paper?S1600576715004434 GIXSGUI: a MATLAB toolbox for grazing-incidence X-ray scattering data visualization and reduction, and indexing of buried three-dimensional periodic nanostructured films] ''J. Appl. Cryst.'' '''2015''', 48, 3, 917-926. [http://dx.doi.org/10.1107/S1600576715004434 doi: 10.1107/S1600576715004434]
 
** Citation: Z. Jiang [http://scripts.iucr.org/cgi-bin/paper?S1600576715004434 GIXSGUI: a MATLAB toolbox for grazing-incidence X-ray scattering data visualization and reduction, and indexing of buried three-dimensional periodic nanostructured films] ''J. Appl. Cryst.'' '''2015''', 48, 3, 917-926. [http://dx.doi.org/10.1107/S1600576715004434 doi: 10.1107/S1600576715004434]
Line 25: Line 29:
 
* '''[[GISAXSshop]]''': 2D visualization and reduction for GISAXS. Requires the Igor (Wavemetrics). Written by Byeongdu Lee ([[APS]]).
 
* '''[[GISAXSshop]]''': 2D visualization and reduction for GISAXS. Requires the Igor (Wavemetrics). Written by Byeongdu Lee ([[APS]]).
 
** [https://sites.google.com/site/byeongdu/software Official site.]
 
** [https://sites.google.com/site/byeongdu/software Official site.]
* '''Xi Cam''': Robust GUI (pyQT based) and libraries for analyzing 2D scattering images. Developed at LBNL in connection with the [http://www.camera.lbl.gov/ CAMERA] project.
+
* '''Xi-Cam''': Robust GUI (pyQT based) and libraries for analyzing 2D scattering images. Developed at LBNL in connection with the [http://www.camera.lbl.gov/ CAMERA] project.
 +
** Citation: Pandolfi, R.J.; Hexemer, A.; et al. [http://journals.iucr.org/s/issues/2018/04/00/xe5032/index.html#BB14 Xi-cam: a versatile interface for data visualization and analysis] ''J. Syncr. Rad.'' '''2018''', 25 (4), 1261-1270. [https://doi.org/10.1107/S1600577518005787 doi: 10.1107/S1600577518005787]
 
** [http://www.camera.lbl.gov/#!xi-cam-interface/z8vcm Official site.]
 
** [http://www.camera.lbl.gov/#!xi-cam-interface/z8vcm Official site.]
  
Line 63: Line 68:
 
* '''pySAXS''': Package and GUI for SAXS analysis.
 
* '''pySAXS''': Package and GUI for SAXS analysis.
 
** [http://iramis.cea.fr/en/Phocea/Vie_des_labos/Ast/ast_sstechnique.php?id_ast=1799 Official site.]
 
** [http://iramis.cea.fr/en/Phocea/Vie_des_labos/Ast/ast_sstechnique.php?id_ast=1799 Official site.]
 +
* '''[[ScatterSim]]''': [[Python]] code for simulating the one-dimensional curve (circular average) for [[Lattices of nano-objects|nanoparticle superlattices]].
 +
** Citation: [[Yager, K.G.]]; Zhang, Y.; Lu, F.; Gang, O. "[http://scripts.iucr.org/cgi-bin/paper?S160057671302832X Periodic lattices of arbitrary nano-objects: modeling and applications for self-assembled systems]" ''Journal of Applied Crystallography'' '''2014''', 47, 118–129. [http://dx.doi.org/10.1107/S160057671302832X doi: 10.1107/S160057671302832X]
 +
*** See also [[Paper:Periodic lattices of arbitrary nano-objects: modeling and applications for self-assembled systems|summary of paper]].
 +
** [https://github.com/CFN-softbio/ScatterSim Code available on github.]
  
 
===[[BioSAXS]]===
 
===[[BioSAXS]]===
Line 68: Line 77:
 
** [http://www.bioisis.net/tutorial/9 Official site.]
 
** [http://www.bioisis.net/tutorial/9 Official site.]
 
* '''BioXTAS RAW''': Simple program for performing 1D [[Guinier plot|Guinier analysis]] for [[BioSAXS]] data. (Provided by [[CHESS]].)
 
* '''BioXTAS RAW''': Simple program for performing 1D [[Guinier plot|Guinier analysis]] for [[BioSAXS]] data. (Provided by [[CHESS]].)
 +
** Citation: J. B. Hopkins, R. E. Gillilan and S. Skou [http://scripts.iucr.org/cgi-bin/paper?ge5036 BioXTAS RAW: improvements to a free open-source program for small-angle X-ray scattering data reduction and analysis] ''J. Appl. Cryst.'' '''2017''', 50 [https://doi.org/10.1107/S1600576717011438 doi: 10.1107/S1600576717011438]
 
** [http://bioxtasraw.sourceforge.net/ Official site], [http://sourceforge.net/projects/bioxtasraw/ download].
 
** [http://bioxtasraw.sourceforge.net/ Official site], [http://sourceforge.net/projects/bioxtasraw/ download].
 
* '''[[ATSAS]]''': A suite of tools for small-angle scattering data of biological macromolecules.
 
* '''[[ATSAS]]''': A suite of tools for small-angle scattering data of biological macromolecules.
 
** Citation: P. V. Konarev, M. V. Petoukhov, V. V. Volkov and D. I. Svergun [http://scripts.iucr.org/cgi-bin/paper?S0021889806004699 ATSAS 2.1, a program package for small-angle scattering data analysis] ''J. Appl. Cryst.'' '''2006''', 39, 277. [http://dx.doi.org/10.1107/S0021889806004699 doi: 10.1107/S0021889806004699]
 
** Citation: P. V. Konarev, M. V. Petoukhov, V. V. Volkov and D. I. Svergun [http://scripts.iucr.org/cgi-bin/paper?S0021889806004699 ATSAS 2.1, a program package for small-angle scattering data analysis] ''J. Appl. Cryst.'' '''2006''', 39, 277. [http://dx.doi.org/10.1107/S0021889806004699 doi: 10.1107/S0021889806004699]
 
** Citation: M. V. Petoukhov, D. Franke, A. V. Shkumatov, G. Tria, A. G. Kikhney, M. Gajda, C. Gorba, H. D. T. Mertens, P. V. Konarev and D. I. Svergun [http://scripts.iucr.org/cgi-bin/paper?S0021889812007662 New developments in the ATSAS program package for small-angle scattering data analysis] ''J. Appl. Cryst.'' '''2012''', 45, 342, [http://dx.doi.org/10.1107/S0021889812007662 doi: 10.1107/S0021889812007662]
 
** Citation: M. V. Petoukhov, D. Franke, A. V. Shkumatov, G. Tria, A. G. Kikhney, M. Gajda, C. Gorba, H. D. T. Mertens, P. V. Konarev and D. I. Svergun [http://scripts.iucr.org/cgi-bin/paper?S0021889812007662 New developments in the ATSAS program package for small-angle scattering data analysis] ''J. Appl. Cryst.'' '''2012''', 45, 342, [http://dx.doi.org/10.1107/S0021889812007662 doi: 10.1107/S0021889812007662]
 +
** Citation: D. Franke, M. V. Petoukhov, P. V. Konarev, A. Panjkovich, A. Tuukkanen, H. D. T. Mertens, A. G. Kikhney, N. R. Hajizadeh, J. M. Franklin, C. M. Jeffries and D. I. Svergun [http://scripts.iucr.org/cgi-bin/paper?ge5042 ATSAS 2.8: a comprehensive data analysis suite for small-angle scattering from macromolecular solutions] ''J. Appl. Cryst.'' '''2017''', 50 [https://doi.org/10.1107/S1600576717007786 doi: 10.1107/S1600576717007786]
 
** [http://www.embl-hamburg.de/biosaxs/software.html Official site.]
 
** [http://www.embl-hamburg.de/biosaxs/software.html Official site.]
 
* '''Biomachina''': Visualization of low-resolution bead-based models of proteins from SAXS data.
 
* '''Biomachina''': Visualization of low-resolution bead-based models of proteins from SAXS data.
Line 83: Line 94:
 
** [http://www.insp.jussieu.fr/oxydes/IsGISAXS/isgisaxs.htm Official site.]
 
** [http://www.insp.jussieu.fr/oxydes/IsGISAXS/isgisaxs.htm Official site.]
 
* '''FitGISAXS''': DWBA modeling. Requires commercial IgorPro software.
 
* '''FitGISAXS''': DWBA modeling. Requires commercial IgorPro software.
 +
** Citation: Babonneau, D. [http://scripts.iucr.org/cgi-bin/paper?hx5104 FitGISAXS: software package for modelling and analysis of GISAXS data using IGOR Pro] ''J. Appl. Cryst.'' '''2010''', 43(4), 929–936. [https://doi.org/10.1107/S0021889810020352 doi: 10.1107/S0021889810020352]
 
** [http://www.pprime.fr/?q=fr/nanoparticules-nanostructures Official site.]
 
** [http://www.pprime.fr/?q=fr/nanoparticules-nanostructures Official site.]
 
* '''NANOCELL''': Simulates 2D diffraction patterns from single-crystals for GISAXS/GISANS geometry
 
* '''NANOCELL''': Simulates 2D diffraction patterns from single-crystals for GISAXS/GISANS geometry
Line 125: Line 137:
 
** Citation: Y. Gerelli [http://scripts.iucr.org/cgi-bin/paper?rg5094 Aurore: new software for neutron reflectivity data analysis] ''J. Appl. Cryst.'' '''2016''', 49, 330-339. [http://dx.doi.org/10.1107/S1600576716000108 10.1107/S1600576716000108]
 
** Citation: Y. Gerelli [http://scripts.iucr.org/cgi-bin/paper?rg5094 Aurore: new software for neutron reflectivity data analysis] ''J. Appl. Cryst.'' '''2016''', 49, 330-339. [http://dx.doi.org/10.1107/S1600576716000108 10.1107/S1600576716000108]
 
** [https://sourceforge.net/projects/aurorenr/ Official site.]
 
** [https://sourceforge.net/projects/aurorenr/ Official site.]
 +
* '''Web Reflectivity Calculator''': Interactive, Web-Based Calculator of Neutron and X-ray Reflectivity.
 +
** [https://www.ncnr.nist.gov/instruments/magik/calculators/reflectivity-calculator.html Available online.]
 +
** Citation: Brian B. Maranville [http://nvlpubs.nist.gov/nistpubs/jres/122/jres.122.034.pdf Interactive, Web-Based Calculator of Neutron and X-ray Reflectivity] ''Journal of Research of National Institute of Standards and Technology'' '''2017''', 122, 1-6. [https://doi.org/10.6028/jres.122.034 doi: 10.6028/jres.122.034]
  
 
===[[Crystallography]]===
 
===[[Crystallography]]===
Line 152: Line 167:
  
 
==General==
 
==General==
 +
* '''SciStreams''': Simple workflow/pipeline software (building on [http://dask.pydata.org/en/latest/ Dask] and [https://github.com/mrocklin/streams Streams]), intended for asynchronous and distributed computations at a beamline.
 +
** [https://github.com/CFN-softbio/SciStreams Code available on github.]
 
* '''ParaView''': Generalized GUI for visualizing scientific data, such as 3D images (uses [[Python]] and QT).
 
* '''ParaView''': Generalized GUI for visualizing scientific data, such as 3D images (uses [[Python]] and QT).
 
** [http://www.paraview.org/ Official site.]
 
** [http://www.paraview.org/ Official site.]
Line 157: Line 174:
 
** [http://www.mantidproject.org/Main_Page Official site.]
 
** [http://www.mantidproject.org/Main_Page Official site.]
 
** Citation: O. Arnold, et al., Mantid—Data analysis and visualization package for neutron scattering and μSR experiments, Nuclear Instruments and Methods in Physics Research Section A, Volume 764, 11 November 2014, Pages 156-166. [http://dx.doi.org/10.1016/j.nima.2014.07.029 doi: 10.1016/j.nima.2014.07.029]
 
** Citation: O. Arnold, et al., Mantid—Data analysis and visualization package for neutron scattering and μSR experiments, Nuclear Instruments and Methods in Physics Research Section A, Volume 764, 11 November 2014, Pages 156-166. [http://dx.doi.org/10.1016/j.nima.2014.07.029 doi: 10.1016/j.nima.2014.07.029]
* '''DAWN''' (Data Analysis WorkbeNch): An application (based on Eclipse) for general scientific data analysis. It is mainly developed by the [http://www.diamond.ac.uk/Home.html Diamond Light Source] and is well-optimized for analysis of x-ray data.
+
* '''DAWN''' (Data Analysis WorkbeNch): An application (based on Eclipse) for general scientific data analysis. It is mainly developed by the [http://www.diamond.ac.uk/Home.html Diamond Light Source] and is well-optimized for analysis of x-ray data, including [[SAXS]]-specific features.
 
** [http://dawnsci.org/ Official site.]
 
** [http://dawnsci.org/ Official site.]
  

Revision as of 16:26, 12 July 2018

A common question for new GISAXS users is: "What software can I use to analyze my data?" Unfortunately, there is no single package that will allow you to perform any possible analysis. This is in part due to the diversity of possible kinds of data analysis one might want to do on GISAXS or GIWAXS images. The following lists a variety of packages that are available.

Data Viewing, Reduction, and Simple Analysis

These packages provide ways to view data, and perform simple operations (linecuts, etc.).

Geared towards 2D data

Geared towards 1D data

Data Modeling and Fitting

These packages can predict scattering curves for various possible nano- or molecular- structures. Some of the packages allow fitting of experimental data.

SAXS

BioSAXS

GISAXS

Reflectivity

Crystallography

Computing Materials Properties

General

  • SciStreams: Simple workflow/pipeline software (building on Dask and Streams), intended for asynchronous and distributed computations at a beamline.
  • ParaView: Generalized GUI for visualizing scientific data, such as 3D images (uses Python and QT).
  • Mantid: Framework for computing and visualizing materials science data.
    • Official site.
    • Citation: O. Arnold, et al., Mantid—Data analysis and visualization package for neutron scattering and μSR experiments, Nuclear Instruments and Methods in Physics Research Section A, Volume 764, 11 November 2014, Pages 156-166. doi: 10.1016/j.nima.2014.07.029
  • DAWN (Data Analysis WorkbeNch): An application (based on Eclipse) for general scientific data analysis. It is mainly developed by the Diamond Light Source and is well-optimized for analysis of x-ray data, including SAXS-specific features.

Custom

It is of course possible to code your own software for modeling or fitting scattering data. This is not as difficult as it may at first seem. The fundamental scattering equations are well-known (c.f. scattering, Fourier transform, Form Factor, Structure Factor, Lattice Factor), and can be brute-force solved numerical. Or, they can be solved (or simplified) analytically for a particular case. Many modern programming languages provide libraries for numerical integration, fitting, minimizing multi-dimensional parameter spaces, etc. (e.g. Python is particularly clean and powerful).

See Also