diff --git a/test/multidomain/facet/1p_1p/threedomain/main.cc b/test/multidomain/facet/1p_1p/threedomain/main.cc index f40bcbd42c8b3b9ae2f61197e36da7142c9907c5..837dbf3f9b958f80647f902d50884163e0c7e3b1 100644 --- a/test/multidomain/facet/1p_1p/threedomain/main.cc +++ b/test/multidomain/facet/1p_1p/threedomain/main.cc @@ -143,8 +143,6 @@ int main(int argc, char** argv) auto couplingManager = std::make_shared(); // the problems (boundary conditions) - MultiDomainFVProblem problem; - using BulkProblem = MultiDomainFVProblem::template Type; using FacetProblem = MultiDomainFVProblem::template Type; using EdgeProblem = MultiDomainFVProblem::template Type; @@ -153,9 +151,11 @@ int main(int argc, char** argv) auto facetSpatialParams = std::make_shared(gridGeometry.get(facetId), "Facet"); auto edgeSpatialParams = std::make_shared(gridGeometry.get(edgeId), "Edge"); - problem.set(std::make_shared(gridGeometry.get(bulkId), bulkSpatialParams, couplingManager, "Bulk"), bulkId); - problem.set(std::make_shared(gridGeometry.get(facetId), facetSpatialParams, couplingManager, "Facet"), facetId); - problem.set(std::make_shared(gridGeometry.get(edgeId), edgeSpatialParams, couplingManager, "Edge"), edgeId); + auto bulkProblem = std::make_shared(gridGeometry.get(bulkId), bulkSpatialParams, couplingManager, "Bulk"); + auto facetProblem = std::make_shared(gridGeometry.get(facetId), facetSpatialParams, couplingManager, "Facet"); + auto edgeProblem = std::make_shared(gridGeometry.get(edgeId), edgeSpatialParams, couplingManager, "Edge"); + + MultiDomainFVProblem problem(std::make_tuple(bulkProblem, facetProblem, edgeProblem)); // the solution vector typename Traits::SolutionVector x; @@ -171,18 +171,18 @@ int main(int argc, char** argv) // the grid variables using GridVariables = MultiDomainFVGridVariables; - GridVariables gridVars(gridGeometry.getTuple(), problem.getTuple()); + GridVariables gridVars(gridGeometry.asTuple(), problem.asTuple()); gridVars.init(x); // intialize the vtk output module const std::array vtkOutputNames{{problem[bulkId].name(), problem[facetId].name(), problem[edgeId].name()}}; - MultiDomainVtkOutputModule vtkWriter(gridVars.getTuple(), x, vtkOutputNames); + MultiDomainVtkOutputModule vtkWriter(gridVars.asTuple(), x, vtkOutputNames); vtkWriter.initDefaultOutputFields(); vtkWriter.write(0.0); // the assembler using Assembler = MultiDomainFVAssembler; - auto assembler = std::make_shared( problem.getTuple(), gridGeometry.getTuple(), gridVars.getTuple(), couplingManager); + auto assembler = std::make_shared( problem.asTuple(), gridGeometry.asTuple(), gridVars.asTuple(), couplingManager); // the linear solver using LinearSolver = ILU0BiCGSTABBackend;