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 {
TEST_EXIT_DBG(level >= 0 && level <= 1)("Wrong level number!\n");
MSG("-----------------\n");
MPI::Intracomm &levelComm = levelData.getMpiComm(level);
DofComm &dc = (level == 0 ? dofComm : dofCommSd);
......@@ -522,18 +520,14 @@ namespace AMDiS {
for (int i = 0; i < vec.getSize(); i++) {
DOFVector<double> &dofVec = *(vec.getDOFVector(i));
for (it.beginDofIter(vec.getFeSpace(i)); !it.endDofIter(); it.nextDof()) {
// MSG("SEND TO RANK %d FOR COMP %d\n", it.getRank(), i);
for (it.beginDofIter(vec.getFeSpace(i)); !it.endDofIter(); it.nextDof())
dofs.push_back(dofVec[it.getDofIndex()]);
}
}
int rank = it.getRank();
if (level > 0)
rank = levelData.mapRank(rank, 0, level);
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()) {
......@@ -545,10 +539,6 @@ namespace AMDiS {
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()) {
int rank = it.getRank();
if (level > 0)
......
......@@ -1518,7 +1518,7 @@ namespace AMDiS {
else
solveReducedFetiMatrix(vec);
// MeshDistributor::globalMeshDistributor->synchVector(vec);
MeshDistributor::globalMeshDistributor->synchVector(vec);
}
}
......@@ -336,16 +336,12 @@ namespace AMDiS {
DOFVector<double>::Iterator dofIt(vec->getDOFVector(i), USED_DOFS);
for (dofIt.reset(); !dofIt.end(); ++dofIt) {
int index = dofIt.getDOFIndex();
if (isCoarseSpace(feSpace, index)) {
if ((*coarseSpaceMap)[feSpace].isRankDof(index)) {
index = coarseSpaceMap->getMatIndex(i, index);
VecSetValue(rhsCoarseSpace, index, *dofIt, INSERT_VALUES);
}
if (isCoarseSpace(feSpace, index)) {
index = coarseSpaceMap->getMatIndex(i, index);
VecSetValue(rhsCoarseSpace, index, *dofIt, ADD_VALUES);
} else {
if ((*interiorMap)[feSpace].isRankDof(index)) {
index = interiorMap->getMatIndex(i, index) + rStartInterior;
VecSetValue(rhsInterior, index, *dofIt, INSERT_VALUES);
}
index = interiorMap->getMatIndex(i, index) + rStartInterior;
VecSetValue(rhsInterior, index, *dofIt, ADD_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