diff --git a/csm_manual.html b/csm_manual.html
index c96d705f878457bbcffabd7ee34ffa6483c2efcb..77bd28b6f993c94e8d07672aef4d435799e25b48 100644
--- a/csm_manual.html
+++ b/csm_manual.html
@@ -637,13 +637,39 @@ using namespace CSM;</code></pre>
 <li><code>params-&gt;laser_sens</code>: pointer of a structure of type <code>laser_data</code> representing the second scan.</li>
 
 <li><code>params-&gt;first_guess</code>: first guess (x,y,theta).</li>
+
+<li><code>use_point_to_line_distance</code>: 1 for PLICP, 0 for ICP.</li>
+
+<li><code>use_corr_tricks</code>: use the tricks described in the PLICP paper.</li>
 </ul>
 
-<p>Parameters that influence stopping:</p>
+<p>Parameters that influence stopping and restarting:</p>
 
 <ul>
 <li><code>max_iterations</code>: maximum number of iterations</li>
 
 <li><code>epsilon_xy</code>, <code>epsilon_theta</code>: stop if change below these thresholds</li>
+
+<li><code>restart*</code>: whether to add some noise and restart if the match is not satisfactory. Useful for getting out of local minima but expensive.</li>
+</ul>
+
+<p>Parameters that influence correspondence establishment:</p>
+
+<ul>
+<li><code>max_angular_correction_deg</code>, <code>max_linear_correction</code>.</li>
+
+<li><code>max_correspondence_dist</code></li>
 </ul>
+
+<p>Parameters that influence correspondence pruning:</p>
+
+<ul>
+<li><code>outliers_maxPerc</code></li>
+
+<li><code>outliers_adaptive_*</code></li>
+
+<li><code>outliers_remove_doubles</code></li>
+</ul>
+
+<p>See the file <code>&lt;csm/algos.h&gt;</code> for a description of the above parameters, and the other minor parameters.</p>
 </body></html>
diff --git a/csm_manual.pdf b/csm_manual.pdf
index 1a1dec32bb487f1b7c835433dfdfc41c5aafe70c..9701afe5ea5362037d70972280b02fab7b9692db 100644
Binary files a/csm_manual.pdf and b/csm_manual.pdf differ
diff --git a/docs/embedding.txt b/docs/embedding.txt
index d33291678ab1ff06dbfe1604e252a17f6ae87bbf..b647c28f3a5e5205e8562aca469b1c370adae7e0 100644
--- a/docs/embedding.txt
+++ b/docs/embedding.txt
@@ -100,13 +100,30 @@ We now briefly discuss the main parameters.
 * ``params->laser_sens``:  pointer of a structure of type ``laser_data`` representing
    the second scan.
 * ``params->first_guess``: first guess (x,y,theta).
+* ``use_point_to_line_distance``: 1 for PLICP, 0 for ICP.
+* ``use_corr_tricks``: use the tricks described in the PLICP paper.
 
-
-Parameters that influence stopping:
+Parameters that influence stopping and restarting:
 
 * ``max_iterations``: maximum number of iterations
 * ``epsilon_xy``, ``epsilon_theta``: stop if change below these thresholds
+* ``restart*``: whether to add some noise and restart if the match
+  is not satisfactory. Useful for getting out of local minima but
+  expensive.
+
+Parameters that influence correspondence establishment:
+
+* ``max_angular_correction_deg``, ``max_linear_correction``.
+* ``max_correspondence_dist``
+
+Parameters that influence correspondence pruning:
+
+* ``outliers_maxPerc``
+* ``outliers_adaptive_*``
+* ``outliers_remove_doubles``
 
+See the file ``<csm/algos.h>`` for a description of the above parameters,
+and the other minor parameters.
 
 
 
diff --git a/sm/csm/algos.h b/sm/csm/algos.h
index 59a804239770e59b70e2dbc98e717c4f92d482c0..da28d1466036028d3019810161308bbba82113bb 100644
--- a/sm/csm/algos.h
+++ b/sm/csm/algos.h
@@ -9,7 +9,6 @@
 #include "laser_data.h"
 
 
-
 struct sm_params {
 	/** First scan ("ref"erence scan) */
 	LDP laser_ref;
@@ -111,7 +110,6 @@ struct sm_params {
 	/** Noise in the scan */
 	double sigma;
 
-
 	/** mark as invalid ( = don't use ) rays outside of this interval */
 	double min_reading, max_reading;