Post-traitements statistiques ============================= Calcul des grandeurs statistiques --------------------------------- Dans le cadre d'une approche par simulation de Monte Carlo, on s'intéresse non seulement à un résultat de calcul déterministe, mais on souhaite évaluer moyenne, médiane, écart-type, fractile et d'autres statistiques décrivant la variable de sortie. Ceci permet notamment d'associer des intervalles de confiance aux résultats de calcul. Après avoir récupéré l'échantillon des sorties, on peut faire appel au logiciel préféré (comme OpenTURNS, les toolbox dédiés de Python et Matlab, R) pour réaliser ces post-traitements statistiques. En outre, des courbes de fragilité log-normales peuvent être évaluées à l'aide de l'opérateur POST_DYNA_ALEA de *Code_Aster* . Ceci est décrit plus en détail dans le paragraphe suivant. Calcul de courbes de fragilité ------------------------------ Définitions ~~~~~~~~~~~~ Les courbes de fragilité donnent la probabilité conditionnelle de défaillance d’une structure ou d’un composant en fonction du niveau d’excitation sismique. La modélisation et la propagation des incertitudes décrites ci-dessus permettent également la détermination des courbes de fragilité. Il suffit d’introduire un critère de défaillance et de vérifier à chaque calcul de Monte Carlo si la défaillance est atteinte ou non. Les ingrédients principaux pour l’établissement de courbes de fragilité par simulation numérique sontles suivants : * Détermination de l’excitation sismique à considérer (base de données d’accélérogrammes), * Définition de critères de défaillance, * Modélisation des incertitudes et propagation par simulation numérique (Monte Carlo) * Estimation des paramètres (médiane et écart-type logarithmique) de la courbe de fragilité log-normale. La courbe de fragilité d'un composant peut être définie à partir de la notion de "capacité". La capacité d'un composant est la valeur du paramètre représentatif de l’action sismique à partir de laquelle le composant est défaillant. L'approche courante consiste à modéliser la capacité par une variable aléatoire suivant une loi log-normale, telle que :math:`A={A}_{m}\varepsilon` , où :math:`{A}_{m}` est la capacité médiane et :math:`\varepsilon` désigne une variable aléatoire log-normale de médiane unité et d’écart-type logarithmique :math:`\beta` . Aussi, la capacité :math:`A` d'un composant (et :math:`{A}_{m}` ainsi sa courbe de fragilité), est caractérisée par deux paramètres qui sont la médiane («capacité médiane») et l’écart-type :math:`\beta` . Ainsi, la probabilité de ruine pour un niveau d’accélération :math:`a` donné peut s’écrire [:ref:`bib3, bib2 `]: loi log-normale :math:`{P}_{f}(a)=\underset{0}{\overset{a}{\int}}\underset{}{\underset{\underbrace{}}{p(x)}}\text{dx}=\Phi (\frac{\ln(a/{A}_{m})}{\beta})` où :math:`\Phi (.)` désigne la fonction de répartition d’une variable aléatoire gaussienne centrée réduite. L'utilisation du modèle lognormal possède l’avantage de nécessiter un nombre réduit de simulations par rapport à un calcul direct des probabilités de défaillance. En effet, dans un calcul direct, sans hypothèse de loi a priori, il faut déterminer des probabilités d’évènements rares (les probabilités en queue de distribution), ce qui demande un nombre de simulations de Monte Carlo très importants. Dans ce qui suit, nous présentons deux méthodes, l'estimation par maximum de vraisemblance et la régression linéaire, pour évaluer ces deux paramètres. Si l'endommagement ou la défaillance d'une structure sont caractérisés par une variable d'intérêt :math:`Y` continue, assortie d'un seuil :math:`{Y}_{s}` , on peut exprimer la probabilité de défaillance (du niveau de dommage) pour un séisme de niveau :math:`a` comme :math:`{P}_{f}(a)=P(Y>{Y}_{s}\mid a)` Des variables d'endommagement :math:`Y` classiques pour une structure en béton sont le drift (déplacement différentiel entre deux étages d'un bâtiment) ou encore la baisse des premières fréquences propres. Les notations introduites ici seront utilisés pour l'évaluation d'une courbe de fragilité par régression linaire (§3.2.2). Évaluation des paramètres par maximum de vraisemblance ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Dans ce qui suit, on considère que l’accélération maximale a été choisie pour caractériser le niveau d’excitation sismique et donc la capacité. La démarche suivie consiste alors à modéliser le résultat des expériences numériques par une variable aléatoire de Bernoulli :math:`X` . En effet, pour chaque simulation numérique :math:`i` , on a deux issues possibles: soit on a atteint le niveau critique et on a défaillance (:math:`{x}_{i}=1` ) soit on n’a pas défaillance (:math:`{x}_{i}=0` ). De même pour chaque simulation, on peut déterminer la valeur de l’accélération maximale :math:`{a}_{i}` . L’estimation des paramètres d’une courbe de fragilité peut se faire par la méthode du maximum de vraisemblance. La fonction de vraisemblance à maximiser pour ce problème s’écrit: :math:`L=\underset{i=1}{\overset{N}{\Pi}}({P}_{f\mid a}({a}_{i})){}^{{x}_{i}}{(1-{P}_{f\mid a}({a}_{i}))}^{1-{x}_{i}}` Dans cette expression, la réalisation :math:`{x}_{i}` de :math:`X` prend donc la valeur 1 si on a défaillance ou 0 s’il n’y a pas défaillance pour le chargement (l’accélération maximale) :math:`{a}_{i}` . Ces événements arrivent avec la probabilité :math:`{P}_{f\mid a}` donnée par l’expression (1). Les estimations des paramètres :math:`\beta` et :math:`{A}_{m}` sont ceux qui minimisent :math:`-\ln(L)` : :math:`({\beta}_{C}^{e},{A}_{m}^{e})=\text{arg}\underset{\beta ,{A}_{m}}{\min}\left[-\ln(L)\right]` . Cette étape peut être mise en œuvre en post-traitement des résultats de calculs. Dans le fichier de commande *Code_Aster,* il faut, pour chaque simulation, vérifier si on a défaillance ou non. À titre d'exemple, si le critère de défaillance consiste en une contrainte admissible, on vérifie si la contrainte maximale calculée dépasse cette contrainte. Puis on fait écrire, à laide de CREA_TABLE, les résultats des simulations dans une table de résultats. Cette table doit contenir deux colonnes, PARA_NOCI et DEFA, qui renseignent respectivement la valeur :math:`{a}_{i}` (la valeur PGA ou tout autre indicateur) et la valeur :math:`{x}_{i}` (:math:`1` ou :math:`0` ). TAB1=CREA_TABLE(LISTE=( _F(PARA='PARA_NOCI',LISTE_R = PGA,), _F(PARA='DEFA',LISTE_I =xi ,), ),); **Remarque** : Si on renseigne une colonne DEMANDE au lieu de DEFA, alors cette colonne doit contenir les valeurs de la demande sismique (variable d'intérêt décrivant la défaillance ou l'endommagement, par exemple une contrainte ou déplacement maximale). TAB2=CREA_TABLE(LISTE=( _F(PARA='PARA_NOCI',LISTE_R = PGA,), _F(PARA='DEMANDE',LISTE_I =demande ,), ),); Le mot-clé SEUIL doit alors être renseigné dans POST_DYNA_ALEA pour déterminer la suite des :math:`{x}_{i}` . L’opérateur POST_DYNA_ALEA [:external:ref:`U4.84.04 `] permet d’estimer les paramètres de la courbe de fragilité lognormale à partir de la table TAB1via le mot-clé FRAGILITE: TAB_POST=POST_DYNA_ALEA( FRAGILITE=(_F(TABL_RESU=TAB1, AM_INI =0.3 , BETA_INI=0.1 , METHODE= 'EMV', FRACTILE = (0.0,0.05,0.5,0.95,1.0), NB_TIRAGE =Ns, ),), TITRE = 'courbe 1', INFO=2,); On donne des valeurs initiales des paramètres :math:`{A}_{m}` et :math:`\beta` à estimer (point de démarrage pour l’algorithme d’optimisation) via AM_INI et BETA_INI. Si l’on renseigne le mot-clé FRACTILE, on détermine également les fractiles (intervalles de confiance) de la courbe de fragilité par une méthode de ré-échantillonnage (dite méthode de «bootstrap»). Le ré-échantillonnage consiste à tirer de nouveaux échantillons à partir des valeurs de l’échantillon original. Ces tirages s’effectuent avec remise, voir [:ref:`bib1 `] pour plus de détails. Ensuite, on détermine les paramètres de la courbe de fragilité pour chaque échantillon «bootstrap», ce qui donne un échantillon de courbes de fragilités. On détermine alors les fractiles pour l’échantillon de courbes de fragilités obtenu. En général, on tire autant d’échantillons «bootstrap» qu’on dispose de valeurs dans l’échantillon original. Il est néanmoins possible de travailler avec un nombre de tirages inférieur en renseignant NB_TIRAGE (par défaut le nombre de tirages correspond à la taille de l’échantillon original, ici :math:`\mathit{Ns}` ). Dans l’exemple ci-dessus, on détermine donc les courbes enveloppes (fractiles :math:`1.0` et :math:`0.0` ) ainsi que la médiane :math:`(0.5)` et les fractiles à :math:`0.05` et :math:`0.95` . Dans le graphique ci-dessous, on donne un exemple de courbe de fragilité pour :math:`{A}_{m}=0.68` et :math:`\beta =0.25` : .. image:: images/1000000000000230000001A448324463B71C753F.jpg :width: 3.5583in :height: 2.6689in .. _RefImage_1000000000000230000001A448324463B71C753F.jpg: Figure 3.2.2-a: Probabilité conditionnelle de défaillance en fonction du PGA Évaluation par régression linéaire ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ La régression est une méthode très répandue pour déterminer les paramètres d’une courbe de fragilité log-normale. Elle est pratiquée surtout aux États-Unis pour évaluer la fragilité des structures civiles comme les routes, les ouvrages d’art et bâtiments publics. Dans cette approche, on relie la variable d’intérêt :math:`Y` (le drift par exemple), à la valeur de l’indicateur sismique :math:`a` (par exemple le PGA) via une relation du type: :math:`Y=b{a}^{c}\eta` Dans l’expression ci-dessus, :math:`\eta` est une variable aléatoire log-normale qu’on peut définir à partir de la variable normale centrée réduite :math:`U` : :math:`\eta =\exp(\beta U)` , et les variables :math:`b` et :math:`c` sont les paramètres du modèle. Ces derniers sont obtenus par une régression linéaire à l’aide de l’expression suivante: :math:`\ln(Y)=\ln(b)+c\ln(a)+ϵ` où :math:`\epsilon` est une variable aléatoire normale (Gaussienne) centrée d’écart-type :math:`\sigma` telle que :math:`ϵ=\sigma U` . Avec ces notations, la probabilité de défaillance s’écrit comme une probabilité conditionnelle, en fonction du niveau sismique :math:`a` et pour un seuil :math:`{Y}_{s}` : :math:`{P}_{f}(a)=P(Y>{Y}_{s}\mid a)=1-P(Y<{Y}_{s}\mid a)` . En tenant compte de l'expression log-normale de la variable :math:`Y` , on obtient l'expression analytique de la courbe de fragilité: :math:`{P}_{f}(a)=\Phi \left(\frac{\ln(b{a}^{c}/{Y}_{s})}{\sigma}\right)` A l'aide de la droite de régression, on peut exprimer le seuil médian :math:`{Y}_{s}` à partir de la capacité médiane comme :math:`{Y}_{s}=b{a}_{s}^{c}\eta` . Si on considère un seuil critique «best-estimate» qu'on assimile à la valeurmédiane dans la démarche incertitudes, on peut noter :math:`{A}_{m}={a}_{s}` . On aboutit ainsi à l'expression de la courbe de fragilité log-normale: :math:`{P}_{f}(a)=\Phi \left(\frac{\ln(a/{A}_{m})}{\beta}\right)` où :math:`\beta =\sigma /c` avec l’écart-type de l’erreur de régression :math:`\sigma` . En pratique, la valeur de la capacité médiane peut être déduite directement de la courbe de régression et s’exprime à partir des paramètres de cette dernière comme :math:`{A}_{m}=\exp\left[\frac{\ln({Y}_{s}/b)}{c}\right]` Il est important de souligner que ce modèle permet de tenir compte du comportement hétéroscédastique (la variance de :math:`Y` dépend des paramètres du modèle et n’est pas constante). L’opérateur POST_DYNA_ALEA [:external:ref:`U4.84.04 `] permet d’estimer les paramètres de la courbe de fragilité lognormale par régression à partir de la table TAB2 du §3.2.2 via le mot-clé FRAGILITE: TAB_POST=POST_DYNA_ALEA( FRAGILITE=(_F(TABL_RESU=TAB2, METHODE= 'REGRESSION', SEUIL=0.05, ),), TITRE = 'courbe 2', INFO=2,); L'expérience montre que la dispersion (variabilité) de :math:`Y` augmente avec le niveau sismique. En revanche, au contraire de la méthode de maximum de vraisemblance, l'écart-type logarithmique ne dépend pas du seuil. .. image:: images/100000000000011E000000C08D53A2DE1C0407D3.jpg :width: 2.9791in :height: 2in .. _RefImage_100000000000011E000000C08D53A2DE1C0407D3.jpg: Figure 3.2.3-a: Exemple de nuage de points et courbe de régression: variable Y en fonction du PGA.