Diferencia entre revisiones de «Mallado 2D de Arco I (Grupo 63)»

De MateWiki
Saltar a: navegación, buscar
(Póster)
Línea 750: Línea 750:
  
 
=Póster=
 
=Póster=
 +
[[Archivo:MALLADO2D_GRUPO63.pdf|200px|thumb|left|Póster del artículo resumido]]

Revisión del 23:15 6 dic 2025

Trabajo realizado por estudiantes
Título Mallado 2D de Arco I. Grupo 63
Asignatura Teoría de Campos
Curso 2025-26
Autores María Cocina Sanjuanbenito, Fernando Trocoli de Toro, Rodrigo Sánchez de León Acevedo,

Marta Reiter Hernández

Este artículo ha sido escrito por estudiantes como parte de su evaluación en la asignatura

1 Introducción

En el sigiente artículo se estudia la parametrización y el mallado de una placa plana bidimensional con geometría de arco circular, delimitada por los radios 1 y 2. Sobre este dominio se definen dos magnitudes físicas: la temperatura [math]T(x,y)[/math], expresada en coordenadas cartesianas, y un campo de desplazamientos [math] \vec u(ρ,θ) [/math], descrito en coordenadas cilíndricas siguiendo la simetría geométrica del problema.

La temperatura viene dada por

[math]T(x,y)=(x-y)^2 [/math]

mientras que el campo de desplazamientos se define como

[math]\vec{u} = \frac{1}{5}(\rho-1)\rho^2cos\theta(\vec{e}_{\theta})[/math]

El objetivo de esta introducción es establecer una formulación precisa del dominio y de las funciones involucradas, para disponer de una base adecuada para su discretización y análisis numérico. Incluidos en todos los apartados del artículo se incluyen códigos de Matlab, fotografías y gráficas de los resultados del problema.

2 Mallado de la placa

Para definir el mallado de la mitad de un anillo circular usaremos dos condiciones: que esté comprendido entre los radios R1=1 y R2=2, y el plano y ≥ |x|. Al estudiar la mitad de un anillo, trabajaremos en coordenadas cilíndricas.

Su representación quedará definida en la región (ρ,θ) ∈ [1,2] × [[math] 0,\pi[/math]].

Para el muestreo, que son las subdivisiones deseadas por unidad en función de ambos ejes, usaremos \(h = 1/10\).


Figura 1.Mallado Arco
% Definimos parámetros
h=0.1                 %muestreo
r=1:h:2;              %radios del arco
t=0:h:pi;             

%Mallado en coordenadas cilíndricas
[RR,TT]=meshgrid(r,t);
% Pasamos de cilíndricas a cartesianas
x=RR.*cos(TT); 
y=RR.*sin(TT);

%Gráfica del mallado
figure;
mesh(x,y,0*x); view(2); axis equal; axis([-3,1,-3,3]); 
xlabel('Eje X'); ylabel('Eje Y'); title('Mallado de la placa');

%Bordes 
hold on;
  %radio exterior r=2
plot(2*cos(t),2*sin(t),'k', 'LineWidth', 2);
  %radio interior r=1
plot(1*cos(t), 1*sin(t), 'k', 'LineWidth', 2);

plot([1*cos(0), 2*cos(0)], [1*sin(0), 2*sin(0)], 'k', 'LineWidth', 2);     
plot([1*cos(pi), 2*cos(pi)], [1*sin(pi), 2*sin(pi)], 'k', 'LineWidth', 2); 

hold off;


3 Curvas de nivel de la temperatura (isotermas)

La temperatura del sólido proviene de un foco de calor muy concentrado en los puntos que están a distancia 1 del origen.

La distribución de la temperatura en el sólido para dibujar sus curvas de nivel, viene dado por la función:

[math]T(x,y)=(x-y)^2 [/math]


Figura 2. Representación de las curvas de nivel de la temperatura
% Parámetros 
h = 0.2;                     % Paso radial
r = 1:h:2;                   % Radios              
t = linspace(0,pi,40);       

% Mallado polar
[R, Th] = meshgrid(r, t);

% Conversión a coordenadas cartesianas
X = R .* cos(Th);
Y = R .* sin(Th);

% Función de temperatura
T = (X - Y).^2;


%Grafica 1: CONTORNOS
figure; subplot(1,2,1); mesh(X, Y, 0*X);
hold on

% Curvas de nivel 
contour(X, Y, T, 25, "LineWidth", 1.2);

colorbar; title('CURVAS DE NIVEL DE LA TEMPERATURA','FontSize',14); axis([-3 3 -1 3]); view(0,90); 
xlabel('Eje X')
ylabel('Eje Y')
hold off


%Grafica 2: 3D
subplot(1,2,2); surf(X, Y, T); shading interp; colorbar; 
title('TEMPERATURA EN 3D','FontSize',14)
xlabel('Eje X')
ylabel('Eje Y')
zlabel('Temperatura')
axis([-3 3 -1 3 0 max(T(:))])
axis vis3d


% Máxima temperatura
Tmax = max(T(:));
fprintf("La temperatura máxima es: %.4f\n", Tmax);


A partir del campo escalar, podemos calcular el gradiente de la temperatura [math]\nabla T[/math]. Que indica la dirección en la que aumenta nuestra temperatura. |[math]\nabla T[/math]| nos especificará cuanto aumenta.

Para calcular nuestro gradiente en cilíndricas, usaremos la fórmula:

[math]\nabla T = \frac{\partial T}{\partial x}\vec i+\frac{\partial T}{\partial y}\vec j+\frac{\partial T}{\partial z}\vec k[/math]

Por lo tanto, el gradiente será:

