Ondas en un arco y cálculo vectorial (66)
Ondas en un arco y cálculo vectorial
| Trabajo realizado por estudiantes | |
|---|---|
| Título | Ondas en un arco y cálculo vectorial. Grupo 66 |
| Asignatura | Teoría de Campos |
| Curso | 2025-26 |
| Autores | Nombres Jorge Lianes , Paula Calderón , Marina Morillo , Marta García-Inés y Sofía Romero |
| Este artículo ha sido escrito por estudiantes como parte de su evaluación en la asignatura | |
Trabajo N: Arco II
Introducción
Contenido
- 1 Dibujar un mallado que represente los puntos interiores del sólido
- 2 Dibujar la temperatura del sólido
- 3 Calcular el gradiente y dibujarlo como campo vectorial. Calcular las curvas de nivel T y observar graficamente que el gradiente es ortogonal a dichas curvas
- 4 Dibujar el campo de vectores en los puntos del mallado del sólido.
- 5 Dibujar el sólido antes y después del desplazamiento
- 6 Calcula la divergencia en todos los puntos del sólido
- 7 Calcular el rotacional en todos los puntos del sólido
- 8 ¿Qué puntos sufren un mayor rotacional?
- 9 Tensor de deformaciones y tensiones normales en el medio elástico
- 10 Análisis de tensiones tangenciales respecto al eje i
- 11 Tensiones tangenciales respecto al eje j y zonas de mayor deformación
- 12 Cálculo numérico de la masa de la placa con densidad variable
- 13 Interpretación física : aplicación a ondas sísmicas en la corteza terrestre
1 Dibujar un mallado que represente los puntos interiores del sólido
2 Dibujar la temperatura del sólido
3 Calcular el gradiente y dibujarlo como campo vectorial. Calcular las curvas de nivel T y observar graficamente que el gradiente es ortogonal a dichas curvas
Campo de desplazamiento en polares: [math]\vec{u}(\rho,\theta) = \frac{1}{5}(\rho - 1)\rho \,\vec{e}_{\rho}[/math]
Función de temperatura: [math]T(x,y) = (x - y)^2[/math]
Cálculo del gradiente:
[math]T=(x - y)^2 = 2x - 2y - 2xy[/math]
[math]\frac{\partial T}{\partial x} = 2 - 2y;[/math] [math] \frac{\partial T}{\partial y} = -2 + 2x[/math]
[math]\nabla T(x,y) = (\,2 - 2y,\,-2 + 2x\,)[/math]
Curvas de nivel de T:
La condición de las curvas de nivel es:
[math]T(x,y) = c\;\;\Rightarrow\;\; (x - y)^2=c;[/math] [math](x - y)^2 = c\quad\Rightarrow\quad y=x\mp\sqrt{c}[/math]
El dominio es ρ ∈ [1,2], θ ∈ [0,π], es decir, el semianillo del plano superior. Se debe a que la sección longitudinal del semianillo recorta las curvas de nivel y el campo.
Las curvas de nivel son rectas que, al intersectar el semianillo generan segmentos rectos dentro de la figura.
Ortogonalidad de ∇T a las curvas de nivel:
Código MATLAB y representación
clc; clear; close all;
% Paso deseado
paso = 0.1;
% Vectores con paso fijo
theta = 0:paso:pi; % Ángulo de 0 a pi con paso 0.1
r = 1:paso:2; % Radios de 1 a 2 con paso 0.1
% Malla polar
[Theta, R] = meshgrid(theta, r);
% Coordenadas cartesianas
X = R .* cos(Theta);
Y = R .* sin(Theta);
% Campo vectorial u(rho,theta) = (1/5)*(rho - 1)*rho * e_rho
U_rho = (1/5) * (R - 1) .* R;
U_x = U_rho .* cos(Theta); % componente radial en x
U_y = U_rho .* sin(Theta); % componente radial en y
% Función de temperatura T(x,y) = (x - y)^2
T = (X - Y).^2;
% Gradiente de T: ∇T = [∂T/∂x, ∂T/∂y]
dTdx = 2 - 2*Y;
dTdy = -2 + 2*X;
% Figura
figure;
hold on; axis equal; grid on;
% Dibujar malla del arco
for i = 1:length(theta)
plot(X(:,i), Y(:,i), 'y');
end
for i = 1:length(r)
plot(X(i,:), Y(i,:), 'y');
end
% Contornos del arco
th = linspace(0, pi, 300);
plot(2*cos(th), 2*sin(th), 'k', 'LineWidth', 1.5); % Arco exterior
plot(1*cos(th), 1*sin(th), 'k', 'LineWidth', 1.5); % Arco interior
plot([1 2]*cos(0), [1 2]*sin(0), 'k', 'LineWidth', 1.5); % Lateral 0
plot([1 2]*cos(pi), [1 2]*sin(pi), 'k', 'LineWidth', 1.5); % Lateral pi
% Campo vectorial ∇T en rojo
quiver(X, Y, dTdx, dTdy, 'r', 'LineWidth', 1.2);
% Curvas de nivel de T en azul
contour(X, Y, T, 15, 'LineColor', 'b', 'LineWidth', 1.2);
% Campo u en verde
quiver(X, Y, U_x, U_y, 'g', 'LineWidth', 1.2);
% Ajustes finales
title('Campo ∇T (rojo), u (verde) y curvas de nivel T(x,y) (azul)');
xlabel('x'); ylabel('y');
xlim([-2.5 2.5]); ylim([-1.5 3]);
legend('∇T', 'Curvas de nivel T', 'Campo u');
hold off;
4 Dibujar el campo de vectores en los puntos del mallado del sólido.
Líneas coordenadas en cartesianas: [math]\vec{u}(x,y) = \frac{\cos(\pi y)}{10}\,\vec{i}[/math]
Código MATLAB y representación:
% Medio arco: rho in [1,2], theta in [0,pi]
rho = linspace(1,2,20);
theta = linspace(0,pi,40);
[R,Theta] = meshgrid(rho,theta);
% Coordenadas cartesianas
X = R .* cos(Theta);
Y = R .* sin(Theta);
% Campo radial hacia fuera:
Esta sección ilustra la manera de dibujar un campo vectorial que irradia desde el centro en un área con forma de arco. Los vectores siempre señalan hacia afuera, y su tamaño se ajusta a cuán lejos están del punto central, lo cual demuestra una acción de crecimiento.
En la ilustración se aprecia sin problemas:
- Todos los vectores se dirigen hacia afuera, siguiendo la curva del arco.
- Las flechas se hacen más largas a medida que nos acercamos a la distancia radial de 2.
- El borde del arco parcial nos permite observar que el campo solo existe en esa zona.
5 Dibujar el sólido antes y después del desplazamiento
6 Calcula la divergencia en todos los puntos del sólido
7 Calcular el rotacional en todos los puntos del sólido
Código MATLAB y representación:
% Medio arco: radios 1 a 2, ángulos 0 a pi
r1 = 1; r2 = 2; t1 = 0; t2 = pi;
dr = 0.05; dt = 0.05;
r = r1:dr:r2; t = t1:dt:t2;
[TT, RR] = meshgrid(t, r);
% Coordenadas cartesianas
X = RR .* cos(TT);
Y = RR .* sin(TT);
% Rotacional del campo radial: nulo en todo el dominio
C = zeros(size(RR));
% Puntos coloreados en azul
figure;
scatter(X(:), Y(:), 15, C(:), 'filled');
colormap('winter'); colorbar; % 'winter' = gama azul
hold on;
% Contorno negro del medio arco
tt = linspace(t1, t2, 300);
plot(r1*cos(tt), r1*sin(tt), 'k', r2*cos(tt), r2*sin(tt), 'k');
plot([r1*cos(t1), r2*cos(t1)], [r1*sin(t1), r2*sin(t1)], 'k');
plot([r1*cos(t2), r2*cos(t2)], [r1*sin(t2), r2*sin(t2)], 'k');
axis equal;
xlabel('x'); ylabel('y');
title('campo radial en medio arco');
grid on; hold off;
Rotacional del campo radial en coordenadas polares
Considera el campo en el plano, en coordenadas polares:
[math]\vec{u}(\rho, \theta) = u_\rho(\rho, \theta) \, \vec{e}\rho + u\theta(\rho, \theta) \, \vec{e}_\theta[/math]
con
[math]u_\rho(\rho, \theta) = \frac{1}{\rho} (\rho - 1) \rho, \quad u_\theta(\rho, \theta) = 0[/math]
La componente [math]z[/math] del rotacional en 2D (plano) usando coordenadas polares es:
[math](\nabla \times \vec{u})z = \frac{1}{\rho} \frac{\partial}{\partial \rho} (\rho u\theta) - \frac{1}{\rho} \frac{\partial u_\rho}{\partial \theta}[/math]
Primer término:
[math]\frac{1}{\rho} \frac{\partial}{\partial \rho} (\rho u_\theta) = \frac{1}{\rho} \frac{\partial}{\partial \rho} (\rho \cdot 0) = 0[/math]
Segundo término:
[math]\frac{1}{\rho} \frac{\partial u_\rho}{\partial \theta} = \frac{1}{\rho} \frac{\partial}{\partial \theta} \left( \frac{1}{\rho} (\rho - 1) \rho \right) = 0[/math]
porque [math]u_\rho[/math] no depende de [math]\theta[/math].
Por tanto:
[math]\nabla \times \vec{u} = 0 \cdot \vec{k} = 0[/math]
8 ¿Qué puntos sufren un mayor rotacional?
El cálculo del rotacional da cero en todo el dominio porque:
[math]u_\theta = 0[/math]
[math]u_\rho[/math] solo depende de [math]\rho[/math] y no de [math]\theta[/math]
Por tanto:
[math]\nabla \times \vec{u} = 0[/math] en todo el arco.
Ningún punto sufre rotación. El desplazamiento es solo hacia fuera del centro del arco. Por tanto, los puntos se expanden radialmente, pero no giran.