diff --git a/dumux/porousmediumflow/3p/indices.hh b/dumux/porousmediumflow/3p/indices.hh
index a645856f6188f1a345fa9d40ac45e0c6156ea8db..73281732b0df857f7c5c037e8efd3cbe1413fdbc 100644
--- a/dumux/porousmediumflow/3p/indices.hh
+++ b/dumux/porousmediumflow/3p/indices.hh
@@ -18,7 +18,8 @@
  *****************************************************************************/
 /*!
  * \file
- * \brief Defines the indices required for the two-phase model.
+ * \ingroup ThreePModel
+ * \brief Defines the indices for the three-phase model.
  */
 #ifndef DUMUX_3P_INDICES_HH
 #define DUMUX_3P_INDICES_HH
@@ -30,10 +31,8 @@ namespace Dumux
 
 /*!
  * \ingroup ThreePModel
- * \ingroup ImplicitIndices
  * \brief The common indices for the isothermal three-phase model.
  *
- * \tparam formulation The formulation, only pgSwSn is available.
  * \tparam PVOffset The first index in a primary variable vector.
  */
 template <class TypeTag, int PVOffset = 0>
@@ -49,15 +48,15 @@ public:
 
 
     // Primary variable indices
-    static const int pressureIdx = PVOffset + 0; //!< Index for gas phase pressure in a solution vector
-    static const int swIdx = PVOffset + 1; //!< Index of water (more wetting than the other liquid) saturation
-    static const int snIdx = PVOffset + 2; //!< Index of (e.g.) NAPL saturation
+    static const int pressureIdx = PVOffset + 0; //!< index for gas phase pressure in a solution vector
+    static const int swIdx = PVOffset + 1; //!< index of water (more wetting than the other liquid) saturation
+    static const int snIdx = PVOffset + 2; //!< index of (e.g.) NAPL saturation
 
 
     // equation indices
-    static const int conti0EqIdx = PVOffset    + wPhaseIdx; //!< Index of the mass conservation equation for the water component
-    static const int conti1EqIdx = conti0EqIdx + nPhaseIdx; //!< Index of the mass conservation equation for the contaminant component
-    static const int conti2EqIdx = conti0EqIdx + gPhaseIdx; //!< Index of the mass conservation equation for the air component
+    static const int conti0EqIdx = PVOffset    + wPhaseIdx; //!< index of the mass conservation equation for the water component
+    static const int conti1EqIdx = conti0EqIdx + nPhaseIdx; //!< index of the mass conservation equation for the contaminant component
+    static const int conti2EqIdx = conti0EqIdx + gPhaseIdx; //!< index of the mass conservation equation for the air component
 
     static const int contiWEqIdx = conti0EqIdx + wPhaseIdx; //!< index of the mass conservation equation for the water component
     static const int contiNEqIdx = conti0EqIdx + nPhaseIdx; //!< index of the mass conservation equation for the contaminant component
diff --git a/dumux/porousmediumflow/3p/model.hh b/dumux/porousmediumflow/3p/model.hh
index a11d26a9b334b4cfa439b9686bfd754ab1cbdf46..734fbc6ab1e02a1b469c7fdca6390413eec8a18e 100644
--- a/dumux/porousmediumflow/3p/model.hh
+++ b/dumux/porousmediumflow/3p/model.hh
@@ -16,29 +16,29 @@
  *   You should have received a copy of the GNU General Public License       *
  *   along with this program.  If not, see <http://www.gnu.org/licenses/>.   *
  *****************************************************************************/