[math]\nabla T = 2(x-y)\vec i-2(x-y)\vec j[/math]
Figura 3. Representación del gradiente
% Parámetros de la placa 
h  = 0.1;             
r  = 1:h:2;         
t  = linspace(0,pi,50); 

% Mallado polar
[R,Th] = meshgrid(r,t);

% Conversión a coordenadas cartesianas
X = R .* cos(Th);
Y = R .* sin(Th);

% Gradiente de T
%  ∇T = (2(x-y), -2(x-y))
Gx =  2*(X - Y);
Gy = -2*(X - Y);

% Grafica 1: CURVAS DE NIVEL + GRADIENTE 2D
figure; subplot(1,2,1); mesh(X,Y,0*X);    
hold on
contour(X,Y,T,20) 
quiver(X,Y,Gx,Gy,'AutoScale','on','AutoScaleFactor',0.5)

colorbar
title('CURVAS DE NIVEL Y GRADIENTE','FontSize',14)
axis([-3 3 -0.5 3])
view(0,90)
xlabel('Eje X')
ylabel('Eje Y')
hold off

% GRAFICA 2: SUPERFICIE + GRADIENTE 3D
subplot(1,2,2); 
surf(X,Y,T)
shading interp
hold on
esc = 0.2; quiver3(X,Y,T,esc*Gx,esc*Gy,0*Gx,'AutoScale','off')

hold off
colorbar
title('GRADIENTE 3D','FontSize',14)
xlabel('Eje X')
ylabel('Eje Y')
zlabel('Temperatura')
axis([-3 3 -0.5 3 0 max(T(:))])
axis vis3d
view(45,30)

% Gradiente máximo
Gmag = sqrt(Gx.^2 + Gy.^2);
Gmax = max(Gmag(:));
fprintf('Máximo módulo del gradiente: %.4f\n', Gmax);


4 Campo de vectores en el mallado

El campo de vectores [math]\vec u [/math] indica el desplazamiento de los puntos del sólido. En este caso usaremos la fórmula:
[math] \vec u = \frac{1}{5}\vec (ρ-1)ρ^2 sen(θ)\vec e_θ [/math]
Figura 2. Representación del campo de vectores
% Medio arco: radios 1 a 2, ángulos 0 a pi
r1 = 1;  r2 = 2;
t1 = 0;  t2 = pi;

% Mallado (puedes cambiar 20 y 40 para refinar el mallado)
[R,T] = meshgrid(linspace(r1,r2,20), linspace(t1,t2,40));

% Campo en coordenadas polares
%  u(r,theta) = (1/5)*(r-1)*r^2*sin(theta)*e_theta
Ur = 0.*R;                            % componente radial nula
Ut = (1/5).*(R-1).*R.^2.*sin(T);      % componente tangencial

% Conversión a cartesianas
X = R.*cos(T);
Y = R.*sin(T);

% e_r = (cosθ, sinθ),  e_theta = (-sinθ, cosθ)
Ux = Ur.*cos(T) - Ut.*sin(T);
Uy = Ur.*sin(T) + Ut.*cos(T);

% Dibujo del campo
figure;
quiver(X,Y,Ux,Uy,'b'); 
axis equal; hold on;

% Contorno del medio arco
theta = linspace(t1,t2,200);
plot(r1*cos(theta), r1*sin(theta),'k','LineWidth',1.2); % semicircunferencia interior
plot(r2*cos(theta), r2*sin(theta),'k','LineWidth',1.2); % semicircunferencia exterior
plot([r1*cos(t1) r2*cos(t1)], [r1*sin(t1) r2*sin(t1)], 'k','LineWidth',1.2); % radio izquierdo
plot([r1*cos(t2) r2*cos(t2)], [r1*sin(t2) r2*sin(t2)], 'k','LineWidth',1.2); % radio derecho

title('Campo u(r,\theta) = (1/5)(r-1)r^2\sin(\theta)\,e_{\theta} en medio arco');
xlabel('x'); ylabel('y');


5 Arco antes y después del desplazamiento

Las imágenes muestran la representación del sólido antes y después de la deformación producida por el campo de desplazamientos [math] \vec u(ρ,θ) [/math].

Figura 2. Representación del arco antes y después del desplazamiento
Figura 2. Comparación


% Mallado
h  = 0.1;            % paso de mallado
r  = 1:h:2;          % radios
t  = 0:h:pi;         % ángulos
[R,T] = meshgrid(r,t);

% Coordenadas cartesianas de la placa no desplazada
X0 = R.*cos(T);
Y0 = R.*sin(T);

Ur = 0.*R;                            % componente radial nula
Ut = (1/5).*(R-1).*R.^2.*sin(T);    % componente tangencial

% Conversión a cartesianas:
% e_r = (cosθ, sinθ), e_theta = (-sinθ, cosθ)
Ux = Ur.*cos(T) - Ut.*sin(T);
Uy = Ur.*sin(T) + Ut.*cos(T);

% Coordenadas desplazadas
Xd = X0 + Ux;
Yd = Y0 + Uy;

% '''GRAFICAS'''
figure;

% 1. Placa no desplazada
subplot(1,3,1); mesh(X0,Y0,0*X0,'EdgeColor',[0 0.7 0],'FaceColor','none'); 
view(2); axis equal; axis([-3 3 -1 3]); title('Placa no desplazada');
xlabel('Eje X'); ylabel('Eje Y');

% 2. Placa desplazada
subplot(1,3,2); mesh(Xd,Yd,0*Xd,'EdgeColor',[0.8 0 0],'FaceColor','none'); 
view(2); axis equal; axis([-3 3 -1 3]); title('Placa desplazada');
xlabel('Eje X'); ylabel('Eje Y');

