u4.36.09 Opérateur DEFI_PROP_ALEA#
Syntaxe#
Détail de la syntaxe
formule = DEFI_PROP_ALEA(
◆ INIT_ALEA = int,
◆ MEDIANE = float,
◆ COEF_VARI = float,
◆ | LONG_CORR_X = float,
| LONG_CORR_Y = float,
| LONG_CORR_Z = float,
◇ / PRECISION = float,
/ NB_TERM = int,
# Si: exists('LONG_CORR_X')
◆ X_MINI = float,
◆ X_MAXI = float,
◆ NB_TERM_X = int,
# Si: exists('LONG_CORR_Y')
◆ Y_MINI = float,
◆ Y_MAXI = float,
◆ NB_TERM_Y = int,
# Si: exists('LONG_CORR_Z')
◆ Z_MINI = float,
◆ Z_MAXI = float,
◆ NB_TERM_Z = int,
)
◆ : obligatoire
◇ : optionnel
⟐ : présent par défaut
& : ensemble
/ : un seul parmi
| : plusieurs choix possibles
Opérandes#
Mot-clé INIT_ALEA#
♦ INIT_ALEA = ni [I]
Le mot-clé INIT_ALEA initialise le germe des suites aléatoires utilisées pour définir les champs aléatoires. Deux calculs consécutifs avec la même initialisation produisent alors le même résultat.
Mot-cléMEDIANE#
♦ MEDIANE = med [R]
Mot-clé pour définir la valeur médiane du champ aléatoire log-normal. En général, la valeur médiane est associée à la valeur best-estimate .
Mot-clé COEF_VARI#
♦ COEF_VARI = cov [R]
Mot-clé pour définir le coefficient de variation des champs aléatoires. Le coefficient de variation est défini comme le rapport entre l’écart-type et la moyenne du champ aléatoire. Dans le cas des champs de lois log-normales, l’écart-type logarithmique \(\beta ` est lié au coefficient de variation par la formule :math:\)mathit{cov}=sqrt{({exp}^{({beta}^{2})}-1)}` .
Mots-clés LONG_CORR_X, LONG_CORR_Y et LONG_CORR_Z#
♦| LONG_CORR_X = LcX [R]
| LONG_CORR_Y = LcY [R]
| LONG_CORR_Z = LcZ [R]
Mot-clé pour définir la longueur de corrélation des champs aléatoires selon la direction \(X\) (si renseigné).
La définition des longueurs de corrélation est celle de Vanmarcke: \({L}_{c}={\int}_{-\infty }^{+\infty }R(u)\mathit{du}\) où \(R(u)\) est la fonction de corrélation pour la variable \(u\) (ici: la distance selon la direction \(X\) ). La fonction de corrélation est une exponentielle simple \(R(u)={\exp}^{(-u/(0.5{L}_{c}))}\) selon chaque direction.
LONG_CORR_Y et LONG_CORR_Z sont analogues à ceux de LONG_CORR_X pour les directions \(Y\) et \(Z\) .
Mots-clésNB_TERM_X, X_MINI et X_MAXI#
Ces mots-clés sont obligatoires si LONG_CORR_X est renseigné.
♦ NB_TERM_X = Nx [I]
Le nombre de termes à retenir pour la décomposition de Karhunen-Loève selon la direction \(X\) . Le nombre de termes définit le nombre de fonction propres et donc les petites fluctuations du paramètre variable. Comme le champ aléatoire est généré sur des domaines unitaires \([0,1]\) , il faut choisir le nombre de termes par rapport la taille du domaine et la discrétisation. À défaut, il est recommandé de prendre Nbt égale à l’extension du domaine divisé par la taille de maille (ici (xmax-xmin)/dx).
♦ X_MINI = xmin [I]
La coordonnée min selon l’extension du domaine dans la direction \(X\) .
♦ X_MAXI = xmax [I]
La coordonnée max selon l’extension du domaine dans la direction \(X\) .
Les deux derniers mots-clés permettent de définir l’extension du domaine sur lequel on doit générer les champs aléatoires ( bounding volume ).
Mots-clésNB_TERM_Y, Y_MINIet Y_MAXI#
Ces mots-cléssont obligatoires si LONG_CORR_Yestrenseigné.
Mots-clésNB_TERM_Z, Z_MINIet Z_MAXI#
Ces mots-cléssont obligatoires si LONG_CORR_Zestrenseigné.
Mots-clésNB_TERMou PRECISION pour réduire le modèle#
◊ NB_TERM = / Nbt [I]
◊ PRECISION = / prec (min=0.0, max=1.0) [R]
Ces mots-clés facultatifs peuvent être utilisés pour réduire le modèle dans le cas de champs 2D ou 3D.
Les mots-clés obligatoires NB_TERM_X,NB_TERM_Yet NB_TERM_Zpermettent de définir le nombre de termes pour la représentation de Karhunen-Loève (KL) à calculer pour chaque composante (Xet/ou Yet/ou Z). Dans le cas d’un champ aléatoire 2D, on a deux composantes, et pour le 3D, on a 3 composantes. L’énergie totale pour cette représentation de KL est calculée comme la somme de toutes les combinaisons de produits de valeurs propres. Par exemple dans le cas d’un champ 2D selon les directions X et Y avec Nx et Ny fonctions propres respectivement, la représentations de KL comporte Nxy=Nx*Ny termes.
Afin de retenir un nombre réduit de termes, tout en préservant une bonne représentation des champs, on procède à un classement des termes croisées en fonction de leur contribution à l’énergie totale de la décomposition. On peut alors réduire le modèle en retenant les Nbt termes les plus énergétiques. Pour l’exemple ci-dessus, il faut que Nbt < Nxy.
Si PRECISIONest renseigné, alors on retient prec*100% des termes les plus énergétiques parmi la totalité des termes calculés.
Si NB_TERM est renseigné, alors on retient lesNB_TERMles plus énergétiques parmi la totalité termes calculés.
Exemples#
On peut consulter le cas test zzzz100g [:external:ref:`V1.01.100 <V1.01.100>`].