Solução Numérica de Modelos Descritos por Equações...

31
Programa Doutoral EngIQ - M ´ odulo EPS José Paulo Mota c 2010, V. 1.0 Solução Numérica de Modelos Descritos por Equações Diferenciais José Paulo Mota Requimte/CQFB, Departamento de Química Faculdade de Ciências e Tecnologia, Universidade Nova de Lisboa, 2829-516 Caparica E-mail: [email protected], Tel. +351 21 2948300 (ext. 10961)

Transcript of Solução Numérica de Modelos Descritos por Equações...

Page 1: Solução Numérica de Modelos Descritos por Equações ...nuno/eps/Conteudos/aula12/PSE_PMota.pdf · Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer

Programa Doutoral EngIQ - Modulo EPSJosé Paulo Mota c⃝ 2010, V. 1.0

Solução Numérica de Modelos Descritos

por Equações Diferenciais

José Paulo Mota

Requimte/CQFB, Departamento de Química

Faculdade de Ciências e Tecnologia, Universidade Nova de Lisboa,

2829-516 Caparica

E-mail: [email protected], Tel. +351 21 2948300 (ext. 10961)

Page 2: Solução Numérica de Modelos Descritos por Equações ...nuno/eps/Conteudos/aula12/PSE_PMota.pdf · Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer

EngIQ - Engenharia de Processos e Sistemas

Conteúdo

1 Classificação dos modelos processuais em Engenharia Química . . . . . . . . . 2

1.1 Relativamente à dependência temporal das variáveis: . . . . . . . . . . 2

1.2 Relativamente ao número de variáveis independentes ou coordenadas: . 2

1.3 Classificação e caracterização das EDP’s . . . . . . . . . . . . . . . . 3

2 Métodos numéricos para resolução de EDP’s . . . . . . . . . . . . . . . . . . 4

2.1 Método das diferenças finitas . . . . . . . . . . . . . . . . . . . . . . . 6

2.2 Método dos volumes finitos . . . . . . . . . . . . . . . . . . . . . . . 12

2.3 Método dos resíduos ponderados . . . . . . . . . . . . . . . . . . . . . 18

3 Solução de sistemas mistos de equações diferenciais ordinárias e algébricas . . 27

1

Page 3: Solução Numérica de Modelos Descritos por Equações ...nuno/eps/Conteudos/aula12/PSE_PMota.pdf · Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer

EngIQ - Engenharia de Processos e Sistemas

1 Classificação dos modelos processuais em Engenharia Química

1.1 Relativamente à dependência temporal das variáveis:

• Modelos estacionários; se nenhuma das variáveis dependentes do modelo varia com o

tempo. Neste caso, modelo é composto por um sistema de equações algébricas, que po-

dem ser lineares, não lineares, ou mistas.

• Modelos instacionários (dinâmicos); se uma ou mais variáveis dependentes do modelo

variam com o tempo. Este tipo de modelo é constituído por um sistema de equações

diferenciais ordinárias (ODE’s)—lineares, não lineares, ou mistas—que pode ser com-

plementado por um conjunto de equações algébricas.

1.2 Relativamente ao número de variáveis independentes ou coordenadas:

• Modelos de parâmetros agregados; se as variáveis do modelo são constantes ou se só

dependem da coordenada temporal. Neste caso, o modelo é descrito por um sistema de

equações algébricas, por um sistema de equações diferenciais ordinárias (ODE’s), ou por

um sistema misto.

• Modelos com parâmetros distribuídos; se as equações envolvem uma ou mais variáveis

independentes ou coordenadas (normalmente espaciais) para além da coordenada tempo-

Variação espacial

no sistema?

Sistema com Parâmetros

Distribuídos (SPD)

Sistema com Parâmetros

Agregados (SPA)

Problema

dinâmico?

Problema

dinâmico?

EDPs hiperbólicas

ou parabólicas

EDPs

elípticas

PVI/PVF

diferential-algébrico

Equações algébricas

não-lineares

S N

S N S N

Figura 1: Caracterização de modelos e respectivos conjuntos de equações (EDPs, equações às

derivadas parciais; PVI, problema de valor inicial; PVF, problema de valor fronteira).

2

Page 4: Solução Numérica de Modelos Descritos por Equações ...nuno/eps/Conteudos/aula12/PSE_PMota.pdf · Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer

EngIQ - Engenharia de Processos e Sistemas

ral. Um modelo deste tipo é regido por um sistema de equações diferenciais às derivadas

parciais (EDP’s).

Na Fig. 1 apresenta-se em esquema um sumário da classificação dos modelos e dos respec-

tivos conjuntos de equações.

1.3 Classificação e caracterização das EDP’s

A forma genérica de uma EDP linear de segunda ordem pode ser escrita da seguinte forma:

P∂2z∂x2 + Q

∂2z∂x∂y

+ R∂2z∂y2 = S . (1)

Na eq. 1, a variável dependente é z = z(x, y); as variáveis independentes (ou coordenadas) são x

e y; os coeficientes P, Q e R só podem depender de x e y, enquanto que S pode depender de x,

y, z, ∂z/∂x e ∂z/∂y.

A EDP pode ser classificada de acordo com o sinal do seu determinante,

∆ = Q2 − 4 PR. (2)

A PDE é elíptica se ∆ < 0; parabólica se ∆ = 0; e hiperbólica se ∆ > 0.

Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer em

problemas de Engenharia Química.

Segunda lei de Fick:∂C∂t= D∂2C∂x2 , (3)

em que C(t, x) é a concentração de um soluto (no instante t e posição x) e D é a sua difusividade

molecular; esta EDP é parabólica porque P = D, Q = 0 e R = 0.

Lei de Newton para movimento ondulatório:

∂2u∂t2 = ρ

∂2u∂x2 , (4)

em que u(t, x) é a velocidade do fluído (no instante t e posição x) e ρ é a sua densidade; esta

EDP é hiperbólica porque P = 1, Q = 0 e R = −ρ.

Equação de Laplace para condução de calor:

∂2T∂x2 +

∂2T∂y2 = 0, (5)

em que T (x, y) é um campo bidimensional de temperatura (x e y são duas coordenadas cartesi-

anas); esta EDP é elíptica porque P = 1, Q = 0 e R = 1.

3

Page 5: Solução Numérica de Modelos Descritos por Equações ...nuno/eps/Conteudos/aula12/PSE_PMota.pdf · Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer

EngIQ - Engenharia de Processos e Sistemas

2 Métodos numéricos para resolução de EDP’s

Os métodos apresentados em seguida serão ilustrados com a resolução numérica do problema

estacionário de difusão e reacção química de primeira ordem numa partícula de catalisador com

forma de placa plana; a geometria do sistema está ilustrada na Fig. 2.

O balanço material diferencial ao reagente, em estado estacionário, origina

Ded2Cdr2 − kC = 0, (6)

em que C(r) é a concentração do reagente ao longo da placa de catalisador, De a difusividade

efectiva do reagente na partícula de catalisador, e k a constante cinética (kC é a velocidade de

reacção por unidade de volume do catalisador). O domínio do problema é {r : 0 ≤ r ≤ R}; r = 0

corresponde ao centro da placa e r = R corresponde à superfície externa da placa que está em

contacto com o fluído externo; a concentração do reagente no seio do fluído externo é C0.

A eq. 6 é uma PDE de segunda ordem, estando por isso sujeita a duas condições fronteira,

cada uma delas aplicável num dos extremos do domínio. As duas condições fronteira são as

seguintes:

dCdr= 0 para r = 0; (7)

C = C0 para r = R. (8)

A primeira condição é uma condição de simetria, porque C(−r) = C(r), que impõe a ausência

de fluxo material no centro da placa de catalisador (como o reagente se desloca por difusão, o

Figura 2: Difusão e reacção química numa placa plana de catalisador.

4

Page 6: Solução Numérica de Modelos Descritos por Equações ...nuno/eps/Conteudos/aula12/PSE_PMota.pdf · Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer

EngIQ - Engenharia de Processos e Sistemas

seu fluxo é J = −D∂C/∂r); a segunda condição corresponde a uma situação de fluxo convec-

