Skip to content
Snippets Groups Projects
Commit fbcebeb1 authored by Elias Pipping's avatar Elias Pipping
Browse files

LoopSolver: Restore precision

parent 08b5444c
Branches
No related tags found
No related merge requests found
...@@ -124,37 +124,39 @@ void ::LoopSolver<VectorType, BitVectorType>::solve() ...@@ -124,37 +124,39 @@ void ::LoopSolver<VectorType, BitVectorType>::solve()
// Output // Output
if (this->verbosity_ == NumProc::FULL) { if (this->verbosity_ == NumProc::FULL) {
std::streamsize const oldPrecision = std::cout.precision();
std::ios_base::fmtflags const oldFormatFlags = std::cout.flags();
std::cout << std::setw(5) << i; std::cout << std::setw(5) << i;
if (this->useRelativeError_) if (this->useRelativeError_)
{ {
std::cout << std::setiosflags(std::ios::scientific); std::cout << std::scientific
std::cout << std::setw(15) << std::setprecision(7) << error; << std::setw(15) << std::setprecision(7) << error;
std::cout << std::resetiosflags(std::ios::scientific);
} }
if (referenceSolution_) if (referenceSolution_)
{ {
std::cout << std::setiosflags(std::ios::scientific); std::cout << std::scientific
std::cout << std::setw(15) << std::setprecision(7) << normOfError; << std::setw(15) << std::setprecision(7) << normOfError;
std::cout << std::resetiosflags(std::ios::scientific);
} }
std::cout << std::setiosflags(std::ios::scientific); std::cout << std::scientific
std::cout << std::setw(15) << std::setprecision(7) << normOfCorrection; << std::setw(15) << std::setprecision(7) << normOfCorrection;
std::cout << std::resetiosflags(std::ios::scientific);
std::cout << std::setiosflags(std::ios::fixed); if (i == 0)
if (i==0) // We can't estimate the convergence rate at the first iteration // We can't estimate the convergence rate at the first iteration
std::cout << " "; std::cout << " ";
else else
std::cout << std::setw(9) << std::setprecision(5) << convRate; std::cout << std::fixed
std::cout << std::resetiosflags(std::ios::fixed); << std::setw(9) << std::setprecision(5) << convRate;
std::cout << std::setprecision(oldPrecision)
<< std::setiosflags(oldFormatFlags);
std::cout << this->iterationStep_->getOutput(); std::cout << this->iterationStep_->getOutput();
std::cout << std::endl; std::cout << std::endl;
} }
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment