From cb4c84d758ad91a5a6d19ef3b982fdc2cbd65390 Mon Sep 17 00:00:00 2001
From: Mihai Baltac <mbaltac@NB-ABorbath.pentlandfirth.internal>
Date: Mon, 12 Feb 2018 12:19:24 +0100
Subject: [PATCH] added code documenatation separated in concepts

---
 docs/source/code.rst                  | 22 ++++++++++++++++++++
 docs/source/concepts/field.rst        | 17 +++++++++++++++
 docs/source/concepts/minimization.rst | 23 ++++++++++++++++++++
 docs/source/concepts/operators.rst    | 30 +++++++++++++++++++++++++++
 docs/source/concepts/spaces.rst       | 25 ++++++++++++++++++++++
 docs/source/conf.py                   |  2 +-
 docs/source/index.rst                 |  3 ++-
 7 files changed, 120 insertions(+), 2 deletions(-)
 create mode 100644 docs/source/code.rst
 create mode 100644 docs/source/concepts/field.rst
 create mode 100644 docs/source/concepts/minimization.rst
 create mode 100644 docs/source/concepts/operators.rst
 create mode 100644 docs/source/concepts/spaces.rst

diff --git a/docs/source/code.rst b/docs/source/code.rst
new file mode 100644
index 000000000..5d661f6b8
--- /dev/null
+++ b/docs/source/code.rst
@@ -0,0 +1,22 @@
+NIFTy Code
+==========
+
+The NIFTy code is divided in the concepts Spaces, Fields, Operators and Minimization
+
+
+.. toctree::
+   :maxdepth: 1
+   :caption: Concepts
+   :glob:
+
+   Spaces         <concepts/spaces>
+   Fields         <concepts/field>
+   Operators      <concepts/operators>
+   Minimization   <concepts/minimization>
+
+
+
+
+
+
+
diff --git a/docs/source/concepts/field.rst b/docs/source/concepts/field.rst
new file mode 100644
index 000000000..079576620
--- /dev/null
+++ b/docs/source/concepts/field.rst
@@ -0,0 +1,17 @@
+Fields
+======
+
+Description of Fields
+
+.. toctree::
+    :caption: Types of Fields
+
+    Field                           <../mod/nifty4.field>
+
+
+
+
+
+
+
+
diff --git a/docs/source/concepts/minimization.rst b/docs/source/concepts/minimization.rst
new file mode 100644
index 000000000..fddbed059
--- /dev/null
+++ b/docs/source/concepts/minimization.rst
@@ -0,0 +1,23 @@
+Minimization
+============
+
+Description of Minimization
+
+.. toctree::
+    :caption: Minimization Concepts
+
+    Conjugate Gradient                      <../mod/nifty4.minimization.conjugate_gradient>
+    Descent Minimizer                       <../mod/nifty4.minimization.descent_minimizer>
+    Energy                                  <../mod/nifty4.minimization.energy>
+    Iteration Controller                    <../mod/nifty4.minimization.iteration_controller>
+    Line Energy                             <../mod/nifty4.minimization.line_energy>
+    Line Search                             <../mod/nifty4.minimization.line_search>
+    Line Search Strong Wolfe                <../mod/nifty4.minimization.line_search_strong_wolfe>
+    Minimizer                               <../mod/nifty4.minimization.minimizer>
+    Nonlinear Cg                            <../mod/nifty4.minimization.nonlinear_cg>
+    Quadratic Energy                        <../mod/nifty4.minimization.quadratic_energy>
+    Relaxed Newton                          <../mod/nifty4.minimization.relaxed_newton>
+    Scipy Minimizer                         <../mod/nifty4.minimization.scipy_minimizer>
+    Steepest Descent                        <../mod/nifty4.minimization.steepest_descent>
+    VL BFGS                                 <../mod/nifty4.minimization.vl_bfgs>
+    Gradient Norm Controller                <../mod/nifty4.minimization.gradient_norm_controller>
diff --git a/docs/source/concepts/operators.rst b/docs/source/concepts/operators.rst
new file mode 100644
index 000000000..492b90b29
--- /dev/null
+++ b/docs/source/concepts/operators.rst
@@ -0,0 +1,30 @@
+Operators
+=========
+
+Description of Operators
+
+.. toctree::
+    :caption: Types of Operators
+
+    Adjoint                             <../mod/nifty4.operators.adjoint_operator>
+    Chain                               <../mod/nifty4.operators.chain_operator>
+    Diagonal                            <../mod/nifty4.operators.diagonal_operator>
+    DOF Projection                      <../mod/nifty4.operators.dof_projection_operator>
+    Direct Smoothing                    <../mod/nifty4.operators.direct_smoothing_operator>
+    Endomorphic                         <../mod/nifty4.operators.endomorphic_operator>
+    FFT                                 <../mod/nifty4.operators.fft_operator>
+    FFT Smoothing                       <../mod/nifty4.operators.fft_smoothing_operator>
+    Geometry Remover                    <../mod/nifty4.operators.geometry_remover>
+    Harmonic Transform                  <../mod/nifty4.operators.harmonic_transform_operator>
+    Inverse                             <../mod/nifty4.operators.inverse_operator>
+    Inversion Enabler                   <../mod/nifty4.operators.inversion_enabler>
+    Laplace                             <../mod/nifty4.operators.linear_operator>
+    Linear                              <../mod/nifty4.operators.power_projection_operator>
+    Power Projection                    <../mod/nifty4.operators.power_projection_operator>
+    Scaling                             <../mod/nifty4.operators.smoothness_operator>
+    Smoothness                          <../mod/nifty4.operators.smoothness_operator>
+    Sum                                 <../mod/nifty4.operators.sum_operator>
+
+
+
+
diff --git a/docs/source/concepts/spaces.rst b/docs/source/concepts/spaces.rst
new file mode 100644
index 000000000..bf08046ae
--- /dev/null
+++ b/docs/source/concepts/spaces.rst
@@ -0,0 +1,25 @@
+Spaces
+======
+
+Description of Spaces
+
+.. toctree::
+    :caption: Types of Spaces
+
+    DOF                             <../mod/nifty4.spaces.dof_space>
+    Gauss-Legendre                  <../mod/nifty4.spaces.gl_space>
+    HEALPix                         <../mod/nifty4.spaces.gl_space>
+    Power                           <../mod/nifty4.spaces.power_space>
+    LM                              <../mod/nifty4.spaces.lm_space>
+    RG                              <../mod/nifty4.spaces.rg_space>
+    Domain                          <../mod/nifty4.spaces.domain>
+    Structured Domain               <../mod/nifty4.spaces.structured_domain>
+    Unstrcutured Domain             <../mod/nifty4.spaces.unstructured_domain>
+
+
+
+
+
+
+
+
diff --git a/docs/source/conf.py b/docs/source/conf.py
index 694a03924..f34ae42a7 100644
--- a/docs/source/conf.py
+++ b/docs/source/conf.py
@@ -21,7 +21,7 @@ import sphinx_rtd_theme
 # If extensions (or modules to document with autodoc) are in another directory,
 # add these directories to sys.path here. If the directory is relative to the
 # documentation root, use os.path.abspath to make it absolute, like shown here.
-#sys.path.insert(0, os.path.abspath('.'))
+sys.path.insert(0, os.path.abspath('../../nifty4/'))
 
 napoleon_google_docstring = False
 napoleon_numpy_docstring = True
diff --git a/docs/source/index.rst b/docs/source/index.rst
index 34ee9486c..4ee1b28b9 100644
--- a/docs/source/index.rst
+++ b/docs/source/index.rst
@@ -24,10 +24,11 @@ Contents
 ........
 
 .. toctree::
-   :maxdepth: 1
+   :maxdepth: 2
 
    ift
    start
+   code
 
 Indices and tables
 ..................
-- 
GitLab