Método de Lax–Friedrichs

O método de Lax-Friedrichs, em homenagem à Peter Lax e Kurt Otto Friedrichs, é um método numérico para a resolução de equações hiperbólicas em derivadas parciais baseado em diferenças finitas. O método pode ser encontrado a partir do Esquema FTCS (Forward-time central-space). É um método de primeira ordem no tempo e segunda ordem no espaço que apresenta uma estabilidade condicional.

Ilustração do método

A formulação numérica pode ser deduzida a partir da equação da convecção linear:

u t + a u x = 0 ( 1 ) {\displaystyle {\frac {\partial u}{\partial t}}+a{\frac {\partial u}{\partial x}}=0\quad \quad (1)}

Ao discretizarmos a equação (1) pelo esquema FTCS(Forward-time central-space), utilizamos uma diferença adiantada em relação ao tempo (explícito no tempo) e uma diferença centrada em relação ao espaço, lembrando que a diferença centrada é obtida subtraindo u i + 1 n {\displaystyle u_{i+1}^{n}} de u i 1 n {\displaystyle u_{i-1}^{n}} e isolando u x {\displaystyle {\frac {\partial u}{\partial x}}} provenientes das séries de Taylor, onde obtemos a discretização da convecção linear pelo esquema FTCS:

u i n + 1 u i n Δ t + a u i + 1 n u i 1 n 2 Δ x = 0 ( 2 ) {\displaystyle {\frac {u_{i}^{n+1}-u_{i}^{n}}{\Delta t}}+a{\frac {u_{i+1}^{n}-u_{i-1}^{n}}{2\Delta x}}=0\quad \quad (2)}

Utilizando a Análise de estabilidade de Von Neumann, descobrimos que esse método é incondicionalmente instável, para resolver esse problema de instabilidade, podemos fazer a seguinte substituição na equação (2):

u i n = u i + 1 n + u i 1 n 2 {\displaystyle u_{i}^{n}={\frac {u_{i+1}^{n}+u_{i-1}^{n}}{2}}\,}

Obtendo assim o método numérico de Lax-Friedrichs:

u i n + 1 = ( u i + 1 n + u i 1 n 2 ) a Δ t 2 Δ x ( u i + 1 n u i 1 n ) ( 3 ) {\displaystyle u_{i}^{n+1}=\left({\frac {u_{i+1}^{n}+u_{i-1}^{n}}{2}}\right)-{\frac {a\Delta t}{2\Delta x}}\left(u_{i+1}^{n}-u_{i-1}^{n}\right)\quad \quad (3)}

O qual também pode ser mostrado em relação ao número de Courant–Friedrichs–Lewy(CFL):

u i n + 1 = ( u i + 1 n + u i 1 n 2 ) σ 2 ( u i + 1 n u i 1 n ) ( 4 ) {\displaystyle u_{i}^{n+1}=\left({\frac {u_{i+1}^{n}+u_{i-1}^{n}}{2}}\right)-{\frac {\sigma }{2}}\left(u_{i+1}^{n}-u_{i-1}^{n}\right)\quad \quad (4)}

Estabilidade

A substituição de u i n {\displaystyle u_{i}^{n}} na equação (2) equivale a adicionar um termo de difusão artificial (também conhecida por viscosidade artificial), o que aumentará a estabilidade do método, deixando-o condicionalmente estável. Essa estabilidade condicional, pode ser verificada pela análise de estabilidade de Von Neumann:

  • A solução exata do método numérico é representada por U;
  • Erros de Round-off são representados por ϵ {\displaystyle \epsilon } ;
  • A solução numérica é representada por u, onde:

u = U + ϵ ( 5 ) {\displaystyle u=U+\epsilon \quad \quad (5)}

Substituindo (5) em (4) obtemos:

U i n + 1 + ϵ i n + 1 = ( U i + 1 n + ϵ i + 1 n + U i 1 n + ϵ i 1 n 2 ) σ 2 ( U i + 1 n + ϵ i + 1 n ( U i 1 n + ϵ i 1 n ) ) {\displaystyle U_{i}^{n+1}+\epsilon _{i}^{n+1}=\left({\frac {U_{i+1}^{n}+\epsilon _{i+1}^{n}+U_{i-1}^{n}+\epsilon _{i-1}^{n}}{2}}\right)-{\frac {\sigma }{2}}\left(U_{i+1}^{n}+\epsilon _{i+1}^{n}-(U_{i-1}^{n}+\epsilon _{i-1}^{n})\right)}

Como U é a solução exata:

U i n + 1 = ( U i + 1 n + U i 1 n 2 ) σ 2 ( U i + 1 n U i 1 n ) {\displaystyle U_{i}^{n+1}=\left({\frac {U_{i+1}^{n}+U_{i-1}^{n}}{2}}\right)-{\frac {\sigma }{2}}\left(U_{i+1}^{n}-U_{i-1}^{n}\right)}

Então é verdadeiro que:

ϵ i n + 1 = ( ϵ i + 1 n + ϵ i 1 n 2 ) σ 2 ( ϵ i + 1 n ϵ i 1 n ) ( 6 ) {\displaystyle \epsilon _{i}^{n+1}=\left({\frac {\epsilon _{i+1}^{n}+\epsilon _{i-1}^{n}}{2}}\right)-{\frac {\sigma }{2}}\left(\epsilon _{i+1}^{n}-\epsilon _{i-1}^{n}\right)\quad \quad (6)}

Considerando que a função erro, ϵ {\displaystyle \epsilon } , pode ser expandida usando séries de Fourier:

ϵ i n = E n e I ϕ i ( o n d e 0 ϕ π e I = 1 ) {\displaystyle \epsilon _{i}^{n}=E^{n}e^{I\phi i}\quad \quad (onde\quad 0\leq \phi \leq \pi \quad e\quad I={\sqrt {-1}})}

Podemos então substituir ϵ i n {\displaystyle \epsilon _{i}^{n}} em (6), obtendo:

E i n + 1 e I ϕ i = ( E n e I ϕ ( i + 1 ) + E n e I ϕ ( i 1 ) 2 ) σ 2 ( E n e I ϕ ( i + 1 ) E n e I ϕ ( i 1 ) ) ( 7 ) {\displaystyle E_{i}^{n+1}e^{I\phi i}=\left({\frac {E^{n}e^{I\phi (i+1)}+E^{n}e^{I\phi (i-1)}}{2}}\right)-{\frac {\sigma }{2}}\left(E^{n}e^{I\phi (i+1)}-E^{n}e^{I\phi (i-1)}\right)\quad \quad (7)}

Dividindo ambos os lados da equação (7) por E n e I ϕ i {\displaystyle E^{n}e^{I\phi i}} e sabendo que o fator de amplitude é dado por G = E n + 1 E n {\displaystyle G={\frac {E^{n+1}}{E^{n}}}} (proveniente da análise de estabilidade Von Neumann), a equação (7) fica:

G = ( e I ϕ + e I ϕ 2 ) σ 2 ( e I ϕ e I ϕ ) ( 8 ) {\displaystyle G=\left({\frac {e^{I\phi }+e^{-I\phi }}{2}}\right)-{\frac {\sigma }{2}}(e^{I\phi }-e^{-I\phi })\quad \quad (8)}

Podemos usar as seguintes relações de Euler para simplificação da equação (8):

e I ϕ = c o s ϕ + I sin ϕ e e I ϕ = c o s ϕ I sin ϕ {\displaystyle e^{I\phi }=cos{\phi }+I\sin {\phi }\quad \quad \quad e\quad \quad \quad e^{-I\phi }=cos{\phi }-I\sin {\phi }}

A equação (8) adquire a seguinte forma:

G = cos ϕ I sin ϕ ( 9 ) {\displaystyle G=\cos {\phi }-I\sin {\phi }\quad \quad (9)\,}

O critério de Von Neumann afirma que o módulo do fator de amplitude deve ser menor ou igual a 1, a fim de que o método se mantenha estável:

| G | 1 {\displaystyle |G|\leq 1}

Calculando então o módulo do fator de amplitude na equação (9), obtemos:

| G | = cos 2 ϕ + σ 2 sin 2 ϕ {\displaystyle |G|={\sqrt {\cos ^{2}{\phi }+\sigma ^{2}\sin ^{2}{\phi }}}}

Onde verificamos, segundo o critétio de Von Neumann, que o método é estável se | σ | 1 {\displaystyle |\sigma |\leq 1} , logo a formulação é condicionalmente estável.

Referências

  • Hirsch, Charles (2007). Numerical Computation Of Internal & External Flows. [S.l.]: JohnWiley & Sons. ISBN 0750665947 
  • Thomas, J.W. (1995). Numerical Partial Differential Equations: Finite Difference Methods. [S.l.: s.n.] 
  • v
  • d
  • e
Resolução de equações diferenciais parciais
Método das diferenças finitas
Relativos à equação do calor: esquema FTCS · Método de Crank–Nicolson Hiperbólicos: Método de Lax–Friedrichs · Método de Lax–Wendroff · Método de MacCormack · Esquema Upwind · Outros: Método da direção implícita alternada · Método FDTD
Método dos volumes finitos
Esquema de Godunov · Esquema de Alta-resolução · Esquema MUSCL · AUSM · Riemann solver
Método dos elementos finitos
hp-FEM · Método dos elementos finitos estendido · Método de Galerkin Descontínuo · Método dos elementos espectrais · Métodos Meshfree · Métodos Mortar
Outros métodos
Método espectral · Método pseudo espectral · Método das linhas · Método Multigrid · Método da colocação · Método Level set · Método dos elementos de contorno · Método de Fronteira Imersa · Método de elementos analíticos · Método Particle-in-cell · Análise Isogeométrica
Métodos de decomposição de domínios
Método de Schur · Método dos domínios fictícios · Método alternante de Schwarz · Método aditivo de Schwarz · Método aditivo abstrato de Schwarz · Método de Neumann–Dirichlet · Métodos Neumann–Neumann · Operador Poincaré–Steklov · Balancing domain decomposition · BDDC · FETI · FETI-DP
Ícone de esboço Este artigo sobre matemática é um esboço. Você pode ajudar a Wikipédia expandindo-o.
  • v
  • d
  • e