Functional¶
-
class
odl.solvers.functional.functional.
Functional
(*args, **kwargs)[source]¶ Bases:
odl.operator.operator.Operator
Implementation of a functional class.
A functional is an operator
f
that maps from some domainX
to the field of scalarsF
associated with the domain:f : X -> F
.Notes
The implementation of the functional class assumes that the domain is a Hilbert space and that the field of scalars is a is the real numbers. It is possible to create functions that do not fulfil these assumptions, however some mathematical results might not be valid in this case. For more information, see the ODL functional guide.
- Attributes
adjoint
Adjoint of this operator (abstract).
convex_conj
Convex conjugate functional of the functional.
domain
Set of objects on which this operator can be evaluated.
grad_lipschitz
Lipschitz constant for the gradient of the functional.
gradient
Gradient operator of the functional.
inverse
Return the operator inverse.
is_functional
True
if this operator’s range is aField
.is_linear
True
if this operator is linear.proximal
Proximal factory of the functional.
range
Set in which the result of an evaluation of this operator lies.
Methods
_call
(self, x[, out])Implementation of the operator evaluation.
bregman
(self, point, subgrad)Return the Bregman distance functional.
derivative
(self, point)Return the derivative operator in the given point.
norm
(self[, estimate])Return the operator norm of this operator.
translated
(self, shift)Return a translation of the functional.
-
__init__
(self, space, linear=False, grad_lipschitz=nan)[source]¶ Initialize a new instance.
- Parameters
- space
LinearSpace
The domain of this functional, i.e., the set of elements to which this functional can be applied.
- linearbool, optional
If
True
, the functional is considered as linear.- grad_lipschitzfloat, optional
The Lipschitz constant of the gradient. Default:
nan
- space