Solución d'Alembert de la ecuación de onda
La ecuación de onda es una ecuación diferencial en derivadas parciales, lineal, de segundo orden que describe la propagación de una variedad de ondas
Supongamos una cuerda de longitud infinita, con unas características tales que las ondas se propagan en este medio con velocidad c. Vamos a obtener la solución de esta ecuación diferencial en derivadas parciales para las condiciones iniciales
F(x) describe la forma inicial t=0, de la cuerda y G(x), la velocidad inicial de los puntos de la cuerda
Solución d'Alembert
Escribimos el operador
Sustituimos las variables x y t, por ξ=x-ct y η=x-ct
Utilizando estos resultados la ecuación de onda se reduce a
una expresión muy simple
Integramos esta ecuación diferencial
Volviendo a las variables originales x y t
No es una tarea fácil encontrar las funciones u y v que satisfacen las condiciones iniciales.
u(x-ct) representa una perturbación cuya forma es u(x) que se propaga sin distorsión a lo largo del eje X hacia la derecha con velocidad c.
v(x+ct) representa una perturbación cuya forma es v(x) que se propaga sin distorsión a lo largo del eje X hacia la izquierda con velocidad c.
La solución de la ecuación diferencial en derivadas parciales es la suma de dos ondas que se propagan a lo largo del eje X en sentidos contrarios. El siguiente paso es determinar la forma de las funciones u y v dadas las condiciones iniciales
La primera condición inicial se refiere al desplazamiento inicial de los puntos de la cuerda
La segunda condición inicial se refiere a la velocidad inicial de los puntos de la cuerda
Volviendo a las variables originales x y t
La constante de integración se ha incorporado en el límite inferior x0
Tenemos un sistema de dos ecuaciones con dos incógnitas u(x) y v(x)
La solución de la ecuación de ondas es
La solución de la ecuación de ondas en el punto xp y en un instante tp es

depende de los valores de la función F(x) en los extremos del intervalo [xp-ctp, xp+ctp] y de los valores de G(x) en todos los puntos de dicho intervalo. Este intervalo se llama domino de dependencia. Esto es debido a que los efectos de la perturbación inicial se propagan con velocidad finita c, por lo que solamente una parte de los datos iniciales afectan la solución de la ecuación de ondas en el punto xp y en el instante tp. Los datos iniciales fuera de dicho intervalo no tienen influencia
Cuerda infinita
Vamos a ilustrar la solución de d'Alembert, mediante algunos ejemplos y animaciones para una cuerda de longitud infinita
Solución con velocidad inicial nula, G(x)=0
Consideremos una cuerda infinita, con una forma inicial dada por la función F(x) y con velocidad inicial nula, G(x)=0. La solución de la ecuación de onda es el promedio de dos perturbaciones que se propagan sin distorsión a lo largo del eje X en sentidos opuestos
Ejemplo 1
Sea F(x)=A·exp(-x2)sinx
En color azul, se muestra F(x+ct), que se propaga hacia la izquierda y en color rojo F(x-ct) que se propaga hacia la derecha. En color negro, el promedio, ψ(x,t)
Ejemplo 2

Sea
Expresamos la función F(x) en términos de la función escalón H(x-a)
La solución ψ(x,t) de la ecuación de ondas con la condición inicial F(x) es
c=1; %velocidad de propagación u=@(x,t) (heaviside(x-c*t+1)-heaviside(x-c*t)).*(1+x-c*t)+(heaviside(x-c*t)- heaviside(x-c*t-1)).*(1-x+c*t); v=@(x,t) (heaviside(x+c*t+1)-heaviside(x+c*t)).*(1+x+c*t)+(heaviside(x+c*t)- heaviside(x+c*t-1)).*(1-x-c*t); psi=@(x,t) (u(x,t)+v(x,t))/2; tt=[0.25,0.5,1,2]; %tiempos for i=1:4 subplot(2,2,i) t=tt(i); hold on f=@(x) u(x,t); fplot(f,[-4,4],'color','r', 'lineStyle','--') f=@(x) v(x,t); fplot(f,[-4,4],'color','b', 'lineStyle','--') f=@(x) psi(x,t); fplot(f,[-4,4],'color','k') hold off grid on xlabel('x') ylabel('\psi') title(['t=',num2str(t)]) end
Representamos ψ(x,t) en los instantes t=0.25, 0.5, 1, 2
La línea a trazos en color azul muestra F(x+ct), que se propaga hacia la izquierda y en color rojo F(x-ct) que se propaga hacia la derecha. En color negro, el promedio, ψ(x,t)
Solución para una cuerda sin deformar, F(x)=0
Consideremos una cuerda infinita, sin deformar F(x)=0. Los puntos de la cuerda tienen una velocidad inicial G(x). La solución de la ecuación de ondas es
Ejemplo 1

