OperatorLeftScalarMult

class odl.operator.operator.OperatorLeftScalarMult(*args, **kwargs)[source]

Bases: Operator

Expression type for the operator left scalar multiplication.

OperatorLeftScalarMult(op, s)(x) == s * op(x)

The scalar multiplication is well-defined only if op.range is a LinearSpace.

Attributes:
adjoint

Adjoint of this operator.

domain

Set of objects on which this operator can be evaluated.

inverse

Inverse of this operator.

is_functional

True if this operator's range is a Field.

is_linear

True if this operator is linear.

operator

The operator part of this multiplication.

range

Set in which the result of an evaluation of this operator lies.

scalar

The scalar part of this multiplication.

Methods

__call__(x[, out])

Return self(x[, out, **kwargs]).

derivative(x)

Return the derivative at x.

norm([estimate])

Return the operator norm of this operator.

__init__(operator, scalar)[source]

Initialize a new OperatorLeftScalarMult instance.

Parameters:
operatorOperator

Operator in the scalar multiplication. Its range must be a LinearSpace or Field.

scalaroperator.range.field element

A real or complex number, depending on the field of the range.

Examples

>>> space = odl.rn(3)
>>> operator = odl.IdentityOperator(space)
>>> left_mul_op = OperatorLeftScalarMult(operator, 3)
>>> left_mul_op([1, 2, 3])
rn(3).element([ 3.,  6.,  9.])