Vídeo ensinando como obter equação e gráfico do momento fletor de uma viga. Segue código em Python.
import math
import numpy as np
import matplotlib.pyplot as plt # Importe a biblioteca matplotlib para plotagem
Dados de entrada
w = 10 # Carga distribuída [N/m]
P = 10 # Força concentrada [N]
L = 10 # Comprimento da viga [m]
a = 5 # Posição da carga distribuída a partir da extremidade esquerda [m]
b = 2 # Comprimento da carga concentrada [m]
Cálculo das reações de apoio
Ra = (w * a * (L - a / 2) + P * (L - (a + b))) / L
Rb = (w * a + P) - Ra
print('Ra = [N]', Ra)
print('Rb = [N]', Rb)
Seção 1
x1 = np.linspace(0, a, 10)
m1 = Ra * x1 - (w / 2) * x1**2
v1 = Ra*np.ones(10) - w*x1
Seção 2
x2 = np.linspace(a, (a + b), 10)
m2 = Ra * x2 - (w * a) * (x2 - a / 2)
v2 = Ra*np.ones(10) - w*a*np.ones(10)
Seção 3
x3 = np.linspace((a + b), L, 10)
m3 = Ra * x3 - (w * a) * (x3 - a / 2) - P * (x3 - (a + b))
v3 = Ra*np.ones(10) - w*a*np.ones(10) - P*np.ones(10)
Plotagem do gráfico do momento fletor
plt.figure(1)
plt.fill_between(x1, -m1, color='skyblue', alpha=0.5)
plt.fill_between(x2, -m2, color='orange', alpha=0.5)
plt.fill_between(x3, -m3, color='green', alpha=0.5)
#plt.plot(x1, -m1, x2, -m2, x3, -m3)
plt.title('Gráfico do momento fletor')
plt.xlabel('Comprimento [m]')
plt.ylabel('M(x) [N.m]')
plt.grid()
plt.show() # Exibir o gráfico
plt.figure(2)
plt.fill_between(x1, v1, color='skyblue', alpha=0.5)
plt.fill_between(x2, v2, color='orange', alpha=0.5)
plt.fill_between(x3, v3, color='green', alpha=0.5)
plt.title('Gráfico do esforço cortante')
plt.xlabel('Comprimento [m]')
plt.ylabel('V(x) [N]')
plt.grid()
plt.show() # Exibir o gráfico