tivo elevado junto à superfície da partícula de catalisador, o que faz com que a concentração

do reagente nesse ponto seja sempre igual à concentração C0 no seio do fluído em torno da

partícula.

Por uma questão de conveniência, procede-se à adimensionalização da equação. Para isso,

introduzem-se as seguintes variáveis adimensionais:

y = C/C0; x = r/R.

A variável y passa a ser a variável dependente adimensional e x passa a ser a variável indepen-

dente (ou coordenada) adimensional; o domínio do problema passa a ser {x : 0 ≤ x ≤ 1}.

Fazendo estas substituições no balanço diferencial e nas condições fronteira obtém-se

d2ydx2 − ϕ

2y = 0, (9)

dydx= 0 para x = 0; (10)

y = 1 para x = 1. (11)

Na eq. 9, o parâmetro ϕ = (kR2/De)1/2 é denominado módulo de Thiele; este parâmetro mede

a razão entre a velocidade da reacção e o fluxo difusional. Quando ϕ é grande (k ≫ De/R2), a

conversão do reagente é controlada pelo fluxo difusional do reagente junto à parede do catali-

sador; quando ϕ é pequeno (k ≪ De/R2), a conversão do reagente é controlada pela cinética da

reacção química.

A quantidade que nos interessa é a velocidade aparente, ou efectiva, da reacção:

(kC)eff =1V

∫V

kC dV =kR

∫ R

0C(r) dr = kC0

∫ 1

0y(x) dx, (12)

O integral adimensional,

η =

∫ 1

0y(x) dx, (13)

é denominado factor de eficiência; introduzindo este factor na expressão da velocidade aparente

da reacção obtém-se

(kC)eff = kC0 · η ou η =(kC)eff

kC0. (14)

5

Page 7: Solução Numérica de Modelos Descritos por Equações ...nuno/eps/Conteudos/aula12/PSE_PMota.pdf · Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer

EngIQ - Engenharia de Processos e Sistemas

Convém lembrar que existe uma expressão alternativa para o cálculo de η; Da definição

deste parâmetro e da eq. 9 obtém-se

η =

∫ 1

0y(x) dx =

1ϕ2

∫ 1

0ϕ2y(x) dx =

1ϕ2

∫ 1

0

d2ydx2 dx =

1ϕ2

∫ x=1

x=0d(

dydx

)=

1ϕ2

[dydx

]x=1

x=0=

1ϕ2

(dydx

)x=1. (15)

A solução analítica da eq. 9, sujeita às condições fronteira expressas pelas eqs. 10 e 11, é

y(x) =cosh(ϕx)cosh(ϕ)

, (16)

o que permite calcular o factor de eficiência:

η =

∫ 1

0y(x) dx =

1ϕ2

(dydx

)x=1=

tanh(ϕ)ϕ. (17)

2.1 Método das diferenças finitas

Este método consiste na substituição das variáveis dependentes, que são contínuas, por variá-

veis discretas; em vez de se determinar uma solução contínua em todo o domínio do problema,

determina-se uma solução discreta, que consiste nos valores das variáveis dependentes em de-

terminados pontos do domínio.

Fórmulas de discretização. Considere-se a expansão em série de Taylor de uma função y(x)

em torno do ponto x:

y(x + ∆x) = y(x) +dy(x)

dx∆x +

12

d2y(x)dx2 (∆x)2 + O(∆x3). (18)

A notação O(∆x3) significa que a série contínua indefinidamente, mas que a soma dos termos

não explicitados é proporcional a (∆x)3 [para ser mais preciso, e se se lembrarem de AM I, o

termo correcto é (1/6)(∆x)3(d3y/dx3)x=ξ; ξ é desconhecido, mas sabe-se que ξ ∈ (x, x + ∆x)].

Se os termos de ordem 2 e superior forem ignorados, obtém-se

dy(x)dx=

y(x + ∆x) − y(x)∆x

+ O(∆x) ≈ y(x + ∆x) − y(x)∆x

. (19)

De forma semelhante, a expansão da função y(x − ∆x) em torno de x origina

y(x − ∆x) = y(x) − dy(x)dx∆x +

12

d2y(x)dx2 (∆x)2 + O(∆x3). (20)

6

Page 8: Solução Numérica de Modelos Descritos por Equações ...nuno/eps/Conteudos/aula12/PSE_PMota.pdf · Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer

EngIQ - Engenharia de Processos e Sistemas

Desta formula, obtém-se a seguinte aproximação:

dy(x)dx=

y(x) − y(x − ∆x)∆x

+ O(∆x) ≈ y(x) − y(x − ∆x)∆x

. (21)

Subtraindo as eqs. 18 e 20 obtém-se uma aproximação alternativa da primeira derivada:

dy(x)dx=

y(x + ∆x) − y(x − ∆x)2∆x

+ O(∆x2) ≈ y(x + ∆x) − y(x − ∆x)2∆x

. (22)

Esta aproximação é mais precisa do que as aproximações expressas nas eqs. 19 e 21, porque

na eq. 22 o erro da aproximação é proporcional a (∆x)2 enquanto que nas eqs. 19 e 21 ele é

proporcional a ∆x.

Para obter uma aproximação da segunda derivada, adicionam-se as eqs. 19 e 21 e desprezam-

se os termos de ordem superior a 2. A expressão assim obtida é

d2y(x)dx2 =

y(x − ∆x) − 2y(x) + y(x + ∆x)(∆x)2 + O(∆x2). (23)

Implementação do método. Na prática divide-se o domínio do problema, {x : xL ≤ x ≤ xU},

em N intervalos uniformes, sendo o comprimento de cada um deles dado por

∆x =xU − xL

N. (24)

Indexam-se os pontos em função do valor da coordenada x; isto é, define-se o ponto i como

sendo o ponto com coordenada xL + i(∆x) e chama-se a esse ponto xi; o conjunto de pontos

assim obtido é

xi = xL + i(∆x) para i = 0, 1, 2, . . . ,N. (25)

Desta forma, x0 = xL, xN = xU, xi+1 = xL + (i + 1)∆x, xi−1 = xL + (i − 1)∆x, etc.

A variável dependente y correspondente ao ponto xi denota-se yi, isto é, y(xi) = yi. Recor-

rendo às formulas anteriores, pode substituir-se, em cada ponto xi, as derivadas de primeira e

segunda ordem pelas seguintes aproximações:(dydx

)i≈ yi+1 − yi

∆xou≈ yi − yi−1

∆xou≈ yi+1 − yi−1

2∆x; (26)

(d2ydx2

)i≈ yi−1 − 2yi + yi+1

(∆x)2 . (27)

Com estas substituições, transforma-se a equação diferencial original num sistema de N equa-

ções algébricas. Tem que se ter, no entanto, atenção com o tratamento das condições fronteira.

7

Page 9: Solução Numérica de Modelos Descritos por Equações ...nuno/eps/Conteudos/aula12/PSE_PMota.pdf · Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer

EngIQ - Engenharia de Processos e Sistemas

xi -1 xi xi +1

yi -1

yi

yi +1

y (x)

Figura 3: Esquema de uma função suave y(x) que é bem aproximada por um polinómio de

segundo grau no intervalo xi−1 ≤ x ≤ xi+1.

As fórmulas de discretização também podem ser obtidas por interpolação polinomial. Suponha-

se que a função f (x) é bem aproximada por um polinómio de segundo grau no intervalo

xi−1 ≤ x ≤ xi+1, conforme-se ilustra na Fig. 3.

O polinómio que interpola o trio de pontos (xi−1, yi−1), (xi, yi) e (xi+1, yi+1) pode ser escrito

da seguinte forma:

p(x) = yi +yi − yi−1

xi − xi−1(x − xi) +

yi+1 − yi −yi − yi−1

xi − xi−1(xi+1 − xi)

(xi+1 − xi)(xi+1 − xi−1)(x − xi)(x − xi−1). (28)

Derivando p(x) uma vez obtém-se uma aproximação a dy/dx:

dydx≈ dp

dx=

yi − yi−1

xi − xi−1+

yi+1 − yi −yi − yi−1

