IndicatorGroupL1UnitBall

class odl.solvers.functional.default_functionals.IndicatorGroupL1UnitBall(*args, **kwargs)[source]

Bases: odl.solvers.functional.functional.Functional

The convex conjugate to the mixed L1–Lp norm on ProductSpace.

See also

GroupL1Norm
Attributes
adjoint

Adjoint of this operator (abstract).

convex_conj

Convex conjugate functional of IndicatorLpUnitBall.

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 a Field.

is_linear

True if this operator is linear.

proximal

Return the proximal factory of the functional.

range

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

Methods

_call(self, x)

Return self(x).

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, vfspace, exponent=None)[source]

Initialize a new instance.

Parameters
vfspaceProductSpace

Space of vector fields on which the operator acts. It has to be a product space of identical spaces, i.e. a power space.

exponentnon-zero float, optional

Exponent of the norm in each point. Values between 0 and 1 are currently not supported due to numerical instability. Infinity gives the supremum norm. Default: vfspace.exponent, usually 2.

Examples

>>> space = odl.rn(2)
>>> pspace = odl.ProductSpace(space, 2)
>>> op = IndicatorGroupL1UnitBall(pspace)
>>> op([[0.1, 0.5], [0.2, 0.3]])
0
>>> op([[3, 3], [4, 4]])
inf

Set exponent of inner (p) norm:

>>> op2 = IndicatorGroupL1UnitBall(pspace, exponent=1)