Difference between revisions of "Software"

From GISAXS
Jump to: navigation, search
(Computing Materials Properties)
(Computing Materials Properties)
Line 139: Line 139:
 
* '''xraylib''': x-ray elemental information (spectroscopic)
 
* '''xraylib''': x-ray elemental information (spectroscopic)
 
** [https://github.com/tschoonj/xraylib/wiki Official site].
 
** [https://github.com/tschoonj/xraylib/wiki Official site].
** Citation: [http://www.sciencedirect.com/science/article/pii/S0584854711001984 The xraylib library for X-ray–matter interactions. Recent developments] ''Spectrochimica Acta Part B: Atomic Spectroscopy'', 66 (11-12), 776-784. [http://dx.doi.org/10.1016/j.sab.2011.09.011 doi: 10.1016/j.sab.2011.09.011]
+
** Citation: [http://www.sciencedirect.com/science/article/pii/S0584854711001984 The xraylib library for X-ray–matter interactions. Recent developments] ''Spectrochimica Acta Part B: Atomic Spectroscopy'' '''2011''', 66 (11-12), 776-784. [http://dx.doi.org/10.1016/j.sab.2011.09.011 doi: 10.1016/j.sab.2011.09.011]
 
* '''DANSE Periodic Table''': Python library for x-ray and neutron elemental scattering properties.
 
* '''DANSE Periodic Table''': Python library for x-ray and neutron elemental scattering properties.
 
** [http://www.reflectometry.org/danse/elements.html Official site].
 
** [http://www.reflectometry.org/danse/elements.html Official site].

Revision as of 10:05, 8 December 2015

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

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