|
ROL
|
Provides the interface to apply a block diagonal operator to a partitioned vector. More...
#include <ROL_BlockDiagonalOperator.hpp>
Public Member Functions | |
| BlockDiagonalOperator (const std::vector< Ptr< LinearOperator< Real > > > &diag) | |
| const Ptr< LinearOperator< Real > > | get (unsigned i) const |
| void | apply (Vector< Real > &Hv, const Vector< Real > &v, Real &tol) const override |
| void | applyInverse (Vector< Real > &Hv, const Vector< Real > &v, Real &tol) const override |
| void | applyAdjoint (Vector< Real > &Hv, const Vector< Real > &v, Real &tol) const override |
| void | applyAdjointInverse (Vector< Real > &Hv, const Vector< Real > &v, Real &tol) const override |
| Public Member Functions inherited from ROL::ROL::LinearOperator< Real > | |
| virtual | ~LinearOperator () |
| virtual void | update (const Vector< Real > &x, bool flag=true, int iter=-1) |
| Update linear operator. | |
| virtual void | apply (Vector< Real > &Hv, const Vector< Real > &v, Real &tol) const =0 |
| Apply linear operator. | |
| virtual void | applyInverse (Vector< Real > &Hv, const Vector< Real > &v, Real &tol) const |
| Apply inverse of linear operator. | |
| virtual void | applyAdjoint (Vector< Real > &Hv, const Vector< Real > &v, Real &tol) const |
| Apply adjoint of linear operator. | |
| virtual void | applyAdjointInverse (Vector< Real > &Hv, const Vector< Real > &v, Real &tol) const |
| Apply adjoint of the inverse linear operator. | |
Private Attributes | |
| const std::vector< Ptr< LinearOperator< Real > > > | diag_ |
| const unsigned | numOp_ |
Provides the interface to apply a block diagonal operator to a partitioned vector.
Definition at line 28 of file ROL_BlockDiagonalOperator.hpp.
| ROL::BlockDiagonalOperator< Real >::BlockDiagonalOperator | ( | const std::vector< Ptr< LinearOperator< Real > > > & | diag | ) |
Definition at line 18 of file ROL_BlockDiagonalOperator_Def.hpp.
| const Ptr< LinearOperator< Real > > ROL::BlockDiagonalOperator< Real >::get | ( | unsigned | i | ) | const |
Definition at line 22 of file ROL_BlockDiagonalOperator_Def.hpp.
|
override |
Definition at line 30 of file ROL_BlockDiagonalOperator_Def.hpp.
References ROL::apply(), diag_, ROL::PartitionedVector< Real >::get(), numOp_, and ROL::PartitionedVector< Real >::numVectors().
|
override |
Definition at line 51 of file ROL_BlockDiagonalOperator_Def.hpp.
References ROL::applyInverse(), diag_, ROL::PartitionedVector< Real >::get(), numOp_, and ROL::PartitionedVector< Real >::numVectors().
|
override |
Definition at line 72 of file ROL_BlockDiagonalOperator_Def.hpp.
References applyAdjoint(), diag_, ROL::PartitionedVector< Real >::get(), numOp_, and ROL::PartitionedVector< Real >::numVectors().
Referenced by applyAdjoint().
|
override |
Definition at line 93 of file ROL_BlockDiagonalOperator_Def.hpp.
References applyAdjointInverse(), diag_, ROL::PartitionedVector< Real >::get(), numOp_, and ROL::PartitionedVector< Real >::numVectors().
Referenced by applyAdjointInverse().
|
private |
Definition at line 30 of file ROL_BlockDiagonalOperator.hpp.
Referenced by apply(), applyAdjoint(), applyAdjointInverse(), applyInverse(), BlockDiagonalOperator(), and get().
|
private |
Definition at line 31 of file ROL_BlockDiagonalOperator.hpp.
Referenced by apply(), applyAdjoint(), applyAdjointInverse(), applyInverse(), BlockDiagonalOperator(), and get().