Learn R Programming

sensitivity (version 1.2)

fast: Fourier Amplitude Sensitivity Test

Description

fast is the implementation of the Fourier Amplitude Sensitivity Test. This function computes the following non-linear indices of sensitivity: first-order indices and total indices.

Usage

fast(model = NULL, factors, n, M = 4,
     G = "uniform", min = 0, max = 1, omega = NULL, ...)
## S3 method for class 'fast':
compute(sa, y = NULL)

Arguments

model
the model.
factors
the number of factors, or their names.
n
the length of the discretization of the s-space.
M
the number of harmonics to sum.
G
the space transformation.
min
the minimum values for the factors (uniform distribution).
max
the maximum values for the factors (uniform distribution).
omega
the set of frequencies.
sa
the sensitivity analysis object.
y
the response.
...
any other arguments for model which are passed unchanged each time it is called.

Value

  • fast returns an object of class "fast". An object of class "fast" is a list containing the following components:
  • modelthe model.
  • Mthe number of harmonics to sum.
  • sthe discretisation of the s-space.
  • omegathe set of frequencies.
  • xthe factor sample.
  • ythe response.
  • Sthe estimations of the first-order indices.
  • Stthe estimations of the total indices.
  • callthe matched call.

Details

model is a function or a predictor (a class with a predict method) computing the response y based on the sample given by x. If no model is specified, the indices will be computed when one gives the response.

The space transformation G is the function such that: $$x_i = G_i(\mathrm{sin}(\omega_i s))$$ It must be a function of two parameters (G <- function(i, x) ...). If the string "uniform" is given, then the function is the best one for uniform factors on the range $[a_i, b_i]$: $$G_i(x) = a_i + (b_i-a_i) \times \left( \frac{1}{2} + \frac{1}{\pi} \mathrm{asin}(x) \right)$$ where $a_i$ and $b_i$ are the boundaries given by the arguments min and max. min and max can be single values (the same for each factor) or vectors.

If the set of frequencies omega is not given, the function use the set recommended by Saltelli (the so-called extended-FAST). The first frequency is the greater, corresponding to the index of interest, and the other correspond to the complementary set.

References

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

Saltelli, A., Chan, K. and Scott, E. M., 2000, Sensitivity analysis. Wiley.

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

See Also

sensitivity compute

Examples

Run this code
# Test case : the non-monotonic Sobol g-function

sa <- fast(model = sobol.fun, factors = 8, n = 1000)
print(sa)
plot(sa)

Run the code above in your browser using DataLab