source: src/level/level_operator.hpp@ 2fad0e0

Last change on this file since 2fad0e0 was 48b662, checked in by Olaf Lenz <olenz@…>, 14 years ago

Moved files in scafacos_fcs one level up.

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

  • Property mode set to 100644
File size: 850 bytes
Line 
1/**
2 * @file level_operator.hpp
3 * @author Julian Iseringhausen <isering@ins.uni-bonn.de>
4 * @date Mon Apr 18 12:59:28 2011
5 *
6 * @brief VMG::LevelOperator
7 *
8 */
9
10#ifndef LEVEL_OPERATOR_HPP_
11#define LEVEL_OPERATOR_HPP_
12
13#include "base/object.hpp"
14#include "base/stencil.hpp"
15
16namespace VMG
17{
18
19class LevelOperator : public Object
20{
21public:
22 LevelOperator(const Stencil& operatorRestrict_, const Stencil& operatorProlongate_) :
23 operatorRestrict(operatorRestrict_),
24 operatorProlongate(operatorProlongate_)
25 {}
26
27 virtual void Restrict(Multigrid& sol, Multigrid& rhs) = 0;
28 virtual void Prolongate(Multigrid& sol, Multigrid& rhs) = 0;
29
30protected:
31 Stencil& OperatorRestrict() {return operatorRestrict;}
32 Stencil& OperatorProlongate() {return operatorProlongate;}
33
34private:
35 Stencil operatorRestrict, operatorProlongate;
36};
37
38}
39
40#endif
Note: See TracBrowser for help on using the repository browser.