|Instituto Tecnológico de Costa Rica|Escuela de Matemática| M. Sc. Geovanni Figueroa M.


1   2   3   4   5   6   7   8   9   10  

 

 

 

  Solución numérica

Para facilitar el trabajo y evitar la tarea de programación del método, podemos usar una hoja de cálculo como Microsoft Excel (en Windows) o Gnumeric (en Linux).

Veamos el siguiente ejemplo

 

Ejemplo

Una resistencia de 5 $\omega$ y un inductor de 1 Henrio se conectan en serie con un generador de $10 Cos(5 t)$ voltios. Si la corriente es 0 en $t=0$, ¿ calcule la la corriente en el instante $t=0.5$ segundos ?

Usando las ley de Kirchhoff modelamos la situación anterior con el siguiente problema de valor inicial


\begin{displaymath}
\left\{
\begin{array}{rcl}
\frac{di}{dt} & = & 10 Cos(5t) - 5i \\
i(0) & = & 0 \\
\end{array}
\right.
\end{displaymath} (1.14)

Fácilmente podemos comprobar que su solución general esta dada por $i(t)=Cos(5t) + Sen(5t) - e^{-5t}$, con lo cual $i(0.5)$ es aproximandamente igual a $-0.284756$.

Ahora vamos usar una hoja de cálculo y el método de Euler para aproximar la solución del problema de valor inicial anterior.

Primero pongamonos de acuerdo con los contenidos de cada columna

  • La columna A representará el tiempo $t$.

  • La columna B representará la aproximación de la corriente $i$, dada por el método de Euler.

  • La celda C representará el paso de avance $h$.

Ahora coloquemos los valores iniciales en la celda correspondiente

  • En la celda A2 escribimos el valor inicial del tiempo, en nuestro caso 0,

  • En la celda B2 escribimos el valor inicial de la corriente, es decir, 0

  • En la celda C2 escribimos el valor de $h$, digamos 0.01.

  • En la celda A3 escribimos la fórmula que construirá los valores de $t$, es decir, =A2 + C$2 y arrastramos ésta celda hasta alcanzar el valor de $0.5$.

  • En la celda B3 escribimos la fórmula que construirá la sucesión de valores para $y$, es decir, =B2 + C$2*(10*Cos(5*A2) - 5*B2) y la arrastramos hasta alcanzar el valor de $t=0.5$ en la columna A (el signo de dólares $ se usa para evitar que el valor se actualize conforme arrastramos la celda).

Una vez generados los valores para las columnas A y B podemos observar que $y(0.5) \approx -0.26456$ que es similar al valor real ya encontrado ( $i(0.5) =-0.284756 $) . En la figura 10 se muestra este proceso junto con una gráfica de la solución aproximada obtenida a partir de las columnas A y B y en el mismo sistema de coordenadas la gráfica de la solución exacta $i(t)=Cos(5t) + Sen(5t) - e^{-5t}$.

 
 
Figura 10

Usar una hoja de cálculo para aproximar la solución de una ecuación diferencial resulta sencillo, pero existen muchas otras opciones que podemos usar. El siguiente código muestra una función implementada para la TI92 que calcula el valor aproximado de $i(c)$ para el problema de valor inicial anterior (1.14)

euler(a,b,c,h)
Func
local x0, y0,
While x0 < c
y0 + h*f(x0,y0) -> y0
x0 + h -> x0
EndWhile
Return y0
EndFunc

Antes de usar la función Euler debemos definir la función $f(x,y)=10 Cos(5x) - 5y$; y para ejecutarla escribimos en la ventana Home: euler(0,0,0.5,0.01). Al hacerlo obtenemos el valor $-0.264558272036$ que está muy cerca de valor real.

 



- Revista virtual Matemática, Educación e Internet - ITCR