xi − xi−1(xi+1 − xi)

(xi+1 − xi)(xi+1 − xi−1)(2x − xi−1 − xi). (29)

Para x = xi+1 e xi − xi−1 = xi+1 − xi = ∆x, obtém-se(dydx

)i+1=

yi+1 − yi−1

2∆x, (30)

que é idêntica à Eq. 22. Para x = xi+1 e xi − xi−1 = xi+1 − xi = ∆x, obtém-se(dydx

)i=

3yi+1 − 4yi + yi−1

2∆x, (31)

que é uma aproximação descentrada de segunda ordem. Finalmente, para x = xi−1 e xi − xi−1 =

xi+1 − xi = ∆x, obtém-se (dydx

)i−1=−3yi−1 + 4yi − yi−1

2∆x, (32)

que é novamente uma aproximação descentrada de segunda ordem.

Derivando p(x) duas vezes, obtém-se uma aproximação da segunda derivada:

d2ydx2 ≈

d2 pdx2 = 2

yi+1 − yi −yi − yi−1

xi − xi−1(xi+1 − xi)

(xi+1 − xi)(xi+1 − xi−1). (33)

8

Page 10: Solução Numérica de Modelos Descritos por Equações ...nuno/eps/Conteudos/aula12/PSE_PMota.pdf · Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer

EngIQ - Engenharia de Processos e Sistemas

Para xi − xi−1 = xi+1 − xi = ∆x, esta equação simplifica-se:(d2ydx2

)i=

yi−1 − 2yi + yi+1

(∆x)2 , (34)

que é idêntica à Eq. 23.

Aplicação do método. Exemplifiquemos o método das diferenças finitas aplicando-o à reso-

lução numérica do problema de difusão e reacção química na pellet de catalisador. O domínio

do problema é {x : 0 ≤ x ≤ 1}; portanto xL = 0 e xU = 1. O conjunto de pontos de discretização

é

xi = i(∆x) para i = 0, 1, 2, . . . ,N; ∆x = 1/N. (35)

Desta forma, x0 = 0, x1 = ∆x, x1 = 2∆x, . . . , xN = 1. A variável dependente y(x) correspondente

ao ponto xi é y(xi) = yi. A substituição da segunda derivada na eq. 9 pela diferença finita

correspondente origina a seguinte equação algébrica linear:

yi−1 − 2yi + yi+1

(∆x)2 − ϕ2yi = 0, i = 1, 2, . . . ,N − 1. (36)

Esta equação não é válida para os pontos fronteira. Para o ponto xN = 1 a condição fronteira é

yN = 1. Por outro lado, aplicando a eq. 36 no ponto x0 obtém-se

y−1 − 2y0 + y1

(∆x)2 − ϕ2y0 = 0. (37)

Esta expressão contém y−1 ≡ y(x−1) que não pertence ao domínio do problema. No entanto,

aproximando a condição fronteira no ponto x0 por uma diferença finita de segunda ordem (para

ser consistente com a aproximação à segunda derivada usada na eq. 36) obtém-se

y1 − y−1

2∆x= 0 → y−1 = y1, (38)

o que permite eliminar y−1 da eq. 37 obtendo-se

2(y1 − y0)(∆x)2 − ϕ2y0 = 0. (39)

Resumindo: aproximando as derivadas parciais por diferenças finitas, a PDE e respectivas

condições fronteira são substituídas por um sistema de equações algébricas; no caso presente as

equações são lineares, mas nem sempre é o caso. O sistema de equações está indicado na Fig. 4.

9

Page 11: Solução Numérica de Modelos Descritos por Equações ...nuno/eps/Conteudos/aula12/PSE_PMota.pdf · Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer

EngIQ - Engenharia de Processos e Sistemas

−2(∆x)2 + ϕ

2 2(∆x)2

1(∆x)2

−2(∆x)2 + ϕ

2 1(∆x)2

1(∆x)2

−2(∆x)2 + ϕ

2 1(∆x)2

. . . . . . . . .1

(∆x)2−2

(∆x)2 + ϕ2 1

(∆x)2

1

y0

y1

y2...

yN−1

yN

=

000...01

Figura 4: Discretização do modelo de difusão e reacção química por diferenças finitas centradas

de 2a ordem.

O factor de eficiência pode ser calculado de duas formas. Suponha-se que se calcula através

do integral dado na eq. 13. Este integral tem que necessariamente ser aproximado por uma

fórmula de quadratura. Por exemplo, se se utilizar a regra dos trapézios obtém-se

η =(y0

2+ y1 + . . . + yN−1 +

YN

2

)∆x + O(∆x2). (40)

Em alternativa pode discretizar-se a eq. 15 usando uma diferença finita consistente a solução

numérica de segunda ordem:

η =1ϕ2

yN+1 − yN−1

2∆x+ (∆x2). (41)

Mas esta expressão contém yN+1 que não pertence ao domínio do problema. No entanto, apli-

cando a EDP no ponto xN obtém-se

yN−1 − 2yN + yN+1

(∆x)2 − ϕ2yN = 0 → yN+1 = (∆x)2ϕ2yN + 2yN − yN−1. (42)

Finalmente,

η =1ϕ2

yN − yN−1

∆x+∆x2

yN . (43)

Implementação em AMPL. O método pode ser facilmente implementado em matlab, GAMS,

ampl, ou até em Excel. Eu prefiro a linguagem de programação matemática ampl que é equi-

valente ao GAMS mas que eu considero ser mais intuitiva. O modelo ampl está listado na Fig. 5.

Para correr o programa abre-se uma consola Windows executando sw.exe; este cria uma

consola com um prompt “sw:”; nesta consola arranqua-se o ampl escrevendo ampl; o prompt

anterior é substituído por “ampl:”. Agora inclui-se o modelo em ampl; para isso escreve-se

include eta.ampl; [ENTER]

10

Page 12: Solução Numérica de Modelos Descritos por Equações ...nuno/eps/Conteudos/aula12/PSE_PMota.pdf · Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer

EngIQ - Engenharia de Processos e Sistemas

option substout 1 ;option show_stats 1 ;option solver "lpsolve" ;

param N integer > 1 ;param dx = 1/N ;param phi >= 0 ;

set PTS = 0..N ordered ;param x { i in PTS } = dx * i ;param w { i in PTS } = cosh( phi * x[i] ) / cosh( phi ) ;param eta = tanh( phi ) / phi ;

var y { PTS } ;

s.t. LinSys { i in PTS } :( if i = 0 then

2*(y[1] - y[0])/dx^2 - phi^2 * y[0]else if i < N then(y[i-1] - 2*y[i] + y[i+1])/dx^2 - phi^2 * y[i]

elsey[N] - 1 ) = 0 ;

var eta1 = dx * ( sum { i in PTS } y[i] - (y[0] + y[N])/2 ) ;var eta2 = (y[N] - y[N-1])/dx / phi^2 + dx * y[N] / 2 ;

Figura 5: modelo ampl para a resolução por diferenças finitas do problema de difusão e reacçãoquímica numa pellet de catalisador; supõe-se que o modelo fica gravado num ficheiro chamadoeta.ampl.

No modelo ainda não foram atribuídos valores aos parâmetros phi e N; suponha-se que se

pretende resolver o problema para ϕ = 10 com 10 pontos de discretização; para isso escreve-se

let phi := 10.0; let N := 10; [ENTER]

Para resolver o problema, basta agora escrever

solve; [ENTER]

O ampl responde com a seguinte informação:

Presolve eliminates 1 constraint and 1 variable.Substitution eliminates 2 variables.Adjusted problem:10 variables, all linear10 constraints, all linear; 28 nonzeros0 objectives.

11

Page 13: Solução Numérica de Modelos Descritos por Equações ...nuno/eps/Conteudos/aula12/PSE_PMota.pdf · Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer

EngIQ - Engenharia de Processos e Sistemas

LP_SOLVE 4.0.1.0: optimal, objective 010 simplex iterations

Para comparar a solução numérica com a solução analítica pode escrever-se:

display x, w, y; [ENTER]

o que faz a listagem dos valores de xi, wi (solução analítica) e yi. Para comparar os valor analítico

