Merged muonspin/musrfit:root6 into master

This commit is contained in:
Zaher Salman 2019-11-11 13:10:01 +01:00
commit 2afc21becc
9 changed files with 48 additions and 26 deletions

View File

@ -57,7 +57,7 @@ Additionally, *only* if ``musrfit`` should support reading of data files in the
.. index:: hdf4
**HDF4**
A library and multi-object file format for storing and managing data (see `HDF4 <http://www.hdfgroup.org/products/hdf4/>`_). ``HDF4`` is "outdated" and its support will soon be dropped.
A library and multi-object file format for storing and managing data (see `HDF4 <http://www.hdfgroup.org/products/hdf4/>`_). ``HDF4`` is "outdated" and its support will soon be dropped. The single only reason why it is still required is that ISIS is not able to cope to implement HDF5 V2 of the NeXus muon instrument specification which has been agreed in 2012!
.. index:: hdf5
@ -175,18 +175,18 @@ Installation of NeXus requirements (optional)
software has to be set up. The required libraries and header files could either be available through the user's
GNU/Linux distribution or if this is not the case, the packages can be installed from the source code. In principle
NeXus should support ``MXML``, ``HDF4``, and ``HDF5``. At the time of this writing, the ``MXML`` support in the
NeXus project is broken, and ``HDF4`` is outdated on most platforms, hence currently only the ``HDF5`` binding is
used. Hence, the necessary package to build ``NeXus`` is ``HDF5``. This means, for a rpm-package based distro try something like:
NeXus project is broken, and ``HDF4`` is outdated on most platforms, yet since ISIS/RAL is still **not** up-to-date ``HDF4`` still
needs to be dragged on (comment: if you are a ISIS user, please complain about ``HDF4``). Hence, the necessary packages to build ``NeXus`` are ``HDF4`` and ``HDF5``. This means, for a rpm-package based distro try something like:
.. code-block:: bash
$ yum install hdf5-devel
$ yum install hdf-devel hdf5-devel
and on a deb-package based distro try something like:
.. code-block:: bash
$ apt-get install libhdf5-dev
$ apt-get install libhdf4-dev libhdf5-dev
**Only NeXus Version ≥ 4.4 is support!**
@ -206,7 +206,7 @@ A brief instruction how to get ``NeXus`` compiled from source (lines starting wi
$ # next we will build NeXus out-of-source
$ mkdir build
$ cd build
$ cmake -DENABLE_HDF5=1 -DENABLE_HDF4=0 -DENABLE_MXML=0 ../code
$ cmake -DENABLE_HDF5=1 -DENABLE_HDF4=1 -DENABLE_MXML=0 ../code
$ cmake --build ./ --clean-first
$ # make install needs either to be carried out as root or sudo depending on your linux flavour.
$ sudo make install
@ -566,7 +566,7 @@ and a package containing ``/usr/lib/librpc.a`` (*e.g.* ``sunrpc = 4.0-3``, but *
$ # next we will build NeXus out-of-source
$ mkdir build
$ cd build
$ cmake -DENABLE_HDF5=1 -DENABLE_HDF4=0 -DENABLE_MXML=0 ../code
$ cmake -DENABLE_HDF5=1 -DENABLE_HDF4=1 -DENABLE_MXML=0 ../code
$ make
$ make install
@ -770,6 +770,11 @@ and ``C:\cygwin\bin\bash.exe`` so that they are executed with administrator priv
Mac OS X / macOS
----------------
.. warning::
2019-10-10: macOS 10.15 Catalina: ``macport``/``fink``/``homebrew`` and hence ``musrfit`` are not yet ready for
this version of macOS. Likely to be ready by end of November 2019.
.. _MacPorts: https://www.macports.org/
.. _Fink: http://www.finkproject.org/
@ -779,6 +784,12 @@ or `Fink`_ — which provides open-source software is employed to fulfill the b
In the following, both possibilities (using MacPorts or Fink) are described but it is emphasized here that
it should be followed only *one* of the possible routes .
.. warning::
If you decide to upgrade your macOS, e.g. from ``High Sierra`` to ``Mojave``, you will typically need to
unistall ``musrfit``, ``ROOT``, and `MacPorts`_ / `Fink`_ first, do the upgrade of the macOS and start the
installation of `MacPorts`_ / `Fink`_ , ``ROOT``, and ``musrfit`` from scratch!
.. index:: macports
Requirements (MacPorts)
@ -871,7 +882,7 @@ To get things compiled do:
$ cd nexus
$ mkdir build
$ cd build
$ cmake -DENABLE_HDF5=1 -DENABLE_HDF4=0 -DENABLE_MXML=0 ../code
$ cmake -DENABLE_HDF5=1 -DENABLE_HDF4=1 -DENABLE_MXML=0 ../code
$ make
$ sudo make install
@ -1086,7 +1097,7 @@ this can be achieved for example by:
$ # build NeXus out-of-source
$ mkdir build
$ cd build
$ cmake ../code -DENABLE_HDF5=1 -DENABLE_HDF4=0 -DENABLE_MXML=0
$ cmake ../code -DENABLE_HDF5=1 -DENABLE_HDF4=1 -DENABLE_MXML=0
$ cmake --build ./ --clean-first -- -j8
$ sudo make install

View File

@ -632,7 +632,7 @@ name abbr. parameters mathematica
const c const(1) const
asymmetry a A(1) :math:`A`
simplExpo se :math:`\lambda (\mu \mathrm{s}^{-1})` :math:`\exp(-\lambda t)`
generExpo ge :math:`\lambda (\mu \mathrm{s}^{-1}) \beta(1)` :math:`\exp\left[(-\lambda t)^\beta\right]`
generExpo ge :math:`\lambda (\mu \mathrm{s}^{-1}) \beta(1)` :math:`\exp\left[-(\lambda t)^\beta\right]`
simpleGss sg :math:`\sigma (\mu \mathrm{s}^{-1})` :math:`\exp\left[-\frac{1}{2} (\sigma t)^2\right]`
statGssKT stg :math:`\sigma (\mu \mathrm{s}^{-1})` :math:`\frac{1}{3} + \frac{2}{3} \left[ 1 - (\sigma t)^2\right] \exp\left[-\frac{1}{2} (\sigma t)^2\right]`
statGssKTLF sgktlf :math:`\nu` (MHz), \ :math:`G_{\rm G}^{\rm LF}(t) = 1-\frac{2\sigma^2}{(2\pi\nu)^2} \left[ 1-\exp\left(- \frac{1}{2}\sigma^2t^2\right)\cos(2\pi\nu t)\right]` [#n1]_

View File

@ -979,7 +979,7 @@
</div>
<div class="footer">
&copy; Copyright 2019, Andreas Suter.
Last updated on Jul 24, 2019.
Last updated on Nov 11, 2019.
Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.2.3.
</div>
</body>

View File

@ -185,7 +185,7 @@
</div>
<div class="footer">
&copy; Copyright 2019, Andreas Suter.
Last updated on Jul 24, 2019.
Last updated on Nov 11, 2019.
Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.2.3.
</div>
</body>

Binary file not shown.

View File

@ -94,7 +94,7 @@
</div>
<div class="footer">
&copy; Copyright 2019, Andreas Suter.
Last updated on Jul 24, 2019.
Last updated on Nov 11, 2019.
Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.2.3.
</div>
</body>

File diff suppressed because one or more lines are too long

View File

@ -88,7 +88,7 @@ their header packages:</p>
<p>Additionally, <em>only</em> if <tt class="docutils literal"><span class="pre">musrfit</span></tt> should support reading of data files in the <cite>NeXus</cite> format the following libraries are needed:</p>
<dl class="docutils" id="index-7">
<dt><strong>HDF4</strong></dt>
<dd>A library and multi-object file format for storing and managing data (see <a class="reference external" href="http://www.hdfgroup.org/products/hdf4/">HDF4</a>). <tt class="docutils literal"><span class="pre">HDF4</span></tt> is &#8220;outdated&#8221; and its support will soon be dropped.</dd>
<dd>A library and multi-object file format for storing and managing data (see <a class="reference external" href="http://www.hdfgroup.org/products/hdf4/">HDF4</a>). <tt class="docutils literal"><span class="pre">HDF4</span></tt> is &#8220;outdated&#8221; and its support will soon be dropped. The single only reason why it is still required is that ISIS is not able to cope to implement HDF5 V2 of the NeXus muon instrument specification which has been agreed in 2012!</dd>
</dl>
<dl class="docutils" id="index-8">
<dt><strong>HDF5</strong></dt>
@ -180,16 +180,16 @@ the source code from the corresponding website, or to clone the git repo. If you
software has to be set up. The required libraries and header files could either be available through the user&#8217;s
GNU/Linux distribution or if this is not the case, the packages can be installed from the source code. In principle
NeXus should support <tt class="docutils literal"><span class="pre">MXML</span></tt>, <tt class="docutils literal"><span class="pre">HDF4</span></tt>, and <tt class="docutils literal"><span class="pre">HDF5</span></tt>. At the time of this writing, the <tt class="docutils literal"><span class="pre">MXML</span></tt> support in the
NeXus project is broken, and <tt class="docutils literal"><span class="pre">HDF4</span></tt> is outdated on most platforms, hence currently only the <tt class="docutils literal"><span class="pre">HDF5</span></tt> binding is
used. Hence, the necessary package to build <tt class="docutils literal"><span class="pre">NeXus</span></tt> is <tt class="docutils literal"><span class="pre">HDF5</span></tt>. This means, for a rpm-package based distro try something like:</p>
NeXus project is broken, and <tt class="docutils literal"><span class="pre">HDF4</span></tt> is outdated on most platforms, yet since ISIS/RAL is still <strong>not</strong> up-to-date <tt class="docutils literal"><span class="pre">HDF4</span></tt> still
needs to be dragged on (comment: if you are a ISIS user, please complain about <tt class="docutils literal"><span class="pre">HDF4</span></tt>). Hence, the necessary packages to build <tt class="docutils literal"><span class="pre">NeXus</span></tt> are <tt class="docutils literal"><span class="pre">HDF4</span></tt> and <tt class="docutils literal"><span class="pre">HDF5</span></tt>. This means, for a rpm-package based distro try something like:</p>
<blockquote>
<div><div class="highlight-bash"><div class="highlight"><pre><span></span>$ yum install hdf5-devel
<div><div class="highlight-bash"><div class="highlight"><pre><span></span>$ yum install hdf-devel hdf5-devel
</pre></div>
</div>
</div></blockquote>
<p>and on a deb-package based distro try something like:</p>
<blockquote>
<div><div class="highlight-bash"><div class="highlight"><pre><span></span>$ apt-get install libhdf5-dev
<div><div class="highlight-bash"><div class="highlight"><pre><span></span>$ apt-get install libhdf4-dev libhdf5-dev
</pre></div>
</div>
</div></blockquote>
@ -206,7 +206,7 @@ $ git clone https://github.com/nexusformat/code.git
$ <span class="c1"># next we will build NeXus out-of-source</span>
$ mkdir build
$ <span class="nb">cd</span> build
$ cmake -DENABLE_HDF5<span class="o">=</span><span class="m">1</span> -DENABLE_HDF4<span class="o">=</span><span class="m">0</span> -DENABLE_MXML<span class="o">=</span><span class="m">0</span> ../code
$ cmake -DENABLE_HDF5<span class="o">=</span><span class="m">1</span> -DENABLE_HDF4<span class="o">=</span><span class="m">1</span> -DENABLE_MXML<span class="o">=</span><span class="m">0</span> ../code
$ cmake --build ./ --clean-first
$ <span class="c1"># make install needs either to be carried out as root or sudo depending on your linux flavour.</span>
$ sudo make install
@ -513,7 +513,7 @@ $ git clone https://github.com/nexusformat/code.git
$ <span class="c1"># next we will build NeXus out-of-source</span>
$ mkdir build
$ <span class="nb">cd</span> build
$ cmake -DENABLE_HDF5<span class="o">=</span><span class="m">1</span> -DENABLE_HDF4<span class="o">=</span><span class="m">0</span> -DENABLE_MXML<span class="o">=</span><span class="m">0</span> ../code
$ cmake -DENABLE_HDF5<span class="o">=</span><span class="m">1</span> -DENABLE_HDF4<span class="o">=</span><span class="m">1</span> -DENABLE_MXML<span class="o">=</span><span class="m">0</span> ../code
$ make
$ make install
</pre></div>
@ -684,11 +684,22 @@ and <tt class="docutils literal"><span class="pre">C:\cygwin\bin\bash.exe</span>
</div>
<div class="section" id="mac-os-x-macos">
<h2>Mac OS X / macOS<a class="headerlink" href="#mac-os-x-macos" title="Permalink to this headline"></a></h2>
<div class="admonition warning">
<p class="first admonition-title">Warning</p>
<p class="last">2019-10-10: macOS 10.15 Catalina: <tt class="docutils literal"><span class="pre">macport</span></tt>/<tt class="docutils literal"><span class="pre">fink</span></tt>/<tt class="docutils literal"><span class="pre">homebrew</span></tt> and hence <tt class="docutils literal"><span class="pre">musrfit</span></tt> are not yet ready for
this version of macOS. Likely to be ready by end of November 2019.</p>
</div>
<p>With Mac OS X / macOS the situation is up to some extent similar like on MS Windows but still different since
Mac OS X is a UNIX system. The similarity is that also on OS X a helping framework — either <a class="reference external" href="https://www.macports.org/">MacPorts</a>
or <a class="reference external" href="http://www.finkproject.org/">Fink</a> — which provides open-source software is employed to fulfill the basic software requirements of <tt class="docutils literal"><span class="pre">musrfit</span></tt>.
In the following, both possibilities (using MacPorts or Fink) are described but it is emphasized here that
it should be followed only <em>one</em> of the possible routes .</p>
<div class="admonition warning">
<p class="first admonition-title">Warning</p>
<p class="last">If you decide to upgrade your macOS, e.g. from <tt class="docutils literal"><span class="pre">High</span> <span class="pre">Sierra</span></tt> to <tt class="docutils literal"><span class="pre">Mojave</span></tt>, you will typically need to
unistall <tt class="docutils literal"><span class="pre">musrfit</span></tt>, <tt class="docutils literal"><span class="pre">ROOT</span></tt>, and <a class="reference external" href="https://www.macports.org/">MacPorts</a> / <a class="reference external" href="http://www.finkproject.org/">Fink</a> first, do the upgrade of the macOS and start the
installation of <a class="reference external" href="https://www.macports.org/">MacPorts</a> / <a class="reference external" href="http://www.finkproject.org/">Fink</a> , <tt class="docutils literal"><span class="pre">ROOT</span></tt>, and <tt class="docutils literal"><span class="pre">musrfit</span></tt> from scratch!</p>
</div>
<div class="section" id="requirements-macports">
<span id="index-27"></span><h3>Requirements (MacPorts)<a class="headerlink" href="#requirements-macports" title="Permalink to this headline"></a></h3>
<p>Before proceeding with the usage of the <tt class="docutils literal"><span class="pre">MacPorts</span></tt> system first a few useful tools provided by Apple together
@ -763,7 +774,7 @@ $ <span class="c1"># next we will build NeXus out-of-source</span>
$ <span class="nb">cd</span> nexus
$ mkdir build
$ <span class="nb">cd</span> build
$ cmake -DENABLE_HDF5<span class="o">=</span><span class="m">1</span> -DENABLE_HDF4<span class="o">=</span><span class="m">0</span> -DENABLE_MXML<span class="o">=</span><span class="m">0</span> ../code
$ cmake -DENABLE_HDF5<span class="o">=</span><span class="m">1</span> -DENABLE_HDF4<span class="o">=</span><span class="m">1</span> -DENABLE_MXML<span class="o">=</span><span class="m">0</span> ../code
$ make
$ sudo make install
</pre></div>
@ -938,7 +949,7 @@ $ <span class="nb">cd</span> nexus
$ <span class="c1"># build NeXus out-of-source</span>
$ mkdir build
$ <span class="nb">cd</span> build
$ cmake ../code -DENABLE_HDF5<span class="o">=</span><span class="m">1</span> -DENABLE_HDF4<span class="o">=</span><span class="m">0</span> -DENABLE_MXML<span class="o">=</span><span class="m">0</span>
$ cmake ../code -DENABLE_HDF5<span class="o">=</span><span class="m">1</span> -DENABLE_HDF4<span class="o">=</span><span class="m">1</span> -DENABLE_MXML<span class="o">=</span><span class="m">0</span>
$ cmake --build ./ --clean-first -- -j8
$ sudo make install
</pre></div>
@ -1285,7 +1296,7 @@ $ musrview test-histo-ROOT-NPP.msr
</div>
<div class="footer">
&copy; Copyright 2019, Andreas Suter.
Last updated on Jul 24, 2019.
Last updated on Oct 10, 2019.
Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.2.3.
</div>
</body>

View File

@ -616,7 +616,7 @@ in case a <span class="math">\(\chi^2\)</span> single-histogram fit is done, als
<tr class="row-odd"><td>generExpo</td>
<td>ge</td>
<td><span class="math">\(\lambda (\mu \mathrm{s}^{-1}) \beta(1)\)</span></td>
<td><span class="math">\(\exp\left[(-\lambda t)^\beta\right]\)</span></td>
<td><span class="math">\(\exp\left[-(\lambda t)^\beta\right]\)</span></td>
<td>&nbsp;</td>
</tr>
<tr class="row-even"><td>simpleGss</td>
@ -2294,7 +2294,7 @@ In case this cannot be ensured, the parallelization can be disabled by <em>&#821
</div>
<div class="footer">
&copy; Copyright 2019, Andreas Suter.
Last updated on Jul 24, 2019.
Last updated on Nov 11, 2019.
Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.2.3.
</div>
</body>