Skip to content

Commit f45bcaf

Browse files
committed
document new features; installing external packages; link to GH announcements page
1 parent d8406d6 commit f45bcaf

4 files changed

Lines changed: 90 additions & 12 deletions

File tree

MDhelp/docs/mainmenu.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,13 +68,16 @@ Finally, move to the atoms tab where atoms can be inserted or imported. Note tha
6868
!!! Note
6969
Note that for atom positions, the variables associated with coordinate values (named as `p::Aw:n`, where p is the phase number, n is the atom number and w is x, y or z) is not a refinable parameter, but the shift in the value is. The refined parameters are 'p::dAw:n'. The reason this is done is that by treating an atom position as (Ax+dAx,Ay+dAy,Az+dAz) where the “d” values indicate shifts from the starting position. Shifts are refined rather than the x, y, or z values as this this simplifies symmetry constraints. As an example, suppose we have an atom on a symmetry constrained site, `x,1/2-x,z`. The process needed to enforce this symmetry constraint, so that if x moves positively y has to move negatively by the same amount would be messy. With refinement of shifts, all we need to do is constrain the dAy to be equal to the negative of dAx (`0::dAy:n = -1 * 0::dAx:n` ).
7070

71+
<a name="ParmLogging"></a>
7172
Also, one can set here parameters that will be logged into the [Notebook](./commontreeitems.md#Notebook), so the values can be tracked and plotted across a refinement. Right-click to toggle the log setting. Note that individual log settings will override the the `LogAllVars` preference setting (see [Configuration variables](./others.md#config)).
7273

7374
* **Refine (Sequential refine)** - This performs the refinement (Pawley/Rietveld/LeBail or single crystal) fit according to the controls set in the Controls data tree item. This menu item name will be "Refine" unless the datasets to be used in a sequential refinement have been selected in the [Controls data tree](./commontreeitems.md#Controls) item, at which point the name will appear as "Sequential refine".
7475

7576
When a PWDR histogram item is selected in the data tree, or a child tree item of a PDWR histogram is selected in the tree when Refine is used, the plot of that histogram will be updated after each cycle of refinement.
7677

77-
Once the refinement is completed, you will be offered the chance to load the results of the fit or to reject the fit,in which case no parameters will be changed, so it is possible to change settings or refinement flags and try different options. After the refinement results are reloaded, plots will be updated to reflect the new refinement values if the plot has a defined update process or will be closed as the plot contents are presumed to be obsolete and need to be manually recreated to be valid.
78+
Once the refinement is completed, you will be offered the chance to load the results of the fit or to reject them, in which case no parameters will be changed. If the fit is rejected, it is possible to change settings or refinement flags and try a different set of options and try again. The dialog asking to load or Cancel the last refinement will show a table of parameters and how they changed in the refinement. Clicking on a parameter will show a plot of how the latest value follows the previous results, if that parameter is being [logged in the Notebook](#ParmLogging).
79+
80+
After the refinement results are reloaded, each plot will be updated to reflect the new refinement values, if the plot has a defined update process or will be closed as the plot contents are presumed to be obsolete and need to be manually recreated to be valid.
7881

7982
* **Compute partials** -
8083
The term "phase partial intensities" is used to designate keeping separate track of the intensity contribution from each phase separately. When this is used, a zero-cycle refinement (meaning no parameters values are changed) where the contributions from each phase (phase partial intensities) are written for each histogram and each phase in that histogram into a single file named &lt;project&gt;`.partials` where &lt;project&gt; is the GSAS-II project (.gpx) name. This file is intended for internal use in GSAS-II and will be deleted if additional refinements are performed (as the information in them is then obsolete; use this menu command to recreate them if needed.) When the .partials file is created, the user can then choose to export the intensity information in a series of ASCII files named &lt;project&gt;_part_N.csv, which can be read by spreadsheets and most scientific software.

MDhelp/docs/others.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ GSAS-II provides a number of configuration settings that can be changed via vari
1919
<a name="RTFM"></a>
2020
## Programmers' documentation
2121

22-
The routines and classes used within GSAS-II are documented in a set of web pages and in a PDF document. This documentation is created from the Python source code files using Sphinx.
22+
The routines and classes used within GSAS-II are documented in a set of [web pages]((https://gsas-ii.readthedocs.io/en/latest) and in a [PDF document](https://gsas-ii.readthedocs.io/_/downloads/en/latest/pdf/) with >400 pages. This documentation is created from the Python source code files using Sphinx. There is also an [abbreviated form of the documentation](https://gsas-ii-scripting.readthedocs.io/en/latest/) intended for people developing scripting applications only, or [as a PDF](https://gsas-ii-scripting.readthedocs.io/_/downloads/en/latest/pdf/).
2323

2424
<a name="Origin_1"></a>
2525
<a name="_Origin_1"></a>

webdocs/documentation.rst

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,26 @@ an electronic book `(Scripting Manual as e-book
7272
<https://gsas-ii-scripting.readthedocs.io/_/downloads/en/latest/epub/>`_, Epub
7373
format).
7474

75+
News
76+
----------------------------
77+
GSAS-II is not a "finished product" in that we are constantly
78+
correcting bugs, adding new features and improving the science.
79+
(Alas, sometimes
80+
creating new bugs in that process.) At the same time, the computing
81+
environment that GSAS-II runs in also changes, so code that runs fine
82+
now may not run in a new version of an operating system or when Python
83+
or a Python package is updated, so even standing still sometimes requires code
84+
changes.
85+
86+
News on changes to GSAS-II, new features, etc. is
87+
placed in the
88+
`Announcements section of the GitHub Discussion
89+
pages <https://github.com/AdvancedPhotonSource/GSAS-II/discussions/categories/announcements>`_.
90+
This will be useful reading for people who work with GSAS-II frequently.
91+
One can also track the minutiae of changes made to GSAS-II from
92+
`GitHub's log of commits <https://github.com/AdvancedPhotonSource/GSAS-II/commits/main/>`_,
93+
but since many commits may be used for a single bug-fix or new
94+
feature, this can be hard to follow.
7595

7696
Crystallography/Powder Diffraction Intro
7797
-----------------------------------------------

webdocs/install-external.rst

Lines changed: 65 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,14 @@ There are several publicly-available programs where GSAS-II provides an interfac
1919
* the ``GSASII`` directory where GSAS-II has been installed
2020
(this will be where the GSAS-II Python files are found).
2121

22-
For Windows the home directory, ``~``, is usually
23-
taken from the USERPROFILE setting or a combination of HOMEPATH
24-
and HOMEDRIVE, so these directories will usually have form
25-
``C:\Users\``*YourUsername* or
26-
``C:\Users\``*YourUsername*``\.GSASII``.
22+
.. tip::
23+
24+
For Windows the user's home directory, ``~``, is usually
25+
taken from the USERPROFILE setting or a combination of HOMEPATH
26+
and HOMEDRIVE, so these directories will usually have form
27+
``C:\Users\<YourUsername>`` or
28+
``C:\Users\<YourUsername>\.GSASII``. (Replace ``<YourUsername>``
29+
with the directory name on your computer.)
2730

2831
**RMCProfile**
2932
======================
@@ -35,19 +38,55 @@ There are several publicly-available programs where GSAS-II provides an interfac
3538
http://rmcprofile.org/Downloads or
3639
https://rmcprofile.pages.ornl.gov/nav_pages/download/
3740

41+
For Mac and Linux systems, one has some flexibility on where one
42+
installs RMCProfile, on MacOS the only install location for
43+
RMCprofile where the software is configured to run is the system
44+
Applications directory.
45+
First, the `configuration
46+
variable <https://advancedphotonsource.github.io/GSAS-II-tutorials/help/others.html#config>`_
47+
``rmcprofile_exec``,
48+
if defined, is checked as a location for the RMCprofile
49+
program. If that does not locate the program, On Windows and
50+
Linux, the location of the GSAS-II Python files, the location of
51+
the GSAS-II binaries, the current working directory (where the
52+
GSAS-II .gpx file is located) and the location where Python is
53+
installed, as well as the entire system path is searched for ``rmcprofile`` or
54+
``rmcprofile.exe``. On MacOS, the only location where the
55+
``rmcprofile`` executable can be found is
56+
``/Applications/RMCProfile.app/Contents/MacOS/exe``.
57+
58+
See routine ``GSASIIpwd.findrmcprofile()`` for details on finding the
59+
RMCprofile program.
60+
3861
**fullrmc**
3962
======================
4063

41-
A modern software framework for large-box PDF & S(Q) fitting. Note
64+
The fullrmc program is a modern software framework for large-box
65+
PDF & S(Q) fitting. Note
4266
that the GSAS-II implementation is not compatible with the last
4367
open-source version of fullrmc, but rather the version 5.0 must be
4468
used, which is distributed only as compiled versions and only for 64-bit
4569
Intel-compatible processors running Windows, Linux and
4670
MacOS. Download this as a single executable from website
4771
https://github.com/bachiraoun/fullrmc/tree/master/standalones. GSAS-II
48-
will offer to install this software into the binary directory when the fullrmc
49-
option is selected on the Phase/RMC tab.
72+
will offer to download and install this software into the GSAS-II
73+
binary directory when the fullrmc option is selected on the Phase/RMC tab.
74+
75+
The `configuration
76+
variable <https://advancedphotonsource.github.io/GSAS-II-tutorials/help/others.html#config>`_
77+
``fullrmc_exec``,
78+
if defined, is checked as a location for the fullrmc
79+
program. If that does not locate the program,
80+
the location of the GSAS-II Python files, the location of
81+
the GSAS-II binaries, the current working directory (where the
82+
GSAS-II .gpx file is located) and the location where Python is
83+
installed, as well as the entire system path is searched for ``rmcprofile`` or
84+
``rmcprofile.exe``. On MacOS, the only location where the
5085

86+
See routine ``GSASIIpwd.findfullrmc()`` for details on finding the
87+
fullrmc program.
88+
89+
5190
**PDFfit2**
5291
======================
5392

@@ -66,5 +105,21 @@ There are several publicly-available programs where GSAS-II provides an interfac
66105
conflict between package versions. When GSAS-II is run from a
67106
Python installation that includes the conda package manager (which
68107
is the case with the GSAS2MAIN installer), the GUI will offer an option to
69-
install PDFfit2 via a separate environment when the
70-
PDFfit2 option is selected on the Phase/RMC tab.
108+
install PDFfit2 into a separate environment when the
109+
PDFfit2 option is selected on the Phase/RMC tab. This will define the `configuration
110+
variable <https://advancedphotonsource.github.io/GSAS-II-tutorials/help/others.html#config>`_
111+
``pdffit2_exec`` as the Python image where PdfFit
112+
can be imported using
113+
``from diffpy.pdffit2 import PdfFit``.
114+
Routine ``GSASIIphsGUI.checkPDFfit()`` is used to install
115+
PDFfit2. Note that a completely separate Python installation can
116+
be used for PDFfit2 and then ``pdffit2_exec`` should be defined
117+
as the Python image to run PDFfit2 using that Python command.
118+
119+
When PDFfit is used, routine ``GSASIIpwd.findPDFfit()`` is used to
120+
locate PDFfit. This is done using `configuration
121+
variable <https://advancedphotonsource.github.io/GSAS-II-tutorials/help/others.html#config>`_
122+
``pdffit2_exec`` and if that is not available, it is checked if
123+
PDFfit can be run within the Python interpreter that is already
124+
running GSAS-II. Note that PDFfit is run from
125+
``GSASIIpwd.MakePDFfitRunFile()``.

0 commit comments

Comments
 (0)