de η com a solução numérica, escreve-se

display eta, eta1, eta2; [ENTER]

obtendo-se

eta = 0.1eta1 = 0.111803eta2 = 0.111803

Para calcular η para ϕ = 100 com N = 10, pode escrever-se o seguinte:

let phi := 100.0; solve; display eta, eta1, eta2; [ENTER]

(Nota: N já era igual a 10 da simulação anterior.) A nova solução seria: eta = 0.01, eta1 = eta2

= 0.0509902. Neste caso o erro é apreciável. Para melhorar a solução é necessário aumentar o

número de pontos de discretização, e.g.,

let N := 50; solve; display eta, eta1, eta2; [ENTER]

o que origina: eta = 0.01, eta1 = eta2 = 0.0141421; melhorou bastante. Para N = 200:

let N := 200; solve; display eta, eta1, eta2; [ENTER]

obtém-se eta = 0.01, eta1 = eta2 = 0.0103078.

2.2 Método dos volumes finitos

Este método á parecido com o método das diferenças finitas, mas é particularmente aplicável

às equações gerais de conservação (matéria, energia, ou quantidade de movimento), que podem

ser escritas na seguinte forma genérica:

∂t(ρϕ) + ∇ · (ρuϕ) = ∇ · (Γ∇ϕ) + S , (44)

em que ρ é a densidade do fluido, ϕ é a variável dependente a ser conservada (massa total,

quantidade de um componente, energia total, quantidade de movimento), Γ é um coeficiente de

difusão, u = (u, v,w) é o vector velocidade, e S é um termo fonte; S é positivo se gerar ϕ e

negativo se consumir ϕ.

12

Page 14: Solução Numérica de Modelos Descritos por Equações ...nuno/eps/Conteudos/aula12/PSE_PMota.pdf · Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer

EngIQ - Engenharia de Processos e Sistemas

Por exemplo, a equação de conservação aplicada a um reagente A sujeito a uma reacção de

primeira ordem para escoamento unidimensional num tubo é

∂t(ρwA) +

∂x(ρuwA) =

∂x

(ρDA∂wA

∂x

)− kρwA, (45)

em que wA é a fracção mássica de A, u á a velocidade do fluido ao longo do tubo, DA é a

difusividade molecular, e k é a constante cinética da reacção. Em alternativa pode substituir-se

ρwA pela concentração mássica (ou molar), CA.

O método dos volumes finitos consiste em dividir o domínio em N volumes de controlo,

i = 1, 2, . . . ,N (que podem ser todos iguais ou não) e integrar a equação de conservação ao

longo de cada volume de controlo. Na Fig. 6 apresenta-se um diagrama esquemático do volume

finito (ou de controlo) com índice i. Por exemplo, a integração de

∂ϕ

∂t+∂

∂x(uϕ) =

∂x

(Γ∂ϕ

∂x

)+ S (x, ϕ), (46)

origina ∫ xi+1/2

xi−1/2

∂ϕ

∂tdx + Ji+1/2 − Ji−1/2 =

∫ xi+1/2

xi−1/2

S (x, ϕ) dx, (47)

em que J = uϕ − Γ(∂ϕ/∂x) é o fluxo de transporte de ϕ. Supondo que ϕ(x) ≈ ϕi em todo o

volume de controlo, a equação anterior pode ser simplificada originando

dϕi

dt+

Ji+1/2 − Ji−1/2

∆xi= S (xi, ϕi). (48)

Os fluxos de transporte de ϕ nas fronteiras do volume de controlo podem ser discretizados

através de diferenças finitas:

Ji−1/2 =

(uϕ − Γ∂ϕ

∂x

)i−1/2≈ ui−1/2

ϕi−1 + ϕi

2− Γϕi − ϕi−1

xi − xi−1, (49)

Ji+1/2 =

(uϕ − Γ∂ϕ

∂x

)i+1/2≈ ui+1/2

ϕi + ϕi+1

2− Γϕi+1 − ϕi

xi+1 − xi. (50)

(51)

Ji +1/2Ji −1/2

xi −1 xi +1xi

Φi

Δxi

Figura 6: Representação esquemática do volume de controlo com índice i para discretização

unidimensional de equações às derivadas parciais.

13

Page 15: Solução Numérica de Modelos Descritos por Equações ...nuno/eps/Conteudos/aula12/PSE_PMota.pdf · Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer

EngIQ - Engenharia de Processos e Sistemas

Introduzindo estas expressões na eq. 48 origina uma equação diferencial ordinária para cada

volume de controlo. Aparentemente, o método dos volumes finitos é muito parecido com o

método das diferenças finitas.

O método dos volumes de finitos tem a vantagem de conservar globalmente a quantidade ϕ.

Somando as equações para todos os volumes de controlo, obtém-se:

N∑i=1

∆xidϕi

dt+ (JN+1/2 − J1/2) =

N∑i=1

∆xiS (xi, ϕi), (52)

em que J1/2 = JxL é o fluxo na fronteira inferior do domínio e JN+1/2 = JxU é o fluxo na fronteira

superior do domínio. Esta equação é equivalente à discretização da equação de conservação

global:ddt

∫ xU

xL

ϕ dx +(uϕ − Γ∂ϕ

∂x

)xU

−(uϕ − Γ∂ϕ

∂x

)xL

=

∫ xU

xL

S (x, ϕ) dx. (53)

Uma outra vantagem do método é a facilidade com que se aplicam métodos específicos de

discretização dos termos convectivos, (uϕ)i−1/2 e (uϕ)i+1/2, nas faces dos volumes de controlo.

Exemplo 1. Para dar um pequeno exemplo das potencialidades do método, considere-se a re-

solução numérica da equação estacionária de convecção-difusão da concentração de um soluto:

vdcdz− D

d2cdz2 = 0, c|z=0 = C0, c|z=L = C1, (54)

em que c(z) é o perfil de concentração ao longo de uma coordenada espacial z, v é a velocidade

do fluído e D é o coeficiente de difusão. Convém adimensionalizar a equação; para isso introduz-

se as seguintes adimensionalizações:

x = z/L, y = (c −C1)/(C0 −C1). (55)

A modelo adimensional é

dydx− 1

Ped2ydx2 = 0, y|x=0 = 1, y|x=1 = 0, (56)

em que Pe = vL/D é o número de Péclet: quando Pe é grande, o transporte do soluto é essen-

cialmente convectivo, podendo-se desprezar o efeito de dispersão devido à difusão do soluto;

quando Pe é pequeno o transporte do soluto é tem uma componente difusiva não desprezável.

A eq. 56 tem uma solução analítica simples:

y(x) =exp(Pe) − exp(Pe · x)

exp(Pe) − 1. (57)

14

Page 16: Solução Numérica de Modelos Descritos por Equações ...nuno/eps/Conteudos/aula12/PSE_PMota.pdf · Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer

EngIQ - Engenharia de Processos e Sistemas

option substout 1 ;option show_stats 1 ;option solver "lpsolve" ;

param N integer > 0 ;param dx = 1/N ;param Pe >= 0 ;

set PTS = 0..N ordered ;param x { i in PTS } = dx * i ;param ya { i in PTS } = ( exp(Pe) - exp(Pe*x[i]) ) / ( exp(Pe) - 1 ) ;

var y { PTS } ;

s.t. LinSys { i in PTS } :( if i = 0 then

y[0] - 1else if i < N then(y[i+1] - y[i-1])/(2*dx) - (y[i-1] - 2*y[i] + y[i+1])/(Pe*dx^2)

elsey[N] ) = 0 ;

Figura 7: modelo ampl para a resolução do problema de convecção-difusão por diferenças fini-

tas centradas de segunda ordem.

A resolução da eq. 56 por diferenças finitas centradas(dydx

)xi

=yi+1 − yi−1

2∆x,

(d2ydx2

)xi

=yi−1 − 2yi + yi+1

(∆x)2 ,

origina o seguinte sistema de equações lineares:

y0 = 1,yi+1 − yi−1

2∆x− yi−1 − 2yi + yi+1

