Método de Numerov

Método de Numerov é um método numérico para resolver uma Equação diferencial ordinária de segunda ordem cujo termo de derivada de primeira ordem não aparece. Este método é implícito, mas se torna explícito quando equação diferencial é linear (Métodos explícitos e implícitos).

O Método de Numerov foi desenvolvido por Boris Vasil'evich Numerov

O método

O Método de Numerov é usado para resolver equações diferenciais da seguinte forma:

( d 2 d x 2 + f ( x ) ) y ( x ) = 0 {\displaystyle \left({\frac {d^{2}}{dx^{2}}}+f(x)\right)y(x)=0}

A função y ( x ) {\displaystyle y(x)} é definida no intervalo [a,b] em pontos equidistantes x n {\displaystyle x_{n}} . Começando por dois valores da função consecutivos x n 1 {\displaystyle x_{n-1}} e x n {\displaystyle x_{n}} os remanescentes podem ser calculados por:

y n + 1 = ( 2 5 h 2 6 f n ) y n ( 1 + h 2 12 f n 1 ) y n 1 1 + h 2 12 f n + 1 {\displaystyle y_{n+1}={\frac {\left(2-{\frac {5h^{2}}{6}}f_{n}\right)y_{n}-\left(1+{\frac {h^{2}}{12}}f_{n-1}\right)y_{n-1}}{1+{\frac {h^{2}}{12}}f_{n+1}}}}

onde f n = f ( x n ) {\displaystyle f_{n}=f(x_{n})} e y n = y ( x n ) {\displaystyle y_{n}=y(x_{n})} são os valores da função no ponto x n {\displaystyle x_{n}} e h = x n x n 1 {\displaystyle h=x_{n}-x_{n-1}} é a distância entre dois pontos consecutivos.

Equações não-lineares

Para equações não-lineares de forma

d 2 d t 2 y = f ( t , y ) {\displaystyle {\frac {d^{2}}{dt^{2}}}y=f(t,y)}

o método é dado por

y n + 1 = 2 y n y n 1 + 1 12 h 2 ( f n + 1 + 10 f n + f n 1 ) . {\displaystyle y_{n+1}=2y_{n}-y_{n-1}+{\tfrac {1}{12}}h^{2}(f_{n+1}+10f_{n}+f_{n-1}).}

Este método é implícito que se torna explícito como dito anteriormente se a função f é linear em y. A ordem no problema é 4. (Hairer, Nørsett & Wanner 1993, §III.10).

Aplicação

Em física numérica uma das aplicações deste método é na resolução da Equação de Schrödinger radial para potenciais arbitrários

[ 2 2 μ ( 1 r 2 r 2 r l ( l + 1 ) r 2 ) + V ( r ) ] R ( r ) = E R ( r ) {\displaystyle \left[-{\hbar ^{2} \over 2\mu }\left({\frac {1}{r}}{\partial ^{2} \over \partial r^{2}}r-{l(l+1) \over r^{2}}\right)+V(r)\right]R(r)=ER(r)}

que pode ser reescrita na forma

[ 2 r 2 l ( l + 1 ) r 2 + 2 μ 2 ( E V ( r ) ) ] u ( r ) = 0 {\displaystyle \left[{\partial ^{2} \over \partial r^{2}}-{l(l+1) \over r^{2}}+{2\mu \over \hbar ^{2}}\left(E-V(r)\right)\right]u(r)=0}

com u ( r ) = r R ( r ) {\displaystyle u(r)=rR(r)} . Comparando esta equação com a definição do método de Numerov encontra-se

f ( x ) = 2 μ 2 ( E V ( x ) ) l ( l + 1 ) x 2 {\displaystyle f(x)={\frac {2\mu }{\hbar ^{2}}}\left(E-V(x)\right)-{\frac {l(l+1)}{x^{2}}}}

e então é possível resolver numericamente a Equação radial de Schrödinger.

Derivação

Expandindo por Série de Taylor y ( x ) {\displaystyle y(x)} em torno de x 0 {\displaystyle x_{0}} :

