17 _spikeStorage(spike_storage)
36 for(
int i=0; i<nSweeps; i++)
57 if (
verbosity >0 && MPI::COMM_WORLD.Get_rank() == 0 )
58 cout <<
"0: " << *rNorm0 <<
"procID = " << MPI::COMM_WORLD.Get_rank() << endl;
63 cout <<
"0: " << *rNorm0 << endl;
77 MFRPtr normRatio((*rNorm)/(*rNorm0));
81 cout << i <<
": " << *rNorm << endl;
87 if (
verbosity >0 && MPI::COMM_WORLD.Get_rank() == 0 )
88 cout <<i <<
": " <<
"procID = " << MPI::COMM_WORLD.Get_rank() << *rNorm << endl;
void doSweeps(LinearSystem &ls, const int nSweeps)
MultiField & getResidual()
virtual void smooth(LinearSystem &ls)
virtual MFRPtr solve(LinearSystem &ls)
virtual void spikeSolve(IContainer &xB, const IContainer &bB, IContainer &tempB, const SpikeStorage &spike_storage) const
shared_ptr< MultiFieldReduction > getOneNorm() const
virtual void computeResidual(const IContainer &xB, const IContainer &bB, IContainer &rB) const
SpikeSolver(const SpikeStorage &spike_storage)
const SpikeStorage & _spikeStorage
shared_ptr< MultiFieldReduction > MFRPtr
MultiFieldMatrix & getMatrix()