Sea
Calculamos g(x)
Expresamos la función g(x) en términos de la función escalón H(x-a)
La solución ψ(x,t) de la ecuación de ondas con la condición inicial G(x) es
Representamos ψ(x,t) en los instantes t=0.25, 0.5, 1, 2
c=1; %velocidad de propagación g=@(x) (heaviside(x+1).*(x+1)-heaviside(x-1).*(x-1))/c; psi=@(x,t) (g(x+c*t)-g(x-c*t))/2; tt=[0.25,0.5,1,2]; %tiempos for i=1:4 subplot(2,2,i) t=tt(i); fplot(@(x) psi(x,t),[-4,4],'color','k') grid on xlabel('x') ylabel('\psi') title(['t=',num2str(t)]) end
En la animación, la línea a trazos en color azul, se muestra g(x+ct), que se propaga hacia la izquierda y en color rojo -g(x-ct) que se propaga hacia la derecha. En color negro, el promedio ψ(x,t)
Ejemplo 2
Sea
Calculamos la integral g(x)
La solución ψ(x,t) es
Representamos ψ(x,t) en los instantes t=0.25, 0.5, 1, 2
c=1; %velocidad de propagación a=0.7; %parámetro g=@(x) ((1-heaviside(x)).*exp(x/a)+heaviside(x).*(2-exp(-x/a)))/c; psi=@(x,t) (g(x+c*t)-g(x-c*t))/2; tt=[0.25,0.5,1,2]; %tiempos for i=1:4 subplot(2,2,i) t=tt(i); fplot(@(x) psi(x,t),[-5,5],'color','k') grid on xlabel('x') ylabel('\psi') title(['t=',num2str(t)]) end
En la animación, en color azul, se muestra g(x+ct), que se propaga hacia la izquierda y en color rojo -g(x-ct) que se propaga hacia la derecha. En color negro, el promedio ψ(x,t). Se ha tomado un valor de a=0.7
Cuerda semi-infinita
Sea una cuerda que se extiende a lo largo de la parte positiva del eje X, 0≤x<∞. En la figura, vemos como un pulso (en color rojo) que se propaga hacia la izquierda se refleja en x=0.
Velocidad inicial nula, G(x)=0
En este caso, la solución de d'Alambert se escribe

La deformación inicial F(x) de la cuerda alrededor de x0>0, se muestra en la figura
La posición inicial del pulso es x0=2, la velocidad de propagación c=1. Representamos ψ(x,t) en los instantes t=1, 1.5, 2, 3
c=1; %velocidad de propagación x0=2; %posición inicial f=@(x) (heaviside(x-x0+1)-heaviside(x-x0)).*(1+x-x0)+ (heaviside(x-x0)-heaviside(x-x0-1)).*(1-x+x0); psi1=@(x,t) (f(x+c*t)+f(x-c*t))/2; psi2=@(x,t) (f(x+c*t)-f(c*t-x))/2; tt=[1,1.5,2, 3]; %tiempos for i=1:4 subplot(2,2,i) t=tt(i); psi=@(x) (x>c*t).*psi1(x,t)+(x<=c*t).*psi2(x,t); fplot(@(x) psi(x),[0,7],'color','k') grid on xlabel('x') ylim([-0.55,0.55]) ylabel('\psi') title(['t=',num2str(t)]) end
En la animación, se muestra como se propaga un pulso que parte de x0=5 y se refleja en el extremo x=0 de la cuerda
Deformación inicial nula, F(x)=0
La cuerda está inicialmente sin deformar, pero se le poporciona una velocidad inicial de una unidad a puntos alrededor de x0, tal como se muestra en la figura (arriba)
Para una cuerda semi-infinita, sustituimos G(x) por la extensión simétrica de G(x) tal como se muestra en la figura inferior (línea roja a trazos)
Expresamos la función g(x) en términos de la función escalón H(x-a)
La solución ψ(x,t) de la ecuación de ondas con la condición inicial extendida G(x) es
Representamos ψ(x,t) en los instantes t=1, 2, 2.5, 4
c=1; %velocidad de propagación x0=2; %posición inicial g=@(x) (heaviside(x+x0+1)-heaviside(x+x0-1)).*(1+x+x0)+ 2*(heaviside(x+x0-1)-heaviside(x-x0+1))+(heaviside(x-x0+1)- heaviside(x-x0-1)).*(3+x-x0)+4*heaviside(x-x0-1); psi=@(x,t) (g(x+c*t)-g(x-c*t))/2; tt=[1,2, 2.5, 4]; %tiempos for i=1:4 subplot(2,2,i) t=tt(i); fplot(@(x) psi(x,t),[0,7],'color','k') grid on ylim([0,2.05]) xlabel('x') ylabel('\psi') title(['t=',num2str(t)]) end
En la animación, se muestra la propagación de un pulso que parte de x0=5 y se refleja en el extremo x=0 de la cuerda
Cuerda finita
En este apartado, vamos a estudiar la solución d'Alembert de la ecuación de onda de una cuerda punzada y de una cuerda percutida y las vamos a comparar con la solución de la ecuación de onda como de superposición de armónicos.
Velocidad inicial nula, G(x)=0
Sea una cuerda de longitud l, punzada. Las condiciones iniciales son
La línea de color rojo gruesa, muestra el desplazamiento inicial de los puntos de la cuerda F(x) de longitud l finita. Construimos la extensión antisimétrica -F(-x) (en color rojo fino). Copiamos F(x) y su extensión (color rojo) a uno y otro lado (color azul) infinitas veces. El estado inicial de la cuerda infinita equivalente es una función F*(x) de dominio infinito y periodo 2l
Con este código representamos la deformación inicial de la cuerda de longitud l. La cuerda se desplaza h desde la posición a, tal como se indica en la figura
L=1; %longitud de la cuerda c=1; %velocidad de propagación h=0.1; %deformación máxima a=L/3; %punto de máxima deformación %deformación inicial de la cuerda f=@(x) h*(heaviside(x)-heaviside(x-a)).*x/a+h*(heaviside(x-a)- heaviside(x-L)).*(L-x)/(L-a); fplot(f,[0,L]) grid on xlabel('x') ylabel('y') title('Deformación inicial F(x)')
Con este código dibujamos la extensión antisimétrica de F(x) y la función F*(x) de dominio infinito y periodo 2l. En la página titulada Otras funciones se explica como se representa una función periódica
L=1; %longitud de la cuerda c=1; %velocidad de propagación h=0.1; %deformación máxima a=L/3; %punto de máxima deformación f=@(x) -h*(heaviside(x+L)-heaviside(x+a)).*(x+L)/(L-a)+ h*(heaviside(x+a)-heaviside(x)).*x/a+h*(heaviside(x)-heaviside(x-a)).*x/a+ h*(heaviside(x-a)-heaviside(x-L)).*(L-x)/(L-a); pf=@(x) f(x-2*floor((x+L)/2)); %función periódica hold on fplot(pf,[-3*L,3*L],'color','b') %F*(x) fplot(f,[0,L],'color','r','lineWidth',1.5) %F(x) fplot(f,[-L,0],'color','r') %antisimétrica hold off grid on xlabel('x') ylabel('y') title('Deformación F^*(x)')
La solución de la ecuación de onda con velocidad inicial G(x)=0, nula es
La solución de la ecuación de onda con la superposición de armónicos de una cuerda punzada es
Sea una cuerda de
- longitud. L=1
- la velocidad de propagación, c=1
- máxima deformación inicial, h=0.1
- posición de la máxima deformación, a=L/3
Comparamos ambas soluciones en el instante t=1/2.
L=1; %longitud de la cuerda c=1; %velocidad de propagación h=0.1; %deformación máxima a=L/3; %punto de máxima deformación %solución d'Alembert f=@(x) -h*(heaviside(x+L)-heaviside(x+a)).*(x+L)/(L-a)+ h*(heaviside(x+a)-heaviside(x)).*x/a+h*(heaviside(x)-heaviside(x-a)).*x/a+ h*(heaviside(x-a)-heaviside(x-L)).*(L-x)/(L-a); pf=@(x) f(x-2*floor((x+L)/2)); %periódica psi=@(x,t) (pf(x-c*t)+pf(x+c*t))/2; %solución d'Alembert t=1/2; %instante hold on fplot(@(x) psi(x,t),[0,1]) %superposición de armónicos, x=linspace(0,L,200); yy=zeros(1,length(x)); for n=1:20 yy=yy+sin(n*pi*a/L)*sin(n*pi*x/L)*cos(n*pi*t/L)/n^2; end yy=yy*(2*h*L^2/(pi^2*a*(L-a))); plot(x,yy) hold off grid on xlabel('x') ylabel('y') title('Cuerda punzada')
La superposición de armónicos da lugar a una serie infinita convergente, basta un número relativamente pequeño de términos para respresentar el estado de la cuerda en un instante dado t. Por tanto, esta solución de la ecuación de onda es aproximada, mientras que la solución de d'Alembert es exacta
Se introduce
- La posición a de máximo desplazamiento inicial de la cuerda, en el control titulado Cociente a/l
- Se ha fijado el máximo desplazamiento h=0.1, la longitud de la cuerda l=1 y la velocidad de propagación de las ondas en la cuerda c=1
Se pulsa el botón titulado Nuevo
Se suelta la cuerda y se observa su movimiento, en la parte superior se proporciona el dato del tiempo t
Se compara la solución exacta (en rojo, línea gruesa) con la aproximada (en azul, línea fina)
Deformación inicial nula, F(x)=0

Una cuerda sin deformar en el instante t=0, ψ(x,0)=0, se golpea con un martillo de ancho 2w<<L situado entre las abscisas x=a-w y x=a+w que comunica un impulso inicial a este segmento de cuerda. En estas condiciones, la velocidad de cada punto de la cuerda al instante t=0 esta dada por la función de la figura
Creamos la extensión antisimétrica de G(x)
Expresamos esta función en términos de la la función escalón
Creamos la función g*(x) de dominio infinito y periodo 2l
La solución de la ecuación de onda con deformación inicial nula F(x)=0, es
La solución de la ecuación de onda con la superposición de armónicos de una cuerda precutida es
Sea una cuerda de
- longitud. L=1
- la velocidad de propagación, c=0.2
- la anchura del impacto, 2w=2·0.1
- velocidad del impacto, u=1
- la posición del impacto, a=0.2
Comparamos ambas soluciones en el instante t=1.
L=1; %longitud de la cuerda u=1; %velocidad a=0.2; %posición percusión w=0.1; %anchura es 2w c=0.2; %velocidad de propagación %solución d'Alembert g=@(x) (-u*(heaviside(x+a+w)-heaviside(x+a-w)).*(x+a+w)- 2*u*w*(heaviside(x+a-w)-heaviside(x-a+w)) +u*(heaviside(x-a+w)-heaviside(x-a-w)).*(x-a-w))/c; pg=@(x) g(x-2*floor((x+L)/2)); %función periódica psi=@(x,t) (pg(x+c*t)-pg(x-c*t))/2; t=1; %instante hold on fplot(@(x) psi(x,t),[0,L]) %superposición de armónicos x=linspace(0,L,200); yy=zeros(1,length(x)); for n=1:20 yy=yy+sin(n*pi*w/L)*sin(n*pi*a/L)*sin(n*pi*x/L)*sin(n*pi*c*t/L)/n^2; end yy=yy*4*u*L/(pi^2*c); plot(x,yy) hold off grid on xlabel('x') ylabel('y') title('Cuerda percutida')
Se introduce
- La posición a, en el control titulado Cociente a/l
- La anchura 2w del percutor, en el control titulado Anchura pulso w
- Se ha fijado la velocidad u=1 del percutor, la longitud de la cuerda l=1 y la velocidad de propagación de las ondas en la cuerda c=0.2
Se pulsa el botón titulado Nuevo
Se observa el movimiento de la cuerda, en la parte superior se proporciona el dato del tiempo t
Se compara la solución exacta (en rojo, línea gruesa) con la aproximada (en azul, línea fina)
Referencias
A. Salih. Second-Order Wave Equation. Indian Institute of Space Science and Technology, Thiruvananthapuram. 23 December 2016. https://www.iist.ac.in/sites/default/files/people/IN08026/dAlembert.pdf
B. M. Budak, A. A. Samarski, A. N. Tijonov. Problemas de la Física Matemática. Tomo I. Editorial Mir. (1984). Problemas 59 y 60. Enunciado, pág. 26; solución, págs. 140-143
Nakhlé H. Asmar. Partial Differential Equations with Fourier Series and Boundary Value Problems. Second edition. Pearson, Prentice Hall, 2005. pp. 127-130