UtoX {mistral} | R Documentation |
Iso-probabilistic transformation from U space to X space
Description
UtoX
performs as iso-probabilistic transformation from standardized space (U) to physical space (X) according to the NATAF transformation, which requires only to know the means, the standard deviations, the correlation matrix and the marginal distributions of Xi.
In standard space, all random variables are uncorrelated standard normal distributed variables whereas they are correlated and defined using the following distribution functions: Normal (or Gaussian), Lognormal, Uniform, Gumbel, Weibull and Gamma.
Usage
UtoX(U, input.margin, L0)
Arguments
U |
a matrix containing the realisation of all random variables in U-space |
input.margin |
A list containing one or more list defining the marginal distribution functions of all random variables to be used |
L0 |
the lower matrix of the Cholesky decomposition of correlation matrix R0 (result of |
Details
Supported distributions are :
NORMAL: distribution, defined by its mean and standard deviation
LOGNORMAL: distribution, defined by its internal parameters P1=meanlog and P2=sdlog (
plnorm
)UNIFORM: distribution, defined by its internal parameters P1=min and P2=max (
punif
)GUMBEL: distribution, defined by its internal parameters P1 and P2
WEIBULL: distribution, defined by its internal parameters P1=shape and P2=scale (
pweibull
)GAMMA: distribution, defined by its internal parameters P1=shape and P2=scale (
pgamma
)BETA: distribution, defined by its internal parameters P1=shape1 and P2=shapze2 (
pbeta
)
Value
X |
a matrix containing the realisation of all random variables in X-space |
Author(s)
gilles DEFAUX, gilles.defaux@cea.fr
References
M. Lemaire, A. Chateauneuf and J. Mitteau. Structural reliability, Wiley Online Library, 2009
V. Dubourg, Meta-modeles adaptatifs pour l'analyse de fiabilite et l'optimisation sous containte fiabiliste, PhD Thesis, Universite Blaise Pascal - Clermont II,2011
See Also
ModifCorrMatrix
, ComputeDistributionParameter
Examples
Dim = 2
distX1 <- list(type='Norm', MEAN=0.0, STD=1.0, P1=NULL, P2=NULL, NAME='X1')
distX2 <- list(type='Norm', MEAN=0.0, STD=1.0, P1=NULL, P2=NULL, NAME='X2')
input.margin <- list(distX1,distX2)
input.Rho <- matrix( c(1.0, 0.5,
0.5, 1.0),nrow=Dim)
input.R0 <- ModifCorrMatrix(input.Rho)
L0 <- t(chol(input.R0))
lsf = function(U) {
X <- UtoX(U, input.margin, L0)
G <- 5.0 - 0.2*(X[1,]-X[2,])^2.0 - (X[1,]+X[2,])/sqrt(2.0)
return(G)
}
u0 <- as.matrix(c(1.0,-0.5))
lsf(u0)