Você está na página 1de 11

2° Lista de Exercícios de Métodos Numéricos para Engenharia

Mecânica
Prof. Dr. Alexandre Ramos
Entrega em formato Pdf via SIGAA
Data máxima: 28/09/2022

Aluno: Maurício Pereira de Jesus Turma: 01


Matrícula: 202000028391

1. Qual a diferença entre problema de valor de contorno e


problema de valor inicial?
Resposta: A diferença é que no problema de valor de contorno as
condições são especificadas em valores diferentes da variável
independente, enquanto que no problema de valor inicial todas as
condições são especificadas no mesmo valor da variável
independente.

2. Como as equações diferenciais parciais de segunda ordem


podem ser classificadas? Exemplifique.
Resposta: As Equações Diferenciais Parciais são classificadas em
três categorias, sendo elas Elípticas, Parabólicas e Hiperbólicas.
As EDP's Elípticas são usadas tipicamente para caracterizar
sistemas estacionários; As EDP's Parabólicas são usadas em
problemas de propagação, que visam determinar como uma
incógnita pode variar tanto no espaço quanto no tempo; As EDP's
Hiperbólicas também são usadas em problemas de propagação, a
diferença é que a incógnita é caracterizada pela segunda derivada
em relação ao tempo.

3. Qual a diferença entre as condições de contorno de Dirichlet,


Neumann e Robin?
Resposta: A diferença é que, nas condições de contorno de
Dirichlet (ou de primeiro tipo) especifica valores nos quais a
derivada de uma solução é aplicada dentro dos limites do domínio,
enquanto as condições de contorno de Neumann especifica a
derivada normal à função no domínio e as condições de contorno
de Robin é uma combinação ponderada/linear(também chamada de
condição de impedância), que funciona com a junção das
condições de contorno de Dirichlet e Neumann.
2° Lista de Exercícios de Métodos Numéricos para Engenharia
Mecânica
Prof. Dr. Alexandre Ramos
Entrega em formato Pdf via SIGAA
Data máxima: 28/09/2022

4. Estime o valor da derivada da função f(x) = cos(x) em x = 0,3


utilizando as seguintes aproximações:
• Backward com 2 pontos

from math import cos


f = lambda x: cos(x)
h = 0.01
x = 0.3

dfb1=(f(x)-f(x-h))/h #Primeira derivada


