Escolar Documentos
Profissional Documentos
Cultura Documentos
3. (2 pontos) A Figura 1 (a) mostra uma viga uniforme sujeita a uma carga
distribuída de forma linearmente crescente. A equação para a curva elástica
resultante é (ver Figura 1(b))
ω0 5 2 3 4
y= (−x +2 L x −L x )
120 EIL
Use o método de Newton-Raphson para determinar o ponto de deflexão máxima. A
seguir substitua esse valor na equação anterior para determinar a deflexão
máxima. Use os seguintes parâmetros nos seus cálculos:
L=450 cm , E=35000 kN /cm² , I =30000 c m e ω 0=1 , 75 kN /cm .
4
Seu relatório deve conter o script, o critério de parada usado e as saídas do código.
Todos os cálculos de raízes e valores da função devem ser dados como saída no
algoritmo usando a função print, com 4 casas decimais. Não esqueça da unidade de
medida.
Apresente um gráfico da deflexão (curva elástica) com 0 ≤ x ≤ 450 .
Figura 1
import numpy as np
import matplotlib.pyplot as plt
# Função
def f(x):
return ((1.75/120*35000*30000*450)*(-5*x**4 + 1215000*x**2 -
41006250000))
# Derivada da função
def d(x):
return ((1.75/120*35000*30000*450)*(-20*x**3 + 2430000*x))
# Entradas
a = float(input("Entre com o primeiro valor de x: "))
erro = float(input("Entre com o erro: "))
# Configurar os eixos
plt.xlabel('x')
plt.ylabel('f(x)')
# Mostrar o gráfico
plt.show()
4. (2,5 pontos) Use o método de Newton para encontrar uma raiz para o
sistema de equações abaixo com ¿ f ( x ( k ) ) ∨¿ 10−5.
{
2
x + y−2 xy=0
2 2
x + y −4 x−4 y=1
RESPOSTA:
0#método de newton para solução de sistemas não lineares
import numpy as np
from numpy import linalg
k = 0
f= F(x)
j= J(x)
e=1
j=np.reshape(j,(2,2))
while e > erro:
s = np.linalg.solve(j,-f)
x = s + x
maxs = max(min(s),max(s), key = abs)
maxx = max(min(x),max(x), key = abs)
e = abs(maxs)/abs(maxx)
j = J(x)
j=np.reshape(j,(2,2))
f = F(x)
k = k+1
#__________________________________________________________________
___
#fazendo os gráficos:
# Funções
def f1(x, y):
return x**2 + y - 2*x*y