PointwiseTensorFieldOperator

class odl.core.operator.tensor_ops.PointwiseTensorFieldOperator(*args, **kwargs)[source]

Bases: Operator

Abstract operator for point-wise tensor field manipulations.

A point-wise operator acts on a space of vector or tensor fields, i.e. a power space X^d of a discretized function space X. Its range is the power space X^k with a possibly different number k of components. For k == 1, the base space X can be used instead.

For example, if X is a DiscretizedSpace space, then ProductSpace(X, d) is a valid domain for any positive integer d. It is also possible to have tensor fields over tensor fields, i.e. ProductSpace(ProductSpace(X, n), m).

Note

It is allowed that domain, range and base_space use different dtype. Correctness for, e.g., real-to-complex mappings is not guaranteed in that case.

See Also

odl.core.space.pspace.ProductSpace

__init__(domain, range, base_space, linear=False)[source]

Initialize a new instance.

Parameters

domain, range{ProductSpace, LinearSpace}

Spaces of vector fields between which the operator maps. They have to be either power spaces of the same base space X (up to dtype), or the base space itself. Empty product spaces are not allowed.

base_spaceLinearSpace

The base space X.

linearbool, optional

If True, assume that the operator is linear.