Non-Linear Operators

This section contains non-linear operator classes which all derive directly from the abstract class Map.

Element-wise Operators

OpEWAbs

class NonLinOp.ElementWiseOp.OpEWAbs(sz)

Bases: Abstract.Map

Element-wise Modulus operator: compute the pointwise complex modulus

Parameters:

sz – input size

All attributes of parent class Map are inherited.

Example Mod = OpEWAbs(sz)

See also Map

apply_(~, x)

Reimplemented from parent class Map.

applyJacobianT_(~, y, v)

Reimplemented from parent class Map.

OpEWfunc

class NonLinOp.ElementWiseOp.OpEWfunc(sz, func, func_grad, func_inv)

Bases: Abstract.Map

Element-wise function operator: compute the point-wise function of the input

Parameters:
  • sz – input size

  • func – the function to apply element-wise

  • func_grad – the derivative of the function to apply element-wise (default: non differentiable)

  • func_inv – the inverse of the function to apply element-wise (default: non invertible)

All attributes of parent class Map are inherited.

Example Mod = OpEWfunc(sz, func, func_grad, func_inv)

See also Map

apply_(this, x)

Reimplemented from parent class Map.

applyJacobianT_(this, y, v)

Reimplemented from parent class Map.

applyInverse_(this, y)

Reimplemented from parent class Map.

OpEWInverse

class NonLinOp.ElementWiseOp.OpEWInverse(sz)

Bases: Abstract.Map

Element-wise Inverse operator: compute the pointwise inverse $$[\mathrm{H}(x)]_k = \frac{1}{x_k} $$

Parameters:

sz – input size

All attributes of parent class Map are inherited.

Example H=OpEWInverse(sz)

See also Map

apply_(this, x)

Reimplemented from parent class Map.

applyJacobianT_(this, y, v)

Reimplemented from parent class Map.

OpEWSqrt

class NonLinOp.ElementWiseOp.OpEWSqrt(sz)

Bases: Abstract.Map

Element-wise square root operator: $$[\mathrm{H}(x)]_k = \sqrt{(x_k)} $$

Parameters:

sz – input size

All attributes of parent class Map are inherited.

Example H=OpEWSquareRoot(sz)

See also Map

apply_(this, x)

Reimplemented from parent class Map.

applyJacobianT_(this, y, v)

Reimplemented from parent class Map.

OpEWSquaredMagnitude

class NonLinOp.ElementWiseOp.OpEWSquaredMagnitude(sz)

Bases: Abstract.Map

Element-wise SquaredMagnitude operator: compute the pointwise N power magnitude $$[\mathrm{H}(x)]_k = \vert x_k \vert^2 $$

Parameters:

sz – input size

All attributes of parent class Map are inherited.

Example H= OpEWSquaredMagnitude(sz)

See also Map

apply_(this, x)

Reimplemented from parent class Map.

applyJacobianT_(this, y, v)

Reimplemented from parent class Map.