% 3. Comparación
subplot(1,3,3); hold on;
mesh(X0,Y0,0*X0,'EdgeColor',[0 0.7 0],'FaceColor','none');   % original
mesh(Xd,Yd,0*Xd,'EdgeColor',[0.8 0 0],'FaceColor','none');   % desplazada
hold off; view(2); axis equal; axis([-3 3 -1 3]); title('Desplazamiento de la placa');
xlabel('Eje X'); ylabel('Eje Y');


6 Divergencia del campo de vectores

La divergencia mide la tasa de flujo saliente o entrante en un punto. Nos permite saber si un campo vectorial está comportándose como una "fuente" (flujo saliente) o como un "sumidero" (flujo entrante) en esa región.

6.1 ¿Qué es la divergencia?

Sea [math]\vec u(ρ,θ)[/math]: 𝐷 ⊂ ℝ3V un campo vectorial, expresado en la base cilíndrica. Y siendo la fórmula de la divergencia en coordenadas cilídricas:

[math]\nabla ·\vec{u} = \frac{1}{\rho} (\frac{\partial }{\partial \rho} (\rho u_\rho)+\frac{\partial }{\partial θ} (u_θ)+\frac{\partial }{\partial z} (\rho u_z))[/math]


El campo de desplazamientos es:

[math]\vec{u} = \frac{1}{5}(\rho-1)\rho^2cos\theta [/math]

Una vez operado obtenemos

[math]\nabla ·\vec{u} =\frac{\rho(\rho-1)cos\theta }{5}[/math]

6.2 ¿Qué puntos tienen mayor divergencia? ¿Por qué?

Con el resultado del apartado anterior introducido en Matlab se puede observar que los puntos con máximos de divergencia son:

Máxima divergencia POSITIVA:
 div u = 0.40000 en (x,y) = (2.00000, 0.00000)

Máxima divergencia NEGATIVA:

 div u = -0.39965 en (x,y) = (-1.99827, 0.08316)

La divergencia analítica del campo es ∇⋅u=51​(ρ2−ρ)cosθ. Físicamente, esto indica una expansión volumétrica en la mitad derecha del arco (cosθ>0) y una compresión en la mitad izquierda (cosθ<0). La deformación es nula en el radio interior y crece cuadráticamente con el radio, alcanzando sus valores teóricos máximos (±0.4) en los extremos exteriores (±2,0). Las ligeras desviaciones en el resultado numérico son atribuibles al error de discretización del mallado (h=0.1).

Figura 2. Representación de la divergencia
''% Mallado
h  = 0.1;          % paso de mallado
r  = 1:h:2;        % radios
t  = 0:h:pi;       % ángulos
[RR,TT] = meshgrid(r,t);

% Coordenadas cartesianas del medio arco
X = RR.*cos(TT);
Y = RR.*sin(TT);''

% Divergencia del campo
% u = (1/5)*(rho-1)*rho^2*cos(theta)*e_theta
% => div u = (rho*(rho-1)*cos(theta))/5
DIV = (RR.*(RR-1).*cos(TT))/5;

figure;

% GRAFICA 1: DIVERGENCIA EN 2D
subplot(1,2,1); surf(X,Y,DIV,'EdgeColor','interp','FaceColor','interp'); view(2);  
axis equal; axis([-3 3 -1 3]); xlabel('Eje X'); ylabel('Eje Y'); title('Divergencia 2D');
colorbar;

% GRAFICO 2: DIVERGENCIA 3D
subplot(1,2,2); surf(X,Y,DIV,'EdgeColor','interp','FaceColor','interp'); view(3); axis vis3d; xlabel('Eje X'); ylabel('Eje Y'); zlabel('Eje Z');
title('Divergencia 3D'); colorbar;

% Máxima divergencia positiva
[maxDiv, idxMax] = max(DIV(:));
xMax = X(idxMax);
yMax = Y(idxMax);

% Máxima divergencia negativa
[minDiv, idxMin] = min(DIV(:));
xMin = X(idxMin);
yMin = Y(idxMin);

fprintf('Máxima divergencia POSITIVA:\n');
fprintf('  div u = %.5f en (x,y) = (%.5f, %.5f)\n', maxDiv, xMax, yMax);

fprintf('Máxima divergencia NEGATIVA:\n');
fprintf('  div u = %.5f en (x,y) = (%.5f, %.5f)\n', minDiv, xMin, yMin);


7 Rotacional del campo de vectores |∇ × ⃗𝑢|

7.1 ¿Qué es el rotacional?

Sea [math]\nabla×\vec u(ρ,θ)[/math] el rotacional de un campo de desplazamientos [math]\vec u [/math], se expresa como:

[math]\nabla×\vec u(ρ,θ) = \frac{1}{\rho}\begin{vmatrix} \vec g_ρ & \vec g_θ & \vec g_z \\ \frac{\partial}{\partial ρ} & \frac{\partial}{\partial θ} & \frac{\partial}{\partial z} \\ \vec v_ρ & \vec ρv_θ & \vec v_z \end{vmatrix}[/math]

El rotacional de un campo vectorial mide su tendencia a rotar en un punto.

La cual desarrollada, queda:
[math]\nabla \times \vec{U} =\left(\frac{1}{\rho}\frac{\partial U_{z}}{\partial \theta}- \frac{\partial U_{\theta}}{\partial z}\right)\vec{e}_{\rho}\;+\;\left(\frac{\partial U_{\rho}}{\partial z}- \frac{\partial U_{z}}{\partial \rho}\right)\vec{e}_{\theta}\;+\;\frac{1}{\rho}\left[\frac{\partial}{\partial \rho}(\rho U_{\theta})- \frac{\partial U_{\rho}}{\partial \theta}\right]\vec{e}_{z}[/math]


