Diferencia entre revisiones de «Campos y deformaciones en 2D (Grupo 23B)»
(→Dibujo del campo de vectores) |
(→Dibujo del campo de vectores) |
||
| Línea 122: | Línea 122: | ||
El campo en cilíndricas es el siguiente: <math> \vec u(\rho,\theta)=\frac{\rho}{20}\sin(6(\theta-\frac{\pi}{4}))\vec e_{\rho } </math>. El campo en cartesianas nos queda: | El campo en cilíndricas es el siguiente: <math> \vec u(\rho,\theta)=\frac{\rho}{20}\sin(6(\theta-\frac{\pi}{4}))\vec e_{\rho } </math>. El campo en cartesianas nos queda: | ||
<math> \vec u(\rho,\theta)=\frac{\rho}{20}\sin(6(\theta-\frac{\pi}{4}))\cos\theta \vec i+\frac{\rho}{20}\sin(6(\theta-\frac{\pi}{4}))\sin\theta \vec j </math>. | <math> \vec u(\rho,\theta)=\frac{\rho}{20}\sin(6(\theta-\frac{\pi}{4}))\cos\theta \vec i+\frac{\rho}{20}\sin(6(\theta-\frac{\pi}{4}))\sin\theta \vec j </math>. | ||
| − | [[File:23Bapartado4.jpg| | + | [[File:23Bapartado4.jpg|312px|miniaturadeimagen|left|Dibujo del campo]] |
{{matlab|codigo= | {{matlab|codigo= | ||
clear | clear | ||
Revisión del 13:20 3 dic 2022
| Trabajo realizado por estudiantes | |
|---|---|
| Título | Campos y deformaciones en 2D (Grupo 23B) |
| Asignatura | Teoría de Campos |
| Curso | 2022-23 |
| Autores | Pablo Ramos Bartol Irene Serra García Marc Torres Vidal Teresa Chiara Vegetti Sanmamed |
| Este artículo ha sido escrito por estudiantes como parte de su evaluación en la asignatura | |
El trabajo correspondiente a nuestro grupo es el número 5, que consiste en el estudio de campos y deformaciones en dos dimensiones.
Consideraremos una placa plana que ocupa un cuarto de un anillo circular centrado en el origen y comprendido entre los radios 1 y 2, en el plano y ≥ |x|, por lo que trabajaremos en coordenadas cilíndricas. Físicamente representa la sección transversal de un sólido para el cual se desprecian las variaciones en la dirección ortogonal a la sección considerada.
En ella, vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura [math] T(x,y) [/math], que viene dada por [math] T(x,y) = x^2 + (y-1)^2 [/math], y los desplazamientos [math] \vec u(\rho,\theta) [/math], producidos por la acción de una fuerza [math] \vec u(\rho,\theta)=\frac{\rho}{20}\sin(6(\theta-\frac{\pi}{4}))\vec e_{\rho } [/math].
De esta forma, si definimos [math] \vec r_{0}(x,y)=x \vec i+y\vec j [/math] como el vector posición de los puntos de la placa antes de la deformación, la posición de cada punto [math] (x,y) [/math] de la placa después de la deformación vendrá dada por [math] \vec r_{d}(x,y)=\vec r_{0}(x,y)+\vec u(x,y) [/math].
Contenido
1 Dibujo del sólido
Comenzaremos dibujando un mallado que represente los puntos interiores del sólido, tomando los ejes en el cuadrado [-3; 3] × [-1; 3] y como paso de muestreo h = 1/10 para las variables x e y.
%limpieza de programas anteriores
clear
clc
%mallado interior placa rectangular
%espesor de la curva y sus subdivisiones
u=1:0.1:2;
%ángulos en los que se secciona la curva
v=pi/4:0.1:(3*pi)/4;
%mallado
[ro,teta]=meshgrid(u,v);
%paso de cilíndricas a cartesianas
Mx=ro.*cos(teta);
My=ro.*sin(teta);
%Mz tiene que ser una matriz nula del mismo tamaño para estar en la cota 0
mesh(Mx,My,My*0);
axis([-3,3,-1,3]);
view(2)
title('Representación del mallado')
xlabel ('Eje x')
ylabel ('Eje y')
2 Dibujo de las curvas de nivel
Ahora dibujaremos también las curvas de nivel de la temperatura, que viene dada por el campo escalar [math] T(x,y) = x^2 + (y-1)^2 [/math]. Podemos observar la variación de los colores en función de la temperatura. En la zona más fría se emplean tonos azules, mientras que en la zona más cálida se utilizan tonos amarillentos. En la gráfica, encontramos los puntos aproximados de máxima temperatura: [-1.3,1.5] y [1.4,1.4].
clear
clc
u=1:0.1:2;
v=pi/4:0.1:(3*pi)/4;
[ro,teta]=meshgrid(u,v);
Mx=ro.*cos(teta);
My=ro.*sin(teta);
mesh(Mx,My,My*0);
%campo que define la temperatura
T=Mx.^2+(My-1).^2;
%dibujamos las curvas de nivel con el comando contour
%este gráfico se coloca en la fila de arriba
subplot(2,1,1)
%aplicamos la función al mallado con un degradado de colores
surf(Mx,My,T)
%dibujamos la curva entre los ejes dados
axis([-3,3,-1,3]);
%para verlo desde arriba
view(2)
title('Campo de temperaturas');
subplot(2,1,2)
%líneas de nivel
contour(Mx,My,T)
axis([-3,3,-1,3]);
%barra de indicación de colores
colorbar
3 Cálculo y dibujo del gradiente
A continuación, calcularemos el gradiente y lo representaremos. Podemos ver gráficamente cómo los vectores resultantes son ortogonales a las curvas de nivel ahora ya conocidas. La razón de esto es que el gradiente muestra la dirección máxima de variación en cada punto: [math] \nabla T=2x\vec i+2(y-1)\vec j [/math].
clear
clc
u=1:0.1:2;
v=pi/4:0.1:(3*pi)/4;
[ro,teta]=meshgrid(u,v);
Mx=ro.*cos(teta);
My=ro.*sin(teta);
Mz=0*My;
mesh(Mx,My,Mz);
T=Mx.^2+(My-1).^2;
surf(Mx,My,T)
axis([-3,3,-1,3]);
view(2)
title('Campo de temperaturas');
contour(Mx,My,T)
axis([-3,3,-1,3]);
view(2)
hold on
colorbar
%para que se inserten los gráficos de las curvas de nivel y el gradiente en un mismo dibujo
hold on
%vectores del gradiente
Mxx=2*Mx;
Myy=2*(My-1);
%campo vectorial en 2D
quiver(Mx,My,Mxx,Myy);
%centramos los ejes
axis equal
%elegimos los limites de los ejes
axis([-3,3,-1,3]);
view(2)
title('Gradiente de T')
hold off
hold off
4 Dibujo del campo de vectores
Posteriormente, vamos a dibujar el campo de vectores en los puntos del mallado de la placa, tomando el campo dado en el enunciado. Se ha realizado un cambio de coordenadas cilíndricas a cartesianas, conociendo la expresión del vector [math]\vec e_{\rho}[/math]:
El campo en cilíndricas es el siguiente: [math] \vec u(\rho,\theta)=\frac{\rho}{20}\sin(6(\theta-\frac{\pi}{4}))\vec e_{\rho } [/math]. El campo en cartesianas nos queda: [math] \vec u(\rho,\theta)=\frac{\rho}{20}\sin(6(\theta-\frac{\pi}{4}))\cos\theta \vec i+\frac{\rho}{20}\sin(6(\theta-\frac{\pi}{4}))\sin\theta \vec j [/math].
clear
clc
u=1:0.1:2;
v=pi/4:0.1:(3*pi)/4;
[ro,teta]=meshgrid(u,v);
Mx=ro.*cos(teta);
My=ro.*sin(teta);
subplot(1,2,1);
mesh(Mx,My,My*0);
axis([-3,3,-1,3]);
view(2)
title('Campo u')
xlabel ('Eje x')
ylabel ('Eje y')
hold on
mx=(ro.*sin(6.*(teta-pi/4)).*cos(teta))/20;
my=(ro.*sin(6.*(teta-pi/4)).*sin(teta))/20;
%aplicamos el comando quiver para representar nuestro campo
quiver(Mx,My,mx,my);
axis([-3,3,-1,3]);
hold off
5 Dibujo antes y después del desplazamiento
Seguidamente, representaremos el sólido antes y después del desplazamiento dado por el campo de vectores [math] \vec u [/math]. En vista de su expresión, el campo de desplazamientos sólo varía en la dirección del eje [math] \vec e_{\rho} [/math].
clear
clc
u=1:0.1:2;
v=linspace(pi/4,3*pi/4,20);
[ro,teta]=meshgrid(u,v);
Mx=ro.*cos(teta);
My=ro.*sin(teta);
subplot(1,3,1);
%situación inicial
mesh(Mx,My,My*0);
axis([-3,3,-1,3]);
view(2)
title('Situación inicial')
mx=(ro.*sin(6.*(teta-pi/4)).*cos(teta))/20;
my=(ro.*sin(6.*(teta-pi/4)).*sin(teta))/20;
subplot(1,3,2)
%situación final después de la deformación
rx=Mx+mx;
ry=My+my;
surf(rx,ry,ry*0)
view(2)
axis([-3,3,-1,3])
title('Situación final')
%comparación
subplot(1,3,3)
hold on
plot3(Mx,My,My*0)
plot3(rx,ry,ry*0)
axis([-3,3,-1,3])
view(2)
title('Comparación')
hold off
6 Cálculo de la divergencia
A continuación, calcularemos la divergencia del campo [math] \vec u [/math], que es una medida del cambio de volumen local debido al desplazamiento:
De este modo, deducimos que si un cuerpo se desplaza en un medio elástico y la divergencia del campo correspondiente es cero, esto quiere decir que no ha cambiado su volumen. En este caso, como obtenemos una divergencia distinta de cero, afirmamos que el volumen del sólido se ve afectado por el movimiento de sus moléculas.
En la siguiente gráfica, podemos ver que los puntos en los que la divergencia es máxima son:
clear
clc
u=1:0.1:2;
v=pi/4:0.01:(3*pi/4);
[ro,teta]=meshgrid(u,v);
Mx=ro.*cos(teta);
My=ro.*sin(teta);
div=(sin(6.*(teta-pi/4)))/10;
surf(Mx,My,div);
axis([-3,3,-1,3])
view(2)
colorbar
shading interp
7 Cálculo y dibujo del rotacional
- [math]\nabla×\vec u(ρ,θ) =\frac{1}{ρ}\left|\begin{matrix} \vec e_ρ & \vec ρe_θ & \vec e_z \\ \frac{\partial}{\partial ρ} & \frac{\partial}{\partial θ} & \frac{\partial}{\partial z} \\ \ sen(θ)\frac{ρ}{10} & \ cosθ\frac{ρ^2}{5} & \ 0 \end{matrix}\right|=\frac{3cosθ}{10}\vec e_z [/math].
- [math]|\nabla×\vec u(ρ,θ)| =\frac{3cosθ}{10}[/math]
Como podemos observar los puntos que sufren un mayor rotacional son aquellos representados en color amarillo, estos tendrán una mayor capacidad de giro ya que el rotacional nos indica la capacidad que tienen los distintos puntos de nuestra placa para girar sobre otro punto determinado.
%Rotacional del campo vectorial
u=1:0.1:2;
v=0:0.1:pi;
[ro,teta]=meshgrid(u,v);
xx=ro.*cos(teta);
yy=ro.*sin(teta);
d=(cos(teta).*(3/10));
surf(xx,yy,d);
colorbar
axis([-3,3,-1,3]);
view(2)
title('Módulo del rotacional')
