Changeset 5149


Ignore:
Timestamp:
Jan 19, 2022 9:52:51 PM (5 months ago)
Author:
toby
Message:

more doc formatting cleanup

Location:
trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/GSASIIctrlGUI.py

    r5051 r5149  
    1313
    1414A library of GUI controls for reuse throughout GSAS-II, as indexed below
     15
     16.. tabularcolumns:: |l|p{4in}|
    1517
    1618================================  =================================================================
     
    6163:class:`ScrolledMultiEditor`       wx.Dialog for editing many dict- or list-contained items.
    6264                                   with validation. Results are placed in dict or list.
    63 :class:`SGMagSpinBox`               Special version of MessageBox that displays magnetic spin text
     65:class:`SGMagSpinBox`              Special version of MessageBox that displays magnetic spin text
    6466:class:`SGMessageBox`              Special version of MessageBox that displays space group &
    6567                                   super space group text in two blocks
     
    104106================================  =================================================================
    105107
    106 Other miscellaneous routines that may be of use:
     108Other miscellaneous non-GUI routines that may be of use for GUI-related actions:
     109
     110.. tabularcolumns:: |l|p{4in}|
    107111
    108112================================  =================================================================
     
    67776781    #['ExampleDir', 'ExamplePage.html', 'Example Tutorial Title', '''Example descriptive text'''],
    67786782    )
    6779 '''A catalog of GSAS-II tutorials with headings. This is the master list of GSAS-II tutorials and must be updated when tutorials are
    6780 added. Each item has either one or three items.
    6781 Titles are single item in a list or tuple. Tutorials have four items: (a) the name of the directory,
    6782 (b) the name of the web page, (c) a title for the tutorial and (d) a short text description (optional).
    6783 Tutorials that depend on a previous tutorial being completed should have the title for
    6784 the tutorial indented by five spaces.
    6785 
    6786 Note that :data:`tutorialCatalog` is generated from this tuple.
    6787 Also see :mod:`makeTutorial` which is used to read this and create a web page.
    6788 '''
    6789 
    6790 #A catalog of GSAS-II tutorials generated from the table in :data:`tutorialIndex`
     6783   
     6784    # A catalog of GSAS-II tutorials with headings. This is the master list of GSAS-II tutorials and
     6785    # must be updated when tutorials are added. Each item has either one or three items.
     6786    # Titles are single item in a list or tuple. Tutorials have four items:
     6787    #  (a) the name of the directory,
     6788    #  (b) the name of the web page,
     6789    #  (c) a title for the tutorial and
     6790    #  (d) a short text description (optional).
     6791    # Tutorials that depend on a previous tutorial being completed should have the title for
     6792    # the tutorial indented by five spaces.
     6793    #
     6794    # Note that :data:`tutorialCatalog` is generated from this tuple. Also see
     6795    # :mod:`makeTutorial` which is used to read this and create a web page.
     6796
    67916797tutorialCatalog = [l for l in tutorialIndex if len(l) >= 3]
     6798# A catalog of GSAS-II tutorials generated from the table in :data:`tutorialIndex`
    67926799
    67936800class OpenTutorial(wx.Dialog):
  • trunk/GSASIImapvars.py

    r5148 r5149  
    2727See the :ref:`Constraints Processing section<Constraints_processing>` for details on how
    2828processing of constraints is done.
     29
     30.. tabularcolumns:: |l|p{4in}|
    2931
    3032=============================  ===================================================================
  • trunk/GSASIIscriptable.py

    r5142 r5149  
    3838Overview of Classes
    3939---------------------
     40
     41.. tabularcolumns:: |l|p{4in}|
    4042
    4143===============================    ===============================================================================================================
     
    6062A small amount of the Scriptable code does not require use of objects.
    6163
     64.. tabularcolumns:: |l|p{4in}|
     65
    6266==================================================    ===============================================================================================================
    6367method                                                Use
     
    7579  The most commonly used routines in this object are:
    7680
    77 .. tabularcolumns:: |l|p{3.5in}|
     81.. tabularcolumns:: |l|p{3.in}|
    7882
    7983==================================================    ===============================================================================================================
     
    325329may be used in a dict supplied to :meth:`G2Project.do_refinements`. Note that keys ``histograms``
    326330and ``phases`` are used to limit actions to specific sets of parameters within the project.
     331
     332.. tabularcolumns:: |l|p{4in}|
    327333
    328334========== ============================================================================
  • trunk/docs/source/packages.rst

    r5020 r5149  
    1 Required packages
    2 ====================
     1Required Packages & Supported Platforms
     2==========================================
    33
    44GSAS-II requires a standard Python interpreter to be installed, as
    55well as several separately-developed packages. GSAS-II is being
    6 developed using Python 2.7, 3.6 and 3.7. At this point we think that
    7 most sections of the code have been exercised in Python 2 and 3,
    8 but  bugs are still expected (please report them). Our
    9 goal is to keep the code compliant with both Python 2.7 and 3.x for
    10 the immediate future.
     6developed using Python 3.7 and 3.9. At this point we think that
     7most sections of the code have been exercised in Python 3,
     8but  bugs are still expected (please report them). We are no longer
     9testing with Python 2.7 and strongly urge everyone to upgrade,
     10but if problems running GSAS-II in Python 2.7 are reported, we will
     11consider making that the code compliant with both.
    1112
    1213Note that the packages listed below are not distributed as part of the Python standard
    13 library. We use the free Anaconda Python (https://www.anaconda.com/)
    14 distribution (and provide installers based on that), but there are
    15 many other fine distributions, such as Enthought Inc.'s Canopy and
    16 Python(x,y), see here: https://www.python.org/download/alternatives/.
    17 We do some testing using the older Enthought Python Distribution
    18 (EPD); this is known to have some problems with reading CIFs and
    19 encourage updating from that.
     14library. We have been depending on the free Anaconda
     15Python (https://www.anaconda.com/)
     16distribution (and provide installers based on that), but Anaconda does
     17not seem to be supplying up to date versions of the wxpython package
     18that the GUI requires and does not have versions for all supported
     19platforms. Use of the miniforge
     20(https://github.com/conda-forge/miniforge) distribution is recommended
     21where needed.
     22
     23There are many other Python distributions, such as Enthought Inc.'s Canopy and
     24Python(x,y), see here:
     25https://www.python.org/download/alternatives/. We are no longer using
     26any of them and are unsure of how they will function. Some very old
     27GSAS-II installations were based on the quite outdated Enthought Python Distribution
     28(EPD); this is known to have some problems with reading CIFs and we
     29strongly encourage updating from that.
    2030
    2131More details on allowed and prefered package versions can be found in
     
    6070* SciPy (http://docs.scipy.org/doc/scipy/reference/).
    6171
    62 Note that some sections of the code may require matplotlib (http://matplotlib.org/contents.html), Pillow
     72Note that a few sections of the code require matplotlib (http://matplotlib.org/contents.html), Pillow
    6373(https://pillow.readthedocs.org) (or PIL,
    64 http://www.pythonware.com/products/pil/), or h5py + hdf5 to function
    65 but scripts will load and run without these.
     74http://www.pythonware.com/products/pil/), or h5py + hdf5, but none of
     75these are required to run scripts and the vast
     76majority of scripts will not need these packages.
     77
     78Optional Packages
     79-----------------------
     80
     81* Sphinx (https://www.sphinx-doc.org) is used to generate the
     82  documentation you are currently reading. Generation of documentation
     83  is not generally something needed by users or even most code developers.
     84
     85 * SCons (https://scons.org/) is used to compile the small amount of
     86   Fortran code that is included with GSAS-II. Use of this is
     87   discussed in the last section of this chapter.
    6688
    6789
     
    113135    Computes enhanced Fourier maps with Maximum Entropy estimated
    114136    extension of reflection sphere
     137
     138Supported Platforms
     139--------------------------------
     140
     141It should be possible to run GSAS-II on any computer where Python 3.7+ and
     142the appropriate required packages are available. For many platforms,
     143binary versions of the Fortran code used in GSAS-II are supplied, but the
     144binaries must match the platform and the major versions of both Python and
     145numpy; even for supported platforms; not all combinations are
     146provided. Should one wish to run GSAS-II where binary files are not
     147supplied, compilation will be needed. This will require the GNU Fortran (gfortran)
     148compiler (https://gcc.gnu.org/fortran/) as well as the Python SCons
     149package. Instructions are supplied for a number of platforms (such as
     150https://subversion.xray.aps.anl.gov/trac/pyGSAS/wiki/InstallLinux#CompilingFortranCode). Note
     151that there are prepackaged versions of GSAS-II for most common
     152platforms. These include Python, all required and most optional
     153packages and a version of all files needed to run GSAS-II -- albeit
     154not usually the current version. The
     155installation process will try to update to the current version, if the
     156computer where installation is occuring has internet access.
     157
     158At present the following platforms are directly supported:
     159
     160* **Windows-10**: Installation kits are available for both 32-bit and
     161  64-bit windows. Running GSAS-II on older versions of Windows is
     162  likely possible, but to do so one must locate compatible versions of Python
     163  and packages. This is getting increasingly tough. We have not tried
     164  Windows-11, but expect the Windows-10 versions to run there.
     165
     166* **MacOS**: We provide an installer for Macs with Intel
     167  processors. This can also be used on ARM-equipped Macs ("M1" or "Apple
     168  Silicon" processors) but native M1 code runs way
     169  faster. Installation on the native ARM code is more complex; our
     170  instructions (https://subversion.xray.aps.anl.gov/trac/pyGSAS/wiki/MacM1Notes)
     171  require that the homebrew package installer be installed and then
     172  brew (homebrew) be used to install Python and a number of packages.
     173  Macs older than
     174  Catalina (10.15) may require older distributions of Python.
     175
     176* **Linux** (Intel-compatible): GSAS-II does not get a lot of testing in Linux by us, but is
     177  fairly widely used on this platform nonetheless.  One can use the
     178  installer that we provide, but compatibility with older and very new
     179  versions of OSes can be tough and may require compatibility
     180  libraries. At times it may be better to use the Linux distribution's
     181  versions of Python and packages. This is typically done with a
     182  software tool such as apt or yum. An example on how to do this is
     183  shown for the Raspberry Pi.
     184
     185* **Raspberry Pi** (ARM) Linux: GSAS-II has been installed on both 32-bit
     186  and the experimental 64-bit version of the Raspberry Pi OS (formerly
     187  called Raspbian) and compiled binaries are provided. It should also
     188  run with Ubuntu Linux for this platform, but this has not been
     189  tried. It is necessary to use the Raspbian Linux distribution's
     190  versions of Python and its packages. Instructions are provided
     191  (https://subversion.xray.aps.anl.gov/trac/pyGSAS/wiki/InstallPiLinux).
     192  The performance of GSAS-II on a Raspberry Pi is not blindingly fast,
     193  but one can indeed run GSAS-II on a computer that costs only $15!
     194 
Note: See TracChangeset for help on using the changeset viewer.