(∆x)2Pe= 0 (i = 1, . . . ,N − 1), yN = 1. (58)

A Fig. 7 lista o programa ampl para resolver este sistema de equações. Se o problema para

Pe = 100 for resolvido com N = 20 obtêm-se os resultados reproduzidos na Fig. 8. Como se

pode observar, a solução numérica é oscilante na frente de concentração.

O problema reside na discretização do termo convectivo, dy/dx. Uma forma de eliminar a

oscilação na solução numérica é substituir a diferença finita centrada de segunda ordem pela

diferença finita de primeira ordem desviada à esquerda:(dydx

)xi

=yi − yi−1

∆x. (59)

15

Page 17: Solução Numérica de Modelos Descritos por Equações ...nuno/eps/Conteudos/aula12/PSE_PMota.pdf · Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer

EngIQ - Engenharia de Processos e Sistemas

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

0.6 0.65 0.7 0.75 0.8 0.85 0.9 0.95 1

Figura 8: linha = Eq. 57, símbolos a cheio = solução da Eq. 58 para N = 20; símbolos vazios =

solução com diferença finita de primeira ordem e N = 20.

Resolvendo o problema com esta diferença finita de primeira ordem obtém-se a solução repre-

sentada pelos círculos vazios; a solução numérica deixou de ser oscilatória mas é mais dispersiva

do que a solução analítica. Vejamos porquê:(dydx

)i=

yi − yi−1

∆x+ O(∆x) =

yi+1 − yi−1

2∆x− ∆x

2yi−1 − 2yi + yi+1

(∆x)2 . (60)

O primeiro termo na segunda igualdade é discretização de dy/dx com uma diferença finita

centrada de segunda ordem e o segundo termo é a discretização de d2y/dx2 com uma diferença

finita centrada de segunda ordem. Consequentemente, discretizar dy/dx com a diferença finita

da Eq. 60 é equivalente a resolver a EDP

dydx−

(∆x2+

1Pe

)d2ydx2 = 0, y|x=0 = 1, y|x=1 = 0, (61)

com diferenças finitas centradas de segunda ordem, ou seja, a resolver o problema com um

coeficiente de difusão aparente

D′ = D +vL2∆x. (62)

Isto explica porque é que a solução numérica é mais difusiva do que a solução analítica.

16

Page 18: Solução Numérica de Modelos Descritos por Equações ...nuno/eps/Conteudos/aula12/PSE_PMota.pdf · Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer

EngIQ - Engenharia de Processos e Sistemas

Exemplo 2. Consideremos agora a formulação de volumes finitos. A integração num volume

de controlo genérico, e.g., o volume i, origina:

Ji+1/2 − Ji−1/2 = 0, Ji+1/2 =

(y − 1

Pedydx

)i+1/2. (63)

Já vimos que o termo dispersivo é pacífico; portanto podemos discretizá-lo com uma diferença

finita centrada: (1Pe

dydx

)i−1/2=

1Pe

yi − yi−1

∆x,

(1Pe

dydx

)i+1/2=

1Pe

yi+1 − yi

∆x. (64)

Os termos complicados são yi−1/2 e yi+1/2. Já vimos que não podemos usar as aproximações

yi−1/2 = (yi−1 + yi)/2 e yi+1/2 = (yi + yi+1)/2 porque elas dão origem a expressão idênticas às

diferenças finitas centradas de segunda ordem. A utilização de diferenças finitas descentrada de

primeira ordem é equivalente a considerar

yi−1/2 = yi−1 e yi+1/2 = yi. (65)

Isto faz sentido para transporte fortemente convectivo porque nestas condições o valor da va-

riável numa face do volume de controlo é bem aproximado pelo valor da variável no seio do

volume de controlo que se encontra a montante. No entanto, já vimos que esta abordagem in-

troduz dispersão numérica excessiva.

Para resolver o problema temos que utilizar métodos mais complicados. Uma hipótese é

utilizar uma interpolação descentrada de ordem mais elevada. Por exemplo, para determinar

yi+1/2 usa-se o polinómio que interpola yi−1, yi e yi+1. A fórmula assim obtida é

yi+1/2 =3yi+1 + 6yi − yi−1

8=

yi + yi+1

2− yi−1 − 6yi + yi+1

8. (66)

Para determinar yi−1/2 usa-se o polinómio que interpola yi−2, yi−1 e yi. A fórmula é

yi−1/2 =3yi + 6yi−1 − yi−2

8=

yi−1 + yi

2− yi−2 − 6yi−1 + yi

8. (67)

Este esquema de discretização é conhecido como o esquema Quick; o método corresponde a

uma discretização desviada a montante de terceira ordem do termo dy/dx.

Outra alternativa é utilizar-se um método de discretização não linear; estes métodos são

denominados limitadores de fluxo. Por exemplo, o esquema harmónico de van Leer é

yi−1/2 = yi−1 +max{

0,(yi−1 − yi−2)(yi − yi−1)

yi − yi−2

}, (68)

yi+1/2 = yi +max{

0,(yi − yi−1)(yi+1 − yi)

yi+1 − yi−1

}. (69)

17

Page 19: Solução Numérica de Modelos Descritos por Equações ...nuno/eps/Conteudos/aula12/PSE_PMota.pdf · Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer

EngIQ - Engenharia de Processos e Sistemas

2.3 Método dos resíduos ponderados

Considere-se o problema de difusão e reacção química numa pellet de catalisador, regido pelas

eqs. 9–11, re-escrito na seguinte forma compacta:

L(y) ≡ ∂2y∂x2 − ϕ

2y = 0, M(y) ≡ ∂y(0)∂x

y(1) − 1

= 0. (70)

A ideia principal do método de resíduos ponderados é a construção de uma solução aproximada

y que satisfaça a eq. 70 segundo um determinado critério de minimização do erro de aproxi-

mação. Porque a solução y é aproximada, em geral ela não satisfaz a PDE nem as condições

fronteira, isto é,

L(y) = R , 0 e M(y) = Rb , 0. (71)

Nesta equação, R e Rb são os resíduos da aproximação. Se y for construída de forma a que a

equação diferencial seja satisfeita exactamente (isto é, R = 0) então o método chama-se método

de fronteira; se y for construída de forma a que as condições fronteira sejam satisfeitas exac-

tamente, então o método chama-se método interior; finalmente, se nem a equação diferencial

nem as condições fronteira forem satisfeitas exactamente, o método diz-se misto.

O método dos resíduos ponderados requer dois tipos de funções: uma é denominada função

de aproximação; a outra é denominada função de ponderação. A função de aproximação é

usada para construir a solução numérica y; a outra função é utilizada como base de critério

para minimizar o resíduo da solução aproximada (um resíduo pequeno implica que a solução

numérica aproxima a solução real com um erro pequeno).

Para minimizar o resíduo, que normalmente é uma função da variável independente x, é

necessário converter R num escalar para que se possa proceder a uma optimização do valor do

resíduo. Isto faz-se através de uma forma de ponderação média do resíduo em todo o domínio do

problema, o que no caso presente equivale a um produto interno de funções. Este último pode

ser visto como uma medida de distância média entre duas funções num determinado domínio da

variável independente; no caso do método dos resíduos ponderados, a distância média medida

é calculada entre a função residual e as funções de ponderação.

Consideremos o método interior. A aproximação numérica da PDE pode ser escrita como

uma expansão polinomial, por exemplo,

y = y0 +

n∑i=1

aiϕi(x). (72)

18

Page 20: Solução Numérica de Modelos Descritos por Equações ...nuno/eps/Conteudos/aula12/PSE_PMota.pdf · Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer

EngIQ - Engenharia de Processos e Sistemas

em que y0 e as funções de aproximação ϕi(x) têm que ser escolhidas por forma a satisfazerem as

condições fronteira, isto é, M(y) = 0. Os n coeficientes ai são desconhecidos e são determinados

pelo método dos resíduos ponderados forçando a solução y(x; a1, . . . , an) a satisfazer o melhor

possível a PDE.

Substituindo y na PDE obtém-se a equação residual:

R(x) = L(y) = L

n∑i=1

aiϕi(x)

. (73)