dfb2=(f(x)-2*f(x-h)+f(x-2*h))/h**2 #Segunda derivada
print("O valor da derivada da função f(x) = cos(x) na aproximação
por diferença para trás do tipo Backward com dois pontos para x =
0.3 vale: ")
print("f''(%f) = %f" %(x,dfb2)) #f'' é a segunda derivada Backward
de f.

• Backward com 3 pontos

from math import cos


f = lambda x: cos(x)
h = 0.01
x = 0.3

dfb1=(f(x)-f(x-h))/h #Primeira derivada


dfb2=(f(x)-2*f(x-h)+f(x-2*h))/h**2 #Segunda derivada
dfb3= (f(x)-3*f(x-h)+3*f(x-2*h)-f(x-3*h))/2*h**3 #Terceira
derivada
print("O valor da derivada da função f(x) = cos(x) na aproximação
por diferença para trás do tipo Backward com três pontos para x =
0.3 vale: ")
2° Lista de Exercícios de Métodos Numéricos para Engenharia
Mecânica
Prof. Dr. Alexandre Ramos
Entrega em formato Pdf via SIGAA
Data máxima: 28/09/2022

print("f'''(%f) = %f" %(x,dfb3)) #f''' é a terceira derivada Backward


de f.

• Forward com 2 pontos

from math import cos


f = lambda x: cos(x)
h = 0.01
x = 0.3

dff1=(f(x+h)-f(x))/h #Primeira derivada


dff2=(f(x+2*h)-2*f(x+h)+f(x))/h**2 #Segunda derivada
print("O valor da derivada da função f(x) = cos(x) na aproximação
por diferença a frente do tipo Forward com dois pontos para x =
0.3 vale: ")
print("f''(%f) = %f" %(x,dff2)) #f'' é a segunda derivada Forward
de f.

• Forward com 3 pontos

from math import cos


f = lambda x: cos(x)
h = 0.01
x = 0.3

dff1=(f(x+h)-f(x))/h #Primeira derivada


dff2=(f(x+2*h)-2*f(x+h)+f(x))/h**2 #Segunda derivada
dff3=(f(x+3*h)-3*f(x+2*h)+3*f(x+h)-f(x))/h**3 #Terceira
derivada
print("O valor da derivada da função f(x) = cos(x) na aproximação
por diferença a frente do tipo Forward com três pontos para x = 0.3
vale: ")
print("f'''(%f) = %f" %(x,dff3)) #f''' é a terceira derivada Forward
de f.
2° Lista de Exercícios de Métodos Numéricos para Engenharia
Mecânica
Prof. Dr. Alexandre Ramos
Entrega em formato Pdf via SIGAA
Data máxima: 28/09/2022

• Central com 2 pontos

from math import cos


f = lambda x: cos(x)
h = 0.01
x = 0.3

dfc1=(f(x+h)-f(x-h))/(2*h) #Primeira derivada


dfc2=(f(x+h)-2*f(x)+f(x-h))/h**2 #Segunda derivada
print("O valor da derivada da função f(x) = cos(x) na aproximação
por diferença do tipo Central com dois pontos para x = 0.3 vale: ")
print("f''(%f) = %f" %(x,dfc2)) #f'' é a segunda derivada Central de
f.

• Central com 4 pontos

from math import cos


f = lambda x: cos(x)
h = 0.01
x = 0.3

dfc1=(f(x+h)-f(x-h))/(2*h) #Primeira derivada


dfc2=(f(x+h)-2*f(x)+f(x-h))/h**2 #Segunda derivada
dfc3=(f(x+2*h)-2*f(x+h)+2*f(x-h)-f(x-2*h))/2*h**3 #Terceira
derivada
dfc4=(f(x+2*h)-4*f(x+h)+6*f(x)-4*f(x-h)+f(x-2*h))/h**4
print("O valor da derivada da função f(x) = cos(x) na aproximação
por diferença do tipo Central com quatro pontos para x = 0.3 vale:
")
print("f''''(%f) = %f" %(x,dfc4)) #f'''' é a quarta derivada Central de
f.
2° Lista de Exercícios de Métodos Numéricos para Engenharia
Mecânica
Prof. Dr. Alexandre Ramos
Entrega em formato Pdf via SIGAA
Data máxima: 28/09/2022

Compare com a aproximação obtida com a solução exata.


Adote: Δx = 0,1

• Solução analítica: f ’(0.3) = -0.2955; f ’’(0.3) = -0.9553; f


’’’(0.3) = 0.2955; f ’’’’(0.3) = 0.9553

• Solução achada Backward: f ’(0.3) = -0.2907; f ’’(0.3) = -


0.9582; f ’’’(0.3) = 0.0000

• Solução achada Farward: f ’(0.3) = -0.3002; f ’’(0.3) = -


0.9523; f ’’’(0.3) = 0.3098

• Solução achada Central: f ’(0.3) = -0.2955; f ’’(0.3) = -0.9553;


f ’’’(0.3) = 0.0000; f ’’’’(0.3) = 0.9553

• Os resultados obtidos pelas aproximações foram bem próximos


do valor analítico, tendo apenas nas aproximações diferenciais
do tipo Backward e Central o valor da terceira derivada igual a
0 (zero), sendo que o resultado analítico é de 0.2955.

5. Considere a função f (x) = exp(x)*sin(x). Como as estimativas


de f’(x) e f’’(x) em x = 2 evoluem em função de Δx para as
seguintes aproximações: (i) Central com 2 pontos; (ii) Central
com 4 pontos. Compare com a solução exata.

Resposta:

• Estimativa de f ’(x) = sin(x)*e**(x) + cos(x)*e**(x) ==> f ’(2) =


3.6439
• Estimativa de f ’’(x) = 2*e**(x) * cos(x) ==> f ’’(2) = -6.1498

• Evolução Central com 2 pontos:


2° Lista de Exercícios de Métodos Numéricos para Engenharia
Mecânica
Prof. Dr. Alexandre Ramos
Entrega em formato Pdf via SIGAA
Data máxima: 28/09/2022

from math import sin, exp


f = lambda x: exp(x)*sin(x)
h = 0.01
x=2

dfc1=(f(x+h)-f(x-h))/(2*h) #Primeira derivada


dfc2=(f(x+h)-2*f(x)+f(x-h))/h**2 #Segunda derivada
dfc3=(f(x+2*h)-2*f(x+h)+2*f(x-h)-f(x-2*h))/2*h**3 #Terceira derivada
dfc4=(f(x+2*h)-4*f(x+h)+6*f(x)-4*f(x-h)+f(x-2*h))/h**4
print("O valor da derivada da função f(x) = cos(x) na aproximação por
diferença do tipo Central com dois pontos para x = 2 vale: ")
print("f''(%f) = %f" %(x,dfc2)) #f'' é a quarta derivada Central de f.

O valor de f ’(x) de 3.6439 foi para –6.1500 na Central com 2 pontos.

• Evolução Central com 4 pontos:

from math import sin, exp


f = lambda x: exp(x)*sin(x)
h = 0.01
x=2

dfc1=(f(x+h)-f(x-h))/(2*h) #Primeira derivada


dfc2=(f(x+h)-2*f(x)+f(x-h))/h**2 #Segunda derivada
dfc3=(f(x+2*h)-2*f(x+h)+2*f(x-h)-f(x-2*h))/2*h**3 #Terceira derivada
dfc4=(f(x+2*h)-4*f(x+h)+6*f(x)-4*f(x-h)+f(x-2*h))/h**4 #Quarta derivada
print("O valor da derivada da função f(x) = cos(x) na aproximação por
diferença do tipo Central com quatro pontos para x = 2 vale: ")
print("f''''(%f) = %f" %(x,dfc4)) #f'''' é a quarta derivada Central de f.

O valor de f ’’(x) de –6.1498 foi para –26.8749 na Central com 4 pontos.


• Comparação: O valor das derivadas tende a se distanciar
negativamente do valor zero a partir da segunda derivada da função
dada.
2° Lista de Exercícios de Métodos Numéricos para Engenharia
Mecânica
Prof. Dr. Alexandre Ramos
Entrega em formato Pdf via SIGAA
Data máxima: 28/09/2022

6. Considere a função f (x) = cos(x) + sin(x), x ϵ [0, π]. Aproxime


a primeira derivada da função utilizando diferentes estratégias
(backward, forward, central de diferentes ordens). Compare a
aproximação obtida com a solução exata adotando como
medida do erro a média da diferença quadrática entre as
derivadas aproximada e exata, i.e.:

𝐸 = 1/𝑁 √ (∑ [𝑓𝑎𝑝𝑟𝑜𝑥 ′ (𝑥𝑖 ) − 𝑓 ′(𝑥𝑖 )]²)

• com i no somatório indo de 1 à N.

Sendo N o número de pontos da discretização adotada. Plote os


resultados em um gráfico de E vs. Δx para as diferentes
estratégias adotadas.

Resposta:
• f ’(xi) = -sin(xi) + cos(xi)

• Backward:

from math import cos, sin


f = lambda x: cos(x) + sin(x)
h = 0.01

print('Aproximando o valor de pi para 3, temos: ')


for x in range(1,4):
dfb1=(f(x)-f(x-h))/h #Primeira derivada
dfb2=(f(x)-2*f(x-h)+f(x-2*h))/h**2 #Segunda derivada
print("O valor da derivada da função f(x) = cos(x) + sin(x) na
aproximação por diferença para trás do tipo Backward com dois
pontos para x = [0,3] vale: ")
2° Lista de Exercícios de Métodos Numéricos para Engenharia
Mecânica
Prof. Dr. Alexandre Ramos
Entrega em formato Pdf via SIGAA
Data máxima: 28/09/2022

print("f'(%f) = %f" %(x,dfb1)) #f' é a primeira derivada Backward de


f.
→ Os valores achados para a primeira derivada foram de: f’(1)=
-0.2942; f’(2)= -1.3229 e f’(3)= -1.1353
→ Erro: 0.00281

• Forward
from math import cos, sin
f = lambda x: cos(x) + sin(x)
h = 0.01

print('Aproximando o valor de pi para 3, temos: ')


for x in range(1,4):
dff1=(f(x+h)-f(x))/h #Primeira derivada
dff2=(f(x+2*h)-2*f(x+h)+f(x))/h**2 #Segunda derivada
print("O valor da derivada da função f(x) = cos(x) + sin(x) na aproximação
por diferença a frente do tipo Forward com dois pontos para x = [0,3] vale:
")
print("f'(%f) = %f" %(x,dff1))
#f'é a primeira derivada Forward de f.

→ O valores achados para a primeira derivada foram de: f’(1)=


-0.3080; f’(2)= -1.3278 e f’(3)= -1.1268
→ Erro: 0.00282

• Central

from math import cos, sin


f = lambda x: cos(x) + sin(x)
h = 0.01

print('Aproximando o valor de pi para 3, temos: ')


for x in range(1,4):
2° Lista de Exercícios de Métodos Numéricos para Engenharia
Mecânica
Prof. Dr. Alexandre Ramos
Entrega em formato Pdf via SIGAA
Data máxima: 28/09/2022

dfc1=(f(x+h)-f(x-h))/(2*h) #Primeira derivada


dfc2=(f(x+h)-2*f(x)+f(x-h))/h**2 #Segunda derivada
print("O valor da derivada da função f(x) = cos(x) + sin(x) na aproximação
por diferença do tipo Central com dois pontos para x = [0,3] vale: ")
print("f'(%f) = %f" %(x,dfc1)) #f' é a primeira derivada Central de f.

→ Os valores achados para a primeira derivada foram de: f’(1)=


-0.3011; f’(2)= -1.3254 e f’(3)= -1.1310
→ Erro: 0.00003

7. Defina os conceitos estabilidade, consistência e convergência.


Resposta: Estabilidade é a variação contínua da solução em
relação aos dados iniciais; Consistência é a aproximação do erro de
truncamento local tendendo a zero em todos os passos, quando o
tamanho do passo tende a zero; Convergência é a aproximação
ponto a ponto da solução da EDO, quando o tamanho do passo
tende a zero, com a solução da equação de diferença.

8. O que é a condição de Courant–Friedrichs–Lewy (CFL)?


Resposta: A Condição de CFL nada mais é que o intervalo do
parâmetro de cálculo que permite a precisão física e estabilidade
do cálculo, modificando a magnitude do Número de Courant.

9. Faça a simulação da distribuição de temperatura de uma placa


por meio do ANSYS CFX. Sabendo que a temperatura na
extremidade superior é de 100°C, e nas outras três arestas igual
a 0°C. Adote dimensões de 20x20x1 mm e caso estacionário.
Comente sua malha e seus resultados.
2° Lista de Exercícios de Métodos Numéricos para Engenharia
Mecânica
Prof. Dr. Alexandre Ramos
Entrega em formato Pdf via SIGAA
Data máxima: 28/09/2022

Resposta: Então, professor, eu baixei e instalei o Ansys(só


apareceu a versão 2022, e “pesado”), meu notebook até que roda,
mas eu ia abrir ele e ele ficava dando erro e abrindo uma outra
janela e quando conseguia acessar, não conseguir usar as
dimensões solicitadas(tentei mudá-las várias vezes, mas ele só
ignorava) e no final o notebook travou e não consegui fazer mais
nada.

10. Considere o problema de transferência de calor descrito pela


equação
𝜕𝑇 𝜕2𝑇 𝜕2𝑇
− λ ( 2 + 𝜕𝑦2) = 0 𝜕𝑇 𝜕𝑥
com difusividade térmica igual λ = 0,01, para t ϵ [0; 100] e (x,y)
ϵ [-1; 1] x [-1, 1]. Em todo o contorno, a condição é adiabática.
A condição inicial do problema é descrita como:

(0, 𝑥, 𝑦) = 10exp [−20(𝑥2 + 𝑦2)]

Plote as isotérmicas para t = 0, 25, 50, 75, 100 utilizando uma


solução (i) explícita e (ii) implícita. Comente sobre as
aproximações utilizadas para as derivadas e a estratégia
utilizada para aplicar as condições de contorno do problema.
2° Lista de Exercícios de Métodos Numéricos para Engenharia
Mecânica
Prof. Dr. Alexandre Ramos
Entrega em formato Pdf via SIGAA
Data máxima: 28/09/2022

Resposta: Não entendi ao certo como fazer essa questão.

Você também pode gostar