constrained.hh

Go to the documentation of this file.
1 
7 #ifndef constrainedSP_hh
8 #define constrainedSP_hh
9 
10 #include <memory>
11 #include "compositions.hh"
12 #include "sparseMatrix.hh"
13 
14 namespace concepts {
15 
16  // forward declaration
17  template<typename F>
18  class SolverFabric;
19 
20  // *********************************************************** Constrained **
21 
31  class Constrained : public Operator<Real> {
32  public:
39  const Vector<Real>& g, SolverFabric<Real>& fabric);
40  virtual void operator()(const Function<Real>& fncY, Function<Real>& fncX);
41  protected:
42  virtual std::ostream& info(std::ostream& os) const;
43  private:
46  std::unique_ptr<SparseMatrix<Real> > CCt_;
47  const Vector<Real>& g_;
49  std::unique_ptr<Operator<Real> > CCtinv_, solver_;
50  std::unique_ptr<concepts::Compose<Real> > R_, Qmin_, CtC_, QS_, QSQ_;
51  std::unique_ptr<LiCoI<Real> > Q_;
52  std::unique_ptr<LiCo<Real> > Sp_;
54  };
55 
56 } // namespace concepts
57 
58 #endif // constrainedSP_hh
std::unique_ptr< Operator< Real > > solver_
Definition: constrained.hh:49
SolverFabric< Real > & fabric_
Definition: constrained.hh:53
Solves a linear system of equations subject to linear constraints.
Definition: constrained.hh:31
std::unique_ptr< concepts::Compose< Real > > Qmin_
Definition: constrained.hh:50
virtual std::ostream & info(std::ostream &os) const
std::unique_ptr< SparseMatrix< Real > > CCt_
Definition: constrained.hh:46
std::unique_ptr< concepts::Compose< Real > > R_
Definition: constrained.hh:50
Constrained(SparseMatrix< Real > &S, SparseMatrix< Real > &C, const Vector< Real > &g, SolverFabric< Real > &fabric)
Constructor.
std::unique_ptr< concepts::Compose< Real > > QSQ_
Definition: constrained.hh:50
std::unique_ptr< LiCoI< Real > > Q_
Definition: constrained.hh:51
Abstract class for an operator.
Definition: ARPACK.hh:16
std::unique_ptr< Operator< Real > > CCtinv_
Definition: constrained.hh:49
std::unique_ptr< concepts::Compose< Real > > QS_
Definition: constrained.hh:50
std::unique_ptr< LiCo< Real > > Sp_
Definition: constrained.hh:52
virtual void operator()(const Function< Real > &fncY, Function< Real > &fncX)
SparseMatrix< Real > & C_
Definition: constrained.hh:44
std::unique_ptr< concepts::Compose< Real > > CtC_
Definition: constrained.hh:50
Vector< Real > SRg_
Definition: constrained.hh:48
SparseMatrix< Real > & S_
Definition: constrained.hh:44
SparseMatrix< Real > Ct_
Definition: constrained.hh:45
Basic namespace for Concepts-2.
Definition: pml_formula.h:16
const Vector< Real > & g_
Definition: constrained.hh:47
Page URL: http://wiki.math.ethz.ch/bin/view/Concepts/WebHome
21 August 2020
© 2020 Eidgenössische Technische Hochschule Zürich