I will provide an overview to how GSAS-II is organized now because in subsequent chapters of this book, I will frequently alternate between introducing concepts and then showing how those concepts are embodied within GSAS-II. I think that having a familiarity with the organization of GSAS-II will be helpful before this. For this reason, I want to provide an orientation for how GSAS-II is installed and organized here.
There are three ways that GSAS-II can be used. A key design feature is that every capability in GSAS-II can be accessed with a graphical user interface (GUI). A second mechanism is that GSAS-II offers an interface that allows most of the computational features of GSAS-II to be accessed in Python scripts (GSASIIscriptable). It is envisioned that the features available by scripting will expand as there is demand for that, but there are capabilities, such as visualization, that I do not expect will ever be offered via scripting. Finally, as GSAS-II is open source, we do hope that our code will be integrated into other projects, rather than see other scientists need to duplicate what we have already completed. Within this book, I will only consider access to GSAS-II via the GUI. For people interested in scripting GSAS-II, I would still encourage them to get started using the GUI and to then duplicate actions they have already done with scripts.