diff --git a/opm/core/transport/reorder/tarjan.h b/opm/core/transport/reorder/tarjan.h
index f331aaed..0492ce9c 100644
--- a/opm/core/transport/reorder/tarjan.h
+++ b/opm/core/transport/reorder/tarjan.h
@@ -20,19 +20,66 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
*/
+/**
+ * \file
+ *
+ * Simple implementation of of Tarjan's algorithm for computing the
+ * strongly connected components of a directed graph, \f$G(V,E)\f$.
+ * Run-time complexity is \f$O(|V| + |E|)\f$.
+ *
+ * The implementation is based on
+ * "http://en.wikipedia.org/wiki/Tarjan's_strongly_connected_components_algorithm".
+ */
+
#ifndef TARJAN_H_INCLUDED
#define TARJAN_H_INCLUDED
+
#ifdef __cplusplus
extern "C" {
-#endif
+#endif /* __cplusplus */
- void
- tarjan (int nv, const int *ia, const int *ja, int *vert, int *comp,
- int *ncomp, int *work);
+/**
+ * Compute the strongly connected components of a directed graph,
+ * \f$G(V,E)\f$.
+ *
+ * The components are returned in reverse topological sorted sequence.
+ *
+ * \param[in] nv Number of graph vertices.
+ *
+ * \param[in] ia
+ * \param[in] ja adjacency matrix for directed graph in compressed sparse row
+ * format: vertex i has directed edges to vertices ja[ia[i]],
+ * ..., ja[ia[i+1]-1].
+ *
+ * \param[out] vert Permutation of vertices into topologically sorted
+ * sequence of strong components (i.e., loops).
+ * Array of size nv
.
+ *
+ * \param[out] comp Pointers to start of each strongly connected
+ * component in vert, the i'th component has vertices
+ * vert[comp[i]], ..., vert[comp[i+1] - 1]. Array of
+ * size nv + 1
.
+ *
+ * \param[out] ncomp Number of strong components. Pointer to a single
+ * int
.
+ *
+ * \param[out] work Pointer to a scratch array represented as a block
+ * of memory capable of holding 3 * nv
+ * elements of type int
.
+ */
+void
+tarjan(int nv ,
+ const int *ia ,
+ const int *ja ,
+ int *vert ,
+ int *comp ,
+ int *ncomp,
+ int *work );
#ifdef __cplusplus
}
-#endif
+#endif /* __cplusplus */
+
#endif /* TARJAN_H_INCLUDED */
/* Local Variables: */