Commit f5bb1382 authored by Thomas Witkowski's avatar Thomas Witkowski
Browse files

* Bugfix for scal problems

parent 9627014c
...@@ -427,8 +427,7 @@ namespace AMDiS { ...@@ -427,8 +427,7 @@ namespace AMDiS {
std::string solverType("no"); std::string solverType("no");
GET_PARAMETER(0, name_ + "->solver", &solverType); GET_PARAMETER(0, name_ + "->solver", &solverType);
OEMSolverCreator<DOFVector<double> > *solverCreator = OEMSolverCreator<DOFVector<double> > *solverCreator =
dynamic_cast<OEMSolverCreator<DOFVector<double> >*>( dynamic_cast<OEMSolverCreator<DOFVector<double> >*>(CreatorMap<OEMSolver<DOFVector<double> > >::getCreator(solverType));
CreatorMap<OEMSolver<DOFVector<double> > >::getCreator(solverType));
TEST_EXIT(solverCreator)("no solver type\n"); TEST_EXIT(solverCreator)("no solver type\n");
solverCreator->setName(name_ + "->solver"); solverCreator->setName(name_ + "->solver");
solver_ = solverCreator->create(); solver_ = solverCreator->create();
...@@ -488,9 +487,9 @@ namespace AMDiS { ...@@ -488,9 +487,9 @@ namespace AMDiS {
EstimatorCreator *estimatorCreator = EstimatorCreator *estimatorCreator =
dynamic_cast<EstimatorCreator*>( dynamic_cast<EstimatorCreator*>(
CreatorMap<Estimator>::getCreator(estimatorType)); CreatorMap<Estimator>::getCreator(estimatorType));
if(estimatorCreator) { if (estimatorCreator) {
estimatorCreator->setName(name_ + "->estimator"); estimatorCreator->setName(name_ + "->estimator");
if(estimatorType == "recovery") { if (estimatorType == "recovery") {
dynamic_cast<RecoveryEstimator::Creator*>(estimatorCreator)->setSolution(solution_); dynamic_cast<RecoveryEstimator::Creator*>(estimatorCreator)->setSolution(solution_);
} }
estimator_ = estimatorCreator->create(); estimator_ = estimatorCreator->create();
...@@ -511,7 +510,7 @@ namespace AMDiS { ...@@ -511,7 +510,7 @@ namespace AMDiS {
int writeSerialization = 0; int writeSerialization = 0;
GET_PARAMETER(0, name_ + "->output->write serialization", "%d", GET_PARAMETER(0, name_ + "->output->write serialization", "%d",
&writeSerialization); &writeSerialization);
if(writeSerialization) { if (writeSerialization) {
fileWriters_.push_back(NEW Serializer<ProblemScal>(this)); fileWriters_.push_back(NEW Serializer<ProblemScal>(this));
} }
} }
...@@ -520,7 +519,7 @@ namespace AMDiS { ...@@ -520,7 +519,7 @@ namespace AMDiS {
{ {
FUNCNAME("Problem::estimate()"); FUNCNAME("Problem::estimate()");
if(estimator_) { if (estimator_) {
clock_t first = clock(); clock_t first = clock();
estimator_->estimate(adaptInfo->getTimestep()); estimator_->estimate(adaptInfo->getTimestep());
INFO(info_,8)("estimation of the error needed %.5f seconds\n", INFO(info_,8)("estimation of the error needed %.5f seconds\n",
...@@ -597,6 +596,8 @@ namespace AMDiS { ...@@ -597,6 +596,8 @@ namespace AMDiS {
elInfo = stack.traverseNext(elInfo); elInfo = stack.traverseNext(elInfo);
} }
systemMatrix_->removeRowsWithDBC(systemMatrix_->getApplyDBCs());
if (systemMatrix_->getBoundaryManager()) if (systemMatrix_->getBoundaryManager())
systemMatrix_->getBoundaryManager()->exitMatrix(systemMatrix_); systemMatrix_->getBoundaryManager()->exitMatrix(systemMatrix_);
if (rhs_->getBoundaryManager()) if (rhs_->getBoundaryManager())
...@@ -636,10 +637,8 @@ namespace AMDiS { ...@@ -636,10 +637,8 @@ namespace AMDiS {
FUNCNAME("ProblemVec::writeResidualMesh()"); FUNCNAME("ProblemVec::writeResidualMesh()");
Mesh *mesh = this->getMesh(); Mesh *mesh = this->getMesh();
FiniteElemSpace *fe = this->getFESpace(); FiniteElemSpace *fe = this->getFESpace();
std::map<int, double> vec;
std::map<int, double> vec;
TraverseStack stack; TraverseStack stack;
ElInfo *elInfo = stack.traverseFirst(mesh, ElInfo *elInfo = stack.traverseFirst(mesh,
-1, -1,
......
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