






Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Encontra documentos específicos para os exames da tua universidade
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Cálculo númerico Metodo de Euler
Tipologia: Trabalhos
1 / 12
Esta página não é visível na pré-visualização
Não perca as partes importantes!







Gustavo Xavier Antunes Petronilo
Trabalho Cálculo Numérico: Método de Euler
y(t) = y + v (^) o t + F 02 0 at 2
y(t) = 25t – 4,9t^2
= -a(u^4 -T 4 ) (i)
= -au^4 (ii)
Aproximação por método numérico
Qi= Qi-1 + h.^ f(to ,Qo )
= f(vo,to),
yi = yi-1 + h.^ v(t)
ui= ui-1 + h.^ f(t (^) o,u (^) o)
Implementação
Problema 1: Misturas Algoritmo 1: função dq(t) real t dq = ¾ - 3Q/ Retorna dq(t) fim função
t=t+h write(resultados,)i,t,q,q_exato(t) write(,*)i,t,q,q_exato(t) end do
close(resultados) call system('pause') end !!!!!!!!!!!!!!!!!!!!!!! function dq(t) real dq,t dq=(3/4.)-(503.)/100. return end !!!!!!!!!!!!!!!!!!!!!!! function q_exato(t) real q_exato,t q_exato= 25+(25exp(-0.03*t)) return end
Problema 2: Lançamento Vertical Algoritmo 1: função v(t) real t v ← vo +9,8*t Retorna v(t) fim função
Algoritmo 2: programa principal Real yo,vo,h,t,to,y,tf,v,y_exato Inteiro i,n tf ←5. i← 0 n←(tf-to)/h t←to z ←zo
Imprima i,t,y Para(i←1, i≤ n, i=i+1) faça y←y+h*v(t) t←t+h Imprima i,t,y Fim Fortran:
program lancamento_vertical implicit none real yo,vo,h,t,to,y,tf,v,y_exato integer i,n,resultados resultados = 100 open(unit = resultados, file ='resultados_lancamento.txt') tf=5. yo= vo= to= h=0. n=(tf-to)/h t=to y=yo write(resultados,)i,t,y,y_exato(t) write(,*)i,t,y,y_exato(t) do i=1,n,
y=y+hv(t) t=t+h write(resultados,)i,t,y,y_exato(t) write(,)i,t,y,y_exato(t) end do close(resultados) call system('pause') end !!!!!!!!!!!!!!!!!!!!!!! function v(t) real v,t,vo vo= v=vo-9.8t return end !!!!!!!!!!!!!!!!!!!!!!! function y_exato(t) real y_exato,t y_exato=25t-4.9t* return
resultados = 200 open(unit = resultados, file ='resultados_rad.txt') print,"Digite a diferen‡a em minutos" read, tf uo=2000. to= h=0. a=2.0e- n=(tf-to)/h t=to u=uo write(resultados,)i,t,u,u_exato(t) write(,)i,t,u,u_exato(t) do i=1,n, u=u+hdu(t) t=t+h write(resultados,)i,t,u,u_exato(t) write(,*)i,t,u,u_exato(t) end do close(resultados) call system('pause') end
!!!!!!!!!!!!!!!!!!!!!!! function du(t) real du,t,a,u a=2.0e- u=2000.
du= -au*(4) return end
!!!!!!!!!!!!!!!!!!!!!!! function u_exato(t) real u_exato,t u_exato=2000./((1+0.048t)*(1/3)) return end
Resultados, tabelas e gráficos
Problema 1: Misturas
ti h=0.1 h=0.01 h=0.001 exato 1.0 49.324993 49.250031 49.248505 49. 2.0 48.574986 48.500061 48.497761 49. 17.0 37.324871 37.258018 37.226833 40. 20.0 35.074848 35.000610 34.970844 38.
Problema 2: Lançamento Vertical
ti h=0.1 h=0.01 h=0.001 exato 1.0 20.589998 20.149002 20.104942 20. 3.0 32.369995 31.047.029 30.923.361 30.900. 4.0 23.560005 21.796059 21.620186 21. 5.0 4.9500227 2.9840016 2.5264883 2.
Problema 3: Lei Stefan-Boltzmann
ti h=0.1 h=0.05 h=0.01 exato 1.0 1968.0054 1967.9932 1968.0176 1968. 2.0 1936.0107 1935.9863 1936.0671 1939. 20.0 1360.4274 1359.8633 1360.3835 1598. 30.0 1040.1611 1039.7949 1040.5593 1485.