Dado que o resíduo é geralmente uma função de x, é necessário minimizá-lo em todo o domínio

de interesse. No método dos resíduos ponderados utiliza-se o seguinte integral como medida

média do resíduo: ∫V

R(x)wk(x) dx, (74)

onde V é o domínio de interesse e wk(x) é uma k-gésima função de ponderação seleccionada de

um conjunto (k = 1, 2, . . . , n) de funções independentes, denominadas funções de ponderação.

Este integral denomina-se produto interno das funções no domínio V e é normalmente escrito

na seguinte forma compacta:

(R,wk)V . (75)

Dado que a solução numérica tem n coeficientes desconhecidos ai, para determinar or seus

valores força-se a que o produto interno do resíduo com as primeiras n funções de ponderação

seja igual a zero. Isto origina n equações algébricas, normalmente não lineares,

(R,wk)V = 0 para k = 1, 2, . . . , n, (76)

que podem ser resolvidas para obter os valores dos n coeficientes ai.

Retomemos o exemplo do problema de difusão e reacção química. É evidente que é mais

fácil escrever uma função de aproximação que satisfaça as condições fronteira do que uma

que satisfaça a PDE em todo o domínio do problema. Por exemplo, suponha-se que se opta

por escrever a função de aproximação como a soma de n polinómios. Dado que a solução é

simétrica, isto é, y(−x) = y(x), os polinómios seleccionados têm que envolver potências pares

de x. Para além disso, a soma dos polinómios tem que ser igual a 1 para x = 1 e a primeira

derivada tem que ser nula para x = 0. É fácil concluir que a função de aproximação será

y(x) = 1 +n∑

i=1

ai(1 − x2i), (77)

19

Page 21: Solução Numérica de Modelos Descritos por Equações ...nuno/eps/Conteudos/aula12/PSE_PMota.pdf · Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer

EngIQ - Engenharia de Processos e Sistemas

porque y(1) = 1 e (dy/dx)x=0 = 0. O resíduo da aproximação é

R(x) = L(y) =d2ydx2 − ϕ

2y. (78)

Conhecendo-se os valores de ai pode calcular-se o factor de eficiência:

η =

∫ 1

0y(x) dx = 1 +

n∑i=1

ai

(1 − 1

2i + 1

)(79)

=1ϕ2

(dydx

)x=1= − 2ϕ2

n∑i=1

aii. (80)

Nos exemplos desenvolvidos em seguida vai-se considerar a aproximação mais simples, isto

é, a aproximação para n = 1:

y(x) = 1 + a1(1 − x2), η = 1 +2a1

3= −2a1

ϕ2 . (81)

O resíduo para esta aproximação é

R(x) = −2a1 − ϕ2[1 + a1(1 − x2)]. (82)

Para efeitos de cálculo, o módulo de Thiele vai ser fixado a ϕ = 1; o factor de eficiência para

estas condições é η = tanh(1)/1 = 0.7616.

A escolha do tipo de funções teste origina diferentes variações do método dos resíduos

ponderados:

1. Método de colocação;

2. Método de sub-domínio;

3. Método de mínimos quadrados;

4. Método de momentos;

5. Método de Galerkin;

6. Método de colocação ortogonal.

20

Page 22: Solução Numérica de Modelos Descritos por Equações ...nuno/eps/Conteudos/aula12/PSE_PMota.pdf · Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer

EngIQ - Engenharia de Processos e Sistemas

Método de colocação. Neste método a função de teste é um delta de Dirac em n pontos

interiores (chamados pontos de colocação) do domínio de interesse:

wk = δ(x − xk). (83)

Uma das propriedades da função delta de Dirac é a seguinte:∫ xk+b

xk−af (x)δ(x − xk) dx = f (xk) (a > 0, b > 0). (84)

Se os n pontos interiores forem raízes de um polinómio ortogonal de Jacobi de ordem n, então

o método de colocação diz-se ser de colocação ortogonal. Aplicando a eq. 84 em 76, obtém-se

R(xk) = 0 para k = 1, 2, . . . , n, (85)

ou seja: força-se o resíduo a ser nulo nos pontos interiores de colocação x1, . . . , xn.

Por exemplo, suponha-se que se escolhe x1 = 0.5 como ponto de colocação para o problema

de difusão-reacção; x1 = 0.5 corresponde ao ponto localizado a meio do domínio. Anulando o

resíduo neste ponto obtém-se

R(x1) = −2a1 − ϕ2[1 + a1(1 − x21)] = 0 → a1 = −

ϕ2

2 + ϕ2(1 − x21)= −0.3636. (86)

A estimativa do factor de eficiência é

η = 1 +2a1

3= 0.7576 (87)

= −2a1

ϕ2 = 0.7273. (88)

Estes valores indicam que a solução obtida pelo método de colocação concorda razoavelmente

bem com a solução analítica.

Método de sub-domínio. Neste caso o domínio é dividido em n sub-domínios Vi e as funções

de ponderação escolhidas são

wk =

