Resolva pelo método das diferenças finitas:
y^{\prime \prime}=y \operatorname{sen} y+x y ; \quad y(0)=2 ; \quad y(1)=5 usando h=0.1.

Passo 1

O problema é um problema de contorno não–linear em [0,1] dado por
y''(x)=y(x)\,\operatorname{sen} y(x)+x\,y(x),\quad y(0)=2,\;y(1)=5,
e queremos aproximar y(x) em nós igualmente espaçados com passo h=0,1 usando diferenças finitas e resolver o sistema resultante por Newton.

Passo 2

Discretizamos o intervalo em N+1 subintervalos de comprimento h=0,1. Assim x_i=i\,h para i=0,1,\dots,10. As incógnitas são y_i\approx y(x_i) com y_0=2 e y_{10}=5 dados. Ficam 9 incógnitas internas y_1,\dots,y_9.

Passo 3

Aproximamos a segunda derivada em x_i por
y''(x_i)\approx\frac{y_{i+1}-2y_i+y_{i-1}}{h^2},
e impomos a equação diferencial em cada nó interno i=1,\dots,9:
\frac{y_{i+1}-2y_i+y_{i-1}}{h^2} = y_i\operatorname{sen} y_i + x_i\,y_i.

Passo 4

Reescrevendo tudo numa função F_i(y_1,\dots,y_9)=0 para cada i:
F_i = y_{i-1}-2y_i+y_{i+1} - h^2\bigl(y_i\operatorname{sen} y_i + x_i\,y_i\bigr)=0, \quad i=1,\dots,9,
com y_0=2 e y_{10}=5. Esse é um sistema não–linear de 9 equações e 9 incógnitas.

Passo 5

Para resolver o sistema não–linear usamos o método de Newton. Escrevemos \mathbf y=(y_1,\dots,y_9)^T e \mathbf F(\mathbf y)=(F_1,\dots,F_9)^T. A cada iteração k resolvemos
J\bigl(\mathbf y^{(k)}\bigr)\,\Delta\mathbf y^{(k)} = -\,\mathbf F\bigl(\mathbf y^{(k)}\bigr), \quad \mathbf y^{(k+1)} = \mathbf y^{(k)} + \Delta\mathbf y^{(k)},
onde J é a matriz Jacobiana de \mathbf F.

Passo 6

Os elementos não nulos de J são, para i=1,\dots,9:
\frac{\partial F_i}{\partial y_{i-1}}=1,\quad \frac{\partial F_i}{\partial y_{i+1}}=1,
\frac{\partial F_i}{\partial y_{i}} = -2 \;-\;h^2\bigl[\operatorname{sen} y_i + y_i\cos y_i + x_i\bigr].
Isso faz J uma matriz tridiagonal, que podemos fatorar eficientemente em cada iteração.

Passo 7

Esquema completo da iteração de Newton:
  1. Escolher chute inicial \mathbf y^{(0)}, por exemplo a interpolação linear
    \;y_i^{(0)}=2+(5-2)x_i.
  2. Calcular \mathbf F(\mathbf y^{(k)}) e montar J(\mathbf y^{(k)}).
  3. Resolver o sistema tridiagonal J(\mathbf y^{(k)})\,\Delta\mathbf y^{(k)} = -\mathbf F(\mathbf y^{(k)})por eliminação de Thomas.
  4. Atualizar \mathbf y^{(k+1)}=\mathbf y^{(k)}+\Delta\mathbf y^{(k)}.
  5. Repetir até \|\Delta\mathbf y^{(k)}\| ser menor que a tolerância desejada.

Resposta

O método de diferenças finitas leva ao sistema não–linear
F_i(y_1,\dots,y_9)= y_{i-1}-2y_i+y_{i+1} -0,01\bigl(y_i\operatorname{sen} y_i + x_i\,y_i\bigr)=0,\quad i=1,\dots,9,
com y_0=2, y_{10}=5. Resolve-se esse sistema por Newton, usando a Jacobiana tridiagonal
J_{i,i-1}=1,\quad J_{i,i}=-2-0,01\bigl[\operatorname{sen} y_i+y_i\cos y_i + x_i\bigr],\quad J_{i,i+1}=1,
e iterando até convergência. As soluções y_i aproximam y(x_i).

Exercícios relacionados