From 280b3b4abfa04e4269a9f9108101daa5006fd360 Mon Sep 17 00:00:00 2001
From: Valerio Mariani <valerio.mariani@desy.de>
Date: Tue, 13 Aug 2019 14:20:07 +0200
Subject: [PATCH] Updated documentation

---
 cfelpyutils/geometry_utils.py                 |  30 ++--
 cfelpyutils/named_tuples.py                   |   2 +-
 docs/.buildinfo                               |   2 +-
 docs/_modules/cfelpyutils/crystfel_utils.html |   1 +
 docs/_modules/cfelpyutils/geometry_utils.html |  31 ++--
 docs/_modules/cfelpyutils/named_tuples.html   |   3 +-
 docs/_modules/index.html                      |   1 +
 ...tation_guidelines_for_contributors.rst.txt |  79 ++++++++++
 docs/_sources/index.rst.txt                   |  45 +++++-
 docs/cfelpyutils.crystfel_utils.html          |   1 +
 docs/cfelpyutils.geometry_utils.html          |  31 ++--
 docs/cfelpyutils.html                         |   1 +
 docs/cfelpyutils.named_tuples.html            |   5 +-
 ...mentation_guidelines_for_contributors.html | 146 ++++++++++++++++++
 docs/genindex.html                            |   1 +
 docs/index.html                               |  36 ++++-
 docs/objects.inv                              | Bin 469 -> 508 bytes
 docs/py-modindex.html                         |   1 +
 docs/search.html                              |   1 +
 docs/searchindex.js                           |   2 +-
 .../cfelpyutils.geometry_utils.doctree        | Bin 30154 -> 30224 bytes
 .../doctrees/cfelpyutils.named_tuples.doctree | Bin 14526 -> 14469 bytes
 ...tation_guidelines_for_contributors.doctree | Bin 0 -> 19892 bytes
 docs_src/_build/doctrees/environment.pickle   | Bin 51599 -> 54740 bytes
 docs_src/_build/doctrees/index.doctree        | Bin 6796 -> 12227 bytes
 docs_src/_build/html/.buildinfo               |   2 +-
 .../_modules/cfelpyutils/crystfel_utils.html  |   1 +
 .../_modules/cfelpyutils/geometry_utils.html  |  31 ++--
 .../_modules/cfelpyutils/named_tuples.html    |   3 +-
 docs_src/_build/html/_modules/index.html      |   1 +
 ...tation_guidelines_for_contributors.rst.txt |  79 ++++++++++
 docs_src/_build/html/_sources/index.rst.txt   |  45 +++++-
 .../html/cfelpyutils.crystfel_utils.html      |   1 +
 .../html/cfelpyutils.geometry_utils.html      |  31 ++--
 docs_src/_build/html/cfelpyutils.html         |   1 +
 .../_build/html/cfelpyutils.named_tuples.html |   5 +-
 ...mentation_guidelines_for_contributors.html | 146 ++++++++++++++++++
 docs_src/_build/html/genindex.html            |   1 +
 docs_src/_build/html/index.html               |  36 ++++-
 docs_src/_build/html/objects.inv              | Bin 469 -> 508 bytes
 docs_src/_build/html/py-modindex.html         |   1 +
 docs_src/_build/html/search.html              |   1 +
 docs_src/_build/html/searchindex.js           |   2 +-
 docs_src/conf.py                              |   1 +
 ...umentation_guidelines_for_contributors.rst |  79 ++++++++++
 docs_src/index.rst                            |  45 +++++-
 46 files changed, 811 insertions(+), 120 deletions(-)
 create mode 100644 docs/_sources/documentation_guidelines_for_contributors.rst.txt
 create mode 100644 docs/documentation_guidelines_for_contributors.html
 create mode 100644 docs_src/_build/doctrees/documentation_guidelines_for_contributors.doctree
 create mode 100644 docs_src/_build/html/_sources/documentation_guidelines_for_contributors.rst.txt
 create mode 100644 docs_src/_build/html/documentation_guidelines_for_contributors.html
 create mode 100644 docs_src/documentation_guidelines_for_contributors.rst

diff --git a/cfelpyutils/geometry_utils.py b/cfelpyutils/geometry_utils.py
index 7bf386b..0efdb03 100644
--- a/cfelpyutils/geometry_utils.py
+++ b/cfelpyutils/geometry_utils.py
@@ -34,10 +34,10 @@ def compute_pix_maps(geometry):
 
     This function takes as input some geometry information read from a `CrystFEL
     <http://www.desy.de/~twhite/crystfel/manual-crystfel_geometry.html>`_ file, and
-    returns a set of some pre-computed pixel maps.
+    returns a set of pre-computed pixel maps.
 
-    The origin and the orientation of the reference system for the pixel maps follow
-    the same conventions as in CrystFEL:
+    The origin and the orientation of the reference system for the pixel maps are set
+    according to the same conventions as CrystFEL:
 
     * The center of the reference system is the beam interaction point.
 
@@ -133,8 +133,8 @@ def compute_visualization_pix_maps(geometry):
 
     This function takes as input some geometry information read from a `CrystFEL
     <http://www.desy.de/~twhite/crystfel/manual-crystfel_geometry.html>`_ file, and
-    returns a set of some pre-computed pixel maps that can be used to display data in
-    an ImageView widget from the `PyQtGraph <http://pyqtgraph.org/>`_ library.
+    returns a set of pre-computed pixel maps that can be used to display data in an
+    ImageView widget from the `PyQtGraph <http://pyqtgraph.org/>`_ library.
 
     These pixel maps are different from the ones generated by the
     :func:`~compute_pix_maps` function. The main differences are:
@@ -142,8 +142,8 @@ def compute_visualization_pix_maps(geometry):
     * The origin of the reference system is not the beam interaction point, but the top
       left corner of the array used to visualize the data.
 
-    * Only the x and y pixel maps are available. The other entries in the named tuple
-      (z, r and phi) are set to None.
+    * Only the x and y pixel maps are available. The other entries in the returned
+      named tuple (z, r and phi) are set to None.
 
     Arguments:
 
@@ -179,17 +179,17 @@ def apply_geometry_to_data(data, geometry):
 
     This function takes as input some geometry information read from a `CrystFEL
     <http://www.desy.de/~twhite/crystfel/manual-crystfel_geometry.html>`_ file, and
-    some data on which to apply it. It returns an array that can be displayed using a
-    library like `matplotlib <https://matplotlib.org/>`_ or 
+    some data on which to apply the information. It returns an array that can be
+    displayed using libraries like `matplotlib <https://matplotlib.org/>`_ or
     `PyQtGraph <http://pyqtgraph.org/>`_.
 
-    The shape of the returned array is big enough to display all the input pixel
-    values, and is symmetric around the center of the reference system (i.e: the beam
-    interaction point).
+    The shape of the returned array is big enough to display all the pixel values in
+    the input data, and is symmetric around the center of the reference system
+    (i.e: the beam interaction point).
 
-    NOTE: This restrictions often cause the returned array to be bigger than the minimum
-    size needed to store the physical layout of the pixels in the detector,
-    particularly if the detector is not centered at the beam interaction point.
+    This restrictions often cause the returned array to be bigger than the minimum size
+    needed to store the physical layout of the pixels in the detector, particularly if
+    the detector is not centered at the beam interaction point.
 
     Arguments:
 
diff --git a/cfelpyutils/named_tuples.py b/cfelpyutils/named_tuples.py
index dc75130..97d727b 100644
--- a/cfelpyutils/named_tuples.py
+++ b/cfelpyutils/named_tuples.py
@@ -37,5 +37,5 @@ Arguments:
         the reference system.
 
     phi (numpy.ndarray): pixel map storing the amplitude of the angle between each
