blockOperator.hh

Go to the documentation of this file.
1 
6 #ifndef blockOperator_hh
7 #define blockOperator_hh
8 
9 #include <string>
10 #include <memory>
11 #include "basics/typedefs.hh"
12 #include "operator/compositions.hh"
13 #include "vectorial/vectorial.hh"
14 
15 namespace vectorial {
16 
17  // ********************************************************* BlockOperator **
18 
28  template<class F>
29  class BlockOperator : public concepts::Operator<F> {
30  public:
38  concepts::Operator<F>* B = 0,
39  concepts::Operator<F>* C = 0,
40  concepts::Operator<F>* D = 0);
50  BlockOperator(uint dimX, uint dimY,
51  concepts::Operator<F>* A = 0,
52  concepts::Operator<F>* B = 0,
53  concepts::Operator<F>* C = 0,
54  concepts::Operator<F>* D = 0);
55 
57  virtual void operator()(const concepts::Function<F>& fncY,
58  concepts::Function<F>& fncX);
60  void operator()(const concepts::Vector<F>& fncY,
61  concepts::Vector<F>& fncX);
62  protected:
63  virtual std::ostream& info(std::ostream& os) const;
64  private:
66  uint bdimX_[2], bdimY_[2];
75  };
76 
77 } // namespace vectorial
78 
79 #endif // blockOperator_hh
virtual std::ostream & info(std::ostream &os) const
Vector valued problems.
Definition: spaceTraits.hh:24
Abstract class for a function.
Definition: basis.hh:21
BlockOperator(concepts::Operator< F > *A=0, concepts::Operator< F > *B=0, concepts::Operator< F > *C=0, concepts::Operator< F > *D=0)
Constructor.
virtual const uint dimX() const
Returns the size of the image space of the operator (number of rows of the corresponding matrix)
Definition: compositions.hh:93
concepts::Operator< F > * B_
Upper right submatrix.
uint bdimX_[2]
Dimensions in X (columns) and Y (rows) of partly matrices.
concepts::Operator< F > * D_
Lower right submatrix.
concepts::Operator< F > * A_
Upper left submatrix.
Abstract class for an operator.
Definition: ARPACK.hh:16
concepts::Operator< F > * C_
Lower left submatrix.
BlockOperator(uint dimX, uint dimY, concepts::Operator< F > *A=0, concepts::Operator< F > *B=0, concepts::Operator< F > *C=0, concepts::Operator< F > *D=0)
Constructor of an operator with dimX colums and dimY rows, where at least one sub-operator has to be ...
virtual void operator()(const concepts::Function< F > &fncY, concepts::Function< F > &fncX)
Application operator for functions.
void operator()(const concepts::Vector< F > &fncY, concepts::Vector< F > &fncX)
Application operator for vectors.
virtual const uint dimY() const
Returns the size of the source space of the operator (number of columns of the corresponding matrix)
Definition: compositions.hh:98
Operator defined by 4 operators arranged in 2x2 blocks:
Page URL: http://wiki.math.ethz.ch/bin/view/Concepts/WebHome
21 August 2020
© 2020 Eidgenössische Technische Hochschule Zürich