Aplicando el campo de desplazamientos:
[math] \nabla×\vec u(ρ,θ) = \frac{1}{\rho} \begin{vmatrix}\vec{e}_{\rho } & \vec{e}_{\theta } & \vec{e}_{z }\\ \frac{\partial }{\partial \rho }& \frac{\partial }{\partial \theta } & \frac{\partial }{\partial z }\\0 & \frac{1}{5}(\rho-1)\rho^2cos\theta & 0 \\\end{vmatrix}=\frac{ \rho(4\rho - 3)}{5} \cos\theta \vec{e}_{z} [/math]


Los puntos con mayor rotacional son:

Máximo rotacional (componente z POSITIVA):
 w_z = 2.00000 en (x,y) = (2.00000, 0.00000)

Mínimo rotacional (componente z NEGATIVA):

 w_z = -1.99827 en (x,y) = (-1.99827, 0.08316)

El análisis de la divergencia del campo de desplazamientos, definida analíticamente como un quinto del producto entre la diferencia cuadrática del radio y el coseno del ángulo, revela un comportamiento físico dual en la placa. Los resultados numéricos muestran una expansión volumétrica máxima de 0.4 en el extremo derecho del arco, correspondiente a las coordenadas (2, 0), donde el coseno es positivo y el radio es máximo, y una compresión volumétrica máxima de aproximadamente -0.4 en el extremo izquierdo, correspondiente teóricamente a (-2, 0), donde el coseno es negativo. La deformación volumétrica es nula tanto en el radio interior como en la clave del arco. Por otro lado, el rotacional, que cuantifica la vorticidad o giro local del material, sigue una distribución dependiente del coseno del ángulo y creciente con el radio. Se observa un rotacional máximo positivo de 2.0 en el extremo derecho (2, 0), indicando un giro antihorario intenso, y un rotacional máximo negativo de aproximadamente -1.99 en el extremo izquierdo, indicando un giro horario. Las leves desviaciones en las coordenadas de los mínimos respecto a los valores teóricos geométricos (-2, 0) son atribuibles exclusivamente a la discretización del mallado con paso 0.1, que impide que un nodo coincida exactamente con el ángulo pi.


7.2 ¿Qué puntos tiene un mayor rotacional?

Figura. Representación del rotacional
% Mallado del medio arco
h  = 0.1;          % paso de mallado
r  = 1:h:2;        % radios
t  = 0:h:pi;       % ángulos
[RR,TT] = meshgrid(r,t);

% Coordenadas cartesianas
X = RR.*cos(TT);
Y = RR.*sin(TT);

%ROTACIONAL
% u = (1/5)*(rho-1)*rho^2*cos(theta)*e_theta
% => (nabla x u)_z = rho*(4*rho - 3)*cos(theta)/5
ROTz = (RR.*(4*RR - 3).*cos(TT))/5;  

figure;
% GRAFICA 1: ROTACIONAL 2D
subplot(1,2,1); surf(X,Y,ROTz,'EdgeColor','interp','FaceColor','interp'); view(2);axis equal; axis([-3 3 -1 3]); xlabel('Eje X'); ylabel('Eje Y');title('Rotacional 2D (\omega_z)');colorbar;

% GRAFICA 2: ROTACIONAL 3D
subplot(1,2,2); surf(X,Y,ROTz,'EdgeColor','interp','FaceColor','interp'); view(3); axis vis3d; xlabel('Eje X'); ylabel('Eje Y'); zlabel('Eje Z');
title('Rotacional 3D (\omega_z)'); colorbar;

%PUNTOS DE ROTACIONAL MÁXIMO
% Máximo (más positivo)
[maxRot, idxMax] = max(ROTz(:));
xMax = X(idxMax);
yMax = Y(idxMax);

% Mínimo (más negativo)
[minRot, idxMin] = min(ROTz(:));
xMin = X(idxMin);
yMin = Y(idxMin);

fprintf('Máximo rotacional (componente z POSITIVA):\n');
fprintf('  w_z = %.5f en (x,y) = (%.5f, %.5f)\n', maxRot, xMax, yMax);

fprintf('Mínimo rotacional (componente z NEGATIVA):\n');
fprintf('  w_z = %.5f en (x,y) = (%.5f, %.5f)\n', minRot, xMin, yMin);


8 TENSIONES

En un sólido deformable, cuando aplicamos fuerzas externas, experimenta fuerzas internas ejercidas por el propio material, que "luchan" contra esta deformación. Estas fuerzas internas se describen mediante un tensor de tensiones [math]\sigma [/math] que en cada punto indica: cómo el resto del material impide la deformación de la fuerza externa, y en qué dirección actúan estas fuerzas.

Las tensiones se obtienen a partir de la fórmula:
[math]\sigma = λ \nabla · \vec u I + 2µ \epsilon (\vec u) [/math]
donde I es el tensor identidad y λ,µ son los coeficientes de Lamé.

Si tomamos como valores de µ = λ = 1, nuestra expresión queda:

[math]\sigma = \nabla · \vec u I + 2 \epsilon(\vec u) [/math]

8.1 Tensor de deformaciones

En un medio elástico lineal, isótropo y homogéneo, los desplazamientos [math] \vec u [/math] determinan las deformaciones a través del tensor de deformaciones:

[math]\epsilon(\vec u) =\frac{\nabla{\vec u}+(\nabla{\vec u})^t}{2}[/math]

que equivale a la parte simétrica del gradiente del campo de desplazamientos.

Para ello se calculan [math]\nabla{\vec u(ρ,θ)}[/math] y [math](\nabla{\vec u(ρ,θ)})^t[/math]:

[math]\frac{\partial \vec{u}}{\partial\rho}=\frac{1}{5}(3\rho^2 -2\rho)sen\theta\vec{e}_{\theta}[/math]
[math]\frac{\partial \vec{u}}{\partial\theta}= - \frac{1}{5}(\rho-1)\rho sen\theta\vec{e}_{\rho} + \frac{1}{5}(\rho-1)\rho cos\theta\vec{e}_{\theta}[/math]
[math]\frac{\partial \vec{u}}{\partial z}=0[/math]

Por tanto, la matriz [math]\nabla{\vec u(ρ,θ)}[/math] es:

[math]\triangledown \vec{u}(\rho,\theta) = \begin{pmatrix} 0 & - \frac{1}{5}(\rho-1)\rho sen\theta& 0 \\ \frac{1}{5}(3\rho^2 -2\rho)sen\theta & \frac{1}{5}(\rho-1)\rho cos\theta & 0 \\ 0 & 0 & 0 \\ \end{pmatrix} [/math]

Y su traspuesta [math](\nabla{\vec u(ρ,θ)})^t[/math]:

[math]\triangledown \vec{u}(\rho,\theta)^{t} = \begin{pmatrix} 0 & \frac{1}{5}(3\rho^2 -2\rho)sen\theta & 0 \\ - \frac{1}{5}(\rho-1)\rho sen\theta& \frac{1}{5}(\rho-1)\rho cos\theta & 0 \\ 0 & 0 & 0 \\ \end{pmatrix}[/math]


Por lo que el tensor deformaciones quedaría como:

[math]\epsilon (\vec{u}(\rho ,\theta ))=\frac{\triangledown \vec{u}(\rho, \theta )+ \triangledown \vec{u} (\rho ,\theta)^{T}}{2}=\begin{pmatrix} 0 & \frac{1}{10}(2\rho -1)\rho sen\theta & 0 \\ \frac{1}{10}(2\rho -1)\rho sen\theta & \frac{1}{5}(\rho -1)\rho cos\theta & 0 \\ 0 & 0 & 0 \\ \end{pmatrix}[/math]


8.2 Tensor de tensiones

Para hallar el tensor de tensiones, de fórmula [math]\sigma = λ \nabla · \vec u I + 2µ \epsilon [/math], usaremos los coeficientes de Lamé, el gradiente del campo de desplazamientos y el tensor de deformaciones calculado anteriormente.

[math]\sigma =λ\begin{pmatrix} \frac{1}{5}(\rho-1)\rho cos\theta & 0 & 0 \\ 0 & \frac{1}{5}(\rho-1)\rho cos\theta & 0 \\ 0 & 0 & \frac{1}{5}(\rho-1)\rho cos\theta \\ \end{pmatrix} + µ\begin{pmatrix} 0 & \frac{1}{5}(2\rho -1)\rho sen\theta & 0 \\ \frac{1}{5}(2\rho -1)\rho sen\theta & \frac{2}{5}(\rho -1)\rho cos\theta & 0 \\ 0 & 0 & 0 \\ \end{pmatrix} = [/math]


Tomando como valores de λ y de µ = 1, [math]\sigma[/math] es:

[math] \begin{pmatrix} \frac{1}{5}(\rho-1)\rho cos\theta & \frac{1}{5}(2\rho -1)\rho sen\theta & 0 \\ \frac{1}{5}(2\rho -1)\rho sen\theta & \frac{3}{5}(\rho-1)\rho cos\theta & 0 \\ 0 & 0 & \frac{1}{5}(\rho-1)\rho cos\theta \\ \end{pmatrix} [/math]


8.3 Tensiones normales

A continuación calcularemos las tensiones ortogonales al plano de la placa, definido por los parámetros [math]\rho[/math] y [math]\theta[/math].

Las tensiones normales en la dirección que marca el eje [math]\overrightarrow e_{\rho} [/math], es decir, [math]\overrightarrow e_{\rho} \cdot σ \cdot \overrightarrow e_{\rho}[/math] son:

[math]\overrightarrow e_{\rho} \cdot σ \cdot \overrightarrow e_{\rho}=\begin{pmatrix} 1\\0\\0 \end{pmatrix}\cdot\begin{pmatrix} \ \frac{1}{5}(\rho-1)\rho cos\theta & \frac{1}{5}(2\rho -1)\rho sen\theta & 0 \\ \frac{1}{5}(2\rho -1)\rho sen\theta & \frac{3}{5}(\rho-1)\rho cos\theta & 0 \\ 0 & 0 & \frac{1}{5}(\rho-1)\rho cos\theta \\\end{pmatrix}\cdot\begin{pmatrix} 1\\0\\0 \end{pmatrix}=\frac{1}{5}(\rho-1)\rho cos\theta[/math]

Las tensiones normales en la dirección que marca el eje eje[math]\overrightarrow e_{\theta} [/math], es decir [math]\overrightarrow e_{\theta} \cdot σ \cdot \overrightarrow e_{\theta}[/math] son:

[math]\overrightarrow e_{\theta} \cdot σ \cdot \overrightarrow e_{\theta}=\begin{pmatrix} 0\\1\\0 \end{pmatrix}\cdot\begin{pmatrix} \ \frac{1}{5}(\rho-1)\rho cos\theta & \frac{1}{5}(2\rho -1)\rho sen\theta & 0 \\ \frac{1}{5}(2\rho -1)\rho sen\theta & \frac{3}{5}(\rho-1)\rho cos\theta & 0 \\ 0 & 0 & \frac{1}{5}(\rho-1)\rho cos\theta \\\end{pmatrix}\cdot\begin{pmatrix} 0\\1\\0 \end{pmatrix}=\frac{3}{5}(\rho-1)\rho cos\theta[/math]

Las tensiones normales en la dirección que marca el eje eje[math]\overrightarrow e_{z} [/math], es decir [math]\overrightarrow e_{z} \cdot σ \cdot \overrightarrow e_{z}[/math] son:

[math]\overrightarrow e_{z} \cdot σ \cdot \overrightarrow e_{z}=\begin{pmatrix} 0\\0\\1 \end{pmatrix}\cdot\begin{pmatrix} \ \frac{1}{5}(\rho-1)\rho cos\theta & \frac{1}{5}(2\rho -1)\rho sen\theta & 0 \\ \frac{1}{5}(2\rho -1)\rho sen\theta & \frac{3}{5}(\rho-1)\rho cos\theta & 0 \\ 0 & 0 & \frac{1}{5}(\rho-1)\rho cos\theta \\\end{pmatrix}\cdot\begin{pmatrix} 0\\0\\1 \end{pmatrix}=\frac{1}{5}(\rho-1)\rho cos\theta [/math]

A continuación representaremos cada una de las direcciones que toman las tensiones normales según el eje.

Figura. Representación de las teniones normales
%Mallado
r = 1:0.2:2;                 % radios
t = linspace(0,pi,8);        % ángulos de 0 a pi (medio arco)
[rr,tt] = meshgrid(r,t);

% Coordenadas cartesianas del medio arco
xx = rr.*cos(tt);
yy = rr.*sin(tt);

%TENSIOES NORMALES EN CILÍNDRICAS
sigma_rr = (1/5).*(rr-1).*rr.*cos(tt);    % e_r · σ · e_r
sigma_tt = (3/5).*(rr-1).*rr.*cos(tt);    % e_θ · σ · e_θ  
sigma_zz = (1/5).*(rr-1).*rr.*cos(tt);    % e_z · σ · e_z

% TENSIÓN σ_{θ} EN CARTESIANAS
% Dirección e_theta = (-sinθ, cosθ)
Txx = -sin(tt).*sigma_tt;   
Tyy =  cos(tt).*sigma_tt;   

figure;

% GRÁFICA 1: TENSIONES NORMALES
subplot(1,2,1); mesh(xx,yy,0*xx,'EdgeColor',[0 0.7 0.7],'FaceColor','none'); view(2); hold on;
quiver(xx,yy,Txx,Tyy,'Color',[0 0.6 0.9]); hold off;
axis equal; axis([-3,3,-1,3]);title('Tensiones normales \sigma_{\theta\theta}');
xlabel('Eje X'); ylabel('Eje Y');

% GRÁFICA 2: DEFORMACIÓN 
subplot(1,2,2);mesh(X,Y,0*X,'EdgeColor',[0 0.7 0.7],'FaceColor','none');view(2);
axis equal; axis([-3,3,0,5]);title('Deformaciones por tensiones normales en dirección e_\theta');
xlabel('Eje X'); ylabel('Eje Y');


9 Tensiones tangenciales

Las tensiones tangenciales son las que actúan dentro del plano de la placa, es decir, paralelas a ella. Por tanto, son componentes ortogonales a las tensiones normales. Para poder calcularlas usamos el tensor tangencial: [math] T_t= (\vec σ·\vec n - \vec n\otimes\vec n [/math]·σ)[math]\vec t[/math]. Donde [math]\vec σ·\vec n[/math] es el vector total de tensión y [math]\vec n\otimes\vec n [/math]·σ es la parte normal del vector tracción [math]T_n [/math].

9.1 Respecto al plano ortogonal con eje [math]\vec e_ρ [/math]

En este caso, las tensiones tangenciales son las componentes en las direcciones [math]\vec e_\theta [/math] y [math]\vec e_z [/math], es decir:

|[math]σ·\vec e_ρ-(\vec e_ρ·(σ·\vec e_ρ))\vec e_ρ | = \left| \begin{pmatrix} (\frac{1}{5}(\rho-1)\rho cos\theta & \frac{1}{5}(2\rho -1)\rho sen\theta & 0 \\\frac{1}{5}(2\rho -1)\rho sen\theta & \frac{3}{5}(\rho-1)\rho cos\theta & 0 \\0 & 0 & \frac{1}{5}(\rho-1)\rho cos\theta) \\ \end{pmatrix} \cdot \begin{pmatrix} 1\\ 0 \\ 0 \end{pmatrix} - \frac{1}{5}(\rho-1)\rho cos\theta \cdot \begin{pmatrix} 1\\ 0 \\ 0 \end{pmatrix} \right| = [/math]

[math] \frac{1}{5}(2\rho -1)\rho sen\theta[/math]
Figura. Representación de las tensiones tangenciales
%Mallado
r = 1:0.2:2;               % radios
t = linspace(0,pi,8);      % ángulos de 0 a pi (medio arco)
[rr,tt] = meshgrid(r,t);

% Coordenadas cartesianas del medio arco
xx = rr.*cos(tt);
yy = rr.*sin(tt);

% TENSIONES TANGENCIALES en el plano normal a e_rho
tau_theta = (1/5).*(2*rr - 1).*rr.*sin(tt);

% Dirección e_theta = (-sinθ, cosθ)
Ttx = -sin(tt).*tau_theta;   % componente x del vector tangencial
Tty =  cos(tt).*tau_theta;   % componente y del vector tangencial

figure;
% GRAFICA 1: TENSIONES TANGENCIALES
subplot(1,2,1); mesh(xx,yy,0*xx,'EdgeColor',[0 0.7 0.7],'FaceColor','none'); view(2); hold on;
quiver(xx,yy,Ttx,Tty,'Color',[0 0.6 0.9]); axis equal; axis([-3,3,-1,3]);
xlabel('Eje X'); ylabel('Eje Y'); title('Tensiones tangenciales (plano normal a e_\rho)');

% GRAFICA 2: DEFORMACIONES
subplot(1,2,2);mesh(X,Y,0*X,'EdgeColor',[0 0.7 0.7],'FaceColor','none');view(2);
axis equal; axis([-3,3,0,5]);xlabel('Eje X'); ylabel('Eje Y');
title('Deformaciones por tensiones tangenciales');


9.2 ¿Dónde son mayores?

tau_abs = abs(tau_theta);                
[maxTau, idxMaxTau] = max(tau_abs(:));   
xMaxTau = xx(idxMaxTau);
yMaxTau = yy(idxMaxTau);

fprintf('Máxima tensión tangencial

Analizando la función, el valor depende del seno del ángulo y cuadráticamente del radio. El valor máximo obtenido es 1.2000. Este se encuentra en las coordenadas (0, 2). La tensión es máxima en la clave del arco (θ=π/2, donde sinθ=1) y en la fibra exterior (ρ=2, donde el término radial es máximo). Esto indica que la parte superior externa del arco es la zona más crítica a cortante.


9.3 Comparación con puntos de mayor deformación del mallado

%COMPARACIÓN CON PUNTOS 
% Magnitud del desplazamiento aplicado al mallado
desp = sqrt((escala*Ttx).^2 + (escala*Tty).^2);
[maxDesp, idxMaxDesp] = max(desp(:));

xMaxDesp = xx(idxMaxDesp);
yMaxDesp = yy(idxMaxDesp);

fprintf('Máxima deformación (desplazamiento)

Al calcular la magnitud del desplazamiento ∣u∣, observamos que su máximo es 0.8000, localizado también en (0, 2). Existe una coincidencia exacta entre el punto de mayor desplazamiento y el punto de mayor tensión tangencial. Ambos ocurren en la clave del arco en su cara exterior. Esto sugiere que, en este modelo de carga, la zona de mayor movimiento es también la que sufre mayor riesgo de fallo por cizalladura.

10 Tensiones tangenciales respecto al plano ortogonal [math]\vec e_\theta [/math]



|[math]σ·\vec e_\theta-(\vec e_\theta·(σ·\vec e_\theta))\vec e_\theta | = \left| \begin{pmatrix} (\frac{1}{5}(\rho-1)\rho cos\theta & \frac{1}{5}(2\rho -1)\rho sen\theta & 0 \\\frac{1}{5}(2\rho -1)\rho sen\theta & \frac{3}{5}(\rho-1)\rho cos\theta & 0 \\0 & 0 & \frac{1}{5}(\rho-1)\rho cos\theta) \\ \end{pmatrix} \cdot \begin{pmatrix} 0\\ \frac{1}{\rho} \\ 0 \end{pmatrix} - \frac{3}{5}(\rho-1)\rho cos\theta \cdot \begin{pmatrix} 0\\ \frac{1}{\rho} \\ 0 \end{pmatrix} \right| = [/math]

[math] \frac{1}{5}(2\rho -1)\rho sen\theta[/math]


Figura. Representacion tensiones tangenciales
% Mallado del medio arco
r = 1:0.2:2;               % radios
t = linspace(0,pi,8);      % ángulos de 0 a pi (medio arco)
[rr,tt] = meshgrid(r,t);

% Coordenadas cartesianas del medio arco
xx = rr.*cos(tt);
yy = rr.*sin(tt);

% TENSIONES TANGENCIALES respecto al plano ortogonal a e_theta
tau_rho = (1/5).*(2*rr - 1).*rr.*sin(tt);

% Dirección e_rho = (cosθ, sinθ)
Ttx = cos(tt).*tau_rho;    % componente x del vector tangencial
Tty = sin(tt).*tau_rho;    % componente y del vector tangencial

figure;

% GRAFICA 1. TENSIONES TANGENCIALES
subplot(1,2,1);mesh(xx,yy,0*xx,'EdgeColor',[0 0.7 0.7],'FaceColor','none');view(2); hold on;
quiver(xx,yy,Ttx,Tty,'Color',[0 0.6 0.9]);axis equal; axis([-3,3,-1,3]);xlabel('Eje X'); ylabel('Eje Y');
title('Tensiones tangenciales (plano normal a e_\theta)');

% GRAFICA 2: DEFORMACIONES
subplot(1,2,2);mesh(X,Y,0*X,'EdgeColor',[0 0.7 0.7],'FaceColor','none');view(2);axis equal; axis([-3,3,0,5]);xlabel('Eje X'); ylabel('Eje Y');
title('Deformaciones por tensiones tangenciales (plano normal a e_\theta)');

==¿Dónde son mayores?==
tau_abs = abs(tau_rho);                 % magnitud de la tensión tangencial
[maxTau, idxMaxTau] = max(tau_abs(:));  % máximo absoluto
xMaxTau = xx(idxMaxTau);
yMaxTau = yy(idxMaxTau);

fprintf('Máxima tensión tangencial


11 Masa de la placa

Teniendo en cuenta que la densidad del material viene dada por [math]d(\rho, \theta) = 1 + e^{\rho^2 \cos \theta}[/math], se calcula la masa del mismo aplicando la siguiente fórmula.

[math] Masa = \int_{u}^{u}\int_{v}^{v}f(\vec r(u,v)) * |(\vec r´_{u})\times(\vec r´_{v})|dudv [/math]

Parametrizamos la superficie r(u,v) que representa el arco longitudinal, expresamos las componentes [math]\vec r´_{u}[/math]; [math]\vec r´_{v}[/math] y calculamos el módulo del producto vectorial entre ambas.

[math] r(u,v)= (\rho=u , \theta=v , z=0)[/math]

[math] \vec r´_{u}= \frac{\partial ρ}{\partial u}\vec {e\rho} + \rho*\frac{\partial θ}{\partial u}\vec {e\theta}+\frac{\partial z}{\partial u}\vec {ez} = 1\vec {e\rho} + 0\rho\vec {e\theta} + 0\vec {ez} = (1,0,0) = \vec {e\rho} [/math]

[math] \vec r´_{v} = \frac{\partial ρ}{\partial v}\vec {e\rho} + \rho*\frac{\partial θ}{\partial v}\vec {e\theta}+\frac{\partial z}{\partial v}\vec {e_z} = 0\vec {e\rho} + \rho\vec {e\theta} + 0\vec {ez}=(0,u,0)=u\vec {eθ} [/math]

[math] \vec r´_{u} × \vec r´_{v} = \begin{vmatrix} \vec e_ρ & \vec e_θ & \vec e_z \\ 1 & 0 & 0 \\ 0 & u & 0 \end{vmatrix} = 0\vec {e\rho} + 0\rho\vec {e\theta} + u\vec {ez} = (0,0,u) [/math]


[math] |\vec r´_{u} × \vec r´_{v}| = u [/math]

De manera que la masa del material es:

[math] Masa = \int_{0}^{π}\int_{1}^{2}(1 + e^{u^2 cos v}) * (u) dudv = \int_{0}^{π}\int_{1}^{2} (u) dudv + \int_{0}^{π}\int_{1}^{2} u*e^{u^2 cosv} dudv = \frac{3π}{2} + \int_{0}^{π}\int_{1}^{2} u*e^{u^2 cosv} dudv [/math]

La resolución de la integral resultante se ha aproximado a través del método del rectángulo con el siguiente código de Matlab.

% Límites
rho1 = 1;  rho2 = 2;
th1  = 0;  th2  = pi;

% Integrando: densidad * Jacobiano (rho)
integrand = @(rho,theta) (1 + exp(rho.^2.*cos(theta))).*rho;

% Masa de la placa
M = integral2(integrand, rho1, rho2, th1, th2);

fprintf('Masa de la placa = %.10f\n', M);


Por tanto, M= 24,64

12 Interpretación con ejemplo práctico

En este trabajo se ha estudiado la respuesta elástica de una sección longitudinal de un arco comprendido entre los radios 1 y 2, que ha estado sometido a un campo de desplazamientos [math] \vec u = \frac{1}{5}\vec (ρ-1)ρ^2 sen(θ)\vec e_θ [/math] y se ha analizado la distribución de la temperatura [math]T(x,y)=(x-y)^2 [/math].

Por otro lado, si interpretamos el trabajo desde un enfoque práctico, observamos que existe una aplicación real. Suponemos que el dominio es una parte de la corteza terrestre y que el desplazamiento es provocado por las ondas S en terremotos. Esto quiere decir, que se interpreta el campo de deslizamientos como una onda sísmica de tipo S, que se propaga en una parte de la corteza terrestre representada por el arco de radios 1 y 2.

Propagación ondas.png
Propagación de ondas sísmicas en el terreno (forma de nuestro arco longitudinal)

Las ondas S producen desplazamientos tangenciales, dando lugar a deformaciones de cizalla. Esto coincide con el comportamiento del campo de deslizamientos, que desplaza cada punto únicamente en su dirección tangencial, moviendo el material sin cambiar su volumen de manera uniforme. El desplazamiento está dirigido según 𝑒𝜃, luego describe un movimiento tangencial (de tipo cizalla) alrededor del origen. El factor (𝜌 − 1) anula el desplazamiento en la frontera interior (𝜌 = 1, por lo que la deformación es nula en el borde interno y aumenta hacia el exterior. La dependencia sin𝜃 introduce una variación angular: los desplazamientos son nulos en 𝜃=0,𝜋 y máximos en 𝜃=𝜋/2,3𝜋/2.

Comportamiento onda S en la superficie

La divergencia calculada muestra las zonas de la corteza terrestre donde el terreno se expande o comprime. En este caso, las ondas S no generan grandes cambios volumétricos, pues el modelo presenta pequeñas variaciones que pueden interpretarse como ajustes locales del terreno al propagarse la perturbación.

El rotacional representa las zonas donde el material experimenta giro debido al paso de la onda. Esta información permite ver en qué direcciones el terreno tiende a girar durante las vibraciones de estas ondas sísmicas.

Las tensiones normales y tangenciales obtenidas se pueden interpretar como las fuerzas internas que se desarrollan por debajo del terreno como respuesta al desplazamiento. Estas tensiones suelen ser las causantes de la formación de grietas o incluso fallas, cuando superan la resistencia del material. Las tensiones más elevadas se encuentran en la parte más alejada del dominio, donde los desplazamientos son mayores.

Finalmente, se puede observar que el modelo trabajado puede interpretarse como una versión simplificada del comportamiento de la corteza terrestre durante el paso de una onda sísmica de tipo S. Dentro de que está idealizado, nos permite entender cómo se distribuyen los desplazamientos, las tensiones y deformaciones en el terreno ante las vibraciones sísmicas.

13 Póster

Archivo:MALLADO2D GRUPO63.pdf