Estudio de la temperatura y deformación sobre una placa plana en forma de sección de anillo. (Grupo 31A)
| Trabajo realizado por estudiantes | |
|---|---|
| Título | Estudio de la temperatura y deformación sobre una placa plana en forma de sección de anillo |
| Asignatura | Teoría de Campos |
| Curso | 2023-24 |
| Autores | Elías Esteban Mateos, Ignacio Velasco Vega, Javier López González, Julia Meliveo Gómez |
| Este artículo ha sido escrito por estudiantes como parte de su evaluación en la asignatura | |
En este articulo se analizaran los efectos de distintos campos sobre una placa plana, entra otras cuestiones. Dicha placa tendrá la forma de una sección de anillo circular, la cual será correctamente definida en el primer apartado. Los campos que se estudiaran serán dos: un campo escalar, la temperatura; y un campo vectorial, la deformación de la placa.
Para una mejor representación visual de los conceptos expuestos en el proyecto se usara el apoyo del software Matlab. Todo el código utilizado durante el trabajo será debidamente expuesto al final del mismo. La organización se realizara en sucesivos apartados respondiendo a la preguntas propuestas por el profesorado, analizando las soluciones y sacando conclusiones sobre estas.
Contenido
1 Sección de anillo
Empezaremos delimitando la sección sobre la que se va a trabajar, una placa plana que está definida por dos anillos de radios 1 y 2 que se corta sobre un plano [math]y≥|x|/2 [/math], esto se podrá observar en la Figura 1. En este caso se usaran coordenadas cilíndricas, donde nuestras variables serán: [math]\rho[/math] y [math]\theta [/math] que se encontraran entre los valores: [math]1 \leq \rho \leq 2[/math] y [math]0,464 \leq \theta \leq 2,678[/math]. La sección del anillo se puede observar con una z genérica, la placa plana se puede en dos dimensiones, en los ejes X e Y que tienen esta delimitada en los intervalos [-3,3]x[-1,3] y en tres dimensiones donde el eje Z no esta delimitada.
2 Temperatura
La temperatura en el semi-anillo está definida por el campo escalar: [math]T(x, y) = \cos ((y − 3)^2 + x) [/math], para mantener la coherencia en el trabajo, pasaremos el campo de temperaturas a coordenadas cilíndricas, de tal manera que quedaría así:
\begin{eqnarray*} %x = ρcosθ %y = ρsenθ %z = z x &=& \rho \cos \theta \\ y &=& \rho \sin \theta \\ z &=& z \end{eqnarray*}
De tal forma que la temperatura se definiese [math] T(\rho ,\theta )=\cos (\left( \rho \sin \theta -3\right) ^{2}+\rho \cos \theta )[/math]. Ahora se podrá visualizar en la figura 2 las curvas de nivel del campo de temperaturas sobre la placa, de la cual se descubre que la temperatura máxima que se alcanza es de: 0.99904 ºC
2.1 Gradiente
Después de se procederá a calcular el gradiente [math],\nabla T, [/math] del campo de temperaturas, es decir, un campo vectorial que se podrá ver en la Figura 3
\begin{eqnarray*} \nabla T (\rho ,\theta ), \ \ &=&\left \{ \left(- 2\left( \rho \sin \theta -3\right) \sin \theta +\cos \theta \right) \sin (\left( \rho \sin \theta -3\right) ^{2}+\rho \cos \theta )\right \} \cdot \overrightarrow{e}_{\rho } \\ &&+\left \{ \left( -2\left( \rho \sin \theta -3\right) \cos \theta -\sin \theta \right) \sin (\left( \rho \sin \theta -3\right) ^{2}+\rho \cos \theta )\right \} \cdot \overrightarrow{e}_{\theta } \end{eqnarray*}
2.2 Ley de Fourier
Para finalizar este tema se calcular la energía calorífica mediante la ley de Fournier, donde k=1 y que se podrá apreciar en la Figura 4
\begin{eqnarray*} \bar Q &=& -k \cdot \nabla T (\rho ,\theta )\\ &=&\left \{ \left( 2\left( \rho \sin \theta -3\right) \sin \theta +\cos \theta \right) \sin (\left( \rho \sin \theta -3\right) ^{2}+\rho \cos \theta )\right \} \cdot \overrightarrow{e}_{\rho } \\ &&+\left \{ \left( 2\left( \rho \sin \theta -3\right) \cos \theta -\sin \theta \right) \sin (\left( \rho \sin \theta -3\right) ^{2}+\rho \cos \theta )\right \} \cdot \overrightarrow{e}_{\theta } \end{eqnarray*}
3 Campo vectorial \begin{eqnarray*} \bar u \end{eqnarray*}
El campo vectorial \begin{eqnarray*} \bar u \end{eqnarray*} representa los desplazamientos producidos por la acción de una fuerza determinada. A continuación, en la Figura 5 se representará el solido antes y después del desplazamiento dado por el campo de vectores [math]\bar u\ [/math] en t=0:
\begin{equation*} \overrightarrow{u}\left( \rho ,\theta \right) =\frac{1}{2}e^{\rho -1}\sin \left( 2\theta -\pi /2\right) \overrightarrow{e}_{\theta }. \end{equation*} \begin{eqnarray*} \end{eqnarray*}
3.1 Divergencia
Después, se calculará la divergencia del campo vectorial \begin{eqnarray*} \bar u \end{eqnarray*} (la cual es una medida del cambio de volumen local debido al desplazamiento) y se representa en la Figura 6 para t = 0. Los puntos en los que la divergencia de \begin{eqnarray*} \bar u \end{eqnarray*} es máxima, mínima y nula son: el P1 (0,0) es el punto donde la divergencia es nulo, el P2 (1.1955, 1.60337) es el punto de la divergencia es máxima y el P3(-1.3744, 1.453) es el punto de la divergencia es mínima.
\begin{eqnarray*} \nabla \cdot \overrightarrow{u} &=&\frac{1}{\rho }\left( \frac{\partial }{% \partial \rho }\left( \rho u_{\rho }\right) +\frac{\partial }{\partial \theta }\left( u_{\theta }\right) +\frac{\partial }{\partial z}\left( \rho u_{z}\right) \right) \\ &=&\frac{1}{\rho }\left( 0+\frac{1}{2}e^{\rho -1}2\cos \left( 2\theta -\pi /2\right) +0\right) \\ &=&\frac{1}{\rho }e^{\rho -1}\cos \left( 2\theta -\pi /2\right) \end{eqnarray*}
3.2 Rotacional
Por último, calcularemos el valor absoluto del rotacional de \begin{eqnarray*} \bar u \end{eqnarray*} que se podra observar el resultado en la Figura 7. Podemos concluir diciendo que los siguientes puntos P1(0,0), P2(1.3738, 1.4535) y P3(-1.5055, 0.9866) son los que sufren un mayor rotacional.
\begin{eqnarray*} |\nabla \times \overrightarrow{u}\left( \rho ,\theta ,z\right) | &=&\frac{1}{% \rho }\left \vert \begin{array}{ccc} \overrightarrow{e}_{\rho } & \rho \overrightarrow{e}_{\theta } & \overrightarrow{e}_{z} \\ \frac{\partial }{\partial \rho } & \frac{\partial }{\partial \theta } & \frac{\partial }{\partial z} \\ u_{\rho } & \rho u_{\theta } & u_{z}% \end{array}% \right \vert =\frac{1}{\rho }\left \vert \begin{array}{ccc} \overrightarrow{e}_{\rho } & \rho \overrightarrow{e}_{\theta } & \overrightarrow{e}_{z} \\ \frac{\partial }{\partial \rho } & \frac{\partial }{\partial \theta } & \frac{\partial }{\partial z} \\ 0 & \rho \frac{1}{2}e^{\rho -1}\sin \left( 2\theta -\pi /2\right) & 0% \end{array}% \right \vert \\ &=&\frac{1}{\rho }\left( 0\cdot \overrightarrow{e}_{\rho }+0\cdot \rho \overrightarrow{e}_{\theta }+\frac{\partial }{\partial \rho }\left \{ \rho \frac{1}{2}e^{\rho -1}\sin \left( 2\theta -\pi /2\right) \right \} \cdot \overrightarrow{e}_{z}\right) \\ &=&\frac{1}{\rho }\left \{ \frac{1}{2}e^{\rho -1}\sin \left( 2\theta -\pi /2\right) +\rho \frac{1}{2}e^{\rho -1}\sin \left( 2\theta -\pi /2\right) \right \} \cdot \overrightarrow{e}_{z} \\ &=&\frac{1+\rho }{2\rho }e^{\rho -1}\sin \left( 2\theta -\pi /2\right) \cdot \overrightarrow{e}_{z} \end{eqnarray*}
4 Tensor de deformaciones
- [math]\epsilon (\vec{u})=\frac{\triangledown \vec{u}+\triangledown \vec{u}^t}{2}[/math]
- [math] \sigma =\lambda \triangledown \cdot \vec{u}\cdot 1 + 2\mu \epsilon [/math]
5 Tensiones tangenciales
- [math]\left \| \sigma \cdot \vec{e}_{\rho }-(\vec{e}_{\rho }\cdot\sigma \cdot \vec{e}_{\rho } ) \right \|[/math]
6 Tensión de Von Mises
- [math] \sigma_V= \sqrt \frac{(\sigma _1-\sigma _2)^2+(\sigma _2-\sigma _3)^2+(\sigma _3-\sigma _1)^2}{2} [/math]
7 Códigos Matlab
En este apartado se podrá ver los códigos en Matlab que se han utilizado a lo largo del estudio para representar gráficamente los apartados propuestos.
7.1 Sección anillo
%Apartado 1
clear;clc;
%Parametrizamos la superficie
h=2/10;
ro=1:h:2;
tt=linspace(0.464,2.678,20);
%Creamos el mallado y pasamos a coordenas cilindricas
[U,V]=meshgrid(ro,tt);
X=U.*cos(V);
Y=U.*sin(V);
%Representamos el mallado de la placa en dos y tres dimensiones
figure(1);
subplot(1,2,1);
mesh(X,Y,0*X);
view(2);
axis([-3,3,-1,3]);
title('Mallado');
xlabel('Eje X');
ylabel('Eje Y');
subplot(1,2,2);
mesh(X,Y,0*X);
view(3);
axis([-3,3,-1,3]);
title('Mallado');
xlabel('Eje X');
ylabel('Eje Y');
zlabel('Eje Z');
7.2 Temperatura
%Apartado 2
clear;clc;
%Parametrizamos la superficie
h=2/10;
ro=1:h:2;
tt=linspace(0.464,2.678,20);
%Creamos el mallado y pasamos las cordenadas a cilindricas
[U,V]=meshgrid(ro,tt);
figure(1)
X=U.*cos(V);
Y=U.*sin(V);
%La función de Temperatura es T(x,y)=cos((y-3)^2+x)
T=cos((Y-3).^2+X);
%Representamos la temperatura y las curvas de nivel
subplot(1,2,1);
surf(X,Y,T);
colorbar
title('Temperatura en placa');
xlabel('Eje X');
ylabel('Eje Y');
axis ([-3,3,-1,3]);
view(2);
subplot(1,2,2);
contour(X,Y,T,30);
colorbar
title('Curvas de nivel de la Temperatura');
xlabel('Eje X');
ylabel('Eje Y');
axis ([-3,3,-1,3]);
Tmax=max(max(T));
fprintf('La temperatura máxima que se alcanza es de: %1.5f ºC\n',Tmax);
7.2.1 Gradiente
%Apartado 2, 2ªparte
clear;clc;
%Parametrizamos la superficie
h=2/10;
ro=1:h:2;
tt=linspace(0.464,2.678,20);
%Creamos el mallado y pasamos a coordenas cilindricas
[U,V]=meshgrid(ro,tt);
X=U.*cos(V);
Y=U.*sin(V);
%Definimos el campo de temperaturas. Y las matrices de su gradiente
T=cos((Y-3).^2+X);
Tx=-sin((Y-3).^2+X)*1;
Ty=-sin((Y-3).^2+X).*(2*Y-6);
%Representamos el gradiente del campo vactorial
figure(1)
mesh (X,Y,0*X);
contour(X,Y,T);
view(2);
axis equal
axis([-3,3,-1,3]);
colorbar
hold on
quiver(X,Y,Tx,Ty);
axis equal
axis([-3,3,-1,3]);
view(2);
title('Gradiente de la temperatura');
xlabel('Eje X');
ylabel('Eje Y');
hold off7.2.2 Ley de Fourier
%Apartado 3
clear;clc;
%Parametrización de la superficie
h=2/10;
ro=1:h:2;
tt=linspace(0.464,2.678,20);
%Creamos el mallado y pasamos a coordenas cilindricas
[U,V]=meshgrid(ro,tt);
X=U.*cos(V);
Y=U.*sin(V);
%Definimos la Ley de Fourier donde la energia calorifica es Q=-k∇T
T=cos((Y-3).^2+X);
Tx=sin((Y-3).^2+X)*1;
Ty=sin((Y-3).^2+X).*(2*Y-6);
%Representamos el gradiente del campo vactorial
figure(1)
mesh (X,Y,0*X);
contour(X,Y,T);
view(2);
axis equal
axis([-3,3,-1,3]);
colorbar
hold on
quiver(X,Y,Tx,Ty);
axis equal
axis([-3,3,-1,3]);
view(2);
title('Ley de Fourier');
xlabel('Eje X');
ylabel('Eje Y');
hold off7.3 Campo vectorial \begin{eqnarray*} \bar u \end{eqnarray*}
%Apartado 5
clear;clc;
%Parametrización de la superficie
h=2/10;
ro=1:h:2;
tt=linspace(0.464,2.678,20);
%Creamos el mallado y pasamos a coordenas cilindricas
[U,V]=meshgrid(ro,tt);
X=U.*cos(V);
Y=U.*sin(V);
%Creamos las funciones para la posterior visualización
Fx=log(U).*sin(2.*V-pi/2).*cos(V);
Fy=log(U).*sin(2.*V-pi/2).*sin(V);
%Visualización de la placa antes de la deformación
subplot(1,3,1);
surf(X,Y,0*X);
view(2);
axis equal
axis ([-3,3,-1,3]);
title('Antes de la deformación')
xlabel('Eje X');
ylabel('Eje Y');
%Visualización despues de la deformación
subplot(1,3,2);
Ux=X+Fx;
Uy=Y+Fy;
surf(Ux,Uy,0*Ux);
view(2)
axis equal
axis ([-3,3,-1,3]);
title('Después de la deformación');
xlabel('Eje X');
ylabel('Eje Y');
%Comparacion del antes y después de la deformación
subplot(1,3,3);
hold on
plot(X,Y,'r');
plot(Ux,Uy,'b');
view(2)
axis equal
axis ([-3,3,-1,3]);
title ('Comparación');
xlabel('Eje X');
ylabel('Eje Y');
hold off7.3.1 Divergencia
%Apartado 6
clear;clc;
%Parametrización de la superficie
h=2/10;
ro=1:h:2;
tt=linspace(0.464,2.678,20);
%Creamos el mallado y pasamos a coordenas cilindricas
[U,V]=meshgrid(ro,tt);
X=U.*cos(V);
Y=U.*sin(V);
%Hacemos la divergencia
Div=(log(U).*cos(2.*V-(pi/2)))./U;
%Creamos la gráfica
surf(X,Y,Div);
view(2);
axis equal
axis([-3,3,-1,3]);
title('Divergencia del campo vectorial')
colorbar
xlabel('Eje X');
ylabel('Eje Y');
%Encontramos la divergencia maxima y minima
MaxDiv=max(Div);
MinDiv=min(Div);
fprintf('Los puntos maximos de la divergencia son: %1.5f \n',MaxDiv);
fprintf('Los puntos minimos de la divergencia son: %1.5f \n',MinDiv);7.3.2 Rotacional
%Apartado 7
clear;clc;
%Parametrizamos la superficie
h=2/10;
ro=1:h:2;
tt=linspace(0.464,2.678,20);
%Creamos el mallado y pasamos a coordenas cilindricas
[U,V]=meshgrid(ro,tt);
X=U.*cos(V);
Y=U.*sin(V);
%Hacemos el rotacional
Rot=abs((log(U).*cos(2.*V-(pi/2)))./(2.*U));
%Creamos la gráfica
surf(X,Y,Rot);
view(2);
axis equal
axis([-3,3,-1,3]);
title('Rotacional del campo vectorial')
colorbar
xlabel('Eje X');
ylabel('Eje Y');
%Encontramos los puntos que sufren mayor rotación
MaxRot=max(Rot);
fprintf('Los puntos que sufren mayor rotacion son: %1.5f \n',MaxRot);





