Upload
lamkhuong
View
218
Download
0
Embed Size (px)
Citation preview
1o-) Um balão de destilação aberto a atmosfera contem uma mistura binária com massatotal [m0] e composição conhecida em t=0. Exatamente em t=0+ a solução passa a destilar,com a composição da fase vapor em equilíbrio com a composição da fase líquida, expressapela relação de equilíbrio termodinâmico : y1 =f[x1], sendo “1” o componente mais volátil.Deseja-se saber a composição da mistura líquida no balão no instante em que contiver umamassa total conhecida [mfinal <m0] .
m(t)
D(t)y (t)
1
x (t)1
dx
d
f x x1 1 1( ) ( ) ( )
sujeita à condição inicial: x1(0)=x1,0.
onde:
m
m mfinal
0
01
Procedendo a integração de =0 a =1, o resultado buscado é o valor de x1 em =1.Considere o problema para a destilação de uma mistura binária de n-octano e n-heptanoconduzida à pressão atmosférica. Sabendo-se que no início da batelada o balão contém 25moles de n-octano e 75 moles de n-heptano[m0=100 moles], que no tempo final o balãocontém 10 moles da mistura [mfinal =10 moles] e que à pressão atmosférica a relação deequilíbrio entre a composição molar do n-heptano na fase líquida e na fase vapor é dadapor:
y f xx
x1 11
1
2 16
1 116
.
..
TOL 109
α100
100 10 yeq x( )
2.16 x
1 1.16 x D t x( ) y yeq x
0
D0
y x0
α t
D
x
0.75
x 0.75( )
n 200
X Rkadapt x 0 1 n D( ) Xn 1 0.375218 i 0 n
0 0.2 0.4 0.6 0.80.4
0.5
0.6
0.7
0.8
Xi 1
yeq Xi 1
Xi 0
1
20-) Considere o balão de destilação do primeiro exercício com um condensador na saída dovapor, em acordo com a figura abaixo:
m(t)
y (t)
x (t)
D(t)
(1+R)D(t)
R.D(t)
Mx (t)c
Condensador: M=cte.
x (t)cx (t)c
onde as composições indicadas referem-se ao n-heptano. Os balanços molares ( em formaadimensional) do sistema são dados por:
)(x)(y)R1(
d
)(dxc
c
e
)(x)(y)R1(x)(x
d
)(dx cc
para : 10 , em 0 x(0)=0.75 e xc(0)=0.85 ;
Onde: 9
10
mm
m
final0
0
; R = 0.3 ; 1.0m
M
0 e y
x
x
2 16
1 116
.
.
TOL 109
α10
9 R .3 λ .1 y x( )
2.16 x
1 1.16 x
D τ x( ) y2.16 x
0
1 1.16 x0
Δ 1 R( ) y x1
D0
x1
x0
Δ
α τ
D1
Δ
λ α
D
x0
.75 x1
y x0 xT 0.75 0.866( )
D 0 x( )T 0.105 0( )
X Rkadapt x 0 1 200 D( ) i 0 200
0 0.2 0.4 0.6 0.80.4
0.5
0.6
0.7
0.8
Xi 1
y Xi 1 Xi 2
Xi 0
X200 1 0.397
y X200 1 0.587
X200 2 0.664
2
3o-) Considere o modelo cinético da reação reversível: A B
k
k
1
2
conduzida em batelada em
um reator de mistura, iniciando-se com o componente A puro. A variação da concentraçãode A com o tempo é descrito (em forma adimensional) pela EDO:
dx
d
k
kx x
1 11
20
com .
Com : k1/k2=1000 obtenha x1() aplicando o método de Euler explícito com intervalo deintegração constante. Repita o procedimento com o método de Euler implícito.
tfinal 102
h 104
Ntfinal
h N 100 λ 1001 xexato t( ) exp λ t( )
(a) Método de Euler Explícito p exp λ h( )
F x( ) 1 λ h( ) x
t0
0 x0
1 k 1 N tk
k h xk
F xk 1 y
01 y
kp y
k 1k 0 N
0 4 103 8 10
30
0.2
0.4
0.6
0.8
1
xk
yk
tk
0 4 103 8 10
30
5 103
0.01
0.015
0.02
yk xk
tk(b) Método de Euler Implícito F x( )
x
1 λ h( ) k 1 N x
kF x
k 1 k 0 N
0 4 103 8 10
30
0.2
0.4
0.6
0.8
1
xk
yk
tk
0 4 103 8 10
30.02
0.015
0.01
5 103
0
yk xk
tk
4o-) Considere o modelo cinético de reação: A B C
k
k
k
1
2
3conduzida em batelada em um
reator de mistura, iniciando-se com o componente A puro.A variação da concentração de A e de B com o tempo é descrito pelo sistema de EDO’s:
dx
d
k
kx x1 1
21 1 0
1 1
+ x com 2 e
dx
d
k
kx
kx2 1
21
22 0
0
- 1+
kx com 3
2
Com : k1/k2=1000 e k3/k2 = 2 obtenha x1() e x2() aplicando o método de Euler explícitocom intervalo de integração constante. Repita o procedimento com o método de Eulerimplícito.
3
TOL 109
K1 103
K3 2
A1 K1( )
K1
1
1 K3( )
λ eigenvals A( ) λT 1.002 10
3 1.999
D t x( ) D A x
D
x1
0
tfinal 2 N 104
X Rkadapt x 0 tfinal N D k 0 N
0 0.01 0.02
0
0.2
0.4
0.6
0.8
1
Xk 1
Xk 2
Xk 0
0 0.5 1 1.5 20
0.2
0.4
0.6
0.8
1
Xk 2
Xk 0I identity 2( )
Eulerexplicito x h tfinal M I h A
X x
N ceiltfinal
h
t0
0
ti
i h
x M x
X i x
i 1 Nfor
X XT
X augment t X( )
X
tfinal 2 h10
3
2 x
1
0
X Eulerexplicito x h tfinal N length X 0 N 4001
k 0 N
0 4 103 8 10
30
0.2
0.4
0.6
0.8
1
Xk 1
Xk 2
Xk 0
0 0.5 1 1.5 20
0.2
0.4
0.6
0.8
1
Xk 2
Xk 0
4
Eulerimplicito x h tfinal M I h A( )1
X x
N ceiltfinal
h
t0
0
ti
i h
x M x
X i x
i 1 Nfor
X XT
X augment t X( )
X
tfinal 2 h10
3
2 x
1
0
X Eulerexplicito x h tfinal N length X 0 N 4001 k 0 N
0 4 103 8 10
30
0.2
0.4
0.6
0.8
1
Xk 1
Xk 2
Xk 0
0 0.5 1 1.5 20
0.2
0.4
0.6
0.8
1
Xk 2
Xk 0
5o-) Um reator tubular conduz adiabaticamente uma reação em fase gasosa exotérmica eirreversível, as equações que descrevem as variações de concentração de reagente e datemperatura ao longo do reator são [em forma adimensional]:
Balanço do Reagente:dy x
dxDa y x
x
( )( ) exp
( )
1
1 y(0) = 1
Balanço de Energia: d x
dxDa y x
x
( )( ) exp
( )( )
1
10 1
a eliminação do termo não linear nas equações acima, a integração da equação resultante ea utilização das condições de alimentação permitem chegar a:
( ) ( )
( )
( )
( )x y x
x
y x
y x
1 1 1
1 1
1 1, assim o perfil de concentração pode ser
descrito apenas por uma EDO:
dy x
dxDa y x
y x
y x
( )( ) exp
( )
( )
1
1 1 y(0) = 1
As variáveis e parâmetros adimensionais do problema são:
x
z
L
L
v T Tz a a
; y =
C
C ; =
T
T ; Da =
k ; =
E
R e =
C
calim alim
0
gas
alim - H
P
lim lim
Utili
zando os dados: L=2 m; R =0.1 m [raio do rator]; Calim=0.03kmol/m3 ; Talim=700K [-H]=104 kJ/kmol; cP = 1 kJ/(kg.K) ; E = 100kJ/kmol ; = 1.2 kg/m3, vz = 3 m/s e k0= 5 s-1,obtenha a variação de y e com x.
5
TOL 109
Rgas 8.314510joule
mol K L 2 m R .1 m Cfeed .03 10
3
mol
m3
Tfeed 700 K ΔH 104 J
mol cp 10
3 J
kg K E 100
J
mol ρ 1.2
kg
m3
k0 51
s vz 3
m
s
Dak0 L
vz γ
E
Rgas Tfeed β
ΔH Cfeed
ρ cp Tfeed Da 3.333 γ 0.017 β 0.357
θ y( ) 1 β 1 y( ) R y( ) Da y exp γ 11
θ y( )
D t y( ) D0
R y0
D
u
01
Y Rkadapt u 0 1 100 D( )k 0 100 z
kY
k 0 ck
Yk 1 Θ
kθ c
k
0 0.5 1 1.50
0.2
0.4
0.6
0.8
ck
zk
0 0.5 1 1.51
1.1
1.2
1.3
Θk
zk
taxa y Θ( ) Da y exp γ 11
Θ
Eulerexplicito N( ) h1
N
r0 0 0
r0 1 1
r0 2 1
j 0
ri 0 r
j 0 h
ri 1 r
j 1 h taxa rj 1 r
j 2
ri 2 θ r
i 1
j j 1
i 1 Nfor
r
N 100 Y Eulerexplicito N( )
k 0 N zk
Yk 0 c
kY
k 1 Θk
Yk 2
0 0.5 1 1.50
0.2
0.4
0.6
0.8
ck
zk
0 0.5 1 1.51
1.1
1.2
1.3
Θk
zk
6
6o-) Em um sistema fechado com três componentes o seguinte esquema cinético ocorre:
1
2
32
k
k
k
A B
B C A C
B B C
Sendo desta forma a variação temporal da concentração dos três componentes descrita pelo sistema de
EDO’s:
11 1 2 2 3 1
221 1 2 2 3 3 2 2
233 2 3
0 1
0 0
0 0
dyk y k y y y
dtdy
k y k y y k y ydt
dyk y y
dt
Sendo: y1=CA/CA,0 ; y2=CB/CA,0 e y3=CC/CA,0 .Calcule a variação de y1 , y2 e y3 com t utilizando os seguintes valores das constantes cinéticas:k1 =.08 s-1 ; k2=2.00104 s-1 e k3 =6.00 107 s-1 [ Note que para todo t tem-se: y1+y2+y3=1]
TOL 109
k1 .08 k2 2 104
k3 6 107
D t y( ) r0 k1 y0
r1 k2 y1
y2
r2 k3 y1 2
D0
r1 r0
D1
r0 r1 r2
D2
r2
D
y
1
0
0
D 0 y( )
0.08
0.08
0
tfinal 2 N 100 Y Rkadapt y 0 tfinal N D
k 0 N tk
Yk 0 y1k
Yk 1 y2k
Yk 2 y3k
Yk 3 soma
ky1k
y2k y3k
0 0.5 1 1.5 20.9
0.92
0.94
0.96
0.98
1
y1k
tk
0 0.5 1 1.5 20
1 105
2 105
3 105
4 105
y2k
tk
7
0 0.5 1 1.5 20
0.02
0.04
0.06
0.08
0.1
y3k
tk
0 0.5 1 1.5 20.99
1
1.01
somak
tk
tfinal 200 N 104
Y Rkadapt y 0 tfinal N D
k 0 N tk
Yk 0 y1k
Yk 1 y2k
Yk 2 y3k
Yk 3 soma
ky1k
y2k y3k
0 50 100 150 2000.4
0.6
0.8
1
y1k
tk
0 50 100 150 2000
1 105
2 105
3 105
4 105
y2k
tk
0 50 100 150 2000
0.2
0.4
0.6
y3k
tk
0 50 100 150 2000.99
1
1.01
somak
tk
d t y( ) y3 1 y0
y1
r0 k1 y0
r1 k2 y1
y3
r2 k3 y1 2
D0
r1 r0
D1
r0 r1 r2
D
y1
0
d 0 y( )0.08
0.08
tfinal 2N 100 Y Rkadapt y 0 tfinal N d
8
k 0 N tk
Yk 0 y1k
Yk 1 y2k
Yk 2 y3k
1 y1k y2k
0 0.5 1 1.5 20.9
0.92
0.94
0.96
0.98
1
y1k
tk
0 0.5 1 1.5 20
1 105
2 105
3 105
4 105
y2k
tk
0 0.5 1 1.5 20
0.02
0.04
0.06
0.08
0.1
y3k
tk
tfinal 200N 10
4 Y Rkadapt y 0 tfinal N d
k 0 N tk
Yk 0 y1k
Yk 1 y2k
Yk 2 y3k
1 y1k y2k
0 50 100 150 2000.4
0.6
0.8
1
y1k
tk
0 50 100 150 2000
1 105
2 105
3 105
4 105
y2k
tk
0 50 100 150 2000
0.2
0.4
0.6
y3k
tkResolução do Problema considerando que y2 está em estado quase estacionário
TOL 109
9
k1 .08 k2 2 104
k3 6 107
y2_eq y1 y3
k22
y32
4 k1 k3 y1 k2 y3
2 k3
d t y( ) y2 y2_eq y0
y1
r0 k1 y0
r1 k2 y1
y2
r2 k3 y2 2
D0
r1 r0
D1
r2
D
y1
0
d 0 y( )0.08
0.08
tfinal 2N 100 Y Rkadapt y 0 tfinal N d
k 0 N tk
Yk 0 y1k
Yk 1 y3k
Yk 2 y2k
y2_eq y1ky3k
0 0.5 1 1.5 20.9
0.92
0.94
0.96
0.98
1
y1k
tk
0 0.5 1 1.5 22 10
5
2.5 105
3 105
3.5 105
4 105
y2k
tk
0 0.5 1 1.5 20
0.02
0.04
0.06
0.08
0.1
y3k
tk
tfinal 200N 100 Y Rkadapt y 0 tfinal N d
k 0 N tk
Yk 0 y1k
Yk 1 y3k
Yk 2 y2k
y2_eq y1ky3k
0 50 100 150 2000.4
0.6
0.8
1
y1k
tk
0 50 100 150 2000
1 105
2 105
3 105
4 105
y2k
tk
0 50 100 150 2000
0.2
0.4
0.6
y3k
tk
tfinal 5 104
N 100 Y Rkadapt y 0 tfinal N d
k 0 N tk
Yk 0 y1k
Yk 1 y3k
Yk 2 y2k
y2_eq y1ky3k
10
0 2 104 4 10
40
0.2
0.4
0.6
0.8
1
y1k
tk
0 2 104 4 10
40
1 105
2 105
3 105
4 105
y2k
tk
0 2 104 4 10
40
0.2
0.4
0.6
0.8
1
y3k
tk
11
COQ 862- Métodos Numéricos em Modelagem e Simulação de Processos Prof. Evaristo
3o Período de 2008
1
O PROBLEMA DO PÊNDULO SIMPLES
Primeira Forma das Equações:
Orientação do eixo vertical para cima.
No diagrama acima se tem: - L x +L ; -L y 0 e 0 , assim:
L
ysen
L
xcos
, resultando em :
L
yTsenTT
L
xTcosTT
y
x,
aplicando a Segunda Lei de Newton na duas direções:
mgL
tytTmgtT
dt
tydm
L
txtTtT
dt
txdm
y2
2
x2
2
além destas, o pêndulo está submetido à restrição algébrica: 222 Ltytx
Reformulando as equações em termos das variáveis adimensionais:
L
gt e
gm
T ;
L
x ;
L
x
tyx , resulta :
1
1d
dd
d
22
2
2
2
2
tytx
tytt
ty
txtt
tx
COQ 862- Métodos Numéricos em Modelagem e Simulação de Processos Prof. Evaristo
3o Período de 2008
2
Adotando nestas equações: tt , resulta:
1
1d
dd
d
22
2
2
2
2
tytx
tytt
ty
txtt
tx
Segunda Forma das Equações:
Orientação do eixo vertical para baixo.
No diagrama acima se tem: - L x +L ; 0 y +L e 0 , assim:
L
ysen
L
xcos
, resultando em :
L
yTsenTT
L
xTcosTT
y
x,
aplicando a Segunda Lei de Newton na duas direções:
mgL
tytTmgtT
dt
tydm
L
txtTtT
dt
txdm
y2
2
x2
2
além destas, o pêndulo está submetido à restrição algébrica: 222 Ltytx
Reformulando as equações em termos das variáveis adimensionais:
COQ 862- Métodos Numéricos em Modelagem e Simulação de Processos Prof. Evaristo
3o Período de 2008
3
L
gt e
gm
T ;
L
x ;
L
x
tyx , resulta :
1
1d
dd
d
22
2
2
2
2
tytx
tytt
ty
txtt
tx
Adotando nestas equações: tt , resulta:
1
1d
dd
d
22
2
2
2
2
tytx
tytt
ty
txtt
tx
Simplificando a notação (considerando todas as variáveis adimensionais!) surgem as quatro
formas alternativas de expressar as equações do pêndulo simples:
Equações do Pêndulo Referências:
1
1tytx
1tytλdt
tyd
txtλdt
txd
22
2
2
2
2
no domínio:
0
0y1
1x1
(1): páginas 151 e 154
(2): página 484
(3): página 12
2
1tytx
1tytλdt
tyd
txtλdt
txd
22
2
2
2
2
no domínio:
0
0y1
1x1
(1): páginas 5 e 142
(4): página 10
COQ 862- Métodos Numéricos em Modelagem e Simulação de Processos Prof. Evaristo
3o Período de 2008
4
3
1tytx
tytλ1dt
tyd
txtλdt
txd
22
2
2
2
2
no domínio:
0
1y0
1x1
(5): página 1.
4
1tytx
tytλ1dt
tyd
txtλdt
txd
22
2
2
2
2
no domínio:
0
1y0
1x1
(1): Brenan, K.E. , Campbell, S.L. & Petzold, L.R. : Numerical Solution of Initial-Value
Problems in Differential-Algebraic Equations , Elsevier Science Pubblishing Co., Inc. .
1989.
(2) Hairer E. & Wanner G. :Solving Ordinary Differential Equations II . Stiff and
Differential-Algebraic Problems, Springer Series Computational Mathematics, Vol 14,
1991
(3) Ascher, U.M. & Petzold L.R. : Computer Methods for Ordinary Differential Equations
and Differential-Algebric Equations SIAM, Society for Industrial ans Applied
Mathematcis, 1998.
(4) Ferreira da Costa Jr. , E . : Resolução Automática de Equações Algébrico-Diferenciais
de Índice Superior, Tese de Doutorado, PEQ/COPPE/UFRJ, 2003.
(5) Queipo, C. : Problema do Pêndulo, Trabalho para disciplina COQ-862, 200
Resolução do Problema em Forma Explícita
Primeira Forma das Equações: [com as duas definições de t ]
Em vista de:
ysen
xcos [ x e y já na forma adimensional!], tem-se:
tsenty
tcostx
para 0(t), e
COQ 862- Métodos Numéricos em Modelagem e Simulação de Processos Prof. Evaristo
3o Período de 2008
5
2
2
2
2
2
2
2
2
2
2
y
x
dt
tdtsen
dt
tdtcos
dt
tyd
dt
tdtcos
dt
tdtsen
dt
txd
dt
tdtcostv
dt
tdydt
tdtsentv
dt
tdx
mas em vista de:
1tsentλ1tytλdt
tyd
tcostλtxtλdt
txd
2
2
2
2
, resultando finalmente no
sistema de equações:
tcos1dt
tdttsen
dt
tdtcos
tsen0dt
tdttcos
dt
tdtsen
2
2
2
2
2
2
efetuando os produtos indicados e somando as equações resultantes, chega-se a:
tcosdt
td2
2
para 0(t)
adotando na equação acima: 2
t2
- para t2
tt2
t
2
2
2
2
dt
td
dt
td e tsentcos
, logo:
tsendt
td2
2
para -/2(t)/2 [ Ref. (3): Eq. 1.2 –pág.5],
onde : tcosty e tsentx
Alternativamente, adotando na equação:
2
3t
2 para
2-ttt
2t
, logo
2
2
2
2
dt
td
dt
td e tsentcos
, logo:
tsendt
td2
2
para
2
3t
2
, onde : tcosty e tsentx
COQ 862- Métodos Numéricos em Modelagem e Simulação de Processos Prof. Evaristo
3o Período de 2008
6
Segunda Forma das Equações: [com as duas definições de t ]
Em vista de:
ysen
xcos [ x e y já na forma adimensional!], tem-se:
tsenty
tcostx para
0(t), e
2
2
2
2
2
2
2
2
2
2
y
x
dt
tdtsen
dt
tdtcos
dt
tyd
dt
tdtcos
dt
tdtsen
dt
txd
dt
tdtcostv
dt
tdydt
tdtsentv
dt
tdx
mas em vista de:
tsentλ11tytλdt
tyd
tcostλtxtλdt
txd
2
2
2
2
, resultando finalmente no
sistema de equações:
1dt
tdttsen
dt
tdtcos
0dt
tdttcos
dt
tdtsen
2
2
2
2
2
2
sistema análogo ao obtido na Primeira Forma, desta forma apresentará a mesma solução!
Dando origem assim a:
tcosdt
td2
2
para 0(t) onde:
tsenty
tcostx
Com: 2
t2
- para t2
tt2
t
, tem-se:
tsendt
td2
2
para -/2(t)/2 , onde : tcosty e tsentx
Alternativamente, adotando na equação:
2
3t
2 para
2-ttt
2t
, logo:
tsendt
td2
2
para
2
3t
2
[ Ref. (1): Eq. 6.2.5–pág.151],
onde : tcosty e tsentx
Página 1
COQ 862 MÉTODOS NUMÉRICOS Christian Queipo
PROBLEMA DO PÊNDULO 24/06/2003
Formulação do Problema do Pêndulo (adimensionado)
Equações Diferenciais Ordinárias
dxu
d
dyv
d
duF x
d
1dv
F yd
Restrições Algébricas.
2 2 1 0x y
Sistema Diferencial Estendido
Diferenciando a restrição algébrica uma vez:
0dx dy
x yd d ou 0x u y v
mais uma vez:
Página 2
COQ 862 MÉTODOS NUMÉRICOS Christian Queipo
PROBLEMA DO PÊNDULO 24/06/2003
Obtém-se o Sistema Diferencial Estendido:
dxu
d
dyv
d
duF x
d
1dv
F yd
3dF
vd
onde as variáveis devem atender as seguintes restrições algébricas:
2 2 1 0x y
0x u y v
2 2 0u v y F
Das 5 variáveis, apenas 2 podem ser fixadas arbitrariamente: as 3 restantes ficam determinadas pelas restrições algébricas. Entretanto, não é qualquer a combinação de variáveis que pode ser escolhida.
Página 3
COQ 862 MÉTODOS NUMÉRICOS Christian Queipo
PROBLEMA DO PÊNDULO 24/06/2003
Solução do Problema
O pacote DASSL resolve sistema de índice 1, que não é o caso do problema do pêndulo. Porém, existem outros pacotes (PSIDE, por exemplo), que podem integrar sistemas de índice superior (até 3 no caso do PSIDE). Para isto, deve-se conhecer o índice de cada variável; no caso do pêndulo, , , ,x y u v são de índice 1, entanto F é de índice 3.
Condições Iniciais:
0 1x (da primeira restrição: 0 0y , e da segunda 0 0u )
0 0v (da terceira restrição: 0F )
Os resultados (obtidos com o PSIDE) se mostram abaixo; a resolução seguindo ambos enfoques (diferencial estendido, e EAD) conduz a resultados praticamente idênticos.
-1.5
-1
-0.5
0
0.5
1
1.5
2
-1.2 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 1.2dz/
d
x vs. dx/dt
y vs. dy/dt
Página 4
COQ 862 MÉTODOS NUMÉRICOS Christian Queipo
PROBLEMA DO PÊNDULO 24/06/2003
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
2.5
3
3.5
0 1 2 3 4 5 6 7
x y dx/dt dy/dt F
Página 5
COQ 862 MÉTODOS NUMÉRICOS Christian Queipo
PROBLEMA DO PÊNDULO 24/06/2003
Rotina do Sistema Diferencial Estendido
PROGRAM TEST IMPLICIT REAL*8(A-H,O-Z) EXTERNAL GEVAL,MEVAL,JEVAL PARAMETER (NEQN=5,JNUM=.TRUE.,NLJ=NEQN,NUJ=NEQN,& MNUM=.TRUE.,NLM=NEQN,NUM=NEQN,& LRWORK=20+27*NEQN+6*NEQN**2,LIWORK=20+4*NEQN) DIMENSION Y(NEQN),DY(NEQN),RWORK(LRWORK),IWORK(LIWORK),& IND(NEQN),G(NEQN) !Inicialização Y(1)=1.D0 Y(2)=0.D0 Y(3)=0.D0 Y(4)=0.D0 Y(5)=0.D0 DY(1)=Y(3) DY(2)=Y(4) DY(3)=-Y(5)*Y(1) DY(4)=-Y(5)*Y(2)+1.D0 !Parâmetros do PSIDE ATOL=1.D-8 RTOL=1.D-6 NSTP=100 T=0.D0 DT=1.D-1 IND=1 OPEN(1,FILE="TESTE.DAT",STATUS='UNKNOWN') 10 FORMAT(<1+2*NEQN>F12.8) WRITE(1,10) T,Y,DY DO N=1,NSTP TEND=T+DT WRITE(*,*) 'INICIATING STEP...',N CALL PSIDE(NEQN,Y,DY,GEVAL,JNUM,NLJ,NUJ,& JEVAL,MNUM,NLM,NUM,MEVAL,T,TEND,RTOL,ATOL,IND,& LRWORK,RWORK,LIWORK,IWORK,RPAR,IPAR,IDID) IF (IDID.LE.-1) THEN WRITE(*,*) 'ERROR, IDID...',IDID EXIT ENDIF WRITE(1,10) T,Y,DY T=TEND ENDDO CLOSE(1) STOP END PROGRAM
Página 6
COQ 862 MÉTODOS NUMÉRICOS Christian Queipo
PROBLEMA DO PÊNDULO 24/06/2003
Rotina do Sistema Diferencial Estendido (cont.)
SUBROUTINE GEVAL(NEQN,T,Z,DZ,G,IERR,RPAR,IPAR) IMPLICIT REAL*8(A-H,O-Z) DIMENSION Z(NEQN),DZ(NEQN),G(NEQN) X=Z(1) Y=Z(2) U=Z(3) V=Z(4) F=Z(5) DX=DZ(1) DY=DZ(2) DU=DZ(3) DV=DZ(4) DF=DZ(5) !Sistema EAD G(1)=DX-U G(2)=DY-V G(3)=DU+F*X G(4)=DV+F*Y-1.D0 G(5)=DF-3.D0*V RETURN END SUBROUTINE JEVAL(LDJ,NEQN,NLJ,NUJ,T,Y,DY,DGDY,RPAR,IPAR) RETURN END SUBROUTINE MEVAL(LDM,NEQN,NLM,NUM,T,Y,DY,DGDDY,RPAR,IPAR) RETURN END
Página 7
COQ 862 MÉTODOS NUMÉRICOS Christian Queipo
PROBLEMA DO PÊNDULO 24/06/2003
Rotina do Sistema Algébrico - Diferencial
PROGRAM TEST IMPLICIT REAL*8(A-H,O-Z) EXTERNAL GEVAL,MEVAL,JEVAL PARAMETER (NEQN=5,JNUM=.TRUE.,NLJ=NEQN,NUJ=NEQN,& MNUM=.TRUE.,NLM=NEQN,NUM=NEQN,& LRWORK=20+27*NEQN+6*NEQN**2,LIWORK=20+4*NEQN) DIMENSION Y(NEQN),DY(NEQN),RWORK(LRWORK),IWORK(LIWORK),& IND(NEQN),G(NEQN) !Inicialização Y(1)=1.D0 Y(2)=0.D0 Y(3)=0.D0 Y(4)=0.D0 Y(5)=0.D0 DY(1)=Y(3) DY(2)=Y(4) DY(3)=-Y(5)*Y(1) DY(4)=-Y(5)*Y(2)+1.D0 !Parâmetros do PSIDE ATOL=1.D-8 RTOL=1.D-6 NSTP=100 T=0.D0 DT=1.D-1 !Habilita vetor dos índices IWORK(2)=1 !X,Y,U,V são de índice 1 IND(1:4)=1 !F é de índice 3 IND(5)=3 OPEN(1,FILE="TESTE.DAT",STATUS='UNKNOWN') 10 FORMAT(<1+2*NEQN>F12.8) WRITE(1,10) T,Y,DY DO N=1,NSTP TEND=T+DT WRITE(*,*) 'INICIATING STEP...',N CALL PSIDE(NEQN,Y,DY,GEVAL,JNUM,NLJ,NUJ,& JEVAL,MNUM,NLM,NUM,MEVAL,T,TEND,RTOL,ATOL,IND,& LRWORK,RWORK,LIWORK,IWORK,RPAR,IPAR,IDID) IF (IDID.LE.-1) THEN WRITE(*,*) 'ERROR, IDID...',IDID EXIT ENDIF WRITE(1,10) T,Y,DY T=TEND ENDDO CLOSE(1) STOP END PROGRAM
Página 8
COQ 862 MÉTODOS NUMÉRICOS Christian Queipo
PROBLEMA DO PÊNDULO 24/06/2003
Rotina do Sistema Algébrico – Diferencial (cont.)
SUBROUTINE GEVAL(NEQN,T,Z,DZ,G,IERR,RPAR,IPAR) IMPLICIT REAL*8(A-H,O-Z) DIMENSION Z(NEQN),DZ(NEQN),G(NEQN) X=Z(1) Y=Z(2) U=Z(3) V=Z(4) F=Z(5) DX=DZ(1) DY=DZ(2) DU=DZ(3) DV=DZ(4) !Sistema EAD G(1)=DX-U G(2)=DY-V G(3)=DU+F*X G(4)=DV+F*Y-1.D0 G(5)=X**2.D0+Y**2.D0-1.D0 RETURN END SUBROUTINE JEVAL(LDJ,NEQN,NLJ,NUJ,T,Y,DY,DGDY,RPAR,IPAR) RETURN END SUBROUTINE MEVAL(LDM,NEQN,NLM,NUM,T,Y,DY,DGDDY,RPAR,IPAR) RETURN END