proxtoolbox.ProxOperators

Created on Thu Jan 28 14:02:02 2016

@author: rebecca

The “ProxOperators”-module contains all proximal operators that are already implemented in the ProxToolbox.

class proxtoolbox.ProxOperators.P_diag(config)[source]

Bases: proxtoolbox.ProxOperators.proxoperators.ProxOperator

Projection onto the diagonal of a product space

Initialization

Parameters:
config : dict - Dictionary containing the problem configuration. It must contain the following mappings:
‘Nx’: int

Row-dim of the product space elements

‘Ny’: int

Column-dim of the product space elements

‘Nz’: int

Depth-dim of the product space elements

‘dim’: int

Size of the product space

work(u)[source]

Projects the input data onto the diagonal of the product space given by its dimensions.

class proxtoolbox.ProxOperators.P_parallel(config)[source]

Bases: proxtoolbox.ProxOperators.proxoperators.ProxOperator

Projection onto the diagonal of a product space

Initialization

Parameters:
config : dict - Dictionary containing the problem configuration. It must contain the following mappings:
‘Nx’: int

Row-dim of the product space elements

‘Ny’: int

Column-dim of the product space elements

‘Nz’: int

Depth-dim of the product space elements

‘dim’: int

Size of the product space

‘projs’: sequence of ProxOperator

Sequence of prox operators to be used. (The classes, no instances)

work(u)[source]

Sequentially applies the projections of ‘self.proj’ to the input data.

Parameters:
u : array_like - Input
Returns:
u_parallel : array_like - Projection
proxtoolbox.ProxOperators.magproj(u, constr)[source]

Projection operator onto a magnitude constraint

Parameters:
u : array_like - The function to be projected onto constr (can be complex)
constr : array_like - A nonnegative array that is the magnitude constraint
Returns:
array_like - The projection
proxtoolbox.ProxOperators.bregProj(args)[source]

Bregman projection operator onto a hyperplane given defined by all x such that u*x=a.

The bregman projection is to the standard bregman function ||.||**p

Parameters:
args : dict - The dictionary containing all of the below
u : array_like - The orthogonal vector defining the hyperplane
a : value - The offset needed to define the hyperplane
p : value - The parameter needed to define the bregman function
x : array_like - The point which we want to project onto the hyperplane
method : function- The rootfinding algorithm
norm : function - The underlying norm
Returns
——-
array_like - The projection