Explicit BlockOp construction for 2x2 diagonal. More...
#include <blockop.hh>
Public Member Functions | |
DiagOp (size_t nfac) | |
DiagOp (DiagOp< Scalar > const &x) | |
~DiagOp () | |
void | set (Operator< Scalar > const &a, size_t i) |
Space< Scalar > const & | getDomain () const |
Space< Scalar > const & | getRange () const |
ostream & | write (ostream &str) const |
Protected Member Functions | |
void | apply (const Vector< Scalar > &x, Vector< Scalar > &y) const |
void | applyDeriv (const Vector< Scalar > &x, const Vector< Scalar > &dx, Vector< Scalar > &dy) const |
void | applyAdjDeriv (const Vector< Scalar > &x, const Vector< Scalar > &dy, Vector< Scalar > &dx) const |
void | applyDeriv2 (const Vector< Scalar > &x, const Vector< Scalar > &dx0, const Vector< Scalar > &dx1, Vector< Scalar > &dy) const |
void | applyAdjDeriv2 (const Vector< Scalar > &x, const Vector< Scalar > &dx0, const Vector< Scalar > &dy, Vector< Scalar > &dx1) const |
Operator< Scalar > * | clone () const |
Explicit BlockOp construction for 2x2 diagonal.
Delivered as Op rather than BlockOp to avoid any inefficient access to off-diag componennts.
Definition at line 361 of file blockop.hh.
RVL::DiagOp< Scalar >::DiagOp | ( | size_t | nfac | ) |
Definition at line 542 of file blockop.hh.
RVL::DiagOp< Scalar >::DiagOp | ( | DiagOp< Scalar > const & | x | ) |
Definition at line 545 of file blockop.hh.
RVL::DiagOp< Scalar >::~DiagOp | ( | ) |
Definition at line 548 of file blockop.hh.
void RVL::DiagOp< Scalar >::apply | ( | const Vector< Scalar > & | x, | |
Vector< Scalar > & | y | |||
) | const [protected, virtual] |
Implements RVL::Operator< Scalar >.
Definition at line 379 of file blockop.hh.
void RVL::DiagOp< Scalar >::applyDeriv | ( | const Vector< Scalar > & | x, | |
const Vector< Scalar > & | dx, | |||
Vector< Scalar > & | dy | |||
) | const [protected, virtual] |
Implements RVL::Operator< Scalar >.
Definition at line 408 of file blockop.hh.
void RVL::DiagOp< Scalar >::applyAdjDeriv | ( | const Vector< Scalar > & | x, | |
const Vector< Scalar > & | dy, | |||
Vector< Scalar > & | dx | |||
) | const [protected, virtual] |
Implements RVL::Operator< Scalar >.
Definition at line 438 of file blockop.hh.
void RVL::DiagOp< Scalar >::applyDeriv2 | ( | const Vector< Scalar > & | x, | |
const Vector< Scalar > & | dx0, | |||
const Vector< Scalar > & | dx1, | |||
Vector< Scalar > & | dy | |||
) | const [protected, virtual] |
Reimplemented from RVL::Operator< Scalar >.
Definition at line 469 of file blockop.hh.
void RVL::DiagOp< Scalar >::applyAdjDeriv2 | ( | const Vector< Scalar > & | x, | |
const Vector< Scalar > & | dx0, | |||
const Vector< Scalar > & | dy, | |||
Vector< Scalar > & | dx1 | |||
) | const [protected, virtual] |
Reimplemented from RVL::Operator< Scalar >.
Definition at line 503 of file blockop.hh.
Operator<Scalar>* RVL::DiagOp< Scalar >::clone | ( | ) | const [protected, virtual] |
Implements RVL::Operator< Scalar >.
Definition at line 538 of file blockop.hh.
void RVL::DiagOp< Scalar >::set | ( | Operator< Scalar > const & | a, | |
size_t | i | |||
) |
Definition at line 550 of file blockop.hh.
Space<Scalar> const& RVL::DiagOp< Scalar >::getDomain | ( | ) | const [virtual] |
Implements RVL::Operator< Scalar >.
Definition at line 562 of file blockop.hh.
Space<Scalar> const& RVL::DiagOp< Scalar >::getRange | ( | ) | const [virtual] |
Implements RVL::Operator< Scalar >.
Definition at line 563 of file blockop.hh.
ostream& RVL::DiagOp< Scalar >::write | ( | ostream & | str | ) | const [virtual] |
Implements RVL::Writeable.
Definition at line 565 of file blockop.hh.