diff --git a/dune/xt/la/matrix-inverter/fmatrix.hh b/dune/xt/la/matrix-inverter/fmatrix.hh index 1420d7f2ffe4906c2c3c7cdfee1a623c969405dc..1e78fa656dd408d74f1cea9d1466fb8b036f3e0c 100644 --- a/dune/xt/la/matrix-inverter/fmatrix.hh +++ b/dune/xt/la/matrix-inverter/fmatrix.hh @@ -43,6 +43,13 @@ public: }; // class MatrixInverterOptions<EigenDenseMatrix<S>> +template <class K, int ROWS, int COLS> +class MatrixInverterOptions<Common::FieldMatrix<K, ROWS, COLS>> + : public MatrixInverterOptions<FieldMatrix<K, ROWS, COLS>> +{ +}; + + template <class K, int ROWS, int COLS> class MatrixInverter<FieldMatrix<K, ROWS, COLS>> : public internal::MatrixInverterBase<FieldMatrix<K, ROWS, COLS>> { @@ -82,7 +89,19 @@ protected: using BaseType::matrix_; using BaseType::options_; using BaseType::inverse_; -}; // class MatrixInverter<EigenDenseMatrix<...>> +}; // class MatrixInverter<FieldMatrix<...>> + + +template <class K, int ROWS, int COLS> +class MatrixInverter<Common::FieldMatrix<K, ROWS, COLS>> : public MatrixInverter<FieldMatrix<K, ROWS, COLS>> +{ +public: + template <class... Args> + explicit MatrixInverter(Args&&... args) + : MatrixInverter<FieldMatrix<K, ROWS, COLS>>(std::forward<Args>(args)...) + { + } +}; } // namespace Dune