diff --git a/docs/config/gen_content.sh.in b/docs/config/gen_content.sh.in
index aebd830f0d2267b225a1b51c326d4d678504516a..f36d860b4ea4a1c3f7f3e55ae37abd102a5682a9 100755
--- a/docs/config/gen_content.sh.in
+++ b/docs/config/gen_content.sh.in
@@ -9,7 +9,7 @@ mkdir -p @SPHINX_OUTPUT@/html
 
 # Doxygen
 mkdir -p @DOXYGEN_OUTPUT@
-@DOXYGEN_BIN@ @DOXYGEN_CONFIG@ > doxygen.log
+@DOXYGEN_BIN@ @DOXYGEN_CONFIG@ > @CMAKE_CURRENT_BINARY_DIR@/doxygen.log
 
 ## SPHINX - DOC
 ## Documentation files
@@ -31,4 +31,4 @@ mkdir -p @SPHINX_TMP@/apidoc
 ## Fix the generated files : add path in Sphinx's conf.py seems not enough to find these hysop modules
 find @SPHINX_TMP@/apidoc -name '*.rst' -exec sed -i'' -E 's/(.. automodule:: )/\1hysop./g' '{}' \;
 ## Doc pages build
-@SPHINX_BIN@ -T -w sphinx.log -b ${doc_type} -d @CMAKE_BINARY_DIR@/doctrees -c @SPHINX_CONFIG@  @SPHINX_TMP@  @SPHINX_OUTPUT@/${doc_type} > /dev/null 2>&1
+@SPHINX_BIN@ -T -w @CMAKE_CURRENT_BINARY_DIR@/sphinx.log -b ${doc_type} -d @CMAKE_BINARY_DIR@/doctrees -c @SPHINX_CONFIG@  @SPHINX_TMP@  @SPHINX_OUTPUT@/${doc_type} > /dev/null 2>&1
diff --git a/docs/config/hysop.doxyfile.in b/docs/config/hysop.doxyfile.in
index fe31215938582e824ffec963fb9c4c494d1219f5..99f570920194231b8ac7989366bbd56bc8624ea6 100644
--- a/docs/config/hysop.doxyfile.in
+++ b/docs/config/hysop.doxyfile.in
@@ -1818,7 +1818,7 @@ COMPACT_LATEX          = NO
 # The default value is: a4.
 # This tag requires that the tag GENERATE_LATEX is set to YES.
 
-PAPER_TYPE             = a4wide
+PAPER_TYPE             = a4
 
 # The EXTRA_PACKAGES tag can be used to specify one or more LaTeX package names
 # that should be included in the LaTeX output. The package can be specified just
diff --git a/docs/config/meson.build b/docs/config/meson.build
index 617cf08228f365fd54d5668b6c0c85fe34c65edc..ccd2ab9c6f18bb4e0a1c774a05d95fc35c30c793 100644
--- a/docs/config/meson.build
+++ b/docs/config/meson.build
@@ -14,7 +14,7 @@ conf_doc_data = configuration_data({
   'DOXYGEN_OUTPUT' : doc_build_dir+'/build/html/doxygen',
   'DOXYGEN_BIN': doxygen.full_path(),
   'DOXY_QUIET': '',
-  'DOXY_WARNINGS' : '',
+  'DOXY_WARNINGS' : 'NO',
   'SPHINX_API_BIN': sphinx_api.full_path(),
   'SPHINX_BIN': sphinx.full_path(),
   'SPHINX_OUTPUT': doc_build_dir+'/build',
@@ -29,7 +29,7 @@ conf_doc_data = configuration_data({
   'GENERATE_XML': 'YES',
   'BIBTEXFILE': doc_bibtexfile,
   'HYSOP_COPYRIGHT': copyright.stdout().strip().replace('${years}',years.stdout().strip()),
-  'HYSOP_BUILD_PYTHONPATH':meson_build_dir+'/hysop',
+  'HYSOP_BUILD_PYTHONPATH':meson_build_dir,
 })
 
 # == pages generator ==
diff --git a/docs/hysop-doc b/docs/hysop-doc
index 33bfcc55c18472417abab72db5738a189636f6e8..3318fc63f69a0c744ca959c0286fbf42dd73dfc3 160000
--- a/docs/hysop-doc
+++ b/docs/hysop-doc
@@ -1 +1 @@
-Subproject commit 33bfcc55c18472417abab72db5738a189636f6e8
+Subproject commit 3318fc63f69a0c744ca959c0286fbf42dd73dfc3
diff --git a/hysop/operator/gradient.py b/hysop/operator/gradient.py
index dd32ceaf9d52e0607c9b8ebd84de81b59a4b8a5a..7a004a8807c888a311020578f181c9d151eac99e 100644
--- a/hysop/operator/gradient.py
+++ b/hysop/operator/gradient.py
@@ -117,13 +117,13 @@ class Gradient(MultiSpaceDerivatives):
         Example: if F is a VectorField of m components (F0, ..., Fm) in a domain of dimension n,
                  this operator will compute gradF[i,j] = dF[i]/dx[j].
 
-                    ================================
-                               dF0/dx0 ... dF0/dxn
-                                  .     .     .
-                    grad(F) =     .     .     .
-                                  .     .     .
-                               dFm/dx0 ... dFm/dxn
-                    ================================
+
+                               ( dF0/dx0 ... dF0/dxn )
+                               (    .     .     .    )
+                    grad(F) =  (    .     .     .    )
+                               (    .     .     .    )
+                               ( dFm/dx0 ... dFm/dxn )
+
 
                     where F is an input field
                           gradF is an output field != F
@@ -285,14 +285,14 @@ class MinMaxGradientStatistics(Gradient):
         Derivatives can be computed with respect to specific directions and not necessarily in
         all directions. To restrict the number of components, take a tensor view on F (and gradF).
 
-        ----------------------------------------------
+
         Let k = idx + (j,)
         gradF[k] = dF[idx]/dXd
-        ----------------------------------------------
+
         Fmax[k]  = Smin * min( dF[idx]/dXd )
         Fmin[k]  = Smax * max( dF[idx]/dXd )
         Finf[k]  = Sinf * max( |Fmin[k]|, |Fmax[k]| )
-        ----------------------------------------------
+
         where F is an input field,
               nb_components = F.nb_components = np.prod(F.shape)
               nb_directions = min( F.dim, len(directions))