Uploaded by Otávio Luiz da Silva

Probability Distributions in Structural Safety

advertisement
11/12/2024, 14:24
Untitled
Segurança estrutural - Questão 7
Plote as principais distribuições de probabilidade estudadas (Uniforme,
normal e lognormal). Use o programa Mathcad ou outro similar como o
Maple.
In [1]: #Importando bibliotecas
import numpy as np
import matplotlib.pyplot as plt
from scipy.stats import norm, lognorm, uniform
In [2]: # Definir intervalos para as distribuições
x_normal = np.linspace(-4, 4, 1000)
x_lognormal = np.linspace(0.01, 200, 1000)
x_uniforme = np.linspace(0, 10, 1000)
In [3]: # Parâmetros das distribuições
media_normal, desvio_padrao_normal = 0, 1
media_lognormal, desvio_padrao_lognormal = 4.442, 0.197
a, b = 0, 10 # Limites inferior e superior
In [4]: # Cálculo das densidades de probabilidade
pdf_normal = norm.pdf(x_normal, media_normal, desvio_padrao_normal)
pdf_lognormal = lognorm.pdf(x_lognormal, desvio_padrao_lognormal, scale=np.exp(medi
pdf_uniforme = uniform.pdf(x_uniforme, loc=0, scale=10)
In [5]: # Plot das distribuições
plt.figure(figsize=(12, 9))
Out[5]:
<Figure size 1200x900 with 0 Axes>
<Figure size 1200x900 with 0 Axes>
In [6]: # Gráfico da distribuição Normal
plt.subplot(3, 1, 1)
plt.plot(x_normal, pdf_normal, label="Normal (μ=0, σ=1)", color="blue")
plt.title("Distribuição Normal")
plt.xlabel("Valor")
plt.ylabel("Densidade de Probabilidade")
plt.grid(True, linestyle="--", alpha=0.6)
plt.yticks(np.linspace(0, max(pdf_normal), 6))
plt.legend()
Out[6]:
<matplotlib.legend.Legend at 0x2366e38fc10>
localhost:8888/nbconvert/html/Scripts/Untitled.ipynb?download=false
1/2
11/12/2024, 14:24
Untitled
In [7]: # Gráfico da distribuição Lognormal
plt.subplot(3, 1, 2)
plt.plot(x_lognormal, pdf_lognormal, label="Lognormal (μ=4.442, σ=0.197)", color="g
plt.title("Distribuição Lognormal")
plt.xlabel("Valor")
plt.ylabel("Densidade de Probabilidade")
plt.grid(True, linestyle="--", alpha=0.6)
plt.yticks(np.linspace(0, max(pdf_lognormal), 6))
plt.legend()
Out[7]:
<matplotlib.legend.Legend at 0x2366e30e2d0>
In [8]: # Gráfico da distribuição Uniforme
plt.subplot(3, 1, 3)
plt.plot(x_uniforme, pdf_uniforme, label="Uniforme (a=0, b=10)", color="red")
plt.title("Distribuição Uniforme")
plt.xlabel("Valor")
plt.ylabel("Densidade de Probabilidade")
plt.grid(True, linestyle="--", alpha=0.6)
plt.yticks(np.linspace(0, 0.2, 5))
plt.ylim(0, 0.2)
plt.legend()
Out[8]:
<matplotlib.legend.Legend at 0x2366efffc90>
localhost:8888/nbconvert/html/Scripts/Untitled.ipynb?download=false
2/2
Download