20 #ifndef OPM_MILU_HEADER_INCLUDED 21 #define OPM_MILU_HEADER_INCLUDED 47 MILU_VARIANT convertString2Milu(
const std::string& milu);
54 T identityFunctor(
const T&);
57 T oneFunctor(
const T&);
60 T signFunctor(
const T&);
63 T isPositiveFunctor(
const T&);
66 T absFunctor(
const T&);
71 virtual std::size_t operator[](std::size_t i)
const = 0;
77 std::size_t operator[](std::size_t i)
const override 85 explicit RealReorderer(
const std::vector<std::size_t>& ordering)
86 : ordering_(&ordering)
89 std::size_t operator[](std::size_t i)
const override 91 return (*ordering_)[i];
94 const std::vector<std::size_t>* ordering_;
99 using FieldFunct = std::function<typename M::field_type(const typename M::field_type&)>;
101 template <
typename M>
102 void milu0_decomposition(M& A, FieldFunct<M> absFunctor = signFunctor<typename M::field_type>,
103 FieldFunct<M> signFunctor = oneFunctor<typename M::field_type>,
104 std::vector<typename M::block_type>* diagonal =
nullptr);
107 void milu0_decomposition(M& A, std::vector<typename M::block_type>* diagonal)
109 milu0_decomposition(A, identityFunctor<typename M::field_type>, oneFunctor<typename M::field_type>, diagonal);
115 Reorderer& ordering, Reorderer& inverseOrdering);
MILU_VARIANT
Definition: MILU.hpp:34
Do not perform modified ILU.
This file contains a set of helper functions used by VFPProd / VFPInj.
Definition: blackoilbioeffectsmodules.hh:45