y ( x ) = y ( x 0 ) + ( x x 0 ) y ( x 0 ) + ( x x 0 ) 2 2 ! y ( x 0 ) + ( x x 0 ) 3 3 ! y ( x 0 ) + ( x x 0 ) 4 4 ! y ( x 0 ) + ( x x 0 ) 5 5 ! y ′′′′′ ( x 0 ) + O ( h 6 ) {\displaystyle y(x)=y(x_{0})+(x-x_{0})y'(x_{0})+{\frac {(x-x_{0})^{2}}{2!}}y''(x_{0})+{\frac {(x-x_{0})^{3}}{3!}}y'''(x_{0})+{\frac {(x-x_{0})^{4}}{4!}}y''''(x_{0})+{\frac {(x-x_{0})^{5}}{5!}}y'''''(x_{0})+{\mathcal {O}}(h^{6})}

Fazendo h = x x 0 {\displaystyle h=x-x_{0}} a distância entre x {\displaystyle x} e x 0 {\displaystyle x_{0}} , e invertendo x = x 0 + h {\displaystyle x=x_{0}+h} , pode-se escrever a equação acima como

y ( x 0 + h ) = y ( x 0 ) + h y ( x 0 ) + h 2 2 ! y ( x 0 ) + h 3 3 ! y ( x 0 ) + h 4 4 ! y ( x 0 ) + h 5 5 ! y ′′′′′ ( x 0 ) + O ( h 6 ) {\displaystyle y(x_{0}+h)=y(x_{0})+hy'(x_{0})+{\frac {h^{2}}{2!}}y''(x_{0})+{\frac {h^{3}}{3!}}y'''(x_{0})+{\frac {h^{4}}{4!}}y''''(x_{0})+{\frac {h^{5}}{5!}}y'''''(x_{0})+{\mathcal {O}}(h^{6})}

Computacionalmente, isto significa dar um passo a frente iterativamente, se quisermos dar uma passo para trás, substitui-se todo h por -h para a equação y ( x 0 h ) {\displaystyle y(x_{0}-h)} :

y ( x 0 h ) = y ( x 0 ) h y ( x 0 ) + h 2 2 ! y ( x 0 ) h 3 3 ! y ( x 0 ) + h 4 4 ! y ( x 0 ) h 5 5 ! y ′′′′′ ( x 0 ) + O ( h 6 ) {\displaystyle y(x_{0}-h)=y(x_{0})-hy'(x_{0})+{\frac {h^{2}}{2!}}y''(x_{0})-{\frac {h^{3}}{3!}}y'''(x_{0})+{\frac {h^{4}}{4!}}y''''(x_{0})-{\frac {h^{5}}{5!}}y'''''(x_{0})+{\mathcal {O}}(h^{6})}

Este rearranjo causou uma mudança no sinal. Em pontos igualmente espaçados, o enésimo ponto corresponde a x n {\displaystyle x_{n}} se o espaço entre pontos adjacentes for h (com h pequeno para haver precisão). A equação discreta para ( x n 1 , y n 1 ) {\displaystyle (x_{n-1},y_{n-1})} e ( x n + 1 , y n + 1 ) {\displaystyle (x_{n+1},y_{n+1})} fica

y n + 1 = y ( x n + h ) = y ( x n ) + h y ( x n ) + h 2 2 ! y ( x n ) + h 3 3 ! y ( x n ) + h 4 4 ! y ( x n ) + h 5 5 ! y ′′′′′ ( x n ) + O ( h 6 ) {\displaystyle y_{n+1}=y(x_{n}+h)=y(x_{n})+hy'(x_{n})+{\frac {h^{2}}{2!}}y''(x_{n})+{\frac {h^{3}}{3!}}y'''(x_{n})+{\frac {h^{4}}{4!}}y''''(x_{n})+{\frac {h^{5}}{5!}}y'''''(x_{n})+{\mathcal {O}}(h^{6})}
y n 1 = y ( x n h ) = y ( x n ) h y ( x n ) + h 2 2 ! y ( x n ) h 3 3 ! y ( x n ) + h 4 4 ! y ( x n ) h 5 5 ! y ′′′′′ ( x n ) + O ( h 6 ) {\displaystyle y_{n-1}=y(x_{n}-h)=y(x_{n})-hy'(x_{n})+{\frac {h^{2}}{2!}}y''(x_{n})-{\frac {h^{3}}{3!}}y'''(x_{n})+{\frac {h^{4}}{4!}}y''''(x_{n})-{\frac {h^{5}}{5!}}y'''''(x_{n})+{\mathcal {O}}(h^{6})}

