How to do the sensitivity analysis of a vector variable

Hello! is it possible to perform the sensitivity analysis then the reliability of a model with a vector variable as input. in fact i want to do the analysis of a finite element model on external software and one of my variables is the load. In my case it is a cyclic loading and in the model used the loading is in the form of a vector (1xN with N the number of cycles). Thank you for your help


This is indeed not as simple as with a scalar output.

However, one possibility is to aggregate the sensitivity indices of all outputs.
This is advocated in Gamboa, F., Janon, A., Klein, T. & Lagnoux, “A. Sensitivity analysis for multidimensional and functional outputs.” 2013. The trick is to sum the variances of the conditional expectations and scale with respect to the sum of variances.

Assume that there are n_X inputs and n_Y outputs. Denote by Y_k the k-th output, for k=1,\ldots, n_Y. Let V_i^{(k)} be the (first order) variance of the conditional expectation of the k-th output with respect to the i-th input, for i=1,\ldots, n_X and k=1,\ldots, n_Y. Then the aggregate first order Sobol’ indice is:

S_i = \frac{\sum_{k=1}^{n_Y} V_i^{(k)}}{\sum_{k=1}^{n_Y} Var(Y_k)}

for i=1,\ldots, n_X.

This is explained in Gamboa et al’s article and in:

Best regards,


Hello! sorry for the delay; it is true that it is quite complex even to understand. Please don’t you have an example code for this?
happy end of year party!

1 Like

I think you can find a complete example of sample-based algorithms for sensitivity analysis here:
In order to get the aggregated indices, you just have to replace getFirstOrderIndices in the example with getAggregatedFirstOrderIndices, and that’s done. The maths remains complicated, but the code does not :slight_smile:
Notice that I fixed some details in the example for you at:

This should be integrated within a few weeks.
Best regards,
I did not notice your answer: I configure the e-mail remainder as soon as I push on the “Reply” button!