diff --git a/README.rst b/README.rst index e9a38c0..4f16247 100644 --- a/README.rst +++ b/README.rst @@ -5,38 +5,38 @@ SrMise `DiffPy project `_ tool for unbiased peak extraction from atomic pair distribution functions. -SrMise is an implementation of the `ParSCAPE algorithm -`_ for peak extraction from -atomic pair distribution functions (PDFs). It is designed to function even -when *a priori* knowledge of the physical sample is limited, utilizing the -Akaike Information Criterion (AIC) to estimate whether peaks are -statistically justified relative to alternate models. Three basic use cases -are anticipated for SrMise. The first is peak fitting a user-supplied -collections of peaks. The second is peak extraction from a PDF with no (or -only partial) user-supplied peaks. The third is an AIC-driven multimodeling -analysis where the output of multiple SrMise trials are ranked. - -The framework for peak extraction defines peak-like clusters within the data, -extracts a single peak within each cluster, and iteratively combines nearby -clusters while performing a recursive search on the residual to identify -occluded peaks. Eventually this results in a single global cluster -containing many peaks fit over all the data. Over- and underfitting are +SrMise is an implementation of the `ParSCAPE algorithm +`_ for peak extraction from +atomic pair distribution functions (PDFs). It is designed to function even +when *a priori* knowledge of the physical sample is limited, utilizing the +Akaike Information Criterion (AIC) to estimate whether peaks are +statistically justified relative to alternate models. Three basic use cases +are anticipated for SrMise. The first is peak fitting a user-supplied +collections of peaks. The second is peak extraction from a PDF with no (or +only partial) user-supplied peaks. The third is an AIC-driven multimodeling +analysis where the output of multiple SrMise trials are ranked. + +The framework for peak extraction defines peak-like clusters within the data, +extracts a single peak within each cluster, and iteratively combines nearby +clusters while performing a recursive search on the residual to identify +occluded peaks. Eventually this results in a single global cluster +containing many peaks fit over all the data. Over- and underfitting are discouraged by use of the AIC when adding or, during a pruning step, removing -peaks. Termination effects, which can lead to physically spurious peaks in -the PDF, are incorporated in the mathematical peak model and the pruning step -attempts to remove peaks which are fit better as termination ripples due to -another peak. - -Where possible, SrMise provides physically reasonable default values -for extraction parameters. However, the PDF baseline should be estimated by -the user before extraction, or by performing provisional peak extraction with -varying baseline parameters. The package defines a linear (crystalline) -baseline, arbitrary polynomial baseline, a spherical nanoparticle baseline, -and an arbitrary baseline interpolated from a list of user-supplied values. -In addition, PDFs with accurate experimentally-determined uncertainties are -necessary to provide the most reliable results, but historically such PDFs -are rare. In the absence of accurate uncertainties an *ad hoc* uncertainty -must be specified. +peaks. Termination effects, which can lead to physically spurious peaks in +the PDF, are incorporated in the mathematical peak model and the pruning step +attempts to remove peaks which are fit better as termination ripples due to +another peak. + +Where possible, SrMise provides physically reasonable default values +for extraction parameters. However, the PDF baseline should be estimated by +the user before extraction, or by performing provisional peak extraction with +varying baseline parameters. The package defines a linear (crystalline) +baseline, arbitrary polynomial baseline, a spherical nanoparticle baseline, +and an arbitrary baseline interpolated from a list of user-supplied values. +In addition, PDFs with accurate experimentally-determined uncertainties are +necessary to provide the most reliable results, but historically such PDFs +are rare. In the absence of accurate uncertainties an *ad hoc* uncertainty +must be specified. For more information about SrMise, see the users manual at http://diffpy.github.io/diffpy.srmise. @@ -65,7 +65,7 @@ individual and/or academic use, but some also have commercial version. Links to executables, installation instructions, and licensing information for some popular options are listed below. -* `Anaconda `_ +* `Anaconda `_ * `Enthought Canopy `_ * `Python(x,y) `_ * `WinPython `_ @@ -120,7 +120,7 @@ in MacPorts:: The simplest way to obtain diffpy.srmise on Mac OS X systems is using ``pip`` to download and install the latest release from -`PyPI `_. :: +`PyPI `_. :: sudo pip install diffpy.srmise @@ -131,9 +131,9 @@ Uncompress them to a directory, and from that directory run :: sudo python setup.py install -This installs diffpy.srmise for all users in the default system location. If -administrator (root) access is not available, see the usage info from -``python setup.py install --help`` for options to install to user-writable +This installs diffpy.srmise for all users in the default system location. If +administrator (root) access is not available, see the usage info from +``python setup.py install --help`` for options to install to user-writable directories. @@ -154,7 +154,7 @@ For other Linux distributions consult the appropriate package manager. The simplest way to obtain diffpy.srmise on Linux systems is using ``pip`` to download and install the latest release from the -`PyPI `_. :: +`PyPI `_. :: sudo pip install diffpy.srmise @@ -165,24 +165,24 @@ Uncompress them to a directory, and from that directory run :: sudo python setup.py install -This installs diffpy.srmise for all users in the default system location. If -administrator (root) access is not available, see the usage info from -``python setup.py install --help`` for options to install to user-writable -directories. +This installs diffpy.srmise for all users in the default system location. If +administrator (root) access is not available, see the usage info from +``python setup.py install --help`` for options to install to user-writable +directories. DEVELOPMENT =========== -diffpy.srmise is open-source software developed with support of the Center of -Research Excellence in Complex Materials at Michigan State University, in -cooperation with the DiffPy-CMI complex modeling initiative at the Brookhaven -National Laboratory. The diffpy.srmise sources are hosted at -https://github.com/diffpy/diffpy.srmise. +diffpy.srmise is open-source software developed with support of the Center of +Research Excellence in Complex Materials at Michigan State University, in +cooperation with the DiffPy-CMI complex modeling initiative at the Brookhaven +National Laboratory. The diffpy.srmise sources are hosted at +https://github.com/diffpy/diffpy.srmise. -Feel free to fork the project and contribute. To install diffpy.srmise in a -development mode, with its sources being directly used by Python rather than -copied to a package directory, use :: +Feel free to fork the project and contribute. To install diffpy.srmise in a +development mode, with its sources being directly used by Python rather than +copied to a package directory, use :: python setup.py develop --user