Escolar Documentos
Profissional Documentos
Cultura Documentos
CAPITULO 6
6.0 SOLUÇÕES NUMÉRICAS DE EQUAÇÕES DIFERENCIAIS ORDINÁRIAS
Conforme VILATTE ( 2001, p.1), Equação diferencial é qualquer relação entre uma
função e suas derivadas.
As equações diferenciais podem ser divididas em :
• equações diferenciais (EDO) : a função y que aparece na equação é uma função de
uma variável x.
• Pode ser escrita na forma geral F(x,y,y',y'',y''',...)
• a ordem da equação é a ordem da derivada de ordem superior.
1)EXEMPLO: VILATTE ( 2001, p.20), análise química de uma viga de pinho retirada da
tumba dum faraó Egípcio mostrou que o conteúdo de carbono 14 é de 55% do existente num
pinheiro vivo. Sabendo que a meia-vida do carbono é de 5580 anos, calcule a idade da tumba.
dN
• Solução: =−kN
dt
• mudança de variável
dN
• =−kdt
N
dN
• ∫ N
=−k ∫ dt
• ln (N)=-kt + C
• N t =e−kt∗e C
• t=0
• N 0 =e−k∗0∗e C
• N 0 =e C
−kt
• resolvendo a equação diferencial tem-se N t =N 0 e
N 0
• meia vida: N t =
2
ln 0,5
• t=
−k
• 55% do existente do pinheiro vivo :
• N(t)=0,55*N(0)
• 0,55=e−kt
• k=0,0001242
• t=4813 anos
• (2) Existe uma constante L tal que qualquer x pertence [a;b] e todo par de números y
(exato) e y* ( aproximado) | f(x,y)- f(x,y*)| <= L(y-y*), então existe exatamente uma
função y(x) satisfazendo :
i) y(x) é contínua e diferenciável para x pertencente [a,b]
ii) y'(x)= f(x,y(x)) e x pertence [a,b]
iii) y(a) =n, n é dado.
A condição (2) está satisfeita se f(x,y) tem derivada contínua em relação a y. Conforme o
teorema do valor médio:
f f
f(x,y) -f(x,y*)= x , y (y-y*) onde y é o valor entre y e y*. A derivada não
y y
é necessário para que (2) esteja satisfeito.
• teorema do valor médio BURDEN (2003, p.5).
• Se f pertence C[a,b] e f é diferenciável em (a,b) existe um numero c no intervalo (a,b)
f b−f a
tal que f ' c =
b−a
6.2 MÉTODO DE EULER
• Segundo BARROSO (1987,p.279), seja o problema de valor inicial y'=f(x,y) e
y(xo)=yo=n, n dado.
• Aproximar y1,y2,..,yn para as soluções exatas y(x1), y(x2)...y(xn)
scilab 5.1
->x=0:5 -->y=x^2 -->x1=1:5 -->y1=x1 -->plot(x,y,x1,y1) --> xgrid
4,5
3,5
2,5
1,5
0,5
0
-1,5 -1 -0,5 0 0,5 1 1,5 2 2,5
O valor de y(x1) é desconhecido , então através de y1 aproxima-se com y(x1), traçando a reta
tangente T à curva y(x) no ponto (xo,y(xo)):
• ln(x)=-t³ +C
3
• x t =e−t ∗e C
• x 0=eC
• x(0)=2
3
−t
• x t =2∗e
k tk xk exato
0 0,000 2,0000 2,0000
1 0,100 2,0000 1,9980
2 0,200 1,9940 1,9840
3 0,300 1,9700 1,9470
4 0,400 1,9170 1,8760
5 0,500 1,8250 1,7650
6 0,600 1,6880 1,6110
7 0,700 1,5060 1,4190
8 0,800 1,2850 1,1990
9 0,900 1,0380 0,9650
10 1,000 0,7860 0,7360
2,5000
2,0000
1,5000
Coluna G
Coluna H
1,0000
0,5000
0,0000
0,000 0,200 0,400 0,600 0,800 1,000 1,200
5) EXEMPLO: CLAUDIO (p.362,1989), resolver y'=2x+3 para y=1 quando x=1 para
x=1(0,1)1,5.
Solução:yj+1 =yj +hf(xj,yj) h=0,1 x(o)=1 y(o)=1
calculos
yo=1 xo=1 h=0,1
y1=yo+hf(xo,yo)= 1+0,1 (2xo+3)=1,5
y2=y1+hf(x1,y1)= 1,5+0,1 (2x1+3)=1,5+0,1*(2*1,2+3)=2,02
y3=y2+hf(x2,y2)= 2,02+0,1 (2x2+3)=2,02+0,1*(2*1,3+3)=2,56
y4=y3+hf(x3,y3)= 2,56+0,1 (2x3+3)=2,56+0,1*(2*1,4+3)=3,12
y5=y4+hf(x4,y4)= 2,56+0,1 (2x4+3)=2,56+0,1*(2*1,5+3)=3,7
solução no scilab: salvar como f3.sci ( calcula solução exata)
function ydot=f(x,y),ydot=2*x+3,endfunction
y0=1;
x0=1;
x=1:0.1:1.5;
y=ode(y0,x0,x,f)
plot(x,y)
y= 1 1.51 2.04 2.59 3.16 3.75
6.3 EXERCICIOS
6)APLICAÇÕES PRÁTICAS:(livro- calculo numerico p.423) Um corpo com uma massa
inicial de 200 kg é acelerado por uma força constante de 200N. A massa decresce a uma taxa
de 1kg/s. Se o corpo está repouso em t=0 encontre sua velocidade ao final de 50 s. Sabe-se
dv 2000
que a equação diferencial é dada por : = , resolva o problema usando o método
dt 200−t
de Euler.
i xi yi f(x,y)
0 0 2,000000 -4,000000
1 0,1 1,600000 -2,460000
2 0,2 1,354000 -1,633316
3 0,3 1,190668 -1,117691
4 0,4 1,078899 -0,764024
5 0,5 1,002497
resposta y=1,002497
solução 2 no scilab salve como f4.sci
function ydot=f(x,y),ydot=x-y^2,endfunction
y0=2;
x0=0;
x=0:0.1:0.5;
y=ode(y0,x0,x,f)
plot(x,y)
y=2. 1.6711339 1.4450238 1.2847371 1.1697885 1.0878445
8)BARROSO( 1987, p.281 as aproximações para a solução PVI y'= x-y+2 na malha de
[0;0.5] com h=0,1 e yo=3.
Solução 1: metodo de Euler
i xi yi f(x,y)
0 0 3,000000 -1,000000
1 0,1 2,900000 -0,800000
2 0,2 2,820000 -0,620000
3 0,3 2,758000 -0,458000
4 0,4 2,712200 -0,312200
5 0,5 2,680980
9) BARROSO( 1987, p.285) , achar as aproximações para a solução PVI y'=y-2x/y yo=1 na
malha [0;1] h=0,2 resposta: 1,82695
i xi yi f(x,y)
0 0 1,000000 1,000000
1 0,2 1,200000 0,866667
2 0,4 1,373333 0,790809
3 0,6 1,531495 0,747947
4 0,8 1,681085 0,729318
5 1 1,826948 0,732226
onde
k 1 = h f ( xi , yi)
k 2 = h f ( xi + h/2 , y i + k 1 /2 )
k 3 = h f ( xi + h/2 , y i + k 2 /2 )
k 4 = h f ( xi+h , y i + k 3 )
dy = f (x , y ) = y ; y(0) = 1
Solução:
dx
Usando o método de Runge-Kutta de 4a ordem, temos
y1 = y0 + 1/6 ( k 1 + 2 k 2 + 2 k 3 + k 4 ) ,
Logo,
k1= 1f(0,1) = 1
k 3 = 1 f ( 0 + 1/2 , 1 + 1,5
/2 ) = 1 x 1,75 = 1,75
k 2 = h f ( xi + h/2 , y i + k 1 /2 )
k 3 = h f ( xi + h/2 , y i + k 2 /2 )
k 4 = h f ( xi +h ; y i + k 3 )
solução:
xo=0 y(0)=2 h=0,1
k1=h*f(xo,yo)= 0,1*[xo-yo+2]=0
k2=h*f(xo+h/2;yo+k1/2)=0,005
k3=h*f(xo+h/2;yo+k2/2)=0,00475
k4=h*f(xo+h;yo+k3)=0,09525
y1=2,004873090 e assim por diante
• nesta tabela o k1, k2,k3,k4 não foram multiplicados pela a altura.
EXERCICIOS
13)y'= y-2x/y y(o)=1 na malha [0;1] h=0,2 use Runge-Kutta de quarta ordem
y i + 1 = yi + h/6 ( k 1 + 2 k 2 + 2 k 3 + k 4 ) * o valor de k não é multiplicado pela altura
i x y f(x,y)-derivada k1 k2 k3 k4
0,00000000 0,00000000 1,00000000 1,00000000 1,00000000 0,91818182 0,90863750 0,84323999
1,00000000 0,20000000 1,18322929 0,84517139 0,84517139 0,79446566 0,78749452 0,74403752
2,00000000 0,40000000 1,34166693 0,74539375 0,74539375 0,71009449 0,70480017 0,67325277
3,00000000 0,60000000 1,48328146 0,67426440 0,67426440 0,64789441 0,64371956 0,61948516
4,00000000 0,80000000 1,61251404 0,62027462 0,62027462 0,59962040 0,59622751 0,57686480
5,00000000 1,00000000 1,73214188 0,70710980 0,70710980 0,69072590 0,68947762 0,67408185
14) y'=1/x use Runge-Kutta de quarta ordem na malha [1;2] com h=0,1 y(1)=1
i x y f(x,y)-derivada k1 k2 k3 k4
0,00000000 1,00000000 1,00000000 1,00000000 1,00000000 0,95238095 0,95238095 0,90909091
1,00000000 1,10000000 1,09531025 0,90909091 0,90909091 0,86956522 0,86956522 0,83333333
2,00000000 1,20000000 1,18232166 0,83333333 0,83333333 0,80000000 0,80000000 0,76923077
3,00000000 1,30000000 1,26236440 0,76923077 0,76923077 0,74074074 0,74074074 0,71428571
4,00000000 1,40000000 1,33647239 0,71428571 0,71428571 0,68965517 0,68965517 0,66666667
5,00000000 1,50000000 1,40546527 0,66666667 0,66666667 0,64516129 0,64516129 0,62500000
6,00000000 1,60000000 1,47000380 0,62500000 0,62500000 0,60606061 0,60606061 0,58823529
7,00000000 1,70000000 1,53062843 0,58823529 0,58823529 0,57142857 0,57142857 0,55555556
8,00000000 1,80000000 1,58778685 0,55555556 0,55555556 0,54054054 0,54054054 0,52631579
9,00000000 1,90000000 1,64185408 0,52631579 0,52631579 0,51282051 0,51282051 0,50000000
10,00000000 2,00000000 1,69314737
15)Achar as aproximações para a solução de PVI y'= (x-2xy -1)/x² y(1)=0 na malha [1;2]
com h=0,1 usando RK4.
xo=1 yo=0
k 1 = h f ( x i , y i )=0,1* f(x0,y0)=0,1*f(1,1)=0,1*[1-2*1*0-1)/1²=1
k 2 = h f ( xi + h/2 , y i + k 1 /2 )=0,1*f(1+0,1/2;0+1/2)=0,045351
k 3 = h f ( xi + h/2 , y i + k 2 /2 )=0,1*f(1+0,1/2;0+0,045351/2)=0,041032
k 4 = h f ( xi+ 1 , y i + k 3 )=0,075184
i x y f(x,y)-derivada k1 k2 k3 k4
0,000000 1,000000 0,000000 0,000000 0,000000 0,045351 0,041032 0,075184
1,000000 1,100000 0,004133 0,075131 0,075131 0,099701 0,097565 0,115741
2,000000 1,200000 0,013889 0,115740 0,115740 0,128518 0,127496 0,136532
3,000000 1,300000 0,026628 0,136549 0,136549 0,142481 0,142041 0,145751
4,000000 1,400000 0,040817 0,145772 0,145772 0,147679 0,147547 0,148127
5,000000 1,500000 0,055556 0,148148 0,148148 0,147685 0,147715 0,146466
6,000000 1,600000 0,070313 0,146484 0,146484 0,144646 0,144757 0,142463
7,000000 1,700000 0,084775 0,142479 0,142479 0,139870 0,140019 0,137161
8,000000 1,800000 0,098766 0,137174 0,137174 0,134168 0,134330 0,131204
9,000000 1,900000 0,112189 0,131214 0,131214 0,128042 0,128204 0,124991
10,000000 2,000000 0,125000
k2=h*f(xi+h/2;yi+k1/2;zi+L1/2)
L2=h*g(xi+h/2;yi+k1/2;zi+L1/2)
k3=h*f(xi+h/2;yi+k2/2;zi+L2/2)
L3=h*g(xi+h/2;yi+k2/2;zi+L2/2)
k4=h*f(xi+h;yi+k3;zi+L3)
L4=h*g(xi+h;yi+k3;zi+L3)
y i + 1 = yi + 1/6 ( k 1 + 2 k 2 + 2 k 3 + k 4 ) ,
z i + 1 = zi + 1/6 ( L 1 + 2 L 2 + 2 L3 + L 4 ) ,
k2=h*f(to+h/2;zo+k1/2;yo+L1/2)=0,001*f(0,0005;2,5;0]=3,75
L2=h*g(to+h/2;zi+k1/2;yi+L1/2)=0,001*g( 0,0005;2,5;0]=0,001*(zo)=0,001*2,5=0,0025
k3=h*f(to+h/2;zi+k2/2;yi+L2/2)=0,001*f(0,0005;1,875;0,00125)=4,05625
L3=h*g(to+h/2;zi+k2/2;yi+L2/2)=0,001*g(0,0005;1,875;0,00125)=0,001*(1,875)=0,00187
k4=h*f(to+h;zi+k3;yi+L3)=0,001*f(0,001;4,05625;0,001875)=2,9625
L4=h*g(to+h;zi+k3;yi+L3)=0,001*g( 0,001;4,05625;0,001875)=0,00405625
z i + 1 = zi + 1/6 ( k 1 + 2 k 2 + 2 k 3 + k 4 ) corresponde ao z ( corrente))
z1=3,92916 ( corrente)
y i + 1 = yi + 1/6 ( L 1 + 2 L 2 + 2 L3 + L 4 ) , ( corresponde a y (carga))
y1=0,0021344375 ( carga) e assim por diante...
z10=9,40033 y10=0,0592291
y=carga e y'=corrente
x y y' z z'
0,000000 0,000000 0,000000 0,000000 5000,000000
0,001000 0,002134 3,929167 3,929167 3024,744792
0,002000 0,007352 6,297726 6,297726 1814,377860
0,003000 0,014420 7,710083 7,710083 1072,861183
0,004000 0,022582 8,536716 8,536716 618,732056
0,005000 0,031377 9,004716 9,004716 340,759131
0,006000 0,040520 9,253277 9,253277 170,760851
0,007000 0,049840 9,367716 9,367716 66,943933
0,008000 0,059229 9,400329 9,400329 3,690344
u2(o)=1 h=0,2
e 5t e−t e5t e−t 2 2t
soluções reais : u1t = − e 2t u2 t= 2 t e
3 3 3 3
solução 1: na ordem da equação diferencial u1 corresponde ao k1 e u2 corresponde a L2
k1 L1 k2 l2 K3 L3 K4 L4
u1 1,00000 0,8000 0,200 1,03083 0,41418 1,14292 0,52793 1,5747 0,95774
u2 1,00000
t 0
h 0,2
k1 L1 k2 l2 K3 L3 K4 L4
u1 2,12037 1,5528 0,936 2,09794 1,50612 2,37560 1,78124 3,4253 2,90129
u2 1,50699
t 0,2
h 0,2
k1 L1 k2 l2 K3 L3 K4 L4
u1 4,44124 3,3741 2,848 4,72805 4,34085 5,43274 5,03169 8,0918 7,93375
u2 3,24224
t 0,4
h 0,2
k1 L1 k2 l2 K3 L3 K4 L4
u1 9,73916 7,9667 7,804 11,45379 11,67980 13,27511 13,46222 20,2002 20,99307
u2 8,16343
t 0,6 utiliza esse valor para calcular quando t for igual a 0,8
h 0,2
k1 L1 k2 l2 K3 L3 K4 L4
u1 22,67662 21,0013 20,790 30,99589 31,17821 36,07195 36,21489 56,0140 56,76709
u2 21,34358
t 0,6 utiliza esse valor para calcular quando t for igual a 0,8
h 0,2
t 1 quinta linha
v1 57,86844
v2 56,73410
ti v1 v2
0 1,00000000 1,00000000
0,2 2,1203658 1,5069919
0,4 4,4412278 3,2422402
0,6 9,7391333 8,1634170
0,8 22,6765598 21,3452788
1 55,6611809 56,0305030
19) Use o algoritmo de Runge-Kutta para aproximar as soluções dos seguintes sistemas de
equações diferenciais de ordem superior:
a) y''-2y' +y=t e^t -t 0≤t1 y(o)=y'(o)=0 e h =0,1
b) t² y” -2ty' +2y=t³ ln(t) 1≤t2 h=0,1 y(1)=1
et 7t t 3 lnt 3t3
soluções reais : t 3 −te t 2 et −t −2 −
6 4 2 4
20) Aplique o método de Runge-Kutta para os sistemas para aproximar as soluções do
seguinte de equações diferenciais de primeira ordem:
a) v1=u ' 1=−4u 1−u 2cos t4sen t v2=u ' 2=3u1 u2−3sen t para 0t2
u1(0)=0 u2(0) =-1 h=0,5 faça até i=2
i ti v1 v2 k1 L1 k2 L2 k3 L3 k4 L4
0 0 u1=0 u2=-1
1 1
2 2
REFERENCIAS
• Disponível em www.cin.ufpe.br/~jds/metodoscomputacionais/numericos2(04).ppt , acessado em
16/06/2009
• BARROSO, L.C. et. al. Calculo Numerico (com aplicações). 2. ed. Editora Harbra.SP. 1987.
• BURDEN, R.L. e FAIRES, J.D. Analise Numérica.SP.Editora.Thomson.2003.
• CASTILHO, José Eduardo .Apostila de Cálculo Numérico .Universidade Federal de Uberlandia.
Faculdade de Matematica. Mar 2001
• GUIDORIZZI, Hamilton Luiz. Um curso de calculo, vol 1. 5a edição. Editora LTC. 2001.RJ.
• Calculo numerico em pdf.
• CLAUDIO, Dalcidio Morares e MARINS, Jussara Maria. Calculo Numerico
Computacional. Teoria e Pratica. Editora Atlas.1989.SP.
• VILLATE, Jaime E. Equações Diferenciais e Equações de Diferenças. Faculdade de Engenharia da
Universidade do Porto. Dezembro de 2001.
• Disponivel em http://quark.fe.up.pt/~villate/doc/eqdiferenciais/eqdiferenciais.pdf, acessado em
12/11/2009.