diff --git a/AMDiS/src/ParallelProblem.cc b/AMDiS/src/ParallelProblem.cc index b5b7f46bb091ac4562fac2e20370d4aa020eee13..39811f5aebc5f58b24cb3183c2b7dc97f1cc1518 100644 --- a/AMDiS/src/ParallelProblem.cc +++ b/AMDiS/src/ParallelProblem.cc @@ -461,7 +461,7 @@ namespace AMDiS { if (debugMode) { dbgMesh = mesh; if (mpiRank == 0) { - structures[mpiRank].fitMeshToStructure(dbgMesh, + structures[mpiRank].fitMeshToStructure(dbgMesh, refinementManager, true, true); } @@ -1487,11 +1487,18 @@ namespace AMDiS { if (debugMode) { dbgRankSolution.resize(mpiSize); for (int i = 0; i < mpiSize; i++) { - dbgRankSolution[i] = NEW SystemVector(*(rankSolution[i])); + dbgRankSolution[i] = NEW SystemVector("debug rank solution", feSpaces, nComponents); + for (int j = 0; j < nComponents; j++) { + dbgRankSolution[i]->setDOFVector(j, NEW DOFVector<double>(feSpaces[j], + "debug rank solution")); + } } if (mpiRank == 0) { - dbgSolution = NEW SystemVector(*(problem->getSolution())); + dbgSolution = NEW SystemVector("debug solution", feSpaces, nComponents); + for (int i = 0; i < nComponents; i++) { + dbgSolution->setDOFVector(i, NEW DOFVector<double>(feSpaces[i], "debug solution")); + } } } @@ -1518,7 +1525,7 @@ namespace AMDiS { } DELETE dbgRankSolution[i]; } - + if (mpiRank == 0) { for (int i = 0; i < nComponents; i++) { DELETE dbgSolution->getDOFVector(i);