Skip to content

Commit c044543

Browse files
committed
add a statistics section to the web docs; misc web cleanup
1 parent d24e91a commit c044543

File tree

8 files changed

+94
-14
lines changed

8 files changed

+94
-14
lines changed

webdocs/About.notes

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
cd
2+
wc -l *.py imports/*.py exports/*.py
3+
wc -l *GUI.py
4+
wc -l *.f* powsubs/*.f* spsubs/*.f* texturesubs/*.f*
5+
wc -l fmask.c
6+
7+
8+
wc -l NIST_profile/*.py k_vec_solve/*.py G2shapes.py
9+
wc -l pydiffax.for DIFFaXsubs/* NISTlatsubs/*
10+
11+
ls ~/G2/GSASII-tutorials/*/*.ht* ~/G2/GSASII-tutorials/MDtutorials/*/*.md | wc
12+
wc ~/G2/GSASII-tutorials/MDtutorials/*/*.md
13+
wc -l ~/G2/GSASII-tutorials/*/*.ht*
14+
15+
wc ~/G2/GSASII-tutorials/MDhelp/docs/*.md
16+
17+
wc ~/G2/GSASII-tutorials/webdocs/*.rst
18+
figure

webdocs/AboutGSASII.rst

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
.. image:: ./images/gsas2.png
2+
:scale: 25 %
3+
:alt: GSAS-II logo
4+
:align: right
5+
6+
GSAS-II Citations
7+
====================================
8+
9+
.. index:: Impact
10+
11+
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
12+
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:
13+
14+
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 <https://doi.org/10.1107/S0021889813003531>`_
15+
16+
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.
17+
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:
18+
19+
.. image:: ./images/EG_Cites.pdf
20+
:alt: Citations of EXPGUI and GSAS-II
21+
:align: right
22+
23+
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.
24+
25+
GSAS-II Code Statistics
26+
====================================
27+
28+
.. index:: Code statistics
29+
30+
As of October 2025, GSAS-II codebase contains:
31+
32+
* 170,000 lines of Python code, of which 65,000 are used for the GUI.
33+
* 6,000 lines of Fortran code
34+
* 450 lines of C code
35+
36+
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.
37+
38+
The documentation material consists of:
39+
40+
* 14,000 words of web documentation
41+
* 50,000 words of context-specific help (~100 pages formatted)
42+
* 62 tutorials (140,000 lines of HTML and 500 words of MarkDown)
43+
* ~450 pages (as .pdf) of code documentation, generated by Sphinx from the Python source code
44+
45+
46+
Vendored (externally produced, but distributed with GSAS-II) utilities included are composed of:
47+
48+
* 4,000 lines of Python code
49+
* 10,000 lines of Fortran code
50+
* 100 lines of Cython

webdocs/conf.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,10 @@
66
# -- Project information -----------------------------------------------------
77
# https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information
88

9-
project = 'GSAS-II web documentation'
10-
copyright = '2024 by Argonne National Laboratory'
9+
project = 'GSAS-II'
10+
copyright = '2025 by Argonne National Laboratory'
1111
author = 'Brian H. Toby'
12-
release = '1.0'
12+
release = 'v5.6.0'
1313

1414

1515
# -- General configuration ---------------------------------------------------

webdocs/documentation.rst

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,8 @@ distributed with the program, as well as can be `viewed here
2828
<help/index.html>`_. These help pages are not complete for all
2929
sections of the code,
3030
but do provide at least some information on how every section of the program
31-
works. The help information can also be viewed `as a PDF document
31+
works. The help information can also be viewed as a PDF document
32+
`(Help as PDF)
3233
<https://advancedphotonsource.github.io/GSAS-II-tutorials/docs/GSASII-help.pdf>`_.
3334

3435
Note that the help documentation was recently reformatted and updated
@@ -46,10 +47,10 @@ Developer's Documentation
4647
and RestructuredText documentation files are found on the `"Read The
4748
Docs" web site <https://gsas-ii.readthedocs.io>`_. The documentation
4849
can also be downloaded as a
49-
`PDF document <https://gsas-ii.readthedocs.io/_/downloads/en/latest/pdf/>`_
50+
PDF document `(Code Manual as PDF) <https://gsas-ii.readthedocs.io/_/downloads/en/latest/pdf/>`_
5051
or as
51-
`an electronic book <https://gsas-ii.readthedocs.io/_/downloads/en/latest/epub/>`_
52-
(Epub format).
52+
an electronic book `(Code Manual as e-book
53+
<https://gsas-ii.readthedocs.io/_/downloads/en/latest/epub/>`_, Epub format).
5354
Regardless of the format, this provides very useful documentation for
5455
code developers, for people interested in creating GSAS-II scripts, or
5556
incorporating GSAS-II capabilities into their software, or for those
@@ -65,10 +66,10 @@ Documentation described immediately above, but an
6566
`abridged version of the web site
6667
<https://gsas-ii-scripting.readthedocs.io/en/latest/>`_ with
6768
only sections relevant to scripting is also available. This abridged
68-
version can also be downloaded as a `PDF document
69+
version can also be downloaded as a PDF document `(Scripting Manual as PDF)
6970
<https://gsas-ii-scripting.readthedocs.io/_/downloads/en/latest/pdf/>`_ or as
70-
`an electronic book
71-
<https://gsas-ii-scripting.readthedocs.io/_/downloads/en/latest/epub/>`_ (Epub
71+
an electronic book `(Scripting Manual as e-book
72+
<https://gsas-ii-scripting.readthedocs.io/_/downloads/en/latest/epub/>`_, Epub
7273
format).
7374

7475

webdocs/images/EG_Cites.pdf

14.6 KB
Binary file not shown.

webdocs/index.rst

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,13 +41,15 @@ well as extensive visualization capabilities.
4141
compile.rst
4242
misc.rst
4343
master2main.rst
44+
AboutGSASII.rst
4445

4546
.. tip::
4647
Please help us by citing:
4748

4849
.. index:: Citation
4950

50-
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
51+
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 <https://doi.org/10.1107/S0021889813003531>`_
52+
5153

5254
Note that some sections of the program utilize externally provided
5355
codes or reference later work, with citations provided
@@ -163,3 +165,13 @@ Other things related to GSAS-II can be found here.
163165
.. toctree::
164166

165167
master2main.rst
168+
169+
170+
GSAS-II Statisics: Usage & Size
171+
======================================
172+
173+
Some statistics about GSAS-II are included here.
174+
175+
.. toctree::
176+
177+
AboutGSASII.rst

webdocs/install_dev.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,7 @@ The code in the ``main`` includes setup files for `Pixi <https://pixi.sh>`_, whi
140140
It is particularly convenient for GSAS-II software development.
141141
There are many ways to install Pixi, as listed `here <https://pixi.sh>`_, or by using the ``conda install pixi`` command, or homebrew, etc.
142142

143-
Once pixi is installed, it can be used to setup and run GSAS-II, with commands as described below. These commands download GSAS-II from GitHub, install it, including compiling the files locally, then runs the self-tests and then finally starts the GSAS-II GUI:
143+
Once pixi is installed, it can be used to setup and run GSAS-II, with commands as described below. These commands download GSAS-II from GitHub, install it, including compiling the files locally, then runs the self-tests and then finally starts the GSAS-II GUI::
144144

145145
cd <install-location>
146146
git clone --depth 1 [email protected]:AdvancedPhotonSource/GSAS-II.git

webdocs/master2main.rst

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,7 @@ On April 22, 2025 GSAS-II made a transition from development on a branch named "
3636

3737
* Scripting API: several commands now can read input files supplied as a URL; preferred orientation correction now are available in the API.
3838

39-
* Scripting: Slightly different code is now needed to access the GSASIIscriptable module. The developers documentation for GSAS-II (on https://gsas-ii.readthedocs.io and
40-
https://gsas-ii-scripting.readthedocs.io) has been revised to show this.
39+
* Scripting: Slightly different code is now needed to access the GSASIIscriptable module. The developers documentation for GSAS-II (on https://gsas-ii.readthedocs.io and https://gsas-ii-scripting.readthedocs.io) has been revised to show this.
4140

4241
Below is the e-mail sent to the GSAS-II mailing list concerning the above changes.
4342

0 commit comments

Comments
 (0)