Reference of the structure array seti

Descriptions of fields of structure array seti.

Contents

More About this file

%%%%%

setInput: Input Arguments

All fields are set automatically, if they does not exist:

setInput: Output Arguments

%%%%%

setInput:dirMake: Input Arguments

seti : structural array

The following fields can be set by user (otherwise set default values):

See setInput.html for the following fields (they can be defined by user too):

setInput:dirMake: Output Arguments

Several fields in seti, if they was not set as input argument; see above.

%%%%%

setData: Input Arguments

We only mention explictly the input arguments to deal with experimentally measured data from Institute Fresnel.

The following parameters can be set by user only in case of seti.expData = 'fresnel'

For further details see loadData.html and matchIncField.html.

setData: Output Arguments

For the following output arguments see setGeomSim.html:

For the following output arguments see Subfunction setFigureSettings in setGeomSim.html:

Can be set by user (otherwise default is set):

For the following output arguments see setGrid.html:

Can be set by user (otherwise default is set):

Are set automatically:

For the following output arguments see setReshapeVecMat.html:

Are set automatically:

For the following output arguments see setGridScale.html:

Can be set by user (otherwise default is set):

Are set automatically:

For the following output arguments see setIdImagReal.html:

Are set automatically:

For the following output arguments see setKernel.html:

Can be set by user (otherwise default is set):

Are set automatically:

For the following output arguments see expSetup.html:

Can be set by user (otherwise default is set):

Are set automatically:

For the following output arguments see setContrast.html:

Can be set by user (otherwise default is set):

Are set automatically:

For the following output argument see setGeomSim.html:

Note that seti.mCD unequal 0 is not supported in public version.

Can be set by user (otherwise default is set):

For the following output arguments see addNoise.html:

Can be set by user (otherwise default is set):

The following output arguments are set in setData (this function):

Can be set by user (otherwise default is set):

Are set automatically:

%%%%%

setData: checkConsisExpData: Input Arguments

The following input arguments can be set by user, otherwise default values are set (in case of seti.expData = 'fresnel'):

setData:checkConsisExpData: Output Arguments

In case of seti.expData = 'fresnel' the output arguments of seti are

Additional fields of seti may set, if they was not set by the user (see Input Arguments).

%%%%%

setData:loadData: Input Arguments

The input arguments are the input and output arguments of checkConsisExpData in case of seti.expData = 'fresnel', i.e.:

Optional Input Arguments

setData:loadData: Output Arguments

Most important output arguments, i.e. fields in structure array seti.

%%%%%

setData:loadData:matchIncField: Input Arguments

setData:loadData:matchIncField: Output Arguments

No fields of seti.

%%%%%

setData:setGeomSim: Input Arguments

setData:setGeomSim: Output Arguments

Following parameters can be set by user (otherwise default is set):

Subfunction: setFigureSettings

Following parameters can be set by user (otherwise default is set):

%%%%%

setData:setGeomSim: setGrid: Input Arguments

If input arguments are not set, default values will be used.

setData:setGeomSim: setGrid: Output Arguments

%%%%%

setData:setGeomSim:setReshapeVecMat: Input Arguments

setData:setGeomSim:setReshapeVecMat: Output Arguments

%%%%%

setData:setGeomSim:setGridScale: Input Arguments

If the fields was not defined, default values are set.

setData:setGeomSim:setGridScale: Output Arguments

%%%%%

setData:setGeomSim:setIdImagReal: Input Arguments

setData:setGeomSim:setIdImagReal: Output Arguments

%%%%%

setData:setGeomSim:setKernel: Input Arguments

This arguments was set in rebis before setKernel is called:

Can be set by user (otherwise default is set):

setData:setGeomSim:setKernel: Output Arguments

%%%%%

setData:setGeomSim:expSetup: Input Arguments

Input Arguments

Several fields in seti are required. Because this is an internal function we do not list them.

Optional Input Arguments to differ from default values

For details of the the following fields look inside subfunction expSetupCons below and the functions setIncPnts.html, setMeasPnts.html, pntsGeometry.html and pntsGeometry3D.html:

setData:setGeomSim:expSetup: Output Arguments

The following fields in seti are defined. Look in documentation of corresponding functions and subfunctions (subfunctions are in the Section Code).

For details of the the following fields see the functions setIncPnts.html, setMeasPnts.html, pntsGeometry.html:

Further details of the following parameter are in setIncField.html:

Further details of the following parameter are in seMeasKer.html:

%%%%%

setData:setGeomSim:expSetup:setIncPnts: Input Arguments

Input Arguments in case of 2D (seti.dim = 2) and point sources (seti.incType = 'pointSource')

It follows a list of type-depending input parameters to describe the details of the geometry. The names are analog to the parameters in pntsGeometry.html (mostly with the prefix inc and a big letter, exceptions are marked with emphasized). Examples are in pntsGeometry.html. If these parameters are not set, default values are set automatically (see inside the code).

varargin in case of seti.incPntsType = 'manually'

varargin in case of seti.incPntsType = 'circle'

varargin in case of seti.incPntsType = 'square'

varargin in case of seti.incPntsType = 'line'

varargin in case of seti.incPntsType = 'borehole'

Input Arguments in case of 3D (seti.dim = 3)

It follows a list of type-depending input parameters to describe the details of the geometry. The names are analog to the parameters in pntsGeometry3D.html (mostly with the prefix inc and a big letter, exceptions are marked with emphasized). Examples are in pntsGeometry3D.html. If these parameters are not set, default values are set automatically (see inside the code).

varargin in case of seti.incPntsType = 'manually'

varargin in case of seti.incPntsType = 'sphereLatLon' or 'sphereFibo'

setData:setGeomSim:expSetup:setIncPnts: Output Arguments

For further information see the corresponding parameters Pnts, Nb, and dS in pntsGeometry.html and pntsGeometry3D.html.

%%%%%

setData:setGeomSim:setMeasPnts: Input Arguments

Input Arguments in case of 2D (seti.dim = 2) and near field (seti.incType = 'nearField')

It follows a list of type-depending input parameters to describe the details of the geometry. The names are analog to the parameters in pntsGeometry.html (mostly with the prefix meas and a big letter, exceptions are marked with emphasized). Examples are in pntsGeometry.html. If these parameters are not set, default values are set automatically (see inside the code).

varargin in case of seti.measPntsType = 'manually'

varargin in case of seti.measPntsType = 'circle'

varargin in case of seti.measPntsType = 'square'

varargin in case of seti.measPntsType = 'line'

varargin in case of seti.measPntsType = 'borehole'

Note: Option 'borehole' is only useful if seti.incPntsType is also 'borhole'.

Input Arguments in case of 3D (seti.dim = 3)

It follows a list of type-depending input parameters to describe the details of the geometry. The names are analog to the parameters in pntsGeometry3D.html (mostly with the prefix meas and a big letter, exceptions are marked with emphasized). Examples are in pntsGeometry3D.html. If these parameters are not set, default values are set automatically (see inside the code).

varargin in case of seti.measPntsType = 'manually'

varargin in case of seti.measPntsType = 'sphereLatLon' or 'sphereFibo'

setData:setGeomSim:setMeasPnts: Output Arguments

For further information see the corresponding parameters Pnts, Nb, and dS in pntsGeometry.html and pntsGeometry3D.html.

%%%%%

setData:setGeomSim:setIncField: Input Arguments

setData:setGeomSim:setIncField: Output Arguments

%%%%%

setData:setGeomSim:setMeasKer: Input Arguments

setData:setGeomSim:setMeasKer: Output Arguments

%%%%%

setData:setGeomSim:setContrast: Input Arguments

setData:setGeomSim:setContrast: Output Arguments

%%%%%

setData:mimo: Input Arguments

struct seti

As in convenience functions adjOfDer.html, forward.html and derivative.html all necessary fields (and more) are set by

seti = setGeomSim(seti);

A list of all necessary (and not more) fields is below.

seti in setGeomSim.html:

seti in setGrid.html:

seti in setKernel.html:

seti in expSetup.html (subfiles pntsGeometry.html, setIncField.html, setMeasKer.html):

setData:mimo: Output Arguments

No output fields of seti.

%%%%%

setData:addNoise: Input Arguments

The following field of the structure array is required:

The following fields of the structure array are optional (otherwise default values are set):

setData:addNoise: Output Arguments

If the fields delta, whichNoise, and seed of seti was not set, default values are set.

%%%%%

setRecon: Input Arguments

setRecon: Output Arguments

The added fields in seti can be found in the called functions

%%%%%

setRecon:setInvType: Input Arguments

Optional Input Arguments of structure seti

If the fields does not exist, default values are set in this function.

setRecon:setInvType: Output Arguments

Note: p ~= pNorm in general! (but: in case of inv = 'shrinkage': pNorm and qNorm are used as exponents too.)