-/*!
- * \file
- *
- * \brief Adaption of the fully implicit scheme to the three-phase flow model.
- *
- * The model is designed for simulating three fluid phases with water, gas, and
- * a liquid contaminant (NAPL - non-aqueous phase liquid)
- */
-#ifndef DUMUX_3P_MODEL_HH
-#define DUMUX_3P_MODEL_HH
-
 /*!
  * \file
  * \ingroup ThreePModel
  * \brief Adaption of the fully implicit scheme to the three-phase flow model.
  *
  * This model implements three-phase flow of three fluid phases
- * \f$\alpha \in \{ water, gas, NAPL \}\f$
+ * \f$\alpha \in \{ water, gas, NAPL \}\f$.
  * The standard multiphase Darcy
- * approach is used as the equation for the conservation of momentum.
+ * approach is used as the equation for the conservation of momentum, i.e.
+ \f[
+ v_\alpha = - \frac{k_{r\alpha}}{\mu_\alpha} \textbf{K}
+ \left(\textbf{grad}\, p_\alpha - \varrho_{\alpha} {\textbf g} \right)
+ \f]
  *
- * By inserting this into the equations for the conservation of the
- * components, the well-known multiphase flow equation is obtained.
+ * By inserting this into the equations for the conservation
+ * of the phase mass, one gets
+ \f[
+ \phi \frac{\partial \varrho_\alpha S_\alpha}{\partial t}
+ -
+ \text{div} \left\{
+ \varrho_\alpha \frac{k_{r\alpha}}{\mu_\alpha} \mathbf{K} \left(\textbf{grad}\, p_\alpha - \varrho_{\alpha} \mbox{\bf g} \right)
+ \right\} - q_\alpha = 0 \;.
+ \f]
  *
  * All equations are discretized using a vertex-centered finite volume (box)
  * or cell-centered finite volume scheme as spatial
@@ -53,6 +53,8 @@
  * The used primary variables are gas phase pressure \f$p_g\f$,
  * water saturation \f$S_w\f$ and NAPL saturation \f$S_n\f$.
  */
+#ifndef DUMUX_3P_MODEL_HH
+#define DUMUX_3P_MODEL_HH
 
 #include <dumux/common/properties.hh>
 
@@ -74,7 +76,9 @@ namespace Properties {
 //////////////////////////////////////////////////////////////////
 // Type tags
 //////////////////////////////////////////////////////////////////
+//! The type tags for the isothermal three-phase model
 NEW_TYPE_TAG(ThreeP, INHERITS_FROM(PorousMediumFlow));
+//! The type tags for the non-isothermal three-phase model
 NEW_TYPE_TAG(ThreePNI, INHERITS_FROM(ThreeP, NonIsothermal));
 
 //////////////////////////////////////////////////////////////////
@@ -97,6 +101,12 @@ SET_PROP(ThreeP, NumPhases)
                   "Only fluid systems with 3 phases are supported by the 3p model!");
 };
 
+/*!
+ * \brief Set the property for the number of components.
+ *
+ *  We just forward the number from the fluid system and use an static
+ *  assert to make sure it is 3.
+ */
 SET_PROP(ThreeP, NumComponents)
 {
  private:
@@ -108,7 +118,8 @@ SET_PROP(ThreeP, NumComponents)
                   "Only fluid systems with 3 components are supported by the 3p model!");
 };
 
-SET_INT_PROP(ThreeP, NumEq, 3); //!< set the number of equations to 3
+//! Set the number of equations to 3
+SET_INT_PROP(ThreeP, NumEq, 3);
 
 //! The local residual function of the conservation equations
 SET_TYPE_PROP(ThreeP, LocalResidual, ImmiscibleLocalResidual<TypeTag>);
@@ -116,13 +127,13 @@ SET_TYPE_PROP(ThreeP, LocalResidual, ImmiscibleLocalResidual<TypeTag>);
 //! Enable advection
 SET_BOOL_PROP(ThreeP, EnableAdvection, true);
 
-//! disable molecular diffusion for the 3p model
+//! Disable molecular diffusion for the 3p model
 SET_BOOL_PROP(ThreeP, EnableMolecularDiffusion, false);
 
 //! Isothermal model by default
 SET_BOOL_PROP(ThreeP, EnableEnergyBalance, false);
 
-//! the VolumeVariables property
+//! The VolumeVariables property
 SET_TYPE_PROP(ThreeP, VolumeVariables, ThreePVolumeVariables<TypeTag>);
 
 //! The indices required by the isothermal 3p model
@@ -132,6 +143,13 @@ SET_TYPE_PROP(ThreeP, Indices, ThreePIndices<TypeTag,/*PVOffset=*/0>);
 //! Use FVSpatialParams by default.
 SET_TYPE_PROP(ThreeP, SpatialParams, FVSpatialParams<TypeTag>);
 
