fast99 {sensitivity} R Documentation

## Extended Fourier Amplitude Sensitivity Test

### Description

`fast99` implements the so-called "extended-FAST" method (Saltelli et al. 1999). This method allows the estimation of first order and total Sobol' indices for all the factors (alltogether 2p indices, where p is the number of factors) at a total cost of n * p simulations.

### Usage

```fast99(model = NULL, factors, n, M = 4, omega = NULL,
q = NULL, q.arg = NULL, ...)
## S3 method for class 'fast99':
tell(x, y = NULL, ...)
## S3 method for class 'fast99':
print(x, ...)
## S3 method for class 'fast99':
plot(x, ylim = c(0, 1), ...)
```

### Arguments

 `model` a function, or a model with a `predict` method, defining the model to analyze. `factors` an integer giving the number of factors, or a vector of character strings giving their names. `n` an integer giving the sample size, i.e. the length of the discretization of the s-space (see Cukier et al.). `M` an integer specifying the interference parameter, i.e. the number of harmonics to sum in the Fourier series decomposition (see Cukier et al.). `omega` a vector giving the set of frequencies, one frequency for each factor (see details below). `q` a vector of quantile functions names corresponding to wanted factors distributions (see details below). `q.arg` a list of quantile functions parameters (see details below). `x` a list of class `"fast99"` storing the state of the sensitivity study (parameters, data, estimates). `y` a vector of model responses. `ylim` y-coordinate plotting limits. `...` any other arguments for `model` which are passed unchanged each time it is called.

### Details

If not given, the set of frequencies `omega` is taken from Saltelli et al. The first frequency of the vector `omega` is assigned to each factor X_i in turn (corresponding to the estimation of Sobol' indices S_i and ST_i), other frequencies being assigned to the remaining factors.

If the arguments `q` and `q.args` are not given, the factors are taken uniformly distributed on [0,1]. The argument `q` must be list of character strings, giving the names of the quantile functions (one for each factor), such as `qunif`, `qnorm`... It can also be a single character string, meaning same distribution for all. The argument `q.arg` must be a list of lists, each one being additional parameters for the corresponding quantile function. For example, the parameters of the quantile function `qunif` could be `list(min=1, max=2)`, giving an uniform distribution on [1,2]. If `q` is a single character string, then `q.arg` must be a single list (rather than a list of one list).

### Value

`fast99` returns a list of class `"fast99"`, containing all the input arguments detailed before, plus the following components:

 `call` the matched call. `X` a `data.frame` containing the factors sample values. `y` a vector of model responses. `V` the estimation of variance. `D1` the estimations of Variances of the Conditional Expectations (VCE) with respect to each factor. `Dt` the estimations of VCE with respect to each factor complementary set of factors ("all but Xi").

### References

A. Saltelli, S. Tarantola and K. Chan, 1999, A quantitative, model independent method for global sensitivity analysis of model output, Technometrics, 41, 39–56.

R. I. Cukier, H. B. Levine and K. E. Schuler, 1978, Nonlinear sensitivity analysis of multiparameter model systems. J. Comput. Phys., 26, 1–42.

`decoupling`
```# Test case : the non-monotonic Ishigami function