decoupling {sensitivity} | R Documentation |
tell
and ask
are S3 generic methods for decoupling
simulations and sensitivity measures estimations. In general, they are
not used by the end-user for a simple R model, but rather for an
external computational code. Most of the sensitivity analyses objects
of this package overload tell
, whereas ask
is overloaded
for iterative methods only.
extract
is used as a post-treatment of a sobolshap_knn
object
tell(x, y = NULL, ...)
ask(x, ...)
extract(x, ...)
x |
a typed list storing the state of the sensitivity study
(parameters, data, estimates), as returned by sensitivity analyses
objects constructors, such as |
y |
a vector of model responses. |
... |
additional arguments, depending on the method used. |
When a sensitivity analysis method is called with no model
(i.e. argument model = NULL
), it generates an incomplete object
x
that stores the design of experiments (field X
),
allowing the user to launch "by hand" the corresponding
simulations. The method tell
allows to pass these simulation
results to the incomplete object x
, thereafter estimating the
sensitivity measures.
The extract
method is useful if in a first step the Shapley effects
have been computed and thus sensitivity indices for all possible subsets
are available. The resulting sobolshap_knn
object can be
post-treated by extract
to get first-order and total Sobol indices
very easily.
When the method is iterative, the data to simulate are not stored in
the sensitivity analysis object x
, but generated at each
iteration with the ask
method; see for example
sb
.
tell
doesn't return anything. It computes the sensitivity
measures, and stores them in the list x
.
Side effect: tell
modifies its argument x
.
ask
returns the set of data to simulate.
extract
returns an object, from a sobolshap_knn
object,
containing first-order and total Sobol indices.
Gilles Pujol and Bertrand Iooss
# Example of use of fast99 with "model = NULL"
x <- fast99(model = NULL, factors = 3, n = 1000,
q = "qunif", q.arg = list(min = -pi, max = pi))
y <- ishigami.fun(x$X)
tell(x, y)
print(x)
plot(x)