11. GSAS-II Citations¶
The GSAS-II usage statistics must be considered in the context of the software that it replaced, GSAS/EXPGUI. It is difficult to catalog citations to GSAS, since it was only published as a Los Alamos document report starting in 1985. However, EXPGUI, a graphical user interface to GSAS, was published and captures a large fraction of the GSAS user base. While GSAS-II was started as a project in ~2008, it was far from complete until around 2013 when first published:
Toby, B. H., & Von Dreele, R. B. (2013). “GSAS-II: the genesis of a modern open-source all purpose crystallography software package”. Journal of Applied Crystallography, 46(2), 544-549. doi: 10.1107/S0021889813003531
Citations to this paper and the 2001 paper by B.H. Toby are tracked by the Web of Science and are our best way to track use of GSAS/EXPGUI and GSAS-II. Google Scholar citation rates are significantly higher, but their accuracy is unknown. While GSAS-II has been recommended as a replacement for GSAS/EXPGUI since ~2015, when GSAS-II incorporated pretty much all of the GSAS/EXPGUI capabilities judged still relevant, but for quite a few years after that, both EXPGUI and GSAS-II usage continued to grow, as shown in the citation rate plot below:
Only in the past few years has EXPGUI use started to fall. GSAS-II use continues to grow and at a rate considerably higher than the fall-off in EXPGUI use.
12. GSAS-II Code Statistics¶
As of October 2025, GSAS-II codebase contains:
170,000 lines of Python code, of which 65,000 are used for the GUI.
6,000 lines of Fortran code
450 lines of C code
Some of the compiled code (Fortran and C) provides computational kernels for that would be too slow if completed in Python. The majority of the Fortran code is a group theory analysis routine developed by Allen Larson to derive symmetry from Hermann-Mauguin space group symbols (short or long and including non-standard settings) developed for the NRCVAX program. This code was also used in GSAS, but has been updated to correct for errors.
The documentation material consists of:
14,000 words of web documentation
50,000 words of context-specific help (~100 pages formatted)
62 tutorials (140,000 lines of HTML and 500 words of MarkDown)
~450 pages (as .pdf) of code documentation, generated by Sphinx from the Python source code
Vendored (externally produced, but distributed with GSAS-II) utilities included are composed of:
4,000 lines of Python code
10,000 lines of Fortran code
100 lines of Cython