# getIneffDiff: Generic Function for the Computation of Inefficiency... In ROptEst: Optimally Robust Estimation

## Description

Generic function for the computation of inefficiency differencies. This function is rarely called directly. It is used to compute the radius minimax IC and the least favorable radius.

## Usage

 ```1 2 3 4 5 6 7 8``` ```getIneffDiff(radius, L2Fam, neighbor, risk, ...) ## S4 method for signature 'numeric,L2ParamFamily,UncondNeighborhood,asMSE' getIneffDiff( radius, L2Fam, neighbor, risk, loRad, upRad, loRisk, upRisk, z.start = NULL, A.start = NULL, upper.b = NULL, lower.b = NULL, OptOrIter = "iterate", MaxIter, eps, warn, loNorm = NULL, upNorm = NULL, verbose = NULL, ..., withRetIneff = FALSE) ```

## Arguments

 `radius` neighborhood radius. `L2Fam` L2-differentiable family of probability measures. `neighbor` object of class `"Neighborhood"`. `risk` object of class `"RiskType"`. `loRad` the lower end point of the interval to be searched. `upRad` the upper end point of the interval to be searched. `loRisk` the risk at the lower end point of the interval. `upRisk` the risk at the upper end point of the interval. `z.start` initial value for the centering constant. `A.start` initial value for the standardizing matrix. `upper.b` upper bound for the optimal clipping bound. `lower.b` lower bound for the optimal clipping bound. `OptOrIter` character; which method to be used for determining Lagrange multipliers `A` and `a`: if (partially) matched to `"optimize"`, `getLagrangeMultByOptim` is used; otherwise: by default, or if matched to `"iterate"` or to `"doubleiterate"`, `getLagrangeMultByIter` is used. More specifically, when using `getLagrangeMultByIter`, and if argument `risk` is of class `"asGRisk"`, by default and if matched to `"iterate"` we use only one (inner) iteration, if matched to `"doubleiterate"` we use up to `Maxiter` (inner) iterations. `MaxIter` the maximum number of iterations `eps` the desired accuracy (convergence tolerance). `warn` logical: print warnings. `loNorm` object of class `"NormType"`; used in selfstandardization to evaluate the bias of the current IC in the norm of the lower bound `upNorm` object of class `"NormType"`; used in selfstandardization to evaluate the bias of the current IC in the norm of the upper bound `verbose` logical: if `TRUE`, some messages are printed `...` further arguments to be passed on to `getInfRobIC` `withRetIneff` logical: if `TRUE`, `getIneffDiff` returns the vector of lower and upper inefficiency (components named "lo" and "up"), otherwise (default) the difference. The latter was used in `radiusMinimaxIC` up to version 0.8 for a call to `uniroot` directly. In order to speed up things (i.e., not to call the expensive `getInfRobIC` once again at the zero, up to version 0.8 we had some awkward `assign`-`sys.frame` construction to modify the caller writing the upper inefficiency already computed to the caller environment; having capsulated this into `try` from version 0.9 on, this became even more awkward, so from version 0.9 onwards, we instead use the `TRUE`-alternative when calling it from `radiusMinimaxIC`.

## Value

The inefficieny difference between the left and the right margin of a given radius interval is computed.

## Methods

radius = "numeric", L2Fam = "L2ParamFamily", neighbor = "UncondNeighborhood", risk = "asMSE":

computes difference of asymptotic MSEâ€“inefficiency for the boundaries of a given radius interval.

## Author(s)

Matthias Kohl Matthias.Kohl@stamats.de

## References

Rieder, H., Kohl, M. and Ruckdeschel, P. (2008) The Costs of not Knowing the Radius. Statistical Methods and Applications, 17(1) 13-40.

Rieder, H., Kohl, M. and Ruckdeschel, P. (2001) The Costs of not Knowing the Radius. Submitted. Appeared as discussion paper Nr. 81. SFB 373 (Quantification and Simulation of Economic Processes), Humboldt University, Berlin; also available under www.uni-bayreuth.de/departments/math/org/mathe7/RIEDER/pubs/RR.pdf

Kohl, M. (2005) Numerical Contributions to the Asymptotic Theory of Robustness. Bayreuth: Dissertation.

`radiusMinimaxIC`, `leastFavorableRadius`