Parte I: Propagación de ondas

Download (0)

Full text

(1)

5

Animando la Física

Parte I: Propagación de ondas

Cualquier profesor que trate de enseñar física en cursos introductorios, proba-blemente choque con el obstáculo del pobre manejo matemático que poseen los estudiantes, especialmente cuando los primeros pasos en la física y el análisis mate-mático se dan en forma simultánea.

Actualmente, con herramientas computacionales tales como Maple o Mathematica, casi cualquier problema puede resolverse sin la necesidad de riesgosas simplificaciones del problema real.

Estamos convencidos que una adecuada formación básica de futuros ingenie-ros debe involucrar tanto a alumnos como a profesores en el uso rutinario de herra-mientas adecuadas para el proceso de enseñanza-aprendizaje.

Objetivos

Como es bien sabido, resolver un problema de propagación de ondas consiste en la resolución de una ecuación diferencial (¡¡la ecuación de ondas!!) con las co-rrespondientes condiciones iniciales y/o de frontera relativas al problema.

En algunos casos no es posible encontrar la solución exacta de una ecuación diferencial. Es por eso que deben utilizarse métodos numéricos para obtener una solución aproximada.

El objetivo de este trabajo es obtener una solución de la ecuación de ondas mediante diferencias finitas, y graficar la misma en distintos momentos para obtener una animación de la propagación de la onda, según las condiciones iniciales esta-blecidas, de modo que los estudiantes puedan observar la evolución de la onda en el tiempo.

Las animaciones con softwares simbólicos o científicos

Una animación es un conjunto de gráficos que se reproducen secuencialmente para dar sensación de movimiento. Con Maple se pueden lograr los sucesivos cua-dros que conforman una animación, y basta con un comando común, bien utilizado, para generar la animación.

Como hicimos en el primer número de la Revista (Caligaris, Rodríguez, Caligaris, 2000), mostraremos en forma estática algunos cuadros de una animación, y explicare-mos el código necesario para generar los sucesivos cuadros que la conforman. Cuan-do el lector interesaCuan-do ejecute el código propuesto, podrá ver la pantalla en acción.

La física del problema

El problema consiste en determinar la propagación de un pulso transversal a lo largo de una cuerda de longitud L a través del tiempo. Esta propagación está dada por la ecuación de ondas:

2

,

0

,

0

.

2 2 2 2

L

x

T

t

x

u

a

t

u

final

<

<

<

=

Donde a es la velocidad del sonido, L es la longitud de la barra,

u

(

x

,

t

)

el desplazamiento de la onda

t

, el tiempo. Consideramos el eje

x

en la dirección de la

(2)

cuerda, haciendo coincidir el origen con el extremo izquierdo de la misma.

Las condiciones iniciales son , y las condiciones

de frontera (de primera clase) son

u

(

0

,

t

)

=

u

0

t

2

exp(

B

t

),

u

(

L

,

t

)

=

0

. El análisis numérico que encierra el problema

Para resolver nuestro problema de frontera mediante diferencias finitas:

1. Discretizamos el dominio, eligiendo una cuadrícula o red de puntos sobre la región en cuestión. Las dimensiones de la red están restringidas por las condiciones de convergencia y estabilidad de la solución. Nuestra

cuadrí-cula tendrá para la variable

x

un paso y para la variable

t

un

paso ?(

N

y

M

naturales). Obtenemos así el conjunto .

2. Asociamos el par a cada punto

(

ih

,

j

τ

)

, y llamamos

u

ij

=

u

(

ih

,

j

τ

)

.

3. Aproximamos las derivadas parciales de la ecuación diferencial (sobre la cuadrícula) mediante los cocientes incrementales (diferencias finitas) que siguen (ver, por ejemplo, Enns y McGuire, 1997)

2 1 1 2 2

2

)

,

(

h

u

u

u

j

ih

x

u

j i j i j i

+

+

τ

2 1 1 2 2

2

)

,

(

τ

τ

+

+

ij j i j i

u

u

u

j

ih

t

u

De esta manera las derivadas de la función en el punto

(

i

,

j

)

quedan relacio-nadas con la función calculada en sus vecinos

(

i

1

,

j

),

(

i

+

1

,

j

),

(

i

,

j

1

)

y

)

1

,

(

i

j

+

según el siguiente esquema:

La ecuación diferencial en derivadas parciales se transforma entonces en un sistema de ecuaciones lineales, donde cada una de ellas toma la forma

t x (i-1, j) (i+1, j) (i, j-1) (i, j) (i, j+1)

(3)

2 1 1 2 2 1 1

2

2

h

u

u

u

a

u

u

u

j i j i j i j i j i j i − + + −

+

=

+

τ

Este sistema de ecuaciones tiene por incógnitas los valores de la solución aproxi-mada en los puntos de la red.

Para trabajar este sistema, despejamos

u

ij+1en función de las demás. De esta manera, conociendo la función en instantes de tiempo consecutivos

(

j

1

y

j

)

, podemos determinarla en el siguiente instante

1

+

j

:

(

u

u

)

(

)

u

u

i

N

j

M

u

ij+1

=

σ

ij+1

+

ij1

+

2

1

σ

ij

ij−1

,

0

,

0

con 2

h

a

=

τ

σ

4. Resolvemos este sistema. Para ello, debemos determinar los valores en los dos primeros instantes de tiempo, utilizando las condiciones iniciales. La condición

u

(

x

,

0

)

=

0

nos permite determinar los valores para

j

=

0

en los puntos internos

(

1

i

N

1

)

.

Reemplazando por resulta:

1

,...,

1

,

0

0

=

=

N

i

u

i (*)

La segunda condición inicial

u

t

(

x

,

0

)

=

0

nos permite encontrar valores en el próximo instante

(

j

=

1

)

. Para ello, aplicando la fórmula de Taylor

)

(

)

0

,

(

2

)

0

,

(

)

0

,

(

)

,

(

3 2

t

O

x

u

t

x

u

t

x

u

t

x

u

=

+

t

+

tt

+

en los puntos de la forma

(

ih

,

τ

)

, obtenemos:

)

(

)

0

,

(

2

)

0

,

(

)

0

,

(

)

,

(

3 2

τ

τ

τ

τ

u

ih

u

ih

u

ih

O

ih

u

=

+

t

+

tt

+

Los dos primeros términos de la expresión anterior son cero, debido a las condi-ciones iniciales. Utilizando la ecuación diferencial, reemplazamos por en el término restante, resultando: o sea: 2 0 1 0 0 1 2 1

2

2

)

,

(

h

u

u

u

u

ih

u

i i i i + −

+

=

τ

τ

(4)

Teniendo en cuenta (*) llegamos a la conclusión que

u

1i

=

0

. En Maple V . . . ¡Manos a la obra!

En esta sección presentamos el código de Maple V (Release 5) necesario para “ver” la solución del problema planteado.

Como primer paso, definimos las constantes que utilizaremos e inicializamos las variables:

> t:=0: a:=0.1: L:=50: C_est:= 0.9995: > N:=50: M:=150: h:=L/N: k:=0:

> U0:=10: B:=1/10: tau:= C_est*h/a: sigma:=C_est^2:

El tiempo total considerado para la simulación será:

> T_final:=M*tau:

Utilizando las condiciones iniciales

u

(

x

,

0

)

=

0

,

u

t

(

x

,

0

)

=

0

obtenemos los datos en los puntos de la cuadrícula correspondientes a los dos primeros instantes de tiempo.

> for i from 1 to N-1 do u_jmenos1[i]:=0: u_j[i]:=0:

od:

El programa calculará los valores de la perturbación en los siguientes instantes de tiempo, hasta llegar al tiempo final estipulado al principio

> while t<T_final do

Las condiciones de frontera nos llevan a:

u_j[0]:=U0*(t)^2*exp(-B*t): u_j[N]:=0:

Los valores

u

ij+1, para los puntos interiores, se obtienen a partir de

j i j i j i

u

u

u

+1

,

+1

,

1 y

u

ij−1: for i from 1 to N-1 do u_jmas1[i]:=2*(1-sigma)*u_j[i]+sigma*(u_j[i+1]+u_j[i-1]) - u_jmenos1[i]: od: Para la frontera: u_jmas1[0]:=U0*(t)^2*exp(-B*t): u_jmas1[N]:=0: Incrementamos t: t:=t+tau: k:=k+1:

(5)

subíndices.

for i from 1 to N-1 do u_jmenos1[i]:= u_j[i]: u_j[i]:= u_jmas1[i]:

od:

Para cada instante obtenemos la curva correspondiente:

onda.k:= plot({[[m,u_jmas1[m]] $m = 0..N]}, X=0..N, color = red):

y finalmente cerramos el lazo iniciado con el while:

od:

Hasta aquí no obtuvimos ninguna salida. Sólo definimos y almacenamos en memoria lo que deseamos mostrar en cada cuadro.

La función seq se utiliza para construir sucesiones. Por ejemplo, para generar la sucesión f(1), f(2), ..., f(n), se debe escribir: seq(f(i), i = 1..n).

La opción insequence = true del comando display hace que los gráficos se “apilen”.

> display([seq(onda.i, i = 1..k)], insequence = true);

Sólo mostramos aquí algunos de los gráficos que obtendrá el lector si ejecuta todos los comandos anteriores. Para animar la secuencia en Maple V, se debe selec-cionar el único gráfico que se ve en la pantalla, que es el primer cuadro de la anima-ción. Al hacerlo, aparece una barra de herramientas con los botones para manejar la presentación. Para iniciarla, se debe pulsar el segundo botón.

(6)

Barra de herramientas de animación de Maple V

Conclusiones

Los colegas que han tenido que enseñar el problema de la propagación de una onda y su reflexión en un extremo conocen las dificultades que se les presentan a los alumnos para poder “ver” el cambio de fase en la reflexión. En este trabajo utilizamos las capacidades de animación de los modernos programas de computa-ción simbólica para mostrar claramente el proceso indicado. Ello permite al estu-diante visualizarlo fácilmente.

La animación presentada nos permite observar el fenómeno físico de la reflexión de una onda con cambio de fase en el extremo fijo. El código puede modificarse fácilmente para ver la reflexión de la onda desde el extremo libre, en cuyo caso la condición de frontera sería , y la onda después de la reflexión desde el extremo libre tendría la misma fase que la onda incidente.

Muchos fenómenos físicos se interpretan mejor viéndolos ocurrir. Esta metodo-logía se puede aplicar para hacerlos ocurrir “virtualmente”. En una próxima entrega mostraremos lo que se puede lograr con la ecuación del calor en dos dimensiones.

Referencias Bibliográficas

CALIGARIS, Roberto; RODRIGUEZ, Georgina y CALIGARIS, Marta (1998). Linear Transformations for Beginners. Mathematica in Education and Research 7 (2) 29-33

CALIGARIS, Roberto; RODRIGUEZ, Georgina y CALIGARIS, Marta (2000). Animando la Matemática. Revista Argentina de Enseñanza de la Ingeniería, 1 [1] 17-26

ENNS, R.H.; McGuire, G.C. (1997). Nonlinear Physics with Maple for Scientists and Engineers. Birkhäuser

MONAGAN, M.B.; GEDDES, K.O.; HEAL, K.M.; LABAHN, G.; VORKOETTER, S.M. (1996). Maple V Release 5 Programming Guide. Springer.

Figure

Updating...

References