Learn R Programming

sensitivity (version 1.10.1)

PoincareConstant: Poincare constants for Derivative-based Global Sensitivity Measures (DGSM)

Description

A DGSM is the product between a Poincare Constant (Roustant et al., 2014) and the integral (over the space domain of the input variables) of the squared derivatives of the model output with respect to one input variable. The DGSM is a maximal bound of the total Sobol' index corresponding to the same input (Lamboni et al., 2013). This DGSM depends on the type of probability distribution of the input variable. In the particular case of log-concave distribution, analytical formulas are available by the way of the median value (Lamboni et al., 2013). For truncated log-concave distributions, different formulas are available (Roustant et al., 2014). For general non-truncated distributions (including the non log-concave case), the Poincare constant is computed via a relatively simple optimization process (Lamboni et al., 2013). IMPORTANT: This program is useless for the two following input variable distributions:
  • uniform on$[min,max]$interval: The optimal Poincare constant is$\frac{(max-min)^2}{pi^2}$.
  • normal with a standard deviation$sd$: The optimal Poincare constant is$sd^2$.

Usage

PoincareConstant(densityfct=dnorm, qfct=qnorm, cdfct,
                 truncated=FALSE, min=0, max=1, 
                 logconcave=TRUE, optimize.interval=c(-100, 100), ...)

Arguments

densityfct
the probability density function of the input variable
qfct
the quantile function of the input variable
cdfct
the distribution function of the input variable
truncated
logical value: TRUE for a truncated distribution. Default value is FALSE
min
the minimal bound in the case of a truncated distribution
max
the maximal bound in the case of a truncated distribution
logconcave
logical value: TRUE (default value) for a log-concave distribution
optimize.interval
In the non-log concave case, a vector containing the end-points of the interval to be searched for the maximum of the function to be optimized
...
additional arguments

Value

  • PoincareConstant returns the value of the Poincare constant.

References

O. Roustant, J. Fruth, B. Iooss and S. Kuhnt, Crossed-derivative-based sensitivity measures for interaction screening, Mathematics and Computers in Simulation, 105:105-118, 2014. M. Lamboni, B. Iooss, A-L. Popelin and F. Gamboa, Derivative-based global sensitivity measures: General links with Sobol' indices and numerical tests, Mathematics and Computers in Simulation, 87:45-54, 2013.

Examples

Run this code
# Exponential law (log-concave)
PoincareConstant(dexp,qexp,rate=1)

# Weibull law (non log-concave)
PoincareConstant(dweibull,cdfct=pweibull, logconcave=FALSE, 
optimize.interval=c(0, 15), shape=1, scale=1)

# Triangular law (log-concave)
library(triangle)
PoincareConstant(dtriangle, qtriangle, a=49, b=51, c=50)

# Truncated Gumbel law (log-concave)
library(evd)
PoincareConstant(dgumbel, qgumbel, pgumbel, truncated=TRUE, 
min=500, max=3000, loc=1013.0, scale=558.0)

Run the code above in your browser using DataLab