%%%%%

setRecon: checkConsisRec: Input Arguments

Optional Input Arguments of structure seti

If the fields does not exist, default values are set in this function.

If the primal-dual algorithm is used (|seti.inv = 'pda') and the following fields does not exist, default values are set in this function.

In case of seti.inv = 'pda' and seti.useTolIn = 1 and the following fields does not exist, default values are set in this function.

In case of seti.inv = 'pda' and seti.useTolOut = 1 and the following fields does not exist, default values are set in this function.

The following fields should have been set in setInvType.html:

See recon.html for the following fields of seti:

Currently unused fields:

setRecon:checkConsisRec: Output Argument

%%%%%

setRecon:shrinkFuncs: Input Arguments

setRecon:shrinkFuncs: Output Arguments

%%%%%

setRecon:setFuncsPda: Input Arguments

setRecon:setFuncsPda: Output Arguments

For the fields of the structrual array seti see the section "More About".

--- More About ---

We only give a overview of the functions. See also pda.html. Detailed information are in Section 4.5 in [1].

Note that grid scaling is respected in the code, but for simplicitiy is not presented in the formulas.

Auxiliary quantities

For $\texttt{seti.S} = T_{\bf{C}\to\bf{R}^2}$ and $\texttt{seti.T} = T_{\bf{R}^2\to\bf{C}}$, see "More About" in pda.html.

Note that the names Kg and vg were choosen because the appearance of the gradient.

Parts of functional to minimize

Note that $\delta_{[a,b,c,d]}(x)$ is a indicator function, i.e. is 0, if all entries of the vector $\mathrm{real}(x)$ are between $a$ and $b$ and all entries of the vector $\mathrm{imag}(x)$ are between $c$ and $d$; and is $\infty$, otherwise.

Definition of parts of Tikhonov functional

The Tikhonov functional is MT = M1 + M2. Function $F$ is $M_1$, function $G$ is $M_2$ (with $F$ and $G$ from PDA) This is done in function minPda (minPda.html) when function pda (pda.html) is called.

Further comments (especially interesting in not public version)

%%%%%

recon: Input Arguments

Because this is a internal function we do not explain all fields in seti.

Further specific input parameters for primal-dual algorithm can be found in minPda.html and pda.html.

Optional Input Argument

recon: Output Arguments

Because this is a internal function we do not explain all fields in seti.

Discrepancy, error, and difference

Note that seti.dis(iOut) is the relative discrepancy after iteration iOut. (Analog seti.err(iOut) and seti.dif(iOut).)

Minimized Tikhonov functional

More about M1v and M2v

structure array pdas

Further output arguments

%%%%%

recon: subplots: Input Arguments

Specific fields in seti influencing the figures are described in setGeomSim.html in the section "Subfunction: setFigureSettings".

recon: subplots: Output Arguments

Output is figure 11 as described in description and in section "Output: Figures" in start.html.

%%%%%

recon: plotAndSaveFigures: Input Arguments

Specific fields in seti influencing the figures are described in setGeomSim.html in the section "Subfunction: setFigureSettings".

The most important fields for this function in seti are:

Further details of this fields are described in recon.html.

recon: plotAndSaveFigures: Output Arguments

Plots, see start.html.

Note that figure 11 is plotted in subplots.html, but saved in this file.

%%%%%

recon: pdaPlot: Input Arguments

Specific fields in seti influencing the figures are described in setGeomSim.html in the section "Subfunction: setFigureSettings".

recon: pdaPlot: Output Arguments

Figures are plotted and saved, see start.html

%%%%%

recon: minPda: Input Arguments

Specific input arguments for primal-dual algorithm are described in pda.html.

structure array pdas

recon: minPda: Output Arguments

%%%%%

recon: minPda: minTolIn: Input Arguments

Parameters for inner tolerance, see Section "More About". We give values of parameters, which worked fine.

Other parameters in struct seti:

recon: minPda: minTolIn: Output Arguments

No fields of struct seti as output.

%%%%%

recon: minPda: minTolOut: Input Arguments

recon: minPda: minTolOut: Output Arguments

No fields of struct seti.

%%%%%

recon: minPda: pda: Input Arguments

Most important input arguments (there are more...)

Some of the fields in struct seti

Note that several fields in struct seti are necessary to run pda.

The routine pda is an internal one that needs the specific environment created in the package.

recon: minPda: pda: Output Arguments

No fields of struct seti.

%%%%%