{1, no interior do sub-domínio Vk

0, no exterior do sub-domínio Vk. (89)

Ou seja, anula-se o integral do resíduo sobre cada um dos sub-domínios.

Para n = 1 o sub-domínio coincide com o domínio completo do problema. Logo,

(R,w1)V =

∫ 1

0R(x)w1 dx =

∫ 1

0{−2a1 − ϕ2[1 + a1(1 − x2

1)]}(1) dx (90)

21

Page 23: Solução Numérica de Modelos Descritos por Equações ...nuno/eps/Conteudos/aula12/PSE_PMota.pdf · Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer

EngIQ - Engenharia de Processos e Sistemas

Forçando o produto interno a ser nulo obtém-se

(R,w1)V = 0 → a1 = −38, (91)

o que permite o cálculo do factor de eficiência:

η = 1 +2a1

3= 0.75 (92)

= −2a1

ϕ2 = 0.75. (93)

Estes valores indicam que a solução obtida pelo método do sub-domínio também concorda

razoavelmente bem com a solução analítica.

Método de mínimos quadrados. Neste método a função de ponderação é

wk =∂R∂ak. (94)

Com esta definição, o integral que define o resíduo pode ser escrito da seguinte forma:∫V

R∂R∂ak

dx =12∂

∂ak

∫V

R2 dx. (95)

A equação anterior mostra que os coeficientes ak são determinados através da minimização de

(R,R).

No caso do problema em estudo,

(R,w1)V =12∂

∂a1

∫ 1

0{−2a1 − ϕ2[1 + a1(1 − x2

1)]}2 dx = 0. (96)

Integrando esta equação para ϕ = 1 e depois diferenciando em ordem a a1, obtém-se

(R,w1)V =12

(21615

a1 +163

)= 0 → a1 = −

1027. (97)

As estimativas do factor de eficiência são

η = 1 +2a1

3= 0.7531 (98)

= −2a1

ϕ2 = 0.7407. (99)

Novamente, estes valores comparam bem com a solução analítica.

22

Page 24: Solução Numérica de Modelos Descritos por Equações ...nuno/eps/Conteudos/aula12/PSE_PMota.pdf · Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer

EngIQ - Engenharia de Processos e Sistemas

Método dos momentos. Neste método as funções de ponderação são

wk = xk−1 para k = 1, 2, . . . , n. (100)

Portanto, anulam-se os seguintes produtos internos para calcular os coeficientes ai:

(R, 1)V = 0, (R, x)V = 0, , (R, x2)V = 0, . . . , (R, xn−1)V = 0. (101)

Como temos estado a considerar soluções para n = 1, observa-se que para n = 1 o mé-

todo dos momentos é idêntico ao método dosub-domínio, porque o produto interno a anular é

simplesmente

(R, 1)V = 0. (102)

Método de Galerkin. Neste método as funções de ponderação são escolhidas da mesma fa-

mília das funções de aproximação:

wk = ϕk(x). (103)

Portanto, no método de Galerkin anulam-se os seguintes produtos internos:

(R, ϕ1)V = 0, (R, ϕ2)V = 0, , (R, ϕ2)V = 0, . . . , (R, ϕ2)V = 0. (104)

A solução do problema de difusão/reacção pelo Método de Galerkin com n = 1 equivale a

anular o seguinte produto interno:

(R,w1)V = 0, w1(x) = 1 − x2 (105)

(R,w1)V =

∫ 1

0{−2a1 − ϕ2[1 + a1(1 − x2

1)]}(1 − x2) dx = 0 (106)

(R,w1)V = −23

(1 + 2a1) − 815

a1 = 0. (107)

Resolvendo em ordem a a1 obtém-se

a1 = −1028

η = 1 +

2a1

3= 0.7619

= −2a1

ϕ2 = 0.7143. (108)

Este resultado parece mostrar que o método de Galerkin é o método mais preciso para o pro-

blema em análise.

23

Page 25: Solução Numérica de Modelos Descritos por Equações ...nuno/eps/Conteudos/aula12/PSE_PMota.pdf · Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer

EngIQ - Engenharia de Processos e Sistemas

Método de colocação ortogonal. Apesar do método de Galerkin ser o mais preciso na reso-

lução do problema de difusão/reacção com n = 1, quando se aumenta o número de funções de

aproximação (n > 1) observa-se que o método de Galerkin apresenta muito mais dificuldades

analíticas do que o método de colocação. De facto, com excepção do método de colocação,

todos os outros métodos de resíduos ponderados requerem uma integração da forma∫V

R(x)w(x) dx, (109)

que pode exigir a integração numérica se a integração analítica for impossível ou difícil de

determinar.

A precisão do método de colocação pode ser melhorada se os pontos de colocação forem

judiciosamente escolhidos. No caso do problema de difusão/reacção, observemos o integral que

define a variável macroscópica que nos interessa:

η =

∫ 1

0y(x) dx,

(dydx

)x=0= 0, y(1) = 1. (110)

Suponha-se que se utiliza uma fórmula de quadratura para calcular este integral numericamente;

uma fórmula de quadratura não é mais do que a média ponderada dos valores da função a inte-

grar em determinados pontos do intervalo de integração. No caso presente, podemos escrever a

quadratura da seguinte forma:

η =

∫ 1

0y(x) dx ≈

m∑k=1

αky(xk) + αm+1y(1); 0 ≤ x1 < x2 < . . . < xm < 1. (111)

Quantos mais pontos foram incluídos na fórmula mais precisa ela será. É por este motivo que

incluí o ponto x = 1 no conjunto de pontos de quadratura; para x = 1 conhece-se o valor

analítico da solução, por isso é um ponto extra que se obtém de borla: seria um desperdício não

o incluir.

O problema que se coloca agora é: quais deverão ser os valores dos coeficientes αk e dos

pontos de quadratura xk para que a fórmula seja o mais precisa possível. Considere-se a fórmula

de quadratura mais simples, com um único ponto interno de quadratura:

η = α1y(x1) + α2y(1). (112)

Esta fórmula de quadratura tem 3 incógnitas: α1, α2 e x1; são, portanto, necessárias três equações

para as determinar. Se a solução fosse constante em todo o domínio, isto é, y(x) = 1, a aplicação

da fórmula de quadratura originaria:

η = (α1)(1) + (α2)(1) = 1 → α1 + α2 = 1. (113)

24

Page 26: Solução Numérica de Modelos Descritos por Equações ...nuno/eps/Conteudos/aula12/PSE_PMota.pdf · Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer

EngIQ - Engenharia de Processos e Sistemas

Já temos a primeira equação. Suponha-se aqora que o perfil de concentração é um polinómio de

segundo grau:

y(x) = 1 + a1(1 − x2). (114)

Se a fórmula de quadratura for válida para y(x) = 1 e y(x) = 1−x2 então ela será necessariamente

válida para y(x) = 1 + a1(1 − x2) por ser uma combinação linear dos polinómios anteriores. Por

uma questão de simplicidade usar-se-á então y(x) = 1 − x2. Aplicando a fórmula de quadratura

ao integral obtém-se ∫ 1

0y(x) dx = 2/3 = (α1)(1 − x2

1) + α2(1 − 12) (115)

2/3 = (α1)(1 − x21) (116)

Já temos a segunda equação.

Para obter a terceira equação considere-se y(x) = 1 − x4; se a fórmula de quadratura for

válida para y(x) = 1, y(x) = 1− x2 e y(x) = 1− x4, então ela será válida para qualquer polinómio

do tipo y(x) = 1 + a1(1 − x2) + a2(1 − x4). Para y(x) = 1 − x4, obtém-se∫ 1

0y(x) dx = 4/5 = (α1)(1 − x4

1) + (α2)(1 − 14) (117)

4/5 = (α1)(1 − x41) (118)

Agora já temos o conjunto de equações necessárias para a determinação de α1, α2 e x1:

α1 + α2 = 1 (119)

(1 − x21)α1 = 2/3 (120)

(1 − x41)α1 = 4/5 (121)

A solução deste sistema de equações é:

x1 = 0.44721, α1 = 0.83333, α2 = 0.16667. (122)

Voltemos, agora, a resolver o problema de difusão/reacção pelo método de colocação com

n = 1 e x1 = 0.44721 em vez de x1 = 0.5. Anulando o resíduo neste ponto obtém-se

R(x1) = −2a1 − ϕ2[1 + a1(1 − x21)] = 0 → a1 = −

ϕ2

2 + ϕ2(1 − x21)= −0.35714. (123)

Magia da magias, −0.35714 = −10/28 que é precisamente o valor obtido pelo método de

Galerkin!!! (Conseguem perceber porquê?) Conseguimos melhorar a precisão do método de

colocação ortogonal através da escolha judiciosa do ponto de colocação.

25

Page 27: Solução Numérica de Modelos Descritos por Equações ...nuno/eps/Conteudos/aula12/PSE_PMota.pdf · Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer

EngIQ - Engenharia de Processos e Sistemas

O ponto x1 = 0.44721 funcionou bem porque ele é um zero de um polinómio de Jacobi

específico que está relacionado com o problema em questão. O polinómio de Jacobi de grau N

tem um seguinte representação em série de potências:

J(α,β)N (x) =

N∑i=0

(−1)N−iγN,ixi, (124)

com γN,0 = 1. Os coeficientes γN,i são constantes e α e β caracterizam o tipo de polinómio.

Os polinómios de Jacobi pertencem a uma classe de polinómios ortogonais porque satisfa-

zem a seguinte condição de ortogonalidade no domínio [0, 1]:∫ 1

0[xβ(1 − x)α]J(α,β)

j (x)J(α,β)N (x) dx = 0 (125)

para j = 0, 1, 2, . . . , (N − 1), isto é, todos os polinómios de Jacobi são ortogonais a todos os

outros exceptuando a eles próprios (isto é, quando j = N).

Pode demonstrar-se que o polinómio J(α,β)N (x) tem exactamente N zeros distintos todos eles

localizados no intervalo [0, 1]. Se o domínio do sistema PDE a resolver, por exemplo x ∈ [a, b],

for convertido no domínio [0, 1] através da mudança de variável

x′ = (x − a)/(b − a), (126)

então pode demonstrar-se que os zeros do polinómio J(α,β)N (x) são excelentes pontos de coloca-

çãoo para resolução da PDE pelo métodos dos resíduos ponderados. Em apêndice lista-se vários

tipos de polinómios ortogonais.

Para ver como surge o ponto x1 = 0.44721, note-se primeiro que os polinómios de Jacobi são

séries de polinómios com potências impares e potências pares de x. No entanto, no problema que

temos usado como exemplo, a função de aproximação é a soma de polinómios com potências

pares de x. Para poder utilizar-se uma função de aproximação envolvendo polinómios com

potências impares e pares de x pode fazer-se a seguinte substituição de variável: z = x2. Obtém-

se:dydx=

dzdx

dydz= 2√

zdydz,

d2ydx2 =

dzdx

ddz

(dydx

)= 4z

d2ydz2 + 2

dydz. (127)

Aplicando estas transformações nas eqs. 9–11, obtém-se

4zd2ydz2 + 2

dydz− ϕ2y = 0, (128)

y = 1 para x = 1. (129)

26

Page 28: Solução Numérica de Modelos Descritos por Equações ...nuno/eps/Conteudos/aula12/PSE_PMota.pdf · Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer

EngIQ - Engenharia de Processos e Sistemas

A condição fronteira (dy/dx)x=0 = 0 é automaticamente satisfeita pela transformação de variá-

vel, z = x2, pelo não necessita de ser incluída. O factor de eficiência é

η =

∫ 1

0y(x) dx = 2

∫ 1

0y(z)z1/2 dz. (130)

Comparando este integral com a condição de ortogonalidade, dada pela eq. 125, conclui-se que

factor de ponderação comum a ambos os integrais é obtido para α = 0 e β = 1/2. Se utilizarmos

um ponto interior de colocação, o integral é dado por uma fórmula de quadratura idêntica à da

eq. 111:

η = 2∫ 1

0y(z)z1/2 dz ≈ 2

m∑k=1

z1/2k αky(zk) + 11/2αm+1y(1); 0 ≤ z1 < z2 < . . . < zm < 1. (131)

Um quadratura que inclui um dos pontos da fronteira do domínio de integração, denomina-

se quadratura de Radau (ver apêndice E.6); os pontos óptimos de quadratura são os zeros do

polinómio de Jacobi J(Nα, β+1)(x) (ver tabela 12.2 no apêndice). No caso presente, estamos inte-

ressados no zero do polinômio J(10, 3/2)(x). Procurando em Tabelas desses polinómios, obtém-

se z1 = 0.2, α1 = 0.83333 e α2 = 0.16667. Como z = x2, o ponto de colocação equivalente

na coordenada x será x1 =√

(z) = 0.44721; este ponto é idêntico ao que tinhamos obtido

anteriormente.

3 Solução de sistemas mistos de equações diferenciais ordinárias ealgébricas

Um sistema misto de equações diferenciais ordinárias e algébricas pode ser escrito na seguinte

forma genérica:

F(x, y, y′, t) = 0 (132)

G(x, y, t) = 0, (133)

em que y = (y1, . . . , yn) é um conjunto de variáveis diferenciais, y′ é uma notação condensada

para dy/dt, e x = (x1, . . . , xm) é um conjunto de m variáveis algébricas. Este sistema diferencial

necessita de n equações iniciais:

H(x0, y0, y′0) = 0 para t = 0. (134)

Em muitos casos o sistema é puramente diferencial, isto é, m = 0, e para além disso

F(y, y′, t) = 0 pode ser reescrita numa forma explicita em ordem a y′:

y′(t) = f(t, y(t)), y(0) = y0. (135)

27

Page 29: Solução Numérica de Modelos Descritos por Equações ...nuno/eps/Conteudos/aula12/PSE_PMota.pdf · Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer

EngIQ - Engenharia de Processos e Sistemas

Certamente devem ter aprendido métodos de Runge-Kutta explícitos para a resolução da

Eq. 135. Por exemplo, o método de Runge-Kutta-Gill corresponde ao seguinte esquema de

integração, em que conhecido o valor de y para o instante tn, isto é yn = y(tn), se pretende

avançar a solução para o instante de tempo tn+1 = tn + h.

yn+1 = yn +16

(k1 + k4) +13

( bk2 + dk3), (136)

em que

k1 = h f(tn, yn) (137)

k2 = h f(tn +

h2, yn +

12

k1

)(138)

k3 = h f(tn +

h2, yn + ak1 + bk2

)(139)

k4 = h f(tn + h, yn + ck2 + dk3) (140)

com

a =

√2 − 12, b =

2 −√

22, c = −

√2

2, d = 1 +

√2

2. (141)

Os métodos explícitos não são frequentemente utilizados na integração de modelos dife-

renciais em Engenharia Química porque os métodos explícitos não são incondicionalmente

estáveis. Por esta razão, vou-me concentrar na resolução do sistema DAE dado na Eq. 132.

O método mais simples é o método implícito de Euler. Este método decorre directamente da

aproximação de dy/dt em série de Taylor dada na Eq. 20 e que se reproduz em seguida:

y(x − ∆x) = y(x) − dy(x)dx∆x + O(∆x2). (142)

Desta expressão decorre imediatamente que

y′n+1 =yn+1 − yn

h+ O(h). (143)

Portanto, para determinar xn+1 e yn+1 em tn+1 = tn + h, conhecidos xn e yn, resolve-se o sistema

algébrico

F(xn+1, yn+1,

yn+1 − yn

h, tn+1

)= 0 (144)

G(xn+1, yn+1, tn+1) = 0. (145)

Este método é incondicionalmente estável, mas exige a resolução de um sistema de equações

algébricas que em muitos casos são não lineares. A desvantagem do método é ser um método

de 1ł ordem.

28

Page 30: Solução Numérica de Modelos Descritos por Equações ...nuno/eps/Conteudos/aula12/PSE_PMota.pdf · Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer

EngIQ - Engenharia de Processos e Sistemas

Um método de 2ł ordem estável, muito utilizado, é o método dos trapézios também conhe-

cido por método de Crank-Nicholson. Das várias diferenças finitas apresentadas anteriormente,

é fácil deduzir a seguinte fórmula:

y′n+1/2 =

(dydt

)tn+1/2

=yn+1 − yn

h+ O(h2). (146)

Esta equação é idêntica à eq. 143 mas há uma diferença fundamental: a eq. 143 aproxima dy/dt

para tn+1 = tn + h; a eq. 146 aproxima dy/dt para tn+1/2 = tn + h/2. Por isso é que a eq. 143 é

uma aproximação de 1ł ordem, enquanto que a eq. 146 é uma aproximação de 2ł ordem. Para

resolver o sistema 132 em tn+1/2 é necessário ter expressões para xn+1/2 e yn+1/2. É fácil deduzir

que as seguintes fórmulas:

xn+1/2 =xn + xn+1

2+ O(h2), yn+1/2 =

yn + yn+1

2+ O(h2). (147)

Estas fórmulas são consistentes com a aproximação de 2ł ordem dada na eq. 146. Resumindo,

para se calcular a solução no instante de tempo tn+1 usando o método de Crank-Nicholson

resolve-se o seguinte sistema de equações algébricas:

F(xn + xn+1

2,

yn + yn+1

2,

yn+1 − yn

h, tn+1/2

)= 0 (148)

G(xn + xn+1

2,

yn + yn+1

2, tn+1/2

)= 0. (149)

Actualmente, os métodos de integração mais usados são os métodos implícitos de ordem

variável e passo variável baseados nas fórmulas BDF de diferenciação de Gear. Sucintamente,

y′n+1 é aproximado pela diferenciação do polinómio que interpola yn+1 e os valores da solução

nos k passos de integração anteriores. Por exemplo, o polinómio que interpola yn+1 e yn é

p1(t) = yn +yn+1 − yn

h(t − tn). (150)

A diferenciação dá directamente a fórmula implícita de Euler:

y′n+1 =yn+1 − yn

h. (151)

Portanto a fórmula BDF de primeira ordem é equivalente ao método implícito de Euler.

Para deduzir uma fórmula de 2ł ordem, determina-se o polinómio que interpola yn+1, yn e

yn−1. O resultado é

p2(t) = yn +yn+1 − yn

h(t − tn) +

yn−1 − 2yn + yn+1

2h2 (t − tn)(t − tn+1) (152)

29

Page 31: Solução Numérica de Modelos Descritos por Equações ...nuno/eps/Conteudos/aula12/PSE_PMota.pdf · Seguem-se alguns exemplos típicos de diferentes tipos de EDP’s que podem ocorrer

EngIQ - Engenharia de Processos e Sistemas

Diferenciando este polinómio em tn+1 obtém-se

y′n+1 =yn+1 − yn

h+

yn−1 − 2yn + yn+1

2h. (153)

Em qualquer caso, o sistema algébrico que é necessário resolver para calcular a solução no

instante tn+1 é do tipo

F(xn+1, yn+1, αyn+1 + w, tn+1) = 0 (154)

G(xn+1, yn+1, tn+1) = 0, (155)

em que α e w são constantes que variam de passo para passo.

30