-       pixel, the center of the reference system, and the x axis through the center.
+       pixel, the center of the reference system, and the x axis.
 """
diff --git a/docs/.buildinfo b/docs/.buildinfo
index 07914e1..5c20a1a 100644
--- a/docs/.buildinfo
+++ b/docs/.buildinfo
@@ -1,4 +1,4 @@
 # Sphinx build info version 1
 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
-config: fd8cf3500139e539a950fcaee26c3d53
+config: b2d79c21d77cd2b06bfb2cb4376d24d9
 tags: 645f666f9bcd5a90fca523b33c5a78b7
diff --git a/docs/_modules/cfelpyutils/crystfel_utils.html b/docs/_modules/cfelpyutils/crystfel_utils.html
index 8d1f451..f114828 100644
--- a/docs/_modules/cfelpyutils/crystfel_utils.html
+++ b/docs/_modules/cfelpyutils/crystfel_utils.html
@@ -703,6 +703,7 @@
 <h3>Navigation</h3>
 <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../cfelpyutils.html">The cfelpyutils Package</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../documentation_guidelines_for_contributors.html">Guidelines for Contributors</a></li>
 </ul>
 
 <div class="relations">
diff --git a/docs/_modules/cfelpyutils/geometry_utils.html b/docs/_modules/cfelpyutils/geometry_utils.html
index 479e596..61de150 100644
--- a/docs/_modules/cfelpyutils/geometry_utils.html
+++ b/docs/_modules/cfelpyutils/geometry_utils.html
@@ -69,10 +69,10 @@
 
 <span class="sd">    This function takes as input some geometry information read from a `CrystFEL</span>
 <span class="sd">    &lt;http://www.desy.de/~twhite/crystfel/manual-crystfel_geometry.html&gt;`_ file, and</span>
-<span class="sd">    returns a set of some pre-computed pixel maps.</span>
+<span class="sd">    returns a set of pre-computed pixel maps.</span>
 
-<span class="sd">    The origin and the orientation of the reference system for the pixel maps follow</span>
-<span class="sd">    the same conventions as in CrystFEL:</span>
+<span class="sd">    The origin and the orientation of the reference system for the pixel maps are set</span>
+<span class="sd">    according to the same conventions as CrystFEL:</span>
 
 <span class="sd">    * The center of the reference system is the beam interaction point.</span>
 
@@ -168,8 +168,8 @@
 
 <span class="sd">    This function takes as input some geometry information read from a `CrystFEL</span>
 <span class="sd">    &lt;http://www.desy.de/~twhite/crystfel/manual-crystfel_geometry.html&gt;`_ file, and</span>
-<span class="sd">    returns a set of some pre-computed pixel maps that can be used to display data in</span>
-<span class="sd">    an ImageView widget from the `PyQtGraph &lt;http://pyqtgraph.org/&gt;`_ library.</span>
+<span class="sd">    returns a set of pre-computed pixel maps that can be used to display data in an</span>
+<span class="sd">    ImageView widget from the `PyQtGraph &lt;http://pyqtgraph.org/&gt;`_ library.</span>
 
 <span class="sd">    These pixel maps are different from the ones generated by the</span>
 <span class="sd">    :func:`~compute_pix_maps` function. The main differences are:</span>
@@ -177,8 +177,8 @@
 <span class="sd">    * The origin of the reference system is not the beam interaction point, but the top</span>
 <span class="sd">      left corner of the array used to visualize the data.</span>
 
-<span class="sd">    * Only the x and y pixel maps are available. The other entries in the named tuple</span>
-<span class="sd">      (z, r and phi) are set to None.</span>
+<span class="sd">    * Only the x and y pixel maps are available. The other entries in the returned</span>
+<span class="sd">      named tuple (z, r and phi) are set to None.</span>
 
 <span class="sd">    Arguments:</span>
 
@@ -214,17 +214,17 @@
 
 <span class="sd">    This function takes as input some geometry information read from a `CrystFEL</span>
 <span class="sd">    &lt;http://www.desy.de/~twhite/crystfel/manual-crystfel_geometry.html&gt;`_ file, and</span>
-<span class="sd">    some data on which to apply it. It returns an array that can be displayed using a</span>
-<span class="sd">    library like `matplotlib &lt;https://matplotlib.org/&gt;`_ or </span>
+<span class="sd">    some data on which to apply the information. It returns an array that can be</span>
+<span class="sd">    displayed using libraries like `matplotlib &lt;https://matplotlib.org/&gt;`_ or</span>
 <span class="sd">    `PyQtGraph &lt;http://pyqtgraph.org/&gt;`_.</span>
 
-<span class="sd">    The shape of the returned array is big enough to display all the input pixel</span>
-<span class="sd">    values, and is symmetric around the center of the reference system (i.e: the beam</span>
-<span class="sd">    interaction point).</span>
+<span class="sd">    The shape of the returned array is big enough to display all the pixel values in</span>
+<span class="sd">    the input data, and is symmetric around the center of the reference system</span>
+<span class="sd">    (i.e: the beam interaction point).</span>
 
-<span class="sd">    NOTE: This restrictions often cause the returned array to be bigger than the minimum</span>
-<span class="sd">    size needed to store the physical layout of the pixels in the detector,</span>
-<span class="sd">    particularly if the detector is not centered at the beam interaction point.</span>
+<span class="sd">    This restrictions often cause the returned array to be bigger than the minimum size</span>
+<span class="sd">    needed to store the physical layout of the pixels in the detector, particularly if</span>
+<span class="sd">    the detector is not centered at the beam interaction point.</span>
 
 <span class="sd">    Arguments:</span>
 
@@ -270,6 +270,7 @@
 <h3>Navigation</h3>
 <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../cfelpyutils.html">The cfelpyutils Package</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../documentation_guidelines_for_contributors.html">Guidelines for Contributors</a></li>
 </ul>
 
 <div class="relations">
diff --git a/docs/_modules/cfelpyutils/named_tuples.html b/docs/_modules/cfelpyutils/named_tuples.html
index 7649063..5c11e47 100644
--- a/docs/_modules/cfelpyutils/named_tuples.html
+++ b/docs/_modules/cfelpyutils/named_tuples.html
@@ -72,7 +72,7 @@
 <span class="sd">        the reference system.</span>
 
 <span class="sd">    phi (numpy.ndarray): pixel map storing the amplitude of the angle between each</span>
-<span class="sd">       pixel, the center of the reference system, and the x axis through the center.</span>
+<span class="sd">       pixel, the center of the reference system, and the x axis.</span>
 <span class="sd">&quot;&quot;&quot;</span>
 </pre></div>
 
@@ -94,6 +94,7 @@
 <h3>Navigation</h3>
 <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../cfelpyutils.html">The cfelpyutils Package</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../documentation_guidelines_for_contributors.html">Guidelines for Contributors</a></li>
 </ul>
 
 <div class="relations">
diff --git a/docs/_modules/index.html b/docs/_modules/index.html
index 0426bf5..a28cdf2 100644
--- a/docs/_modules/index.html
+++ b/docs/_modules/index.html
@@ -56,6 +56,7 @@
 <h3>Navigation</h3>
 <ul>
 <li class="toctree-l1"><a class="reference internal" href="../cfelpyutils.html">The cfelpyutils Package</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../documentation_guidelines_for_contributors.html">Guidelines for Contributors</a></li>
 </ul>
 
 <div class="relations">
diff --git a/docs/_sources/documentation_guidelines_for_contributors.rst.txt b/docs/_sources/documentation_guidelines_for_contributors.rst.txt
new file mode 100644
index 0000000..bcdb3cb
--- /dev/null
+++ b/docs/_sources/documentation_guidelines_for_contributors.rst.txt
@@ -0,0 +1,79 @@
+Guidelines for Contributors
+===========================
+
+Contributions to the project are welcome. Please feel free to submit pull requests
+using the standard `GitHub flow <https://guides.github.com/introduction/flow/>`_.
+
+
+Version Control
+^^^^^^^^^^^^^^^
+
+The CFELPyUtils library is developed using the `Git <https://git-scm.com>`_ version
+control system.
+
+It uses the branching strategy proposed by Vincent Driessen and commonly known as
+`Gitflow <https://nvie.com/posts/a-successful-git-branching-model>`_.
+
+
+Python
+^^^^^^
+
+The CFELPyUtils library is mainly developed in `Python  <https://www.python.org>`_.
+
+* All code in the library must run with both version 2 and 3 of Python, except for
+  facility-specific code that specifically requires one of the two versions (for
+  example, Python 2 for the LCSL facility). The code must specifically support all the
+  currently active versions of python:
+
+  * Python 2
+
+    * 2.7
+
+  * Python 3
+
+    * 3.5
+    * 3.6
+    * 3.7
+
+* The `python-future <https://python-future.org>`_ project should be used to ensure
+  that code contributed to the project is compatible with all the supported versions of
+  Python.
+
+* The Python coding style should follow for the most part the `Google Python \
+  Coding Style <https://github.com/google/styleguide/blob/gh-pages/pyguide.md>`_.
+
+* All docstrings should be written following the `Google Style \
+  <https://sphinxcontrib-napoleon.readthedocs.io/en/latest/example_google.html>`_.
+
+* `Pylint <https://www.pylint.org>`_ should be run on the code before
+  submission, as stated in the Google Python Coding Style Guide. In the root
+  folder of the CFELPyUtils repository, contributors can find  a 'pylintrc' file with
+  the settings that should be applied when linting the code. Please see `here
+  <http://pylint.pycqa.org/en/latest/user_guide/run.html?highlight=pylintrc>`_ how to
+  use the pylintrc file.
+  
+* The `Black <https://github.com/psf/black>`_ Python code formatter should be run on
+  the code before submission.
+
+
+C/C++
+^^^^^
+
+Some extension can, for performance reason, be written using the `C++
+<https://en.wikipedia.org/wiki/C%2B%2B>`_ or  `C
+<https://en.wikipedia.org/wiki/C_(programming_language)>`_ programming languages.
+
+* All C++ code in OnDA must follow at most the C++98 ISO standard, and the code
+  must compile on a Linux RHEL7/CentOS7 platform using the standard development stack
+  that comes with these systems.
+
+* Part of the C++11 standard can be used when writing extensions. However, it must be
+  possible to compile the code using version 4.8 of the 'gcc' compiler (in order to
+  create the Linux binary Python wheel).
+
+* All C code in OnDA must follow at most the C99 ISO standard, and the code
+  must compile on a Linux RHEL7/CentOS7 platform using the standard development stack
+  that comes with these systems.
+
+* The `Cython <http://cython.org>`_ project should be used to interface C/C++ code with
+  Python.
diff --git a/docs/_sources/index.rst.txt b/docs/_sources/index.rst.txt
index 929f41c..a3b5c6e 100644
--- a/docs/_sources/index.rst.txt
+++ b/docs/_sources/index.rst.txt
@@ -10,6 +10,7 @@ CFELPyUtils
    :hidden:
 
    cfelpyutils
+   documentation_guidelines_for_contributors
 
 
 Introduction
@@ -25,29 +26,57 @@ several internal and released CFEL software projects.
 Installation
 ------------
 
-The CFELPyUtils library is available on PyPI and can be installed using the pip
-command:
+The CFELPyUtils library is available on the `Python Package Index
+<https://pypi.org/>`_ (PyPI). It can be installed using the 'pip' command:
 
 .. code-block:: bash
 
     python3 -m pip install cfelpyutils
 
-Or, for python2:
+Or, for Python 2:
 
 .. code-block:: bash
 
-    python -m pip install cfelpyutils
+    python2 -m pip install cfelpyutils
 
-
-It is also available as an Anaconda package in the 'ondateam' channel. It can be
-installed using the 'conda' command:
+It is also available as a package for the `Anaconda <https://anaconda.org/>`_ Python
+distribution. It can be installed using the 'conda' command:
 
 .. code-block:: bash
 
     conda install -c ondateam cfelpyutils
 
+The library can also be installed manually by checking out the repository and running:
+
+.. code-block:: bash
+
+    python setup.py install 
+
+
+Authors
+-------
+
+The CFELPyUtils library is currently developed in the lab of 
+`Henry Chapman <https://cid.cfel.de/>`_ at the Center For Free Electron Laser Science
+in Hamburg. 
+
+Many people from different institutions worlwide contribute code, testing and support
+to the project:
+
+* **Valerio Mariani** (corresponding author: valerio.mariani@desy.de)
+* Anton Barty
+* Andrew Morgan
+* Thomas A. White
+
 
 Code Documentation
 ------------------
 
-Code documentation for the CFELPyUtils library can be found :doc:`here <cfelpyutils>`.
\ No newline at end of file
+Code documentation for the CFELPyUtils library can be found :doc:`here <cfelpyutils>`.
+
+
+Guidelines for Contributors
+---------------------------
+
+Contributions to the projects are welcome. Please see the guidelines for contributors
+:doc:`here <documentation_guidelines_for_contributors>`.
\ No newline at end of file
diff --git a/docs/cfelpyutils.crystfel_utils.html b/docs/cfelpyutils.crystfel_utils.html
index d162d9e..58736df 100644
--- a/docs/cfelpyutils.crystfel_utils.html
+++ b/docs/cfelpyutils.crystfel_utils.html
@@ -95,6 +95,7 @@ file.</td>
 <li class="toctree-l2"><a class="reference internal" href="cfelpyutils.named_tuples.html">named_tuples</a></li>
 </ul>
 </li>
+<li class="toctree-l1"><a class="reference internal" href="documentation_guidelines_for_contributors.html">Guidelines for Contributors</a></li>
 </ul>
 
 <div class="relations">
diff --git a/docs/cfelpyutils.geometry_utils.html b/docs/cfelpyutils.geometry_utils.html
index 77c72d0..a474102 100644
--- a/docs/cfelpyutils.geometry_utils.html
+++ b/docs/cfelpyutils.geometry_utils.html
@@ -43,9 +43,9 @@
 <code class="descname">compute_pix_maps</code><span class="sig-paren">(</span><em>geometry</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/cfelpyutils/geometry_utils.html#compute_pix_maps"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#cfelpyutils.geometry_utils.compute_pix_maps" title="Permalink to this definition">¶</a></dt>
 <dd><p>Computes pixel maps from CrystFEL geometry information.</p>
 <p>This function takes as input some geometry information read from a <a class="reference external" href="http://www.desy.de/~twhite/crystfel/manual-crystfel_geometry.html">CrystFEL</a> file, and
-returns a set of some pre-computed pixel maps.</p>
-<p>The origin and the orientation of the reference system for the pixel maps follow
-the same conventions as in CrystFEL:</p>
+returns a set of pre-computed pixel maps.</p>
+<p>The origin and the orientation of the reference system for the pixel maps are set
+according to the same conventions as CrystFEL:</p>
 <ul class="simple">
 <li>The center of the reference system is the beam interaction point.</li>
 <li>+z is the beam direction, and points along the beam (i.e. away from the source).</li>
@@ -73,15 +73,15 @@ pixel maps.</td>
 <code class="descname">compute_visualization_pix_maps</code><span class="sig-paren">(</span><em>geometry</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/cfelpyutils/geometry_utils.html#compute_visualization_pix_maps"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#cfelpyutils.geometry_utils.compute_visualization_pix_maps" title="Permalink to this definition">¶</a></dt>
 <dd><p>Computes pixel maps for data visualization from CrystFEL geometry information.</p>
 <p>This function takes as input some geometry information read from a <a class="reference external" href="http://www.desy.de/~twhite/crystfel/manual-crystfel_geometry.html">CrystFEL</a> file, and
-returns a set of some pre-computed pixel maps that can be used to display data in
-an ImageView widget from the <a class="reference external" href="http://pyqtgraph.org/">PyQtGraph</a> library.</p>
+returns a set of pre-computed pixel maps that can be used to display data in an
+ImageView widget from the <a class="reference external" href="http://pyqtgraph.org/">PyQtGraph</a> library.</p>
 <p>These pixel maps are different from the ones generated by the
 <a class="reference internal" href="#cfelpyutils.geometry_utils.compute_pix_maps" title="cfelpyutils.geometry_utils.compute_pix_maps"><code class="xref py py-func docutils literal notranslate"><span class="pre">compute_pix_maps()</span></code></a> function. The main differences are:</p>
 <ul class="simple">
 <li>The origin of the reference system is not the beam interaction point, but the top
 left corner of the array used to visualize the data.</li>
-<li>Only the x and y pixel maps are available. The other entries in the named tuple
-(z, r and phi) are set to None.</li>
+<li>Only the x and y pixel maps are available. The other entries in the returned
+named tuple (z, r and phi) are set to None.</li>
 </ul>
 <table class="docutils field-list" frame="void" rules="none">
 <col class="field-name" />
@@ -103,15 +103,15 @@ the <a class="reference internal" href="cfelpyutils.crystfel_utils.html#cfelpyut
 <code class="descname">apply_geometry_to_data</code><span class="sig-paren">(</span><em>data</em>, <em>geometry</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/cfelpyutils/geometry_utils.html#apply_geometry_to_data"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#cfelpyutils.geometry_utils.apply_geometry_to_data" title="Permalink to this definition">¶</a></dt>
 <dd><p>Applies CrystFEL geometry information to some data.</p>
 <p>This function takes as input some geometry information read from a <a class="reference external" href="http://www.desy.de/~twhite/crystfel/manual-crystfel_geometry.html">CrystFEL</a> file, and
-some data on which to apply it. It returns an array that can be displayed using a
-library like <a class="reference external" href="https://matplotlib.org/">matplotlib</a> or
+some data on which to apply the information. It returns an array that can be
+displayed using libraries like <a class="reference external" href="https://matplotlib.org/">matplotlib</a> or
 <a class="reference external" href="http://pyqtgraph.org/">PyQtGraph</a>.</p>
-<p>The shape of the returned array is big enough to display all the input pixel
-values, and is symmetric around the center of the reference system (i.e: the beam
-interaction point).</p>
-<p>NOTE: This restrictions often cause the returned array to be bigger than the minimum
-size needed to store the physical layout of the pixels in the detector,
-particularly if the detector is not centered at the beam interaction point.</p>
+<p>The shape of the returned array is big enough to display all the pixel values in
+the input data, and is symmetric around the center of the reference system
+(i.e: the beam interaction point).</p>
+<p>This restrictions often cause the returned array to be bigger than the minimum size
+needed to store the physical layout of the pixels in the detector, particularly if
+the detector is not centered at the beam interaction point.</p>
 <table class="docutils field-list" frame="void" rules="none">
 <col class="field-name" />
 <col class="field-body" />
@@ -161,6 +161,7 @@ applied.</p>
 <li class="toctree-l2"><a class="reference internal" href="cfelpyutils.named_tuples.html">named_tuples</a></li>
 </ul>
 </li>
+<li class="toctree-l1"><a class="reference internal" href="documentation_guidelines_for_contributors.html">Guidelines for Contributors</a></li>
 </ul>
 
 <div class="relations">
diff --git a/docs/cfelpyutils.html b/docs/cfelpyutils.html
index 24ffb50..e7a0d92 100644
--- a/docs/cfelpyutils.html
+++ b/docs/cfelpyutils.html
@@ -70,6 +70,7 @@
 <li class="toctree-l2"><a class="reference internal" href="cfelpyutils.named_tuples.html">named_tuples</a></li>
 </ul>
 </li>
+<li class="toctree-l1"><a class="reference internal" href="documentation_guidelines_for_contributors.html">Guidelines for Contributors</a></li>
 </ul>
 
 <div class="relations">
diff --git a/docs/cfelpyutils.named_tuples.html b/docs/cfelpyutils.named_tuples.html
index d992c10..377126c 100644
--- a/docs/cfelpyutils.named_tuples.html
+++ b/docs/cfelpyutils.named_tuples.html
@@ -16,6 +16,7 @@
     <script type="text/javascript" src="_static/language_data.js"></script>
     <link rel="index" title="Index" href="genindex.html" />
     <link rel="search" title="Search" href="search.html" />
+    <link rel="next" title="Guidelines for Contributors" href="documentation_guidelines_for_contributors.html" />
     <link rel="prev" title="The geometry_utils Module" href="cfelpyutils.geometry_utils.html" />
    
   <link rel="stylesheet" href="_static/custom.css" type="text/css" />
@@ -54,7 +55,7 @@ library.</p>
 <li><strong>r</strong> (<em>numpy.ndarray</em>) – pixel map storing the distance of each pixel from the center of
 the reference system.</li>
 <li><strong>phi</strong> (<em>numpy.ndarray</em>) – pixel map storing the amplitude of the angle between each
-pixel, the center of the reference system, and the x axis through the center.</li>
+pixel, the center of the reference system, and the x axis.</li>
 </ul>
 </td>
 </tr>
@@ -118,6 +119,7 @@ pixel, the center of the reference system, and the x axis through the center.</l
 <li class="toctree-l2 current"><a class="current reference internal" href="#">named_tuples</a></li>
 </ul>
 </li>
+<li class="toctree-l1"><a class="reference internal" href="documentation_guidelines_for_contributors.html">Guidelines for Contributors</a></li>
 </ul>
 
 <div class="relations">
@@ -126,6 +128,7 @@ pixel, the center of the reference system, and the x axis through the center.</l
   <li><a href="index.html">Documentation overview</a><ul>
   <li><a href="cfelpyutils.html">The cfelpyutils Package</a><ul>
       <li>Previous: <a href="cfelpyutils.geometry_utils.html" title="previous chapter">The geometry_utils Module</a></li>
+      <li>Next: <a href="documentation_guidelines_for_contributors.html" title="next chapter">Guidelines for Contributors</a></li>
   </ul></li>
   </ul></li>
 </ul>
diff --git a/docs/documentation_guidelines_for_contributors.html b/docs/documentation_guidelines_for_contributors.html
new file mode 100644
index 0000000..81baa5a
--- /dev/null
+++ b/docs/documentation_guidelines_for_contributors.html
@@ -0,0 +1,146 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
+  <head>
+    <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    <title>Guidelines for Contributors &#8212; CFELPyUtils 1.0.0 documentation</title>
+    <link rel="stylesheet" href="_static/alabaster.css" type="text/css" />
+    <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
+    <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
+    <script type="text/javascript" src="_static/jquery.js"></script>
+    <script type="text/javascript" src="_static/underscore.js"></script>
+    <script type="text/javascript" src="_static/doctools.js"></script>
+    <script type="text/javascript" src="_static/language_data.js"></script>
+    <link rel="index" title="Index" href="genindex.html" />
+    <link rel="search" title="Search" href="search.html" />
+    <link rel="prev" title="The named_tuples Module" href="cfelpyutils.named_tuples.html" />
+   
+  <link rel="stylesheet" href="_static/custom.css" type="text/css" />
+  
+  
+  <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" />
+
+  </head><body>
+  
+
+    <div class="document">
+      <div class="documentwrapper">
+        <div class="bodywrapper">
+          
+
+          <div class="body" role="main">
+            
+  <div class="section" id="guidelines-for-contributors">
+<h1>Guidelines for Contributors<a class="headerlink" href="#guidelines-for-contributors" title="Permalink to this headline">¶</a></h1>
+<p>Contributions to the project are welcome. Please feel free to submit pull requests
+using the standard <a class="reference external" href="https://guides.github.com/introduction/flow/">GitHub flow</a>.</p>
+<div class="section" id="version-control">
+<h2>Version Control<a class="headerlink" href="#version-control" title="Permalink to this headline">¶</a></h2>
+<p>The CFELPyUtils library is developed using the <a class="reference external" href="https://git-scm.com">Git</a> version
+control system.</p>
+<p>It uses the branching strategy proposed by Vincent Driessen and commonly known as
+<a class="reference external" href="https://nvie.com/posts/a-successful-git-branching-model">Gitflow</a>.</p>
+</div>
+<div class="section" id="python">
+<h2>Python<a class="headerlink" href="#python" title="Permalink to this headline">¶</a></h2>
+<p>The CFELPyUtils library is mainly developed in <a class="reference external" href="https://www.python.org">Python</a>.</p>
+<ul class="simple">
+<li>All code in the library must run with both version 2 and 3 of Python, except for
+facility-specific code that specifically requires one of the two versions (for
+example, Python 2 for the LCSL facility). The code must specifically support all the
+currently active versions of python:<ul>
+<li>Python 2<ul>
+<li>2.7</li>
+</ul>
+</li>
+<li>Python 3<ul>
+<li>3.5</li>
+<li>3.6</li>
+<li>3.7</li>
+</ul>
+</li>
+</ul>
+</li>
+<li>The <a class="reference external" href="https://python-future.org">python-future</a> project should be used to ensure
+that code contributed to the project is compatible with all the supported versions of
+Python.</li>
+<li>The Python coding style should follow for the most part the <a class="reference external" href="https://github.com/google/styleguide/blob/gh-pages/pyguide.md">Google Python Coding Style</a>.</li>
+<li>All docstrings should be written following the <a class="reference external" href="https://sphinxcontrib-napoleon.readthedocs.io/en/latest/example_google.html">Google Style </a>.</li>
+<li><a class="reference external" href="https://www.pylint.org">Pylint</a> should be run on the code before
+submission, as stated in the Google Python Coding Style Guide. In the root
+folder of the CFELPyUtils repository, contributors can find  a ‘pylintrc’ file with
+the settings that should be applied when linting the code. Please see <a class="reference external" href="http://pylint.pycqa.org/en/latest/user_guide/run.html?highlight=pylintrc">here</a> how to
+use the pylintrc file.</li>
+<li>The <a class="reference external" href="https://github.com/psf/black">Black</a> Python code formatter should be run on
+the code before submission.</li>
+</ul>
+</div>
+<div class="section" id="c-c">
+<h2>C/C++<a class="headerlink" href="#c-c" title="Permalink to this headline">¶</a></h2>
+<p>Some extension can, for performance reason, be written using the <a class="reference external" href="https://en.wikipedia.org/wiki/C%2B%2B">C++</a> or  <a class="reference external" href="https://en.wikipedia.org/wiki/C_(programming_language)">C</a> programming languages.</p>
+<ul class="simple">
+<li>All C++ code in OnDA must follow at most the C++98 ISO standard, and the code
+must compile on a Linux RHEL7/CentOS7 platform using the standard development stack
+that comes with these systems.</li>
+<li>Part of the C++11 standard can be used when writing extensions. However, it must be
+possible to compile the code using version 4.8 of the ‘gcc’ compiler (in order to
+create the Linux binary Python wheel).</li>
+<li>All C code in OnDA must follow at most the C99 ISO standard, and the code
+must compile on a Linux RHEL7/CentOS7 platform using the standard development stack
+that comes with these systems.</li>
+<li>The <a class="reference external" href="http://cython.org">Cython</a> project should be used to interface C/C++ code with
+Python.</li>
+</ul>
+</div>
+</div>
+
+
+          </div>
+          
+        </div>
+      </div>
+      <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
+        <div class="sphinxsidebarwrapper">
+  <h3><a href="index.html">Table of Contents</a></h3>
+  <ul>
+<li><a class="reference internal" href="#">Guidelines for Contributors</a><ul>
+<li><a class="reference internal" href="#version-control">Version Control</a></li>
+<li><a class="reference internal" href="#python">Python</a></li>
+<li><a class="reference internal" href="#c-c">C/C++</a></li>
+</ul>
+</li>
+</ul>
+
+<div id="searchbox" style="display: none" role="search">
+  <h3>Quick search</h3>
+    <div class="searchformwrapper">
+    <form class="search" action="search.html" method="get">
+      <input type="text" name="q" />
+      <input type="submit" value="Go" />
+      <input type="hidden" name="check_keywords" value="yes" />
+      <input type="hidden" name="area" value="default" />
+    </form>
+    </div>
+</div>
+<script type="text/javascript">$('#searchbox').show(0);</script>
+        </div>
+      </div>
+      <div class="clearer"></div>
+    </div>
+    <div class="footer">
+      &copy;2019, OnDA Team.
+      
+      |
+      Powered by <a href="http://sphinx-doc.org/">Sphinx 1.8.5</a>
+      &amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.12</a>
+      
+    </div>
+
+    
+
+    
+  </body>
+</html>
\ No newline at end of file
diff --git a/docs/genindex.html b/docs/genindex.html
index c2a43c1..19e0c10 100644
--- a/docs/genindex.html
+++ b/docs/genindex.html
@@ -147,6 +147,7 @@
 <h3>Navigation</h3>
 <ul>
 <li class="toctree-l1"><a class="reference internal" href="cfelpyutils.html">The cfelpyutils Package</a></li>
+<li class="toctree-l1"><a class="reference internal" href="documentation_guidelines_for_contributors.html">Guidelines for Contributors</a></li>
 </ul>
 
 <div class="relations">
diff --git a/docs/index.html b/docs/index.html
index ea167f9..6e91902 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -47,25 +47,47 @@ several internal and released CFEL software projects.</p>
 </div>
 <div class="section" id="installation">
 <h2>Installation<a class="headerlink" href="#installation" title="Permalink to this headline">¶</a></h2>
-<p>The CFELPyUtils library is available on PyPI and can be installed using the pip
-command:</p>
+<p>The CFELPyUtils library is available on the <a class="reference external" href="https://pypi.org/">Python Package Index</a> (PyPI). It can be installed using the ‘pip’ command:</p>
 <div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>python3 -m pip install cfelpyutils
 </pre></div>
 </div>
-<p>Or, for python2:</p>
-<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>python -m pip install cfelpyutils
+<p>Or, for Python 2:</p>
+<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>python2 -m pip install cfelpyutils
 </pre></div>
 </div>
-<p>It is also available as an Anaconda package in the ‘ondateam’ channel. It can be
-installed using the ‘conda’ command:</p>
+<p>It is also available as a package for the <a class="reference external" href="https://anaconda.org/">Anaconda</a> Python
+distribution. It can be installed using the ‘conda’ command:</p>
 <div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>conda install -c ondateam cfelpyutils
 </pre></div>
 </div>
+<p>The library can also be installed manually by checking out the repository and running:</p>
+<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>python setup.py install
+</pre></div>
+</div>
+</div>
+<div class="section" id="authors">
+<h2>Authors<a class="headerlink" href="#authors" title="Permalink to this headline">¶</a></h2>
+<p>The CFELPyUtils library is currently developed in the lab of
+<a class="reference external" href="https://cid.cfel.de/">Henry Chapman</a> at the Center For Free Electron Laser Science
+in Hamburg.</p>
+<p>Many people from different institutions worlwide contribute code, testing and support
+to the project:</p>
+<ul class="simple">
+<li><strong>Valerio Mariani</strong> (corresponding author: <a class="reference external" href="mailto:valerio&#46;mariani&#37;&#52;&#48;desy&#46;de">valerio<span>&#46;</span>mariani<span>&#64;</span>desy<span>&#46;</span>de</a>)</li>
+<li>Anton Barty</li>
+<li>Andrew Morgan</li>
+<li>Thomas A. White</li>
+</ul>
 </div>
 <div class="section" id="code-documentation">
 <h2>Code Documentation<a class="headerlink" href="#code-documentation" title="Permalink to this headline">¶</a></h2>
 <p>Code documentation for the CFELPyUtils library can be found <a class="reference internal" href="cfelpyutils.html"><span class="doc">here</span></a>.</p>
 </div>
+<div class="section" id="guidelines-for-contributors">
+<h2>Guidelines for Contributors<a class="headerlink" href="#guidelines-for-contributors" title="Permalink to this headline">¶</a></h2>
+<p>Contributions to the projects are welcome. Please see the guidelines for contributors
+<a class="reference internal" href="documentation_guidelines_for_contributors.html"><span class="doc">here</span></a>.</p>
+</div>
 </div>
 
 
@@ -80,7 +102,9 @@ installed using the ‘conda’ command:</p>
 <li><a class="reference internal" href="#">CFELPyUtils</a><ul>
 <li><a class="reference internal" href="#introduction">Introduction</a></li>
 <li><a class="reference internal" href="#installation">Installation</a></li>
+<li><a class="reference internal" href="#authors">Authors</a></li>
 <li><a class="reference internal" href="#code-documentation">Code Documentation</a></li>
+<li><a class="reference internal" href="#guidelines-for-contributors">Guidelines for Contributors</a></li>
 </ul>
 </li>
 </ul>
diff --git a/docs/objects.inv b/docs/objects.inv
index 34d07436a47e4c7ece1eb791d06dad404d86eca3..4a820253d6ecab3d4028bc2d93308bcfad0ecf29 100644
GIT binary patch
delta 382
zcmV-^0fGM21N;M!hkrapr0q(zUVE*!Y0@eoZ97M4;?ig#iAXX*pMF4SODNDzD>txz
zf4^gh=?;W0o#nzHU9K|4oB;HM=sCXF+e|$8O#F!AsGFmCX>9e5rxBs-55$E~gyB;x
z1(ku#%i3t?B(+>gw7hE7_c&s%bREhjyY5Me)}lOhi><<pSbs9n^^nyS52`ZlEMUzG
zoDps2q5p8>h~NiOWAEi9Nd^pCrv;2pzbl%YeIQJD0b<j(NCh#b*WV@fHr_(-dCer&
z=6qX?=3d-<7HTmIwVZ`|_!ku!%T`QL6fZB<7W&*nH;58Kzex&HJ8T3uuva`itll*L
z=+w3u;Sb!KhIikq9^ePJX@q_;#fBYJw&beVWgxA;@Tubr1eaj&PUV;?>A#Z71FM^h
zy!Y!#fGPo6cLY%il1m0fgBN5AqBb~2ef?Yg7@cKp7ahg=<@r4+zv{C`)!G;!>M}ki
ce2G7Q%QirAx(_RS%!@yKKB@nuUzORuw3?E;zW@LL

delta 343
zcmV-d0jU1`1JwhNhkt#FNZXZaz4kh7(xgp7+IEiI#4XVRiAb18pMDLYEula+t=z!=
z{r#4~W?PinRaQttv|HzjR}#qsVdwZVv$?zrndF`%i*AmU&e+2{okqm6KM<Ev0jH<f
z4pok}blzxN70e1%kkwVIzQ+-BrR!KW*>z6}T1$88mRdzQSbv!4ddTXE2UEGOEK)6M
znu9j;(7%PLK#Dzh?5(^C$dOZ9X^G?0?}{d89|==YqkL;yWD<<&^>>N=9dD^K;hA7<
zDK>}E+=^SyLak?^x>>0Ee^H6Ce9aXj$?D>4k&g_!L6QRdf*nrXuo2wAT?zEK`mOm#
zr>@Nie_(GKeo(J^fFEts2>oJ;4LhoA$vZ4W!Le>g5;iD3>lh8SFaB|HmbHc*#pCnS
pYwA9|_u{a&14QkTV<MCU|CVhKN|wbHAr{2%A)oqh`2(9_j3!PFt{ngX

diff --git a/docs/py-modindex.html b/docs/py-modindex.html
index 02294c3..b250e79 100644
--- a/docs/py-modindex.html
+++ b/docs/py-modindex.html
@@ -88,6 +88,7 @@
 <h3>Navigation</h3>
 <ul>
 <li class="toctree-l1"><a class="reference internal" href="cfelpyutils.html">The cfelpyutils Package</a></li>
+<li class="toctree-l1"><a class="reference internal" href="documentation_guidelines_for_contributors.html">Guidelines for Contributors</a></li>
 </ul>
 
 <div class="relations">
diff --git a/docs/search.html b/docs/search.html
index a117965..e7b25fc 100644
--- a/docs/search.html
+++ b/docs/search.html
@@ -83,6 +83,7 @@
 <h3>Navigation</h3>
 <ul>
 <li class="toctree-l1"><a class="reference internal" href="cfelpyutils.html">The cfelpyutils Package</a></li>
+<li class="toctree-l1"><a class="reference internal" href="documentation_guidelines_for_contributors.html">Guidelines for Contributors</a></li>
 </ul>
 
 <div class="relations">
diff --git a/docs/searchindex.js b/docs/searchindex.js
index be933e7..2f17d5d 100644
--- a/docs/searchindex.js
+++ b/docs/searchindex.js
@@ -1 +1 @@
-Search.setIndex({docnames:["cfelpyutils","cfelpyutils.crystfel_utils","cfelpyutils.geometry_utils","cfelpyutils.named_tuples","index"],envversion:{"sphinx.domains.c":1,"sphinx.domains.changeset":1,"sphinx.domains.cpp":1,"sphinx.domains.javascript":1,"sphinx.domains.math":2,"sphinx.domains.python":1,"sphinx.domains.rst":1,"sphinx.domains.std":1,"sphinx.ext.todo":1,"sphinx.ext.viewcode":1,sphinx:55},filenames:["cfelpyutils.rst","cfelpyutils.crystfel_utils.rst","cfelpyutils.geometry_utils.rst","cfelpyutils.named_tuples.rst","index.rst"],objects:{"":{cfelpyutils:[0,0,0,"-"]},"cfelpyutils.crystfel_utils":{load_crystfel_geometry:[1,1,1,""]},"cfelpyutils.geometry_utils":{apply_geometry_to_data:[2,1,1,""],compute_pix_maps:[2,1,1,""],compute_visualization_pix_maps:[2,1,1,""]},"cfelpyutils.named_tuples":{PixelMaps:[3,2,1,""]},"cfelpyutils.named_tuples.PixelMaps":{phi:[3,3,1,""],r:[3,3,1,""],x:[3,3,1,""],y:[3,3,1,""],z:[3,3,1,""]},cfelpyutils:{crystfel_utils:[1,0,0,"-"],geometry_utils:[2,0,0,"-"],named_tuples:[3,0,0,"-"]}},objnames:{"0":["py","module","Python module"],"1":["py","function","Python function"],"2":["py","class","Python class"],"3":["py","attribute","Python attribute"]},objtypes:{"0":"py:module","1":"py:function","2":"py:class","3":"py:attribute"},terms:{"41a8fa9819010":1,"class":[3,4],"float":[],"function":[1,2,4],"int":[],"new":[],"return":[1,2],For:[1,4],The:4,These:2,absolut:1,adjust:[],alia:3,all:2,along:2,also:4,amplitud:3,anaconda:4,angl:3,ani:[1,2],appli:[2,4],apply_geometry_to_data:2,around:2,arrai:2,assum:[],avail:[2,4],awai:2,axi:3,base:3,beam:2,been:[],between:3,big:2,bigger:2,can:[2,4],caus:2,ceil:2,center:[2,3,4],cfel:4,cfelpyutil:3,channel:4,code:1,collect:3,command:4,commit:1,complet:2,comput:2,compute_min_array_s:[],compute_pix_map:2,compute_visualization_pix_map:2,conda:4,connect:[],contain:[0,1,2,3,4],convent:2,convert:[],coordin:[2,3],corner:2,correspond:1,crystfel:[1,2],crystfel_util:0,current:[1,4],data:[2,4],describ:[],desi:[],detector:[2,4],develop:4,dict:[1,2],dictionari:[1,2],differ:2,direct:2,displai:2,displayedus:[],distanc:3,document:1,each:3,electron:4,enough:2,entri:2,field:3,fifth:[],file:[1,2],filenam:1,first:[],follow:2,format:1,found:4,fourth:[],free:4,from:[1,2,3],full:1,gener:2,geometri:[1,2,3,4],geometry_util:0,get_detector_geometry_2:1,hamburg:4,hand:2,has:[],here:4,http:[],imag:4,imageview:2,implement:[],inform:[1,2,3,4],input:2,instead:[],interact:2,intern:4,just:[],kei:1,languag:1,laser:4,layout:2,left:2,librari:[0,2,3,4],like:2,link:[],load:1,load_crystfel_geometri:[1,2],main:[0,2],make:[],man:1,mani:[],manipul:2,map:[2,3],match:1,matplotlib:2,minimum:2,mostli:4,name:[2,3],named_tupl:0,ndarrai:[2,3],need:2,none:2,note:2,number:3,numpi:[2,3],object:2,often:2,ondateam:4,ones:2,onli:2,org:[],orient:2,origin:2,other:2,packag:[1,4],page:1,paramet:[1,2,3],particularli:2,path:1,perform:4,phi:[2,3],physic:2,pip:4,pixel:[2,3],pixel_map:[],pixelmap:[2,3],point:2,pre:2,prepar:[],process:4,project:4,provid:[],pypi:4,pyqtgraph:2,python2:4,python3:4,python:[1,4],rai:4,read:[1,2,4],readi:[],refer:[2,3],reimplement:1,rel:1,relat:4,releas:4,relev:1,respect:[],restrict:2,result:[],right:2,same:2,scienc:4,see:1,set:2,sever:4,shape:2,should:2,size:2,softwar:[1,4],some:[1,2],sourc:[1,2],standard:[],store:[1,2,3],str:[1,2],stro:[],style:[],submodul:[],suppos:[],symmetr:2,sync:[],synchron:1,system:[2,3],take:2,task:4,than:2,thi:[1,2,3],third:[],three:[],through:3,throughout:3,top:2,toward:2,tupl:[2,3],twhite:[],two:[],type:[1,2],used:[2,3,4],uses:1,using:[2,4],util:[1,2,4],valu:[1,2],variou:4,vector:[],visual:2,which:[0,2],whole:0,widget:2,work:[],written:4,wth:[],www:[],zenith:2},titles:["The cfelpyutils Package","The crystfel_utils Module","The geometry_utils Module","The named_tuples Module","CFELPyUtils"],titleterms:{The:[0,1,2,3],cfelpyutil:[0,4],code:4,crystfel_util:1,document:4,geometry_util:2,instal:4,introduct:4,modul:[1,2,3],named_tupl:3,packag:0,thecfelpyutil:[]}})
\ No newline at end of file
+Search.setIndex({docnames:["cfelpyutils","cfelpyutils.crystfel_utils","cfelpyutils.geometry_utils","cfelpyutils.named_tuples","documentation_guidelines_for_contributors","index"],envversion:{"sphinx.domains.c":1,"sphinx.domains.changeset":1,"sphinx.domains.cpp":1,"sphinx.domains.javascript":1,"sphinx.domains.math":2,"sphinx.domains.python":1,"sphinx.domains.rst":1,"sphinx.domains.std":1,"sphinx.ext.todo":1,"sphinx.ext.viewcode":1,sphinx:55},filenames:["cfelpyutils.rst","cfelpyutils.crystfel_utils.rst","cfelpyutils.geometry_utils.rst","cfelpyutils.named_tuples.rst","documentation_guidelines_for_contributors.rst","index.rst"],objects:{"":{cfelpyutils:[0,0,0,"-"]},"cfelpyutils.crystfel_utils":{load_crystfel_geometry:[1,1,1,""]},"cfelpyutils.geometry_utils":{apply_geometry_to_data:[2,1,1,""],compute_pix_maps:[2,1,1,""],compute_visualization_pix_maps:[2,1,1,""]},"cfelpyutils.named_tuples":{PixelMaps:[3,2,1,""]},"cfelpyutils.named_tuples.PixelMaps":{phi:[3,3,1,""],r:[3,3,1,""],x:[3,3,1,""],y:[3,3,1,""],z:[3,3,1,""]},cfelpyutils:{crystfel_utils:[1,0,0,"-"],geometry_utils:[2,0,0,"-"],named_tuples:[3,0,0,"-"]}},objnames:{"0":["py","module","Python module"],"1":["py","function","Python function"],"2":["py","class","Python class"],"3":["py","attribute","Python attribute"]},objtypes:{"0":"py:module","1":"py:function","2":"py:class","3":"py:attribute"},terms:{"41a8fa9819010":1,"class":[3,5],"float":[],"function":[1,2,5],"int":[],"new":[],"return":[1,2],For:[1,5],The:[4,5],These:2,absolut:1,accord:2,activ:4,adjust:[],alia:3,all:[2,4],along:2,also:5,amplitud:3,anaconda:5,andrew:5,angl:3,ani:[1,2],anton:5,appli:[2,4,5],apply_geometry_to_data:2,around:2,arrai:2,assum:[],avail:[2,5],awai:2,axi:3,barti:5,base:3,beam:2,been:[],befor:4,between:3,big:2,bigger:2,binari:4,black:4,both:4,branch:4,c99:4,can:[2,4,5],caus:2,ceil:2,center:[2,3,5],centos7:4,cfel:5,cfelpyutil:[3,4],channel:[],chapman:5,check:5,code:[1,4],collect:3,com:[],come:4,command:5,commit:1,commonli:4,compat:4,compil:4,complet:2,comput:2,compute_min_array_s:[],compute_pix_map:2,compute_visualization_pix_map:2,conda:5,connect:[],contain:[0,1,2,3,5],contribut:[4,5],convent:2,convert:[],coordin:[2,3],corner:2,correspond:[1,5],creat:4,crystfel:[1,2],crystfel_util:0,current:[1,4,5],cython:4,data:[2,5],describ:[],desi:5,detector:[2,5],develop:[4,5],dict:[1,2],dictionari:[1,2],differ:[2,5],direct:2,displai:2,displayedus:[],distanc:3,distribut:5,doc:[],docstr:4,document:1,documentation_guidelines_for_contributor:[],driessen:4,each:3,electron:5,enough:2,ensur:4,entri:2,exampl:4,except:4,extens:4,facil:4,feel:4,field:3,fifth:[],file:[1,2,4],filenam:1,find:4,first:[],flow:4,folder:4,follow:4,fork:[],format:1,formatt:4,found:5,fourth:[],free:[4,5],from:[1,2,3,5],full:1,futur:4,gcc:4,gener:2,geometri:[1,2,3,5],geometry_util:0,get_detector_geometry_2:1,git:4,gitflow:4,github:4,googl:4,guid:4,hamburg:5,hand:2,has:[],henri:5,here:[4,5],how:4,howev:4,http:[],imag:5,imageview:2,implement:[],index:5,inform:[1,2,3,5],input:2,instead:[],institut:5,interact:2,interfac:4,intern:5,introduct:[],iso:4,just:[],kei:1,known:4,lab:5,languag:[1,4],laser:5,layout:2,lcsl:4,left:2,librari:[0,2,3,4,5],like:2,link:[],lint:4,linux:4,load:1,load_crystfel_geometri:[1,2],main:[0,2],mainli:4,make:[],man:1,mani:5,manipul:2,manual:5,map:[2,3],mariani:5,match:1,matplotlib:2,minimum:2,model:[],morgan:5,most:4,mostli:5,must:4,name:[2,3],named_tupl:0,ndarrai:[2,3],need:2,none:2,note:[],number:3,numpi:[2,3],nvie:[],object:2,often:2,onda:4,ondateam:5,one:4,ones:2,onli:2,order:4,org:[],orient:2,origin:2,other:2,out:5,packag:[1,5],page:1,paramet:[1,2,3],part:4,particularli:2,path:1,peopl:5,perform:[4,5],phi:[2,3],physic:2,pip:5,pixel:[2,3],pixel_map:[],pixelmap:[2,3],platform:4,pleas:[4,5],point:2,possibl:4,post:[],pre:2,prepar:[],process:5,program:4,project:[4,5],propos:4,provid:[],pull:4,pylint:4,pylintrc:4,pypi:5,pyqtgraph:2,python2:5,python3:5,python:[1,5],rai:5,read:[1,2,5],readi:[],reason:4,refer:[2,3],reimplement:1,rel:1,relat:5,releas:5,relev:1,repositori:[4,5],request:4,requir:4,respect:[],restrict:2,result:[],rhel7:4,right:2,root:4,run:[4,5],same:2,scienc:5,scm:[],see:[1,4,5],set:[2,4],setup:5,sever:5,shape:2,should:[2,4],size:2,softwar:[1,5],some:[1,2,4],sourc:[1,2],specif:4,stack:4,standard:4,state:4,store:[1,2,3],str:[1,2],strategi:4,stro:[],style:4,submiss:4,submit:4,submodul:[],success:[],support:[4,5],suppos:[],symmetr:2,sync:[],synchron:1,system:[2,3,4],take:2,task:5,test:5,than:2,thi:[1,2,3],third:[],thoma:5,three:[],through:[],throughout:3,top:2,toward:2,tupl:[2,3],twhite:[],two:4,type:[1,2],use:4,used:[2,3,4,5],uses:[1,4],using:[2,4,5],util:[1,2,5],valerio:5,valu:[1,2],variou:5,vector:[],vincent:4,visual:2,welcom:[4,5],wheel:4,when:4,which:[0,2],white:5,whole:0,widget:2,work:[],worlwid:5,write:4,written:[4,5],wth:[],www:[],zenith:2},titles:["The cfelpyutils Package","The crystfel_utils Module","The geometry_utils Module","The named_tuples Module","Guidelines for Contributors","CFELPyUtils"],titleterms:{The:[0,1,2,3],author:5,cfelpyutil:[0,5],code:5,contributor:[4,5],control:4,crystfel_util:1,document:5,geometry_util:2,guidelin:[4,5],instal:5,introduct:5,modul:[1,2,3],named_tupl:3,packag:0,python:4,thecfelpyutil:[],version:4}})
\ No newline at end of file
diff --git a/docs_src/_build/doctrees/cfelpyutils.geometry_utils.doctree b/docs_src/_build/doctrees/cfelpyutils.geometry_utils.doctree
index ca1e14957b5fc883079921f36592dd98910a8eb3..ef78c530f1bd185db8de4b0d027a1bf0655e3480 100644
GIT binary patch
delta 766
zcmX^0nsLG#M%D(FsjOuiSxdPYk4+ZzojX~QUvRQMztm<Ao(3jHlgWJiGC;26<Q@es
zI4_m4Ve(XdFZ;xzRE6Ty60XGL<ou$P%)E4kl6-}d44`0QZmL3ZeqLE>UP)$tUa>-A
zv4V3^WpRm{tB=)`4EES58KOO4GjvEXV{@IrW+{*>d>25SDL(nXwhD_vVjkDzJ^E6c
z9d)KKF_uEzj3Ot^-8!XlO6?Sl4Ave@1)KNi`>-=sPVO>y5iLqBDJ{xNP2tJ|dLl)k
zq_iL>RblcibNR^?=7NkBc-5#AkXP7TWHDQWF%sy5J^Y}6%FIj4FUm~>1=8eq0g6&w
zDVfCuIf<1(i%W|^0h*JURFqhhnOeM=-ES`wWBFw3Ky_?7b#UthnvtEVFa_a%oQB}D
zetw`jGvmI=$3q<D3NkBFa}>%Fb4pW-fj;1Zc%-1TL?I=yByqA-s0|yJMy6h>)#N@w
zX>LtDScH?Id$Lhj8snqM6T<!26pAyeQn@BS33n1yC`c?S$xJTINi52#RLD%@nrt3n
Q!vRfJgjH`gkC-eA0AA=1KL7v#

delta 653
zcmb7;-z!659L9T3o0DVNh?3D>n$Tp*1=dP_UTDTJq?8x$oR@cJr}G0-D~h{asPAzn
z`2(bQU6Omsy(_nh|A7^<Lb&`s&+~b{&;B#Ic|z`O*TJ=Y=C;ewEkr}7E;Ey+5b*lN
zfM;7mJ#ZJQd($4ugT-gSn?g2teIs%z!+B;y0nJxa%``k<WKC;$C>C*4dEQa0^IuXD
z)5M-n)E4R*Mvvh>RPphl2J+#cOCcH-t!<|g+A4nkX+meX=_gNIgkv(&0d);}G?J#v
z*s^s_6`1SlK$-94K<UTQ?`^T$eOQHJg{_wov*0MvP>YwDsdJJowA&`rRxnXGTQrD~
z70vN039W*fXnqg3{T#-etx@dkIXh0yX;IzzVh;bt!T4mOKoc(#ItP^Ot7MvPTUckC
zlq>6m+th@GWYmXSSUZhiOQm>`lC%ORN&i0yb9zI5jE_wXMKC-~$4eBGZBY!pGyN5c
cP7I4J*_;?Wi&+XoZZ-;cGxDDSk(-73SF6t8;s5{u

diff --git a/docs_src/_build/doctrees/cfelpyutils.named_tuples.doctree b/docs_src/_build/doctrees/cfelpyutils.named_tuples.doctree
index 951a3aee914e21348f74f94850fe62bb7a96d8a1..ba3c44ff6f9b3795a51c675e8a6f8088d9483c4e 100644
GIT binary patch
delta 64
zcmdm2*jmWaz%sRJBa5O0OLsv==HzOAxykMlnUn2BMK|A&n90akGTBz5m{)H~>y*YR
RwNo@QSbM-Co4cirWdY`S7Qp}j

delta 130
zcmZoI+*iobz%q67Mixa0mU#sknUkye<tArJWeO{lWEAC>re^@@RE6Z!ypq(S%^M`v
vF*3GKj+ZJ{z#^?TrFBZ<l-em88LT~EMN(K5Wk_d*Firl&XRx_b`i~3%Q%W$;

diff --git a/docs_src/_build/doctrees/documentation_guidelines_for_contributors.doctree b/docs_src/_build/doctrees/documentation_guidelines_for_contributors.doctree
new file mode 100644
index 0000000000000000000000000000000000000000..a5446767a2c64afa17aadb39889320d78fe0f147
GIT binary patch
literal 19892
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

literal 0
HcmV?d00001

diff --git a/docs_src/_build/doctrees/environment.pickle b/docs_src/_build/doctrees/environment.pickle
index ab85190b94d6e6c3a55d42111fbf201f24b8a836..b8ee0ab9479772890454c5d87da8fc1f9540c191 100644
GIT binary patch
delta 10798
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

delta 7829
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
ND8M6V<la|0{|jaV>y`ij

diff --git a/docs_src/_build/doctrees/index.doctree b/docs_src/_build/doctrees/index.doctree
index 40c0debfc498eee782bf01c6988c1be8aa48990d..eabd823eacd46babafe90b699e47c95d0c7fd58c 100644
GIT binary patch
literal 12227
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
Yfk?IHxuRJsRKp^W%<zQb`nbLNd%B@U#sB~S

delta 1010
zcmbVLO-~b16y;4j(xQd((S$&OS4vx2r3nxgx?|yjkW@$-1BnJ+r&I5g>9nCU#4Z|(
zi6kULjCo@s3-JetF{Vp{@netr10;k*H<}n(xgx&T4_ef?a5H)L+<VVG_so0mmdq)!
zWPiBc_d>MUgE8~Gl#<n4!O#^oZ*5q_yr5{3Y9!^9qRM&erUmna68ldPzym4z!5MW)
zfWQU;2tsJqUEUV2+r--}xyF(amtISBF+`#lopI!*CFiX8fW`NDd%xM#-e)Ah2(Md3
zYZOFtfj(~=b<7p!W-!r`^izk|lT&hSQZ|!e@f8bNnH=|D%DiXF?pZZLc*2H0J|oM^
z5R=ZiO6VE==!!2qt;rqYI2U$Cko(%|C7jBx;#@(8tTu5f;m<^4=vzkhnhy=sz3?}Y
z@1Ab!tCG_9?f%xr*-O86xdhl}>hK+SY1$Jc4;Jig!mFZXzzEb82bxG578)};R`Qsr
z`79=DL{UjXl`&z6hNm?mWwj*1IU=o)TQXKOtb>e09Mol!31JC{rpam)Ga8AA8cxV<
z^m9jek=b7S59*`RqdNIfY5O<&D*Jxt#5p)*%N%geJax|^P3!H_t*#XTzHv`{|MFyv
zH_`7san#2y-5~ukblKrVEiK?lx6&=oc#oY2joUlP|29?evEV^;*|#JNBl^ZSfP!?o
zzndQW!j6$@H)g;P)q(@UIHF|uYUd!wt50Bxv9tCc!ET3%q85+nVeeRbeG{IyBkJ-e
z&}4Zp1cGoEl|zvo+wu)Yl3wIYo3N2a{BV+vb8w!04AZHRjI0-O>>aWPlIG<x*o;*w
cW0k^~0lhp`A&I~SNN@sXrJc<z??eOW7fWML{{R30

diff --git a/docs_src/_build/html/.buildinfo b/docs_src/_build/html/.buildinfo
index 07914e1..5c20a1a 100644
--- a/docs_src/_build/html/.buildinfo
+++ b/docs_src/_build/html/.buildinfo
@@ -1,4 +1,4 @@
 # Sphinx build info version 1
 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
-config: fd8cf3500139e539a950fcaee26c3d53
+config: b2d79c21d77cd2b06bfb2cb4376d24d9
 tags: 645f666f9bcd5a90fca523b33c5a78b7
diff --git a/docs_src/_build/html/_modules/cfelpyutils/crystfel_utils.html b/docs_src/_build/html/_modules/cfelpyutils/crystfel_utils.html
index 8d1f451..f114828 100644
--- a/docs_src/_build/html/_modules/cfelpyutils/crystfel_utils.html
+++ b/docs_src/_build/html/_modules/cfelpyutils/crystfel_utils.html
@@ -703,6 +703,7 @@
 <h3>Navigation</h3>
 <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../cfelpyutils.html">The cfelpyutils Package</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../documentation_guidelines_for_contributors.html">Guidelines for Contributors</a></li>
 </ul>
 
 <div class="relations">
diff --git a/docs_src/_build/html/_modules/cfelpyutils/geometry_utils.html b/docs_src/_build/html/_modules/cfelpyutils/geometry_utils.html
index 479e596..61de150 100644
--- a/docs_src/_build/html/_modules/cfelpyutils/geometry_utils.html
+++ b/docs_src/_build/html/_modules/cfelpyutils/geometry_utils.html
@@ -69,10 +69,10 @@
 
 <span class="sd">    This function takes as input some geometry information read from a `CrystFEL</span>
 <span class="sd">    &lt;http://www.desy.de/~twhite/crystfel/manual-crystfel_geometry.html&gt;`_ file, and</span>
-<span class="sd">    returns a set of some pre-computed pixel maps.</span>
+<span class="sd">    returns a set of pre-computed pixel maps.</span>
 
-<span class="sd">    The origin and the orientation of the reference system for the pixel maps follow</span>
-<span class="sd">    the same conventions as in CrystFEL:</span>
+<span class="sd">    The origin and the orientation of the reference system for the pixel maps are set</span>
+<span class="sd">    according to the same conventions as CrystFEL:</span>
 
 <span class="sd">    * The center of the reference system is the beam interaction point.</span>
 
@@ -168,8 +168,8 @@
 
 <span class="sd">    This function takes as input some geometry information read from a `CrystFEL</span>
 <span class="sd">    &lt;http://www.desy.de/~twhite/crystfel/manual-crystfel_geometry.html&gt;`_ file, and</span>
-<span class="sd">    returns a set of some pre-computed pixel maps that can be used to display data in</span>
-<span class="sd">    an ImageView widget from the `PyQtGraph &lt;http://pyqtgraph.org/&gt;`_ library.</span>
+<span class="sd">    returns a set of pre-computed pixel maps that can be used to display data in an</span>
+<span class="sd">    ImageView widget from the `PyQtGraph &lt;http://pyqtgraph.org/&gt;`_ library.</span>
 
 <span class="sd">    These pixel maps are different from the ones generated by the</span>
 <span class="sd">    :func:`~compute_pix_maps` function. The main differences are:</span>
@@ -177,8 +177,8 @@
 <span class="sd">    * The origin of the reference system is not the beam interaction point, but the top</span>
 <span class="sd">      left corner of the array used to visualize the data.</span>
 
-<span class="sd">    * Only the x and y pixel maps are available. The other entries in the named tuple</span>
-<span class="sd">      (z, r and phi) are set to None.</span>
+<span class="sd">    * Only the x and y pixel maps are available. The other entries in the returned</span>
+<span class="sd">      named tuple (z, r and phi) are set to None.</span>
 
 <span class="sd">    Arguments:</span>
 
@@ -214,17 +214,17 @@
 
 <span class="sd">    This function takes as input some geometry information read from a `CrystFEL</span>
 <span class="sd">    &lt;http://www.desy.de/~twhite/crystfel/manual-crystfel_geometry.html&gt;`_ file, and</span>
-<span class="sd">    some data on which to apply it. It returns an array that can be displayed using a</span>
-<span class="sd">    library like `matplotlib &lt;https://matplotlib.org/&gt;`_ or </span>
+<span class="sd">    some data on which to apply the information. It returns an array that can be</span>
+<span class="sd">    displayed using libraries like `matplotlib &lt;https://matplotlib.org/&gt;`_ or</span>
 <span class="sd">    `PyQtGraph &lt;http://pyqtgraph.org/&gt;`_.</span>
 
-<span class="sd">    The shape of the returned array is big enough to display all the input pixel</span>
-<span class="sd">    values, and is symmetric around the center of the reference system (i.e: the beam</span>
-<span class="sd">    interaction point).</span>
+<span class="sd">    The shape of the returned array is big enough to display all the pixel values in</span>
+<span class="sd">    the input data, and is symmetric around the center of the reference system</span>
+<span class="sd">    (i.e: the beam interaction point).</span>
 
-<span class="sd">    NOTE: This restrictions often cause the returned array to be bigger than the minimum</span>
-<span class="sd">    size needed to store the physical layout of the pixels in the detector,</span>
-<span class="sd">    particularly if the detector is not centered at the beam interaction point.</span>
+<span class="sd">    This restrictions often cause the returned array to be bigger than the minimum size</span>
+<span class="sd">    needed to store the physical layout of the pixels in the detector, particularly if</span>
+<span class="sd">    the detector is not centered at the beam interaction point.</span>
 
 <span class="sd">    Arguments:</span>
 
@@ -270,6 +270,7 @@
 <h3>Navigation</h3>
 <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../cfelpyutils.html">The cfelpyutils Package</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../documentation_guidelines_for_contributors.html">Guidelines for Contributors</a></li>
 </ul>
 
 <div class="relations">
diff --git a/docs_src/_build/html/_modules/cfelpyutils/named_tuples.html b/docs_src/_build/html/_modules/cfelpyutils/named_tuples.html
index 7649063..5c11e47 100644
--- a/docs_src/_build/html/_modules/cfelpyutils/named_tuples.html
+++ b/docs_src/_build/html/_modules/cfelpyutils/named_tuples.html
@@ -72,7 +72,7 @@
 <span class="sd">        the reference system.</span>
 
 <span class="sd">    phi (numpy.ndarray): pixel map storing the amplitude of the angle between each</span>
-<span class="sd">       pixel, the center of the reference system, and the x axis through the center.</span>
+<span class="sd">       pixel, the center of the reference system, and the x axis.</span>
 <span class="sd">&quot;&quot;&quot;</span>
 </pre></div>
 
@@ -94,6 +94,7 @@
 <h3>Navigation</h3>
 <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../cfelpyutils.html">The cfelpyutils Package</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../documentation_guidelines_for_contributors.html">Guidelines for Contributors</a></li>
 </ul>
 
 <div class="relations">
diff --git a/docs_src/_build/html/_modules/index.html b/docs_src/_build/html/_modules/index.html
index 0426bf5..a28cdf2 100644
--- a/docs_src/_build/html/_modules/index.html
+++ b/docs_src/_build/html/_modules/index.html
@@ -56,6 +56,7 @@
 <h3>Navigation</h3>
 <ul>
 <li class="toctree-l1"><a class="reference internal" href="../cfelpyutils.html">The cfelpyutils Package</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../documentation_guidelines_for_contributors.html">Guidelines for Contributors</a></li>
 </ul>
 
 <div class="relations">
diff --git a/docs_src/_build/html/_sources/documentation_guidelines_for_contributors.rst.txt b/docs_src/_build/html/_sources/documentation_guidelines_for_contributors.rst.txt
new file mode 100644
index 0000000..bcdb3cb
--- /dev/null
+++ b/docs_src/_build/html/_sources/documentation_guidelines_for_contributors.rst.txt
@@ -0,0 +1,79 @@
+Guidelines for Contributors
+===========================
+
+Contributions to the project are welcome. Please feel free to submit pull requests
+using the standard `GitHub flow <https://guides.github.com/introduction/flow/>`_.
+
+
+Version Control
+^^^^^^^^^^^^^^^
+
+The CFELPyUtils library is developed using the `Git <https://git-scm.com>`_ version
+control system.
+
+It uses the branching strategy proposed by Vincent Driessen and commonly known as
+`Gitflow <https://nvie.com/posts/a-successful-git-branching-model>`_.
+
+
+Python
+^^^^^^
+
+The CFELPyUtils library is mainly developed in `Python  <https://www.python.org>`_.
+
+* All code in the library must run with both version 2 and 3 of Python, except for
+  facility-specific code that specifically requires one of the two versions (for
+  example, Python 2 for the LCSL facility). The code must specifically support all the
+  currently active versions of python:
+
+  * Python 2
+
+    * 2.7
+
+  * Python 3
+
+    * 3.5
+    * 3.6
+    * 3.7
+
+* The `python-future <https://python-future.org>`_ project should be used to ensure
+  that code contributed to the project is compatible with all the supported versions of
+  Python.
+
+* The Python coding style should follow for the most part the `Google Python \
+  Coding Style <https://github.com/google/styleguide/blob/gh-pages/pyguide.md>`_.
+
+* All docstrings should be written following the `Google Style \
+  <https://sphinxcontrib-napoleon.readthedocs.io/en/latest/example_google.html>`_.
+
+* `Pylint <https://www.pylint.org>`_ should be run on the code before
+  submission, as stated in the Google Python Coding Style Guide. In the root
+  folder of the CFELPyUtils repository, contributors can find  a 'pylintrc' file with
+  the settings that should be applied when linting the code. Please see `here
+  <http://pylint.pycqa.org/en/latest/user_guide/run.html?highlight=pylintrc>`_ how to
+  use the pylintrc file.
+  
+* The `Black <https://github.com/psf/black>`_ Python code formatter should be run on
+  the code before submission.
+
+
+C/C++
+^^^^^
+
+Some extension can, for performance reason, be written using the `C++
+<https://en.wikipedia.org/wiki/C%2B%2B>`_ or  `C
+<https://en.wikipedia.org/wiki/C_(programming_language)>`_ programming languages.
+
+* All C++ code in OnDA must follow at most the C++98 ISO standard, and the code
+  must compile on a Linux RHEL7/CentOS7 platform using the standard development stack
+  that comes with these systems.
+
+* Part of the C++11 standard can be used when writing extensions. However, it must be
+  possible to compile the code using version 4.8 of the 'gcc' compiler (in order to
+  create the Linux binary Python wheel).
+
+* All C code in OnDA must follow at most the C99 ISO standard, and the code
+  must compile on a Linux RHEL7/CentOS7 platform using the standard development stack
+  that comes with these systems.
+
+* The `Cython <http://cython.org>`_ project should be used to interface C/C++ code with
+  Python.
diff --git a/docs_src/_build/html/_sources/index.rst.txt b/docs_src/_build/html/_sources/index.rst.txt
index 929f41c..a3b5c6e 100644
--- a/docs_src/_build/html/_sources/index.rst.txt
+++ b/docs_src/_build/html/_sources/index.rst.txt
@@ -10,6 +10,7 @@ CFELPyUtils
    :hidden:
 
    cfelpyutils
+   documentation_guidelines_for_contributors
 
 
 Introduction
@@ -25,29 +26,57 @@ several internal and released CFEL software projects.
 Installation
 ------------
 
-The CFELPyUtils library is available on PyPI and can be installed using the pip
-command:
+The CFELPyUtils library is available on the `Python Package Index
+<https://pypi.org/>`_ (PyPI). It can be installed using the 'pip' command:
 
 .. code-block:: bash
 
     python3 -m pip install cfelpyutils
 
-Or, for python2:
+Or, for Python 2:
 
 .. code-block:: bash
 
-    python -m pip install cfelpyutils
+    python2 -m pip install cfelpyutils
 
-
-It is also available as an Anaconda package in the 'ondateam' channel. It can be
-installed using the 'conda' command:
+It is also available as a package for the `Anaconda <https://anaconda.org/>`_ Python
+distribution. It can be installed using the 'conda' command:
 
 .. code-block:: bash
 
     conda install -c ondateam cfelpyutils
 
+The library can also be installed manually by checking out the repository and running:
+
+.. code-block:: bash
+
+    python setup.py install 
+
+
+Authors
+-------
+
+The CFELPyUtils library is currently developed in the lab of 
+`Henry Chapman <https://cid.cfel.de/>`_ at the Center For Free Electron Laser Science
+in Hamburg. 
+
+Many people from different institutions worlwide contribute code, testing and support
+to the project:
+
+* **Valerio Mariani** (corresponding author: valerio.mariani@desy.de)
+* Anton Barty
+* Andrew Morgan
+* Thomas A. White
+
 
 Code Documentation
 ------------------
 
-Code documentation for the CFELPyUtils library can be found :doc:`here <cfelpyutils>`.
\ No newline at end of file
+Code documentation for the CFELPyUtils library can be found :doc:`here <cfelpyutils>`.
+
+
+Guidelines for Contributors
+---------------------------
+
+Contributions to the projects are welcome. Please see the guidelines for contributors
+:doc:`here <documentation_guidelines_for_contributors>`.
\ No newline at end of file
diff --git a/docs_src/_build/html/cfelpyutils.crystfel_utils.html b/docs_src/_build/html/cfelpyutils.crystfel_utils.html
index d162d9e..58736df 100644
--- a/docs_src/_build/html/cfelpyutils.crystfel_utils.html
+++ b/docs_src/_build/html/cfelpyutils.crystfel_utils.html
@@ -95,6 +95,7 @@ file.</td>
 <li class="toctree-l2"><a class="reference internal" href="cfelpyutils.named_tuples.html">named_tuples</a></li>
 </ul>
 </li>
+<li class="toctree-l1"><a class="reference internal" href="documentation_guidelines_for_contributors.html">Guidelines for Contributors</a></li>
 </ul>
 
 <div class="relations">
diff --git a/docs_src/_build/html/cfelpyutils.geometry_utils.html b/docs_src/_build/html/cfelpyutils.geometry_utils.html
index 77c72d0..a474102 100644
--- a/docs_src/_build/html/cfelpyutils.geometry_utils.html
+++ b/docs_src/_build/html/cfelpyutils.geometry_utils.html
@@ -43,9 +43,9 @@
 <code class="descname">compute_pix_maps</code><span class="sig-paren">(</span><em>geometry</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/cfelpyutils/geometry_utils.html#compute_pix_maps"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#cfelpyutils.geometry_utils.compute_pix_maps" title="Permalink to this definition">¶</a></dt>
 <dd><p>Computes pixel maps from CrystFEL geometry information.</p>
 <p>This function takes as input some geometry information read from a <a class="reference external" href="http://www.desy.de/~twhite/crystfel/manual-crystfel_geometry.html">CrystFEL</a> file, and
-returns a set of some pre-computed pixel maps.</p>
-<p>The origin and the orientation of the reference system for the pixel maps follow
-the same conventions as in CrystFEL:</p>
+returns a set of pre-computed pixel maps.</p>
+<p>The origin and the orientation of the reference system for the pixel maps are set
+according to the same conventions as CrystFEL:</p>
 <ul class="simple">
 <li>The center of the reference system is the beam interaction point.</li>
 <li>+z is the beam direction, and points along the beam (i.e. away from the source).</li>
@@ -73,15 +73,15 @@ pixel maps.</td>
 <code class="descname">compute_visualization_pix_maps</code><span class="sig-paren">(</span><em>geometry</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/cfelpyutils/geometry_utils.html#compute_visualization_pix_maps"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#cfelpyutils.geometry_utils.compute_visualization_pix_maps" title="Permalink to this definition">¶</a></dt>
 <dd><p>Computes pixel maps for data visualization from CrystFEL geometry information.</p>
 <p>This function takes as input some geometry information read from a <a class="reference external" href="http://www.desy.de/~twhite/crystfel/manual-crystfel_geometry.html">CrystFEL</a> file, and
-returns a set of some pre-computed pixel maps that can be used to display data in
-an ImageView widget from the <a class="reference external" href="http://pyqtgraph.org/">PyQtGraph</a> library.</p>
+returns a set of pre-computed pixel maps that can be used to display data in an
+ImageView widget from the <a class="reference external" href="http://pyqtgraph.org/">PyQtGraph</a> library.</p>
 <p>These pixel maps are different from the ones generated by the
 <a class="reference internal" href="#cfelpyutils.geometry_utils.compute_pix_maps" title="cfelpyutils.geometry_utils.compute_pix_maps"><code class="xref py py-func docutils literal notranslate"><span class="pre">compute_pix_maps()</span></code></a> function. The main differences are:</p>
 <ul class="simple">
 <li>The origin of the reference system is not the beam interaction point, but the top
 left corner of the array used to visualize the data.</li>
-<li>Only the x and y pixel maps are available. The other entries in the named tuple
-(z, r and phi) are set to None.</li>
+<li>Only the x and y pixel maps are available. The other entries in the returned
+named tuple (z, r and phi) are set to None.</li>
 </ul>
 <table class="docutils field-list" frame="void" rules="none">
 <col class="field-name" />
@@ -103,15 +103,15 @@ the <a class="reference internal" href="cfelpyutils.crystfel_utils.html#cfelpyut
 <code class="descname">apply_geometry_to_data</code><span class="sig-paren">(</span><em>data</em>, <em>geometry</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/cfelpyutils/geometry_utils.html#apply_geometry_to_data"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#cfelpyutils.geometry_utils.apply_geometry_to_data" title="Permalink to this definition">¶</a></dt>
 <dd><p>Applies CrystFEL geometry information to some data.</p>
 <p>This function takes as input some geometry information read from a <a class="reference external" href="http://www.desy.de/~twhite/crystfel/manual-crystfel_geometry.html">CrystFEL</a> file, and
-some data on which to apply it. It returns an array that can be displayed using a
-library like <a class="reference external" href="https://matplotlib.org/">matplotlib</a> or
+some data on which to apply the information. It returns an array that can be
+displayed using libraries like <a class="reference external" href="https://matplotlib.org/">matplotlib</a> or
 <a class="reference external" href="http://pyqtgraph.org/">PyQtGraph</a>.</p>
-<p>The shape of the returned array is big enough to display all the input pixel
-values, and is symmetric around the center of the reference system (i.e: the beam
-interaction point).</p>
-<p>NOTE: This restrictions often cause the returned array to be bigger than the minimum
-size needed to store the physical layout of the pixels in the detector,
-particularly if the detector is not centered at the beam interaction point.</p>
+<p>The shape of the returned array is big enough to display all the pixel values in
+the input data, and is symmetric around the center of the reference system
+(i.e: the beam interaction point).</p>
+<p>This restrictions often cause the returned array to be bigger than the minimum size
+needed to store the physical layout of the pixels in the detector, particularly if
+the detector is not centered at the beam interaction point.</p>
 <table class="docutils field-list" frame="void" rules="none">
 <col class="field-name" />
 <col class="field-body" />
@@ -161,6 +161,7 @@ applied.</p>
 <li class="toctree-l2"><a class="reference internal" href="cfelpyutils.named_tuples.html">named_tuples</a></li>
 </ul>
 </li>
+<li class="toctree-l1"><a class="reference internal" href="documentation_guidelines_for_contributors.html">Guidelines for Contributors</a></li>
 </ul>
 
 <div class="relations">
diff --git a/docs_src/_build/html/cfelpyutils.html b/docs_src/_build/html/cfelpyutils.html
index 24ffb50..e7a0d92 100644
--- a/docs_src/_build/html/cfelpyutils.html
+++ b/docs_src/_build/html/cfelpyutils.html
@@ -70,6 +70,7 @@
 <li class="toctree-l2"><a class="reference internal" href="cfelpyutils.named_tuples.html">named_tuples</a></li>
 </ul>
 </li>
+<li class="toctree-l1"><a class="reference internal" href="documentation_guidelines_for_contributors.html">Guidelines for Contributors</a></li>
 </ul>
 
 <div class="relations">
diff --git a/docs_src/_build/html/cfelpyutils.named_tuples.html b/docs_src/_build/html/cfelpyutils.named_tuples.html
index d992c10..377126c 100644
--- a/docs_src/_build/html/cfelpyutils.named_tuples.html
+++ b/docs_src/_build/html/cfelpyutils.named_tuples.html
@@ -16,6 +16,7 @@
     <script type="text/javascript" src="_static/language_data.js"></script>
     <link rel="index" title="Index" href="genindex.html" />
     <link rel="search" title="Search" href="search.html" />
+    <link rel="next" title="Guidelines for Contributors" href="documentation_guidelines_for_contributors.html" />
     <link rel="prev" title="The geometry_utils Module" href="cfelpyutils.geometry_utils.html" />
    
   <link rel="stylesheet" href="_static/custom.css" type="text/css" />
@@ -54,7 +55,7 @@ library.</p>
 <li><strong>r</strong> (<em>numpy.ndarray</em>) – pixel map storing the distance of each pixel from the center of
 the reference system.</li>
 <li><strong>phi</strong> (<em>numpy.ndarray</em>) – pixel map storing the amplitude of the angle between each
-pixel, the center of the reference system, and the x axis through the center.</li>
+pixel, the center of the reference system, and the x axis.</li>
 </ul>
 </td>
 </tr>
@@ -118,6 +119,7 @@ pixel, the center of the reference system, and the x axis through the center.</l
 <li class="toctree-l2 current"><a class="current reference internal" href="#">named_tuples</a></li>
 </ul>
 </li>
+<li class="toctree-l1"><a class="reference internal" href="documentation_guidelines_for_contributors.html">Guidelines for Contributors</a></li>
 </ul>
 
 <div class="relations">
@@ -126,6 +128,7 @@ pixel, the center of the reference system, and the x axis through the center.</l
   <li><a href="index.html">Documentation overview</a><ul>
   <li><a href="cfelpyutils.html">The cfelpyutils Package</a><ul>
       <li>Previous: <a href="cfelpyutils.geometry_utils.html" title="previous chapter">The geometry_utils Module</a></li>
+      <li>Next: <a href="documentation_guidelines_for_contributors.html" title="next chapter">Guidelines for Contributors</a></li>
   </ul></li>
   </ul></li>
 </ul>
diff --git a/docs_src/_build/html/documentation_guidelines_for_contributors.html b/docs_src/_build/html/documentation_guidelines_for_contributors.html
new file mode 100644
index 0000000..81baa5a
--- /dev/null
+++ b/docs_src/_build/html/documentation_guidelines_for_contributors.html
@@ -0,0 +1,146 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
+  <head>
+    <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    <title>Guidelines for Contributors &#8212; CFELPyUtils 1.0.0 documentation</title>
+    <link rel="stylesheet" href="_static/alabaster.css" type="text/css" />
+    <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
+    <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
+    <script type="text/javascript" src="_static/jquery.js"></script>
+    <script type="text/javascript" src="_static/underscore.js"></script>
+    <script type="text/javascript" src="_static/doctools.js"></script>
+    <script type="text/javascript" src="_static/language_data.js"></script>
+    <link rel="index" title="Index" href="genindex.html" />
+    <link rel="search" title="Search" href="search.html" />
+    <link rel="prev" title="The named_tuples Module" href="cfelpyutils.named_tuples.html" />
+   
+  <link rel="stylesheet" href="_static/custom.css" type="text/css" />
+  
+  
+  <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" />
+
+  </head><body>
+  
+
+    <div class="document">
+      <div class="documentwrapper">
+        <div class="bodywrapper">
+          
+
+          <div class="body" role="main">
+            
+  <div class="section" id="guidelines-for-contributors">
+<h1>Guidelines for Contributors<a class="headerlink" href="#guidelines-for-contributors" title="Permalink to this headline">¶</a></h1>
+<p>Contributions to the project are welcome. Please feel free to submit pull requests
+using the standard <a class="reference external" href="https://guides.github.com/introduction/flow/">GitHub flow</a>.</p>
+<div class="section" id="version-control">
+<h2>Version Control<a class="headerlink" href="#version-control" title="Permalink to this headline">¶</a></h2>
+<p>The CFELPyUtils library is developed using the <a class="reference external" href="https://git-scm.com">Git</a> version
+control system.</p>
+<p>It uses the branching strategy proposed by Vincent Driessen and commonly known as
+<a class="reference external" href="https://nvie.com/posts/a-successful-git-branching-model">Gitflow</a>.</p>
+</div>
+<div class="section" id="python">
+<h2>Python<a class="headerlink" href="#python" title="Permalink to this headline">¶</a></h2>
+<p>The CFELPyUtils library is mainly developed in <a class="reference external" href="https://www.python.org">Python</a>.</p>
+<ul class="simple">
+<li>All code in the library must run with both version 2 and 3 of Python, except for
+facility-specific code that specifically requires one of the two versions (for
+example, Python 2 for the LCSL facility). The code must specifically support all the
+currently active versions of python:<ul>
+<li>Python 2<ul>
+<li>2.7</li>
+</ul>
+</li>
+<li>Python 3<ul>
+<li>3.5</li>
+<li>3.6</li>
+<li>3.7</li>
+</ul>
+</li>
+</ul>
+</li>
+<li>The <a class="reference external" href="https://python-future.org">python-future</a> project should be used to ensure
+that code contributed to the project is compatible with all the supported versions of
+Python.</li>
+<li>The Python coding style should follow for the most part the <a class="reference external" href="https://github.com/google/styleguide/blob/gh-pages/pyguide.md">Google Python Coding Style</a>.</li>
+<li>All docstrings should be written following the <a class="reference external" href="https://sphinxcontrib-napoleon.readthedocs.io/en/latest/example_google.html">Google Style </a>.</li>
+<li><a class="reference external" href="https://www.pylint.org">Pylint</a> should be run on the code before
+submission, as stated in the Google Python Coding Style Guide. In the root
+folder of the CFELPyUtils repository, contributors can find  a ‘pylintrc’ file with
+the settings that should be applied when linting the code. Please see <a class="reference external" href="http://pylint.pycqa.org/en/latest/user_guide/run.html?highlight=pylintrc">here</a> how to
+use the pylintrc file.</li>
+<li>The <a class="reference external" href="https://github.com/psf/black">Black</a> Python code formatter should be run on
+the code before submission.</li>
+</ul>
+</div>
+<div class="section" id="c-c">
+<h2>C/C++<a class="headerlink" href="#c-c" title="Permalink to this headline">¶</a></h2>
+<p>Some extension can, for performance reason, be written using the <a class="reference external" href="https://en.wikipedia.org/wiki/C%2B%2B">C++</a> or  <a class="reference external" href="https://en.wikipedia.org/wiki/C_(programming_language)">C</a> programming languages.</p>
+<ul class="simple">
+<li>All C++ code in OnDA must follow at most the C++98 ISO standard, and the code
+must compile on a Linux RHEL7/CentOS7 platform using the standard development stack
+that comes with these systems.</li>
+<li>Part of the C++11 standard can be used when writing extensions. However, it must be
+possible to compile the code using version 4.8 of the ‘gcc’ compiler (in order to
+create the Linux binary Python wheel).</li>
+<li>All C code in OnDA must follow at most the C99 ISO standard, and the code
+must compile on a Linux RHEL7/CentOS7 platform using the standard development stack
+that comes with these systems.</li>
+<li>The <a class="reference external" href="http://cython.org">Cython</a> project should be used to interface C/C++ code with
+Python.</li>
+</ul>
+</div>
+</div>
+
+
+          </div>
+          
+        </div>
+      </div>
+      <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
+        <div class="sphinxsidebarwrapper">
+  <h3><a href="index.html">Table of Contents</a></h3>
+  <ul>
+<li><a class="reference internal" href="#">Guidelines for Contributors</a><ul>
+<li><a class="reference internal" href="#version-control">Version Control</a></li>
+<li><a class="reference internal" href="#python">Python</a></li>
+<li><a class="reference internal" href="#c-c">C/C++</a></li>
+</ul>
+</li>
+</ul>
+
+<div id="searchbox" style="display: none" role="search">
+  <h3>Quick search</h3>
+    <div class="searchformwrapper">
+    <form class="search" action="search.html" method="get">
+      <input type="text" name="q" />
+      <input type="submit" value="Go" />
+      <input type="hidden" name="check_keywords" value="yes" />
+      <input type="hidden" name="area" value="default" />
+    </form>
+    </div>
+</div>
+<script type="text/javascript">$('#searchbox').show(0);</script>
+        </div>
+      </div>
+      <div class="clearer"></div>
+    </div>
+    <div class="footer">
+      &copy;2019, OnDA Team.
+      
+      |
+      Powered by <a href="http://sphinx-doc.org/">Sphinx 1.8.5</a>
+      &amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.12</a>
+      
+    </div>
+
+    
+
+    
+  </body>
+</html>
\ No newline at end of file
diff --git a/docs_src/_build/html/genindex.html b/docs_src/_build/html/genindex.html
index c2a43c1..19e0c10 100644
--- a/docs_src/_build/html/genindex.html
+++ b/docs_src/_build/html/genindex.html
@@ -147,6 +147,7 @@
 <h3>Navigation</h3>
 <ul>
 <li class="toctree-l1"><a class="reference internal" href="cfelpyutils.html">The cfelpyutils Package</a></li>
+<li class="toctree-l1"><a class="reference internal" href="documentation_guidelines_for_contributors.html">Guidelines for Contributors</a></li>
 </ul>
 
 <div class="relations">
diff --git a/docs_src/_build/html/index.html b/docs_src/_build/html/index.html
index ea167f9..6e91902 100644
--- a/docs_src/_build/html/index.html
+++ b/docs_src/_build/html/index.html
@@ -47,25 +47,47 @@ several internal and released CFEL software projects.</p>
 </div>
 <div class="section" id="installation">
 <h2>Installation<a class="headerlink" href="#installation" title="Permalink to this headline">¶</a></h2>
-<p>The CFELPyUtils library is available on PyPI and can be installed using the pip
-command:</p>
+<p>The CFELPyUtils library is available on the <a class="reference external" href="https://pypi.org/">Python Package Index</a> (PyPI). It can be installed using the ‘pip’ command:</p>
 <div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>python3 -m pip install cfelpyutils
 </pre></div>
 </div>
-<p>Or, for python2:</p>
-<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>python -m pip install cfelpyutils
+<p>Or, for Python 2:</p>
+<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>python2 -m pip install cfelpyutils
 </pre></div>
 </div>
-<p>It is also available as an Anaconda package in the ‘ondateam’ channel. It can be
-installed using the ‘conda’ command:</p>
+<p>It is also available as a package for the <a class="reference external" href="https://anaconda.org/">Anaconda</a> Python
+distribution. It can be installed using the ‘conda’ command:</p>
 <div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>conda install -c ondateam cfelpyutils
 </pre></div>
 </div>
+<p>The library can also be installed manually by checking out the repository and running:</p>
+<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>python setup.py install
+</pre></div>
+</div>
+</div>
+<div class="section" id="authors">
+<h2>Authors<a class="headerlink" href="#authors" title="Permalink to this headline">¶</a></h2>
+<p>The CFELPyUtils library is currently developed in the lab of
+<a class="reference external" href="https://cid.cfel.de/">Henry Chapman</a> at the Center For Free Electron Laser Science
+in Hamburg.</p>
+<p>Many people from different institutions worlwide contribute code, testing and support
+to the project:</p>
+<ul class="simple">
+<li><strong>Valerio Mariani</strong> (corresponding author: <a class="reference external" href="mailto:valerio&#46;mariani&#37;&#52;&#48;desy&#46;de">valerio<span>&#46;</span>mariani<span>&#64;</span>desy<span>&#46;</span>de</a>)</li>
+<li>Anton Barty</li>
+<li>Andrew Morgan</li>
+<li>Thomas A. White</li>
+</ul>
 </div>
 <div class="section" id="code-documentation">
 <h2>Code Documentation<a class="headerlink" href="#code-documentation" title="Permalink to this headline">¶</a></h2>
 <p>Code documentation for the CFELPyUtils library can be found <a class="reference internal" href="cfelpyutils.html"><span class="doc">here</span></a>.</p>
 </div>
+<div class="section" id="guidelines-for-contributors">
+<h2>Guidelines for Contributors<a class="headerlink" href="#guidelines-for-contributors" title="Permalink to this headline">¶</a></h2>
+<p>Contributions to the projects are welcome. Please see the guidelines for contributors
+<a class="reference internal" href="documentation_guidelines_for_contributors.html"><span class="doc">here</span></a>.</p>
+</div>
 </div>
 
 
@@ -80,7 +102,9 @@ installed using the ‘conda’ command:</p>
 <li><a class="reference internal" href="#">CFELPyUtils</a><ul>
 <li><a class="reference internal" href="#introduction">Introduction</a></li>
 <li><a class="reference internal" href="#installation">Installation</a></li>
+<li><a class="reference internal" href="#authors">Authors</a></li>
 <li><a class="reference internal" href="#code-documentation">Code Documentation</a></li>
+<li><a class="reference internal" href="#guidelines-for-contributors">Guidelines for Contributors</a></li>
 </ul>
 </li>
 </ul>
diff --git a/docs_src/_build/html/objects.inv b/docs_src/_build/html/objects.inv
index 34d07436a47e4c7ece1eb791d06dad404d86eca3..4a820253d6ecab3d4028bc2d93308bcfad0ecf29 100644
GIT binary patch
delta 382
zcmV-^0fGM21N;M!hkrapr0q(zUVE*!Y0@eoZ97M4;?ig#iAXX*pMF4SODNDzD>txz
zf4^gh=?;W0o#nzHU9K|4oB;HM=sCXF+e|$8O#F!AsGFmCX>9e5rxBs-55$E~gyB;x
z1(ku#%i3t?B(+>gw7hE7_c&s%bREhjyY5Me)}lOhi><<pSbs9n^^nyS52`ZlEMUzG
zoDps2q5p8>h~NiOWAEi9Nd^pCrv;2pzbl%YeIQJD0b<j(NCh#b*WV@fHr_(-dCer&
z=6qX?=3d-<7HTmIwVZ`|_!ku!%T`QL6fZB<7W&*nH;58Kzex&HJ8T3uuva`itll*L
z=+w3u;Sb!KhIikq9^ePJX@q_;#fBYJw&beVWgxA;@Tubr1eaj&PUV;?>A#Z71FM^h
zy!Y!#fGPo6cLY%il1m0fgBN5AqBb~2ef?Yg7@cKp7ahg=<@r4+zv{C`)!G;!>M}ki
ce2G7Q%QirAx(_RS%!@yKKB@nuUzORuw3?E;zW@LL

delta 343
zcmV-d0jU1`1JwhNhkt#FNZXZaz4kh7(xgp7+IEiI#4XVRiAb18pMDLYEula+t=z!=
z{r#4~W?PinRaQttv|HzjR}#qsVdwZVv$?zrndF`%i*AmU&e+2{okqm6KM<Ev0jH<f
z4pok}blzxN70e1%kkwVIzQ+-BrR!KW*>z6}T1$88mRdzQSbv!4ddTXE2UEGOEK)6M
znu9j;(7%PLK#Dzh?5(^C$dOZ9X^G?0?}{d89|==YqkL;yWD<<&^>>N=9dD^K;hA7<
zDK>}E+=^SyLak?^x>>0Ee^H6Ce9aXj$?D>4k&g_!L6QRdf*nrXuo2wAT?zEK`mOm#
zr>@Nie_(GKeo(J^fFEts2>oJ;4LhoA$vZ4W!Le>g5;iD3>lh8SFaB|HmbHc*#pCnS
pYwA9|_u{a&14QkTV<MCU|CVhKN|wbHAr{2%A)oqh`2(9_j3!PFt{ngX

diff --git a/docs_src/_build/html/py-modindex.html b/docs_src/_build/html/py-modindex.html
index 02294c3..b250e79 100644
--- a/docs_src/_build/html/py-modindex.html
+++ b/docs_src/_build/html/py-modindex.html
@@ -88,6 +88,7 @@
 <h3>Navigation</h3>
 <ul>
 <li class="toctree-l1"><a class="reference internal" href="cfelpyutils.html">The cfelpyutils Package</a></li>
+<li class="toctree-l1"><a class="reference internal" href="documentation_guidelines_for_contributors.html">Guidelines for Contributors</a></li>
 </ul>
 
 <div class="relations">
diff --git a/docs_src/_build/html/search.html b/docs_src/_build/html/search.html
index a117965..e7b25fc 100644
--- a/docs_src/_build/html/search.html
+++ b/docs_src/_build/html/search.html
@@ -83,6 +83,7 @@
 <h3>Navigation</h3>
 <ul>
 <li class="toctree-l1"><a class="reference internal" href="cfelpyutils.html">The cfelpyutils Package</a></li>
+<li class="toctree-l1"><a class="reference internal" href="documentation_guidelines_for_contributors.html">Guidelines for Contributors</a></li>
 </ul>
 
 <div class="relations">
diff --git a/docs_src/_build/html/searchindex.js b/docs_src/_build/html/searchindex.js
index be933e7..2f17d5d 100644
--- a/docs_src/_build/html/searchindex.js
+++ b/docs_src/_build/html/searchindex.js
@@ -1 +1 @@
-Search.setIndex({docnames:["cfelpyutils","cfelpyutils.crystfel_utils","cfelpyutils.geometry_utils","cfelpyutils.named_tuples","index"],envversion:{"sphinx.domains.c":1,"sphinx.domains.changeset":1,"sphinx.domains.cpp":1,"sphinx.domains.javascript":1,"sphinx.domains.math":2,"sphinx.domains.python":1,"sphinx.domains.rst":1,"sphinx.domains.std":1,"sphinx.ext.todo":1,"sphinx.ext.viewcode":1,sphinx:55},filenames:["cfelpyutils.rst","cfelpyutils.crystfel_utils.rst","cfelpyutils.geometry_utils.rst","cfelpyutils.named_tuples.rst","index.rst"],objects:{"":{cfelpyutils:[0,0,0,"-"]},"cfelpyutils.crystfel_utils":{load_crystfel_geometry:[1,1,1,""]},"cfelpyutils.geometry_utils":{apply_geometry_to_data:[2,1,1,""],compute_pix_maps:[2,1,1,""],compute_visualization_pix_maps:[2,1,1,""]},"cfelpyutils.named_tuples":{PixelMaps:[3,2,1,""]},"cfelpyutils.named_tuples.PixelMaps":{phi:[3,3,1,""],r:[3,3,1,""],x:[3,3,1,""],y:[3,3,1,""],z:[3,3,1,""]},cfelpyutils:{crystfel_utils:[1,0,0,"-"],geometry_utils:[2,0,0,"-"],named_tuples:[3,0,0,"-"]}},objnames:{"0":["py","module","Python module"],"1":["py","function","Python function"],"2":["py","class","Python class"],"3":["py","attribute","Python attribute"]},objtypes:{"0":"py:module","1":"py:function","2":"py:class","3":"py:attribute"},terms:{"41a8fa9819010":1,"class":[3,4],"float":[],"function":[1,2,4],"int":[],"new":[],"return":[1,2],For:[1,4],The:4,These:2,absolut:1,adjust:[],alia:3,all:2,along:2,also:4,amplitud:3,anaconda:4,angl:3,ani:[1,2],appli:[2,4],apply_geometry_to_data:2,around:2,arrai:2,assum:[],avail:[2,4],awai:2,axi:3,base:3,beam:2,been:[],between:3,big:2,bigger:2,can:[2,4],caus:2,ceil:2,center:[2,3,4],cfel:4,cfelpyutil:3,channel:4,code:1,collect:3,command:4,commit:1,complet:2,comput:2,compute_min_array_s:[],compute_pix_map:2,compute_visualization_pix_map:2,conda:4,connect:[],contain:[0,1,2,3,4],convent:2,convert:[],coordin:[2,3],corner:2,correspond:1,crystfel:[1,2],crystfel_util:0,current:[1,4],data:[2,4],describ:[],desi:[],detector:[2,4],develop:4,dict:[1,2],dictionari:[1,2],differ:2,direct:2,displai:2,displayedus:[],distanc:3,document:1,each:3,electron:4,enough:2,entri:2,field:3,fifth:[],file:[1,2],filenam:1,first:[],follow:2,format:1,found:4,fourth:[],free:4,from:[1,2,3],full:1,gener:2,geometri:[1,2,3,4],geometry_util:0,get_detector_geometry_2:1,hamburg:4,hand:2,has:[],here:4,http:[],imag:4,imageview:2,implement:[],inform:[1,2,3,4],input:2,instead:[],interact:2,intern:4,just:[],kei:1,languag:1,laser:4,layout:2,left:2,librari:[0,2,3,4],like:2,link:[],load:1,load_crystfel_geometri:[1,2],main:[0,2],make:[],man:1,mani:[],manipul:2,map:[2,3],match:1,matplotlib:2,minimum:2,mostli:4,name:[2,3],named_tupl:0,ndarrai:[2,3],need:2,none:2,note:2,number:3,numpi:[2,3],object:2,often:2,ondateam:4,ones:2,onli:2,org:[],orient:2,origin:2,other:2,packag:[1,4],page:1,paramet:[1,2,3],particularli:2,path:1,perform:4,phi:[2,3],physic:2,pip:4,pixel:[2,3],pixel_map:[],pixelmap:[2,3],point:2,pre:2,prepar:[],process:4,project:4,provid:[],pypi:4,pyqtgraph:2,python2:4,python3:4,python:[1,4],rai:4,read:[1,2,4],readi:[],refer:[2,3],reimplement:1,rel:1,relat:4,releas:4,relev:1,respect:[],restrict:2,result:[],right:2,same:2,scienc:4,see:1,set:2,sever:4,shape:2,should:2,size:2,softwar:[1,4],some:[1,2],sourc:[1,2],standard:[],store:[1,2,3],str:[1,2],stro:[],style:[],submodul:[],suppos:[],symmetr:2,sync:[],synchron:1,system:[2,3],take:2,task:4,than:2,thi:[1,2,3],third:[],three:[],through:3,throughout:3,top:2,toward:2,tupl:[2,3],twhite:[],two:[],type:[1,2],used:[2,3,4],uses:1,using:[2,4],util:[1,2,4],valu:[1,2],variou:4,vector:[],visual:2,which:[0,2],whole:0,widget:2,work:[],written:4,wth:[],www:[],zenith:2},titles:["The cfelpyutils Package","The crystfel_utils Module","The geometry_utils Module","The named_tuples Module","CFELPyUtils"],titleterms:{The:[0,1,2,3],cfelpyutil:[0,4],code:4,crystfel_util:1,document:4,geometry_util:2,instal:4,introduct:4,modul:[1,2,3],named_tupl:3,packag:0,thecfelpyutil:[]}})
\ No newline at end of file
+Search.setIndex({docnames:["cfelpyutils","cfelpyutils.crystfel_utils","cfelpyutils.geometry_utils","cfelpyutils.named_tuples","documentation_guidelines_for_contributors","index"],envversion:{"sphinx.domains.c":1,"sphinx.domains.changeset":1,"sphinx.domains.cpp":1,"sphinx.domains.javascript":1,"sphinx.domains.math":2,"sphinx.domains.python":1,"sphinx.domains.rst":1,"sphinx.domains.std":1,"sphinx.ext.todo":1,"sphinx.ext.viewcode":1,sphinx:55},filenames:["cfelpyutils.rst","cfelpyutils.crystfel_utils.rst","cfelpyutils.geometry_utils.rst","cfelpyutils.named_tuples.rst","documentation_guidelines_for_contributors.rst","index.rst"],objects:{"":{cfelpyutils:[0,0,0,"-"]},"cfelpyutils.crystfel_utils":{load_crystfel_geometry:[1,1,1,""]},"cfelpyutils.geometry_utils":{apply_geometry_to_data:[2,1,1,""],compute_pix_maps:[2,1,1,""],compute_visualization_pix_maps:[2,1,1,""]},"cfelpyutils.named_tuples":{PixelMaps:[3,2,1,""]},"cfelpyutils.named_tuples.PixelMaps":{phi:[3,3,1,""],r:[3,3,1,""],x:[3,3,1,""],y:[3,3,1,""],z:[3,3,1,""]},cfelpyutils:{crystfel_utils:[1,0,0,"-"],geometry_utils:[2,0,0,"-"],named_tuples:[3,0,0,"-"]}},objnames:{"0":["py","module","Python module"],"1":["py","function","Python function"],"2":["py","class","Python class"],"3":["py","attribute","Python attribute"]},objtypes:{"0":"py:module","1":"py:function","2":"py:class","3":"py:attribute"},terms:{"41a8fa9819010":1,"class":[3,5],"float":[],"function":[1,2,5],"int":[],"new":[],"return":[1,2],For:[1,5],The:[4,5],These:2,absolut:1,accord:2,activ:4,adjust:[],alia:3,all:[2,4],along:2,also:5,amplitud:3,anaconda:5,andrew:5,angl:3,ani:[1,2],anton:5,appli:[2,4,5],apply_geometry_to_data:2,around:2,arrai:2,assum:[],avail:[2,5],awai:2,axi:3,barti:5,base:3,beam:2,been:[],befor:4,between:3,big:2,bigger:2,binari:4,black:4,both:4,branch:4,c99:4,can:[2,4,5],caus:2,ceil:2,center:[2,3,5],centos7:4,cfel:5,cfelpyutil:[3,4],channel:[],chapman:5,check:5,code:[1,4],collect:3,com:[],come:4,command:5,commit:1,commonli:4,compat:4,compil:4,complet:2,comput:2,compute_min_array_s:[],compute_pix_map:2,compute_visualization_pix_map:2,conda:5,connect:[],contain:[0,1,2,3,5],contribut:[4,5],convent:2,convert:[],coordin:[2,3],corner:2,correspond:[1,5],creat:4,crystfel:[1,2],crystfel_util:0,current:[1,4,5],cython:4,data:[2,5],describ:[],desi:5,detector:[2,5],develop:[4,5],dict:[1,2],dictionari:[1,2],differ:[2,5],direct:2,displai:2,displayedus:[],distanc:3,distribut:5,doc:[],docstr:4,document:1,documentation_guidelines_for_contributor:[],driessen:4,each:3,electron:5,enough:2,ensur:4,entri:2,exampl:4,except:4,extens:4,facil:4,feel:4,field:3,fifth:[],file:[1,2,4],filenam:1,find:4,first:[],flow:4,folder:4,follow:4,fork:[],format:1,formatt:4,found:5,fourth:[],free:[4,5],from:[1,2,3,5],full:1,futur:4,gcc:4,gener:2,geometri:[1,2,3,5],geometry_util:0,get_detector_geometry_2:1,git:4,gitflow:4,github:4,googl:4,guid:4,hamburg:5,hand:2,has:[],henri:5,here:[4,5],how:4,howev:4,http:[],imag:5,imageview:2,implement:[],index:5,inform:[1,2,3,5],input:2,instead:[],institut:5,interact:2,interfac:4,intern:5,introduct:[],iso:4,just:[],kei:1,known:4,lab:5,languag:[1,4],laser:5,layout:2,lcsl:4,left:2,librari:[0,2,3,4,5],like:2,link:[],lint:4,linux:4,load:1,load_crystfel_geometri:[1,2],main:[0,2],mainli:4,make:[],man:1,mani:5,manipul:2,manual:5,map:[2,3],mariani:5,match:1,matplotlib:2,minimum:2,model:[],morgan:5,most:4,mostli:5,must:4,name:[2,3],named_tupl:0,ndarrai:[2,3],need:2,none:2,note:[],number:3,numpi:[2,3],nvie:[],object:2,often:2,onda:4,ondateam:5,one:4,ones:2,onli:2,order:4,org:[],orient:2,origin:2,other:2,out:5,packag:[1,5],page:1,paramet:[1,2,3],part:4,particularli:2,path:1,peopl:5,perform:[4,5],phi:[2,3],physic:2,pip:5,pixel:[2,3],pixel_map:[],pixelmap:[2,3],platform:4,pleas:[4,5],point:2,possibl:4,post:[],pre:2,prepar:[],process:5,program:4,project:[4,5],propos:4,provid:[],pull:4,pylint:4,pylintrc:4,pypi:5,pyqtgraph:2,python2:5,python3:5,python:[1,5],rai:5,read:[1,2,5],readi:[],reason:4,refer:[2,3],reimplement:1,rel:1,relat:5,releas:5,relev:1,repositori:[4,5],request:4,requir:4,respect:[],restrict:2,result:[],rhel7:4,right:2,root:4,run:[4,5],same:2,scienc:5,scm:[],see:[1,4,5],set:[2,4],setup:5,sever:5,shape:2,should:[2,4],size:2,softwar:[1,5],some:[1,2,4],sourc:[1,2],specif:4,stack:4,standard:4,state:4,store:[1,2,3],str:[1,2],strategi:4,stro:[],style:4,submiss:4,submit:4,submodul:[],success:[],support:[4,5],suppos:[],symmetr:2,sync:[],synchron:1,system:[2,3,4],take:2,task:5,test:5,than:2,thi:[1,2,3],third:[],thoma:5,three:[],through:[],throughout:3,top:2,toward:2,tupl:[2,3],twhite:[],two:4,type:[1,2],use:4,used:[2,3,4,5],uses:[1,4],using:[2,4,5],util:[1,2,5],valerio:5,valu:[1,2],variou:5,vector:[],vincent:4,visual:2,welcom:[4,5],wheel:4,when:4,which:[0,2],white:5,whole:0,widget:2,work:[],worlwid:5,write:4,written:[4,5],wth:[],www:[],zenith:2},titles:["The cfelpyutils Package","The crystfel_utils Module","The geometry_utils Module","The named_tuples Module","Guidelines for Contributors","CFELPyUtils"],titleterms:{The:[0,1,2,3],author:5,cfelpyutil:[0,5],code:5,contributor:[4,5],control:4,crystfel_util:1,document:5,geometry_util:2,guidelin:[4,5],instal:5,introduct:5,modul:[1,2,3],named_tupl:3,packag:0,python:4,thecfelpyutil:[],version:4}})
\ No newline at end of file
diff --git a/docs_src/conf.py b/docs_src/conf.py
index 135ef9b..da95e3c 100644
--- a/docs_src/conf.py
+++ b/docs_src/conf.py
@@ -101,6 +101,7 @@ html_static_path = ['_static']
 #
 html_sidebars = {
     "index": ["localtoc.html", "searchbox.html"],
+    "documentation*": ["localtoc.html", "searchbox.html"],
 }
 
 # -- Options for HTMLHelp output ---------------------------------------------
diff --git a/docs_src/documentation_guidelines_for_contributors.rst b/docs_src/documentation_guidelines_for_contributors.rst
new file mode 100644
index 0000000..bcdb3cb
--- /dev/null
+++ b/docs_src/documentation_guidelines_for_contributors.rst
@@ -0,0 +1,79 @@
+Guidelines for Contributors
+===========================
+
+Contributions to the project are welcome. Please feel free to submit pull requests
+using the standard `GitHub flow <https://guides.github.com/introduction/flow/>`_.
+
+
+Version Control
+^^^^^^^^^^^^^^^
+
+The CFELPyUtils library is developed using the `Git <https://git-scm.com>`_ version
+control system.
+
+It uses the branching strategy proposed by Vincent Driessen and commonly known as
+`Gitflow <https://nvie.com/posts/a-successful-git-branching-model>`_.
+
+
+Python
+^^^^^^
+
+The CFELPyUtils library is mainly developed in `Python  <https://www.python.org>`_.
+
+* All code in the library must run with both version 2 and 3 of Python, except for
+  facility-specific code that specifically requires one of the two versions (for
+  example, Python 2 for the LCSL facility). The code must specifically support all the
+  currently active versions of python:
+
+  * Python 2
+
+    * 2.7
+
+  * Python 3
+
+    * 3.5
+    * 3.6
+    * 3.7
+
+* The `python-future <https://python-future.org>`_ project should be used to ensure
+  that code contributed to the project is compatible with all the supported versions of
+  Python.
+
+* The Python coding style should follow for the most part the `Google Python \
+  Coding Style <https://github.com/google/styleguide/blob/gh-pages/pyguide.md>`_.
+
+* All docstrings should be written following the `Google Style \
+  <https://sphinxcontrib-napoleon.readthedocs.io/en/latest/example_google.html>`_.
+
+* `Pylint <https://www.pylint.org>`_ should be run on the code before
+  submission, as stated in the Google Python Coding Style Guide. In the root
+  folder of the CFELPyUtils repository, contributors can find  a 'pylintrc' file with
+  the settings that should be applied when linting the code. Please see `here
+  <http://pylint.pycqa.org/en/latest/user_guide/run.html?highlight=pylintrc>`_ how to
+  use the pylintrc file.
+  
+* The `Black <https://github.com/psf/black>`_ Python code formatter should be run on
+  the code before submission.
+
+
+C/C++
+^^^^^
+
+Some extension can, for performance reason, be written using the `C++
+<https://en.wikipedia.org/wiki/C%2B%2B>`_ or  `C
+<https://en.wikipedia.org/wiki/C_(programming_language)>`_ programming languages.
+
+* All C++ code in OnDA must follow at most the C++98 ISO standard, and the code
+  must compile on a Linux RHEL7/CentOS7 platform using the standard development stack
+  that comes with these systems.
+
+* Part of the C++11 standard can be used when writing extensions. However, it must be
+  possible to compile the code using version 4.8 of the 'gcc' compiler (in order to
+  create the Linux binary Python wheel).
+
+* All C code in OnDA must follow at most the C99 ISO standard, and the code
+  must compile on a Linux RHEL7/CentOS7 platform using the standard development stack
+  that comes with these systems.
+
+* The `Cython <http://cython.org>`_ project should be used to interface C/C++ code with
+  Python.
diff --git a/docs_src/index.rst b/docs_src/index.rst
index 929f41c..a3b5c6e 100644
--- a/docs_src/index.rst
+++ b/docs_src/index.rst
@@ -10,6 +10,7 @@ CFELPyUtils
    :hidden:
 
    cfelpyutils
+   documentation_guidelines_for_contributors
 
 
 Introduction
@@ -25,29 +26,57 @@ several internal and released CFEL software projects.
 Installation
 ------------
 
-The CFELPyUtils library is available on PyPI and can be installed using the pip
-command:
+The CFELPyUtils library is available on the `Python Package Index
+<https://pypi.org/>`_ (PyPI). It can be installed using the 'pip' command:
 
 .. code-block:: bash
 
     python3 -m pip install cfelpyutils
 
-Or, for python2:
+Or, for Python 2:
 
 .. code-block:: bash
 
-    python -m pip install cfelpyutils
+    python2 -m pip install cfelpyutils
 
-
-It is also available as an Anaconda package in the 'ondateam' channel. It can be
-installed using the 'conda' command:
+It is also available as a package for the `Anaconda <https://anaconda.org/>`_ Python
+distribution. It can be installed using the 'conda' command:
 
 .. code-block:: bash
 
     conda install -c ondateam cfelpyutils
 
+The library can also be installed manually by checking out the repository and running:
+
+.. code-block:: bash
+
+    python setup.py install 
+
+
+Authors
+-------
+
+The CFELPyUtils library is currently developed in the lab of 
+`Henry Chapman <https://cid.cfel.de/>`_ at the Center For Free Electron Laser Science
+in Hamburg. 
+
+Many people from different institutions worlwide contribute code, testing and support
+to the project:
+
+* **Valerio Mariani** (corresponding author: valerio.mariani@desy.de)
+* Anton Barty
+* Andrew Morgan
+* Thomas A. White
+
 
 Code Documentation
 ------------------
 
-Code documentation for the CFELPyUtils library can be found :doc:`here <cfelpyutils>`.
\ No newline at end of file
+Code documentation for the CFELPyUtils library can be found :doc:`here <cfelpyutils>`.
+
+
+Guidelines for Contributors
+---------------------------
+
+Contributions to the projects are welcome. Please see the guidelines for contributors
+:doc:`here <documentation_guidelines_for_contributors>`.
\ No newline at end of file
-- 
GitLab