+/*!
+ * \brief The fluid state which is used by the volume variables to
+ *        store the thermodynamic state.
+ *
+ *  The fluid state should be chosen appropriately for the model ((non-)isothermal, equilibrium, ...).
+ *  This can be done in the problem.
+ */
 SET_PROP(ThreeP, FluidState)
 {
 private:
@@ -144,7 +162,6 @@ public:
 //! Set the vtk output fields specific to the ThreeP model
 SET_TYPE_PROP(ThreeP, VtkOutputFields, ThreePVtkOutputFields<TypeTag>);
 
-
 /////////////////////////////////////////////////
 // Properties for the non-isothermal 3p model
 /////////////////////////////////////////////////
@@ -163,19 +180,19 @@ public:
 // Property values for isothermal model required for the general non-isothermal model
 //////////////////////////////////////////////////////////////////
 
-//set isothermal VolumeVariables
+//! Set isothermal VolumeVariables
 SET_TYPE_PROP(ThreePNI, IsothermalVolumeVariables, ThreePVolumeVariables<TypeTag>);
 
-//set isothermal LocalResidual
+//! Set isothermal LocalResidual
 SET_TYPE_PROP(ThreePNI, IsothermalLocalResidual, ImmiscibleLocalResidual<TypeTag>);
 
-//set isothermal output fields
+//! Set isothermal output fields
 SET_TYPE_PROP(ThreePNI, IsothermalVtkOutputFields, ThreePVtkOutputFields<TypeTag>);
 
-//set isothermal Indices
+//! Set isothermal Indices
 SET_TYPE_PROP(ThreePNI, IsothermalIndices, ThreePIndices<TypeTag,/*PVOffset=*/0>);
 
-//set isothermal NumEq
+//! Set isothermal NumEq
 SET_INT_PROP(ThreePNI, IsothermalNumEq, 3);
 
 } // end namespace Properties
diff --git a/dumux/porousmediumflow/3p/volumevariables.hh b/dumux/porousmediumflow/3p/volumevariables.hh
index c197fa49f0190dfd0eece569fea7c597f2749528..a21de49e8092b7591128dd20799d587490b2058e 100644
--- a/dumux/porousmediumflow/3p/volumevariables.hh
+++ b/dumux/porousmediumflow/3p/volumevariables.hh
@@ -18,9 +18,8 @@
  *****************************************************************************/
 /*!
  * \file
- *
- * \brief Contains the quantities which are constant within a
- *        finite volume in the three-phase model.
+ * \ingroup ThreePModel
+ * \brief Contains the quantities which are constant within a finite volume in the three-phase model.
  */
 #ifndef DUMUX_3P_VOLUME_VARIABLES_HH
 #define DUMUX_3P_VOLUME_VARIABLES_HH
@@ -36,8 +35,7 @@ namespace Dumux
 
 /*!
  * \ingroup ThreePModel
- * \brief Contains the quantities which are are constant within a
- *        finite volume in three-phase model.
+ * \brief Contains the quantities which are constant within a finite volume in the three-phase model.
  */
 template <class TypeTag>
 class ThreePVolumeVariables : public PorousMediumFlowVolumeVariables<TypeTag>
@@ -78,13 +76,18 @@ class ThreePVolumeVariables : public PorousMediumFlowVolumeVariables<TypeTag>
     enum { dofCodim = isBox ? dim : 0 };
 
 public:
-    //! The type of the object returned by the fluidState() method
-    using FluidState = typename GET_PROP_TYPE(TypeTag, FluidState);
 
+    using FluidState = typename GET_PROP_TYPE(TypeTag, FluidState);
 
     /*!
-     * \copydoc ImplicitVolumeVariables::update
-     */
+     * \brief Update all quantities for a given control volume
+     *
+     * \param elemSol A vector containing all primary variables connected to the element
+     * \param problem The object specifying the problem which ought to
+     *                be simulated
+     * \param element An element which contains part of the control volume
+     * \param scv The sub control volume
+    */
     void update(const ElementSolutionVector &elemSol,
                 const Problem &problem,
                 const Element &element,
@@ -117,7 +120,15 @@ public:
     }
 
     /*!
-     * \copydoc ImplicitModel::completeFluidState
+     * \brief Complete the fluid state
+     *
+     * \param elemSol A vector containing all primary variables connected to the element
+     * \param problem The problem
+     * \param element The element
+     * \param scv The sub control volume
+     * \param fluidState The fluid state
+     *
+     * Set temperature, saturations, capillary pressures, viscosities, densities and enthalpies.
      */
     static void completeFluidState(const ElementSolutionVector& elemSol,
                                    const Problem& problem,
@@ -251,10 +262,9 @@ public:
     { return permeability_; }
 
 protected:
-
-    Scalar porosity_;        //!< Effective porosity within the control volume
+    Scalar porosity_;
     PermeabilityType permeability_;
-    Scalar mobility_[numPhases];  //!< Effective mobility within the control volume
+    Scalar mobility_[numPhases];
     FluidState fluidState_;
 
 private:
@@ -265,6 +275,9 @@ private:
     { return *static_cast<const Implementation*>(this); }
 };
 
