Remove deprecation warnings related to "conversion of multitype matrices" before release 3.7
There are multiple similar warnings : After 3.7 Newton will no longer support conversion of multitype matrices for solvers that don't support this feature
In file included from /dumux/dumux/multidomain/newtonsolver.hh:29, from /dumux/test/freeflow/navierstokes/angeli/main.cc:48: /dumux/dumux/nonlinear/newtonsolver.hh: In instantiation of ‘bool Dumux::NewtonSolver<Assembler, LinearSolver, Reassembler, Comm>::solveLinearSystem_(Dumux::NewtonSolver<Assembler, LinearSolver, Reassembler, Comm>::ResidualVector&) [with Assembler = Dumux::MultiDomainFVAssembler<Dumux::MultiDomainTraits<Dumux::Properties::TTag::AngeliTestMomentum, Dumux::Properties::TTag::AngeliTestMass>, Dumux::FCStaggeredFreeFlowCouplingManager<Dumux::MultiDomainTraits<Dumux::Properties::TTag::AngeliTestMomentum, Dumux::Properties::TTag::AngeliTestMass> >, Dumux::DiffMethod::numeric>; LinearSolver = Dumux::UMFPackBackend; Reassembler = Dumux::DefaultPartialReassembler; Comm = Dune::Communication<ompi_communicator_t*>; Dumux::NewtonSolver<Assembler, LinearSolver, Reassembler, Comm>::ResidualVector = Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >]’: /dumux/dumux/nonlinear/newtonsolver.hh:518:25: required from ‘void Dumux::NewtonSolver<Assembler, LinearSolver, Reassembler, Comm>::solveLinearSystem(Dumux::NewtonSolver<Assembler, LinearSolver, Reassembler, Comm>::ResidualVector&) [with Assembler = Dumux::MultiDomainFVAssembler<Dumux::MultiDomainTraits<Dumux::Properties::TTag::AngeliTestMomentum, Dumux::Properties::TTag::AngeliTestMass>, Dumux::FCStaggeredFreeFlowCouplingManager<Dumux::MultiDomainTraits<Dumux::Properties::TTag::AngeliTestMomentum, Dumux::Properties::TTag::AngeliTestMass> >, Dumux::DiffMethod::numeric>; LinearSolver = Dumux::UMFPackBackend; Reassembler = Dumux::DefaultPartialReassembler; Comm = Dune::Communication<ompi_communicator_t*>; Dumux::NewtonSolver<Assembler, LinearSolver, Reassembler, Comm>::ResidualVector = Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >]’ /dumux/dumux/nonlinear/newtonsolver.hh:982:17: required from ‘bool Dumux::NewtonSolver<Assembler, LinearSolver, Reassembler, Comm>::solve_(typename Dumux::NewtonSolver<Assembler, LinearSolver, Reassembler, Comm>::ParentType::Variables&) [with Assembler = Dumux::MultiDomainFVAssembler<Dumux::MultiDomainTraits<Dumux::Properties::TTag::AngeliTestMomentum, Dumux::Properties::TTag::AngeliTestMass>, Dumux::FCStaggeredFreeFlowCouplingManager<Dumux::MultiDomainTraits<Dumux::Properties::TTag::AngeliTestMomentum, Dumux::Properties::TTag::AngeliTestMass> >, Dumux::DiffMethod::numeric>; LinearSolver = Dumux::UMFPackBackend; Reassembler = Dumux::DefaultPartialReassembler; Comm = Dune::Communication<ompi_communicator_t*>; typename Dumux::NewtonSolver<Assembler, LinearSolver, Reassembler, Comm>::ParentType::Variables = Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >; Dumux::NewtonSolver<Assembler, LinearSolver, Reassembler, Comm>::ParentType = Dumux::PDESolver<Dumux::MultiDomainFVAssembler<Dumux::MultiDomainTraits<Dumux::Properties::TTag::AngeliTestMomentum, Dumux::Properties::TTag::AngeliTestMass>, Dumux::FCStaggeredFreeFlowCouplingManager<Dumux::MultiDomainTraits<Dumux::Properties::TTag::AngeliTestMomentum, Dumux::Properties::TTag::AngeliTestMass> >, Dumux::DiffMethod::numeric>, Dumux::UMFPackBackend>]’ /dumux/dumux/nonlinear/newtonsolver.hh:351:36: required from ‘void Dumux::NewtonSolver<Assembler, LinearSolver, Reassembler, Comm>::solve(typename Dumux::NewtonSolver<Assembler, LinearSolver, Reassembler, Comm>::ParentType::Variables&, Dumux::NewtonSolver<Assembler, LinearSolver, Reassembler, Comm>::TimeLoop&) [with Assembler = Dumux::MultiDomainFVAssembler<Dumux::MultiDomainTraits<Dumux::Properties::TTag::AngeliTestMomentum, Dumux::Properties::TTag::AngeliTestMass>, Dumux::FCStaggeredFreeFlowCouplingManager<Dumux::MultiDomainTraits<Dumux::Properties::TTag::AngeliTestMomentum, Dumux::Properties::TTag::AngeliTestMass> >, Dumux::DiffMethod::numeric>; LinearSolver = Dumux::UMFPackBackend; Reassembler = Dumux::DefaultPartialReassembler; Comm = Dune::Communication<ompi_communicator_t*>; typename Dumux::NewtonSolver<Assembler, LinearSolver, Reassembler, Comm>::ParentType::Variables = Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >; Dumux::NewtonSolver<Assembler, LinearSolver, Reassembler, Comm>::ParentType = Dumux::PDESolver<Dumux::MultiDomainFVAssembler<Dumux::MultiDomainTraits<Dumux::Properties::TTag::AngeliTestMomentum, Dumux::Properties::TTag::AngeliTestMass>, Dumux::FCStaggeredFreeFlowCouplingManager<Dumux::MultiDomainTraits<Dumux::Properties::TTag::AngeliTestMomentum, Dumux::Properties::TTag::AngeliTestMass> >, Dumux::DiffMethod::numeric>, Dumux::UMFPackBackend>; Dumux::NewtonSolver<Assembler, LinearSolver, Reassembler, Comm>::TimeLoop = Dumux::TimeLoopBase<double>]’ /dumux/test/freeflow/navierstokes/angeli/main.cc:177:30: required from here /dumux/dumux/nonlinear/newtonsolver.hh:1122:38: warning: ‘std::enable_if_t<((! Dumux::linearSolverAcceptsMultiTypeMatrix<LS>()) && Dumux::isMultiTypeBlockVector<V>()), bool> Dumux::NewtonSolver<Assembler, LinearSolver, Reassembler, Comm>::solveLinearSystemImpl_(LinearSolver&, Dumux::NewtonSolver<Assembler, LinearSolver, Reassembler, Comm>::JacobianMatrix&, Dumux::NewtonSolver<Assembler, LinearSolver, Reassembler, Comm>::ResidualVector&, Dumux::NewtonSolver<Assembler, LinearSolver, Reassembler, Comm>::ResidualVector&) [with LS = Dumux::UMFPackBackend; V = Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >; Assembler = Dumux::MultiDomainFVAssembler<Dumux::MultiDomainTraits<Dumux::Properties::TTag::AngeliTestMomentum, Dumux::Properties::TTag::AngeliTestMass>, Dumux::FCStaggeredFreeFlowCouplingManager<Dumux::MultiDomainTraits<Dumux::Properties::TTag::AngeliTestMomentum, Dumux::Properties::TTag::AngeliTestMass> >, Dumux::DiffMethod::numeric>; LinearSolver = Dumux::UMFPackBackend; Reassembler = Dumux::DefaultPartialReassembler; Comm = Dune::Communication<ompi_communicator_t*>; std::enable_if_t<((! Dumux::linearSolverAcceptsMultiTypeMatrix<LS>()) && Dumux::isMultiTypeBlockVector<V>()), bool> = bool; Dumux::NewtonSolver<Assembler, LinearSolver, Reassembler, Comm>::JacobianMatrix = Dune::MultiTypeBlockMatrix<Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > >, Dune::MultiTypeBlockVector<Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > >, Dune::BCRSMatrix<Dune::FieldMatrix<double, 1, 1>, std::allocator<Dune::FieldMatrix<double, 1, 1> > > > >; Dumux::NewtonSolver<Assembler, LinearSolver, Reassembler, Comm>::ResidualVector = Dune::MultiTypeBlockVector<Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > >, Dune::BlockVector<Dune::FieldVector<double, 1>, std::allocator<Dune::FieldVector<double, 1> > > >]’ is deprecated: After 3.7 Newton will no longer support conversion of multitype matrices for solvers that don't support this feature! [-Wdeprecated-declarations] 1122 | return solveLinearSystemImpl_(this->linearSolver(), | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ 1123 | this->assembler().jacobian(), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1124 | deltaU, | ~~~~~~~ 1125 | this->assembler().residual()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /dumux/dumux/nonlinear/newtonsolver.hh:1183:5: note: declared here 1183 | solveLinearSystemImpl_(LinearSolver& ls,