source: src/smoother/smoother.cpp@ facba0

Last change on this file since facba0 was dfed1c, checked in by Julian Iseringhausen <isering@…>, 14 years ago

Major vmg update.

git-svn-id: https://svn.version.fz-juelich.de/scafacos/trunk@1136 5161e1c8-67bf-11de-9fd5-51895aff932f

  • Property mode set to 100644
File size: 777 bytes
Line 
1/**
2 * @file smoother.cpp
3 * @author Julian Iseringhausen <isering@ins.uni-bonn.de>
4 * @date Mon Apr 18 13:08:57 2011
5 *
6 * @brief VMG::Smoother
7 *
8 */
9
10#ifdef HAVE_CONFIG_H
11#include <config.h>
12#endif
13
14#include "base/discretization.hpp"
15#include "base/timer.hpp"
16#include "comm/comm.hpp"
17#include "smoother/smoother.hpp"
18#include "mg.hpp"
19
20using namespace VMG;
21
22void Smoother::Run(Multigrid& sol, Multigrid& rhs, int steps)
23{
24 Timer::Start("SmootherWithCommunication");
25
26 for (int i=0; i<steps; i++) {
27
28 MG::GetComm()->CommToGhosts(sol());
29
30 if (sol().Global().BoundaryType() == LocallyRefined)
31 MG::GetDiscretization()->SetInnerBoundary(sol(), rhs(), sol(sol.Level()-1));
32
33 this->Compute(sol(), rhs());
34
35 }
36
37 Timer::Stop("SmootherWithCommunication");
38}
Note: See TracBrowser for help on using the repository browser.