+/*!
+ * \brief  The ideal gas constant \f$\mathrm{[J/(mol K)]}\f$
+ */
 template <class TypeTag>
 const typename ThreePVolumeVariables<TypeTag>::Scalar ThreePVolumeVariables<TypeTag>::R = Constants<typename GET_PROP_TYPE(TypeTag, Scalar)>::R;
 
diff --git a/dumux/porousmediumflow/3p/vtkoutputfields.hh b/dumux/porousmediumflow/3p/vtkoutputfields.hh
index 3a93d766014f1004ebb62c63f6d39639d7db321f..9b68422f199a2819449b723298af0cad70de3d38 100644
--- a/dumux/porousmediumflow/3p/vtkoutputfields.hh
+++ b/dumux/porousmediumflow/3p/vtkoutputfields.hh
@@ -18,7 +18,8 @@
  *****************************************************************************/
 /*!
  * \file
- * \brief Adds vtk output fields specific to the twop model
+ * \ingroup ThreePModel
+ * \brief Adds vtk output fields specific to the three-phase model
  */
 #ifndef DUMUX_THREEP_VTK_OUTPUT_FIELDS_HH
 #define DUMUX_THREEP_VTK_OUTPUT_FIELDS_HH
@@ -29,8 +30,8 @@ namespace Dumux
 {
 
 /*!
- * \ingroup ThreeP, InputOutput
- * \brief Adds vtk output fields specific to the twop model
+ * \ingroup ThreePModel
+ * \brief Adds vtk output fields specific to the three-phase model
  */
 template<class TypeTag>
 class ThreePVtkOutputFields
diff --git a/dumux/porousmediumflow/3p3c/indices.hh b/dumux/porousmediumflow/3p3c/indices.hh
index 22ab8b423b94a1110c060644600aed65240d3860..03ed1ca8884015548c980761dfe64c9eeac155b3 100644
--- a/dumux/porousmediumflow/3p3c/indices.hh
+++ b/dumux/porousmediumflow/3p3c/indices.hh
@@ -18,8 +18,8 @@
  *****************************************************************************/
 /*!
  * \file
- * \brief Defines the indices required for the three-phase three-component
- *        fully implicit model.
+ * \ingroup ThreePThreeCModel
+ * \brief Defines the indices required for the three-phase three-component fully implicit model.
  */
 #ifndef DUMUX_3P3C_INDICES_HH
 #define DUMUX_3P3C_INDICES_HH
@@ -31,10 +31,8 @@ namespace Dumux
 
 /*!
  * \ingroup ThreePThreeCModel
- * \ingroup ImplicitIndices
  * \brief The indices for the isothermal three-phase three-component model.
  *
- * \tparam formulation The formulation, only pgSwSn is available.
  * \tparam PVOffset The first index in a primary variable vector.
  */
 template <class TypeTag, int PVOffset = 0>
@@ -64,21 +62,21 @@ public:
     static const int wgPhaseOnly = 6; //!< Only water and gas phases are present
 
     // Primary variable indices
-    static const int pressureIdx = PVOffset + 0; //!< Index for gas phase pressure in a solution vector
-    static const int switch1Idx = PVOffset + 1; //!< Index 1 of saturation or mole fraction
-    static const int switch2Idx = PVOffset + 2; //!< Index 2 of saturation or mole fraction
+    static const int pressureIdx = PVOffset + 0; //!< index for gas phase pressure in a solution vector
+    static const int switch1Idx = PVOffset + 1; //!< index 1 of saturation or mole fraction
+    static const int switch2Idx = PVOffset + 2; //!< index 2 of saturation or mole fraction
 
-    //! Index for gas phase pressure in a solution vector
+    //! index for gas phase pressure in a solution vector
     static const int pgIdx = pressureIdx;
-    //! Index of either the saturation of the wetting phase or the mole fraction secondary component if a phase is not present
+    //! index of either the saturation of the wetting phase or the mole fraction secondary component if a phase is not present
     static const int sOrX1Idx = switch1Idx;
-    //! Index of either the saturation of the nonwetting phase or the mole fraction secondary component if a phase is not present
+    //! index of either the saturation of the nonwetting phase or the mole fraction secondary component if a phase is not present
     static const int sOrX2Idx = switch2Idx;
 
     // equation indices
-    static const int conti0EqIdx = PVOffset    + wCompIdx; //!< Index of the mass conservation equation for the water component
-    static const int conti1EqIdx = conti0EqIdx + nCompIdx; //!< Index of the mass conservation equation for the contaminant component
-    static const int conti2EqIdx = conti0EqIdx + gCompIdx; //!< Index of the mass conservation equation for the gas component
+    static const int conti0EqIdx = PVOffset    + wCompIdx; //!< index of the mass conservation equation for the water component
+    static const int conti1EqIdx = conti0EqIdx + nCompIdx; //!< index of the mass conservation equation for the contaminant component
+    static const int conti2EqIdx = conti0EqIdx + gCompIdx; //!< index of the mass conservation equation for the gas component
 
     static const int contiWEqIdx = conti0EqIdx + wCompIdx; //!< index of the mass conservation equation for the water component
     static const int contiNEqIdx = conti0EqIdx + nCompIdx; //!< index of the mass conservation equation for the contaminant component
diff --git a/dumux/porousmediumflow/3p3c/localresidual.hh b/dumux/porousmediumflow/3p3c/localresidual.hh
index 488868f327fb27aef3ca79339254bb286f6391eb..7fe6bebbf3aed059b292e2f02d3fcfc4e55ef879 100644
--- a/dumux/porousmediumflow/3p3c/localresidual.hh
+++ b/dumux/porousmediumflow/3p3c/localresidual.hh
@@ -18,8 +18,8 @@
  *****************************************************************************/
 /*!
  * \file
- *
- * \brief Element-wise calculation of the Jacobian matrix for problems
+ * \ingroup ThreePThreeCModel
+  * \brief Element-wise calculation of the Jacobian matrix for problems
  *        using the three-phase three-component fully implicit model.
  */
 #ifndef DUMUX_3P3C_LOCAL_RESIDUAL_HH
@@ -31,7 +31,6 @@ namespace Dumux
 {
 /*!
  * \ingroup ThreePThreeCModel
- * \ingroup ImplicitLocalResidual
  * \brief Element-wise calculation of the Jacobian matrix for problems
  *        using the three-phase three-component fully implicit model.
  *
@@ -63,9 +62,9 @@ class ThreePThreeCLocalResidual: public GET_PROP_TYPE(TypeTag, BaseLocalResidual
         numPhases = GET_PROP_VALUE(TypeTag, NumPhases),
         numComponents = GET_PROP_VALUE(TypeTag, NumComponents),
 
-        conti0EqIdx = Indices::conti0EqIdx,//!< Index of the mass conservation equation for the water component
-        conti1EqIdx = Indices::conti1EqIdx,//!< Index of the mass conservation equation for the contaminant component
-        conti2EqIdx = Indices::conti2EqIdx,//!< Index of the mass conservation equation for the gas component
+        conti0EqIdx = Indices::conti0EqIdx,//!< index of the mass conservation equation for the water component
+        conti1EqIdx = Indices::conti1EqIdx,//!< index of the mass conservation equation for the contaminant component
+        conti2EqIdx = Indices::conti2EqIdx,//!< index of the mass conservation equation for the gas component
 
         wPhaseIdx = Indices::wPhaseIdx,
         nPhaseIdx = Indices::nPhaseIdx,
@@ -87,9 +86,9 @@ public:
      * The result should be averaged over the volume (e.g. phase mass
      * inside a sub control volume divided by the volume)
      *
-     *  \param storage The mass of the component within the sub-control volume
-     *  \param scvIdx The SCV (sub-control-volume) index
-     *  \param usePrevSol Evaluate function with solution of current or previous time step
+     * \param problem The problem
+     * \param scv The sub control volume
+     * \param volVars The volume variables
      */
     ResidualVector computeStorage(const Problem& problem,
                                   const SubControlVolume& scv,
@@ -109,11 +108,11 @@ public:
                                   * volVars.moleFraction(phaseIdx, compIdx);
             }
 
-            //! The energy storage in the fluid phase with index phaseIdx
+            // The energy storage in the fluid phase with index phaseIdx
             EnergyLocalResidual::fluidPhaseStorage(storage, scv, volVars, phaseIdx);
         }
 
-        //! The energy storage in the solid matrix
+        // The energy storage in the solid matrix
         EnergyLocalResidual::solidPhaseStorage(storage, scv, volVars);
 
         return storage;
@@ -123,10 +122,12 @@ public:
      * \brief Evaluates the total flux of all conservation quantities
      *        over a face of a sub-control volume.
      *
-     * \param flux The flux over the SCV (sub-control-volume) face for each component
-     * \param fIdx The index of the SCV face
-     * \param onBoundary A boolean variable to specify whether the flux variables
-     *        are calculated for interior SCV faces or boundary faces, default=false
+     * \param problem The problem
+     * \param element The element
+     * \param fvGeometry The finite volume element geometry
+     * \param elemVolVars The element volume variables
+     * \param scvf The sub control volume face
+     * \param elemFluxVarsCache The element flux variables cache
      */
     ResidualVector computeFlux(const Problem& problem,
                                const Element& element,
@@ -154,11 +155,11 @@ public:
                 flux[eqIdx] += fluxVars.advectiveFlux(phaseIdx, upwindTerm);
             }
 
-            //! Add advective phase energy fluxes. For isothermal model the contribution is zero.
+            // Add advective phase energy fluxes. For isothermal model the contribution is zero.
             EnergyLocalResidual::heatConvectionFlux(flux, fluxVars, phaseIdx);
         }
 
-        //! Add diffusive energy fluxes. For isothermal model the contribution is zero.
+        // Add diffusive energy fluxes. For isothermal model the contribution is zero.
         EnergyLocalResidual::heatConductionFlux(flux, fluxVars);
 
         const auto diffusionFluxesWPhase = fluxVars.molecularDiffusionFlux(wPhaseIdx);
diff --git a/dumux/porousmediumflow/3p3c/model.hh b/dumux/porousmediumflow/3p3c/model.hh
index 0cca188fcfd4ab4757e8a0cad3ebc436078319a4..85e5c9f2f7206c8f30bfd9a1f7c56f24d6c5ef37 100644
--- a/dumux/porousmediumflow/3p3c/model.hh
+++ b/dumux/porousmediumflow/3p3c/model.hh
@@ -96,17 +96,14 @@
 
 namespace Dumux {
 namespace Properties {
-
-//! The type tags for the implicit three-phase three-component problems
+//! The type tags for the isothermal three-phase three-component model
 NEW_TYPE_TAG(ThreePThreeC, INHERITS_FROM(PorousMediumFlow));
-
-//! The type tags for the corresponding non-isothermal problems
+//! The type tags for the non-isothermal three-phase three-component model
 NEW_TYPE_TAG(ThreePThreeCNI, INHERITS_FROM(ThreePThreeC, NonIsothermal));
 
 //////////////////////////////////////////////////////////////////
 // Property values
 //////////////////////////////////////////////////////////////////
-
 /*!
  * \brief Set the property for the number of components.
  *
@@ -149,7 +146,8 @@ SET_PROP(ThreePThreeC, FluidState){
         using type = CompositionalFluidState<Scalar, FluidSystem>;
 };
 
-SET_INT_PROP(ThreePThreeC, NumEq, 3); //!< set the number of equations to 3
+//! Set the number of equations to 3
+SET_INT_PROP(ThreePThreeC, NumEq, 3);
 
 //! The local residual function of the conservation equations
 SET_TYPE_PROP(ThreePThreeC, LocalResidual, ThreePThreeCLocalResidual<TypeTag>);
@@ -210,16 +208,16 @@ public:
 // Property values for isothermal model required for the general non-isothermal model
 //////////////////////////////////////////////////////////////////
 
-//set isothermal VolumeVariables
+//! Set isothermal VolumeVariables
 SET_TYPE_PROP(ThreePThreeCNI, IsothermalVolumeVariables, ThreePThreeCVolumeVariables<TypeTag>);
 
-//set isothermal LocalResidual
+//! Set isothermal LocalResidual
 SET_TYPE_PROP(ThreePThreeCNI, IsothermalLocalResidual, ThreePThreeCLocalResidual<TypeTag>);
 
-//set isothermal Indices
+//! Set isothermal Indices
 SET_TYPE_PROP(ThreePThreeCNI, IsothermalIndices, ThreePThreeCIndices<TypeTag, /*PVOffset=*/0>);
 
-//set isothermal NumEq
+//! Set isothermal NumEq
 SET_INT_PROP(ThreePThreeCNI, IsothermalNumEq, 3);
 
 //! Set the vtk output fields specific to the ThreeP model
diff --git a/dumux/porousmediumflow/3p3c/primaryvariableswitch.hh b/dumux/porousmediumflow/3p3c/primaryvariableswitch.hh
index cde9052b608674505f6abd4c51c82d8e1fad3fca..17896b0eabb2af8e8ff31311d24949e7747cac2f 100644
--- a/dumux/porousmediumflow/3p3c/primaryvariableswitch.hh
+++ b/dumux/porousmediumflow/3p3c/primaryvariableswitch.hh
@@ -18,7 +18,7 @@
  *****************************************************************************/
 /*!
  * \file
- *
+ * \ingroup ThreePThreeCModel
  * \brief The primary variable switch for the 3p3c model
  */
 #ifndef DUMUX_3P3C_PRIMARY_VARIABLE_SWITCH_HH
diff --git a/dumux/porousmediumflow/3p3c/volumevariables.hh b/dumux/porousmediumflow/3p3c/volumevariables.hh
index 3d327521a61add19480576e211003e4ba7b2c9a9..6906866ae10dfd2e0f271aff7d5f7c4f87fb7950 100644
--- a/dumux/porousmediumflow/3p3c/volumevariables.hh
+++ b/dumux/porousmediumflow/3p3c/volumevariables.hh
@@ -18,7 +18,7 @@
  *****************************************************************************/
 /*!
  * \file
- *
+ * \ingroup ThreePThreeCModel
  * \brief Contains the quantities which are constant within a
  *        finite volume in the three-phase three-component model.
  */
@@ -102,8 +102,14 @@ public:
    using FluidState = typename GET_PROP_TYPE(TypeTag, FluidState);
 
     /*!
-     * \copydoc ImplicitVolumeVariables::update
-     */
+     * \brief Update all quantities for a given control volume
+     *
+     * \param elemSol A vector containing all primary variables connected to the element
+     * \param problem The object specifying the problem which ought to
+     *                be simulated
+     * \param element An element which contains part of the control volume
+     * \param scv The sub control volume
+    */
     void update(const ElementSolutionVector &elemSol,
                 const Problem &problem,
                 const Element &element,
diff --git a/dumux/porousmediumflow/3p3c/vtkoutputfields.hh b/dumux/porousmediumflow/3p3c/vtkoutputfields.hh
index 4c64a04e806752e8e42c6088216684e9668a85da..abccdece2452ad54f9da94fa2d58c3cb71759caa 100644
--- a/dumux/porousmediumflow/3p3c/vtkoutputfields.hh
+++ b/dumux/porousmediumflow/3p3c/vtkoutputfields.hh
@@ -18,7 +18,8 @@
  *****************************************************************************/
 /*!
  * \file
- * \brief Adds vtk output fields specific to the twop model
+ * \ingroup ThreePThreeCModel
+ * \brief Adds vtk output fields specific to the three-phase three-component model
  */
 #ifndef DUMUX_THREEPTHREEC_VTK_OUTPUT_FIELDS_HH
 #define DUMUX_THREEPTHREEC_VTK_OUTPUT_FIELDS_HH
@@ -29,7 +30,7 @@ namespace Dumux
 {
 
 /*!
- * \ingroup ThreePThreeC, InputOutput
+ * \ingroup ThreePThreeCModel
  * \brief Adds vtk output fields specific to the three-phase three-component model
  */
 template<class TypeTag>