A soma das duas equações resulta em

y n 1 + y n + 1 = 2 y n + h 2 y n + h 4 12 y n + O ( h 6 ) {\displaystyle y_{n-1}+y_{n+1}=2y_{n}+{h^{2}}y''_{n}+{\frac {h^{4}}{12}}y''''_{n}+{\mathcal {O}}(h^{6})}

Resolvendo a equação para y n {\displaystyle y''_{n}} substituindo-o pela expressão y n = f n y n {\displaystyle y''_{n}=-f_{n}y_{n}} obtida da definição de equação diferencial

h 2 f n y n = 2 y n y n 1 y n + 1 + h 4 12 y n + O ( h 6 ) {\displaystyle h^{2}f_{n}y_{n}=2y_{n}-y_{n-1}-y_{n+1}+{\frac {h^{4}}{12}}y''''_{n}+{\mathcal {O}}(h^{6})}

Toma-se a derivada segunda da definição da nossa equação diferencial e obtemos

y ( x ) = d 2 d x 2 [ f ( x ) y ( x ) ] {\displaystyle y''''(x)=-{\frac {d^{2}}{dx^{2}}}\left[f(x)y(x)\right]}

Substituindo a derivada segunda d 2 d x 2 {\displaystyle {\frac {d^{2}}{dx^{2}}}} pelo Coeficiente diferencial de segunda ordem para f n y n {\displaystyle f_{n}y_{n}} (toma-se a diferença para frente e para trás juntas, não difereça para frente dupla ou diferença para trás dupla)

h 2 f n y n = 2 y n y n 1 y n + 1 h 4 12 f n 1 y n 1 2 f n y n + f n + 1 y n + 1 h 2 + O ( h 6 ) {\displaystyle h^{2}f_{n}y_{n}=2y_{n}-y_{n-1}-y_{n+1}-{\frac {h^{4}}{12}}{\frac {f_{n-1}y_{n-1}-2f_{n}y_{n}+f_{n+1}y_{n+1}}{h^{2}}}+{\mathcal {O}}(h^{6})}

Rearranjando a equação e isolando y n + 1 {\displaystyle y_{n+1}} obtém-se

y n + 1 = ( 2 5 h 2 6 f n ) y n ( 1 + h 2 12 f n 1 ) y n 1 1 + h 2 12 f n + 1 + O ( h 6 ) . {\displaystyle y_{n+1}={\frac {\left(2-{\frac {5h^{2}}{6}}f_{n}\right)y_{n}-\left(1+{\frac {h^{2}}{12}}f_{n-1}\right)y_{n-1}}{1+{\frac {h^{2}}{12}}f_{n+1}}}+{\mathcal {O}}(h^{6}).}

O método de Numerov é obtido se ignorarmos o termo h 6 {\displaystyle h^{6}} e a ordem de convergência, assumindo estabilidade, é 4.

Referências

  • Hairer, Ernst; Nørsett, Syvert Paul; Wanner, Gerhard (1993). Solving ordinary differential equations I: Nonstiff problems (em inglês). Berlim, Nova Iorque: Springer-Verlag. ISBN 978-3-540-56670-0  A referência emprega parâmetros obsoletos |coautor= (ajuda).
    Este livro inclui as seguintes referências:
  • Numerov, Boris Vasil'evich (1924). «A method of extrapolation of perturbations». Monthly Notices of the Royal Astronomical Society (em inglês). 84: 592–601. Bibcode:1924MNRAS..84..592N 
  • Numerov, Boris Vasil'evich (1927). «Note on the numerical integration of d2x/dt2 = f(x,t)». 359–364. Astronomische Nachrichten (em inglês). 230. Bibcode:1927AN....230..359N 

Ligações externas

  • Lecture notes: Computerphysik und Numerik - by Jan Krieger
  • Lecture notes of Werner Scholz - At Vienna University of Technology
  • Lecture notes of Alexander Wagner
  • Portal da matemática