## blackbox

This function is not yet fully documented. This is a transcript of
the text-formatted help.

blackbox Create a black-box operator
To create a new black-box operator use the following syntax:
BB=blackbox(A) Create from a Matlab matrix (sparse or full)
BB=blackbox(S) Create general black-box operator
BB=blackbox(BB) Pass a black-box operator
blackbox(A) and bbmatrix(A) do the same thing if A is a Matlab-matrix.
To ensure that BB is a black-box operator, use BB=blackbox(BB) which
creates an operator if necessary.
A black-box operator can be created from a struct, S, with the fields:
type: String describing the operator type
m, n: Dimensions of the operator
cplx: true: complex, false: real
f, fH: Function handles for functions that computes
A*x and A'*y
arg: Cell-array with arguments passed to f and fH.
Set arg={} if no arguments should be given.
list: A list of black-box operators passed after arg.
Set list={} of no sub-operators are used.
tau: Max. 2-norm of the difference between computed
and exact product when the input is a unit vector.
tauamp: A lower bound on the 2-norm. Technically it bounds the
2-norm of the perturbed output when the input
is perturbed by a unit vector.
mmsup: true: f and fH can compute matrix-matrix products
false: f and fH can only compute matrix-vector products
mmreq: true: sub-operators must compute matrix-matrix products
false: sub-operators need only compute matrix-vector products
simp: Handle to a function that simplifies a computation.
(S.arg and S.list are seperate to facilitate display and optimization.)
The quantity S.tau reflects the accuracy of the functions f and fH.
These bounds must be satisafied for all unit vectors x and y:
norm(A*x - f(x,...) ) <= tau
norm(A'*y - fH(y,...) ) <= tau
Note: if S.tau is unspecified, you may be unable to use iterative
routines (e.g. bbsvds). If S.tauamp is unspecified, then you may be
unable to use iterative routines of operators that use BB in
certain combinations (e.g. matrix- or kronecker products).
If you are unable to determine S.tau and S.tauamp analytically, then
they may be estimated using bbtauest.
See also bbmatrix, bbmult, bbtauest.

bbzerosisa