Computation of sensitivity indexes by using a method based on a truncated Polynomial Chaos Expansion of the response and regression PLS, for computer models with correlated continuous inputs, whatever the input distribution. The truncated Polynomial Chaos Expansion is built from the multivariate Legendre orthogonal polynomials. The number of runs (rows) can be smaller than the number of monomials. It is possible to select only the most significant monomials. Of course, this package can also be used if the inputs are independent. Note that, when they are independent and uniformly distributed, the package 'polychaosbasics' is more appropriate.
The Legendre chaos polynomials are calculated, either on a
user provided dataset by function
or on a simulated LHS by function
PLS-PCE sensitivity indexes and some other
A. Bouvier [aut], J.-P. Gauchi [cre], A. Bensadoun [ctb]
Maintainer: Annie Bouvier <firstname.lastname@example.org>
Metamodeling and global sensitivity analysis for computer models with correlated inputs: a practical approach tested with a 3D light interception computer model. J.-P. Gauchi et al. In Environmental Modelling & Software, 2016, submitted.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
### First example: the dataset is simulated nlhs <- 200 # number of rows degree <- 6 # polynomial degree set.seed(42)# fix the seed for reproductible results # Generate data and calculate Legendre polynomials # Independent inputs; response calculated by the Ishigami function pce <- analyticsPolyLeg(nlhs, degree, 'ishigami') # Compute the PLS-PCE sensitivity indexes for ten components ret <- calcPLSPCE(pce, nc=10) # Plot the result ## Not run: plot(ret, pce) ### Second example: the dataset is provided and the ### most significant monomials are selected # Load the dataset load(system.file("extdata", "ishigami200.Rda", package="plspolychaos")) X <- ishi200[, -ncol(ishi200)] # inputs Y <- ishi200[, ncol(ishi200)] # output # Build Legendre polynomial with the 50 most significant monomials pce <- polyLeg(X, Y, degree=6, forward=50) # Compute the PLS-PCE sensitivity indexes ret <- calcPLSPCE(pce, nc=10) print(ret, all=TRUE)