diff --git a/dumux/common/properties/numericmodel.hh b/dumux/common/properties/numericmodel.hh
deleted file mode 100644
index 6f426b62471ac900da4e2ef67de86cc2bf0dacf0..0000000000000000000000000000000000000000
--- a/dumux/common/properties/numericmodel.hh
+++ /dev/null
@@ -1,83 +0,0 @@
-// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
-// vi: set et ts=4 sw=4 sts=4:
-/*****************************************************************************
- *   See the file COPYING for full copying permissions.                      *
- *                                                                           *
- *   This program is free software: you can redistribute it and/or modify    *
- *   it under the terms of the GNU General Public License as published by    *
- *   the Free Software Foundation, either version 2 of the License, or       *
- *   (at your option) any later version.                                     *
- *                                                                           *
- *   This program is distributed in the hope that it will be useful,         *
- *   but WITHOUT ANY WARRANTY; without even the implied warranty of          *
- *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the            *
- *   GNU General Public License for more details.                            *
- *                                                                           *
- *   You should have received a copy of the GNU General Public License       *
- *   along with this program.  If not, see <http://www.gnu.org/licenses/>.   *
- *****************************************************************************/
-/*!
- * \ingroup Properties
- * \file
- *
- * \brief Defines a type tags and some fundamental properties for the numeric model
- */
-#ifndef DUMUX_NUMERIC_MODEL_PROPERTIES_HH
-#define DUMUX_NUMERIC_MODEL_PROPERTIES_HH
-
-#include <dune/common/fvector.hh>
-#include <dune/istl/bcrsmatrix.hh>
-#include <dumux/common/properties.hh>
-#include <dumux/common/properties/basic.hh>
-#include <dumux/common/boundarytypes.hh>
-
-
-namespace Dumux
-{
-
-namespace Properties
-{
-//! Type tag for numeric models.
-NEW_TYPE_TAG(NumericModel, INHERITS_FROM(BasicProperties));
-
-//! Set the default vector with size number of equations to a field vector
-SET_TYPE_PROP(NumericModel, NumEqVector, Dune::FieldVector<typename GET_PROP_TYPE(TypeTag, Scalar), GET_PROP_VALUE(TypeTag, NumEq)>);
-
-//! Set the default primary variable vector to a vector of size of number of equations
-SET_TYPE_PROP(NumericModel, PrimaryVariables, typename GET_PROP_TYPE(TypeTag, NumEqVector));
-
-//! The type of a solution for the whole grid at a fixed time
-SET_TYPE_PROP(NumericModel, SolutionVector, Dune::BlockVector<typename GET_PROP_TYPE(TypeTag, PrimaryVariables)>);
-
-//! Set the type of a global jacobian matrix from the solution types
-SET_PROP(NumericModel, JacobianMatrix)
-{
-private:
-    using Scalar = typename GET_PROP_TYPE(TypeTag, Scalar);
-    enum { numEq = GET_PROP_VALUE(TypeTag, NumEq) };
-    using MatrixBlock = typename Dune::FieldMatrix<Scalar, numEq, numEq>;
-public:
-    using type = typename Dune::BCRSMatrix<MatrixBlock>;
-};
-
-//! set the block level to 1, suitable for e.g. a simple Dune::BCRSMatrix.
-// Set this to more than one if the matrix to solve is nested multiple times
-// e.g. for Dune::MultiTypeBlockMatrix'es.
-SET_INT_PROP(NumericModel, LinearSolverPreconditionerBlockLevel, 1);
-
-//! set the block size to number of equations as default
-/*!
- * The number of different types of equations which build the system of equations to solve
- * can differ from the number of equations given by the mathematical/physical model (e.g. IMPES).
- * Thus, the block size does not have to be equal to NumEq.
- * (Especially important for the SuperLU solver!)
- */
-SET_INT_PROP(NumericModel, LinearSolverBlockSize, GET_PROP_VALUE(TypeTag, NumEq));
-
-//! Boundary types at a single degree of freedom
-SET_TYPE_PROP(NumericModel, BoundaryTypes, BoundaryTypes<GET_PROP_VALUE(TypeTag, NumEq)>);
-
-} // namespace Properties
-} // namespace Dumux
-
-#endif
diff --git a/dumux/discretization/fvproperties.hh b/dumux/discretization/fvproperties.hh
index 0ec117b8290f9d74233e75d0d08d2a2842b8d21e..de4c89a26e9eedfa2e611341341a7f5386f9269a 100644
--- a/dumux/discretization/fvproperties.hh
+++ b/dumux/discretization/fvproperties.hh
@@ -27,10 +27,10 @@
 #define DUMUX_FV_PROPERTIES_HH
 
 #include <dune/istl/bvector.hh>
+#include <dune/istl/bcrsmatrix.hh>
 
 #include <dumux/common/properties.hh>
 #include <dumux/common/properties/grid.hh>
-#include <dumux/common/properties/numericmodel.hh>
 
 #include <dumux/implicit/gridvariables.hh>
 
