Commit 915a3500 authored by Thomas Witkowski's avatar Thomas Witkowski
Browse files

Uhuhu, der Bug ist weg....

parent 62d533d7
...@@ -508,8 +508,6 @@ namespace AMDiS { ...@@ -508,8 +508,6 @@ namespace AMDiS {
TEST_EXIT_DBG(level >= 0 && level <= 1)("Wrong level number!\n"); TEST_EXIT_DBG(level >= 0 && level <= 1)("Wrong level number!\n");
MSG("-----------------\n");
MPI::Intracomm &levelComm = levelData.getMpiComm(level); MPI::Intracomm &levelComm = levelData.getMpiComm(level);
DofComm &dc = (level == 0 ? dofComm : dofCommSd); DofComm &dc = (level == 0 ? dofComm : dofCommSd);
...@@ -522,18 +520,14 @@ namespace AMDiS { ...@@ -522,18 +520,14 @@ namespace AMDiS {
for (int i = 0; i < vec.getSize(); i++) { for (int i = 0; i < vec.getSize(); i++) {
DOFVector<double> &dofVec = *(vec.getDOFVector(i)); DOFVector<double> &dofVec = *(vec.getDOFVector(i));
for (it.beginDofIter(vec.getFeSpace(i)); !it.endDofIter(); it.nextDof()) { for (it.beginDofIter(vec.getFeSpace(i)); !it.endDofIter(); it.nextDof())
// MSG("SEND TO RANK %d FOR COMP %d\n", it.getRank(), i);
dofs.push_back(dofVec[it.getDofIndex()]); dofs.push_back(dofVec[it.getDofIndex()]);
}
} }
int rank = it.getRank(); int rank = it.getRank();
if (level > 0) if (level > 0)
rank = levelData.mapRank(rank, 0, level); rank = levelData.mapRank(rank, 0, level);
stdMpi.send(rank, dofs); stdMpi.send(rank, dofs);
MSG("SEND TO RANK %d OF SIZE %d\n", rank, dofs.size());
} }
for (DofComm::Iterator it(dc.getRecvDofs()); !it.end(); it.nextRank()) { for (DofComm::Iterator it(dc.getRecvDofs()); !it.end(); it.nextRank()) {
...@@ -545,10 +539,6 @@ namespace AMDiS { ...@@ -545,10 +539,6 @@ namespace AMDiS {
stdMpi.startCommunication(); stdMpi.startCommunication();
for (DofComm::Iterator it(dc.getRecvDofs()); !it.end(); it.nextRank()) {
MSG("RECV FROM RANK %d OF SIZE %d\n", it.getRank(), stdMpi.getRecvData(it.getRank()).size());
}
for (DofComm::Iterator it(dc.getRecvDofs()); !it.end(); it.nextRank()) { for (DofComm::Iterator it(dc.getRecvDofs()); !it.end(); it.nextRank()) {
int rank = it.getRank(); int rank = it.getRank();
if (level > 0) if (level > 0)
......
...@@ -1518,7 +1518,7 @@ namespace AMDiS { ...@@ -1518,7 +1518,7 @@ namespace AMDiS {
else else
solveReducedFetiMatrix(vec); solveReducedFetiMatrix(vec);
// MeshDistributor::globalMeshDistributor->synchVector(vec); MeshDistributor::globalMeshDistributor->synchVector(vec);
} }
} }
...@@ -336,16 +336,12 @@ namespace AMDiS { ...@@ -336,16 +336,12 @@ namespace AMDiS {
DOFVector<double>::Iterator dofIt(vec->getDOFVector(i), USED_DOFS); DOFVector<double>::Iterator dofIt(vec->getDOFVector(i), USED_DOFS);
for (dofIt.reset(); !dofIt.end(); ++dofIt) { for (dofIt.reset(); !dofIt.end(); ++dofIt) {
int index = dofIt.getDOFIndex(); int index = dofIt.getDOFIndex();
if (isCoarseSpace(feSpace, index)) { if (isCoarseSpace(feSpace, index)) {
if ((*coarseSpaceMap)[feSpace].isRankDof(index)) { index = coarseSpaceMap->getMatIndex(i, index);
index = coarseSpaceMap->getMatIndex(i, index); VecSetValue(rhsCoarseSpace, index, *dofIt, ADD_VALUES);
VecSetValue(rhsCoarseSpace, index, *dofIt, INSERT_VALUES);
}
} else { } else {
if ((*interiorMap)[feSpace].isRankDof(index)) { index = interiorMap->getMatIndex(i, index) + rStartInterior;
index = interiorMap->getMatIndex(i, index) + rStartInterior; VecSetValue(rhsInterior, index, *dofIt, ADD_VALUES);
VecSetValue(rhsInterior, index, *dofIt, INSERT_VALUES);
}
} }
} }
} }
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment