Вы находитесь на странице: 1из 162

Elementos de Análise numérica

Solução de problemas em engenharia

• Sem computador • Com computador

Formulação
Formulação
Solução Solução

Interpretação
Interpretação
Tópicos
• Interpolação
• Ajuste de equações
• Derivadas numéricas
• Integração numérica
• Raízes de equações
• Sistemas de equações lineares
• Sistemas de equações não lineares
• Equações diferenciais
• Raizes da equaçao de manning
• Canal prismático
• Canal com seção dada em tabela
• Equação de remanso
• Solução da equação para encontrar dx ideal para
muskingun cunge
• Solução da propagação de reservatório usando Newton
• Erros simples (método de Euler)
Interpolação numérica
• Em várias aplicações de recursos hídricos
existem relações entre variáveis que não
podem ser expressas por funções analíticas
simples.
• Curva cota-volume de um reservatório.
• Relação cota-área molhada ou cota – raio hidráulico
de uma seção transversal
• Nestes casos é importante a interpolação
para aproximar uma função aos dados.
Interpolação numérica

Cota Volume

100 400

volume
102 1000

104 2000

109 4500 cota

Qual é o volume para a cota 106?


Interpolação numérica

Interpolação linear
• A forma mais simples de interpolação é a interpolação
linear, em que dois pontos são unidos por uma linha reta

volume
f ( x1 ) − f ( x0 )
f 1( x) = f ( x0 ) + ⋅ ( x − x0 )
x1 − x0

x cota
Interpolação numérica

Interpolação quadrática
• Encontra uma parábola que aproxima 3 dados
consecutivos

f 2( x) = b0 + b1 ⋅ ( x − x0 ) + b2 ⋅ ( x − x0 ) ⋅ ( x − x1 )

volume

x cota
Interpolação numérica

Splines
• Splines interpolam os dados e garantem a continuidade da função e
da derivada de ordem m. Para assegurar isto, a interpolação deve ser
feita utilizando polinômios de grau m+1.
• Para garantir a continuidade da função, basta utilizar retas
(polinômios de primeiro grau)
• Para garantir a continuidade da função e da sua primeira derivada, é
necessário utilizar parábolas.
• Para garantir a continuidade da função, e das duas primeiras
derivadas, é necessário usar splines cúbicos.
Interpolação numérica

Splines
• Alguns softwares de planilha usam splines
cúbicos para suavizar linhas de gráficos.
48
46
44
42
40
38
36
34
32
30
0 20 40 60 80 100 120 140
Interpolação numérica

Splines
• Os splines cúbicos podem causar alguns
problemas.
47

45

43

41

39

37

35
0 5 10 15 20 25
Interpolação numérica

Splines
• Os splines cúbicos podem causar alguns
problemas.
47

45

43

41

39

37

35
0 5 10 15 20 25
Interpolação numérica

Rotinas para interpolação


• Existem rotinas prontas em praticamente
qualquer linguagem para interpolação com
polinômios e splines.
• Calculadora, Matlab, Excel, etc…
• Rotina FINT usa interpolação linear
Ajuste de equações
• Em alguns casos é necessário gerar funções que aproximam
razoavelmente um conjunto de dados.
• Ao contrário da interpolação, no ajuste não é necessário
respeitar todos os pontos.
• A idéia é minimizar os erros com uma função simples.
30

25

20

15

10

0
0 5 10 15 20 25
Ajuste de equações

Ajuste – exemplo em simulação


• Relação entre largura de um
rio e área de drenagem obtida Brio = 3.2466 ⋅ A bacia 0.4106
a partir de seções transversais
em locais de postos
300

fluviométricos da ANA na 250

bacia do rio Taquari-Antas


200

Largura do rio (m)


150

• Utilizada para calcular os


100

parâmetros do modelo 50

Muskingum Cunge em locais


sem dados.
0
0 5000 10000 15000 20000 25000 30000
Área da bacia (km2)
Ajuste de equações

Ajuste – exemplo em simulação


• Curva chave de um posto pluviométrico é um ajuste de uma
equação pré-determinada aos dados de medição de vazão.
Derivadas numéricas
• Considerando que a
definição de derivada é:

dv ∆v
= lim
dt ∆t
• quando dt vai a zero.
• Então é intuitivo considerar
uma aproximação para a
derivada utilizando um dt
pequeno.
Derivadas numéricas

dv
v dt

∆v
∆t

t
Derivadas numéricas

Erros de truncamento
• As derivadas numéricas são apenas uma
aproximação razoável das derivadas analíticas.

df ∆f

dt ∆t

• É possível avaliar o erro cometido nesta


aproximação utilizando as séries de Taylor
Derivadas numéricas

Séries de Taylor
• A série de Taylor permite estimar o valor de uma função
num ponto a partir do valor da função e das suas derivadas
em um ponto próximo.

f ′′( xi ) 2 f ′′′( xi ) 3
f ( xi +1 ) = f ( xi ) + f ′( xi ) ⋅ h + ⋅h + ⋅ h + ... + Rn
2! 3!

• Onde h é a diferença entre xi+1 e xi.


• A série de Taylor é infinita.
• A aproximação da derivada numérica é finita
Derivadas numéricas

Séries de Taylor
• O resto

f ′′( xi ) 2 f ′′′( xi ) 3
f ( xi +1 ) = f ( xi ) + f ′( xi ) ⋅ h + ⋅h + ⋅ h + ... + Rn
2! 3!

O resto é dado por


f n +1 (ξ ) n +1
Rn = ⋅h
(n + 1)!

Onde fn+1 é a derivada de ordem n+1 e ξ


é um valor entre xi+1 e xi
Derivadas numéricas

Séries de Taylor

A magnitude do valor do resto é da ordem de hn+1

f (ξ ) n +1
n +1
Rn = ⋅h
(n + 1)!
Derivadas numéricas

Séries de Taylor e derivadas


f ′′( xi ) 2 f ′′′( xi ) 3
f ( xi +1 ) = f ( xi ) + f ′( xi ) ⋅ h + ⋅h + ⋅ h + ... + Rn
2! 3!

f ( xi +1 ) = f ( xi ) + f ′( xi ) ⋅ h + ... + Rn

f ( xi +1 ) − f ( xi ) Rn
f ′( xi ) = −
h h

Por isso a derivada numérica é apenas uma aproximação, com erro


De truncamente dado por Rn/h
Derivadas numéricas

Séries de Taylor e derivadas


f ( xi +1 ) − f ( xi ) Rn
f ′( xi ) = −
h h

O valor do erro Rn/h é da ordem de h, por isso pode-se expressar

f ( xi +1 ) − f ( xi )
f ′( xi ) = + O ( h)
h

Onde O(h) é um erro da ordem de h. Isto significa que quanto menor


o passo (incremento), menor o erro da aproximação.
Derivadas numéricas

Erros de arredondamento

Erros de arredondamento ocorrem porque o computador utiliza


uma representação binária com um número finito de bytes para
representar os números reais.
Derivadas numéricas

Erros – compromisso entre


truncamento e arredondamento

erro total

truncamento

arredondamento

Incremento
Derivadas numéricas

Tipos de derivadas numéricas


f ( xi +1 ) − f ( xi ) Progressiva
f ′( xi ) = + O ( h)
h forward

f ( xi ) − f ( xi −1 ) Regressiva
f ′( xi ) = + O ( h)
h backward

f ′( xi ) =
f ( xi +1 ) − f ( xi −1 )
− O(h 2 )
Centrada
2⋅h Centered

Considerando que h é pequeno, o erro de truncamento da


derivada numérica centrada é menor do que os outros.
Derivadas numéricas

progressiva

analítica
v
regressiva

t
Derivadas numéricas

progressiva

analítica
v
regressiva

t
centrada
Derivadas numéricas

Exemplo derivada numérica


• A celeridade cinemática
de propagação de
perturbações no
dQ
escoamento é calculada c=
por:
dA
• onde c é a celeridade, Q é
a vazão e A é a área da
seção transversal
Derivadas numéricas

Exemplo derivada numérica


• Considerando uma
dQ
seção prismática c=
regular: dA
dQ
c= dh
h dA
dh

A⋅ R 3 ⋅ S
2 1
2

Q=
n
Derivadas numéricas

Exemplo derivada numérica


• Considerando uma
dQ
seção prismática c=
regular: dA
dQ
c= dh
h dA
dh
Q( h ) − Q( h + ∆h )
A⋅ R ⋅ S
2 1
3 2

Q=
n c= ∆h
A( h ) − A( h + ∆h )
∆h
Derivadas numéricas

Exemplo derivada numérica


• Considerando uma seção qualquer dQ
c=
48 dA
46
44
42
40
dQ
h dh
38
c=
36
dA
34
32
dh
30
0 20 40 60 80 100 120 140
Q( h ) − Q( h + ∆h )
Tabelas de interpolação c= ∆h
A⋅ R 3 ⋅ S
2 1

A( h ) − A( h + ∆h )
2

Q=
n
A; R e Q em
função de h ∆h
Integração numérica
• Os problemas de integração numérica
surgem, por exemplo, quando é necessário
obter informações de área molhada e raio
hidráulico de uma seção transversal de um
rio, definida por pares de pontos x e y.
• Também surgem quando é necessário
discretizar uma função analítica contínua,
de forma que sua área seja mantida.
Integração numérica

48
46
44
42
40
38
36
34
32
30
0 20 40 60 80 100 120 140
Integração numérica

Itegração numérica
• Aproximar pontos sucessivos por polinômio
simples e integrar polinômio.
• Caso mais simples: polinômio de grau 1 =
reta = integração por trapézios
Integração numérica

Regra trapezoidal
f(x)
f(b)

f( a ) + f( b) f(a)
I = ( b − a) ⋅
2

a b x

Aproxima área sob a curva pela área do trapézio


Integração numérica

Regra trapezoidal
ERRO!
f(x)
f(b)

f( a ) + f( b) f(a)
I = ( b − a) ⋅
2

a b x

Aproxima área sob a curva pela área do trapézio


Integração numérica

48
46
44
42
40
38
36
34
32
30
0 20 40 60 80 100 120 1
Integração numérica

• Exemplo hidrograma
unitário derivado do
reservatório linear
simples.
• Gráfico corresponde a
• K=5 dias 0.25

• Dt =1 dia
0.2

0.15

−t
1 k 0.1
µ (t ) = e
k 0.05

0
0 5 10 15 20 25 30
Integração numérica

• Exemplo hidrograma unitário derivado do reservatório


linear simples.
• Aproximação discreta de função contínua, mantendo a
mesma área.
• Representação discreta mais apropriada para programar
modelos matemáticos em computadores

0.25

0.2

0.15

0.1

0.05

0
0 5 10 15 20 25 30 3
Raízes de equações
• Em recursos hídricos surgem muitas
equações de difícil solução analítica, com
termos implícitos e não lineares.
• Métodos numéricos são úteis para este tipo
de problema.
Raízes de equações

Métodos numéricos para encontrar


raízes de equações
• Bissecção
f(x)
• Falsa posição
• Newton-Raphson
• Secantes raiz

x
Raízes de equações

Método de bissecção
• No método de bissecção é
necessário fornecer duas
estimativas iniciais de
valor de x que “cercam” a
xu − xl
xr =
raiz.
• Dadas as duas estimativas
iniciais xu e xl, uma
primeira estimativa para a 2
raiz é dada por:
Raízes de equações

Método de bissecção

F(x)

x
Raízes de equações

Método de bissecção
Supõe-se que a raiz esteja exatamente
entre xu e xl
F(x)

xu − xl
xr =
2
x
Raízes de equações

Método de bissecção

F(x)

xu − xl
xr =
2
Se f(xr).f(xl) negativo, então
Busca entre xr e xl
x
Se não, busca entre xr e xu
Raízes de equações

Método de bissecção

F(x)

xu − xl
xr =
2
Busca entre xr e xu
x Busca termina de acordo
Com critério de parada
Raízes de equações

Método de bissecção
• Critérios de parada
– Incremento de x menor que limite dado
– Diferença entre f(x) no ponto testado e zero é
menor que limite dado
Raízes de equações

Método de falsa posição


Supõe-se que a raiz esteja onde estaria a raiz de
F(x)
uma linha reta unindo os dois pontos

x
Raízes de equações

Método de falsa posição


Supõe-se que a raiz esteja onde estaria a raiz de
F(x)
uma linha reta unindo os dois pontos

x
Raízes de equações

Método de falsa posição


Supõe-se que a raiz esteja onde estaria a raiz de
F(x)
uma linha reta unindo os dois pontos

x
Raízes de equações

Método de falsa posição


Supõe-se que a raiz esteja onde estaria a raiz de
F(x)
uma linha reta unindo os dois pontos

x
Raízes de equações

• Bissecção e falsa posição sempre encontram


a raiz, mas podem ser demorados
• Além disso, exigem que sejam dadas duas
tentativas iniciais com sinais contrários da
função
Raízes de equações

Método de Newton-Raphson
Supõe-se que a raiz pode ser encontrada seguindo uma
linha reta dada pela derivada da função no ponto inicial
F(x)

x Tentativa inicial
Raízes de equações

Método de Newton-Raphson
Supõe-se que a raiz pode ser encontrada seguindo uma
linha reta dada pela derivada da função no ponto inicial
F(x)

Tentativa inicial x
derivada
Raízes de equações

Método de Newton-Raphson
Supõe-se que a raiz pode ser encontrada seguindo uma
linha reta dada pela derivada da função no ponto inicial
F(x)

Tentativa inicial x
derivada
Raízes de equações

Método de Newton-Raphson
Supõe-se que a raiz pode ser encontrada seguindo uma
linha reta dada pela derivada da função no ponto inicial
F(x)

derivada
Raízes de equações

Método de Newton-Raphson
Supõe-se que a raiz pode ser encontrada seguindo uma
linha reta dada pela derivada da função no ponto inicial
F(x)

x
Raízes de equações

Método de Newton-Raphson
• Novamente a série de
Taylor
f ′′( xi ) 2 f ′′′( xi ) 3
f ( xi +1 ) = f ( xi ) + f ′( xi ) ⋅ h + ⋅h + ⋅ h + ... + Rn
2! 3!

se h = xi +1 − xi então

f ( xi +1 ) ≅ f ( xi ) + f ′( xi ) ⋅ ( xi +1 − xi )
Raízes de equações

Método de Newton-Raphson
• Novamente a série de
Taylor
f ( xi +1 ) ≅ f ( xi ) + f ′( xi ) ⋅ ( xi +1 − xi )

Supondo que f ( xi +1 ) = 0 (xi+1 é a raiz)

f ( xi )
xi +1 = xi −
f ′( xi )
Raízes de equações

Problemas do método de Newton-


Raphson
• É melhor que a primeira estimativa não esteja longe demais da raiz

x
Raízes de equações

Problemas do método de Newton-


Raphson
• É melhor que a primeira estimativa não esteja longe demais da raiz

x
Raízes de equações

Método das Secantes


• Um possível problema do
método de Newton-
Raphson, especialmente
em recursos hídricos, é
que pode ser difícil f ( xi −1 ) − f ( xi )
f ′( xi ) ≅
estimar a derivada da
função.
( xi −1 − xi )
• Neste caso é possível
utilizar uma aproximação
numérica para a derivada,
gerando o método das
secantes.
Raízes de equações

Método das Secantes


• Um possível problema do método de Newton-
Raphson, especialmente em recursos hídricos, é
que pode ser difícil estimar a derivada da função.
• Neste caso é possível utilizar uma aproximação
numérica para a derivada, gerando o método das
secantes.

f(x)
f ( xi −1 ) − f ( xi )
f ′( xi ) ≅
( xi −1 − xi )

f ( xi ) ⋅ ( xi −1 − xi )
xi +1 = xi −
f ( xi −1 ) − f ( xi )

x
Tentativa inicial

secante
Raízes de equações

Método das Secantes

f(x)

f ( xi ) ⋅ ( xi −1 − xi )
xi +1 = xi −
f ( xi −1 ) − f ( xi )

x
Tentativa inicial

secante
Raízes de equações

Comparação de métodos
• Newton-Raphson é mais rápido, seguido do
método das secantes, da falsa posição e
finalmente bissecção.
• Newton-Raphson e Secantes podem
divergir.
• Secantes pode ser aplicado para funções em
que é difícil obter derivadas (comuns em
simulação hidrológica).
Raízes de equações

Exemplo
A⋅ R 3 ⋅ S
2 1
2

Q=
• Calcule o nível da n

água h se:

Q=15 m3/s
S=0,001 m/m
h n=0,02
B=8 m
B
A⋅ R ⋅ S
2 1
3 2

G ( h) = Q − =0
n
Raízes de equações

Exemplo
• Calcule o nível da
A⋅ R ⋅ S
2 1

água h se:
3 2

Q=
n

Q=15 m3/s
1 S=0,001 m/m
m h n=0,02
B=8 m
B m=1,5

A⋅ R 3 ⋅ S
2 1
2

G ( h) = Q − =0
n
Raízes de equações

Exemplo
• Calcule a vazão de um 3
 Q2  2
vertedor Q = C ⋅ L ⋅  h + 
 2⋅h ⋅ L ⋅ g 
2 2

h g=9,81 m/s2
H=20 cm
L=10 m
C=2
Raízes de equações

Exemplo
• Calcule o nível h para uma dada vazão Q
48
46
44
42
40
38
h Q=15 m3/s
36
34
S=0,001 m/m
32 n=0,02
30
0 20 40 60 80 100 120 140

Tabelas de
A⋅ R ⋅ S
2 1
3 2
A⋅ R ⋅ S
2 1
3 2

Q=
n
A; R e Q em G ( h) = Q − =0
função de h n
Simples busca e interpolação da tabela
Raízes de equações

Exemplo
dS
• O balanço hídrico de um reservatório é = I −Q
descrito pela equação da continuidade dt
• onde S é o volume armazenado; I a vazão de
entrada e Q a vazão de saída
St +1 − St I t +1 + I t Qt +1 + Qt
= −
∆t 2 2
S = f ( h)
Q = f ( h)
( ) ( )
G (h) = 2 ⋅ S ( ht +1 ) − S ( ht ) + ∆t ⋅ Q( ht +1 ) + Q( ht ) − I ( ht +1 ) + I ( ht ) = 0
Deve ser resolvida a cada intervalo de tempo!
Raízes de equações

Exemplo
dS
• O balanço hídrico de um reservatório é = I −Q
descrito pela equação da continuidade dt
• onde S é o volume armazenado; I a vazão de
entrada e Q a vazão de saída
St +1 − St I t +1 + I t Qt +1 + Qt
= −
∆t 2 2
S = f ( h)
Q = f ( h)
( ) ( )
G (h) = 2 ⋅ S ( ht +1 ) − S ( ht ) + ∆t ⋅ Q( ht +1 ) + Q( ht ) − I ( ht +1 ) + I ( ht ) = 0
Deve ser resolvida a cada intervalo de tempo!
G (hi ) ⋅ ( hi −1 − hi ) Para quando G é suficientemente próxima
Usando secantes: hi +1 = hi − de zero, ou quando hi+1 -hi for menor que

G (hi −1 ) − G (hi ) valor arbitrado


Raízes de equações

Outro exemplo: balanço hídrico de


reservatório com vertedor
dV
= I −O
dt
I = f (t )
O = f ( h)
V = g ( h)
Raízes de equações

Equação de vertedor

dV
= I −O
dt
I = f (t ) Q = C ⋅ L ⋅ ( h − hs )
3/ 2

O = f ( h)
V = g ( h)
Raízes de equações

Supondo um reservatório
V = 200 ⋅ h + 30 ⋅ h 0,3856
dV
=
((
200 ⋅ h t +1 + 30 ⋅ h t +1 ) − (200 ⋅ h + 30 ⋅ h ))
0 , 3856 t t 0 , 3856

dt ∆t
((200 ⋅ h t +1
+ 30 ⋅ h t +1
0 , 3856
) − (200 ⋅ h + 30 ⋅ h )) = I − C ⋅ L ⋅ ( h
t t 0 , 3856 t +1
− hs ) 3/ 2
(
+ C ⋅ L ⋅ h t − hs ) 3/ 2

∆t 2

Como tornar o termo de h no tempo t+1 explícito?


Raízes de equações

Como encontrar raízes de equações


implícitas
((200 ⋅ h t +1
+ 30 ⋅ h t +1
0 , 3856
) − (200 ⋅ h + 30 ⋅ h
t t 0 , 3856
)) = I − C ⋅ L ⋅ ( h t +1
− hs ) 3/ 2
(
+ C ⋅ L ⋅ h t − hs ) 3/ 2

∆t 2

Método de bissecção
Método de Newton-Raphson
Método das secantes

E se houver operação de comportas durante uma cheia?


Raízes de equações

Exemplo
• Na aplicação do método de Msukingum-Cunge para a simulação da
propagação de vazão em rios, utiliza-se sub-trechos cujo comprimento
ideal pode ser encontrado resolvendo a equação abaixo:

Q0
+ 0,8 ⋅ ( c0 ⋅ ∆t ) ⋅ ( ∆x )
0 ,8 0, 2
∆x =
B ⋅ S 0 ⋅ c0

• Aplique considerando:
• Q0=100 m3/s Use a equação abaixo para
a estimativa inicial
• c0=1,0 m/s
• B = 30 m 2,5 ⋅ Q0
∆x =
• S0=0,001 m/m B ⋅ S 0 ⋅ c0
∀ ∆ t = 1 hora (3600 s)
Raízes de equações

Exemplo
• O escoamento em regime permanente em um rio pode ser
descrito pela equação de remanso, aplicada trecho a trecho.
• Normalmente se conhece a condição de Q a montante e h a
jusante (Q1 e hn).
• A equação pode ser resolvida para hn-1 usando um método
como Newton-Raphson, ou das secantes, usando como
tentativa inicial hn-1 =hn+S.dx
Raízes de equações

Solver do Excel
• O solver pode ser utilizado para encontrar raízes de
equações.
• Não está claro que método que Solver utiliza.
• Chute inicial deve estar relativamente próximo da
raiz.
Sistemas de equações lineares
• Método de Gauss
• Método de Gauss Seidel
Eliminação de Gauss
Gauss-Seidel
• Método iterativo
 
Ax = b
  
xk +1 = Bxk + c

xk = tentativa

xk +1 = nova _ iteração
Gauss-Seidel
• Método iterativo

10 x1 + 2 x2 − x3 = 7
3x1 + 20 x2 + 5 x3 = −12
x1 − 3 x2 + 10 x3 = 14

explicitar x1 na equação 1; x2 na equação 2 …


Sistemas de equações não-lineares

• Método de Newton
– Equivalente ao método de Newton-Raphson
para raizes de equações
Relembrando o método de Newton-Raphson
Supõe-se que a raiz pode ser encontrada seguindo uma
linha reta dada pela derivada da função no ponto inicial

F(x)

Tentativa inicial x
derivada
Método de Newton para sistemas
• Novamente a série de Taylor

f ( xi +1 ) ≅ f ( xi ) + f ′( xi ) ⋅ ( xi +1 − xi )

Supondo que f ( xi +1 ) = 0 (xi+1 é o vetor solução)

f ′( xi ) ⋅ ( ∆x ) = f ( xi )
onde Neste caso

∆x = ( xi +1 − xi )
xi é um vetor
e f’ é a matriz Jacobiana
Estimativa inicial gera resto
[
B1 Q1j +1 , h1j +1 = rB1]
[
C1 Q1j +1 , Q2j +1 , h1j +1 , h2j +1 ] = rC1

M [Q1 1
j +1
, Q2j +1 , h1j +1 , h2j +1 ] = rM 1

C [Q j +1
, Q3j +1 , h2j +1 , h3j +1 ] = rC
2 2 2 Cada equação terá resto
[
M 2 Q2j +1 , Q3j +1 , h2j +1 , h3j +1 = rM 2 ] provavelmente diferente
de zero.

[ ]
C N −1 QNj +−11 , QNj +1 , hNj +−11 , hNj +1 = rC N −1

M N −1 [Q j +1
N −1 , QNj +1 , hNj +−11 , hNj +1 ] = rM N −1

[
BN QNj +1 , hNj +1 ] = rB
N
A matriz Jacobiana

• A Matriz
Jacobiana é a
matriz formada
pelas derivadas
parciais de Exemplo:
primeira ordem sejam as funções
de um conjunto
de equações. A matriz Jacobiana é
Expansão em série de Taylor

∂B1 ∂B1
B1 Q[ 1
j +1
,h
1
j +1
]=0 ∂Q1j +1
∆ Q1 +
∂h1j +1
∆h1 = rB1

[
C1 Q1j +1 , Q2j +1 , h1j +1 , h2j +1 ]=0 ∂C1
∆ Q1 +
∂C1
∆ h1 +
∂C1
∆ Q2 +
∂C1
∆h2 = rC1
∂Q1j +1 ∂h1j +1 ∂Q2j +1 ∂h2j +1
M [Q1 1
j +1
, Q2j +1 , h1j +1 , h2j +1 ]=0
C [Q j +1
, Q3j +1 , h2j +1 , h3j +1 ]=0
2 2 e assim por diante
[
M 2 Q2j +1 , Q3j +1 , h2j +1 , h3j +1 = 0 ] para as outras equações

[
C N −1 QNj +−11 , QNj +1 , hNj +−11 , hNj +1 = 0 ] resto
M N −1 [Q j +1
N −1 , QNj +1 , hNj +−11 , hNj +1 ]=0
[
BN QNj +1 , hNj +1 ]=0
Novo sistema de
equações
Novo sistema de equações
Novo sistema de equações
Novo sistema de equações
Novo sistema de equações
Nova tentativa
• Resolvendo o sistema para os ∆ Q e ∆ h, as novas tentativas são:

(Q ) i
j +1
k +1
= Qi ( j +1
) + ( ∆Q )
k i

(h )
i
j +1
k +1
=(hi
j +1
) + ( ∆h )
k i
Nova tentativa - cuidadosa
• Resolvendo o sistema para os ∆ Q e ∆ h, as novas tentativas são:

(Q ) i
j +1
k +1
= Qi ( j +1
) k
+ α ⋅ ( ∆Qi )
(h )
i
j +1
k +1
(
= hi j +1
) k
+ α ⋅ ( ∆hi )
usando α menor do que 1 (como 0,4 por exemplo)
encontra solução mais lentamente mas o método dificilmente diverge
Jacobiano
• Os elementos da matriz Jacobiana podem
ser calculados a partir de derivadas parciais
analíticas ou numéricas.
Solução de equações diferenciais
• Problemas em engenharia, especialmente os
variáveis no tempo, são descritos por
equações diferenciais.
Modelo matemático
• Modelo = Representar a realidade de
maneira simplificada.
• Modelo matemático = representar a
realidade de maneira simplificada por
equações.

• F=k.x (força de uma mola)


Modelos hidrodinâmicos
Modelo unidimensional

∂Q ∂A
+ −q = 0
∂x ∂t

 2
∂Q ∂  β ⋅ Q   ∂h 
+ + g⋅ A ⋅ + Sf  = 0
∂t ∂x  A   ∂x 
Modelos hidrodinâmicos
Modelo bidimensional

∂u ∂u ∂u ∂z ∂ 2u ∂ 2u 
+u⋅ + v⋅ = −g ⋅ − γ ⋅ u + τx + Ωc ⋅ v + A h ⋅ 2 + 2 
∂t ∂x ∂y ∂x  ∂x ∂y 

∂v ∂v ∂v ∂z ∂2v ∂2v
+u⋅ + v⋅ = −g ⋅ − γ ⋅ v + τ y − Ω c ⋅ u + A h ⋅ 2 + 2 
∂t ∂x ∂y ∂y  ∂x ∂y 

∂z ∂[ ( h + z ) ⋅ u] ∂[ ( h + z ) ⋅ v ]
+ + =0
∂t ∂x ∂y
Modelo simples
• Balanço hídrico num
reservatório

dV
= I −O
dt
Modelo simples
• Concentração num tanque fechado

dc
= −kc
dt
− kt
c = c0 ⋅ e
Métodos numéricos
• Modelos matemáticos mais complicados
são analisados utilizando métodos
numéricos.
• As equações de escoamento, por exemplo,
não tem solução analítica.
Equações diferenciais

Diferenças finitas
• Segue o princípio das derivadas numéricas.
• Derivadas são substituídas por diferenças.
• Equações diferenciais são substituídas por
equações algébricas
Equações diferenciais

Diferenças finitas
• Esquemas numéricos
– Derivadas numéricas podem ser progressivas,
regressivas, centradas.
– Derivadas podem ter mais termos da série de
Taylor
Equações diferenciais

Problema
• Lago completamente misturado
• Volume = 1 milhão de m3
• Vazão de entrada e de saída = 1 m3/s
• C entrada = zero
• C inicial no lago = 10 mg/l
• Decaimento k = 0,1 1/dia
Equações diferenciais

Solução analítica

− λt
c = c0 ⋅ e
Q
λ = +k
V
Equações diferenciais

Solução numérica – método de Euler

t +1 t +1
dc ∆c c − c t
c −c t
≅ = t +1 t =
dt ∆t t − t ∆t
dc
V ⋅ = −Q ⋅ c − k ⋅ V ⋅ c
dt
Equações diferenciais

Vazão de entrada de 1 m3/s


12
c analitica
10 c euler
.
Concentração no lago (mg/l)

0
0 5 10 15 20 25 30 35
Tempo (dias)
Equações diferenciais

Vazão de entrada = 5 m3/s


12
c analitica
10 c euler
.
Concentração no lago (mg/l)

0
0 5 10 15 20 25 30 35
Tempo (dias)
Equações diferenciais

Mais volume e menor k


12

10
c analitica
.

c euler
8
Concentração (mg/l)

0
0 20 40 60 80 100
Tempo (dias)

Soluções muito semelhantes


Equações diferenciais

Considerações
• A solução numérica apresenta erros em
relação à solução analítica.
• Estes erros dependem das características do
problema.
• No exemplo do lago misturado, quando a
taxa de variação da concentração é muito
grande, os erros aumentam.
Equações diferenciais
Problema do paraquedista

F = c.v

F = m.g
Equações diferenciais
Problema do paraquedista

F = m.g-c.v
Equações diferenciais

Problema do paraquedista

F = m.a
dv
a=
dt
dv
= m.g − c.v
dt

F = m.g-c.v
Equações diferenciais

Problema do paraquedista

dv
= m⋅ g − c⋅v
dt
dv v t +1 − v t

dt ∆t
F = m.g-c.v v t +1 = v t + ( m ⋅ g − c ⋅ v ) ⋅ ∆t
Equações diferenciais

Problema do paraquedista
Solução analítica

dv g ⋅m  ( c m )⋅t 
= m⋅ g − c⋅v v(t ) = 1 − e 
dt c  
dv v t +1 − v t

dt ∆t
v t +1 = v t + ( m ⋅ g − c ⋅ v t ) ⋅ ∆t
Equações diferenciais

Colocando números
• Massa do paraquedista m = 68,1 kg
• Coeficiente de arrasto c = 12,5 kg/s
• Aceleração da gravidade g = 9,8 m/s2

Solução analítica = (
v(t ) = 53,39 ⋅ 1 − e −0,18355⋅t )
Velocidade terminal = 53,39 m/s ou pouco mais de 192 km/h
Equações diferenciais

Problema da paraquedista em VBA Excel


Equações diferenciais

Problema da paraquedista em VBA Excel


Equações diferenciais

Solução analítica x solução numérica


250

200
.
velocidade (km/h)

150

100

50

0
0 5 10 15 20 25 30 35 40 45 50
tempo (s)

Passo de tempo = 1 s ( )
v t +1 = v t + m ⋅ g − c ⋅ v t ⋅ ∆t
Equações diferenciais

Solução analítica x solução numérica


250

200
.
velocidade (km/h)

150

100

50

0
0 5 10 15 20 25 30 35 40 45 50
tempo (s)

Passo de tempo = 2 s ( )
v t +1 = v t + m ⋅ g − c ⋅ v t ⋅ ∆t
Equações diferenciais

Solução analítica x solução numérica


250
.

200
velocidade (km/h)

150

100

50

0
0 5 10 15 20 25 30 35 40 45 50
tempo (s)

Passo de tempo = 4 s ( )
v t +1 = v t + m ⋅ g − c ⋅ v t ⋅ ∆t
Equações diferenciais

Solução analítica x solução numérica


250

200
.
velocidade (km/h)

150

100

50

0
0 5 10 15 20 25 30 35 40 45 50
tempo (s)

Passo de tempo = 6 s ( )
v t +1 = v t + m ⋅ g − c ⋅ v t ⋅ ∆t
Equações diferenciais

Solução analítica x solução numérica


350

300
.

250
velocidade (km/h)

200

150

100

50

0
0 5 10 15 20 25 30 35 40 45 50
tempo (s)

Passo de tempo = 8 s ( )
v t +1 = v t + m ⋅ g − c ⋅ v t ⋅ ∆t
Equações diferenciais

Solução analítica x solução numérica


450

400

350
.
velocidade (km/h)

300

250

200

150

100

50

0
0 5 10 15 20 25 30 35 40 45 50
tempo (s)

Passo de tempo = 10.9 s ( )


v t +1 = v t + m ⋅ g − c ⋅ v t ⋅ ∆t
Equações diferenciais

Problemas com métodos numéricos

• A estabilidade da solução depende dos


incrementos de cálculo (discretização
temporal e espacial)
• Os erros da solução dependem da
discretização.
• No exemplo analisado, quanto menor o Dt,
menor o erro.
Equações diferenciais

Solução implícita
(
v t +1 = v t + m ⋅ g − c ⋅ v t ⋅ ∆t )
(
v t +1 = v t + m ⋅ g − c ⋅ v t +1 ⋅ ∆t )

v t +1
(
= v + m ⋅ g − c ⋅ (v
t t + 12
)
) ⋅ ∆t

v
t + 12
=
( v t +1
+ vt )
2
Equações diferenciais 250

200

.
velocidade (km/h)
150

100

50

0
0 5 10 15 20 25 30 35 40 45 50
temp o (s)

v t +1 t
(
= v + m ⋅ g − c ⋅ v ⋅ ∆tt
) 250

200

.
velocidade (km/h)
( )
150

v t +1 = v t + m ⋅ g − c ⋅ v t +1 ⋅ ∆t 100

50

 (v t +1 + v t )  0

v t +1
= v +  m ⋅ g − c ⋅
t
 ⋅ ∆t 0 5 10 15 20 25 30 35 40 45 50
temp o (s)

 2  250

200
.
velocidade (km/h)

150

100

50

Passo de tempo de 4 s 0
0 5 10 15 20 25 30 35 40 45 50
temp o (s)
Equações diferenciais
250

200

.
velocidade (km/h)
150

100

50

0
0 5 10 15 20 25 30 35 40 45 50

( )
tempo (s)
v t +1 = v t + m ⋅ g − c ⋅ v t ⋅ ∆t

250

200
 (v t +1 + v t ) 
.
v = v +  m ⋅ g − c ⋅
t +1 t
 ⋅ ∆t
velocidade (km/h)
 2 
150

100

50

0
0 5 10 15 20 25 30 35 40 45 50
tempo (s)

Passo de tempo de 6 s
Equações diferenciais

Considerações
• Os erros dependem do esquema numérico
que está sendo utilizado.
• Alguns esquemas numéricos reduzem os
problemas de instabilidade.
Equações diferenciais
Solução implícita
 ( v t +1
+ v t
)
t +1
v = v + m⋅ g − c⋅
t
  ⋅ ∆t
 2 
t +1
( v + v t
)
t +1
v + c⋅ ⋅ ∆t = v t + ( m ⋅ g ) ⋅ ∆t
2
t +1 t
v v
v t +1 + c ⋅ ⋅ ∆t = v t + ( m ⋅ g ) ⋅ ∆t − c ⋅ ⋅ ∆t
2 2
 c ⋅ ∆ t  v t
v t +1 ⋅ 1 +  = v + ( m ⋅ g ) ⋅ ∆t − c ⋅ ⋅ ∆t
t

 2  2
vt
v + ( m ⋅ g ) ⋅ ∆t − c ⋅ ⋅ ∆t
t

v t +1 = 2
 c ⋅ ∆t 
1 + 
 2 
Equações diferenciais

O que fazer quando não é possível a manipulação


algébrica para explicitar o termo buscado?

Exemplo: arrasto modificado

dv
= m⋅ g − c⋅v 1/ 2

dt

  ( v t +1
+ v t
) 
1/ 2

v = v +  m ⋅ g − c ⋅ 
t +1 t
  ⋅ ∆t
  2  
 
Equações diferenciais

O que fazer quando não é possível a manipulação


algébrica para explicitar o termo buscado?
Exemplo: arrasto modificado

dv
= m ⋅ g − c ⋅ v1 / 2
dt
  ( v t +1
+ v t
) 
1/ 2


v = v + m ⋅ g − c ⋅ 
t +1 t
  ⋅ ∆t
  2  

Solução: a cada passo de tempo encontrar raiz da equação usando


método numérico (por exemplo Newton-Raphson)
  t +1
(v + v ) 
1/ 2

( )
t
F v t +1 
= v + m ⋅ g − c ⋅ 
t
  ⋅ ∆t − v t +1 = 0
  2  

Exemplo
• Um balde com um furo na sua
parte inferior escoa uma vazão 1
(
Volume = ⋅ π ⋅ h ⋅ R 2 + R ⋅ r + r 2
3
)
que pode ser estimada como:

Q = C ⋅ A⋅ 2 ⋅ g ⋅ h
R
• O balde tem um formato de
tronco de cone com diâmetro de
25 cm na base e 35 cm no topo,
e uma altura total de 40 cm.
• Considerando que o nível da r
água inicial é de 38 cm, simule
o esvaziamento do balde até
atingir o nível 5 cm.
Solução de equações diferenciais
parciais
Equações diferenciais parciais

Diferenças finitas
• Considere a equação ∂U ∂U
diferencial: +V ⋅ =0
∂t ∂x

• Utilizando um
esquema com derivada
numérica centrada no U it +1 − U it t U i +1 − U i −1
t t
+ Vi ⋅ =0
espaço e explícito: ∆t 2∆x
Equações diferenciais parciais

t Esquemas numéricos

Informação desconhecida

t+1

Informação conhecida
t-1

i-1 i i+1 x
Equações diferenciais parciais

t Esquemas numéricos

Informação desconhecida

t+1

Informação conhecida
t-1

i-1 i i+1 x
∂U U it − U it−1
=
∂x ∆x
Equações diferenciais parciais

t Esquemas numéricos

Informação desconhecida

t+1

Informação conhecida
t-1

i-1 i i+1 x
∂U U it+1 − U it−1
=
∂x 2∆x
Equações diferenciais parciais

t Esquemas numéricos

Informação desconhecida

t+1

Informação conhecida
t-1

i-1 i i+1 x
∂U U it+1 − U it
=
∂x ∆x
Equações diferenciais parciais

t Esquemas numéricos

Informação desconhecida

t+1

Informação conhecida
t-1

i-1 i i+1 U it +1 − U it U it − U it−1 x


+ Vi ⋅
t
=0
∆t ∆x
Equações diferenciais parciais

t Esquemas numéricos

Informação desconhecida

t+1

Informação conhecida
t-1

i-1 i i+1 U it +1 − U it t +1
− U it−+1! x
t Ui
+ Vi ⋅ =0
∆t ∆x
Equações diferenciais parciais

t Esquemas numéricos

Informação desconhecida

t+1

θ
t

Informação conhecida
t-1

i-1 i i+1 x
U t +1
−U t
 U −U
t +1 t +1
U −U
t t

i
+ Vi t ⋅ θ
i i i −1
+ (1 − θ ) i i −1
 = 0
∆t  ∆x ∆x 
Equações diferenciais parciais

Equação de transporte simplificada

∂( A C ) ∂( A u C )
+ = S (k )
∂t ∂x

  Q t + 1 ⋅ C t + 1 − Q t + 1 ⋅ C t + 1   Q t ⋅ C t − Q t ⋅ C t  
A it++11 ⋅ C it++11 − A it+ 1 ⋅ C it+ 1   i +1 i +1 i i   i +1 i +1 i i 
+ θ ⋅ + (1 − θ ) ⋅ t +1
 = Sk i + 1
∆t  ∆x ∆x 
 
Equações diferenciais parciais

Modelo hidrodinâmico de rios


∂Q ∂A
+ −q = 0
∂x ∂t ∂Q ∂  β ⋅ Q2   ∂h 
+ + g⋅ A ⋅ + Sf  = 0
∂t ∂x  A   ∂x 

n2 ⋅ Q ⋅ Q
Sf =
2
A ⋅R
4
3
∂Z
=
(
Zij +1 + Zij++11 − Zij − Zij+1 )
∂t 2 ⋅ ∆t

t ∂Z
= θ⋅
(
Zij++11 − Zij+1 )
+ (1 − θ ) ⋅
(
Zij+1 − Zij )
∂x ∆xi ∆xi

(Z ) + (1 − θ ) ⋅ ( Z )
t+1
j +1
i +1 + Zij+1 j
i +1 + Zij
t Z = θ⋅
2 2

i i+1 x
Equações diferenciais parciais

Modelo hidrodinâmico de rios

θ⋅
(Qj+1
i+1 − Qi
j+1
) + (1 − θ) ⋅ (Q j
i+1 − Qi
j
) + (A j+1
i + A ij++11 − A ij − A ij+1 )−q
i
j+1
+ qi
j
=0
∆xi ∆xi 2 ⋅ ∆t 2

∆x ⋅
i
(Q j+1 j +1 j
i + Qi +1 − Qi − Qij+1 )+
2 ⋅ ∆t
 j +1 j+1 
( )
2  β ⋅ Q2 
β ⋅ Q
θ ⋅   −  + g ⋅ A j+1 ⋅ h j+1 − h j+1 + ∆x ⋅ S j+1 +
i+1 i f
 A   A  i 
 i+1  i 
 j j 
( )
2  β ⋅ Q2 
β ⋅ Q
(1 − θ) ⋅   −
  A 
 + g ⋅ A ⋅ h − h + ∆x ⋅ S  = 0
j j
i+1
j
i i
j
f 
A
 i+1  i 
n2 ⋅ Q ⋅ Q
A = 0 .5 ⋅ ( A i + A i + 1 ) R = 0.5 ⋅ ( Ri + Ri +1) Sf = 4
A2 ⋅ R 3
Equações diferenciais parciais

Equações de degrau

Qij +1 − Qij++11 − Q tom = 0

( ) −( )
Qij++11
2
Qij++11
2
( )
+ g ⋅ A ⋅ hij++11 − hij+1 + A ⋅
Qij++11
  j+1 2  j+1 2 
1  Q Q 
⋅ KE ⋅ ⋅   i+1  −  i+1   = 0
A i+1 Ai Qij++11 2   A i+1   A i  
    
Equações diferenciais parciais

Equações de comporta

Qij+1 − Qij++11 − Q tom = 0

Qi j++11 − C ⋅ A ⋅ 2 ⋅ g ⋅ ∆h = 0
Equações diferenciais parciais

Reservatório

(
θ Qij+1 − Qij++11 ) + (1 − θ ) ⋅ (
Qij − Qij+1 ) − Q tom −
A sr
∆t
( )
⋅ hij++11 − hij+1 = 0

j +1 j
hi+1 − hi +1 =0
Equações diferenciais parciais

Estações de bombeamento

Qij+1 − Qij++11 = 0

Qij +1 − Q( t, H1, H2,..., Hn ) = 0


Equações diferenciais parciais
Equação de transporte utilizada pelo QUAL2E
 δC 
∂ A ⋅ E 
∂C δx  ∂ ( A ⋅ u ⋅ C )
=  − − K ⋅C
∂t A ⋅ δx A ⋅ ∂x

∂C Cin +1 − Cin
=
∂t ∆t
i-1 i i+1

∂ ( A ⋅ u ⋅ C ) ∂ ( Q ⋅ C ) Q in−+11 ⋅ Cin−+11 − Q in +1 ⋅ Cin +1


= =
A ⋅ ∂x A ⋅ ∂x A ⋅ ∆x

  ∂C  
∂  A ⋅ E  
 ∂x   ( A ⋅ E ) ⋅ ( Ci +1 − Ci ) ( A ⋅ E ) ⋅ ( Ci −1 − Ci )
n +1 n +1 n +1 n +1
 = +
A ⋅ ∂x Vi ⋅ ∆x Vi ⋅ ∆x

e ⋅ Cin−+11 + f ⋅ Cin +1 + g ⋅ Cin++11 = z


Equações diferenciais parciais
Equação de transporte utilizada pelo QUAL2E

n +1 n +1 n +1
e⋅C i −1 + f ⋅C i + g ⋅C i +1 =z

i-1 i i+1

Aplicação em todos os subtrechos resulta num sistema de


equações tridiagonal
Equações diferenciais parciais

 f1 g1   C1   Z1 
e f2 g2  C  Z 
 2   2  2
 e3 f3 g3   C 3   Z3 
     
 e4 f4 g4   C4   Z4 
 e5 f5 g5   C 5   Z5 
 ⋅  =  
 e6 f6 g6   C6   Z6 
 e7 f7 g7  C  Z 
   7  7
 e8 f8 g8   C 8   Z8 
 e9 f9 g 9   C 9   Z9 
     
 e10 f10  C10   Z10 

Valores que dependem de C no tempo n


Coeficientes que multiplicam valores de C no tempo n+1
Leituras adicionais
• Capítulo livro Modelos Hidrológicos
• Livro Alejandro Métodos Numéricos
• Numerical Recipes in FORTRAN
• Numerical Methods for Engineers (Chapra)

Вам также может понравиться