@@ -39,7 +39,7 @@ namespace Dumux
 namespace Properties
 {
 //! Type tag for finite-volume schemes.
-NEW_TYPE_TAG(FiniteVolumeModel, INHERITS_FROM(GridProperties, NumericModel));
+NEW_TYPE_TAG(FiniteVolumeModel, INHERITS_FROM(GridProperties));
 
 //! The grid variables
 SET_TYPE_PROP(FiniteVolumeModel, GridVariables, GridVariables<TypeTag>);
@@ -56,6 +56,30 @@ SET_BOOL_PROP(FiniteVolumeModel, EnableGlobalVolumeVariablesCache, false);
 //! disable flux variables data caching by default
 SET_BOOL_PROP(FiniteVolumeModel, EnableGlobalFluxVariablesCache, false);
 
+//! Boundary types at a single degree of freedom
+SET_TYPE_PROP(FiniteVolumeModel, BoundaryTypes, BoundaryTypes<GET_PROP_VALUE(TypeTag, NumEq)>);
+
+// TODO: bundle SolutionVector, JacobianMatrix and LinearSolverPreconditionerBlockLevel
+//       in LinearAlgebra traits
+
+//! The type of a solution for the whole grid at a fixed time TODO: move to LinearAlgebra traits
+SET_TYPE_PROP(FiniteVolumeModel, SolutionVector, Dune::BlockVector<typename GET_PROP_TYPE(TypeTag, PrimaryVariables)>);
+
+//! Set the type of a global jacobian matrix from the solution types TODO: move to LinearAlgebra traits
+SET_PROP(FiniteVolumeModel, JacobianMatrix)
+{
+private:
+    using Scalar = typename GET_PROP_TYPE(TypeTag, Scalar);
+    enum { numEq = GET_PROP_VALUE(TypeTag, NumEq) };
+    using MatrixBlock = typename Dune::FieldMatrix<Scalar, numEq, numEq>;
+public:
+    using type = typename Dune::BCRSMatrix<MatrixBlock>;
+};
+
+// set the block level to 1, suitable for e.g. a simple Dune::BCRSMatrix.
+// Set this to more than one if the matrix to solve is nested multiple times
+// e.g. for Dune::MultiTypeBlockMatrix'es. TODO: move to LinearAlgebra traits
+SET_INT_PROP(FiniteVolumeModel, LinearSolverPreconditionerBlockLevel, 1);
 } // namespace Properties
 } // namespace Dumux
 
diff --git a/dumux/discretization/staggered/properties.hh b/dumux/discretization/staggered/properties.hh
index 133de5d16eb8776c8825b624d62cea56bc7d9d38..b50b154b0d807247668ab4c4dcc77b653889390d 100644
--- a/dumux/discretization/staggered/properties.hh
+++ b/dumux/discretization/staggered/properties.hh
@@ -177,17 +177,20 @@ SET_TYPE_PROP(StaggeredModel,
               Dune::FieldVector<typename GET_PROP_TYPE(TypeTag, Scalar),
                                 GET_PROP_VALUE(TypeTag, NumEqFace)>);
 
-//! The type of a solution for the whole grid at a fixed time
+// TODO: bundle SolutionVector, JacobianMatrix and LinearSolverPreconditionerBlockLevel
+//       in LinearAlgebra traits
+
+//! The type of a solution for the whole grid at a fixed time TODO: move to LinearAlgebra traits
 SET_TYPE_PROP(StaggeredModel,
               CellCenterSolutionVector,
               Dune::BlockVector<typename GET_PROP_TYPE(TypeTag, CellCenterPrimaryVariables)>);
 
-//! The type of a solution for the whole grid at a fixed time
+//! The type of a solution for the whole grid at a fixed time TODO: move to LinearAlgebra traits
 SET_TYPE_PROP(StaggeredModel,
               FaceSolutionVector,
               Dune::BlockVector<typename GET_PROP_TYPE(TypeTag, FacePrimaryVariables)>);
 
-//! default property value for the solution vector only used for monolithic solver
+//! default property value for the solution vector only used for monolithic solver TODO: move to LinearAlgebra traits
 SET_PROP(StaggeredModel, SolutionVector)
 {
 private:
@@ -197,7 +200,7 @@ public:
     typedef typename Dune::MultiTypeBlockVector<CellCenterSolutionVector, FaceSolutionVector> type;
 };
 
-//! Set the type of a global jacobian matrix from the solution types
+//! Set the type of a global jacobian matrix from the solution types TODO: move to LinearAlgebra traits
 SET_PROP(StaggeredModel, JacobianMatrix)
 {
 private:
@@ -231,6 +234,9 @@ public:
     using type = typename Dune::MultiTypeBlockMatrix<RowCellCenter, RowFace>;
 };
 
+// set the block level to 2 (nested multiple times) TODO: move to LinearAlgebra traits
+SET_INT_PROP(StaggeredModel, LinearSolverPreconditionerBlockLevel, 2);
+
 SET_PROP(StaggeredModel, NumEq)
 {
 private: