space_weighting

odl.space_weighting(impl: str, device='cpu', **kwargs)
Notes:

To instantiate a weigthing, one can use a variety of mutually exclusive parameters 1) inner (callable): the inner product between two elements of the space 2) norm (callable): the norm of an element of the space

-> sqrt(inner(x,x).real)

  1. dist (callable): the distance between two elements of the space

    -> norm(x1-x2)

  2. weight (float | ArrayLike): Scalar or element-wise weighting of the space elements

In case a weight was provided, additionally the following is supported: 4A) exponent (float): exponent of the summands in the norm, used for Banach spaces like L¹ If the exponent is 2, the weight is then used for defining an inner product and the other operations, whereas for other exponents only the norm and distance are enabled.

For a custom inner-product space, the exponent must be 2 (the default). The inner product also implies a norm and distance then. A custom norm defines a distance but will disable the inner product. A custom distance disables all other operations.