Diferencia entre revisiones de «Ecuación de Ondas (Grupo 2 1/2)»
(→Ecuación de ondas II) |
(→Solución fundamental) |
||
| Línea 322: | Línea 322: | ||
<math>1)</math> En dimensión <math>n=1</math>: | <math>1)</math> En dimensión <math>n=1</math>: | ||
| − | <center><math> K_1(x,t | + | <center><math> K_1(x,t) =\frac{1}{2c}\textbf{1}_{[0,ct]}(|x|), </math></center> |
Como se puede observar en la expresión, esta es radial. | Como se puede observar en la expresión, esta es radial. | ||
Revisión del 18:07 26 may 2024
| Trabajo realizado por estudiantes | |
|---|---|
| Título | Ecuación de Ondas. |
| Asignatura | EDP |
| Curso | 2023-24 |
| Autores | Alfredo de Lorenzo, Hugo Sanz, Manuel Fdez. |
| Este artículo ha sido escrito por estudiantes como parte de su evaluación en la asignatura | |
Contenido
1 Introducción
A lo largo de este trabajo se va a trabajar con diferentes soluciones de la ecuación de ondas, interpretando sus comportamientos. También se va a estudiar la solución fundamental en 1, 2 y 3 dimensiones aplicando un impulso inicial en 𝑥=0, gracias a lo cual se podrá interpretar el principio de Huygens.
2 Ecuación de ondas I
En esta sección, se va a trabajar con la ecuación de ondas en una dimensión. Para ello, se va a considerar una cuerda vibrante en el intervalo [math] [0,1][/math], con densidad [math] d[/math] y tensión [math] \tau_0 [/math] constante. De modo que la velocidad de propagación es [math] c=1 ~~m/s[/math] . Además, se va a suponer que la cuerda está fijada en los extremos y se denota como [math] u_0(x)[/math] y [math] u_1(x)[/math] su posición e impulso iniciales respectivamente.
2.1 Planteamiento del problema
En primer lugar se plantea el sistema de EDP que modeliza el comportamiento de los desplazamientos transversales de la cuerda. Para ello, es suficiente considerar la ecuación de ondas [math] u_{tt} – c^2u_{xx}=0[/math] y se establecen las condiciones iniciales mencionadas anteriormente. De esta manera se obtiene que el sistema EDP a resolver es:
2.2 Resolución del sistema
La resolución de la ecuación se va realizar mediante el método de separación de variables. Para ello, se considera que la solución es de la forma [math] u(x,t) = T(t) X(x)[/math] .
Realizando el desarrollo correspondiente y aplicando el principio de superposición se obtiene que la solución del sistema es de la siguiente forma:
siendo
[math] c_k= \frac{\int_0^1 sin (k \pi x) u_0 (x) dx}{\int_0 ^1 sin^2(k \pi x) dx}[/math]
[math] d_k= \frac{\int_0^1 sin (k \pi x) u_1 (x) dx}{\int_0 ^1 sin^2(k \pi x) dx}[/math]
Finalmente, si agrupamos todo, la solución de la ecuación de ondas es la siguiente:
Esta expresión proporciona la solución completa de la ecuación de onda en función de las condiciones iniciales \( u_0(x) \) y \( u_1(x) \).
2.3 Particularización del problema
En esta parte del documento se van a analizar una serie de ejemplos para comprender de manera precisa lo explicado en la sección anterior.
2.3.1 Caso 1. Solución periódica
El primero de ellos se trata de la representación gráfica de una solución periódica en tiempo. Esta viene dada suponiendo que los datos iniciales son [math]u_0(x)=e^{-100(x-\frac{1}{2})^2}[/math] y [math]u_1(x)=0[/math]. La solución de este problema se va a representar en el intervalo \(t ∈ [0, 2] \).
Como se puede observar, la amplitud máxima de la onda es 1 y se alcanza para valores enteros del tiempo. Además, para x=0 y x=1 se tiene que u(x,t)=0, pues por hipótesis la cuerda está fijada en los extremos.
Además también se ve como la función muestra un comportamiento que se repite regularmente con el tiempo. A estas funciones se les denomina periódicas en tiempo. Para ver esto más fácilmente se introduce el siguiente gif.
Finalmente se muestra el código con el que se ha realizado dicha representación.
clear
close all
clc
% Se definen las condiciones iniciales
u_0 = @(x) exp(-100*(x-1/2).^2);
u_1 = @(x) 0;
% Definición de los intervalos de tiempo y espacio
t = linspace(0,2,1000);
x = linspace(0,1,1000);
% Número de términos de la serie a dibuja
n = 50;
% definición de matrices para almacenar coeficientes de Fourier
ak_0 = zeros(n,1);
bk_0 = zeros(n,1);
ck_0 = zeros(n,1);
dk_1 = zeros(n,1);
bk_1 = zeros(n,1);
ck_1 = zeros(n,1);
% Cálculo de coeficientes de Fourier asociados a u_0
for k = 1:n
f_sen_0 = @(x) u_0(x).*sin(k*pi*x);
ck_0(k) = 2*trapz(x, f_sen_0(x));
end
% Cálculo de coeficientes de Fourier asociados a u_1
for k = 1:n
f_sen_1 = @(x) u_1(x).*sin(k*pi*x);
dk_1(k) =(2/(k*pi))*trapz(x, f_sen_1(x));
end
% Sustituimos en la solución calculada por separación de variables
u = @(xx,tt) 0;
for i = 1:n
u = @(xx,tt) u(xx,tt) + (ck_0(i)*cos(i*pi*tt) + dk_1(i)*sin(i*pi*tt)) .* sin(i*pi*xx);
end
% Graficamos la solución
[X, T] = meshgrid(x, t);
surf(X, T, u(X, T), 'EdgeColor', 'flat')
title('Solución')
xlabel('x')
ylabel('t')
2.3.2 Caso 2. Onda viajera
Se considera ahora que la onda viaja en un solo sentido, esto es que:
Donde para las condiciones iniciales en este caso se utilizará que [math] u_0 (x)=f(x) [/math] y [math] u_1 (x)=-f'(x) [/math] y particularizando se utilizará la función:
Derivando se obtiene:
Por lo que con esto ya se tiene todo lo necesario, de tal forma que la ecuación en derivadas parciales es:
Ahora se procede a resolver el ejercicio, que se hará de manera análoga a los apartados anteriores.
clear
close all
clc
% Se definen las condiciones iniciales
u_0 = @(x) exp(-100*(x-1/2).^2);
u_1 = @(x) 200*(x-1/2).*exp(-100*(x-1/2).^2);
% Definición de los intervalos de tiempo y espacio
t = linspace(0,2,1000);
x = linspace(0,1,1000);
% Número de términos de la serie a dibuja
n = 50;
% definición de matrices para almacenar coeficientes de Fourier
ak_0 = zeros(n,1);
bk_0 = zeros(n,1);
ck_0 = zeros(n,1);
dk_1 = zeros(n,1);
bk_1 = zeros(n,1);
ck_1 = zeros(n,1);
% Cálculo de coeficientes de Fourier asociados a u_0
for k = 1:n
f_sen_0 = @(x) u_0(x).*sin(k*pi*x);
ck_0(k) = 2*trapz(x, f_sen_0(x));
end
% Cálculo de coeficientes de Fourier asociados a u_1
for k = 1:n
f_sen_1 = @(x) u_1(x).*sin(k*pi*x);
dk_1(k) =(2/(k*pi))*trapz(x, f_sen_1(x));
end
% Sustituimos en la solución calculada por separación de variables
u = @(xx,tt) 0;
for i = 1:n
u = @(xx,tt) u(xx,tt) + (ck_0(i)*cos(i*pi*tt) + dk_1(i)*sin(i*pi*tt)).*sin(i*pi*xx);
end
% Graficamos la solución
[X, T] = meshgrid(x, t);
surf(X, T, u(X, T), 'EdgeColor', 'flat')
title('Solución')
xlabel('x')
ylabel('t')Viendo la solución, se puede ver cómo la onda va con una velocidad constante de 1m/s, y tiene un periodo de 2 segundos. Cuando la onda llega a la frontera, cambia de dirección y es negativa. A continuación se ve una gráfica de la solución de perfil, donde se puede apreciar mejor la velocidad, y como cambia el comportamiento de la onda.
2.3.3 Caso 3. Condición frontera Neumann
Por último se va a trabajar cambiando las condiciones a unas de tipo Neumann, esto es que [math] u_x(0,t)=u_x(1,t)=0 [/math] como condiciones frontera. Con esto la ecuación en derivadas parciales es así:
Por ello, a lo hora de obtener coeficientes de Fourier para la solución, se calculan de forma distinta, haciendo separación de variables se obtiene:
Donde los coeficientes [math] c_k[/math] y [math] d_k [/math] son:
Ahora se adapta el código cambiando los coeficientes, y el problema se resuelve de manera análoga
clear
close all
clc
% Se definen las condiciones iniciales
u_0 = @(x) exp(-100*(x-1/2).^2);
u_1 = @(x) 200*(x-1/2).*exp(-100*(x-1/2).^2);
% Definición de los intervalos de tiempo y espacio
t = linspace(0,2,1000);
x = linspace(0,1,1000);
% Número de términos de la serie a dibuja
n = 50;
% definición de matrices para almacenar coeficientes de Fourier
ak_0 = zeros(n,1);
bk_0 = zeros(n,1);
ck_0 = zeros(n,1);
dk_1 = zeros(n,1);
bk_1 = zeros(n,1);
ck_1 = zeros(n,1);
% Cálculo de coeficientes de Fourier asociados a u_0
for k = 1:n
f_cos_0 = @(x) u_0(x).*cos(k*pi*x);
ck_0(k) = 2*trapz(x, f_cos_0(x));
end
% Cálculo de coeficientes de Fourier asociados a u_1
for k = 1:n
f_cos_1 = @(x) u_1(x).*cos(k*pi*x);
dk_1(k) =2/(k*pi)*trapz(x, f_cos_1(x));
end
% Sustituimos en la solución calculada por separación de variables
u = @(xx,tt) 0;
for i = 1:n
u = @(xx,tt) u(xx,tt) + (ck_0(i)*cos(i*pi*tt) + dk_1(i)*sin(i*pi*tt)).*cos(i*pi*xx);
end
% Graficamos la solución
[X, T] = meshgrid(x, t);
surf(X, T, u(X, T), 'EdgeColor', 'flat')
title('Solución')
xlabel('x')
ylabel('t')Aquí se puede ver cómo la onda tiene una velocidad constante de 1 casi todo el tiempo, pero cuando la onda llega a la frontera la onda se dispara y disminuye su velocidad, y posteriormente pasa a ir en el sentido contrario.
3 Ecuación de ondas II
En este ejercicio se dibujará la solución fundamental de la ecuación de ondas en dimensiones 1, 2 y 3. De esta forma, se interpretará el principio de Huygens.
3.1 Solución fundamental
El problema a resolver resulta el siguiente
donde [math] \delta(x) [/math] es la delta de Dirac.
La solución fundamental es:
[math]1)[/math] En dimensión [math]n=1[/math]:
Como se puede observar en la expresión, esta es radial.



