bramblePasciak.hh

Go to the documentation of this file.
1 
7 #ifndef bramblePasciak_hh
8 #define bramblePasciak_hh
9 
10 #include <string>
11 
12 #include "basics/typedefs.hh"
13 #include "operator/compositions.hh"
14 #include "vectorial.hh"
15 
16 namespace vectorial {
17 
18  using concepts::Real;
19 
20  // ******************************************************** BramblePasciak **
21 
54  class BramblePasciak : public concepts::Operator<Real> {
55  public:
70  Real maxeps, int maxit = 0, uint relres = false);
71 
72  virtual void operator()(const concepts::Function<Real>& fncY,
76 
80  uint iterations() const { return it_; }
81 
85  Real epsilon() const { return eps_; }
86  protected:
87  std::ostream& info(std::ostream& os) const;
88  private:
90  uint bdim_[2];
104  uint maxit_;
108  uint it_;
110  bool relres_;
111  };
112 
113 } // namespace vectorial
114 
115 #endif // bramblePasciak_hh
uint maxit_
Maximal number of iterations until abortion.
bool relres_
false: absolute residual, true: relative residual
concepts::Operator< Real > & C_
Lower right submatrix.
Vector valued problems.
Definition: spaceTraits.hh:24
Real eps_
Current residual.
uint bdim_[2]
Dimensions of partly matrices (in image and source space)
uint it_
Number of iterations.
void operator()(const concepts::Vector< Real > &fncY, concepts::Vector< Real > &fncX)
Abstract class for an operator.
Definition: ARPACK.hh:16
BramblePasciak(concepts::Operator< Real > &A, concepts::Operator< Real > &B, concepts::Operator< Real > &Bt, concepts::Operator< Real > &C, concepts::Operator< Real > &W, Real maxeps, int maxit=0, uint relres=false)
Constructor.
concepts::Operator< Real > & W_
Preconditioner for A.
Bramble-Pasciak preconditioned solver for generalized saddle point problems.
concepts::Operator< Real > & B_
Upper right submatrix.
uint iterations() const
Returns the number of iterations.
concepts::Operator< Real > & A_
Upper left submatrix.
Real maxeps_
Convergence criterion.
Real epsilon() const
Returns the residual.
std::ostream & info(std::ostream &os) const
double Real
Type normally used for a floating point number.
Definition: typedefs.hh:36
concepts::Operator< Real > & Bt_
Lower left submatrix.
virtual void operator()(const concepts::Function< Real > &fncY, concepts::Function< Real > &fncX)
Page URL: http://wiki.math.ethz.ch/bin/view/Concepts/WebHome
21 August 2020
© 2020 Eidgenössische Technische Hochschule Zürich