<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="es">
		<id>https://mat.caminos.upm.es/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Marco.moreno</id>
		<title>MateWiki - Contribuciones del usuario [es]</title>
		<link rel="self" type="application/atom+xml" href="https://mat.caminos.upm.es/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Marco.moreno"/>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/wiki/Especial:Contribuciones/Marco.moreno"/>
		<updated>2026-04-25T03:05:16Z</updated>
		<subtitle>Contribuciones del usuario</subtitle>
		<generator>MediaWiki 1.26.2</generator>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=103984</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=103984"/>
				<updated>2025-12-11T10:28:05Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Poster */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero). Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de desplazamiento==&lt;br /&gt;
Se dibuja el '''campo de desplazamientos''' en los puntos del mallado del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar en la imagen, si que '''hay puntos''' que se mantienen '''fijos'''.&lt;br /&gt;
Podemos ver que las funciones de desplazamiento tanto vertical son: &lt;br /&gt;
::&amp;lt;math&amp;gt; H(x,y)= \frac{xy}{20}  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt; V(x,y)= \frac{-x^2}{20}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Podemos comprobar que los puntos que no '''sufren de desplazamiento''' son todos los valores &lt;br /&gt;
::&amp;lt;math&amp;gt;\frac{(x',y')}{H(x',y')}=0​&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\frac{(x',y')}{V(x',y')}=0 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
que son todos aquellos en los que &amp;lt;math&amp;gt;x=0 &amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:Campodesplazamiento2.jpg|miniaturadeimagen|derecha|700px|Figura 5: Campo de Desplazamientos]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Dominio y Mallado&lt;br /&gt;
h = 0.1; % Muestreo&lt;br /&gt;
x = 0:h:4; &lt;br /&gt;
y= 0:h:2;&lt;br /&gt;
[X,Y]=meshgrid(x,y);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Placa&lt;br /&gt;
f=@(x)x./8;     % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;   % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara lógica&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt;=g(X); &lt;br /&gt;
&lt;br /&gt;
% Cálculo del Campo de Desplazamientos u&lt;br /&gt;
U=(1/20).*X.*Y;   % Componente horizontal&lt;br /&gt;
V=-(1/20).*X.^2;  % Componente vertical&lt;br /&gt;
&lt;br /&gt;
% Filtrar&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Gráfica y ajuste&lt;br /&gt;
figure('Name', 'Campo de Desplazamientos'); &lt;br /&gt;
set(gcf,'Position',[100 100 800 500]); &lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;&lt;br /&gt;
axis([-0.5 4.5 -1 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title('Campo de Desplazamientos');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el campo vectorial u &lt;br /&gt;
quiver(X,Y,U,V,0,'r', 'LineWidth',1,'MaxHeadSize', 0.5);&lt;br /&gt;
&lt;br /&gt;
% Dibujar contorno de la placa como referencia&lt;br /&gt;
x_borde = linspace(0,4,200);&lt;br /&gt;
plot(x_borde,f(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot(x_borde,g(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k','LineWidth',1); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k','LineWidth',1); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Puntos fijos&lt;br /&gt;
% Buscamos puntos donde el desplazamiento sea (0,0)&lt;br /&gt;
% Si x=0, entonces U=0 y V=0.Por lo que toda la pared izquierda (x=0) está fija.&lt;br /&gt;
&lt;br /&gt;
plot(zeros(size(y)),y,'b.','MarkerSize',15); % Puntos azules&lt;br /&gt;
text(0.1,1,'\leftarrow Puntos Fijos (x=0)','Color','b','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::  &amp;lt;math&amp;gt;\frac{𝜕u_{y}}{𝜕_{x}}=\frac{-x}{10},\frac{𝜕u_{y}}{𝜕_{y}}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;ε_{xx}​=​\frac{y}{20},ε_{yy}​=0&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;ε_{xy}​=​ε_{yx}=\frac{1}{2}(\frac{x}{20}-\frac{x}{10})=\frac{-x}{40}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{y}{20} &amp;amp; \frac{-x}{40} \\&lt;br /&gt;
    \frac{-x}{40} &amp;amp; 0 \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:3. Tensor de tensiones σ (λ = μ = 1)&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{ij}​=λ(trε)δ_{ij}+2με_{ij}&amp;lt;/math&amp;gt; ,  &amp;lt;math&amp;gt;trε=\frac{y}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;σ_{xx}​=\frac{3y}{20} , σ_{yy}​=\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{xy}​=σ_{yx}=\frac{-x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{3y}{20} &amp;amp; \frac{-x}{20} \\&lt;br /&gt;
    \frac{-x}{20} &amp;amp; \frac{y}{20} \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:4. Divergencia&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{x}​=(\frac{∂σ_{xx}}{∂_{x}}​​+\frac{∂σ_{xy}}{∂_{y}})​​=0+0=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{y}​=(\frac{∂σ_{yx}}{∂_{x}}​​+\frac{∂σ_{yy}}{∂_{y}})​​=\frac{-1}{20}+\frac{1}{20}=0&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\vec{F}=−divσ=(0,0)&amp;lt;/math&amp;gt;, Como se puede comprobar la '''fuerza resultante es cero''' en toda la placa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|600px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Poster==&lt;br /&gt;
En el siguiente enlace podéis acceder al poster creado:&lt;br /&gt;
[https://www.canva.com/design/DAG6cq9cWK8/DTjxPfKu654JJC_0Sbo5mw/view?utm_content=DAG6cq9cWK8&amp;amp;utm_campaign=designshare&amp;amp;utm_medium=link2&amp;amp;utm_source=uniquelinks&amp;amp;utlId=h2f0186a480 Poster Placa Plana Grupo 52]&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=103953</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=103953"/>
				<updated>2025-12-10T11:07:32Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Gradiente Térmico */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero). Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de desplazamiento==&lt;br /&gt;
Se dibuja el '''campo de desplazamientos''' en los puntos del mallado del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar en la imagen, si que '''hay puntos''' que se mantienen '''fijos'''.&lt;br /&gt;
Podemos ver que las funciones de desplazamiento tanto vertical son: &lt;br /&gt;
::&amp;lt;math&amp;gt; H(x,y)= \frac{xy}{20}  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt; V(x,y)= \frac{-x^2}{20}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Podemos comprobar que los puntos que no '''sufren de desplazamiento''' son todos los valores &lt;br /&gt;
::&amp;lt;math&amp;gt;\frac{(x',y')}{H(x',y')}=0​&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\frac{(x',y')}{V(x',y')}=0 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
que son todos aquellos en los que &amp;lt;math&amp;gt;x=0 &amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:Campodesplazamiento2.jpg|miniaturadeimagen|derecha|700px|Figura 5: Campo de Desplazamientos]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Dominio y Mallado&lt;br /&gt;
h = 0.1; % Muestreo&lt;br /&gt;
x = 0:h:4; &lt;br /&gt;
y= 0:h:2;&lt;br /&gt;
[X,Y]=meshgrid(x,y);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Placa&lt;br /&gt;
f=@(x)x./8;     % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;   % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara lógica&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt;=g(X); &lt;br /&gt;
&lt;br /&gt;
% Cálculo del Campo de Desplazamientos u&lt;br /&gt;
U=(1/20).*X.*Y;   % Componente horizontal&lt;br /&gt;
V=-(1/20).*X.^2;  % Componente vertical&lt;br /&gt;
&lt;br /&gt;
% Filtrar&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Gráfica y ajuste&lt;br /&gt;
figure('Name', 'Campo de Desplazamientos'); &lt;br /&gt;
set(gcf,'Position',[100 100 800 500]); &lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;&lt;br /&gt;
axis([-0.5 4.5 -1 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title('Campo de Desplazamientos');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el campo vectorial u &lt;br /&gt;
quiver(X,Y,U,V,0,'r', 'LineWidth',1,'MaxHeadSize', 0.5);&lt;br /&gt;
&lt;br /&gt;
% Dibujar contorno de la placa como referencia&lt;br /&gt;
x_borde = linspace(0,4,200);&lt;br /&gt;
plot(x_borde,f(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot(x_borde,g(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k','LineWidth',1); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k','LineWidth',1); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Puntos fijos&lt;br /&gt;
% Buscamos puntos donde el desplazamiento sea (0,0)&lt;br /&gt;
% Si x=0, entonces U=0 y V=0.Por lo que toda la pared izquierda (x=0) está fija.&lt;br /&gt;
&lt;br /&gt;
plot(zeros(size(y)),y,'b.','MarkerSize',15); % Puntos azules&lt;br /&gt;
text(0.1,1,'\leftarrow Puntos Fijos (x=0)','Color','b','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::  &amp;lt;math&amp;gt;\frac{𝜕u_{y}}{𝜕_{x}}=\frac{-x}{10},\frac{𝜕u_{y}}{𝜕_{y}}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;ε_{xx}​=​\frac{y}{20},ε_{yy}​=0&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;ε_{xy}​=​ε_{yx}=\frac{1}{2}(\frac{x}{20}-\frac{x}{10})=\frac{-x}{40}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{y}{20} &amp;amp; \frac{-x}{40} \\&lt;br /&gt;
    \frac{-x}{40} &amp;amp; 0 \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:3. Tensor de tensiones σ (λ = μ = 1)&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{ij}​=λ(trε)δ_{ij}+2με_{ij}&amp;lt;/math&amp;gt; ,  &amp;lt;math&amp;gt;trε=\frac{y}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;σ_{xx}​=\frac{3y}{20} , σ_{yy}​=\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{xy}​=σ_{yx}=\frac{-x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{3y}{20} &amp;amp; \frac{-x}{20} \\&lt;br /&gt;
    \frac{-x}{20} &amp;amp; \frac{y}{20} \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:4. Divergencia&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{x}​=(\frac{∂σ_{xx}}{∂_{x}}​​+\frac{∂σ_{xy}}{∂_{y}})​​=0+0=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{y}​=(\frac{∂σ_{yx}}{∂_{x}}​​+\frac{∂σ_{yy}}{∂_{y}})​​=\frac{-1}{20}+\frac{1}{20}=0&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\vec{F}=−divσ=(0,0)&amp;lt;/math&amp;gt;, Como se puede comprobar la '''fuerza resultante es cero''' en toda la placa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|600px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Poster==&lt;br /&gt;
En el siguiente enlace podéis acceder al poster creado:&lt;br /&gt;
[https://www.canva.com/design/DAG6cq9cWK8/UEhhMqJAQg3hJy6G-rBHUw/view?utm_content=DAG6cq9cWK8&amp;amp;utm_campaign=designshare&amp;amp;utm_medium=link2&amp;amp;utm_source=uniquelinks&amp;amp;utlId=h569bc8df1d Poster Placa Plana Grupo 52]&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=103952</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=103952"/>
				<updated>2025-12-10T11:07:12Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Gradiente Térmico */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero). Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de desplazamiento==&lt;br /&gt;
Se dibuja el '''campo de desplazamientos''' en los puntos del mallado del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar en la imagen, si que '''hay puntos''' que se mantienen '''fijos'''.&lt;br /&gt;
Podemos ver que las funciones de desplazamiento tanto vertical son: &lt;br /&gt;
::&amp;lt;math&amp;gt; H(x,y)= \frac{xy}{20}  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt; V(x,y)= \frac{-x^2}{20}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Podemos comprobar que los puntos que no '''sufren de desplazamiento''' son todos los valores &lt;br /&gt;
::&amp;lt;math&amp;gt;\frac{(x',y')}{H(x',y')}=0​&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\frac{(x',y')}{V(x',y')}=0 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
que son todos aquellos en los que &amp;lt;math&amp;gt;x=0 &amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:Campodesplazamiento2.jpg|miniaturadeimagen|derecha|700px|Figura 5: Campo de Desplazamientos]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Dominio y Mallado&lt;br /&gt;
h = 0.1; % Muestreo&lt;br /&gt;
x = 0:h:4; &lt;br /&gt;
y= 0:h:2;&lt;br /&gt;
[X,Y]=meshgrid(x,y);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Placa&lt;br /&gt;
f=@(x)x./8;     % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;   % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara lógica&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt;=g(X); &lt;br /&gt;
&lt;br /&gt;
% Cálculo del Campo de Desplazamientos u&lt;br /&gt;
U=(1/20).*X.*Y;   % Componente horizontal&lt;br /&gt;
V=-(1/20).*X.^2;  % Componente vertical&lt;br /&gt;
&lt;br /&gt;
% Filtrar&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Gráfica y ajuste&lt;br /&gt;
figure('Name', 'Campo de Desplazamientos'); &lt;br /&gt;
set(gcf,'Position',[100 100 800 500]); &lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;&lt;br /&gt;
axis([-0.5 4.5 -1 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title('Campo de Desplazamientos');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el campo vectorial u &lt;br /&gt;
quiver(X,Y,U,V,0,'r', 'LineWidth',1,'MaxHeadSize', 0.5);&lt;br /&gt;
&lt;br /&gt;
% Dibujar contorno de la placa como referencia&lt;br /&gt;
x_borde = linspace(0,4,200);&lt;br /&gt;
plot(x_borde,f(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot(x_borde,g(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k','LineWidth',1); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k','LineWidth',1); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Puntos fijos&lt;br /&gt;
% Buscamos puntos donde el desplazamiento sea (0,0)&lt;br /&gt;
% Si x=0, entonces U=0 y V=0.Por lo que toda la pared izquierda (x=0) está fija.&lt;br /&gt;
&lt;br /&gt;
plot(zeros(size(y)),y,'b.','MarkerSize',15); % Puntos azules&lt;br /&gt;
text(0.1,1,'\leftarrow Puntos Fijos (x=0)','Color','b','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::  &amp;lt;math&amp;gt;\frac{𝜕u_{y}}{𝜕_{x}}=\frac{-x}{10},\frac{𝜕u_{y}}{𝜕_{y}}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;ε_{xx}​=​\frac{y}{20},ε_{yy}​=0&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;ε_{xy}​=​ε_{yx}=\frac{1}{2}(\frac{x}{20}-\frac{x}{10})=\frac{-x}{40}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{y}{20} &amp;amp; \frac{-x}{40} \\&lt;br /&gt;
    \frac{-x}{40} &amp;amp; 0 \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:3. Tensor de tensiones σ (λ = μ = 1)&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{ij}​=λ(trε)δ_{ij}+2με_{ij}&amp;lt;/math&amp;gt; ,  &amp;lt;math&amp;gt;trε=\frac{y}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;σ_{xx}​=\frac{3y}{20} , σ_{yy}​=\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{xy}​=σ_{yx}=\frac{-x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{3y}{20} &amp;amp; \frac{-x}{20} \\&lt;br /&gt;
    \frac{-x}{20} &amp;amp; \frac{y}{20} \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:4. Divergencia&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{x}​=(\frac{∂σ_{xx}}{∂_{x}}​​+\frac{∂σ_{xy}}{∂_{y}})​​=0+0=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{y}​=(\frac{∂σ_{yx}}{∂_{x}}​​+\frac{∂σ_{yy}}{∂_{y}})​​=\frac{-1}{20}+\frac{1}{20}=0&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\vec{F}=−divσ=(0,0)&amp;lt;/math&amp;gt;, Como se puede comprobar la '''fuerza resultante es cero''' en toda la placa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|600px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Poster==&lt;br /&gt;
En el siguiente enlace podéis acceder al poster creado:&lt;br /&gt;
[https://www.canva.com/design/DAG6cq9cWK8/UEhhMqJAQg3hJy6G-rBHUw/view?utm_content=DAG6cq9cWK8&amp;amp;utm_campaign=designshare&amp;amp;utm_medium=link2&amp;amp;utm_source=uniquelinks&amp;amp;utlId=h569bc8df1d Poster Placa Plana Grupo 52]&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=103949</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=103949"/>
				<updated>2025-12-10T11:02:33Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Gradiente Térmico */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero). Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de desplazamiento==&lt;br /&gt;
Se dibuja el '''campo de desplazamientos''' en los puntos del mallado del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar en la imagen, si que '''hay puntos''' que se mantienen '''fijos'''.&lt;br /&gt;
Podemos ver que las funciones de desplazamiento tanto vertical son: &lt;br /&gt;
::&amp;lt;math&amp;gt; H(x,y)= \frac{xy}{20}  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt; V(x,y)= \frac{-x^2}{20}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Podemos comprobar que los puntos que no '''sufren de desplazamiento''' son todos los valores &lt;br /&gt;
::&amp;lt;math&amp;gt;\frac{(x',y')}{H(x',y')}=0​&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\frac{(x',y')}{V(x',y')}=0 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
que son todos aquellos en los que &amp;lt;math&amp;gt;x=0 &amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:Campodesplazamiento2.jpg|miniaturadeimagen|derecha|700px|Figura 5: Campo de Desplazamientos]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Dominio y Mallado&lt;br /&gt;
h = 0.1; % Muestreo&lt;br /&gt;
x = 0:h:4; &lt;br /&gt;
y= 0:h:2;&lt;br /&gt;
[X,Y]=meshgrid(x,y);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Placa&lt;br /&gt;
f=@(x)x./8;     % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;   % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara lógica&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt;=g(X); &lt;br /&gt;
&lt;br /&gt;
% Cálculo del Campo de Desplazamientos u&lt;br /&gt;
U=(1/20).*X.*Y;   % Componente horizontal&lt;br /&gt;
V=-(1/20).*X.^2;  % Componente vertical&lt;br /&gt;
&lt;br /&gt;
% Filtrar&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Gráfica y ajuste&lt;br /&gt;
figure('Name', 'Campo de Desplazamientos'); &lt;br /&gt;
set(gcf,'Position',[100 100 800 500]); &lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;&lt;br /&gt;
axis([-0.5 4.5 -1 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title('Campo de Desplazamientos');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el campo vectorial u &lt;br /&gt;
quiver(X,Y,U,V,0,'r', 'LineWidth',1,'MaxHeadSize', 0.5);&lt;br /&gt;
&lt;br /&gt;
% Dibujar contorno de la placa como referencia&lt;br /&gt;
x_borde = linspace(0,4,200);&lt;br /&gt;
plot(x_borde,f(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot(x_borde,g(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k','LineWidth',1); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k','LineWidth',1); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Puntos fijos&lt;br /&gt;
% Buscamos puntos donde el desplazamiento sea (0,0)&lt;br /&gt;
% Si x=0, entonces U=0 y V=0.Por lo que toda la pared izquierda (x=0) está fija.&lt;br /&gt;
&lt;br /&gt;
plot(zeros(size(y)),y,'b.','MarkerSize',15); % Puntos azules&lt;br /&gt;
text(0.1,1,'\leftarrow Puntos Fijos (x=0)','Color','b','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::  &amp;lt;math&amp;gt;\frac{𝜕u_{y}}{𝜕_{x}}=\frac{-x}{10},\frac{𝜕u_{y}}{𝜕_{y}}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;ε_{xx}​=​\frac{y}{20},ε_{yy}​=0&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;ε_{xy}​=​ε_{yx}=\frac{1}{2}(\frac{x}{20}-\frac{x}{10})=\frac{-x}{40}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{y}{20} &amp;amp; \frac{-x}{40} \\&lt;br /&gt;
    \frac{-x}{40} &amp;amp; 0 \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:3. Tensor de tensiones σ (λ = μ = 1)&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{ij}​=λ(trε)δ_{ij}+2με_{ij}&amp;lt;/math&amp;gt; ,  &amp;lt;math&amp;gt;trε=\frac{y}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;σ_{xx}​=\frac{3y}{20} , σ_{yy}​=\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{xy}​=σ_{yx}=\frac{-x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{3y}{20} &amp;amp; \frac{-x}{20} \\&lt;br /&gt;
    \frac{-x}{20} &amp;amp; \frac{y}{20} \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:4. Divergencia&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{x}​=(\frac{∂σ_{xx}}{∂_{x}}​​+\frac{∂σ_{xy}}{∂_{y}})​​=0+0=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{y}​=(\frac{∂σ_{yx}}{∂_{x}}​​+\frac{∂σ_{yy}}{∂_{y}})​​=\frac{-1}{20}+\frac{1}{20}=0&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\vec{F}=−divσ=(0,0)&amp;lt;/math&amp;gt;, Como se puede comprobar la '''fuerza resultante es cero''' en toda la placa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|600px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Poster==&lt;br /&gt;
En el siguiente enlace podéis acceder al poster creado:&lt;br /&gt;
[https://www.canva.com/design/DAG6cq9cWK8/UEhhMqJAQg3hJy6G-rBHUw/view?utm_content=DAG6cq9cWK8&amp;amp;utm_campaign=designshare&amp;amp;utm_medium=link2&amp;amp;utm_source=uniquelinks&amp;amp;utlId=h569bc8df1d Poster Placa Plana Grupo 52]&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=103947</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=103947"/>
				<updated>2025-12-10T10:17:03Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Masa total */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de desplazamiento==&lt;br /&gt;
Se dibuja el '''campo de desplazamientos''' en los puntos del mallado del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar en la imagen, si que '''hay puntos''' que se mantienen '''fijos'''.&lt;br /&gt;
Podemos ver que las funciones de desplazamiento tanto vertical son: &lt;br /&gt;
::&amp;lt;math&amp;gt; H(x,y)= \frac{xy}{20}  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt; V(x,y)= \frac{-x^2}{20}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Podemos comprobar que los puntos que no '''sufren de desplazamiento''' son todos los valores &lt;br /&gt;
::&amp;lt;math&amp;gt;\frac{(x',y')}{H(x',y')}=0​&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\frac{(x',y')}{V(x',y')}=0 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
que son todos aquellos en los que &amp;lt;math&amp;gt;x=0 &amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:Campodesplazamiento2.jpg|miniaturadeimagen|derecha|700px|Figura 5: Campo de Desplazamientos]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Dominio y Mallado&lt;br /&gt;
h = 0.1; % Muestreo&lt;br /&gt;
x = 0:h:4; &lt;br /&gt;
y= 0:h:2;&lt;br /&gt;
[X,Y]=meshgrid(x,y);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Placa&lt;br /&gt;
f=@(x)x./8;     % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;   % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara lógica&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt;=g(X); &lt;br /&gt;
&lt;br /&gt;
% Cálculo del Campo de Desplazamientos u&lt;br /&gt;
U=(1/20).*X.*Y;   % Componente horizontal&lt;br /&gt;
V=-(1/20).*X.^2;  % Componente vertical&lt;br /&gt;
&lt;br /&gt;
% Filtrar&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Gráfica y ajuste&lt;br /&gt;
figure('Name', 'Campo de Desplazamientos'); &lt;br /&gt;
set(gcf,'Position',[100 100 800 500]); &lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;&lt;br /&gt;
axis([-0.5 4.5 -1 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title('Campo de Desplazamientos');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el campo vectorial u &lt;br /&gt;
quiver(X,Y,U,V,0,'r', 'LineWidth',1,'MaxHeadSize', 0.5);&lt;br /&gt;
&lt;br /&gt;
% Dibujar contorno de la placa como referencia&lt;br /&gt;
x_borde = linspace(0,4,200);&lt;br /&gt;
plot(x_borde,f(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot(x_borde,g(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k','LineWidth',1); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k','LineWidth',1); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Puntos fijos&lt;br /&gt;
% Buscamos puntos donde el desplazamiento sea (0,0)&lt;br /&gt;
% Si x=0, entonces U=0 y V=0.Por lo que toda la pared izquierda (x=0) está fija.&lt;br /&gt;
&lt;br /&gt;
plot(zeros(size(y)),y,'b.','MarkerSize',15); % Puntos azules&lt;br /&gt;
text(0.1,1,'\leftarrow Puntos Fijos (x=0)','Color','b','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::  &amp;lt;math&amp;gt;\frac{𝜕u_{y}}{𝜕_{x}}=\frac{-x}{10},\frac{𝜕u_{y}}{𝜕_{y}}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;ε_{xx}​=​\frac{y}{20},ε_{yy}​=0&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;ε_{xy}​=​ε_{yx}=\frac{1}{2}(\frac{x}{20}-\frac{x}{10})=\frac{-x}{40}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{y}{20} &amp;amp; \frac{-x}{40} \\&lt;br /&gt;
    \frac{-x}{40} &amp;amp; 0 \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:3. Tensor de tensiones σ (λ = μ = 1)&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{ij}​=λ(trε)δ_{ij}+2με_{ij}&amp;lt;/math&amp;gt; ,  &amp;lt;math&amp;gt;trε=\frac{y}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;σ_{xx}​=\frac{3y}{20} , σ_{yy}​=\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{xy}​=σ_{yx}=\frac{-x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{3y}{20} &amp;amp; \frac{-x}{20} \\&lt;br /&gt;
    \frac{-x}{20} &amp;amp; \frac{y}{20} \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:4. Divergencia&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{x}​=(\frac{∂σ_{xx}}{∂_{x}}​​+\frac{∂σ_{xy}}{∂_{y}})​​=0+0=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{y}​=(\frac{∂σ_{yx}}{∂_{x}}​​+\frac{∂σ_{yy}}{∂_{y}})​​=\frac{-1}{20}+\frac{1}{20}=0&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\vec{F}=−divσ=(0,0)&amp;lt;/math&amp;gt;, Como se puede comprobar la '''fuerza resultante es cero''' en toda la placa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|600px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Poster==&lt;br /&gt;
En el siguiente enlace podéis acceder al poster creado:&lt;br /&gt;
[https://www.canva.com/design/DAG6cq9cWK8/UEhhMqJAQg3hJy6G-rBHUw/view?utm_content=DAG6cq9cWK8&amp;amp;utm_campaign=designshare&amp;amp;utm_medium=link2&amp;amp;utm_source=uniquelinks&amp;amp;utlId=h569bc8df1d Poster Placa Plana Grupo 52]&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=103942</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=103942"/>
				<updated>2025-12-10T08:26:00Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Masa total */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de desplazamiento==&lt;br /&gt;
Se dibuja el '''campo de desplazamientos''' en los puntos del mallado del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar en la imagen, si que '''hay puntos''' que se mantienen '''fijos'''.&lt;br /&gt;
Podemos ver que las funciones de desplazamiento tanto vertical son: &lt;br /&gt;
::&amp;lt;math&amp;gt; H(x,y)= \frac{xy}{20}  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt; V(x,y)= \frac{-x^2}{20}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Podemos comprobar que los puntos que no '''sufren de desplazamiento''' son todos los valores &lt;br /&gt;
::&amp;lt;math&amp;gt;\frac{(x',y')}{H(x',y')}=0​&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\frac{(x',y')}{V(x',y')}=0 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
que son todos aquellos en los que &amp;lt;math&amp;gt;x=0 &amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:Campodesplazamiento2.jpg|miniaturadeimagen|derecha|700px|Figura 5: Campo de Desplazamientos]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Dominio y Mallado&lt;br /&gt;
h = 0.1; % Muestreo&lt;br /&gt;
x = 0:h:4; &lt;br /&gt;
y= 0:h:2;&lt;br /&gt;
[X,Y]=meshgrid(x,y);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Placa&lt;br /&gt;
f=@(x)x./8;     % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;   % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara lógica&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt;=g(X); &lt;br /&gt;
&lt;br /&gt;
% Cálculo del Campo de Desplazamientos u&lt;br /&gt;
U=(1/20).*X.*Y;   % Componente horizontal&lt;br /&gt;
V=-(1/20).*X.^2;  % Componente vertical&lt;br /&gt;
&lt;br /&gt;
% Filtrar&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Gráfica y ajuste&lt;br /&gt;
figure('Name', 'Campo de Desplazamientos'); &lt;br /&gt;
set(gcf,'Position',[100 100 800 500]); &lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;&lt;br /&gt;
axis([-0.5 4.5 -1 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title('Campo de Desplazamientos');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el campo vectorial u &lt;br /&gt;
quiver(X,Y,U,V,0,'r', 'LineWidth',1,'MaxHeadSize', 0.5);&lt;br /&gt;
&lt;br /&gt;
% Dibujar contorno de la placa como referencia&lt;br /&gt;
x_borde = linspace(0,4,200);&lt;br /&gt;
plot(x_borde,f(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot(x_borde,g(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k','LineWidth',1); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k','LineWidth',1); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Puntos fijos&lt;br /&gt;
% Buscamos puntos donde el desplazamiento sea (0,0)&lt;br /&gt;
% Si x=0, entonces U=0 y V=0.Por lo que toda la pared izquierda (x=0) está fija.&lt;br /&gt;
&lt;br /&gt;
plot(zeros(size(y)),y,'b.','MarkerSize',15); % Puntos azules&lt;br /&gt;
text(0.1,1,'\leftarrow Puntos Fijos (x=0)','Color','b','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::  &amp;lt;math&amp;gt;\frac{𝜕u_{y}}{𝜕_{x}}=\frac{-x}{10},\frac{𝜕u_{y}}{𝜕_{y}}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;ε_{xx}​=​\frac{y}{20},ε_{yy}​=0&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;ε_{xy}​=​ε_{yx}=\frac{1}{2}(\frac{x}{20}-\frac{x}{10})=\frac{-x}{40}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{y}{20} &amp;amp; \frac{-x}{40} \\&lt;br /&gt;
    \frac{-x}{40} &amp;amp; 0 \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:3. Tensor de tensiones σ (λ = μ = 1)&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{ij}​=λ(trε)δ_{ij}+2με_{ij}&amp;lt;/math&amp;gt; ,  &amp;lt;math&amp;gt;trε=\frac{y}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;σ_{xx}​=\frac{3y}{20} , σ_{yy}​=\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{xy}​=σ_{yx}=\frac{-x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{3y}{20} &amp;amp; \frac{-x}{20} \\&lt;br /&gt;
    \frac{-x}{20} &amp;amp; \frac{y}{20} \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:4. Divergencia&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{x}​=(\frac{∂σ_{xx}}{∂_{x}}​​+\frac{∂σ_{xy}}{∂_{y}})​​=0+0=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{y}​=(\frac{∂σ_{yx}}{∂_{x}}​​+\frac{∂σ_{yy}}{∂_{y}})​​=\frac{-1}{20}+\frac{1}{20}=0&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\vec{F}=−divσ=(0,0)&amp;lt;/math&amp;gt;, Como se puede comprobar la '''fuerza resultante es cero''' en toda la placa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|600px|Figura 10]]&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Poster==&lt;br /&gt;
En el siguiente enlace podéis acceder al poster creado:&lt;br /&gt;
[https://www.canva.com/design/DAG6cq9cWK8/UEhhMqJAQg3hJy6G-rBHUw/view?utm_content=DAG6cq9cWK8&amp;amp;utm_campaign=designshare&amp;amp;utm_medium=link2&amp;amp;utm_source=uniquelinks&amp;amp;utlId=h569bc8df1d Poster Placa Plana Grupo 52]&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=103941</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=103941"/>
				<updated>2025-12-10T08:25:32Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Masa total */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de desplazamiento==&lt;br /&gt;
Se dibuja el '''campo de desplazamientos''' en los puntos del mallado del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar en la imagen, si que '''hay puntos''' que se mantienen '''fijos'''.&lt;br /&gt;
Podemos ver que las funciones de desplazamiento tanto vertical son: &lt;br /&gt;
::&amp;lt;math&amp;gt; H(x,y)= \frac{xy}{20}  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt; V(x,y)= \frac{-x^2}{20}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Podemos comprobar que los puntos que no '''sufren de desplazamiento''' son todos los valores &lt;br /&gt;
::&amp;lt;math&amp;gt;\frac{(x',y')}{H(x',y')}=0​&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\frac{(x',y')}{V(x',y')}=0 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
que son todos aquellos en los que &amp;lt;math&amp;gt;x=0 &amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:Campodesplazamiento2.jpg|miniaturadeimagen|derecha|700px|Figura 5: Campo de Desplazamientos]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Dominio y Mallado&lt;br /&gt;
h = 0.1; % Muestreo&lt;br /&gt;
x = 0:h:4; &lt;br /&gt;
y= 0:h:2;&lt;br /&gt;
[X,Y]=meshgrid(x,y);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Placa&lt;br /&gt;
f=@(x)x./8;     % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;   % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara lógica&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt;=g(X); &lt;br /&gt;
&lt;br /&gt;
% Cálculo del Campo de Desplazamientos u&lt;br /&gt;
U=(1/20).*X.*Y;   % Componente horizontal&lt;br /&gt;
V=-(1/20).*X.^2;  % Componente vertical&lt;br /&gt;
&lt;br /&gt;
% Filtrar&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Gráfica y ajuste&lt;br /&gt;
figure('Name', 'Campo de Desplazamientos'); &lt;br /&gt;
set(gcf,'Position',[100 100 800 500]); &lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;&lt;br /&gt;
axis([-0.5 4.5 -1 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title('Campo de Desplazamientos');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el campo vectorial u &lt;br /&gt;
quiver(X,Y,U,V,0,'r', 'LineWidth',1,'MaxHeadSize', 0.5);&lt;br /&gt;
&lt;br /&gt;
% Dibujar contorno de la placa como referencia&lt;br /&gt;
x_borde = linspace(0,4,200);&lt;br /&gt;
plot(x_borde,f(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot(x_borde,g(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k','LineWidth',1); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k','LineWidth',1); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Puntos fijos&lt;br /&gt;
% Buscamos puntos donde el desplazamiento sea (0,0)&lt;br /&gt;
% Si x=0, entonces U=0 y V=0.Por lo que toda la pared izquierda (x=0) está fija.&lt;br /&gt;
&lt;br /&gt;
plot(zeros(size(y)),y,'b.','MarkerSize',15); % Puntos azules&lt;br /&gt;
text(0.1,1,'\leftarrow Puntos Fijos (x=0)','Color','b','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::  &amp;lt;math&amp;gt;\frac{𝜕u_{y}}{𝜕_{x}}=\frac{-x}{10},\frac{𝜕u_{y}}{𝜕_{y}}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;ε_{xx}​=​\frac{y}{20},ε_{yy}​=0&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;ε_{xy}​=​ε_{yx}=\frac{1}{2}(\frac{x}{20}-\frac{x}{10})=\frac{-x}{40}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{y}{20} &amp;amp; \frac{-x}{40} \\&lt;br /&gt;
    \frac{-x}{40} &amp;amp; 0 \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:3. Tensor de tensiones σ (λ = μ = 1)&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{ij}​=λ(trε)δ_{ij}+2με_{ij}&amp;lt;/math&amp;gt; ,  &amp;lt;math&amp;gt;trε=\frac{y}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;σ_{xx}​=\frac{3y}{20} , σ_{yy}​=\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{xy}​=σ_{yx}=\frac{-x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{3y}{20} &amp;amp; \frac{-x}{20} \\&lt;br /&gt;
    \frac{-x}{20} &amp;amp; \frac{y}{20} \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:4. Divergencia&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{x}​=(\frac{∂σ_{xx}}{∂_{x}}​​+\frac{∂σ_{xy}}{∂_{y}})​​=0+0=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{y}​=(\frac{∂σ_{yx}}{∂_{x}}​​+\frac{∂σ_{yy}}{∂_{y}})​​=\frac{-1}{20}+\frac{1}{20}=0&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\vec{F}=−divσ=(0,0)&amp;lt;/math&amp;gt;, Como se puede comprobar la '''fuerza resultante es cero''' en toda la placa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Poster==&lt;br /&gt;
En el siguiente enlace podéis acceder al poster creado:&lt;br /&gt;
[https://www.canva.com/design/DAG6cq9cWK8/UEhhMqJAQg3hJy6G-rBHUw/view?utm_content=DAG6cq9cWK8&amp;amp;utm_campaign=designshare&amp;amp;utm_medium=link2&amp;amp;utm_source=uniquelinks&amp;amp;utlId=h569bc8df1d Poster Placa Plana Grupo 52]&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=103940</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=103940"/>
				<updated>2025-12-10T08:24:28Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Masa total */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de desplazamiento==&lt;br /&gt;
Se dibuja el '''campo de desplazamientos''' en los puntos del mallado del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar en la imagen, si que '''hay puntos''' que se mantienen '''fijos'''.&lt;br /&gt;
Podemos ver que las funciones de desplazamiento tanto vertical son: &lt;br /&gt;
::&amp;lt;math&amp;gt; H(x,y)= \frac{xy}{20}  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt; V(x,y)= \frac{-x^2}{20}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Podemos comprobar que los puntos que no '''sufren de desplazamiento''' son todos los valores &lt;br /&gt;
::&amp;lt;math&amp;gt;\frac{(x',y')}{H(x',y')}=0​&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\frac{(x',y')}{V(x',y')}=0 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
que son todos aquellos en los que &amp;lt;math&amp;gt;x=0 &amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:Campodesplazamiento2.jpg|miniaturadeimagen|derecha|700px|Figura 5: Campo de Desplazamientos]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Dominio y Mallado&lt;br /&gt;
h = 0.1; % Muestreo&lt;br /&gt;
x = 0:h:4; &lt;br /&gt;
y= 0:h:2;&lt;br /&gt;
[X,Y]=meshgrid(x,y);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Placa&lt;br /&gt;
f=@(x)x./8;     % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;   % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara lógica&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt;=g(X); &lt;br /&gt;
&lt;br /&gt;
% Cálculo del Campo de Desplazamientos u&lt;br /&gt;
U=(1/20).*X.*Y;   % Componente horizontal&lt;br /&gt;
V=-(1/20).*X.^2;  % Componente vertical&lt;br /&gt;
&lt;br /&gt;
% Filtrar&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Gráfica y ajuste&lt;br /&gt;
figure('Name', 'Campo de Desplazamientos'); &lt;br /&gt;
set(gcf,'Position',[100 100 800 500]); &lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;&lt;br /&gt;
axis([-0.5 4.5 -1 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title('Campo de Desplazamientos');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el campo vectorial u &lt;br /&gt;
quiver(X,Y,U,V,0,'r', 'LineWidth',1,'MaxHeadSize', 0.5);&lt;br /&gt;
&lt;br /&gt;
% Dibujar contorno de la placa como referencia&lt;br /&gt;
x_borde = linspace(0,4,200);&lt;br /&gt;
plot(x_borde,f(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot(x_borde,g(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k','LineWidth',1); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k','LineWidth',1); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Puntos fijos&lt;br /&gt;
% Buscamos puntos donde el desplazamiento sea (0,0)&lt;br /&gt;
% Si x=0, entonces U=0 y V=0.Por lo que toda la pared izquierda (x=0) está fija.&lt;br /&gt;
&lt;br /&gt;
plot(zeros(size(y)),y,'b.','MarkerSize',15); % Puntos azules&lt;br /&gt;
text(0.1,1,'\leftarrow Puntos Fijos (x=0)','Color','b','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::  &amp;lt;math&amp;gt;\frac{𝜕u_{y}}{𝜕_{x}}=\frac{-x}{10},\frac{𝜕u_{y}}{𝜕_{y}}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;ε_{xx}​=​\frac{y}{20},ε_{yy}​=0&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;ε_{xy}​=​ε_{yx}=\frac{1}{2}(\frac{x}{20}-\frac{x}{10})=\frac{-x}{40}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{y}{20} &amp;amp; \frac{-x}{40} \\&lt;br /&gt;
    \frac{-x}{40} &amp;amp; 0 \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:3. Tensor de tensiones σ (λ = μ = 1)&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{ij}​=λ(trε)δ_{ij}+2με_{ij}&amp;lt;/math&amp;gt; ,  &amp;lt;math&amp;gt;trε=\frac{y}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;σ_{xx}​=\frac{3y}{20} , σ_{yy}​=\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{xy}​=σ_{yx}=\frac{-x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{3y}{20} &amp;amp; \frac{-x}{20} \\&lt;br /&gt;
    \frac{-x}{20} &amp;amp; \frac{y}{20} \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:4. Divergencia&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{x}​=(\frac{∂σ_{xx}}{∂_{x}}​​+\frac{∂σ_{xy}}{∂_{y}})​​=0+0=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{y}​=(\frac{∂σ_{yx}}{∂_{x}}​​+\frac{∂σ_{yy}}{∂_{y}})​​=\frac{-1}{20}+\frac{1}{20}=0&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\vec{F}=−divσ=(0,0)&amp;lt;/math&amp;gt;, Como se puede comprobar la '''fuerza resultante es cero''' en toda la placa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Poster==&lt;br /&gt;
En el siguiente enlace podéis acceder al poster creado:&lt;br /&gt;
[https://www.canva.com/design/DAG6cq9cWK8/UEhhMqJAQg3hJy6G-rBHUw/view?utm_content=DAG6cq9cWK8&amp;amp;utm_campaign=designshare&amp;amp;utm_medium=link2&amp;amp;utm_source=uniquelinks&amp;amp;utlId=h569bc8df1d Poster Placa Plana Grupo 52]&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=103939</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=103939"/>
				<updated>2025-12-10T08:21:30Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Masa total */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de desplazamiento==&lt;br /&gt;
Se dibuja el '''campo de desplazamientos''' en los puntos del mallado del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar en la imagen, si que '''hay puntos''' que se mantienen '''fijos'''.&lt;br /&gt;
Podemos ver que las funciones de desplazamiento tanto vertical son: &lt;br /&gt;
::&amp;lt;math&amp;gt; H(x,y)= \frac{xy}{20}  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt; V(x,y)= \frac{-x^2}{20}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Podemos comprobar que los puntos que no '''sufren de desplazamiento''' son todos los valores &lt;br /&gt;
::&amp;lt;math&amp;gt;\frac{(x',y')}{H(x',y')}=0​&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\frac{(x',y')}{V(x',y')}=0 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
que son todos aquellos en los que &amp;lt;math&amp;gt;x=0 &amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:Campodesplazamiento2.jpg|miniaturadeimagen|derecha|700px|Figura 5: Campo de Desplazamientos]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Dominio y Mallado&lt;br /&gt;
h = 0.1; % Muestreo&lt;br /&gt;
x = 0:h:4; &lt;br /&gt;
y= 0:h:2;&lt;br /&gt;
[X,Y]=meshgrid(x,y);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Placa&lt;br /&gt;
f=@(x)x./8;     % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;   % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara lógica&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt;=g(X); &lt;br /&gt;
&lt;br /&gt;
% Cálculo del Campo de Desplazamientos u&lt;br /&gt;
U=(1/20).*X.*Y;   % Componente horizontal&lt;br /&gt;
V=-(1/20).*X.^2;  % Componente vertical&lt;br /&gt;
&lt;br /&gt;
% Filtrar&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Gráfica y ajuste&lt;br /&gt;
figure('Name', 'Campo de Desplazamientos'); &lt;br /&gt;
set(gcf,'Position',[100 100 800 500]); &lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;&lt;br /&gt;
axis([-0.5 4.5 -1 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title('Campo de Desplazamientos');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el campo vectorial u &lt;br /&gt;
quiver(X,Y,U,V,0,'r', 'LineWidth',1,'MaxHeadSize', 0.5);&lt;br /&gt;
&lt;br /&gt;
% Dibujar contorno de la placa como referencia&lt;br /&gt;
x_borde = linspace(0,4,200);&lt;br /&gt;
plot(x_borde,f(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot(x_borde,g(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k','LineWidth',1); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k','LineWidth',1); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Puntos fijos&lt;br /&gt;
% Buscamos puntos donde el desplazamiento sea (0,0)&lt;br /&gt;
% Si x=0, entonces U=0 y V=0.Por lo que toda la pared izquierda (x=0) está fija.&lt;br /&gt;
&lt;br /&gt;
plot(zeros(size(y)),y,'b.','MarkerSize',15); % Puntos azules&lt;br /&gt;
text(0.1,1,'\leftarrow Puntos Fijos (x=0)','Color','b','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::  &amp;lt;math&amp;gt;\frac{𝜕u_{y}}{𝜕_{x}}=\frac{-x}{10},\frac{𝜕u_{y}}{𝜕_{y}}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;ε_{xx}​=​\frac{y}{20},ε_{yy}​=0&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;ε_{xy}​=​ε_{yx}=\frac{1}{2}(\frac{x}{20}-\frac{x}{10})=\frac{-x}{40}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{y}{20} &amp;amp; \frac{-x}{40} \\&lt;br /&gt;
    \frac{-x}{40} &amp;amp; 0 \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:3. Tensor de tensiones σ (λ = μ = 1)&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{ij}​=λ(trε)δ_{ij}+2με_{ij}&amp;lt;/math&amp;gt; ,  &amp;lt;math&amp;gt;trε=\frac{y}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;σ_{xx}​=\frac{3y}{20} , σ_{yy}​=\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{xy}​=σ_{yx}=\frac{-x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{3y}{20} &amp;amp; \frac{-x}{20} \\&lt;br /&gt;
    \frac{-x}{20} &amp;amp; \frac{y}{20} \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:4. Divergencia&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{x}​=(\frac{∂σ_{xx}}{∂_{x}}​​+\frac{∂σ_{xy}}{∂_{y}})​​=0+0=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{y}​=(\frac{∂σ_{yx}}{∂_{x}}​​+\frac{∂σ_{yy}}{∂_{y}})​​=\frac{-1}{20}+\frac{1}{20}=0&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\vec{F}=−divσ=(0,0)&amp;lt;/math&amp;gt;, Como se puede comprobar la '''fuerza resultante es cero''' en toda la placa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Poster==&lt;br /&gt;
En el siguiente enlace podéis acceder al poster creado:&lt;br /&gt;
[https://www.canva.com/design/DAG6cq9cWK8/UEhhMqJAQg3hJy6G-rBHUw/view?utm_content=DAG6cq9cWK8&amp;amp;utm_campaign=designshare&amp;amp;utm_medium=link2&amp;amp;utm_source=uniquelinks&amp;amp;utlId=h569bc8df1d Poster Placa Plana Grupo 52]&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=103909</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=103909"/>
				<updated>2025-12-09T09:06:13Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Poster */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de desplazamiento==&lt;br /&gt;
Se dibuja el '''campo de desplazamientos''' en los puntos del mallado del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar en la imagen, si que '''hay puntos''' que se mantienen '''fijos'''.&lt;br /&gt;
Podemos ver que las funciones de desplazamiento tanto vertical son: &lt;br /&gt;
::&amp;lt;math&amp;gt; H(x,y)= \frac{xy}{20}  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt; V(x,y)= \frac{-x^2}{20}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Podemos comprobar que los puntos que no '''sufren de desplazamiento''' son todos los valores &lt;br /&gt;
::&amp;lt;math&amp;gt;\frac{(x',y')}{H(x',y')}=0​&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\frac{(x',y')}{V(x',y')}=0 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
que son todos aquellos en los que &amp;lt;math&amp;gt;x=0 &amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:Campodesplazamiento2.jpg|miniaturadeimagen|derecha|700px|Figura 5: Campo de Desplazamientos]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Dominio y Mallado&lt;br /&gt;
h = 0.1; % Muestreo&lt;br /&gt;
x = 0:h:4; &lt;br /&gt;
y= 0:h:2;&lt;br /&gt;
[X,Y]=meshgrid(x,y);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Placa&lt;br /&gt;
f=@(x)x./8;     % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;   % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara lógica&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt;=g(X); &lt;br /&gt;
&lt;br /&gt;
% Cálculo del Campo de Desplazamientos u&lt;br /&gt;
U=(1/20).*X.*Y;   % Componente horizontal&lt;br /&gt;
V=-(1/20).*X.^2;  % Componente vertical&lt;br /&gt;
&lt;br /&gt;
% Filtrar&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Gráfica y ajuste&lt;br /&gt;
figure('Name', 'Campo de Desplazamientos'); &lt;br /&gt;
set(gcf,'Position',[100 100 800 500]); &lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;&lt;br /&gt;
axis([-0.5 4.5 -1 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title('Campo de Desplazamientos');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el campo vectorial u &lt;br /&gt;
quiver(X,Y,U,V,0,'r', 'LineWidth',1,'MaxHeadSize', 0.5);&lt;br /&gt;
&lt;br /&gt;
% Dibujar contorno de la placa como referencia&lt;br /&gt;
x_borde = linspace(0,4,200);&lt;br /&gt;
plot(x_borde,f(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot(x_borde,g(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k','LineWidth',1); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k','LineWidth',1); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Puntos fijos&lt;br /&gt;
% Buscamos puntos donde el desplazamiento sea (0,0)&lt;br /&gt;
% Si x=0, entonces U=0 y V=0.Por lo que toda la pared izquierda (x=0) está fija.&lt;br /&gt;
&lt;br /&gt;
plot(zeros(size(y)),y,'b.','MarkerSize',15); % Puntos azules&lt;br /&gt;
text(0.1,1,'\leftarrow Puntos Fijos (x=0)','Color','b','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::  &amp;lt;math&amp;gt;\frac{𝜕u_{y}}{𝜕_{x}}=\frac{-x}{10},\frac{𝜕u_{y}}{𝜕_{y}}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;ε_{xx}​=​\frac{y}{20},ε_{yy}​=0&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;ε_{xy}​=​ε_{yx}=\frac{1}{2}(\frac{x}{20}-\frac{x}{10})=\frac{-x}{40}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{y}{20} &amp;amp; \frac{-x}{40} \\&lt;br /&gt;
    \frac{-x}{40} &amp;amp; 0 \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:3. Tensor de tensiones σ (λ = μ = 1)&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{ij}​=λ(trε)δ_{ij}+2με_{ij}&amp;lt;/math&amp;gt; ,  &amp;lt;math&amp;gt;trε=\frac{y}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;σ_{xx}​=\frac{3y}{20} , σ_{yy}​=\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{xy}​=σ_{yx}=\frac{-x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{3y}{20} &amp;amp; \frac{-x}{20} \\&lt;br /&gt;
    \frac{-x}{20} &amp;amp; \frac{y}{20} \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:4. Divergencia&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{x}​=(\frac{∂σ_{xx}}{∂_{x}}​​+\frac{∂σ_{xy}}{∂_{y}})​​=0+0=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{y}​=(\frac{∂σ_{yx}}{∂_{x}}​​+\frac{∂σ_{yy}}{∂_{y}})​​=\frac{-1}{20}+\frac{1}{20}=0&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\vec{F}=−divσ=(0,0)&amp;lt;/math&amp;gt;, Como se puede comprobar la '''fuerza resultante es cero''' en toda la placa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Poster==&lt;br /&gt;
En el siguiente enlace podéis acceder al poster creado:&lt;br /&gt;
[https://www.canva.com/design/DAG6cq9cWK8/UEhhMqJAQg3hJy6G-rBHUw/view?utm_content=DAG6cq9cWK8&amp;amp;utm_campaign=designshare&amp;amp;utm_medium=link2&amp;amp;utm_source=uniquelinks&amp;amp;utlId=h569bc8df1d Poster Placa Plana Grupo 52]&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=103852</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=103852"/>
				<updated>2025-12-08T15:19:13Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Tensor deformaciones */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de desplazamiento==&lt;br /&gt;
Se dibuja el '''campo de desplazamientos''' en los puntos del mallado del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar en la imagen, si que '''hay puntos''' que se mantienen '''fijos'''.&lt;br /&gt;
Podemos ver que las funciones de desplazamiento tanto vertical son: &lt;br /&gt;
::&amp;lt;math&amp;gt; H(x,y)= \frac{xy}{20}  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt; V(x,y)= \frac{-x^2}{20}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Podemos comprobar que los puntos que no '''sufren de desplazamiento''' son todos los valores &lt;br /&gt;
::&amp;lt;math&amp;gt;\frac{(x',y')}{H(x',y')}=0​&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\frac{(x',y')}{V(x',y')}=0 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
que son todos aquellos en los que &amp;lt;math&amp;gt;x=0 &amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:Campodesplazamiento2.jpg|miniaturadeimagen|derecha|700px|Figura 5: Campo de Desplazamientos]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Dominio y Mallado&lt;br /&gt;
h = 0.1; % Muestreo&lt;br /&gt;
x = 0:h:4; &lt;br /&gt;
y= 0:h:2;&lt;br /&gt;
[X,Y]=meshgrid(x,y);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Placa&lt;br /&gt;
f=@(x)x./8;     % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;   % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara lógica&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt;=g(X); &lt;br /&gt;
&lt;br /&gt;
% Cálculo del Campo de Desplazamientos u&lt;br /&gt;
U=(1/20).*X.*Y;   % Componente horizontal&lt;br /&gt;
V=-(1/20).*X.^2;  % Componente vertical&lt;br /&gt;
&lt;br /&gt;
% Filtrar&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Gráfica y ajuste&lt;br /&gt;
figure('Name', 'Campo de Desplazamientos'); &lt;br /&gt;
set(gcf,'Position',[100 100 800 500]); &lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;&lt;br /&gt;
axis([-0.5 4.5 -1 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title('Campo de Desplazamientos');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el campo vectorial u &lt;br /&gt;
quiver(X,Y,U,V,0,'r', 'LineWidth',1,'MaxHeadSize', 0.5);&lt;br /&gt;
&lt;br /&gt;
% Dibujar contorno de la placa como referencia&lt;br /&gt;
x_borde = linspace(0,4,200);&lt;br /&gt;
plot(x_borde,f(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot(x_borde,g(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k','LineWidth',1); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k','LineWidth',1); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Puntos fijos&lt;br /&gt;
% Buscamos puntos donde el desplazamiento sea (0,0)&lt;br /&gt;
% Si x=0, entonces U=0 y V=0.Por lo que toda la pared izquierda (x=0) está fija.&lt;br /&gt;
&lt;br /&gt;
plot(zeros(size(y)),y,'b.','MarkerSize',15); % Puntos azules&lt;br /&gt;
text(0.1,1,'\leftarrow Puntos Fijos (x=0)','Color','b','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::  &amp;lt;math&amp;gt;\frac{𝜕u_{y}}{𝜕_{x}}=\frac{-x}{10},\frac{𝜕u_{y}}{𝜕_{y}}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;ε_{xx}​=​\frac{y}{20},ε_{yy}​=0&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;ε_{xy}​=​ε_{yx}=\frac{1}{2}(\frac{x}{20}-\frac{x}{10})=\frac{-x}{40}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{y}{20} &amp;amp; \frac{-x}{40} \\&lt;br /&gt;
    \frac{-x}{40} &amp;amp; 0 \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:3. Tensor de tensiones σ (λ = μ = 1)&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{ij}​=λ(trε)δ_{ij}+2με_{ij}&amp;lt;/math&amp;gt; ,  &amp;lt;math&amp;gt;trε=\frac{y}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;σ_{xx}​=\frac{3y}{20} , σ_{yy}​=\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{xy}​=σ_{yx}=\frac{-x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{3y}{20} &amp;amp; \frac{-x}{20} \\&lt;br /&gt;
    \frac{-x}{20} &amp;amp; \frac{y}{20} \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:4. Divergencia&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{x}​=(\frac{∂σ_{xx}}{∂_{x}}​​+\frac{∂σ_{xy}}{∂_{y}})​​=0+0=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{y}​=(\frac{∂σ_{yx}}{∂_{x}}​​+\frac{∂σ_{yy}}{∂_{y}})​​=\frac{-1}{20}+\frac{1}{20}=0&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\vec{F}=−divσ=(0,0)&amp;lt;/math&amp;gt;, Como se puede comprobar la '''fuerza resultante es cero''' en toda la placa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Poster==&lt;br /&gt;
En el siguiente enlace podéis acceder al poster creado:&lt;br /&gt;
[https://www.canva.com/design/DAG6cq9cWK8/NCcR9uVESYva_Sh35Ob8-A/view?utm_content=DAG6cq9cWK8&amp;amp;utm_campaign=designshare&amp;amp;utm_medium=link2&amp;amp;utm_source=uniquelinks&amp;amp;utlId=h4be8379630 Poster Placa Plana Grupo 52]&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=103851</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=103851"/>
				<updated>2025-12-08T15:18:08Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de desplazamiento==&lt;br /&gt;
Se dibuja el '''campo de desplazamientos''' en los puntos del mallado del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar en la imagen, si que '''hay puntos''' que se mantienen '''fijos'''.&lt;br /&gt;
Podemos ver que las funciones de desplazamiento tanto vertical son: &lt;br /&gt;
::&amp;lt;math&amp;gt; H(x,y)= \frac{xy}{20}  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt; V(x,y)= \frac{-x^2}{20}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Podemos comprobar que los puntos que no '''sufren de desplazamiento''' son todos los valores &lt;br /&gt;
::&amp;lt;math&amp;gt;\frac{(x',y')}{H(x',y')}=0​&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\frac{(x',y')}{V(x',y')}=0 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
que son todos aquellos en los que &amp;lt;math&amp;gt;x=0 &amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:Campodesplazamiento2.jpg|miniaturadeimagen|derecha|700px|Figura 5: Campo de Desplazamientos]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Dominio y Mallado&lt;br /&gt;
h = 0.1; % Muestreo&lt;br /&gt;
x = 0:h:4; &lt;br /&gt;
y= 0:h:2;&lt;br /&gt;
[X,Y]=meshgrid(x,y);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Placa&lt;br /&gt;
f=@(x)x./8;     % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;   % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara lógica&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt;=g(X); &lt;br /&gt;
&lt;br /&gt;
% Cálculo del Campo de Desplazamientos u&lt;br /&gt;
U=(1/20).*X.*Y;   % Componente horizontal&lt;br /&gt;
V=-(1/20).*X.^2;  % Componente vertical&lt;br /&gt;
&lt;br /&gt;
% Filtrar&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Gráfica y ajuste&lt;br /&gt;
figure('Name', 'Campo de Desplazamientos'); &lt;br /&gt;
set(gcf,'Position',[100 100 800 500]); &lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;&lt;br /&gt;
axis([-0.5 4.5 -1 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title('Campo de Desplazamientos');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el campo vectorial u &lt;br /&gt;
quiver(X,Y,U,V,0,'r', 'LineWidth',1,'MaxHeadSize', 0.5);&lt;br /&gt;
&lt;br /&gt;
% Dibujar contorno de la placa como referencia&lt;br /&gt;
x_borde = linspace(0,4,200);&lt;br /&gt;
plot(x_borde,f(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot(x_borde,g(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k','LineWidth',1); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k','LineWidth',1); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Puntos fijos&lt;br /&gt;
% Buscamos puntos donde el desplazamiento sea (0,0)&lt;br /&gt;
% Si x=0, entonces U=0 y V=0.Por lo que toda la pared izquierda (x=0) está fija.&lt;br /&gt;
&lt;br /&gt;
plot(zeros(size(y)),y,'b.','MarkerSize',15); % Puntos azules&lt;br /&gt;
text(0.1,1,'\leftarrow Puntos Fijos (x=0)','Color','b','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::  &amp;lt;math&amp;gt;\frac{𝜕u_{y}}{𝜕_{x}}=\frac{-x}{10},\frac{𝜕u_{y}}{𝜕_{y}}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;ε_{xx}​=​\frac{y}{20},ε_{yy}​=0&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;ε_{xy}​=​ε_{yx}=\frac{1}{2}(\frac{x}{20}-\frac{x}{10})=\frac{-x}{40}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{y}{20} &amp;amp; \frac{-x}{40} \\&lt;br /&gt;
    \frac{-x}{40} &amp;amp; 0 \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:3. Tensor de tensiones σ (λ = μ = 1)&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{ij}​=λ(trε)δ_{ij}+2με_{ij}&amp;lt;/math&amp;gt; ,  &amp;lt;math&amp;gt;trε=\frac{y}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;σ_{xx}​=\frac{3y}{20} , σ_{yy}​=\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{xy}​=σ_{yx}=\frac{-x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{3y}{20} &amp;amp; \frac{-x}{20} \\&lt;br /&gt;
    \frac{-x}{20} &amp;amp; \frac{y}{20} \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:4. Divergencia&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{x}​=(\frac{∂σ_{xx}}{∂_{x}}​​+\frac{∂σ_{xy}}{∂_{y}})​​=0+0=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{y}​=(\frac{∂σ_{yx}}{∂_{x}}​​+\frac{∂σ_{yy}}{∂_{y}})​​=\frac{-1}{20}+\frac{1}{20}=0&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\vec{F}=−divσ=(0,0)&amp;lt;/math&amp;gt;, Como se puede comprobar la '''fuerza resultante es cero''' en toda la placa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Poster==&lt;br /&gt;
En el siguiente enlace podéis acceder al poster creado:&lt;br /&gt;
[https://www.canva.com/design/DAG6cq9cWK8/NCcR9uVESYva_Sh35Ob8-A/view?utm_content=DAG6cq9cWK8&amp;amp;utm_campaign=designshare&amp;amp;utm_medium=link2&amp;amp;utm_source=uniquelinks&amp;amp;utlId=h4be8379630 Poster Placa Plana Grupo 52]&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=103796</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=103796"/>
				<updated>2025-12-07T23:37:24Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Divergencia */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
==Poster==&lt;br /&gt;
En el siguiente enlace podéis acceder al poster creado:&lt;br /&gt;
[https://www.canva.com/design/DAG6cq9cWK8/NCcR9uVESYva_Sh35Ob8-A/view?utm_content=DAG6cq9cWK8&amp;amp;utm_campaign=designshare&amp;amp;utm_medium=link2&amp;amp;utm_source=uniquelinks&amp;amp;utlId=h4be8379630 Poster Placa Plana Grupo 52]&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de desplazamiento==&lt;br /&gt;
Se dibuja el '''campo de desplazamientos''' en los puntos del mallado del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar en la imagen, si que '''hay puntos''' que se mantienen '''fijos'''.&lt;br /&gt;
Podemos ver que las funciones de desplazamiento tanto vertical son: &lt;br /&gt;
::&amp;lt;math&amp;gt; H(x,y)= \frac{xy}{20}  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt; V(x,y)= \frac{-x^2}{20}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Podemos comprobar que los puntos que no '''sufren de desplazamiento''' son todos los valores &lt;br /&gt;
::&amp;lt;math&amp;gt;\frac{(x',y')}{H(x',y')}=0​&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\frac{(x',y')}{V(x',y')}=0 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
que son todos aquellos en los que &amp;lt;math&amp;gt;x=0 &amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:Campodesplazamiento2.jpg|miniaturadeimagen|derecha|700px|Figura 5: Campo de Desplazamientos]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Dominio y Mallado&lt;br /&gt;
h = 0.1; % Muestreo&lt;br /&gt;
x = 0:h:4; &lt;br /&gt;
y= 0:h:2;&lt;br /&gt;
[X,Y]=meshgrid(x,y);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Placa&lt;br /&gt;
f=@(x)x./8;     % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;   % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara lógica&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt;=g(X); &lt;br /&gt;
&lt;br /&gt;
% Cálculo del Campo de Desplazamientos u&lt;br /&gt;
U=(1/20).*X.*Y;   % Componente horizontal&lt;br /&gt;
V=-(1/20).*X.^2;  % Componente vertical&lt;br /&gt;
&lt;br /&gt;
% Filtrar&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Gráfica y ajuste&lt;br /&gt;
figure('Name', 'Campo de Desplazamientos'); &lt;br /&gt;
set(gcf,'Position',[100 100 800 500]); &lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;&lt;br /&gt;
axis([-0.5 4.5 -1 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title('Campo de Desplazamientos');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el campo vectorial u &lt;br /&gt;
quiver(X,Y,U,V,0,'r', 'LineWidth',1,'MaxHeadSize', 0.5);&lt;br /&gt;
&lt;br /&gt;
% Dibujar contorno de la placa como referencia&lt;br /&gt;
x_borde = linspace(0,4,200);&lt;br /&gt;
plot(x_borde,f(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot(x_borde,g(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k','LineWidth',1); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k','LineWidth',1); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Puntos fijos&lt;br /&gt;
% Buscamos puntos donde el desplazamiento sea (0,0)&lt;br /&gt;
% Si x=0, entonces U=0 y V=0.Por lo que toda la pared izquierda (x=0) está fija.&lt;br /&gt;
&lt;br /&gt;
plot(zeros(size(y)),y,'b.','MarkerSize',15); % Puntos azules&lt;br /&gt;
text(0.1,1,'\leftarrow Puntos Fijos (x=0)','Color','b','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::  &amp;lt;math&amp;gt;\frac{𝜕u_{y}}{𝜕_{x}}=\frac{-x}{10},\frac{𝜕u_{y}}{𝜕_{y}}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;ε_{xx}​=​\frac{y}{20},ε_{yy}​=0&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;ε_{xy}​=​ε_{yx}=\frac{1}{2}(\frac{x}{20}-\frac{x}{10})=\frac{-x}{40}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{y}{20} &amp;amp; \frac{-x}{40} \\&lt;br /&gt;
    \frac{-x}{40} &amp;amp; 0 \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:3. Tensor de tensiones σ (λ = μ = 1)&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{ij}​=λ(trε)δ_{ij}+2με_{ij}&amp;lt;/math&amp;gt; ,  &amp;lt;math&amp;gt;trε=\frac{y}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;σ_{xx}​=\frac{3y}{20} , σ_{yy}​=\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{xy}​=σ_{yx}=\frac{-x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{3y}{20} &amp;amp; \frac{-x}{20} \\&lt;br /&gt;
    \frac{-x}{20} &amp;amp; \frac{y}{20} \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:4. Divergencia&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{x}​=(\frac{∂σ_{xx}}{∂_{x}}​​+\frac{∂σ_{xy}}{∂_{y}})​​=0+0=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{y}​=(\frac{∂σ_{yx}}{∂_{x}}​​+\frac{∂σ_{yy}}{∂_{y}})​​=\frac{-1}{20}+\frac{1}{20}=0&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\vec{F}=−divσ=(0,0)&amp;lt;/math&amp;gt;, Como se puede comprobar la '''fuerza resultante es cero''' en toda la placa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=103173</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=103173"/>
				<updated>2025-12-07T10:36:54Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
==Poster==&lt;br /&gt;
En el siguiente enlace podéis acceder al poster creado:&lt;br /&gt;
[https://www.canva.com/design/DAG6cq9cWK8/NCcR9uVESYva_Sh35Ob8-A/view?utm_content=DAG6cq9cWK8&amp;amp;utm_campaign=designshare&amp;amp;utm_medium=link2&amp;amp;utm_source=uniquelinks&amp;amp;utlId=h4be8379630 Poster Placa Plana Grupo 52]&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de desplazamiento==&lt;br /&gt;
Se dibuja el '''campo de desplazamientos''' en los puntos del mallado del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar en la imagen, si que '''hay puntos''' que se mantienen '''fijos'''.&lt;br /&gt;
Podemos ver que las funciones de desplazamiento tanto vertical son: &lt;br /&gt;
::&amp;lt;math&amp;gt; H(x,y)= \frac{xy}{20}  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt; V(x,y)= \frac{-x^2}{20}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Podemos comprobar que los puntos que no '''sufren de desplazamiento''' son todos los valores &lt;br /&gt;
::&amp;lt;math&amp;gt;\frac{(x',y')}{H(x',y')}=0​&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\frac{(x',y')}{V(x',y')}=0 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
que son todos aquellos en los que &amp;lt;math&amp;gt;x=0 &amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:Campodesplazamiento2.jpg|miniaturadeimagen|derecha|700px|Figura 5: Campo de Desplazamientos]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Dominio y Mallado&lt;br /&gt;
h = 0.1; % Muestreo&lt;br /&gt;
x = 0:h:4; &lt;br /&gt;
y= 0:h:2;&lt;br /&gt;
[X,Y]=meshgrid(x,y);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Placa&lt;br /&gt;
f=@(x)x./8;     % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;   % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara lógica&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt;=g(X); &lt;br /&gt;
&lt;br /&gt;
% Cálculo del Campo de Desplazamientos u&lt;br /&gt;
U=(1/20).*X.*Y;   % Componente horizontal&lt;br /&gt;
V=-(1/20).*X.^2;  % Componente vertical&lt;br /&gt;
&lt;br /&gt;
% Filtrar&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Gráfica y ajuste&lt;br /&gt;
figure('Name', 'Campo de Desplazamientos'); &lt;br /&gt;
set(gcf,'Position',[100 100 800 500]); &lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;&lt;br /&gt;
axis([-0.5 4.5 -1 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title('Campo de Desplazamientos');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el campo vectorial u &lt;br /&gt;
quiver(X,Y,U,V,0,'r', 'LineWidth',1,'MaxHeadSize', 0.5);&lt;br /&gt;
&lt;br /&gt;
% Dibujar contorno de la placa como referencia&lt;br /&gt;
x_borde = linspace(0,4,200);&lt;br /&gt;
plot(x_borde,f(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot(x_borde,g(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k','LineWidth',1); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k','LineWidth',1); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Puntos fijos&lt;br /&gt;
% Buscamos puntos donde el desplazamiento sea (0,0)&lt;br /&gt;
% Si x=0, entonces U=0 y V=0.Por lo que toda la pared izquierda (x=0) está fija.&lt;br /&gt;
&lt;br /&gt;
plot(zeros(size(y)),y,'b.','MarkerSize',15); % Puntos azules&lt;br /&gt;
text(0.1,1,'\leftarrow Puntos Fijos (x=0)','Color','b','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::  &amp;lt;math&amp;gt;\frac{𝜕u_{y}}{𝜕_{x}}=\frac{-x}{10},\frac{𝜕u_{y}}{𝜕_{y}}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;ε_{xx}​=​\frac{y}{20},ε_{yy}​=0&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;ε_{xy}​=​ε_{yx}=\frac{1}{2}(\frac{x}{20}-\frac{x}{10})=\frac{-x}{40}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{y}{20} &amp;amp; \frac{-x}{40} \\&lt;br /&gt;
    \frac{-x}{40} &amp;amp; 0 \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:3. Tensor de tensiones σ (λ = μ = 1)&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{ij}​=λ(trε)δ_{ij}+2με_{ij}&amp;lt;/math&amp;gt; ,  &amp;lt;math&amp;gt;trε=\frac{y}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;σ_{xx}​=\frac{3y}{20} , σ_{yy}​=\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{xy}​=σ_{yx}=\frac{-x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{3y}{20} &amp;amp; \frac{-x}{20} \\&lt;br /&gt;
    \frac{-x}{20} &amp;amp; \frac{y}{20} \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:4. Divergencia&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{x}​=(\frac{∂σ_{xx}}{∂_{x}}​​+\frac{∂σ_{xy}}{∂_{y}})​​=0+0=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{y}​=(\frac{∂σ_{yx}}{∂_{x}}​​+\frac{∂σ_{yy}}{∂_{y}})​​=\frac{-1}{20}+\frac{1}{20}=0&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\vec{F}=−divσ=(0,0)&amp;lt;/math&amp;gt;, Como se puede comprobar la '''fuerza resultante es cero''' en toda la placa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=95838</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=95838"/>
				<updated>2025-12-03T10:29:19Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Masa total */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de desplazamiento==&lt;br /&gt;
Se dibuja el '''campo de desplazamientos''' en los puntos del mallado del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar en la imagen, si que '''hay puntos''' que se mantienen '''fijos'''.&lt;br /&gt;
Podemos ver que las funciones de desplazamiento tanto vertical son: &lt;br /&gt;
::&amp;lt;math&amp;gt; H(x,y)= \frac{xy}{20}  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt; V(x,y)= \frac{-x^2}{20}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Podemos comprobar que los puntos que no '''sufren de desplazamiento''' son todos los valores &lt;br /&gt;
::&amp;lt;math&amp;gt;\frac{(x',y')}{H(x',y')}=0​&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\frac{(x',y')}{V(x',y')}=0 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
que son todos aquellos en los que &amp;lt;math&amp;gt;x=0 &amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:Campodesplazamiento2.jpg|miniaturadeimagen|derecha|700px|Figura 5: Campo de Desplazamientos]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Dominio y Mallado&lt;br /&gt;
h = 0.1; % Muestreo&lt;br /&gt;
x = 0:h:4; &lt;br /&gt;
y= 0:h:2;&lt;br /&gt;
[X,Y]=meshgrid(x,y);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Placa&lt;br /&gt;
f=@(x)x./8;     % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;   % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara lógica&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt;=g(X); &lt;br /&gt;
&lt;br /&gt;
% Cálculo del Campo de Desplazamientos u&lt;br /&gt;
U=(1/20).*X.*Y;   % Componente horizontal&lt;br /&gt;
V=-(1/20).*X.^2;  % Componente vertical&lt;br /&gt;
&lt;br /&gt;
% Filtrar&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Gráfica y ajuste&lt;br /&gt;
figure('Name', 'Campo de Desplazamientos'); &lt;br /&gt;
set(gcf,'Position',[100 100 800 500]); &lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;&lt;br /&gt;
axis([-0.5 4.5 -1 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title('Campo de Desplazamientos');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el campo vectorial u &lt;br /&gt;
quiver(X,Y,U,V,0,'r', 'LineWidth',1,'MaxHeadSize', 0.5);&lt;br /&gt;
&lt;br /&gt;
% Dibujar contorno de la placa como referencia&lt;br /&gt;
x_borde = linspace(0,4,200);&lt;br /&gt;
plot(x_borde,f(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot(x_borde,g(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k','LineWidth',1); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k','LineWidth',1); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Puntos fijos&lt;br /&gt;
% Buscamos puntos donde el desplazamiento sea (0,0)&lt;br /&gt;
% Si x=0, entonces U=0 y V=0.Por lo que toda la pared izquierda (x=0) está fija.&lt;br /&gt;
&lt;br /&gt;
plot(zeros(size(y)),y,'b.','MarkerSize',15); % Puntos azules&lt;br /&gt;
text(0.1,1,'\leftarrow Puntos Fijos (x=0)','Color','b','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::  &amp;lt;math&amp;gt;\frac{𝜕u_{y}}{𝜕_{x}}=\frac{-x}{10},\frac{𝜕u_{y}}{𝜕_{y}}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;ε_{xx}​=​\frac{y}{20},ε_{yy}​=0&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;ε_{xy}​=​ε_{yx}=\frac{1}{2}(\frac{x}{20}-\frac{x}{10})=\frac{-x}{40}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{y}{20} &amp;amp; \frac{-x}{40} \\&lt;br /&gt;
    \frac{-x}{40} &amp;amp; 0 \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:3. Tensor de tensiones σ (λ = μ = 1)&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{ij}​=λ(trε)δ_{ij}+2με_{ij}&amp;lt;/math&amp;gt; ,  &amp;lt;math&amp;gt;trε=\frac{y}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;σ_{xx}​=\frac{3y}{20} , σ_{yy}​=\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{xy}​=σ_{yx}=\frac{-x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{3y}{20} &amp;amp; \frac{-x}{20} \\&lt;br /&gt;
    \frac{-x}{20} &amp;amp; \frac{y}{20} \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:4. Divergencia&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{x}​=(\frac{∂σ_{xx}}{∂_{x}}​​+\frac{∂σ_{xy}}{∂_{y}})​​=0+0=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{y}​=(\frac{∂σ_{yx}}{∂_{x}}​​+\frac{∂σ_{yy}}{∂_{y}})​​=\frac{-1}{20}+\frac{1}{20}=0&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\vec{F}=−divσ=(0,0)&amp;lt;/math&amp;gt;, Como se puede comprobar la '''fuerza resultante es cero''' en toda la placa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=95803</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=95803"/>
				<updated>2025-12-03T10:12:44Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de desplazamiento==&lt;br /&gt;
Se dibuja el '''campo de desplazamientos''' en los puntos del mallado del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar en la imagen, si que '''hay puntos''' que se mantienen '''fijos'''.&lt;br /&gt;
Podemos ver que las funciones de desplazamiento tanto vertical son: &lt;br /&gt;
::&amp;lt;math&amp;gt; H(x,y)= \frac{xy}{20}  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt; V(x,y)= \frac{-x^2}{20}&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Podemos comprobar que los puntos que no '''sufren de desplazamiento''' son todos los valores &lt;br /&gt;
::&amp;lt;math&amp;gt;\frac{(x',y')}{H(x',y')}=0​&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;\frac{(x',y')}{V(x',y')}=0 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
que son todos aquellos en los que &amp;lt;math&amp;gt;x=0 &amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:Campodesplazamiento2.jpg|miniaturadeimagen|derecha|700px|Figura 5: Campo de Desplazamientos]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Dominio y Mallado&lt;br /&gt;
h = 0.1; % Muestreo&lt;br /&gt;
x = 0:h:4; &lt;br /&gt;
y= 0:h:2;&lt;br /&gt;
[X,Y]=meshgrid(x,y);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Placa&lt;br /&gt;
f=@(x)x./8;     % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;   % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara lógica&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt;=g(X); &lt;br /&gt;
&lt;br /&gt;
% Cálculo del Campo de Desplazamientos u&lt;br /&gt;
U=(1/20).*X.*Y;   % Componente horizontal&lt;br /&gt;
V=-(1/20).*X.^2;  % Componente vertical&lt;br /&gt;
&lt;br /&gt;
% Filtrar&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Gráfica y ajuste&lt;br /&gt;
figure('Name', 'Campo de Desplazamientos'); &lt;br /&gt;
set(gcf,'Position',[100 100 800 500]); &lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;&lt;br /&gt;
axis([-0.5 4.5 -1 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title('Campo de Desplazamientos');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el campo vectorial u &lt;br /&gt;
quiver(X,Y,U,V,0,'r', 'LineWidth',1,'MaxHeadSize', 0.5);&lt;br /&gt;
&lt;br /&gt;
% Dibujar contorno de la placa como referencia&lt;br /&gt;
x_borde = linspace(0,4,200);&lt;br /&gt;
plot(x_borde,f(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot(x_borde,g(x_borde),'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k','LineWidth',1); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k','LineWidth',1); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Puntos fijos&lt;br /&gt;
% Buscamos puntos donde el desplazamiento sea (0,0)&lt;br /&gt;
% Si x=0, entonces U=0 y V=0.Por lo que toda la pared izquierda (x=0) está fija.&lt;br /&gt;
&lt;br /&gt;
plot(zeros(size(y)),y,'b.','MarkerSize',15); % Puntos azules&lt;br /&gt;
text(0.1,1,'\leftarrow Puntos Fijos (x=0)','Color','b','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::  &amp;lt;math&amp;gt;\frac{𝜕u_{y}}{𝜕_{x}}=\frac{-x}{10},\frac{𝜕u_{y}}{𝜕_{y}}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;ε_{xx}​=​\frac{y}{20},ε_{yy}​=0&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;ε_{xy}​=​ε_{yx}=\frac{1}{2}(\frac{x}{20}-\frac{x}{10})=\frac{-x}{40}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{y}{20} &amp;amp; \frac{-x}{40} \\&lt;br /&gt;
    \frac{-x}{40} &amp;amp; 0 \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:3. Tensor de tensiones σ (λ = μ = 1)&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{ij}​=λ(trε)δ_{ij}+2με_{ij}&amp;lt;/math&amp;gt; ,  &amp;lt;math&amp;gt;trε=\frac{y}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;σ_{xx}​=\frac{3y}{20} , σ_{yy}​=\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{xy}​=σ_{yx}=\frac{-x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{3y}{20} &amp;amp; \frac{-x}{20} \\&lt;br /&gt;
    \frac{-x}{20} &amp;amp; \frac{y}{20} \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:4. Divergencia&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{x}​=(\frac{∂σ_{xx}}{∂_{x}}​​+\frac{∂σ_{xy}}{∂_{y}})​​=0+0=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{y}​=(\frac{∂σ_{yx}}{∂_{x}}​​+\frac{∂σ_{yy}}{∂_{y}})​​=\frac{-1}{20}+\frac{1}{20}=0&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\vec{F}=−divσ=(0,0)&amp;lt;/math&amp;gt;, Como se puede comprobar la '''fuerza resultante es cero''' en toda la placa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=95758</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=95758"/>
				<updated>2025-12-03T09:57:46Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Gradiente Térmico */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::  &amp;lt;math&amp;gt;\frac{𝜕u_{y}}{𝜕_{x}}=\frac{-x}{10},\frac{𝜕u_{y}}{𝜕_{y}}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;ε_{xx}​=​\frac{y}{20},ε_{yy}​=0&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;ε_{xy}​=​ε_{yx}=\frac{1}{2}(\frac{x}{20}-\frac{x}{10})=\frac{-x}{40}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{y}{20} &amp;amp; \frac{-x}{40} \\&lt;br /&gt;
    \frac{-x}{40} &amp;amp; 0 \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:3. Tensor de tensiones σ (λ = μ = 1)&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{ij}​=λ(trε)δ_{ij}+2με_{ij}&amp;lt;/math&amp;gt; ,  &amp;lt;math&amp;gt;trε=\frac{y}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;σ_{xx}​=\frac{3y}{20} , σ_{yy}​=\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{xy}​=σ_{yx}=\frac{-x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{3y}{20} &amp;amp; \frac{-x}{20} \\&lt;br /&gt;
    \frac{-x}{20} &amp;amp; \frac{y}{20} \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:4. Divergencia&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{x}​=(\frac{∂σ_{xx}}{∂_{x}}​​+\frac{∂σ_{xy}}{∂_{y}})​​=0+0=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{y}​=(\frac{∂σ_{yx}}{∂_{x}}​​+\frac{∂σ_{yy}}{∂_{y}})​​=\frac{-1}{20}+\frac{1}{20}=0&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\vec{F}=−divσ=(0,0)&amp;lt;/math&amp;gt;, Como se puede comprobar la '''fuerza resultante es cero''' en toda la placa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94306</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94306"/>
				<updated>2025-12-02T11:19:17Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Campo de Fuerzas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::  &amp;lt;math&amp;gt;\frac{𝜕u_{y}}{𝜕_{x}}=\frac{-x}{10},\frac{𝜕u_{y}}{𝜕_{y}}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;ε_{xx}​=​\frac{y}{20},ε_{yy}​=0&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;ε_{xy}​=​ε_{yx}=\frac{1}{2}(\frac{x}{20}-\frac{x}{10})=\frac{-x}{40}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{y}{20} &amp;amp; \frac{-x}{40} \\&lt;br /&gt;
    \frac{-x}{40} &amp;amp; 0 \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:3. Tensor de tensiones σ (λ = μ = 1)&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{ij}​=λ(trε)δ_{ij}+2με_{ij}&amp;lt;/math&amp;gt; ,  &amp;lt;math&amp;gt;trε=\frac{y}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;σ_{xx}​=\frac{3y}{20} , σ_{yy}​=\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{xy}​=σ_{yx}=\frac{-x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{3y}{20} &amp;amp; \frac{-x}{20} \\&lt;br /&gt;
    \frac{-x}{20} &amp;amp; \frac{y}{20} \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:4. Divergencia&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{x}​=(\frac{∂σ_{xx}}{∂_{x}}​​+\frac{∂σ_{xy}}{∂_{y}})​​=0+0=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{y}​=(\frac{∂σ_{yx}}{∂_{x}}​​+\frac{∂σ_{yy}}{∂_{y}})​​=\frac{-1}{20}+\frac{1}{20}=0&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\vec{F}=−divσ=(0,0)&amp;lt;/math&amp;gt;, Como se puede comprobar la '''fuerza resultante es cero''' en toda la placa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94305</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94305"/>
				<updated>2025-12-02T11:18:53Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Campo de Fuerzas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::  &amp;lt;math&amp;gt;\frac{𝜕u_{y}}{𝜕_{x}}=\frac{-x}{10},\frac{𝜕u_{y}}{𝜕_{y}}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;ε_{xx}​=​\frac{y}{20},ε_{yy}​=0&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;ε_{xy}​=​ε_{yx}=\frac{1}{2}(\frac{x}{20}-\frac{x}{10})=\frac{-x}{40}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{y}{20} &amp;amp; \frac{-x}{40} \\&lt;br /&gt;
    \frac{-x}{40} &amp;amp; 0 \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:3. Tensor de tensiones σ (λ = μ = 1)&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{ij}​=λ(trε)δ_{ij}+2με_{ij}&amp;lt;/math&amp;gt; ,  &amp;lt;math&amp;gt;trε=\frac{y}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;σ_{xx}​=\frac{3y}{20} , σ_{yy}​=\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{xy}​=σ_{yx}=\frac{-x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{3y}{20} &amp;amp; \frac{-x}{20} \\&lt;br /&gt;
    \frac{-x}{20} &amp;amp; \frac{y}{20} \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:4. Divergencia&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{x}​=(\frac{∂σ_{xx}}{∂_{x}}​​+\frac{∂σ_{xy}}{∂_{y}})​​=0+0=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{y}​=(\frac{∂σ_{yx}}{∂_{x}}​​+\frac{∂σ_{yy}}{∂_{y}})​​=\frac{-1}{20}+\frac{1}{20}=0&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\vecF=−divσ=(0,0)&amp;lt;/math&amp;gt;, Como se puede comprobar la '''fuerza resultante es cero''' en toda la placa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94297</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94297"/>
				<updated>2025-12-02T11:15:29Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Campo de Fuerzas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::  &amp;lt;math&amp;gt;\frac{𝜕u_{y}}{𝜕_{x}}=\frac{-x}{10},\frac{𝜕u_{y}}{𝜕_{y}}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;ε_{xx}​=​\frac{y}{20},ε_{yy}​=0&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;ε_{xy}​=​ε_{yx}=\frac{1}{2}(\frac{x}{20}-\frac{x}{10})=\frac{-x}{40}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{y}{20} &amp;amp; \frac{-x}{40} \\&lt;br /&gt;
    \frac{-x}{40} &amp;amp; 0 \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:3. Tensor de tensiones σ (λ = μ = 1)&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{ij}​=λ(trε)δ_{ij}+2με_{ij}&amp;lt;/math&amp;gt; ,  &amp;lt;math&amp;gt;trε=\frac{y}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;σ_{xx}​=\frac{3y}{20} , σ_{yy}​=\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{xy}​=σ_{yx}=\frac{-x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{3y}{20} &amp;amp; \frac{-x}{20} \\&lt;br /&gt;
    \frac{-x}{20} &amp;amp; \frac{y}{20} \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:4. Divergencia&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{x}​=(\frac{∂σ_{xx}}{∂_{x}}​​+\frac{∂σ_{xy}}{∂_{y}})​​=0+0=0&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94296</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94296"/>
				<updated>2025-12-02T11:14:42Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Campo de Fuerzas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::  &amp;lt;math&amp;gt;\frac{𝜕u_{y}}{𝜕_{x}}=\frac{-x}{10},\frac{𝜕u_{y}}{𝜕_{y}}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;ε_{xx}​=​\frac{y}{20},ε_{yy}​=0&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;ε_{xy}​=​ε_{yx}=\frac{1}{2}(\frac{x}{20}-\frac{x}{10})=\frac{-x}{40}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{y}{20} &amp;amp; \frac{-x}{40} \\&lt;br /&gt;
    \frac{-x}{40} &amp;amp; 0 \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:3. Tensor de tensiones σ (λ = μ = 1)&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{ij}​=λ(trε)δ_{ij}+2με_{ij}&amp;lt;/math&amp;gt; ,  &amp;lt;math&amp;gt;trε=\frac{y}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;σ_{xx}​=\frac{3y}{20} , σ_{yy}​=\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{xy}​=σ_{yx}=\frac{-x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{3y}{20} &amp;amp; \frac{-x}{20} \\&lt;br /&gt;
    \frac{-x}{20} &amp;amp; \frac{y}{20} \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:4. Divergencia&lt;br /&gt;
::&amp;lt;math&amp;gt;(divσ)_{x}​=(\frac{∂σxx}{∂x}​​+\frac{∂σxy}{∂y})​​=0+0=0&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94291</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94291"/>
				<updated>2025-12-02T11:12:19Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Campo de Fuerzas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::  &amp;lt;math&amp;gt;\frac{𝜕u_{y}}{𝜕_{x}}=\frac{-x}{10},\frac{𝜕u_{y}}{𝜕_{y}}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;ε_{xx}​=​\frac{y}{20},ε_{yy}​=0&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;ε_{xy}​=​ε_{yx}=\frac{1}{2}(\frac{x}{20}-\frac{x}{10})=\frac{-x}{40}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{y}{20} &amp;amp; \frac{-x}{40} \\&lt;br /&gt;
    \frac{-x}{40} &amp;amp; 0 \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
:3. Tensor de tensiones σ (λ = μ = 1)&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{ij}​=λ(trε)δ_{ij}+2με_{ij}&amp;lt;/math&amp;gt; ,  &amp;lt;math&amp;gt;trε=\frac{y}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;σ_{xx}​=\frac{3y}{20} , σ_{yy}​=\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{xy}​=σ_{yx}=\frac{-x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{3y}{20} &amp;amp; \frac{-x}{20} \\&lt;br /&gt;
    \frac{-x}{20} &amp;amp; \frac{y}{20} \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94290</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94290"/>
				<updated>2025-12-02T11:11:40Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Campo de Fuerzas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::  &amp;lt;math&amp;gt;\frac{𝜕u_{y}}{𝜕_{x}}=\frac{-x}{10},\frac{𝜕u_{y}}{𝜕_{y}}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;ε_{xx}​=​\frac{y}{20},ε_{yy}​=0&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;ε_{xy}​=​ε_{yx}=\frac{1}{2}(\frac{x}{20}-\frac{x}{10})=\frac{-x}{40}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{y}{20} &amp;amp; \frac{-x}{40} \\&lt;br /&gt;
    \frac{-x}{40} &amp;amp; 0 \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
:3. Tensor de tensiones σ (λ = μ = 1)&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{ij}​=λ(trε)δ_{ij}+2με_{ij}&amp;lt;/math&amp;gt; ,  &amp;lt;math&amp;gt;trε=\frac{y}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;σ_{xx}​=\frac{3y}{20} , σ_{yy}​=\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
::σ_{xy}​=σ_{yx}=\frac{-x}{20}&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{3y}{20} &amp;amp; \frac{-x}{20} \\&lt;br /&gt;
    \frac{-x}{20} &amp;amp; \frac{y}{20} \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94288</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94288"/>
				<updated>2025-12-02T11:09:58Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Campo de Fuerzas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::  &amp;lt;math&amp;gt;\frac{𝜕u_{y}}{𝜕_{x}}=\frac{-x}{10},\frac{𝜕u_{y}}{𝜕_{y}}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;ε_{xx}​=​\frac{y}{20},ε_{yy}​=0&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;ε_{xy}​=​ε_{yx}=\frac{1}{2}(\frac{x}{20}-\frac{x}{10})=\frac{-x}{40}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{y}{20} &amp;amp; \frac{-x}{40} \\&lt;br /&gt;
    \frac{-x}{40} &amp;amp; 0 \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
:3. Tensor de tensiones σ (λ = μ = 1)&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{ij}​=λ(trε)δ_{ij}+2με_{ij}&amp;lt;/math&amp;gt; ,  &amp;lt;math&amp;gt;trε=frac{y}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;σ_{xx}​=frac{3y}{20} , σ_{yy}​=frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94285</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94285"/>
				<updated>2025-12-02T11:07:33Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Campo de Fuerzas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::  &amp;lt;math&amp;gt;\frac{𝜕u_{y}}{𝜕_{x}}=\frac{-x}{10},\frac{𝜕u_{y}}{𝜕_{y}}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;ε_{xx}​=​\frac{y}{20},ε_{yy}​=0&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;ε_{xy}​=​ε_{yx}=\frac{1}{2}(\frac{x}{20}-\frac{x}{10})=\frac{-x}{40}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{y}{20} &amp;amp; \frac{-x}{40} \\&lt;br /&gt;
    \frac{-x}{40} &amp;amp; 0 \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
:3. Tensor de tensiones σ (λ = μ = 1)&lt;br /&gt;
::&amp;lt;math&amp;gt;σ_{ij}​=λ(trε)δ_{ij}+2με_{ij}&amp;lt;/math&amp;gt;&lt;br /&gt;
:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94283</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94283"/>
				<updated>2025-12-02T11:06:06Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Campo de Fuerzas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::  &amp;lt;math&amp;gt;\frac{𝜕u_{y}}{𝜕_{x}}=\frac{-x}{10},\frac{𝜕u_{y}}{𝜕_{y}}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;ε_{xx}​=​\frac{y}{20},ε_{yy}​=0&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;ε_{xy}​=​ε_{yx}=\frac{1}{2}(\frac{x}{20}-\frac{x}{10})=\frac{-x}{40}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{y}{20} &amp;amp; \frac{-x}{40} \\&lt;br /&gt;
    \frac{-x}{40} &amp;amp; 0 \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
:3. Tensor de tensiones σ\sigmaσ (λ = μ = 1)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94281</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94281"/>
				<updated>2025-12-02T11:05:32Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Campo de Fuerzas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::  &amp;lt;math&amp;gt;\frac{𝜕u_{y}}{𝜕_{x}}=\frac{-x}{10},\frac{𝜕u_{y}}{𝜕_{y}}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;ε_{xx}​=​\frac{y}{20},ε_{yy}​=0&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;ε_{xy}​=​ε_{yx}=\frac{1}{2}(\frac{x}{20}-\frac{x}{10})=\frac{-x}{40}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: &amp;lt;math&amp;gt;ε=\begin{pmatrix}&lt;br /&gt;
    \frac{y}{20} &amp;amp; \frac{-x}{40} \\&lt;br /&gt;
    \frac{-x}{40} &amp;amp; 0 \\&lt;br /&gt;
  \end{pmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94273</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94273"/>
				<updated>2025-12-02T11:01:14Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Campo de Fuerzas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::  &amp;lt;math&amp;gt;\frac{𝜕u_{y}}{𝜕_{x}}=\frac{-x}{10},\frac{𝜕u_{y}}{𝜕_{y}}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;ε_{xx}​=​\frac{y}{20},ε_{yy}​=0&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;ε_{xy}​=​ε_{yx}=\frac{1}{2}(\frac{x}{20}-\frac{x}{10})=\frac{-x}{40}&amp;lt;/math&amp;gt;&lt;br /&gt;
::Tensor: ε=(20y​−40x​​−40x​0​)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94271</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94271"/>
				<updated>2025-12-02T11:00:13Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Campo de Fuerzas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::  &amp;lt;math&amp;gt;\frac{𝜕u_{y}}{𝜕_{x}}=\frac{-x}{10},\frac{𝜕u_{y}}{𝜕_{y}}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::Entonces: &amp;lt;math&amp;gt;ε_{xx}​=​\frac{y}{20},ε_{yy}​=0&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;ε_{xy}​=​ε_{yx}=\frac{1}{2}(\frac{x}{20}-\frac{x}{10})=\frac{-x}{40}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94270</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94270"/>
				<updated>2025-12-02T10:56:20Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Campo de Fuerzas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::  &amp;lt;math&amp;gt;\frac{𝜕u_{y}}{𝜕_{x}}=\frac{-x}{10},\frac{𝜕u_{y}}{𝜕_{y}}=0&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94269</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94269"/>
				<updated>2025-12-02T10:55:33Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Campo de Fuerzas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::  &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94268</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94268"/>
				<updated>2025-12-02T10:55:02Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Campo de Fuerzas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
:::::::::&amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94267</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94267"/>
				<updated>2025-12-02T10:54:53Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Campo de Fuerzas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::&amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94266</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94266"/>
				<updated>2025-12-02T10:54:41Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Campo de Fuerzas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
::::::::::&amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94265</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94265"/>
				<updated>2025-12-02T10:54:21Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Campo de Fuerzas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
:::::&amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94264</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94264"/>
				<updated>2025-12-02T10:53:48Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Campo de Fuerzas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:1. Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
:2. Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
::Calculamos derivadas: &amp;lt;math&amp;gt;\frac{𝜕u_{x}}{𝜕_{x}}=\frac{y}{20},\frac{𝜕u_{x}}{𝜕_{y}}=\frac{x}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94257</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94257"/>
				<updated>2025-12-02T10:50:05Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Campo de Fuerzas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
#1 Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
#2 Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94255</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94255"/>
				<updated>2025-12-02T10:49:40Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Rotacional */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo:&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo:&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
#Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
#Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94253</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94253"/>
				<updated>2025-12-02T10:49:19Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Campo de Fuerzas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
#Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
#Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂u_{i}}{∂x_{j}​​}+\frac{​∂u_{j}}{∂x_{i}​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94250</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94250"/>
				<updated>2025-12-02T10:48:58Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Rotacional */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
Mínimo&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
#Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
#Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂ui}{∂xj​​}+\frac{​∂uj}{∂xi​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94247</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94247"/>
				<updated>2025-12-02T10:48:24Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Campo de Fuerzas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
 Mínimo&lt;br /&gt;
 El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
 &amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;&lt;br /&gt;
 Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
 Máximo&lt;br /&gt;
 El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
 &amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
 Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
 El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
 Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
#Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
#Tensor de deformaciones &amp;lt;math&amp;gt;ε_{ij}​=​\frac{1}{2}(\frac{​∂ui}{∂xj​​}+\frac{​∂uj}{∂xi​​}​​)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94245</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94245"/>
				<updated>2025-12-02T10:48:10Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Rotacional */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes:&lt;br /&gt;
&lt;br /&gt;
 Mínimo&lt;br /&gt;
 El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
 &amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;&lt;br /&gt;
 Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
 Máximo&lt;br /&gt;
 El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
 &amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
 Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
Interpretación:&lt;br /&gt;
&lt;br /&gt;
 El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
 Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
#Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94240</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94240"/>
				<updated>2025-12-02T10:47:07Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Interpretación */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes&lt;br /&gt;
&lt;br /&gt;
Mínimo&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
Interpretación&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
#Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94238</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94238"/>
				<updated>2025-12-02T10:46:52Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Máximos, mínimos y puntos relevantes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Máximos, mínimos y puntos relevantes&lt;br /&gt;
&lt;br /&gt;
Mínimo&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
==Interpretación==&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
#Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94237</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94237"/>
				<updated>2025-12-02T10:46:37Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Cálculo de |\nabla \times \vec{u}| */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Máximos, mínimos y puntos relevantes==&lt;br /&gt;
&lt;br /&gt;
Mínimo&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
==Interpretación==&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
#Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94233</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94233"/>
				<updated>2025-12-02T10:45:14Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Campo de Fuerzas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
==Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Máximos, mínimos y puntos relevantes==&lt;br /&gt;
&lt;br /&gt;
Mínimo&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
==Interpretación==&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
#Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy= ​\frac{xy}{20}&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}=\frac{-x^2}{20}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94231</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94231"/>
				<updated>2025-12-02T10:44:25Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Campo de Fuerzas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
==Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Máximos, mínimos y puntos relevantes==&lt;br /&gt;
&lt;br /&gt;
Mínimo&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
==Interpretación==&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
#Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy​&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{\rho^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94230</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94230"/>
				<updated>2025-12-02T10:44:08Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Campo de Fuerzas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
==Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Máximos, mínimos y puntos relevantes==&lt;br /&gt;
&lt;br /&gt;
Mínimo&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
==Interpretación==&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
#Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy​&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac{x^2}{rho^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94228</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94228"/>
				<updated>2025-12-02T10:43:45Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Rotacional */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
==Cálculo de &amp;lt;math&amp;gt;|\nabla \times \vec{u}|&amp;lt;/math&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
Dado el campo de desplazamientos&lt;br /&gt;
&amp;lt;math&amp;gt;u_x = \frac{1}{20}xy,\qquad u_y = -\frac{1}{20}x^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
el rotacional en 2D solo tiene componente en la dirección &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = \frac{\partial u_y}{\partial x} - \frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Calculamos las derivadas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x} = -\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y} = \frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla \times \vec{u})_z = -\frac{x}{10} - \frac{x}{20} = -\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud viene dada por:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; |\nabla \times \vec{u}| = \left| -\frac{3x}{20} \right| = \frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Máximos, mínimos y puntos relevantes==&lt;br /&gt;
&lt;br /&gt;
Mínimo&lt;br /&gt;
El mínimo valor se obtiene cuando &amp;lt;math&amp;gt;x = 0&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\min} = 0.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto ocurre en todo el borde izquierdo del sólido (el empotramiento).&lt;br /&gt;
&lt;br /&gt;
Máximo&lt;br /&gt;
El máximo se alcanza cuando &amp;lt;math&amp;gt;x = 4&amp;lt;/math&amp;gt;:&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec{u}|_{\max} = \frac{3\cdot 4}{20} = 0.6.&amp;lt;/math&amp;gt;&lt;br /&gt;
Esto sucede en el borde derecho del sólido (la parte libre).&lt;br /&gt;
&lt;br /&gt;
==Interpretación==&lt;br /&gt;
El rotacional crece linealmente con &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt;.&lt;br /&gt;
Los puntos cercanos al empotramiento (&amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;) no giran, mientras que los puntos en el borde derecho (&amp;lt;math&amp;gt;x=4&amp;lt;/math&amp;gt;) experimentan la mayor rotación.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
#Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy​&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac ρ^2x​^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94227</id>
		<title>Placa Plana (J52)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Placa_Plana_(J52)&amp;diff=94227"/>
				<updated>2025-12-02T10:43:24Z</updated>
		
		<summary type="html">&lt;p&gt;Marco.moreno: /* Campo de Fuerzas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{ TrabajoED | Placa plana. Grupo 52 | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC25/26|2025-26]] |Carlos Gallego García &amp;lt;br/&amp;gt; Arantxa Gonzales Mori  &amp;lt;br/&amp;gt;Diego Pérez Fernández&amp;lt;br/&amp;gt;  Diego Peña Ruiz &amp;lt;br/&amp;gt; Marco Moreno González }}&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
Consideramos la sección longitudinal de una viga voladiza rectangular (en dimensión 2) que ocupa la región (Figura 1.) y que está fija en la pared vertical izquierda.&lt;br /&gt;
::&amp;lt;math&amp;gt; (𝑥, 𝑦) ∈ [0, 4] × [𝑓(𝑔), 𝑔(𝑥)],𝑓(𝑥) = \frac{x}{8},𝑔(𝑥) = 2 − \frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ella vamos a suponer que tenemos definidas dos cantidades físicas: la temperatura 𝑇(𝑥, 𝑦) dada por &lt;br /&gt;
::&amp;lt;math&amp;gt; 𝑇(𝑥, 𝑦) = (1 + (𝑦 − 1)^2)(4 - x) &amp;lt;/math&amp;gt;,&lt;br /&gt;
y los desplazamientos 𝑢⃗(𝑥, 𝑦) producidos por la acción de una fuerza determinada que no conocemos. De esta forma, si definimos &amp;lt;math&amp;gt; 𝑟⃗0 (𝑥, 𝑦) = 𝑥⃗𝑖 + 𝑦𝑗⃗ &amp;lt;/math&amp;gt; el vector de posición de los puntos de la placa antes de la deformación, la posición de cada punto (𝑥, 𝑦) de la placa después de la&lt;br /&gt;
deformación viene dada por&lt;br /&gt;
::𝑟⃗&amp;lt;sub&amp;gt;d&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt;(𝑥, 𝑦)&amp;lt;/math&amp;gt; = 𝑟⃗&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&amp;lt;math&amp;gt; (𝑥, 𝑦) + 𝑢⃗(𝑥, 𝑦)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza aplicada sobre la placa ha provocado un desplazamiento de los puntos de la misma dado por el vector&lt;br /&gt;
::&amp;lt;math&amp;gt;𝑢⃗(𝜌, 𝜃) = −\frac{1}{20} 𝜌2cos 𝜃𝑒⃗𝜃&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Mallado del Solido==&lt;br /&gt;
Para dibujar el '''mallado''',habrá que parametrizar el sólido y tomar los ejes del el rectángulo &amp;lt;math&amp;gt;(x, y) ∈ [−1, 5] × [-1, 3]&amp;lt;/math&amp;gt; ,además,como paso de muestreo: &amp;lt;math&amp;gt;h = \frac{1}{10}&amp;lt;/math&amp;gt; para las variables &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; e &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:malladoplanaplana3.jpeg|miniaturadeimagen|derecha|800px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
%Datos&lt;br /&gt;
h = 0.1;&lt;br /&gt;
u = 0:h:4;&lt;br /&gt;
% Para la coordenada vertical, la altura máxima de la placa es 2 por lo que &lt;br /&gt;
% para mantener el paso h=0.1, necesitamos dividir esa altura en aprox 20 partes.&lt;br /&gt;
% y definimos un parámetro 's' que vaya de 0 a 1.&lt;br /&gt;
num_puntos_y=2/h; &lt;br /&gt;
s=linspace(0,1,num_puntos_y + 1);&lt;br /&gt;
%rejilla de parámetros&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% fronteras (borde inferior y superior)&lt;br /&gt;
f_u=U./8;&lt;br /&gt;
g_u=2-U./8;&lt;br /&gt;
&lt;br /&gt;
%Calcular las coordenadas físicas X e Y&lt;br /&gt;
% X es U&lt;br /&gt;
X=U;&lt;br /&gt;
% Y es una interpolación entre el borde inferior y superior&lt;br /&gt;
Y=f_u+S.*(g_u-f_u);&lt;br /&gt;
&lt;br /&gt;
%Dibujar el mallado&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; &lt;br /&gt;
hold on;&lt;br /&gt;
&lt;br /&gt;
%hacemos la rejilla y la configuramos&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0, 0.7, 0.7],'FaceColor','none');&lt;br /&gt;
&lt;br /&gt;
%Dibujamos un contorno parecido a la imagen dada&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2)% Borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2)% Borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2)% Borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2)% Borde derecho&lt;br /&gt;
&lt;br /&gt;
% Configuramos los ejes y el visionado&lt;br /&gt;
axis([-1 5 -1 3]);&lt;br /&gt;
xlabel('x');&lt;br /&gt;
ylabel('y');&lt;br /&gt;
title('Mallado de la placa plana');&lt;br /&gt;
view(2);&lt;br /&gt;
box on;&lt;br /&gt;
grid off;&lt;br /&gt;
axis equal&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Curvas de nivel==&lt;br /&gt;
&lt;br /&gt;
Se dibujan las '''curvas de nivel''' de la temperatura y decidir en qué punto la temperatura es máxima. Se calcula el gradiente de la temperatura y se representa en la gráfica.&amp;lt;br /&amp;gt;&lt;br /&gt;
Como se puede observar, los máximos se encuentran en los puntos: &amp;lt;math&amp;gt;(x,y)=(0,0)&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;(x,y)=(0,2)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El '''gradiente''' se calcula de la siguiente manera:&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(x,y)=(\frac{∂T}{∂x}​,\frac{∂T}{∂y})=(−(1+(y−1)2),(4−x)⋅2(y−1)).&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Como se puede observar, el gradiente es ortogonal a las curvas de nivel.&lt;br /&gt;
[[Archivo:curvadenivel.jpeg|miniaturadeimagen|derecha|800px|Figura 2]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definición del Mallado y Dominio&lt;br /&gt;
h=0.1;  %Muestreo                  &lt;br /&gt;
x=0:h:4;                  &lt;br /&gt;
y=0:h:2;           &lt;br /&gt;
[X,Y] = meshgrid(x, y);&lt;br /&gt;
&lt;br /&gt;
% Funciones que definen la placa &lt;br /&gt;
f=@(x)x./8;  % Límite inferior&lt;br /&gt;
g=@(x)2-x./8;  % Límite superior&lt;br /&gt;
&lt;br /&gt;
% Máscara para puntos dentro de la placa&lt;br /&gt;
EnPlaca=Y&amp;gt;=f(X)&amp;amp;Y&amp;lt; g(X);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Temperatura y el Gradiente&lt;br /&gt;
% Función T(x,y) &lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Aplicar máscara&lt;br /&gt;
T_plot=T;&lt;br /&gt;
T_plot(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Cálculo numérico del gradiente para los vectores (o usar fórmula exacta)&lt;br /&gt;
% Usamos la fórmula exacta derivada arriba para mayor precisión&lt;br /&gt;
U=-(1+(Y-1).^2);          % Componente x del gradiente&lt;br /&gt;
V=2.*(Y-1).*(4-X);    % Componente y del gradiente&lt;br /&gt;
&lt;br /&gt;
% Solo mostramos vectores dentro de la placa&lt;br /&gt;
U(~EnPlaca)=NaN;&lt;br /&gt;
V(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Gráfica&lt;br /&gt;
figure(1);&lt;br /&gt;
clf; % Limpiar figura&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal; &lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
grid on;&lt;br /&gt;
title({'Isotermas y Gradiente \nabla T', 'T(x,y) = (1+(y-1)^2)(4-x)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor de fondo&lt;br /&gt;
[C_fill, h_fill] = contourf(X, Y, T_plot, 20, 'LineStyle', 'none');&lt;br /&gt;
colormap(jet); % Mapa de colores tipo jet&lt;br /&gt;
cb=colorbar;&lt;br /&gt;
ylabel(cb,'Temperatura T');&lt;br /&gt;
&lt;br /&gt;
% Curvas de nivel&lt;br /&gt;
[C, h_cont]=contour(X,Y,T_plot,10,'k','LineWidth',1.5);&lt;br /&gt;
clabel(C,h_cont,'FontSize',9,'Color','k','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Campo Vectorial (Gradiente)&lt;br /&gt;
% Submuestreamos cada 3 puntos para que no se vea una mancha de flechas&lt;br /&gt;
step=3; &lt;br /&gt;
quiver(X(1:step:end,1:step:end),Y(1:step:end, 1:step:end), ...&lt;br /&gt;
U(1:step:end,1:step:end),V(1:step:end,1:step:end), ...&lt;br /&gt;
1.2,'k','LineWidth',1); % '1.2' es el factor de escala de las flechas&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes de la placa&lt;br /&gt;
plot(x,f(x),'k-','LineWidth',2); % Borde inferior&lt;br /&gt;
plot(x,g(x),'k-','LineWidth',2); % Borde superior&lt;br /&gt;
plot([0 0],[f(0) g(0)],'k-','LineWidth',2); % Pared izquierda&lt;br /&gt;
plot([4 4],[f(4) g(4)],'k-','LineWidth',2); % Pared derecha&lt;br /&gt;
&lt;br /&gt;
% Señalar Máximo&lt;br /&gt;
plot(0,0,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
plot(0,2,'rp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1,0,'Max T','Color','white','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Energía calorífica(LEY DE FOURIER)==&lt;br /&gt;
&lt;br /&gt;
De acuerdo con la '''ley de Fourier''', la energía calorífica &amp;lt;math&amp;gt;\vec{Q}&amp;lt;/math&amp;gt; se describe mediante la fórmula&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −𝜅∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
donde 𝜅 es la constante de conductividad térmica de la placa; supondremos 𝜅 = 1. . Como  𝜅 es igual a la unidad podemos ver en la representación como&lt;br /&gt;
:: &amp;lt;math&amp;gt;\vec{Q} = −∇T &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Archivo:fourier1.jpg|miniaturadeimagen|derecha|800px|Figura 3: Flujo de Calor(Ley de Fourier)]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Escenario&lt;br /&gt;
h=0.1; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8; &lt;br /&gt;
g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara&lt;br /&gt;
&lt;br /&gt;
% Cálculos y Gradiente de T&lt;br /&gt;
Grad_x=-(1+(Y-1).^2); &lt;br /&gt;
Grad_y=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Flujo de Calor Q (Ley de Fourier)&lt;br /&gt;
k=1; % Constante de conductividad&lt;br /&gt;
Qx=-k.*Grad_x;&lt;br /&gt;
Qy=-k.*Grad_y;&lt;br /&gt;
&lt;br /&gt;
% Borrar vectores fuera de la placa&lt;br /&gt;
Qx(~EnPlaca)=NaN;&lt;br /&gt;
Qy(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Flujo de Calor (Ley de Fourier)');&lt;br /&gt;
hold on;&lt;br /&gt;
axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Flujo de Calor', 'El calor viaja desde lo caliente a lo frío'});&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
&lt;br /&gt;
% Temperatura de fondo&lt;br /&gt;
T=(1+(Y-1).^2).*(4-X);&lt;br /&gt;
T(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,T,15,'LineStyle','none','FaceAlpha',0.5);&lt;br /&gt;
colormap(jet);c=colorbar;ylabel(c,'Temperatura');&lt;br /&gt;
&lt;br /&gt;
% Dibujar el Campo Vectorial Q&lt;br /&gt;
% Usamos 'step' para no pintar todas las flechas y que se vea limpio&lt;br /&gt;
step=3; &lt;br /&gt;
idx=1:step:size(X, 1);&lt;br /&gt;
idy=1:step:size(X, 2);&lt;br /&gt;
&lt;br /&gt;
quiver(X(idx,idy),Y(idx,idy),Qx(idx,idy),Qy(idx,idy),1.5,'k','LineWidth',0.75); &lt;br /&gt;
 &lt;br /&gt;
% Bordes&lt;br /&gt;
x_b=linspace(0,4, 200);&lt;br /&gt;
plot(x_b,f(x_b),'k','LineWidth',2);&lt;br /&gt;
plot(x_b,g(x_b),'k','LineWidth',2);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',2);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',2);&lt;br /&gt;
&lt;br /&gt;
% Origen del flujo&lt;br /&gt;
plot(0,0,'ko','MarkerFaceColor','w');&lt;br /&gt;
plot(0,2,'ko','MarkerFaceColor','w'); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Gradiente Térmico==&lt;br /&gt;
El punto de máxima variación térmica corresponde al punto donde el '''gradiente es máximo'''' (En la practica para hallar este valor igualaremos la derivada del gradiente a cero).Mientras que la '''variación térmica''' sigue la '''dirección de dicho gradiente''', el '''flujo de calor''' más intenso lo hace en '''sentido contrario''', es decir, hacia donde baja la temperatura.&lt;br /&gt;
&lt;br /&gt;
Lo primero que haremos será llamar a una función:&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((1+(y-1)^2)^2+(2(y-1)(4-x))^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:: &amp;lt;math&amp;gt;\ G(x,y)=((y^2-2Y+2)^2+4(y-1)^2(4-x)^2 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
cuando tengamos la función &amp;lt;math&amp;gt;\ G(x,y)=||∇T||^2  &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
para maximizarla derivaremos la función y la igualaremos a 0 simultáneamente&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂x}​)= -8(y-1)^2(4-x)=0&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;(\frac{∂G}{∂y}​)=4(y-1)(1+(y-1)^2+2(4-x)^2)=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
tras hacer este sistema de ecuaciones dictamínanos que los mínimos se encuentran sobre la recta &lt;br /&gt;
::&amp;lt;math&amp;gt; y=1 &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Como no aparecen máximos aislados, los máximos deben buscarse en la frontera del dominio:&lt;br /&gt;
&lt;br /&gt;
::Borde izquierdo (recta &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Borde derecho (recta &amp;lt;math&amp;gt; x=4 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
::Curva superior (&amp;lt;math&amp;gt; y=2-x^8 &amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Tras comprobar los limites del recinto vemos que los máximos de la función del gradiente térmico se encuentran en el borde izquierdo de este,(recta  &amp;lt;math&amp;gt; x=0 &amp;lt;/math&amp;gt;) &lt;br /&gt;
respecto a la coordenadas, los máximos se encuentran en  &amp;lt;math&amp;gt;y=0 &amp;lt;/math&amp;gt; y en  &amp;lt;math&amp;gt;y=2 &amp;lt;/math&amp;gt;&lt;br /&gt;
::Los puntos donde la variación de temperatura es máxima son:&lt;br /&gt;
&lt;br /&gt;
'''P(1)''': x=0.00, y=0.00. ''Dirección del vector'': [-2.00, -8.00]&lt;br /&gt;
&lt;br /&gt;
'''P(2)''': x=0.00, y=2.00. ''Dirección del vector'': [-2.00, 8.00]&lt;br /&gt;
Ahora calcularemos la máxima variación térmica que se traduce en el módulo del gradiente en los puntos '''P(1)''' y '''P(2)''':&lt;br /&gt;
Como el valor de la norma del gradiente es la misma para P(1) y P(2), solo calcularemos uno de los puntos, en este caso calcularemos p(1)=(0,0)&lt;br /&gt;
calculo de &amp;lt;math&amp;gt;\||∇T(0,0)||&amp;lt;/math&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;∇T(0,0)=(-(1+(0-1)^2,2(0-1)(4-0))=(-2,-8)&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
::&amp;lt;math&amp;gt;\||∇T(0,0)||=\sqrt{(64+4)}=2\sqrt{17}\approx 8.246&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:maxvart.jpg|miniaturadeimagen|derecha|800px|Figura 4:Máxima Variación de T]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8;&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g;&lt;br /&gt;
&lt;br /&gt;
% Cálculos de Gradiente y Norma&lt;br /&gt;
Tx=-(1+(Y-1).^2); &lt;br /&gt;
Ty=2.*(Y-1).*(4-X);&lt;br /&gt;
&lt;br /&gt;
% Norma del Gradiente&lt;br /&gt;
NormaGrad=sqrt(Tx.^2+Ty.^2);&lt;br /&gt;
NormaGrad(~EnPlaca)=0; &lt;br /&gt;
&lt;br /&gt;
% Buscar el Máximo&lt;br /&gt;
max_val=max(NormaGrad(:));&lt;br /&gt;
[filas,cols]=find(NormaGrad==max_val);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas de los puntos máximos&lt;br /&gt;
x_max=X(filas,cols);&lt;br /&gt;
y_max=Y(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Componentes del vector dirección en esos puntos&lt;br /&gt;
u_dir=Tx(filas,cols);&lt;br /&gt;
v_dir=Ty(filas,cols);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Máxima Variación de T');&lt;br /&gt;
hold on;axis equal;axis([-0.5 4.5 -0.5 2.5]);grid on;&lt;br /&gt;
title({'Puntos de Máxima Variación de Temperatura', '(Color = Magnitud del Gradiente T)'});&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Mapa de calor&lt;br /&gt;
NormaGrad(~EnPlaca)=NaN;&lt;br /&gt;
contourf(X,Y,NormaGrad,20,'LineStyle','none');&lt;br /&gt;
colormap(jet);colorbar;&lt;br /&gt;
&lt;br /&gt;
% Contorno&lt;br /&gt;
plot([0 4 4 0 0],[0 0.5 1.5 2 0],'k','LineWidth',1.5);&lt;br /&gt;
&lt;br /&gt;
% Puntos rojos y dirección&lt;br /&gt;
plot(x_max, y_max,'ro','MarkerSize',7.5,'MarkerFaceColor','r');&lt;br /&gt;
&lt;br /&gt;
% Flechas de dirección&lt;br /&gt;
quiver(x_max,y_max,u_dir,v_dir,0.5,'k','LineWidth',2,'MaxHeadSize',0.5);&lt;br /&gt;
&lt;br /&gt;
% Resultados&lt;br /&gt;
fprintf('La variación máxima es %.2f\n', max_val);&lt;br /&gt;
fprintf('Ocurre en los puntos:\n');&lt;br /&gt;
for i=1:length(x_max)&lt;br /&gt;
    fprintf('P(%d): x=%.2f, y=%.2f. Dirección del vector: [%.2f, %.2f]\n',i,x_max(i),y_max(i),u_dir(i),v_dir(i));&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Desplazamientos==&lt;br /&gt;
Se dibuja el sólido antes y después del '''desplazamiento''' dado por el campo de vectores &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;.&lt;br /&gt;
[[Archivo:comp11.jpg|miniaturadeimagen|derecha|800px|Figura 6:Comparación Antes/Después]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Generación de la Malla&lt;br /&gt;
h=0.2; &lt;br /&gt;
u=0:h:4; &lt;br /&gt;
s=linspace(0,1,11);&lt;br /&gt;
[U,S]=meshgrid(u,s);&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Originales&lt;br /&gt;
f_x=U./8;&lt;br /&gt;
g_x=2-U./8;&lt;br /&gt;
X0=U;&lt;br /&gt;
Y0=f_x+S.*(g_x-f_x);&lt;br /&gt;
Z0=zeros(size(X0));&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Deformación y Campo de desplazamientos u(x,y)&lt;br /&gt;
Ux=(X0.*Y0)./20;&lt;br /&gt;
Uy=-(X0.^2)./20;&lt;br /&gt;
&lt;br /&gt;
% Coordenadas Deformadas&lt;br /&gt;
Xd=X0+Ux;&lt;br /&gt;
Yd=Y0+Uy;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Comparación Antes/Después','Color','w');&lt;br /&gt;
&lt;br /&gt;
% ANTES&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X0,Y0,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',3); % Pared fija&lt;br /&gt;
title('Antes del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
% DESPUÉS&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(Xd,Yd,Z0,'EdgeColor',[0 0.7 0.9],'FaceColor','none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 0], [0 2],'k','LineWidth',3);&lt;br /&gt;
title('Después del desplazamiento');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
axis equal; axis([-0.5 4.5 -1.5 2.5]); grid on;&lt;br /&gt;
view(2);&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Divergencia==&lt;br /&gt;
La '''divergencia''' &amp;lt;math&amp;gt; (∇⋅𝑢⃗)&amp;lt;/math&amp;gt; mide la variación de volumen local.&lt;br /&gt;
La divergencia del campo de desplazamiento es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; u_x=\frac{1}{20}xy,\qquad u_y=-\frac{1}{20}x^2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Entonces:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \nabla\cdot\vec{u} =\frac{\partial u_x}{\partial x}+\frac{\partial u_y}{\partial y} =\frac{\partial}{\partial x}\left(\frac{1}{20}xy\right) +\frac{\partial}{\partial y}\left(-\frac{1}{20}x^2\right) =\frac{y}{20} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La divergencia depende únicamente de la coordenada &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
La placa cumple: &amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Máximo: Para maximizar &amp;lt;math&amp;gt;\nabla\cdot\vec{u}=\frac{y}{20}&amp;lt;/math&amp;gt; basta maximizar &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
El máximo valor de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; en la región es: &amp;lt;math&amp;gt;y_{\max}=2&amp;lt;/math&amp;gt; (en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Por tanto: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\max}=\frac{2}{20}=0.1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El máximo se alcanza en: &amp;lt;math&amp;gt;(0,2)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mínimo: El valor mínimo permitido de &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; es: &amp;lt;math&amp;gt;y_{\min}=0&amp;lt;/math&amp;gt; (también en &amp;lt;math&amp;gt;x=0&amp;lt;/math&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Entonces: &amp;lt;math&amp;gt; (\nabla\cdot\vec{u})_{\min}=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El mínimo ocurre en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Puntos donde la divergencia es nula&lt;br /&gt;
&lt;br /&gt;
La divergencia se anula cuando: &amp;lt;math&amp;gt; \frac{y}{20}=0 \quad \Rightarrow \quad y=0 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dentro de la placa esto solo sucede en: &amp;lt;math&amp;gt;(0,0)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El cual indica que la placa sufre una expansión positiva que aumenta linealmente con la altura debido al estiramiento de las fibras superiores.&lt;br /&gt;
&lt;br /&gt;
En la gráfica,se puede apreciar en las franjas de color:&lt;br /&gt;
En '''azul''' esta la base,donde el '''volumen no cambia''',degradándose progresivamente hacia el '''rojo''' intenso del borde superior donde se encuentra el '''punto de máxima expansión''', independientemente de la posición horizontal x.&lt;br /&gt;
[[Archivo:divergenciaplaca.jpg|miniaturadeimagen|derecha|800px|Figura 7]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Definir Malla y Placa&lt;br /&gt;
h=0.05;&lt;br /&gt;
[X,Y]=meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
f=X./8;g=2-X./8; % Límites&lt;br /&gt;
EnPlaca=Y&amp;gt;=f&amp;amp;Y&amp;lt;=g; % Máscara lógica&lt;br /&gt;
&lt;br /&gt;
% Cálculo de la Divergencia (div=y/20)&lt;br /&gt;
Div=Y./20; &lt;br /&gt;
Div(~EnPlaca)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Divergencia');clf;hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);box on;&lt;br /&gt;
title('Divergencia: Cambio de Volumen');&lt;br /&gt;
xlabel('X'); ylabel('Y');&lt;br /&gt;
[C, h_cont]=contourf(X, Y, Div, 20,'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c=colorbar;ylabel(c,'Valor de Divergencia');&lt;br /&gt;
&lt;br /&gt;
% Dibujar bordes negros&lt;br /&gt;
x_b = linspace(0, 4, 200);&lt;br /&gt;
plot(x_b, x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot(x_b, 2 - x_b./8,'k','LineWidth',1);&lt;br /&gt;
plot([0 0],[0 2],'k','LineWidth',1);&lt;br /&gt;
plot([4 4],[0.5 1.5],'k','LineWidth',1);&lt;br /&gt;
&lt;br /&gt;
% Señalar puntos clave&lt;br /&gt;
% Máxima: Ocurre en y=2 y x=0 &lt;br /&gt;
plot(0,2,'kp','MarkerSize',12,'MarkerFaceColor','r');&lt;br /&gt;
text(0.1, 2.1,'Max Expansión','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Nula: Ocurre en y=0 y x=0&lt;br /&gt;
plot(0,0,'kp','MarkerSize',12,'MarkerFaceColor','b');&lt;br /&gt;
text(0.1,-0.1,'Divergencia Nula','FontWeight','bold');&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional==&lt;br /&gt;
&lt;br /&gt;
Se calcula el '''rotacional''' &amp;lt;math&amp;gt;(|∇ × 𝑢⃗|)&amp;lt;/math&amp;gt; en todos los puntos del sólido.&amp;lt;br /&amp;gt;&lt;br /&gt;
Los '''puntos más alejados del origen''' y alineados con el eje x sufren '''mayor rotacional'''.&lt;br /&gt;
&lt;br /&gt;
El rotacional (en 2D, componente sobre &lt;br /&gt;
𝑘&lt;br /&gt;
^&lt;br /&gt;
k&lt;br /&gt;
^&lt;br /&gt;
) del campo de desplazamiento se calcula como:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla\times\mathbf{u})_z=\frac{\partial u_y}{\partial x}-\frac{\partial u_x}{\partial y}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Recordando&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;u_x=\dfrac{1}{20}xy,\qquad u_y=-\dfrac{1}{20}x^2,&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
tenemos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \frac{\partial u_y}{\partial x}=\frac{\partial}{\partial x}\left(-\frac{1}{20}x^2\right)=-\frac{2x}{20}=-\frac{x}{10}, \qquad \frac{\partial u_x}{\partial y}=\frac{\partial}{\partial y}\left(\frac{1}{20}xy\right)=\frac{x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Por tanto&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; (\nabla\times\mathbf{u})_z=-\frac{x}{10}-\frac{x}{20}=-\frac{3x}{20}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La magnitud del rotacional es&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \left|\nabla\times\mathbf{u}\right|=\left|-\frac{3x}{20}\right|=\frac{3x}{20}, &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
ya que en la placa &lt;br /&gt;
𝑥&lt;br /&gt;
≥&lt;br /&gt;
0&lt;br /&gt;
x≥0.&lt;br /&gt;
&lt;br /&gt;
La placa está acotada por&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; 0\le x\le 4,\qquad \frac{x}{8}\le y\le 2-\frac{x}{8}. &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Archivo:rot33.jpg|miniaturadeimagen|derecha|600px|Figura 1]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Definición del Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y] =meshgrid(0:h:4, 0:h:2);&lt;br /&gt;
Condition =(Y &amp;gt;= X./8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del Rotacional&lt;br /&gt;
% Fórmula derivada anteriormente: Rot_z = -3x/20&lt;br /&gt;
% Tomamos el valor absoluto (módulo) para dibujar la magnitud&lt;br /&gt;
Rot_Modulo = abs(-(3 .* X) ./ 20);&lt;br /&gt;
&lt;br /&gt;
% Filtrado &lt;br /&gt;
Rot_Modulo(~Condition) = NaN; %(Borrar lo de fuera)&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D y 2D)&lt;br /&gt;
figure('Name', 'Rotacional', 'Position', [100, 50, 600, 800]);&lt;br /&gt;
&lt;br /&gt;
% VISTA 3D&lt;br /&gt;
subplot(2, 1, 1); &lt;br /&gt;
surf(X, Y, Rot_Modulo); &lt;br /&gt;
shading interp; &lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis tight; &lt;br /&gt;
grid on;&lt;br /&gt;
view(-30, 45);&lt;br /&gt;
title('Vista 3D');&lt;br /&gt;
zlabel('Magnitud');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
text(0, 1, 0.6, 'Sube como una rampa', 'Color', 'k');&lt;br /&gt;
&lt;br /&gt;
% VISTA 2D&lt;br /&gt;
subplot(2, 1, 2);&lt;br /&gt;
contourf(X, Y, Rot_Modulo, 20, 'LineStyle', 'none');&lt;br /&gt;
hold on;&lt;br /&gt;
plot([0 4 4 0 0], [0 0.5 1.5 2 0], 'k', 'LineWidth', 2); % Bordes&lt;br /&gt;
colormap(jet); &lt;br /&gt;
colorbar;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Vista 2D');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Señalar el máximo en 2D&lt;br /&gt;
plot([4 4], [0.5 1.5], 'r', 'LineWidth', 3);&lt;br /&gt;
text(2.5, 2, 'Mayor giro en x=4', 'FontWeight', 'bold');&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensor deformaciones==&lt;br /&gt;
/math&amp;gt;&lt;br /&gt;
Se define &amp;lt;math&amp;gt;𝜖(𝑢⃗) = \frac{1}{2}(∇𝑢⃗ + ∇𝑢⃗ &amp;lt;/math&amp;gt;&amp;lt;sup&amp;gt; t &amp;lt;/sup&amp;gt;&amp;lt;math&amp;gt;)&amp;lt;/math&amp;gt;, la parte simétrica del tensor gradiente de &amp;lt;math&amp;gt;𝑢⃗&amp;lt;/math&amp;gt;, conocido como '''tensor de deformaciones'''. En un medio elástico lineal, isótropo y homogéneo los desplazamientos permiten escribir el tensor de tensiones 𝜎 a través de la fórmula &amp;lt;math&amp;gt;𝜎 = 𝜆∇ ⋅ 𝑢⃗ I + 2𝜇𝜖&amp;lt;/math&amp;gt;,&lt;br /&gt;
donde &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; es el tensor identidad en el conjunto de vectores libres del espacio &amp;lt;math&amp;gt;ℝ^3, 𝜆, 𝜇&amp;lt;/math&amp;gt; son conocidos como '''coeficientes de Lamé''', que dependen de las propiedades elásticas de cada material.&amp;lt;br /&amp;gt;&lt;br /&gt;
Tomando &amp;lt;math&amp;gt;𝜆 = 𝜇 = 1&amp;lt;/math&amp;gt;, se dibujan las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{i} ⋅𝜎⋅ \vec{i}&amp;lt;/math&amp;gt;, las tensiones normales en la dirección que marca el eje &amp;lt;math&amp;gt;\vec{j}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{j} ⋅𝜎⋅ \vec{j}&amp;lt;/math&amp;gt;, y las correspondientes al eje &amp;lt;math&amp;gt;\vec{k}&amp;lt;/math&amp;gt;, es decir &amp;lt;math&amp;gt;\vec{k} ⋅𝜎⋅ \vec{k}&amp;lt;/math&amp;gt; (se dibujan las que no son nulas).&lt;br /&gt;
&lt;br /&gt;
[[Archivo:contorno.jpg|miniaturadeimagen|derecha|800px|Figura 9]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Geometría de la placa&lt;br /&gt;
h = 0.1;                        &lt;br /&gt;
x = 0:h:4;&lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);% parámetro vertical [0,1]&lt;br /&gt;
&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;                        &lt;br /&gt;
g = 2 - U./8;                   &lt;br /&gt;
&lt;br /&gt;
X = U;                           &lt;br /&gt;
Y = f + S.*(g - f);           &lt;br /&gt;
&lt;br /&gt;
% Campo de desplazamientos aplicado&lt;br /&gt;
% Desplazamiento dado en polares: u~(rho,theta) = -(1/20) rho^2 cos(theta) e_theta&lt;br /&gt;
% Convertido a cartesianas: u = [xy/20,  -x^2/20]&lt;br /&gt;
u = (X.*Y)/20;                   % componente en x&lt;br /&gt;
v = -(X.^2)/20;                  % componente en y&lt;br /&gt;
% w = 0 (desplazamientos planos)&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas&lt;br /&gt;
ux_x = Y/20;                    &lt;br /&gt;
ux_y = X/20;                   &lt;br /&gt;
vy_x = -(X/10);                 &lt;br /&gt;
vy_y = zeros(size(X));           &lt;br /&gt;
&lt;br /&gt;
div_u = ux_x + vy_y; % divergencia = y/20&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones&lt;br /&gt;
eps_xx = ux_x;                  &lt;br /&gt;
eps_yy = vy_y;                  &lt;br /&gt;
eps_xy = 0.5*(ux_y + vy_x);      &lt;br /&gt;
&lt;br /&gt;
% Tensiones &lt;br /&gt;
lambda = 1; mu = 1;&lt;br /&gt;
sigma_xx = lambda*div_u + 2*mu*eps_xx;   % = 3y/20&lt;br /&gt;
sigma_yy = lambda*div_u + 2*mu*eps_yy;   % = y/20&lt;br /&gt;
sigma_zz = lambda*div_u;                 % = y/20 (eps_zz=0)&lt;br /&gt;
sigma_xy = 2*mu*eps_xy;                  % = -x/20&lt;br /&gt;
sigma_yx = sigma_xy;                     % simétrico&lt;br /&gt;
sigma_xz = zeros(size(X));               % no hay variación en z&lt;br /&gt;
sigma_zx = zeros(size(X));               % idem&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto al plano ortogonal a i &lt;br /&gt;
% tau_i = |sigma*i - (i·sigma·i) i| = sqrt( sigma_yx^2 + sigma_zx^2 )&lt;br /&gt;
tau_i = abs(sigma_yx);                   % = | -x/20 |&lt;br /&gt;
&lt;br /&gt;
% Gráficos&lt;br /&gt;
&lt;br /&gt;
cm = turbo; % o 'jet'&lt;br /&gt;
lw = 1.2;&lt;br /&gt;
&lt;br /&gt;
% Mallado y contornos de la placa&lt;br /&gt;
figure('Name','Mallado de la placa','Color','w');&lt;br /&gt;
mesh(X,Y,zeros(size(X)),'EdgeColor',[0,0.6,0.7],'FaceColor','none'); hold on;&lt;br /&gt;
plot(X(1,:),Y(1,:),'k','LineWidth',2);       % borde inferior&lt;br /&gt;
plot(X(end,:),Y(end,:),'k','LineWidth',2);    % borde superior&lt;br /&gt;
plot(X(:,1),Y(:,1),'k','LineWidth',2);        % borde izquierdo (pared)&lt;br /&gt;
plot(X(:,end),Y(:,end),'k','LineWidth',2);    % borde derecho&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]); axis equal; grid on; box on;&lt;br /&gt;
xlabel('x'); ylabel('y'); title('Mallado y contorno de la placa');&lt;br /&gt;
&lt;br /&gt;
% Tensiones normales&lt;br /&gt;
figure('Name','Tensiones normales','Color','w');&lt;br /&gt;
tiledlayout(1,3,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_xx); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{xx}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_yy); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{yy}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
&lt;br /&gt;
nexttile;&lt;br /&gt;
surf(X,Y,sigma_zz); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y'); zlabel('\sigma_{zz}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30);&lt;br /&gt;
sgtitle('Distribución de tensiones normales (\lambda=\mu=1)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Tensión tangencial respecto a i &lt;br /&gt;
figure('Name','Tension tangencial respecto a i','Color','w');&lt;br /&gt;
surf(X,Y,tau_i); shading interp; colormap(cm); colorbar;&lt;br /&gt;
title('\tau_{i} = |\sigma_{xy}|'); xlabel('x'); ylabel('y'); zlabel('\tau_{i}');&lt;br /&gt;
axis tight; daspect([1 1 0.35]); view(45,30); grid on;&lt;br /&gt;
&lt;br /&gt;
% Mmapas en planta&lt;br /&gt;
figure('Name','Contornos 2D de tensiones','Color','w');&lt;br /&gt;
tiledlayout(1,4,'Padding','compact','TileSpacing','compact');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_xx,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{xx}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_yy,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{yy}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,sigma_zz,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\sigma_{zz}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
nexttile; contourf(X,Y,tau_i,20,'LineColor','none'); axis equal tight; colorbar;&lt;br /&gt;
title('\tau_{i}'); xlabel('x'); ylabel('y');&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales==&lt;br /&gt;
Tensiones tangenciales respecto al plano ortogonal a &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;, es decir |𝜎 ⋅ &amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;− (&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;⋅ 𝜎 ⋅&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;)&amp;lt;math&amp;gt;\vec{i}&amp;lt;/math&amp;gt;|. Se dibujan solo las no nulas.&lt;br /&gt;
[[Archivo:Tangenciales.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
% Definimos la tensión tangencial en el plano ortogonal al eje i (X), que es tau = [0, sigma_yx, 0].&lt;br /&gt;
Tau_x = zeros(size(sigma_xy)); % (debe ser nula).&lt;br /&gt;
Tau_y = sigma_yx;            &lt;br /&gt;
&lt;br /&gt;
% La magnitud (tau_i_magnitude) se mantiene aquí, pero no se utiliza en el gráfico final.&lt;br /&gt;
tau_i_magnitude = abs(sigma_yx);&lt;br /&gt;
&lt;br /&gt;
% Creamos la figura y configuración inicial&lt;br /&gt;
figure('Name','Tensión Tangencial ','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Tensiones tangenciales respecto al plano ortogonal a i');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% El vector tau es vertical: (0,-x/20), según los cálculos del Ejercicio 9.&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
&lt;br /&gt;
% Usar el comando quiver para dibujar las flechas de tensión.&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Tau_x(idx_y, idx_x),Tau_y(idx_y, idx_x),1.5,'r', 'LineWidth', 1.2);&lt;br /&gt;
% Cortorno de la placa &lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);    &lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);     &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2); &lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
La tensión de Von Mises de define como &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt; σ_{VM} = \sqrt{\frac{(σ_{1}-σ_{2})^2 + (σ_{2}-σ_{3})^2 + (σ_{3}-σ_{1})^2}{2}} &amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Esta fórmula combina las diferencias entre las tensiones principales y mide el esfuerzo equivalente que experimenta el material.&lt;br /&gt;
&lt;br /&gt;
[[Archivo:vonn.jpg|miniaturadeimagen|derecha|700px|Figura 11]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
&lt;br /&gt;
% Malla&lt;br /&gt;
h = 0.1;&lt;br /&gt;
[x, y] = meshgrid(0:h:4, 0:h:2);   % ojo: x -&amp;gt; columnas, y -&amp;gt; filas&lt;br /&gt;
X = x; Y = y;&lt;br /&gt;
&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
f = X./8;&lt;br /&gt;
g = 2 - X./8;&lt;br /&gt;
EnPlaca = (Y &amp;gt;= f) &amp;amp; (Y &amp;lt;= g);&lt;br /&gt;
&lt;br /&gt;
% Definición del campo de desplazamientos en cartesianas&lt;br /&gt;
ux=(1/20).*X.*Y;&lt;br /&gt;
uy=-(1/20).*X.^2;&lt;br /&gt;
&lt;br /&gt;
% Derivadas analíticas:&lt;br /&gt;
% ux_x=d(u_x)/dx=y/20&lt;br /&gt;
% ux_y=d(u_x)/dy=x/20&lt;br /&gt;
% uy_x=d(u_y)/dx=-x/10&lt;br /&gt;
% uy_y=d(u_y)/dy 0&lt;br /&gt;
ux_x=Y./20;&lt;br /&gt;
ux_y=X./20;&lt;br /&gt;
uy_x=-X./10;&lt;br /&gt;
uy_y=zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Divergencia (útil para sigma)&lt;br /&gt;
divU=ux_x+uy_y;&lt;br /&gt;
&lt;br /&gt;
% Tensor de deformaciones simétrico &lt;br /&gt;
% epsilon = 1/2(grad u + grad u^T)&lt;br /&gt;
% epsilon_xx = ux_x&lt;br /&gt;
% epsilon_yy = uy_y&lt;br /&gt;
% epsilon_xy = 1/2*(ux_y + uy_x)&lt;br /&gt;
eps_xx = ux_x;&lt;br /&gt;
eps_yy = uy_y;&lt;br /&gt;
eps_xy = 0.5*(ux_y + uy_x);&lt;br /&gt;
&lt;br /&gt;
% Para el caso 3D consideramos eps_zz = 0&lt;br /&gt;
eps_zz = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Coeficientes de Lamé&lt;br /&gt;
lambda=1;&lt;br /&gt;
mu=1;&lt;br /&gt;
&lt;br /&gt;
% Construcción del tensor de tensiones &lt;br /&gt;
%sigma = lambda*div(u)*I + 2*mu*eps&lt;br /&gt;
sigma_xx = lambda.*divU + 2*mu.*eps_xx;&lt;br /&gt;
sigma_yy = lambda.*divU + 2*mu.*eps_yy;&lt;br /&gt;
sigma_zz = lambda.*divU + 2*mu.*eps_zz;&lt;br /&gt;
sigma_xy = 2*mu.*eps_xy;    % = sigma_yx&lt;br /&gt;
&lt;br /&gt;
% Von Mises y matriz para autovalores&lt;br /&gt;
VM = NaN(size(X));&lt;br /&gt;
S1 = NaN(size(X)); S2 = NaN(size(X)); S3 = NaN(size(X));&lt;br /&gt;
&lt;br /&gt;
% Loop sobre puntos dentro de la placa para calcular autovalores&lt;br /&gt;
[idx_i,idx_j]=find(EnPlaca);&lt;br /&gt;
npts=numel(idx_i);&lt;br /&gt;
&lt;br /&gt;
for k = 1:npts&lt;br /&gt;
    i = idx_i(k); j = idx_j(k);   % i: fila (y index), j: columna (x index)&lt;br /&gt;
    % construir sigma 3x3 en ese punto&lt;br /&gt;
    S = [sigma_xx(i,j), sigma_xy(i,j), 0;sigma_xy(i,j), sigma_yy(i,j),0;0,0,sigma_zz(i,j)];&lt;br /&gt;
    e = eig(S);          &lt;br /&gt;
    % ordenar autovalores (no estrictamente necesario, pero ordeno descendente)&lt;br /&gt;
    e = sort(e,'descend');&lt;br /&gt;
    s1 = e(1); s2 = e(2); s3 = e(3);&lt;br /&gt;
    % tensión de Von Mises (fórmula)&lt;br /&gt;
    sigmaVM = sqrt( ((s1-s2).^2 + (s2-s3).^2 + (s3-s1).^2) / 2 );&lt;br /&gt;
    VM(i,j) = sigmaVM;&lt;br /&gt;
    S1(i,j) = s1; S2(i,j) = s2; S3(i,j) = s3;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
VM(~EnPlaca) = NaN;&lt;br /&gt;
% Buscar máximo de Von Mises dentro de la placa&lt;br /&gt;
[maxVM, indMax] = max(VM(:));&lt;br /&gt;
[rowMax, colMax] = ind2sub(size(VM), indMax);&lt;br /&gt;
xMax = X(rowMax, colMax);&lt;br /&gt;
yMax = Y(rowMax, colMax);&lt;br /&gt;
&lt;br /&gt;
% Visualización&lt;br /&gt;
figure('Name','Tensión de Von Mises','Color','w'); clf; hold on;&lt;br /&gt;
axis equal; axis([-0.5 4.5 -0.5 2.5]); box on;&lt;br /&gt;
title('Tensión de Von Mises \sigma_{VM}');&lt;br /&gt;
xlabel('x'); ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% Contourf del campo VM&lt;br /&gt;
numLevels = 30;&lt;br /&gt;
[C, hC] = contourf(X, Y, VM, numLevels, 'LineStyle','none');&lt;br /&gt;
colormap(jet);&lt;br /&gt;
c = colorbar; ylabel(c, '\sigma_{VM}');&lt;br /&gt;
% Bordes de la placa&lt;br /&gt;
xb = linspace(0,4,200);&lt;br /&gt;
plot(xb, xb./8, 'k-', 'LineWidth', 1.5);         &lt;br /&gt;
plot(xb, 2 - xb./8, 'k-', 'LineWidth', 1.5);    &lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 1.5);  &lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 1.5); &lt;br /&gt;
&lt;br /&gt;
% Punto de máxima tensión de Von Mises&lt;br /&gt;
plot(xMax, yMax, 'rp', 'MarkerSize', 14, 'MarkerFaceColor', 'r');&lt;br /&gt;
text(xMax+0.08, yMax+0.08, sprintf('Máx VM = %.3g', maxVM), 'FontWeight','bold','Color','r');&lt;br /&gt;
&lt;br /&gt;
% Mejora estética&lt;br /&gt;
set(gcf,'Color','w');&lt;br /&gt;
shading interp;&lt;br /&gt;
&lt;br /&gt;
hold off;&lt;br /&gt;
&lt;br /&gt;
% Información&lt;br /&gt;
fprintf('Máximo Von Mises = %.6g en (x,y) = (%.4g, %.4g)\n', maxVM, xMax, yMax);&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Campo de Fuerzas==&lt;br /&gt;
&lt;br /&gt;
El campo de fuerzas &amp;lt;math&amp;gt;\vec{F}&amp;lt;/math&amp;gt; que actúa sobre la placa (y que son las causantes del desplazamiento observado) se aproxima usando la ecuación de la elasticidad lineal &amp;lt;math&amp;gt;\vec{F}= − div 𝜎&amp;lt;/math&amp;gt;, donde &amp;lt;math&amp;gt;div 𝜎&amp;lt;/math&amp;gt; es la divergencia de un campo tensorial, que en coordenadas cartesiana se define como &amp;lt;math&amp;gt;div 𝜎 = (div 𝜎)_{1}\vec{i} + (div 𝜎)_{2}\vec{j}+ (div 𝜎)_{3}\vec{k}, (div 𝜎)\vec{i} =3&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;\sum_{j=1}^3 = \frac{𝜕𝜎_{ij}}{𝜕_{xj}}&amp;lt;/math&amp;gt;.&amp;lt;br /&amp;gt;&lt;br /&gt;
Resuelvo:&amp;lt;br /&amp;gt;&lt;br /&gt;
#Desplazamiento en coordenadas cartesianas&amp;lt;br /&amp;gt;&lt;br /&gt;
::Tenemos: &amp;lt;math&amp;gt;u⃗(ρ,θ)=-\frac{1}{20}\rho^2 \cos\theta\,e_{θ​}​&amp;lt;/math&amp;gt;&lt;br /&gt;
::Convertimos a cartesianas: &amp;lt;math&amp;gt;ρ=\sqrt{x^2 + y^2}, \quad \theta = \arctan\left(\frac{y}{x}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
::El vector &amp;lt;math&amp;gt;\vec{e}_\theta = (-\sin\theta, \cos\theta)&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt; u⃗_{x}=\frac{1}{20}\rho^2 \cos\theta\sin\theta &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; u⃗_{y}=-\frac{1}{20}\rho^2 \cos^2\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
::Usamos: &amp;lt;math&amp;gt;sinθ=\frac ρy​,cosθ=\frac ρx​&amp;lt;/math&amp;gt;. Entonces: &amp;lt;math&amp;gt;u⃗_{x}​=\frac{1}{20}\rho^2​\frac ρx​\frac ρy​&amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt;u⃗_{y}​=\frac{1}{20}\rho^2​\frac ρ^2x​^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campoofuerzas.png|miniaturadeimagen|derecha|700px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
% Definición del paso de muestreo (h) y el vector de coordenadas X.&lt;br /&gt;
h = 0.1;                         &lt;br /&gt;
x = 0:h:4;                       &lt;br /&gt;
num_puntos_y = round(2/h);&lt;br /&gt;
s = linspace(0,1,num_puntos_y+1);&lt;br /&gt;
&lt;br /&gt;
% Generación del mallado físico (X, Y) dentro de la geometría trapezoidal.&lt;br /&gt;
[U,S] = meshgrid(x,s);&lt;br /&gt;
f = U./8;&lt;br /&gt;
g = 2 - U./8;&lt;br /&gt;
X = U;&lt;br /&gt;
Y = f + S.*(g - f);&lt;br /&gt;
&lt;br /&gt;
% Creación de la máscara lógica para identificar los puntos interiores de la placa.&lt;br /&gt;
mask = (Y &amp;gt;= X/8) &amp;amp; (Y &amp;lt;= 2 - X./8);&lt;br /&gt;
&lt;br /&gt;
% CAMPO DE FUERZA F&lt;br /&gt;
% Cálculo analítico: F = -div(sigma) resulta en F = [0, 0].&lt;br /&gt;
% Inicializa la componente horizontal Fx a cero.&lt;br /&gt;
Fx = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Inicializa la componente vertical Fy a cero.&lt;br /&gt;
Fy = zeros(size(X));&lt;br /&gt;
&lt;br /&gt;
% Aplica la máscara: los puntos fuera de la placa se establecen a NaN (no se dibujan).&lt;br /&gt;
Fx(~mask) = NaN;&lt;br /&gt;
Fy(~mask) = NaN;&lt;br /&gt;
&lt;br /&gt;
% Configuración inicial de la figura y los ejes para la visualización.&lt;br /&gt;
figure('Name','Campo de Fuerzas F','Color','w');&lt;br /&gt;
hold on; &lt;br /&gt;
axis equal; &lt;br /&gt;
box on; &lt;br /&gt;
grid on;&lt;br /&gt;
axis([-0.5 4.5 -0.5 2.5]);&lt;br /&gt;
title('Campo de Fuerzas Volumétricas ');&lt;br /&gt;
xlabel('x'); &lt;br /&gt;
ylabel('y');&lt;br /&gt;
&lt;br /&gt;
% DIBUJO DEL CAMPO VECTORIAL&lt;br /&gt;
step = 3; &lt;br /&gt;
idx_x = 1:step:size(X,2);&lt;br /&gt;
idx_y = 1:step:size(X,1);&lt;br /&gt;
quiver(X(idx_y, idx_x), Y(idx_y, idx_x),Fx(idx_y, idx_x),Fy(idx_y, idx_x),0.5,'b', 'LineWidth', 1.2);&lt;br /&gt;
&lt;br /&gt;
%Resultado analítico de F=0.&lt;br /&gt;
text(2, 1, '¡El campo de fuerzas nulo!','HorizontalAlignment', 'center', 'FontSize', 14, 'Color', [0.5 0 0], 'FontWeight', 'bold');&lt;br /&gt;
text(2, 0.7, 'El equilibrio se satisface en el interior de la placa.','HorizontalAlignment', 'center', 'FontSize', 10, 'Color', [0.5 0 0]);&lt;br /&gt;
&lt;br /&gt;
% Dibuja las líneas que delimitan el contorno de la placa.&lt;br /&gt;
plot(x, x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot(x, 2 - x/8, 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([0 0], [0 2], 'k-', 'LineWidth', 2);&lt;br /&gt;
plot([4 4], [0.5 1.5], 'k-', 'LineWidth', 2);&lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total==&lt;br /&gt;
Supongamos que la densidad de la placa es &amp;lt;math&amp;gt;𝑑(𝑥, 𝑦) = (4 − 𝑥)|𝑦|&amp;lt;/math&amp;gt;. Se calcula la masa total aproximando la integral correspondiente numéricamente&amp;lt;br /&amp;gt;&lt;br /&gt;
La región en la que trabajamos es &amp;lt;math&amp;gt; x∈[0,4],  y∈[\frac8x​, 2−\frac8x​] &amp;lt;/math&amp;gt;. Por lo tanto, la integral para la masa es:&lt;br /&gt;
&amp;lt;math&amp;gt;M=\int_{0}^{4} \int_{\frac{x}{8}}^{2 - \frac{x}{8}} (4 - x)y \, dy \, dx&amp;lt;/math&amp;gt;. Resolviendo:&amp;lt;br /&amp;gt;&lt;br /&gt;
:Paso 1: Integral interna&lt;br /&gt;
:::&amp;lt;math&amp;gt;\int_{\frac{x}{8}}^{2 - \frac{x}{8}} y \, dy = \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right]&amp;lt;/math&amp;gt;&lt;br /&gt;
:Entonces la integral completa es:&lt;br /&gt;
:::&amp;lt;math&amp;gt;M=\int_{0}^{4} (4 - x) \cdot \frac{1}{2}\left[(2 - \frac{x}{8})^2 - (\frac{x}{8})^2\right] dx&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
:Resolviendo queda que &amp;lt;math&amp;gt;M=13,33&amp;lt;/math&amp;gt; (unidades de masa)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:dens.jpg|miniaturadeimagen|derecha|800px|Figura 10]]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;matlab&amp;quot;&amp;gt;&lt;br /&gt;
clc; clear; close all;&lt;br /&gt;
% Mallado&lt;br /&gt;
h=0.05; &lt;br /&gt;
[X,Y]=meshgrid(0:h:4,0:h:2);&lt;br /&gt;
&lt;br /&gt;
% Forma de la placa&lt;br /&gt;
Condition=(Y&amp;gt;=X./8)&amp;amp;(Y&amp;lt;=2-X./8);&lt;br /&gt;
&lt;br /&gt;
% Definición de la Densidad : d(x,y)=(4-x)*|y|&lt;br /&gt;
Densidad=(4-X).*abs(Y);&lt;br /&gt;
&lt;br /&gt;
% Filtrado para la Gráfica&lt;br /&gt;
Densidad(~Condition)=NaN;&lt;br /&gt;
&lt;br /&gt;
% Visualización 3D&lt;br /&gt;
figure('Name','Densidad', 'Color','w');&lt;br /&gt;
&lt;br /&gt;
% Superficie 3D&lt;br /&gt;
surf(X,Y,Densidad);&lt;br /&gt;
&lt;br /&gt;
% Configuración&lt;br /&gt;
shading interp; % Elimina las líneas negras para que se vea suave&lt;br /&gt;
colormap(jet);  % Mapa de colores (De azul a rojo)&lt;br /&gt;
colorbar;       % Barra de referencia&lt;br /&gt;
caxis([0 8]);   % Fija la escala de colores&lt;br /&gt;
&lt;br /&gt;
% Etiquetas y Título&lt;br /&gt;
title({'Densidad'},'FontSize',13);&lt;br /&gt;
xlabel('Eje X','FontWeight','bold');&lt;br /&gt;
ylabel('Eje Y','FontWeight','bold');&lt;br /&gt;
zlabel('Densidad (kg/m^2)','FontWeight','bold');&lt;br /&gt;
&lt;br /&gt;
% Ajustes&lt;br /&gt;
axis tight;      % Ajusta los ejes al contenido&lt;br /&gt;
view(-45, 30);   % Ángulo de vista &lt;br /&gt;
grid on;&lt;br /&gt;
box on;&lt;br /&gt;
&lt;br /&gt;
% Proyección de sombra en el suelo&lt;br /&gt;
hold on;&lt;br /&gt;
% Dibujamos el contorno plano abajo del todo (en z=0) para referencia&lt;br /&gt;
contour(X,Y,Densidad,20,'z','Offset',0); &lt;br /&gt;
hold off;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Ejemplos de uso en la ingeniería ==&lt;br /&gt;
&lt;br /&gt;
Una viga en voladizo tiene grandes uso debido a su forma, además de ser muy útil por su funcionalidad. Estas vigas tienen un gran abanico de usos como: &lt;br /&gt;
* Usos arquitectónicos → balcones y terrazas, cubiertas de entradas y marquesinas...&lt;br /&gt;
* Maquinarias → Brazos de grúas o en palas de aerogeneradores...&lt;br /&gt;
* En la ingeniería → Puentes en voladizo,palas de un aereogenerador...&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
Para realizar el trabajo nos hemos apoyado en:&lt;br /&gt;
* Matlab (Aplicación informática para representar las gráficas y dibujos)&lt;br /&gt;
* Apuntes de clase y los proporcionados por la escuela&lt;br /&gt;
* Trabajos de años anteriores (https://mat.caminos.upm.es/wiki/Placa_Plana_(Grupo_26) )&lt;br /&gt;
* Google Gemini y Copilot M365  (Para facilitar la obtención de los código que introducíamos en matlab)&lt;br /&gt;
[[Categoría:Teoría de Campos]]&lt;br /&gt;
[[Categoría:TC25/26]]&lt;/div&gt;</summary>
		<author><name>Marco.moreno</name></author>	</entry>

	</feed>