42#ifndef THYRA_SCALED_LINEAR_OP_BASE_HPP
43#define THYRA_SCALED_LINEAR_OP_BASE_HPP
45#include "Thyra_LinearOpBase_decl.hpp"
Base class for all linear operators.
Applies left or right sclaing to the linear operator.
virtual bool supportsScaleLeftImpl() const =0
virtual void scaleLeftImpl(const VectorBase< Scalar > &row_scaling)=0
void scaleLeft(const VectorBase< Scalar > &row_scaling)
Left scales operator with diagonal scaling operator.
bool supportsScaleRight() const
Determines if this objects supports right scaling.
bool supportsScaleLeft() const
Determines if this objects supports left scaling.
virtual void scaleRightImpl(const VectorBase< Scalar > &col_scaling)=0
void scaleRight(const VectorBase< Scalar > &col_scaling)
Right scales operator with diagonal scaling operator.
virtual bool supportsScaleRightImpl() const =0
Abstract interface for finite-dimensional dense vectors.