<?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=Jose+Ramos</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=Jose+Ramos"/>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/wiki/Especial:Contribuciones/Jose_Ramos"/>
		<updated>2026-05-02T11:51:41Z</updated>
		<subtitle>Contribuciones del usuario</subtitle>
		<generator>MediaWiki 1.26.2</generator>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22986</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22986"/>
				<updated>2014-12-15T17:28:38Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Tensiones tangenciales respecto al plano ortogonal a ĵ */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos &amp;lt;math&amp;gt;[-1/2,1/2]\times[0,4]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante &amp;lt;math&amp;gt;H = \frac{1}{10}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Rotacional del campo vectorial de desplazamientos&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
rz = inline('-y/10','x','y');&lt;br /&gt;
Zr = abs(rz(X,Y));&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
title('Representación del rotacional');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista ortogonal del rotacional sobre la placa');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rotacional (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Los puntos con que sufren mayor rotacional son los &amp;lt;math&amp;gt;(x,y) = (x,4)&amp;lt;/math&amp;gt;. Cuyo valor de rotacional es 0.4&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
&lt;br /&gt;
Sabiendo que el medio que tratamos, es un medio elástico lineal, isótropo y homogéneo, entonces el tensor de tensiones sobre el sólido elástico depende de los coeficientes de ''Lamé'' (\(\lambda\) y \(\mu\)):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;\( \sigma_{ij}=\lambda \nabla \cdot \vec u \delta_{ij} + 2\mu \epsilon_{ij} \)&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de las tensiones tomamos como valor de éstos coeficientes 1.&lt;br /&gt;
&lt;br /&gt;
Las tensiones normales se calculan con la fórmula anterior.Como la divergencia del campo vectorial es cero, y como los coeficientes de Lamé son iguales a 1, la tensión normal es \( \sigma_{ij}=2*\epsilon_{ij} \), donde \(\epsilon_{ij} \) es la parte simétrica del tensor gradiente de \(\vec u\).&lt;br /&gt;
&lt;br /&gt;
Así, tenemos que la tensión normal al eje \(\vec i\) nos queda \(\vec i\)*\(\sigma\)*\(\vec i\), que es la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec i\) (que depende solo de \(\vec j\)) sobre \(\vec i\), dando como resultado cero.&lt;br /&gt;
&lt;br /&gt;
Para la tensión normal al eje \(\vec j\), ocurre lo mismo, siendo \(\vec j\)*\(\sigma\)*\(\vec j\) la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec j\) (que depende solo de \(\vec i\)) sobre \(\vec j\), dando también cero.&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
&lt;br /&gt;
Las tensiones tangenciales están definidas por la ecuación \(|\sigma \cdot \vec i-(\vec i \cdot \sigma \cdot \vec i) \vec i|\) respecto al plano ortogonal a \(\vec i\). El segundo sumando es cero. Entonces queda \(|\sigma \cdot \vec i|\) = &amp;lt;math&amp;gt;[0,\frac{y}{10},0]&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a î&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = 0*X; % Componentes x del campo vectorial&lt;br /&gt;
Fy = Y./10; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a i');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto i.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
&lt;br /&gt;
Las tensiones están definidas por la ecuación \(|\sigma \cdot \vec j-(\vec j \cdot \sigma \cdot \vec j) \vec j|\) respecto al plano ortogonal a \(\vec j\). El segundo sumando es cero por ello queda \(|\sigma \cdot \vec j|\) = &amp;lt;math&amp;gt;[\frac{y}{10},0,0]&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a j&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = Y./10; % Componentes x del campo vectorial&lt;br /&gt;
Fy = 0*Y; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a j');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto j.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
La tensión de Von Mises se define por la fórmula&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\sigma_1, \sigma_2, \sigma_3&amp;lt;/math&amp;gt; Son los autovalores de la matriz tensor de tensiones σ (también conocidos como tensiones principales). Se&lt;br /&gt;
trata de una magnitud escalar que se suele usar como indicador para saber cuando un material&lt;br /&gt;
inicia un comportamiento plástico y no elástico puro.&lt;br /&gt;
&lt;br /&gt;
Los valores obtenidos son: &amp;lt;math&amp;gt;\sigma_1 = 0 , \sigma_2 = \frac{y}{10} , \sigma_3 = \frac{-y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidos los autovalores, la tensión de Von Mises sobre la placa queda representada así:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Intervalos de trabajo&lt;br /&gt;
x=[-1/2:0.1:1/2];&lt;br /&gt;
y=[0:0.1:4];&lt;br /&gt;
% Mallado&lt;br /&gt;
[X,Y]=meshgrid(x,y);&lt;br /&gt;
[m,n]=size(X);&lt;br /&gt;
% Definimos la matriz asociada al tensor de tensiones&lt;br /&gt;
sigma=[0,1/10,0;1/10,0,0;0,0,0];&lt;br /&gt;
&lt;br /&gt;
% Autovalores &lt;br /&gt;
&lt;br /&gt;
auto = eig(sigma);&lt;br /&gt;
&lt;br /&gt;
t1 = Y.*auto(1);&lt;br /&gt;
t2 = Y.*auto(2);&lt;br /&gt;
t3 = Y.*auto(3);&lt;br /&gt;
&lt;br /&gt;
% Tensión de Von Mises&lt;br /&gt;
TVM=sqrt(((t1-t2).^2+(t2-t3).^2+(t3-t1).^2)/2);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
subplot(2,1,1)&lt;br /&gt;
mesh(X,Y,TVM)&lt;br /&gt;
subplot(2,1,2)&lt;br /&gt;
surf(X,Y,TVM)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado11C1.jpg|350px|miniaturadeimagen|centro|Tensión de Von Mises máxima en y=4]]&lt;br /&gt;
&lt;br /&gt;
=Masa total de la placa y función de densidad=&lt;br /&gt;
&lt;br /&gt;
Sabemos que la función que define la densidad de la placa está dada por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f_d(x,y) = x.y.e^{-x^-2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar dicha función para ver como se distribuye en la placa la densidad. &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación de la función densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2)));&lt;br /&gt;
mesh(X,Y,Zd);&lt;br /&gt;
title('Función de densidad de la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Densidad (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Al no tener sentido hablar de densidad negativa, se toman como absolutos todos los valores de la función de densidad. &lt;br /&gt;
&lt;br /&gt;
Así la masa total de la placa es: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;M = \int_{S}f_d dS&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La integral define el volumen bajo la superficie, cuyo valor corresponde a la masa total de la placa. &lt;br /&gt;
&lt;br /&gt;
Para el cálculo del volumen vamos a proceder por el método de aproximación numérica que considera los volúmenes de los paralelepípedos, cuyas bases tienen área &amp;lt;math&amp;gt;H^2 ;H=0.1&amp;lt;/math&amp;gt; y volúmenes las imágenes de la función de densidad. La suma de todos los volúmenes nos da el valor deseado.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Cálculo de la masa total de la placa a partir de la función de densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2))); % Función de densidad&lt;br /&gt;
V = 0.1^2*Zd; % Matriz cuyas componentes son los volúmenes de los &lt;br /&gt;
% paralelepípedos en cuestión&lt;br /&gt;
V = abs(V); % Toma valores absolutos de las componentes de la matriz&lt;br /&gt;
M = sum(sum(V)); % La masa total es la suma de todos los volúmenes&lt;br /&gt;
disp(M); % Muestra en pantalla la masa total de la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La masa total de la placa tiene un valor de &amp;lt;math&amp;gt;M = 0.0163&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22985</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22985"/>
				<updated>2014-12-15T17:26:07Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Tensión de Von Mises */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos &amp;lt;math&amp;gt;[-1/2,1/2]\times[0,4]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante &amp;lt;math&amp;gt;H = \frac{1}{10}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Rotacional del campo vectorial de desplazamientos&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
rz = inline('-y/10','x','y');&lt;br /&gt;
Zr = abs(rz(X,Y));&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
title('Representación del rotacional');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista ortogonal del rotacional sobre la placa');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rotacional (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Los puntos con que sufren mayor rotacional son los &amp;lt;math&amp;gt;(x,y) = (x,4)&amp;lt;/math&amp;gt;. Cuyo valor de rotacional es 0.4&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
&lt;br /&gt;
Sabiendo que el medio que tratamos, es un medio elástico lineal, isótropo y homogéneo, entonces el tensor de tensiones sobre el sólido elástico depende de los coeficientes de ''Lamé'' (\(\lambda\) y \(\mu\)):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;\( \sigma_{ij}=\lambda \nabla \cdot \vec u \delta_{ij} + 2\mu \epsilon_{ij} \)&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de las tensiones tomamos como valor de éstos coeficientes 1.&lt;br /&gt;
&lt;br /&gt;
Las tensiones normales se calculan con la fórmula anterior.Como la divergencia del campo vectorial es cero, y como los coeficientes de Lamé son iguales a 1, la tensión normal es \( \sigma_{ij}=2*\epsilon_{ij} \), donde \(\epsilon_{ij} \) es la parte simétrica del tensor gradiente de \(\vec u\).&lt;br /&gt;
&lt;br /&gt;
Así, tenemos que la tensión normal al eje \(\vec i\) nos queda \(\vec i\)*\(\sigma\)*\(\vec i\), que es la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec i\) (que depende solo de \(\vec j\)) sobre \(\vec i\), dando como resultado cero.&lt;br /&gt;
&lt;br /&gt;
Para la tensión normal al eje \(\vec j\), ocurre lo mismo, siendo \(\vec j\)*\(\sigma\)*\(\vec j\) la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec j\) (que depende solo de \(\vec i\)) sobre \(\vec j\), dando también cero.&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
&lt;br /&gt;
Las tensiones tangenciales están definidas por la ecuación \(|\sigma \cdot \vec i-(\vec i \cdot \sigma \cdot \vec i) \vec i|\) respecto al plano ortogonal a \(\vec i\). El segundo sumando es cero. Entonces queda \(|\sigma \cdot \vec i|\) = &amp;lt;math&amp;gt;[0,\frac{y}{10},0]&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a î&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = 0*X; % Componentes x del campo vectorial&lt;br /&gt;
Fy = Y./10; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a i');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto i.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
&lt;br /&gt;
Las tensiones están definidas por la ecuación \(|\sigma \cdot \vec j-(\vec j \cdot \sigma \cdot \vec j) \vec j|\) respecto al plano ortogonal a \(\vec j\). El tensor de tensiones es cero, haciendo cero el segundo sumando. Entonces, nos queda \(|\sigma \cdot \vec j|\) = &amp;lt;math&amp;gt;[\frac{y}{10},0,0]&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a j&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = Y./10; % Componentes x del campo vectorial&lt;br /&gt;
Fy = 0*Y; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a j');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto j.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
La tensión de Von Mises se define por la fórmula&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\sigma_1, \sigma_2, \sigma_3&amp;lt;/math&amp;gt; Son los autovalores de la matriz tensor de tensiones σ (también conocidos como tensiones principales). Se&lt;br /&gt;
trata de una magnitud escalar que se suele usar como indicador para saber cuando un material&lt;br /&gt;
inicia un comportamiento plástico y no elástico puro.&lt;br /&gt;
&lt;br /&gt;
Los valores obtenidos son: &amp;lt;math&amp;gt;\sigma_1 = 0 , \sigma_2 = \frac{y}{10} , \sigma_3 = \frac{-y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidos los autovalores, la tensión de Von Mises sobre la placa queda representada así:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Intervalos de trabajo&lt;br /&gt;
x=[-1/2:0.1:1/2];&lt;br /&gt;
y=[0:0.1:4];&lt;br /&gt;
% Mallado&lt;br /&gt;
[X,Y]=meshgrid(x,y);&lt;br /&gt;
[m,n]=size(X);&lt;br /&gt;
% Definimos la matriz asociada al tensor de tensiones&lt;br /&gt;
sigma=[0,1/10,0;1/10,0,0;0,0,0];&lt;br /&gt;
&lt;br /&gt;
% Autovalores &lt;br /&gt;
&lt;br /&gt;
auto = eig(sigma);&lt;br /&gt;
&lt;br /&gt;
t1 = Y.*auto(1);&lt;br /&gt;
t2 = Y.*auto(2);&lt;br /&gt;
t3 = Y.*auto(3);&lt;br /&gt;
&lt;br /&gt;
% Tensión de Von Mises&lt;br /&gt;
TVM=sqrt(((t1-t2).^2+(t2-t3).^2+(t3-t1).^2)/2);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
subplot(2,1,1)&lt;br /&gt;
mesh(X,Y,TVM)&lt;br /&gt;
subplot(2,1,2)&lt;br /&gt;
surf(X,Y,TVM)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado11C1.jpg|350px|miniaturadeimagen|centro|Tensión de Von Mises máxima en y=4]]&lt;br /&gt;
&lt;br /&gt;
=Masa total de la placa y función de densidad=&lt;br /&gt;
&lt;br /&gt;
Sabemos que la función que define la densidad de la placa está dada por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f_d(x,y) = x.y.e^{-x^-2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar dicha función para ver como se distribuye en la placa la densidad. &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación de la función densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2)));&lt;br /&gt;
mesh(X,Y,Zd);&lt;br /&gt;
title('Función de densidad de la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Densidad (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Al no tener sentido hablar de densidad negativa, se toman como absolutos todos los valores de la función de densidad. &lt;br /&gt;
&lt;br /&gt;
Así la masa total de la placa es: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;M = \int_{S}f_d dS&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La integral define el volumen bajo la superficie, cuyo valor corresponde a la masa total de la placa. &lt;br /&gt;
&lt;br /&gt;
Para el cálculo del volumen vamos a proceder por el método de aproximación numérica que considera los volúmenes de los paralelepípedos, cuyas bases tienen área &amp;lt;math&amp;gt;H^2 ;H=0.1&amp;lt;/math&amp;gt; y volúmenes las imágenes de la función de densidad. La suma de todos los volúmenes nos da el valor deseado.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Cálculo de la masa total de la placa a partir de la función de densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2))); % Función de densidad&lt;br /&gt;
V = 0.1^2*Zd; % Matriz cuyas componentes son los volúmenes de los &lt;br /&gt;
% paralelepípedos en cuestión&lt;br /&gt;
V = abs(V); % Toma valores absolutos de las componentes de la matriz&lt;br /&gt;
M = sum(sum(V)); % La masa total es la suma de todos los volúmenes&lt;br /&gt;
disp(M); % Muestra en pantalla la masa total de la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La masa total de la placa tiene un valor de &amp;lt;math&amp;gt;M = 0.0163&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22984</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22984"/>
				<updated>2014-12-15T17:25:40Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Tensión de Von Mises */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos &amp;lt;math&amp;gt;[-1/2,1/2]\times[0,4]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante &amp;lt;math&amp;gt;H = \frac{1}{10}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Rotacional del campo vectorial de desplazamientos&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
rz = inline('-y/10','x','y');&lt;br /&gt;
Zr = abs(rz(X,Y));&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
title('Representación del rotacional');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista ortogonal del rotacional sobre la placa');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rotacional (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Los puntos con que sufren mayor rotacional son los &amp;lt;math&amp;gt;(x,y) = (x,4)&amp;lt;/math&amp;gt;. Cuyo valor de rotacional es 0.4&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
&lt;br /&gt;
Sabiendo que el medio que tratamos, es un medio elástico lineal, isótropo y homogéneo, entonces el tensor de tensiones sobre el sólido elástico depende de los coeficientes de ''Lamé'' (\(\lambda\) y \(\mu\)):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;\( \sigma_{ij}=\lambda \nabla \cdot \vec u \delta_{ij} + 2\mu \epsilon_{ij} \)&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de las tensiones tomamos como valor de éstos coeficientes 1.&lt;br /&gt;
&lt;br /&gt;
Las tensiones normales se calculan con la fórmula anterior.Como la divergencia del campo vectorial es cero, y como los coeficientes de Lamé son iguales a 1, la tensión normal es \( \sigma_{ij}=2*\epsilon_{ij} \), donde \(\epsilon_{ij} \) es la parte simétrica del tensor gradiente de \(\vec u\).&lt;br /&gt;
&lt;br /&gt;
Así, tenemos que la tensión normal al eje \(\vec i\) nos queda \(\vec i\)*\(\sigma\)*\(\vec i\), que es la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec i\) (que depende solo de \(\vec j\)) sobre \(\vec i\), dando como resultado cero.&lt;br /&gt;
&lt;br /&gt;
Para la tensión normal al eje \(\vec j\), ocurre lo mismo, siendo \(\vec j\)*\(\sigma\)*\(\vec j\) la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec j\) (que depende solo de \(\vec i\)) sobre \(\vec j\), dando también cero.&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
&lt;br /&gt;
Las tensiones tangenciales están definidas por la ecuación \(|\sigma \cdot \vec i-(\vec i \cdot \sigma \cdot \vec i) \vec i|\) respecto al plano ortogonal a \(\vec i\). El segundo sumando es cero. Entonces queda \(|\sigma \cdot \vec i|\) = &amp;lt;math&amp;gt;[0,\frac{y}{10},0]&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a î&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = 0*X; % Componentes x del campo vectorial&lt;br /&gt;
Fy = Y./10; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a i');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto i.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
&lt;br /&gt;
Las tensiones están definidas por la ecuación \(|\sigma \cdot \vec j-(\vec j \cdot \sigma \cdot \vec j) \vec j|\) respecto al plano ortogonal a \(\vec j\). El tensor de tensiones es cero, haciendo cero el segundo sumando. Entonces, nos queda \(|\sigma \cdot \vec j|\) = &amp;lt;math&amp;gt;[\frac{y}{10},0,0]&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a j&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = Y./10; % Componentes x del campo vectorial&lt;br /&gt;
Fy = 0*Y; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a j');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto j.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
La tensión de Von Mises se define por la fórmula&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\sigma_1, \sigma_2, \sigma_3&amp;lt;/math&amp;gt; Son los autovalores de la matriz tensor de tensiones σ (también conocidos como tensiones principales). Se&lt;br /&gt;
trata de una magnitud escalar que se suele usar como indicador para saber cuando un material&lt;br /&gt;
inicia un comportamiento plástico y no elástico puro.&lt;br /&gt;
&lt;br /&gt;
Los valores obtenidos son: &amp;lt;math&amp;gt;\sigma_1 = 0 , \sigma_2 = \frac{y}{10} , \sigma_3 = \frac{-y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidos los autovalores, la tensión de Von Mises sobre la placa queda representada así:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Intervalos de trabajo&lt;br /&gt;
x=[-1/2:0.1:1/2];&lt;br /&gt;
y=[0:0.1:4];&lt;br /&gt;
% Mallado&lt;br /&gt;
[X,Y]=meshgrid(x,y);&lt;br /&gt;
[m,n]=size(X);&lt;br /&gt;
% Definimos la matriz asociada al tensor de tensiones&lt;br /&gt;
sigma=[0,1/10,0;1/10,0,0;0,0,0];&lt;br /&gt;
&lt;br /&gt;
% Autovalores &lt;br /&gt;
&lt;br /&gt;
auto = eig(sigma);&lt;br /&gt;
&lt;br /&gt;
t1 = Y.*auto(1);&lt;br /&gt;
t2 = Y.*auto(2);&lt;br /&gt;
t3 = Y.*auto(3);&lt;br /&gt;
&lt;br /&gt;
% Tensión de Von Mises&lt;br /&gt;
TVM=sqrt(((t1-t2).^2+(t2-t3).^2+(t3-t1).^2)/2);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
subplot(2,1,1)&lt;br /&gt;
mesh(X,Y,TVM)&lt;br /&gt;
subplot(2,1,2)&lt;br /&gt;
surf(X,Y,TVM)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado11C1.jpg|350px|miniaturadeimagen|centro|Tensión de Von Mises máxima en y=4]]&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=Masa total de la placa y función de densidad=&lt;br /&gt;
&lt;br /&gt;
Sabemos que la función que define la densidad de la placa está dada por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f_d(x,y) = x.y.e^{-x^-2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar dicha función para ver como se distribuye en la placa la densidad. &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación de la función densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2)));&lt;br /&gt;
mesh(X,Y,Zd);&lt;br /&gt;
title('Función de densidad de la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Densidad (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Al no tener sentido hablar de densidad negativa, se toman como absolutos todos los valores de la función de densidad. &lt;br /&gt;
&lt;br /&gt;
Así la masa total de la placa es: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;M = \int_{S}f_d dS&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La integral define el volumen bajo la superficie, cuyo valor corresponde a la masa total de la placa. &lt;br /&gt;
&lt;br /&gt;
Para el cálculo del volumen vamos a proceder por el método de aproximación numérica que considera los volúmenes de los paralelepípedos, cuyas bases tienen área &amp;lt;math&amp;gt;H^2 ;H=0.1&amp;lt;/math&amp;gt; y volúmenes las imágenes de la función de densidad. La suma de todos los volúmenes nos da el valor deseado.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Cálculo de la masa total de la placa a partir de la función de densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2))); % Función de densidad&lt;br /&gt;
V = 0.1^2*Zd; % Matriz cuyas componentes son los volúmenes de los &lt;br /&gt;
% paralelepípedos en cuestión&lt;br /&gt;
V = abs(V); % Toma valores absolutos de las componentes de la matriz&lt;br /&gt;
M = sum(sum(V)); % La masa total es la suma de todos los volúmenes&lt;br /&gt;
disp(M); % Muestra en pantalla la masa total de la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La masa total de la placa tiene un valor de &amp;lt;math&amp;gt;M = 0.0163&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22983</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22983"/>
				<updated>2014-12-15T17:24:19Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Tensión de Von Mises */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos &amp;lt;math&amp;gt;[-1/2,1/2]\times[0,4]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante &amp;lt;math&amp;gt;H = \frac{1}{10}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Rotacional del campo vectorial de desplazamientos&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
rz = inline('-y/10','x','y');&lt;br /&gt;
Zr = abs(rz(X,Y));&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
title('Representación del rotacional');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista ortogonal del rotacional sobre la placa');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rotacional (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Los puntos con que sufren mayor rotacional son los &amp;lt;math&amp;gt;(x,y) = (x,4)&amp;lt;/math&amp;gt;. Cuyo valor de rotacional es 0.4&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
&lt;br /&gt;
Sabiendo que el medio que tratamos, es un medio elástico lineal, isótropo y homogéneo, entonces el tensor de tensiones sobre el sólido elástico depende de los coeficientes de ''Lamé'' (\(\lambda\) y \(\mu\)):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;\( \sigma_{ij}=\lambda \nabla \cdot \vec u \delta_{ij} + 2\mu \epsilon_{ij} \)&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de las tensiones tomamos como valor de éstos coeficientes 1.&lt;br /&gt;
&lt;br /&gt;
Las tensiones normales se calculan con la fórmula anterior.Como la divergencia del campo vectorial es cero, y como los coeficientes de Lamé son iguales a 1, la tensión normal es \( \sigma_{ij}=2*\epsilon_{ij} \), donde \(\epsilon_{ij} \) es la parte simétrica del tensor gradiente de \(\vec u\).&lt;br /&gt;
&lt;br /&gt;
Así, tenemos que la tensión normal al eje \(\vec i\) nos queda \(\vec i\)*\(\sigma\)*\(\vec i\), que es la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec i\) (que depende solo de \(\vec j\)) sobre \(\vec i\), dando como resultado cero.&lt;br /&gt;
&lt;br /&gt;
Para la tensión normal al eje \(\vec j\), ocurre lo mismo, siendo \(\vec j\)*\(\sigma\)*\(\vec j\) la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec j\) (que depende solo de \(\vec i\)) sobre \(\vec j\), dando también cero.&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
&lt;br /&gt;
Las tensiones tangenciales están definidas por la ecuación \(|\sigma \cdot \vec i-(\vec i \cdot \sigma \cdot \vec i) \vec i|\) respecto al plano ortogonal a \(\vec i\). El segundo sumando es cero. Entonces queda \(|\sigma \cdot \vec i|\) = &amp;lt;math&amp;gt;[0,\frac{y}{10},0]&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a î&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = 0*X; % Componentes x del campo vectorial&lt;br /&gt;
Fy = Y./10; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a i');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto i.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
&lt;br /&gt;
Las tensiones están definidas por la ecuación \(|\sigma \cdot \vec j-(\vec j \cdot \sigma \cdot \vec j) \vec j|\) respecto al plano ortogonal a \(\vec j\). El tensor de tensiones es cero, haciendo cero el segundo sumando. Entonces, nos queda \(|\sigma \cdot \vec j|\) = &amp;lt;math&amp;gt;[\frac{y}{10},0,0]&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a j&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = Y./10; % Componentes x del campo vectorial&lt;br /&gt;
Fy = 0*Y; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a j');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto j.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
La tensión de Von Mises se define por la fórmula&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\sigma_1, \sigma_2, \sigma_3&amp;lt;/math&amp;gt; Son los autovalores de la matriz tensor de tensiones σ (también conocidos como tensiones principales). Se&lt;br /&gt;
trata de una magnitud escalar que se suele usar como indicador para saber cuando un material&lt;br /&gt;
inicia un comportamiento plástico y no elástico puro.&lt;br /&gt;
&lt;br /&gt;
Los valores obtenidos son: &amp;lt;math&amp;gt;\sigma_1 = 0 , \sigma_2 = \frac{y}{10} , \sigma_3 = \frac{-y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidos los autovalores, la tensión de Von Mises sobre la placa queda representada así:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Intervalos de trabajo&lt;br /&gt;
x=[-1/2:0.1:1/2];&lt;br /&gt;
y=[0:0.1:4];&lt;br /&gt;
% Mallado&lt;br /&gt;
[X,Y]=meshgrid(x,y);&lt;br /&gt;
[m,n]=size(X);&lt;br /&gt;
% Definimos la matriz asociada al tensor de tensiones&lt;br /&gt;
sigma=[0,1/10,0;1/10,0,0;0,0,0];&lt;br /&gt;
&lt;br /&gt;
% Autovalores &lt;br /&gt;
&lt;br /&gt;
auto = eig(sigma);&lt;br /&gt;
&lt;br /&gt;
t1 = Y.*auto(1);&lt;br /&gt;
t2 = Y.*auto(2);&lt;br /&gt;
t3 = Y.*auto(3);&lt;br /&gt;
&lt;br /&gt;
% Tensión de Von Mises&lt;br /&gt;
TVM=sqrt(((t1-t2).^2+(t2-t3).^2+(t3-t1).^2)/2);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
subplot(2,1,1)&lt;br /&gt;
mesh(Mx,My,TVM)&lt;br /&gt;
subplot(2,1,2)&lt;br /&gt;
surf(Mx,My,TVM)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado11C1.jpg|350px|miniaturadeimagen|izquierda|Tensión de Von Mises máxima en y=4]]&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
=Masa total de la placa y función de densidad=&lt;br /&gt;
&lt;br /&gt;
Sabemos que la función que define la densidad de la placa está dada por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f_d(x,y) = x.y.e^{-x^-2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar dicha función para ver como se distribuye en la placa la densidad. &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación de la función densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2)));&lt;br /&gt;
mesh(X,Y,Zd);&lt;br /&gt;
title('Función de densidad de la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Densidad (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Al no tener sentido hablar de densidad negativa, se toman como absolutos todos los valores de la función de densidad. &lt;br /&gt;
&lt;br /&gt;
Así la masa total de la placa es: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;M = \int_{S}f_d dS&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La integral define el volumen bajo la superficie, cuyo valor corresponde a la masa total de la placa. &lt;br /&gt;
&lt;br /&gt;
Para el cálculo del volumen vamos a proceder por el método de aproximación numérica que considera los volúmenes de los paralelepípedos, cuyas bases tienen área &amp;lt;math&amp;gt;H^2 ;H=0.1&amp;lt;/math&amp;gt; y volúmenes las imágenes de la función de densidad. La suma de todos los volúmenes nos da el valor deseado.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Cálculo de la masa total de la placa a partir de la función de densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2))); % Función de densidad&lt;br /&gt;
V = 0.1^2*Zd; % Matriz cuyas componentes son los volúmenes de los &lt;br /&gt;
% paralelepípedos en cuestión&lt;br /&gt;
V = abs(V); % Toma valores absolutos de las componentes de la matriz&lt;br /&gt;
M = sum(sum(V)); % La masa total es la suma de todos los volúmenes&lt;br /&gt;
disp(M); % Muestra en pantalla la masa total de la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La masa total de la placa tiene un valor de &amp;lt;math&amp;gt;M = 0.0163&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22982</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22982"/>
				<updated>2014-12-15T17:21:30Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Tensión de Von Mises */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos &amp;lt;math&amp;gt;[-1/2,1/2]\times[0,4]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante &amp;lt;math&amp;gt;H = \frac{1}{10}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Rotacional del campo vectorial de desplazamientos&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
rz = inline('-y/10','x','y');&lt;br /&gt;
Zr = abs(rz(X,Y));&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
title('Representación del rotacional');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista ortogonal del rotacional sobre la placa');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rotacional (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Los puntos con que sufren mayor rotacional son los &amp;lt;math&amp;gt;(x,y) = (x,4)&amp;lt;/math&amp;gt;. Cuyo valor de rotacional es 0.4&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
&lt;br /&gt;
Sabiendo que el medio que tratamos, es un medio elástico lineal, isótropo y homogéneo, entonces el tensor de tensiones sobre el sólido elástico depende de los coeficientes de ''Lamé'' (\(\lambda\) y \(\mu\)):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;\( \sigma_{ij}=\lambda \nabla \cdot \vec u \delta_{ij} + 2\mu \epsilon_{ij} \)&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de las tensiones tomamos como valor de éstos coeficientes 1.&lt;br /&gt;
&lt;br /&gt;
Las tensiones normales se calculan con la fórmula anterior.Como la divergencia del campo vectorial es cero, y como los coeficientes de Lamé son iguales a 1, la tensión normal es \( \sigma_{ij}=2*\epsilon_{ij} \), donde \(\epsilon_{ij} \) es la parte simétrica del tensor gradiente de \(\vec u\).&lt;br /&gt;
&lt;br /&gt;
Así, tenemos que la tensión normal al eje \(\vec i\) nos queda \(\vec i\)*\(\sigma\)*\(\vec i\), que es la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec i\) (que depende solo de \(\vec j\)) sobre \(\vec i\), dando como resultado cero.&lt;br /&gt;
&lt;br /&gt;
Para la tensión normal al eje \(\vec j\), ocurre lo mismo, siendo \(\vec j\)*\(\sigma\)*\(\vec j\) la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec j\) (que depende solo de \(\vec i\)) sobre \(\vec j\), dando también cero.&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
&lt;br /&gt;
Las tensiones tangenciales están definidas por la ecuación \(|\sigma \cdot \vec i-(\vec i \cdot \sigma \cdot \vec i) \vec i|\) respecto al plano ortogonal a \(\vec i\). El segundo sumando es cero. Entonces queda \(|\sigma \cdot \vec i|\) = &amp;lt;math&amp;gt;[0,\frac{y}{10},0]&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a î&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = 0*X; % Componentes x del campo vectorial&lt;br /&gt;
Fy = Y./10; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a i');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto i.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
&lt;br /&gt;
Las tensiones están definidas por la ecuación \(|\sigma \cdot \vec j-(\vec j \cdot \sigma \cdot \vec j) \vec j|\) respecto al plano ortogonal a \(\vec j\). El tensor de tensiones es cero, haciendo cero el segundo sumando. Entonces, nos queda \(|\sigma \cdot \vec j|\) = &amp;lt;math&amp;gt;[\frac{y}{10},0,0]&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a j&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = Y./10; % Componentes x del campo vectorial&lt;br /&gt;
Fy = 0*Y; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a j');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto j.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
La tensión de Von Mises se define por la fórmula&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\sigma_1, \sigma_2, \sigma_3&amp;lt;/math&amp;gt; Son los autovalores de la matriz tensor de tensiones σ (también conocidos como tensiones principales). Se&lt;br /&gt;
trata de una magnitud escalar que se suele usar como indicador para saber cuando un material&lt;br /&gt;
inicia un comportamiento plástico y no elástico puro.&lt;br /&gt;
&lt;br /&gt;
Los valores obtenidos son: &amp;lt;math&amp;gt;\sigma_1 = 0 , \sigma_2 = \frac{y}{10} , \sigma_3 = \frac{-y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidos los autovalores, la tensión de Von Mises sobre la placa queda representada así:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Intervalos de trabajo&lt;br /&gt;
x=[-1/2:0.1:1/2];&lt;br /&gt;
y=[0:0.1:4];&lt;br /&gt;
% Mallado&lt;br /&gt;
[Mx,My]=meshgrid(x,y);&lt;br /&gt;
[m,n]=size(Mx);&lt;br /&gt;
% Definimos la matriz asociada al tensor de tensiones&lt;br /&gt;
sigma=[0,1/10,0;1/10,0,0;0,0,0];&lt;br /&gt;
% Cálculo de los autovalores mediante el uso de MatLab&lt;br /&gt;
autovalores=eig(sigma);&lt;br /&gt;
t1=My.*autovalores(1);&lt;br /&gt;
t2=My.*autovalores(2);&lt;br /&gt;
t3=My.*autovalores(3);&lt;br /&gt;
% Tensión de Von Mises&lt;br /&gt;
tension=sqrt(((t1-t2).^2+(t2-t3).^2+(t3-t1).^2)/2);&lt;br /&gt;
% Dibujo de los gráficos&lt;br /&gt;
subplot(2,1,1)&lt;br /&gt;
mesh(Mx,My,tension)&lt;br /&gt;
subplot(2,1,2)&lt;br /&gt;
surf(Mx,My,tension)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado11C1.jpg|350px|miniaturadeimagen|derecha|Tensión de Von Mises máxima en y=4]]&lt;br /&gt;
&lt;br /&gt;
.&lt;br /&gt;
&lt;br /&gt;
=Masa total de la placa y función de densidad=&lt;br /&gt;
&lt;br /&gt;
Sabemos que la función que define la densidad de la placa está dada por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f_d(x,y) = x.y.e^{-x^-2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar dicha función para ver como se distribuye en la placa la densidad. &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación de la función densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2)));&lt;br /&gt;
mesh(X,Y,Zd);&lt;br /&gt;
title('Función de densidad de la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Densidad (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Al no tener sentido hablar de densidad negativa, se toman como absolutos todos los valores de la función de densidad. &lt;br /&gt;
&lt;br /&gt;
Así la masa total de la placa es: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;M = \int_{S}f_d dS&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La integral define el volumen bajo la superficie, cuyo valor corresponde a la masa total de la placa. &lt;br /&gt;
&lt;br /&gt;
Para el cálculo del volumen vamos a proceder por el método de aproximación numérica que considera los volúmenes de los paralelepípedos, cuyas bases tienen área &amp;lt;math&amp;gt;H^2 ;H=0.1&amp;lt;/math&amp;gt; y volúmenes las imágenes de la función de densidad. La suma de todos los volúmenes nos da el valor deseado.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Cálculo de la masa total de la placa a partir de la función de densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2))); % Función de densidad&lt;br /&gt;
V = 0.1^2*Zd; % Matriz cuyas componentes son los volúmenes de los &lt;br /&gt;
% paralelepípedos en cuestión&lt;br /&gt;
V = abs(V); % Toma valores absolutos de las componentes de la matriz&lt;br /&gt;
M = sum(sum(V)); % La masa total es la suma de todos los volúmenes&lt;br /&gt;
disp(M); % Muestra en pantalla la masa total de la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La masa total de la placa tiene un valor de &amp;lt;math&amp;gt;M = 0.0163&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22981</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22981"/>
				<updated>2014-12-15T17:20:38Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Tensión de Von Mises */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos &amp;lt;math&amp;gt;[-1/2,1/2]\times[0,4]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante &amp;lt;math&amp;gt;H = \frac{1}{10}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Rotacional del campo vectorial de desplazamientos&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
rz = inline('-y/10','x','y');&lt;br /&gt;
Zr = abs(rz(X,Y));&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
title('Representación del rotacional');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista ortogonal del rotacional sobre la placa');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rotacional (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Los puntos con que sufren mayor rotacional son los &amp;lt;math&amp;gt;(x,y) = (x,4)&amp;lt;/math&amp;gt;. Cuyo valor de rotacional es 0.4&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
&lt;br /&gt;
Sabiendo que el medio que tratamos, es un medio elástico lineal, isótropo y homogéneo, entonces el tensor de tensiones sobre el sólido elástico depende de los coeficientes de ''Lamé'' (\(\lambda\) y \(\mu\)):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;\( \sigma_{ij}=\lambda \nabla \cdot \vec u \delta_{ij} + 2\mu \epsilon_{ij} \)&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de las tensiones tomamos como valor de éstos coeficientes 1.&lt;br /&gt;
&lt;br /&gt;
Las tensiones normales se calculan con la fórmula anterior.Como la divergencia del campo vectorial es cero, y como los coeficientes de Lamé son iguales a 1, la tensión normal es \( \sigma_{ij}=2*\epsilon_{ij} \), donde \(\epsilon_{ij} \) es la parte simétrica del tensor gradiente de \(\vec u\).&lt;br /&gt;
&lt;br /&gt;
Así, tenemos que la tensión normal al eje \(\vec i\) nos queda \(\vec i\)*\(\sigma\)*\(\vec i\), que es la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec i\) (que depende solo de \(\vec j\)) sobre \(\vec i\), dando como resultado cero.&lt;br /&gt;
&lt;br /&gt;
Para la tensión normal al eje \(\vec j\), ocurre lo mismo, siendo \(\vec j\)*\(\sigma\)*\(\vec j\) la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec j\) (que depende solo de \(\vec i\)) sobre \(\vec j\), dando también cero.&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
&lt;br /&gt;
Las tensiones tangenciales están definidas por la ecuación \(|\sigma \cdot \vec i-(\vec i \cdot \sigma \cdot \vec i) \vec i|\) respecto al plano ortogonal a \(\vec i\). El segundo sumando es cero. Entonces queda \(|\sigma \cdot \vec i|\) = &amp;lt;math&amp;gt;[0,\frac{y}{10},0]&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a î&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = 0*X; % Componentes x del campo vectorial&lt;br /&gt;
Fy = Y./10; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a i');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto i.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
&lt;br /&gt;
Las tensiones están definidas por la ecuación \(|\sigma \cdot \vec j-(\vec j \cdot \sigma \cdot \vec j) \vec j|\) respecto al plano ortogonal a \(\vec j\). El tensor de tensiones es cero, haciendo cero el segundo sumando. Entonces, nos queda \(|\sigma \cdot \vec j|\) = &amp;lt;math&amp;gt;[\frac{y}{10},0,0]&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a j&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = Y./10; % Componentes x del campo vectorial&lt;br /&gt;
Fy = 0*Y; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a j');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto j.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
La tensión de Von Mises se define por la fórmula&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\sigma_1, \sigma_2, \sigma_3&amp;lt;/math&amp;gt; Son los autovalores de la matriz tensor de tensiones σ (también conocidos como tensiones principales). Se&lt;br /&gt;
trata de una magnitud escalar que se suele usar como indicador para saber cuando un material&lt;br /&gt;
inicia un comportamiento plástico y no elástico puro.&lt;br /&gt;
&lt;br /&gt;
Los valores obtenidos son: &amp;lt;math&amp;gt;\sigma_1 = 0 , \sigma_2 = \frac{y}{10} , \sigma_3 = \frac{-y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidos los autovalores, la tensión de Von Mises sobre la placa queda representada así:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Intervalos de trabajo&lt;br /&gt;
x=[-1/2:0.1:1/2];&lt;br /&gt;
y=[0:0.1:4];&lt;br /&gt;
% Mallado&lt;br /&gt;
[Mx,My]=meshgrid(x,y);&lt;br /&gt;
[m,n]=size(Mx);&lt;br /&gt;
% Definimos la matriz asociada al tensor de tensiones&lt;br /&gt;
sigma=[0,1/10,0;1/10,0,0;0,0,0];&lt;br /&gt;
% Cálculo de los autovalores mediante el uso de MatLab&lt;br /&gt;
autovalores=eig(sigma);&lt;br /&gt;
t1=My.*autovalores(1);&lt;br /&gt;
t2=My.*autovalores(2);&lt;br /&gt;
t3=My.*autovalores(3);&lt;br /&gt;
% Tensión de Von Mises&lt;br /&gt;
tension=sqrt(((t1-t2).^2+(t2-t3).^2+(t3-t1).^2)/2);&lt;br /&gt;
% Dibujo de los gráficos&lt;br /&gt;
subplot(2,1,1)&lt;br /&gt;
mesh(Mx,My,tension)&lt;br /&gt;
subplot(2,1,2)&lt;br /&gt;
surf(Mx,My,tension)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado11C1.jpg|350px|miniaturadeimagen|derecha|Tensión de Von Mises máxima en y=4]]&lt;br /&gt;
&lt;br /&gt;
=Masa total de la placa y función de densidad=&lt;br /&gt;
&lt;br /&gt;
Sabemos que la función que define la densidad de la placa está dada por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f_d(x,y) = x.y.e^{-x^-2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar dicha función para ver como se distribuye en la placa la densidad. &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación de la función densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2)));&lt;br /&gt;
mesh(X,Y,Zd);&lt;br /&gt;
title('Función de densidad de la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Densidad (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Al no tener sentido hablar de densidad negativa, se toman como absolutos todos los valores de la función de densidad. &lt;br /&gt;
&lt;br /&gt;
Así la masa total de la placa es: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;M = \int_{S}f_d dS&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La integral define el volumen bajo la superficie, cuyo valor corresponde a la masa total de la placa. &lt;br /&gt;
&lt;br /&gt;
Para el cálculo del volumen vamos a proceder por el método de aproximación numérica que considera los volúmenes de los paralelepípedos, cuyas bases tienen área &amp;lt;math&amp;gt;H^2 ;H=0.1&amp;lt;/math&amp;gt; y volúmenes las imágenes de la función de densidad. La suma de todos los volúmenes nos da el valor deseado.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Cálculo de la masa total de la placa a partir de la función de densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2))); % Función de densidad&lt;br /&gt;
V = 0.1^2*Zd; % Matriz cuyas componentes son los volúmenes de los &lt;br /&gt;
% paralelepípedos en cuestión&lt;br /&gt;
V = abs(V); % Toma valores absolutos de las componentes de la matriz&lt;br /&gt;
M = sum(sum(V)); % La masa total es la suma de todos los volúmenes&lt;br /&gt;
disp(M); % Muestra en pantalla la masa total de la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La masa total de la placa tiene un valor de &amp;lt;math&amp;gt;M = 0.0163&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22980</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22980"/>
				<updated>2014-12-15T17:19:41Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Tensión de Von Mises */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos &amp;lt;math&amp;gt;[-1/2,1/2]\times[0,4]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante &amp;lt;math&amp;gt;H = \frac{1}{10}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Rotacional del campo vectorial de desplazamientos&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
rz = inline('-y/10','x','y');&lt;br /&gt;
Zr = abs(rz(X,Y));&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
title('Representación del rotacional');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista ortogonal del rotacional sobre la placa');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rotacional (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Los puntos con que sufren mayor rotacional son los &amp;lt;math&amp;gt;(x,y) = (x,4)&amp;lt;/math&amp;gt;. Cuyo valor de rotacional es 0.4&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
&lt;br /&gt;
Sabiendo que el medio que tratamos, es un medio elástico lineal, isótropo y homogéneo, entonces el tensor de tensiones sobre el sólido elástico depende de los coeficientes de ''Lamé'' (\(\lambda\) y \(\mu\)):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;\( \sigma_{ij}=\lambda \nabla \cdot \vec u \delta_{ij} + 2\mu \epsilon_{ij} \)&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de las tensiones tomamos como valor de éstos coeficientes 1.&lt;br /&gt;
&lt;br /&gt;
Las tensiones normales se calculan con la fórmula anterior.Como la divergencia del campo vectorial es cero, y como los coeficientes de Lamé son iguales a 1, la tensión normal es \( \sigma_{ij}=2*\epsilon_{ij} \), donde \(\epsilon_{ij} \) es la parte simétrica del tensor gradiente de \(\vec u\).&lt;br /&gt;
&lt;br /&gt;
Así, tenemos que la tensión normal al eje \(\vec i\) nos queda \(\vec i\)*\(\sigma\)*\(\vec i\), que es la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec i\) (que depende solo de \(\vec j\)) sobre \(\vec i\), dando como resultado cero.&lt;br /&gt;
&lt;br /&gt;
Para la tensión normal al eje \(\vec j\), ocurre lo mismo, siendo \(\vec j\)*\(\sigma\)*\(\vec j\) la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec j\) (que depende solo de \(\vec i\)) sobre \(\vec j\), dando también cero.&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
&lt;br /&gt;
Las tensiones tangenciales están definidas por la ecuación \(|\sigma \cdot \vec i-(\vec i \cdot \sigma \cdot \vec i) \vec i|\) respecto al plano ortogonal a \(\vec i\). El segundo sumando es cero. Entonces queda \(|\sigma \cdot \vec i|\) = &amp;lt;math&amp;gt;[0,\frac{y}{10},0]&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a î&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = 0*X; % Componentes x del campo vectorial&lt;br /&gt;
Fy = Y./10; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a i');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto i.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
&lt;br /&gt;
Las tensiones están definidas por la ecuación \(|\sigma \cdot \vec j-(\vec j \cdot \sigma \cdot \vec j) \vec j|\) respecto al plano ortogonal a \(\vec j\). El tensor de tensiones es cero, haciendo cero el segundo sumando. Entonces, nos queda \(|\sigma \cdot \vec j|\) = &amp;lt;math&amp;gt;[\frac{y}{10},0,0]&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a j&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = Y./10; % Componentes x del campo vectorial&lt;br /&gt;
Fy = 0*Y; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a j');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto j.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
La tensión de Von Mises se define por la fórmula&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\sigma_1, \sigma_2, \sigma_3&amp;lt;/math&amp;gt; Son los autovalores de la matriz tensor de tensiones σ (también conocidos como tensiones principales). Se&lt;br /&gt;
trata de una magnitud escalar que se suele usar como indicador para saber cuando un material&lt;br /&gt;
inicia un comportamiento plástico y no elástico puro.&lt;br /&gt;
&lt;br /&gt;
Los valores obtenidos son: &amp;lt;math&amp;gt;\sigma_1 = 0 , \sigma_2 = \frac{y}{10} , \sigma_3 = \frac{-y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidos los autovalores, la tensión de Von Mises sobre la placa queda representada así:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado11C1.jpg|350px|miniaturadeimagen|abajo|Tensión de Von Mises sobre la placa, máxima en y=4]]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Intervalos de trabajo&lt;br /&gt;
x=[-1/2:0.1:1/2];&lt;br /&gt;
y=[0:0.1:4];&lt;br /&gt;
% Mallado&lt;br /&gt;
[Mx,My]=meshgrid(x,y);&lt;br /&gt;
[m,n]=size(Mx);&lt;br /&gt;
% Definimos la matriz asociada al tensor de tensiones&lt;br /&gt;
sigma=[0,1/10,0;1/10,0,0;0,0,0];&lt;br /&gt;
% Cálculo de los autovalores mediante el uso de MatLab&lt;br /&gt;
autovalores=eig(sigma);&lt;br /&gt;
t1=My.*autovalores(1);&lt;br /&gt;
t2=My.*autovalores(2);&lt;br /&gt;
t3=My.*autovalores(3);&lt;br /&gt;
% Tensión de Von Mises&lt;br /&gt;
tension=sqrt(((t1-t2).^2+(t2-t3).^2+(t3-t1).^2)/2);&lt;br /&gt;
% Dibujo de los gráficos&lt;br /&gt;
subplot(2,1,1)&lt;br /&gt;
mesh(Mx,My,tension)&lt;br /&gt;
subplot(2,1,2)&lt;br /&gt;
surf(Mx,My,tension)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=Masa total de la placa y función de densidad=&lt;br /&gt;
&lt;br /&gt;
Sabemos que la función que define la densidad de la placa está dada por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f_d(x,y) = x.y.e^{-x^-2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar dicha función para ver como se distribuye en la placa la densidad. &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación de la función densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2)));&lt;br /&gt;
mesh(X,Y,Zd);&lt;br /&gt;
title('Función de densidad de la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Densidad (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Al no tener sentido hablar de densidad negativa, se toman como absolutos todos los valores de la función de densidad. &lt;br /&gt;
&lt;br /&gt;
Así la masa total de la placa es: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;M = \int_{S}f_d dS&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La integral define el volumen bajo la superficie, cuyo valor corresponde a la masa total de la placa. &lt;br /&gt;
&lt;br /&gt;
Para el cálculo del volumen vamos a proceder por el método de aproximación numérica que considera los volúmenes de los paralelepípedos, cuyas bases tienen área &amp;lt;math&amp;gt;H^2 ;H=0.1&amp;lt;/math&amp;gt; y volúmenes las imágenes de la función de densidad. La suma de todos los volúmenes nos da el valor deseado.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Cálculo de la masa total de la placa a partir de la función de densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2))); % Función de densidad&lt;br /&gt;
V = 0.1^2*Zd; % Matriz cuyas componentes son los volúmenes de los &lt;br /&gt;
% paralelepípedos en cuestión&lt;br /&gt;
V = abs(V); % Toma valores absolutos de las componentes de la matriz&lt;br /&gt;
M = sum(sum(V)); % La masa total es la suma de todos los volúmenes&lt;br /&gt;
disp(M); % Muestra en pantalla la masa total de la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La masa total de la placa tiene un valor de &amp;lt;math&amp;gt;M = 0.0163&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22979</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22979"/>
				<updated>2014-12-15T17:18:28Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Tensión de Von Mises */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos &amp;lt;math&amp;gt;[-1/2,1/2]\times[0,4]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante &amp;lt;math&amp;gt;H = \frac{1}{10}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Rotacional del campo vectorial de desplazamientos&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
rz = inline('-y/10','x','y');&lt;br /&gt;
Zr = abs(rz(X,Y));&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
title('Representación del rotacional');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista ortogonal del rotacional sobre la placa');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rotacional (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Los puntos con que sufren mayor rotacional son los &amp;lt;math&amp;gt;(x,y) = (x,4)&amp;lt;/math&amp;gt;. Cuyo valor de rotacional es 0.4&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
&lt;br /&gt;
Sabiendo que el medio que tratamos, es un medio elástico lineal, isótropo y homogéneo, entonces el tensor de tensiones sobre el sólido elástico depende de los coeficientes de ''Lamé'' (\(\lambda\) y \(\mu\)):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;\( \sigma_{ij}=\lambda \nabla \cdot \vec u \delta_{ij} + 2\mu \epsilon_{ij} \)&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de las tensiones tomamos como valor de éstos coeficientes 1.&lt;br /&gt;
&lt;br /&gt;
Las tensiones normales se calculan con la fórmula anterior.Como la divergencia del campo vectorial es cero, y como los coeficientes de Lamé son iguales a 1, la tensión normal es \( \sigma_{ij}=2*\epsilon_{ij} \), donde \(\epsilon_{ij} \) es la parte simétrica del tensor gradiente de \(\vec u\).&lt;br /&gt;
&lt;br /&gt;
Así, tenemos que la tensión normal al eje \(\vec i\) nos queda \(\vec i\)*\(\sigma\)*\(\vec i\), que es la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec i\) (que depende solo de \(\vec j\)) sobre \(\vec i\), dando como resultado cero.&lt;br /&gt;
&lt;br /&gt;
Para la tensión normal al eje \(\vec j\), ocurre lo mismo, siendo \(\vec j\)*\(\sigma\)*\(\vec j\) la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec j\) (que depende solo de \(\vec i\)) sobre \(\vec j\), dando también cero.&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
&lt;br /&gt;
Las tensiones tangenciales están definidas por la ecuación \(|\sigma \cdot \vec i-(\vec i \cdot \sigma \cdot \vec i) \vec i|\) respecto al plano ortogonal a \(\vec i\). El segundo sumando es cero. Entonces queda \(|\sigma \cdot \vec i|\) = &amp;lt;math&amp;gt;[0,\frac{y}{10},0]&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a î&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = 0*X; % Componentes x del campo vectorial&lt;br /&gt;
Fy = Y./10; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a i');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto i.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
&lt;br /&gt;
Las tensiones están definidas por la ecuación \(|\sigma \cdot \vec j-(\vec j \cdot \sigma \cdot \vec j) \vec j|\) respecto al plano ortogonal a \(\vec j\). El tensor de tensiones es cero, haciendo cero el segundo sumando. Entonces, nos queda \(|\sigma \cdot \vec j|\) = &amp;lt;math&amp;gt;[\frac{y}{10},0,0]&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a j&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = Y./10; % Componentes x del campo vectorial&lt;br /&gt;
Fy = 0*Y; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a j');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto j.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
La tensión de Von Mises se define por la fórmula&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\sigma_1, \sigma_2, \sigma_3&amp;lt;/math&amp;gt; Son los autovalores de la matriz tensor de tensiones σ (también conocidos como tensiones principales). Se&lt;br /&gt;
trata de una magnitud escalar que se suele usar como indicador para saber cuando un material&lt;br /&gt;
inicia un comportamiento plástico y no elástico puro.&lt;br /&gt;
&lt;br /&gt;
Los valores obtenidos son: &amp;lt;math&amp;gt;\sigma_1 = 0 , \sigma_2 = \frac{y}{10} , \sigma_3 = \frac{-y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Una vez obtenidos los autovalores, la tensión de Von Mises sobre la placa queda representada así:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Apartado11C1.jpg|500px|miniaturadeimagen|derecha|Tensión de Von Mises sobre la placa, máxima en y=4]]&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Intervalos de trabajo&lt;br /&gt;
x=[-1/2:0.1:1/2];&lt;br /&gt;
y=[0:0.1:4];&lt;br /&gt;
% Mallado&lt;br /&gt;
[Mx,My]=meshgrid(x,y);&lt;br /&gt;
[m,n]=size(Mx);&lt;br /&gt;
% Definimos la matriz asociada al tensor de tensiones&lt;br /&gt;
sigma=[0,1/10,0;1/10,0,0;0,0,0];&lt;br /&gt;
% Cálculo de los autovalores mediante el uso de MatLab&lt;br /&gt;
autovalores=eig(sigma);&lt;br /&gt;
t1=My.*autovalores(1);&lt;br /&gt;
t2=My.*autovalores(2);&lt;br /&gt;
t3=My.*autovalores(3);&lt;br /&gt;
% Tensión de Von Mises&lt;br /&gt;
tension=sqrt(((t1-t2).^2+(t2-t3).^2+(t3-t1).^2)/2);&lt;br /&gt;
% Dibujo de los gráficos&lt;br /&gt;
subplot(2,1,1)&lt;br /&gt;
mesh(Mx,My,tension)&lt;br /&gt;
subplot(2,1,2)&lt;br /&gt;
surf(Mx,My,tension)&lt;br /&gt;
}}&lt;br /&gt;
Como podemos observar en los gráficos, la tensión de Von Mises alcanza su valor máximo en la placa en los puntos cuya componente en &amp;lt;math&amp;gt; y &amp;lt;/math&amp;gt; es igual a 4.&lt;br /&gt;
&lt;br /&gt;
=Masa total de la placa y función de densidad=&lt;br /&gt;
&lt;br /&gt;
Sabemos que la función que define la densidad de la placa está dada por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f_d(x,y) = x.y.e^{-x^-2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar dicha función para ver como se distribuye en la placa la densidad. &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación de la función densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2)));&lt;br /&gt;
mesh(X,Y,Zd);&lt;br /&gt;
title('Función de densidad de la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Densidad (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Al no tener sentido hablar de densidad negativa, se toman como absolutos todos los valores de la función de densidad. &lt;br /&gt;
&lt;br /&gt;
Así la masa total de la placa es: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;M = \int_{S}f_d dS&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La integral define el volumen bajo la superficie, cuyo valor corresponde a la masa total de la placa. &lt;br /&gt;
&lt;br /&gt;
Para el cálculo del volumen vamos a proceder por el método de aproximación numérica que considera los volúmenes de los paralelepípedos, cuyas bases tienen área &amp;lt;math&amp;gt;H^2 ;H=0.1&amp;lt;/math&amp;gt; y volúmenes las imágenes de la función de densidad. La suma de todos los volúmenes nos da el valor deseado.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Cálculo de la masa total de la placa a partir de la función de densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2))); % Función de densidad&lt;br /&gt;
V = 0.1^2*Zd; % Matriz cuyas componentes son los volúmenes de los &lt;br /&gt;
% paralelepípedos en cuestión&lt;br /&gt;
V = abs(V); % Toma valores absolutos de las componentes de la matriz&lt;br /&gt;
M = sum(sum(V)); % La masa total es la suma de todos los volúmenes&lt;br /&gt;
disp(M); % Muestra en pantalla la masa total de la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La masa total de la placa tiene un valor de &amp;lt;math&amp;gt;M = 0.0163&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22978</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22978"/>
				<updated>2014-12-15T17:16:27Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Tensión de Von Mises */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos &amp;lt;math&amp;gt;[-1/2,1/2]\times[0,4]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante &amp;lt;math&amp;gt;H = \frac{1}{10}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Rotacional del campo vectorial de desplazamientos&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
rz = inline('-y/10','x','y');&lt;br /&gt;
Zr = abs(rz(X,Y));&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
title('Representación del rotacional');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista ortogonal del rotacional sobre la placa');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rotacional (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Los puntos con que sufren mayor rotacional son los &amp;lt;math&amp;gt;(x,y) = (x,4)&amp;lt;/math&amp;gt;. Cuyo valor de rotacional es 0.4&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
&lt;br /&gt;
Sabiendo que el medio que tratamos, es un medio elástico lineal, isótropo y homogéneo, entonces el tensor de tensiones sobre el sólido elástico depende de los coeficientes de ''Lamé'' (\(\lambda\) y \(\mu\)):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;\( \sigma_{ij}=\lambda \nabla \cdot \vec u \delta_{ij} + 2\mu \epsilon_{ij} \)&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de las tensiones tomamos como valor de éstos coeficientes 1.&lt;br /&gt;
&lt;br /&gt;
Las tensiones normales se calculan con la fórmula anterior.Como la divergencia del campo vectorial es cero, y como los coeficientes de Lamé son iguales a 1, la tensión normal es \( \sigma_{ij}=2*\epsilon_{ij} \), donde \(\epsilon_{ij} \) es la parte simétrica del tensor gradiente de \(\vec u\).&lt;br /&gt;
&lt;br /&gt;
Así, tenemos que la tensión normal al eje \(\vec i\) nos queda \(\vec i\)*\(\sigma\)*\(\vec i\), que es la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec i\) (que depende solo de \(\vec j\)) sobre \(\vec i\), dando como resultado cero.&lt;br /&gt;
&lt;br /&gt;
Para la tensión normal al eje \(\vec j\), ocurre lo mismo, siendo \(\vec j\)*\(\sigma\)*\(\vec j\) la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec j\) (que depende solo de \(\vec i\)) sobre \(\vec j\), dando también cero.&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
&lt;br /&gt;
Las tensiones tangenciales están definidas por la ecuación \(|\sigma \cdot \vec i-(\vec i \cdot \sigma \cdot \vec i) \vec i|\) respecto al plano ortogonal a \(\vec i\). El segundo sumando es cero. Entonces queda \(|\sigma \cdot \vec i|\) = &amp;lt;math&amp;gt;[0,\frac{y}{10},0]&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a î&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = 0*X; % Componentes x del campo vectorial&lt;br /&gt;
Fy = Y./10; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a i');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto i.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
&lt;br /&gt;
Las tensiones están definidas por la ecuación \(|\sigma \cdot \vec j-(\vec j \cdot \sigma \cdot \vec j) \vec j|\) respecto al plano ortogonal a \(\vec j\). El tensor de tensiones es cero, haciendo cero el segundo sumando. Entonces, nos queda \(|\sigma \cdot \vec j|\) = &amp;lt;math&amp;gt;[\frac{y}{10},0,0]&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a j&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = Y./10; % Componentes x del campo vectorial&lt;br /&gt;
Fy = 0*Y; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a j');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto j.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
La tensión de Von Mises se define por la fórmula&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\sigma_1, \sigma_2, \sigma_3&amp;lt;/math&amp;gt; Son los autovalores de la matriz tensor de tensiones σ (también conocidos como tensiones principales). Se&lt;br /&gt;
trata de una magnitud escalar que se suele usar como indicador para saber cuando un material&lt;br /&gt;
inicia un comportamiento plástico y no elástico puro.&lt;br /&gt;
&lt;br /&gt;
Los valores obtenidos son: &amp;lt;math&amp;gt;\sigma_1 = 0 , \sigma_2 = \frac{y}{10} , \sigma_3 = \frac{-y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para calcularlos, lo hacemos desde la matriz del tensor de tensiones dado que es la siguiente:&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
 \begin{pmatrix} 0 &amp;amp; \frac{y}{10} &amp;amp; 0 \\ \frac{y}{10} &amp;amp; 0 &amp;amp; 0 \\ 0 &amp;amp; 0 &amp;amp; 0 \end{pmatrix}&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
A partir de ella operamos hasta obtener los autovalores de la siguiente forma:&lt;br /&gt;
&amp;lt;math&amp;gt;&lt;br /&gt;
\begin{vmatrix} -\lambda &amp;amp; \frac{y}{10} &amp;amp; 0 \\ \frac{y}{10} &amp;amp; -\lambda &amp;amp; 0 \\ 0 &amp;amp; 0 &amp;amp; -\lambda \end{vmatrix} = -\lambda^3 + \frac{\lambda y^2}{100} = 0&lt;br /&gt;
&amp;lt;/math&amp;gt;&lt;br /&gt;
De donde obtenemos los autovalores &amp;lt;math&amp;gt; \lambda_1 = 0 &amp;lt;/math&amp;gt;, &amp;lt;math&amp;gt; \lambda_2 = \frac{y}{10} &amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt; \lambda_3 = - \frac{y}{10} &amp;lt;/math&amp;gt;. Estos autovalores, aparte de obtenerlos analíticamente como se muestra, los obtenemos también con la función eig.m de MatLab, tal y como aparece en el código posterior, y como se pide en el enunciado.&lt;br /&gt;
Una vez obtenidos los autovalores, la tensión de Von Mises sobre la placa queda representada así:&lt;br /&gt;
[[Archivo:Apartado11C1.jpg|350px|miniaturadeimagen|derecha|Tensión de Von Mises sobre la placa, máxima en y=4]]&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Intervalos de trabajo&lt;br /&gt;
x=[-1/2:0.1:1/2];&lt;br /&gt;
y=[0:0.1:4];&lt;br /&gt;
% Mallado&lt;br /&gt;
[Mx,My]=meshgrid(x,y);&lt;br /&gt;
[m,n]=size(Mx);&lt;br /&gt;
% Definimos la matriz asociada al tensor de tensiones&lt;br /&gt;
sigma=[0,1/10,0;1/10,0,0;0,0,0];&lt;br /&gt;
% Cálculo de los autovalores mediante el uso de MatLab&lt;br /&gt;
autovalores=eig(sigma);&lt;br /&gt;
t1=My.*autovalores(1);&lt;br /&gt;
t2=My.*autovalores(2);&lt;br /&gt;
t3=My.*autovalores(3);&lt;br /&gt;
% Tensión de Von Mises&lt;br /&gt;
tension=sqrt(((t1-t2).^2+(t2-t3).^2+(t3-t1).^2)/2);&lt;br /&gt;
% Dibujo de los gráficos&lt;br /&gt;
subplot(2,1,1)&lt;br /&gt;
mesh(Mx,My,tension)&lt;br /&gt;
subplot(2,1,2)&lt;br /&gt;
surf(Mx,My,tension)&lt;br /&gt;
}}&lt;br /&gt;
Como podemos observar en los gráficos, la tensión de Von Mises alcanza su valor máximo en la placa en los puntos cuya componente en &amp;lt;math&amp;gt; y &amp;lt;/math&amp;gt; es igual a 4.&lt;br /&gt;
&lt;br /&gt;
=Masa total de la placa y función de densidad=&lt;br /&gt;
&lt;br /&gt;
Sabemos que la función que define la densidad de la placa está dada por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f_d(x,y) = x.y.e^{-x^-2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar dicha función para ver como se distribuye en la placa la densidad. &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación de la función densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2)));&lt;br /&gt;
mesh(X,Y,Zd);&lt;br /&gt;
title('Función de densidad de la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Densidad (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Al no tener sentido hablar de densidad negativa, se toman como absolutos todos los valores de la función de densidad. &lt;br /&gt;
&lt;br /&gt;
Así la masa total de la placa es: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;M = \int_{S}f_d dS&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La integral define el volumen bajo la superficie, cuyo valor corresponde a la masa total de la placa. &lt;br /&gt;
&lt;br /&gt;
Para el cálculo del volumen vamos a proceder por el método de aproximación numérica que considera los volúmenes de los paralelepípedos, cuyas bases tienen área &amp;lt;math&amp;gt;H^2 ;H=0.1&amp;lt;/math&amp;gt; y volúmenes las imágenes de la función de densidad. La suma de todos los volúmenes nos da el valor deseado.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Cálculo de la masa total de la placa a partir de la función de densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2))); % Función de densidad&lt;br /&gt;
V = 0.1^2*Zd; % Matriz cuyas componentes son los volúmenes de los &lt;br /&gt;
% paralelepípedos en cuestión&lt;br /&gt;
V = abs(V); % Toma valores absolutos de las componentes de la matriz&lt;br /&gt;
M = sum(sum(V)); % La masa total es la suma de todos los volúmenes&lt;br /&gt;
disp(M); % Muestra en pantalla la masa total de la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La masa total de la placa tiene un valor de &amp;lt;math&amp;gt;M = 0.0163&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22977</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22977"/>
				<updated>2014-12-15T17:13:59Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Tensión de Von Mises */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos &amp;lt;math&amp;gt;[-1/2,1/2]\times[0,4]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante &amp;lt;math&amp;gt;H = \frac{1}{10}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Rotacional del campo vectorial de desplazamientos&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
rz = inline('-y/10','x','y');&lt;br /&gt;
Zr = abs(rz(X,Y));&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
title('Representación del rotacional');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista ortogonal del rotacional sobre la placa');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rotacional (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Los puntos con que sufren mayor rotacional son los &amp;lt;math&amp;gt;(x,y) = (x,4)&amp;lt;/math&amp;gt;. Cuyo valor de rotacional es 0.4&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
&lt;br /&gt;
Sabiendo que el medio que tratamos, es un medio elástico lineal, isótropo y homogéneo, entonces el tensor de tensiones sobre el sólido elástico depende de los coeficientes de ''Lamé'' (\(\lambda\) y \(\mu\)):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;\( \sigma_{ij}=\lambda \nabla \cdot \vec u \delta_{ij} + 2\mu \epsilon_{ij} \)&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de las tensiones tomamos como valor de éstos coeficientes 1.&lt;br /&gt;
&lt;br /&gt;
Las tensiones normales se calculan con la fórmula anterior.Como la divergencia del campo vectorial es cero, y como los coeficientes de Lamé son iguales a 1, la tensión normal es \( \sigma_{ij}=2*\epsilon_{ij} \), donde \(\epsilon_{ij} \) es la parte simétrica del tensor gradiente de \(\vec u\).&lt;br /&gt;
&lt;br /&gt;
Así, tenemos que la tensión normal al eje \(\vec i\) nos queda \(\vec i\)*\(\sigma\)*\(\vec i\), que es la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec i\) (que depende solo de \(\vec j\)) sobre \(\vec i\), dando como resultado cero.&lt;br /&gt;
&lt;br /&gt;
Para la tensión normal al eje \(\vec j\), ocurre lo mismo, siendo \(\vec j\)*\(\sigma\)*\(\vec j\) la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec j\) (que depende solo de \(\vec i\)) sobre \(\vec j\), dando también cero.&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
&lt;br /&gt;
Las tensiones tangenciales están definidas por la ecuación \(|\sigma \cdot \vec i-(\vec i \cdot \sigma \cdot \vec i) \vec i|\) respecto al plano ortogonal a \(\vec i\). El segundo sumando es cero. Entonces queda \(|\sigma \cdot \vec i|\) = &amp;lt;math&amp;gt;[0,\frac{y}{10},0]&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a î&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = 0*X; % Componentes x del campo vectorial&lt;br /&gt;
Fy = Y./10; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a i');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto i.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
&lt;br /&gt;
Las tensiones están definidas por la ecuación \(|\sigma \cdot \vec j-(\vec j \cdot \sigma \cdot \vec j) \vec j|\) respecto al plano ortogonal a \(\vec j\). El tensor de tensiones es cero, haciendo cero el segundo sumando. Entonces, nos queda \(|\sigma \cdot \vec j|\) = &amp;lt;math&amp;gt;[\frac{y}{10},0,0]&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a j&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = Y./10; % Componentes x del campo vectorial&lt;br /&gt;
Fy = 0*Y; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a j');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto j.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
La tensión de Von Mises se define por la fórmula&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\sigma_1, \sigma_2, \sigma_3&amp;lt;/math&amp;gt; Son los autovalores de la matriz tensor de tensiones σ (también conocidos como tensiones principales). Se&lt;br /&gt;
trata de una magnitud escalar que se suele usar como indicador para saber cuando un material&lt;br /&gt;
inicia un comportamiento plástico y no elástico puro.&lt;br /&gt;
&lt;br /&gt;
Los valores obtenidos son: &amp;lt;math&amp;gt;\sigma_1 = 0 , \sigma_2 = \frac{y}{10} , \sigma_3 = \frac{-y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
% Intervalos de trabajo&lt;br /&gt;
x=[-1/2:0.1:1/2];&lt;br /&gt;
y=[0:0.1:4];&lt;br /&gt;
% Mallado&lt;br /&gt;
[Mx,My]=meshgrid(x,y);&lt;br /&gt;
[m,n]=size(Mx);&lt;br /&gt;
% Definimos la matriz asociada al tensor de tensiones&lt;br /&gt;
sigma=[0,1/10,0;1/10,0,0;0,0,0];&lt;br /&gt;
% Cálculo de los autovalores mediante el uso de MatLab&lt;br /&gt;
autovalores=eig(sigma);&lt;br /&gt;
t1=My.*autovalores(1);&lt;br /&gt;
t2=My.*autovalores(2);&lt;br /&gt;
t3=My.*autovalores(3);&lt;br /&gt;
% Tensión de Von Mises&lt;br /&gt;
tension=sqrt(((t1-t2).^2+(t2-t3).^2+(t3-t1).^2)/2);&lt;br /&gt;
% Dibujo de los gráficos&lt;br /&gt;
subplot(2,1,1)&lt;br /&gt;
mesh(Mx,My,tension)&lt;br /&gt;
subplot(2,1,2)&lt;br /&gt;
surf(Mx,My,tension)&lt;br /&gt;
&lt;br /&gt;
=Masa total de la placa y función de densidad=&lt;br /&gt;
&lt;br /&gt;
Sabemos que la función que define la densidad de la placa está dada por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f_d(x,y) = x.y.e^{-x^-2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar dicha función para ver como se distribuye en la placa la densidad. &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación de la función densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2)));&lt;br /&gt;
mesh(X,Y,Zd);&lt;br /&gt;
title('Función de densidad de la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Densidad (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Al no tener sentido hablar de densidad negativa, se toman como absolutos todos los valores de la función de densidad. &lt;br /&gt;
&lt;br /&gt;
Así la masa total de la placa es: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;M = \int_{S}f_d dS&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La integral define el volumen bajo la superficie, cuyo valor corresponde a la masa total de la placa. &lt;br /&gt;
&lt;br /&gt;
Para el cálculo del volumen vamos a proceder por el método de aproximación numérica que considera los volúmenes de los paralelepípedos, cuyas bases tienen área &amp;lt;math&amp;gt;H^2 ;H=0.1&amp;lt;/math&amp;gt; y volúmenes las imágenes de la función de densidad. La suma de todos los volúmenes nos da el valor deseado.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Cálculo de la masa total de la placa a partir de la función de densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2))); % Función de densidad&lt;br /&gt;
V = 0.1^2*Zd; % Matriz cuyas componentes son los volúmenes de los &lt;br /&gt;
% paralelepípedos en cuestión&lt;br /&gt;
V = abs(V); % Toma valores absolutos de las componentes de la matriz&lt;br /&gt;
M = sum(sum(V)); % La masa total es la suma de todos los volúmenes&lt;br /&gt;
disp(M); % Muestra en pantalla la masa total de la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La masa total de la placa tiene un valor de &amp;lt;math&amp;gt;M = 0.0163&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22976</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22976"/>
				<updated>2014-12-15T17:12:07Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Tensión de Von Mises */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos &amp;lt;math&amp;gt;[-1/2,1/2]\times[0,4]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante &amp;lt;math&amp;gt;H = \frac{1}{10}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Rotacional del campo vectorial de desplazamientos&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
rz = inline('-y/10','x','y');&lt;br /&gt;
Zr = abs(rz(X,Y));&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
title('Representación del rotacional');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista ortogonal del rotacional sobre la placa');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rotacional (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Los puntos con que sufren mayor rotacional son los &amp;lt;math&amp;gt;(x,y) = (x,4)&amp;lt;/math&amp;gt;. Cuyo valor de rotacional es 0.4&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
&lt;br /&gt;
Sabiendo que el medio que tratamos, es un medio elástico lineal, isótropo y homogéneo, entonces el tensor de tensiones sobre el sólido elástico depende de los coeficientes de ''Lamé'' (\(\lambda\) y \(\mu\)):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;\( \sigma_{ij}=\lambda \nabla \cdot \vec u \delta_{ij} + 2\mu \epsilon_{ij} \)&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de las tensiones tomamos como valor de éstos coeficientes 1.&lt;br /&gt;
&lt;br /&gt;
Las tensiones normales se calculan con la fórmula anterior.Como la divergencia del campo vectorial es cero, y como los coeficientes de Lamé son iguales a 1, la tensión normal es \( \sigma_{ij}=2*\epsilon_{ij} \), donde \(\epsilon_{ij} \) es la parte simétrica del tensor gradiente de \(\vec u\).&lt;br /&gt;
&lt;br /&gt;
Así, tenemos que la tensión normal al eje \(\vec i\) nos queda \(\vec i\)*\(\sigma\)*\(\vec i\), que es la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec i\) (que depende solo de \(\vec j\)) sobre \(\vec i\), dando como resultado cero.&lt;br /&gt;
&lt;br /&gt;
Para la tensión normal al eje \(\vec j\), ocurre lo mismo, siendo \(\vec j\)*\(\sigma\)*\(\vec j\) la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec j\) (que depende solo de \(\vec i\)) sobre \(\vec j\), dando también cero.&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
&lt;br /&gt;
Las tensiones tangenciales están definidas por la ecuación \(|\sigma \cdot \vec i-(\vec i \cdot \sigma \cdot \vec i) \vec i|\) respecto al plano ortogonal a \(\vec i\). El segundo sumando es cero. Entonces queda \(|\sigma \cdot \vec i|\) = &amp;lt;math&amp;gt;[0,\frac{y}{10},0]&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a î&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = 0*X; % Componentes x del campo vectorial&lt;br /&gt;
Fy = Y./10; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a i');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto i.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
&lt;br /&gt;
Las tensiones están definidas por la ecuación \(|\sigma \cdot \vec j-(\vec j \cdot \sigma \cdot \vec j) \vec j|\) respecto al plano ortogonal a \(\vec j\). El tensor de tensiones es cero, haciendo cero el segundo sumando. Entonces, nos queda \(|\sigma \cdot \vec j|\) = &amp;lt;math&amp;gt;[\frac{y}{10},0,0]&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a j&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = Y./10; % Componentes x del campo vectorial&lt;br /&gt;
Fy = 0*Y; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a j');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto j.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
La tensión de Von Mises se define por la fórmula&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\sigma_1, \sigma_2, \sigma_3&amp;lt;/math&amp;gt; Son los autovalores de la matriz tensor de tensiones σ (también conocidos como tensiones principales). Se&lt;br /&gt;
trata de una magnitud escalar que se suele usar como indicador para saber cuando un material&lt;br /&gt;
inicia un comportamiento plástico y no elástico puro.&lt;br /&gt;
&lt;br /&gt;
Los valores obtenidos son: &amp;lt;math&amp;gt;\sigma_1 = 0 , \sigma_2 = \frac{y}{10} , \sigma_3 = \frac{-y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Masa total de la placa y función de densidad=&lt;br /&gt;
&lt;br /&gt;
Sabemos que la función que define la densidad de la placa está dada por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f_d(x,y) = x.y.e^{-x^-2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar dicha función para ver como se distribuye en la placa la densidad. &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación de la función densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2)));&lt;br /&gt;
mesh(X,Y,Zd);&lt;br /&gt;
title('Función de densidad de la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Densidad (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Al no tener sentido hablar de densidad negativa, se toman como absolutos todos los valores de la función de densidad. &lt;br /&gt;
&lt;br /&gt;
Así la masa total de la placa es: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;M = \int_{S}f_d dS&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La integral define el volumen bajo la superficie, cuyo valor corresponde a la masa total de la placa. &lt;br /&gt;
&lt;br /&gt;
Para el cálculo del volumen vamos a proceder por el método de aproximación numérica que considera los volúmenes de los paralelepípedos, cuyas bases tienen área &amp;lt;math&amp;gt;H^2 ;H=0.1&amp;lt;/math&amp;gt; y volúmenes las imágenes de la función de densidad. La suma de todos los volúmenes nos da el valor deseado.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Cálculo de la masa total de la placa a partir de la función de densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2))); % Función de densidad&lt;br /&gt;
V = 0.1^2*Zd; % Matriz cuyas componentes son los volúmenes de los &lt;br /&gt;
% paralelepípedos en cuestión&lt;br /&gt;
V = abs(V); % Toma valores absolutos de las componentes de la matriz&lt;br /&gt;
M = sum(sum(V)); % La masa total es la suma de todos los volúmenes&lt;br /&gt;
disp(M); % Muestra en pantalla la masa total de la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La masa total de la placa tiene un valor de &amp;lt;math&amp;gt;M = 0.0163&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22975</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22975"/>
				<updated>2014-12-15T17:09:14Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Tensión de Von Mises */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos &amp;lt;math&amp;gt;[-1/2,1/2]\times[0,4]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante &amp;lt;math&amp;gt;H = \frac{1}{10}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Rotacional del campo vectorial de desplazamientos&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
rz = inline('-y/10','x','y');&lt;br /&gt;
Zr = abs(rz(X,Y));&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
title('Representación del rotacional');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista ortogonal del rotacional sobre la placa');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rotacional (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Los puntos con que sufren mayor rotacional son los &amp;lt;math&amp;gt;(x,y) = (x,4)&amp;lt;/math&amp;gt;. Cuyo valor de rotacional es 0.4&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
&lt;br /&gt;
Sabiendo que el medio que tratamos, es un medio elástico lineal, isótropo y homogéneo, entonces el tensor de tensiones sobre el sólido elástico depende de los coeficientes de ''Lamé'' (\(\lambda\) y \(\mu\)):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;\( \sigma_{ij}=\lambda \nabla \cdot \vec u \delta_{ij} + 2\mu \epsilon_{ij} \)&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de las tensiones tomamos como valor de éstos coeficientes 1.&lt;br /&gt;
&lt;br /&gt;
Las tensiones normales se calculan con la fórmula anterior.Como la divergencia del campo vectorial es cero, y como los coeficientes de Lamé son iguales a 1, la tensión normal es \( \sigma_{ij}=2*\epsilon_{ij} \), donde \(\epsilon_{ij} \) es la parte simétrica del tensor gradiente de \(\vec u\).&lt;br /&gt;
&lt;br /&gt;
Así, tenemos que la tensión normal al eje \(\vec i\) nos queda \(\vec i\)*\(\sigma\)*\(\vec i\), que es la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec i\) (que depende solo de \(\vec j\)) sobre \(\vec i\), dando como resultado cero.&lt;br /&gt;
&lt;br /&gt;
Para la tensión normal al eje \(\vec j\), ocurre lo mismo, siendo \(\vec j\)*\(\sigma\)*\(\vec j\) la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec j\) (que depende solo de \(\vec i\)) sobre \(\vec j\), dando también cero.&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
&lt;br /&gt;
Las tensiones tangenciales están definidas por la ecuación \(|\sigma \cdot \vec i-(\vec i \cdot \sigma \cdot \vec i) \vec i|\) respecto al plano ortogonal a \(\vec i\). El segundo sumando es cero. Entonces queda \(|\sigma \cdot \vec i|\) = &amp;lt;math&amp;gt;[0,\frac{y}{10},0]&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a î&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = 0*X; % Componentes x del campo vectorial&lt;br /&gt;
Fy = Y./10; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a i');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto i.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
&lt;br /&gt;
Las tensiones están definidas por la ecuación \(|\sigma \cdot \vec j-(\vec j \cdot \sigma \cdot \vec j) \vec j|\) respecto al plano ortogonal a \(\vec j\). El tensor de tensiones es cero, haciendo cero el segundo sumando. Entonces, nos queda \(|\sigma \cdot \vec j|\) = &amp;lt;math&amp;gt;[\frac{y}{10},0,0]&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a j&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = Y./10; % Componentes x del campo vectorial&lt;br /&gt;
Fy = 0*Y; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a j');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto j.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\sigma_1, \sigma_2, \sigma_3&amp;lt;/math&amp;gt; Son los autovalores de la matriz, tensor de tensiones. &lt;br /&gt;
&lt;br /&gt;
Los valores obtenidos son: &amp;lt;math&amp;gt;\sigma_1 = 0 , \sigma_2 = \frac{y}{10} , \sigma_3 = \frac{-y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Masa total de la placa y función de densidad=&lt;br /&gt;
&lt;br /&gt;
Sabemos que la función que define la densidad de la placa está dada por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f_d(x,y) = x.y.e^{-x^-2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar dicha función para ver como se distribuye en la placa la densidad. &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación de la función densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2)));&lt;br /&gt;
mesh(X,Y,Zd);&lt;br /&gt;
title('Función de densidad de la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Densidad (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Al no tener sentido hablar de densidad negativa, se toman como absolutos todos los valores de la función de densidad. &lt;br /&gt;
&lt;br /&gt;
Así la masa total de la placa es: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;M = \int_{S}f_d dS&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La integral define el volumen bajo la superficie, cuyo valor corresponde a la masa total de la placa. &lt;br /&gt;
&lt;br /&gt;
Para el cálculo del volumen vamos a proceder por el método de aproximación numérica que considera los volúmenes de los paralelepípedos, cuyas bases tienen área &amp;lt;math&amp;gt;H^2 ;H=0.1&amp;lt;/math&amp;gt; y volúmenes las imágenes de la función de densidad. La suma de todos los volúmenes nos da el valor deseado.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Cálculo de la masa total de la placa a partir de la función de densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2))); % Función de densidad&lt;br /&gt;
V = 0.1^2*Zd; % Matriz cuyas componentes son los volúmenes de los &lt;br /&gt;
% paralelepípedos en cuestión&lt;br /&gt;
V = abs(V); % Toma valores absolutos de las componentes de la matriz&lt;br /&gt;
M = sum(sum(V)); % La masa total es la suma de todos los volúmenes&lt;br /&gt;
disp(M); % Muestra en pantalla la masa total de la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La masa total de la placa tiene un valor de &amp;lt;math&amp;gt;M = 0.0163&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22974</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22974"/>
				<updated>2014-12-15T17:08:45Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Tensión de Von Mises */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos &amp;lt;math&amp;gt;[-1/2,1/2]\times[0,4]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante &amp;lt;math&amp;gt;H = \frac{1}{10}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Rotacional del campo vectorial de desplazamientos&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
rz = inline('-y/10','x','y');&lt;br /&gt;
Zr = abs(rz(X,Y));&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
title('Representación del rotacional');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista ortogonal del rotacional sobre la placa');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rotacional (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Los puntos con que sufren mayor rotacional son los &amp;lt;math&amp;gt;(x,y) = (x,4)&amp;lt;/math&amp;gt;. Cuyo valor de rotacional es 0.4&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
&lt;br /&gt;
Sabiendo que el medio que tratamos, es un medio elástico lineal, isótropo y homogéneo, entonces el tensor de tensiones sobre el sólido elástico depende de los coeficientes de ''Lamé'' (\(\lambda\) y \(\mu\)):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;\( \sigma_{ij}=\lambda \nabla \cdot \vec u \delta_{ij} + 2\mu \epsilon_{ij} \)&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de las tensiones tomamos como valor de éstos coeficientes 1.&lt;br /&gt;
&lt;br /&gt;
Las tensiones normales se calculan con la fórmula anterior.Como la divergencia del campo vectorial es cero, y como los coeficientes de Lamé son iguales a 1, la tensión normal es \( \sigma_{ij}=2*\epsilon_{ij} \), donde \(\epsilon_{ij} \) es la parte simétrica del tensor gradiente de \(\vec u\).&lt;br /&gt;
&lt;br /&gt;
Así, tenemos que la tensión normal al eje \(\vec i\) nos queda \(\vec i\)*\(\sigma\)*\(\vec i\), que es la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec i\) (que depende solo de \(\vec j\)) sobre \(\vec i\), dando como resultado cero.&lt;br /&gt;
&lt;br /&gt;
Para la tensión normal al eje \(\vec j\), ocurre lo mismo, siendo \(\vec j\)*\(\sigma\)*\(\vec j\) la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec j\) (que depende solo de \(\vec i\)) sobre \(\vec j\), dando también cero.&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
&lt;br /&gt;
Las tensiones tangenciales están definidas por la ecuación \(|\sigma \cdot \vec i-(\vec i \cdot \sigma \cdot \vec i) \vec i|\) respecto al plano ortogonal a \(\vec i\). El segundo sumando es cero. Entonces queda \(|\sigma \cdot \vec i|\) = &amp;lt;math&amp;gt;[0,\frac{y}{10},0]&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a î&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = 0*X; % Componentes x del campo vectorial&lt;br /&gt;
Fy = Y./10; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a i');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto i.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
&lt;br /&gt;
Las tensiones están definidas por la ecuación \(|\sigma \cdot \vec j-(\vec j \cdot \sigma \cdot \vec j) \vec j|\) respecto al plano ortogonal a \(\vec j\). El tensor de tensiones es cero, haciendo cero el segundo sumando. Entonces, nos queda \(|\sigma \cdot \vec j|\) = &amp;lt;math&amp;gt;[\frac{y}{10},0,0]&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a j&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = Y./10; % Componentes x del campo vectorial&lt;br /&gt;
Fy = 0*Y; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a j');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto j.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\sigma_1, \sigma_2, \sigma_3&amp;lt;/math&amp;gt; Son los autovalores de la matriz, tensor de tensiones. &lt;br /&gt;
&lt;br /&gt;
Los valores obtenidos son: &amp;lt;math&amp;gt;\sigma_1 = 0 , \sigma_2 = \frac{y}{10} , \sigma_3 = \frac{-y}{10}&lt;br /&gt;
&lt;br /&gt;
=Masa total de la placa y función de densidad=&lt;br /&gt;
&lt;br /&gt;
Sabemos que la función que define la densidad de la placa está dada por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f_d(x,y) = x.y.e^{-x^-2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar dicha función para ver como se distribuye en la placa la densidad. &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación de la función densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2)));&lt;br /&gt;
mesh(X,Y,Zd);&lt;br /&gt;
title('Función de densidad de la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Densidad (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Al no tener sentido hablar de densidad negativa, se toman como absolutos todos los valores de la función de densidad. &lt;br /&gt;
&lt;br /&gt;
Así la masa total de la placa es: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;M = \int_{S}f_d dS&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La integral define el volumen bajo la superficie, cuyo valor corresponde a la masa total de la placa. &lt;br /&gt;
&lt;br /&gt;
Para el cálculo del volumen vamos a proceder por el método de aproximación numérica que considera los volúmenes de los paralelepípedos, cuyas bases tienen área &amp;lt;math&amp;gt;H^2 ;H=0.1&amp;lt;/math&amp;gt; y volúmenes las imágenes de la función de densidad. La suma de todos los volúmenes nos da el valor deseado.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Cálculo de la masa total de la placa a partir de la función de densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2))); % Función de densidad&lt;br /&gt;
V = 0.1^2*Zd; % Matriz cuyas componentes son los volúmenes de los &lt;br /&gt;
% paralelepípedos en cuestión&lt;br /&gt;
V = abs(V); % Toma valores absolutos de las componentes de la matriz&lt;br /&gt;
M = sum(sum(V)); % La masa total es la suma de todos los volúmenes&lt;br /&gt;
disp(M); % Muestra en pantalla la masa total de la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La masa total de la placa tiene un valor de &amp;lt;math&amp;gt;M = 0.0163&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22972</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22972"/>
				<updated>2014-12-15T17:04:12Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Tensiones tangenciales respecto al plano ortogonal a ĵ */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos &amp;lt;math&amp;gt;[-1/2,1/2]\times[0,4]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante &amp;lt;math&amp;gt;H = \frac{1}{10}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Rotacional del campo vectorial de desplazamientos&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
rz = inline('-y/10','x','y');&lt;br /&gt;
Zr = abs(rz(X,Y));&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
title('Representación del rotacional');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista ortogonal del rotacional sobre la placa');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rotacional (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Los puntos con que sufren mayor rotacional son los &amp;lt;math&amp;gt;(x,y) = (x,4)&amp;lt;/math&amp;gt;. Cuyo valor de rotacional es 0.4&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
&lt;br /&gt;
Sabiendo que el medio que tratamos, es un medio elástico lineal, isótropo y homogéneo, entonces el tensor de tensiones sobre el sólido elástico depende de los coeficientes de ''Lamé'' (\(\lambda\) y \(\mu\)):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;\( \sigma_{ij}=\lambda \nabla \cdot \vec u \delta_{ij} + 2\mu \epsilon_{ij} \)&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de las tensiones tomamos como valor de éstos coeficientes 1.&lt;br /&gt;
&lt;br /&gt;
Las tensiones normales se calculan con la fórmula anterior.Como la divergencia del campo vectorial es cero, y como los coeficientes de Lamé son iguales a 1, la tensión normal es \( \sigma_{ij}=2*\epsilon_{ij} \), donde \(\epsilon_{ij} \) es la parte simétrica del tensor gradiente de \(\vec u\).&lt;br /&gt;
&lt;br /&gt;
Así, tenemos que la tensión normal al eje \(\vec i\) nos queda \(\vec i\)*\(\sigma\)*\(\vec i\), que es la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec i\) (que depende solo de \(\vec j\)) sobre \(\vec i\), dando como resultado cero.&lt;br /&gt;
&lt;br /&gt;
Para la tensión normal al eje \(\vec j\), ocurre lo mismo, siendo \(\vec j\)*\(\sigma\)*\(\vec j\) la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec j\) (que depende solo de \(\vec i\)) sobre \(\vec j\), dando también cero.&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
&lt;br /&gt;
Las tensiones tangenciales están definidas por la ecuación \(|\sigma \cdot \vec i-(\vec i \cdot \sigma \cdot \vec i) \vec i|\) respecto al plano ortogonal a \(\vec i\). El segundo sumando es cero. Entonces queda \(|\sigma \cdot \vec i|\) = &amp;lt;math&amp;gt;[0,\frac{y}{10},0]&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a î&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = 0*X; % Componentes x del campo vectorial&lt;br /&gt;
Fy = Y./10; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a i');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto i.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
&lt;br /&gt;
Las tensiones están definidas por la ecuación \(|\sigma \cdot \vec j-(\vec j \cdot \sigma \cdot \vec j) \vec j|\) respecto al plano ortogonal a \(\vec j\). El tensor de tensiones es cero, haciendo cero el segundo sumando. Entonces, nos queda \(|\sigma \cdot \vec j|\) = &amp;lt;math&amp;gt;[\frac{y}{10},0,0]&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a j&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = Y./10; % Componentes x del campo vectorial&lt;br /&gt;
Fy = 0*Y; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a j');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto j.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\sigma_1, \sigma_2, \sigma_3&amp;lt;/math&amp;gt; Son los autovalores de la matriz, tensor de tensiones. En nuestro caso dicho tensor es nulo, luego tendrá como autovalor el cero, con multiplicidad triple. De esta manera al sustituir en la fórmula anterior y operar obtenemos un valor nulo para la tensión.&lt;br /&gt;
&lt;br /&gt;
=Masa total de la placa y función de densidad=&lt;br /&gt;
&lt;br /&gt;
Sabemos que la función que define la densidad de la placa está dada por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f_d(x,y) = x.y.e^{-x^-2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar dicha función para ver como se distribuye en la placa la densidad. &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación de la función densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2)));&lt;br /&gt;
mesh(X,Y,Zd);&lt;br /&gt;
title('Función de densidad de la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Densidad (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Al no tener sentido hablar de densidad negativa, se toman como absolutos todos los valores de la función de densidad. &lt;br /&gt;
&lt;br /&gt;
Así la masa total de la placa es: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;M = \int_{S}f_d dS&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La integral define el volumen bajo la superficie, cuyo valor corresponde a la masa total de la placa. &lt;br /&gt;
&lt;br /&gt;
Para el cálculo del volumen vamos a proceder por el método de aproximación numérica que considera los volúmenes de los paralelepípedos, cuyas bases tienen área &amp;lt;math&amp;gt;H^2 ;H=0.1&amp;lt;/math&amp;gt; y volúmenes las imágenes de la función de densidad. La suma de todos los volúmenes nos da el valor deseado.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Cálculo de la masa total de la placa a partir de la función de densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2))); % Función de densidad&lt;br /&gt;
V = 0.1^2*Zd; % Matriz cuyas componentes son los volúmenes de los &lt;br /&gt;
% paralelepípedos en cuestión&lt;br /&gt;
V = abs(V); % Toma valores absolutos de las componentes de la matriz&lt;br /&gt;
M = sum(sum(V)); % La masa total es la suma de todos los volúmenes&lt;br /&gt;
disp(M); % Muestra en pantalla la masa total de la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La masa total de la placa tiene un valor de &amp;lt;math&amp;gt;M = 0.0163&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22971</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22971"/>
				<updated>2014-12-15T17:03:01Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Tensiones tangenciales respecto al plano ortogonal a î */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos &amp;lt;math&amp;gt;[-1/2,1/2]\times[0,4]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante &amp;lt;math&amp;gt;H = \frac{1}{10}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Rotacional del campo vectorial de desplazamientos&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
rz = inline('-y/10','x','y');&lt;br /&gt;
Zr = abs(rz(X,Y));&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
title('Representación del rotacional');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista ortogonal del rotacional sobre la placa');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rotacional (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Los puntos con que sufren mayor rotacional son los &amp;lt;math&amp;gt;(x,y) = (x,4)&amp;lt;/math&amp;gt;. Cuyo valor de rotacional es 0.4&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
&lt;br /&gt;
Sabiendo que el medio que tratamos, es un medio elástico lineal, isótropo y homogéneo, entonces el tensor de tensiones sobre el sólido elástico depende de los coeficientes de ''Lamé'' (\(\lambda\) y \(\mu\)):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;\( \sigma_{ij}=\lambda \nabla \cdot \vec u \delta_{ij} + 2\mu \epsilon_{ij} \)&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de las tensiones tomamos como valor de éstos coeficientes 1.&lt;br /&gt;
&lt;br /&gt;
Las tensiones normales se calculan con la fórmula anterior.Como la divergencia del campo vectorial es cero, y como los coeficientes de Lamé son iguales a 1, la tensión normal es \( \sigma_{ij}=2*\epsilon_{ij} \), donde \(\epsilon_{ij} \) es la parte simétrica del tensor gradiente de \(\vec u\).&lt;br /&gt;
&lt;br /&gt;
Así, tenemos que la tensión normal al eje \(\vec i\) nos queda \(\vec i\)*\(\sigma\)*\(\vec i\), que es la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec i\) (que depende solo de \(\vec j\)) sobre \(\vec i\), dando como resultado cero.&lt;br /&gt;
&lt;br /&gt;
Para la tensión normal al eje \(\vec j\), ocurre lo mismo, siendo \(\vec j\)*\(\sigma\)*\(\vec j\) la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec j\) (que depende solo de \(\vec i\)) sobre \(\vec j\), dando también cero.&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
&lt;br /&gt;
Las tensiones tangenciales están definidas por la ecuación \(|\sigma \cdot \vec i-(\vec i \cdot \sigma \cdot \vec i) \vec i|\) respecto al plano ortogonal a \(\vec i\). El segundo sumando es cero. Entonces queda \(|\sigma \cdot \vec i|\) = &amp;lt;math&amp;gt;[0,\frac{y}{10},0]&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a î&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = 0*X; % Componentes x del campo vectorial&lt;br /&gt;
Fy = Y./10; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a i');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto i.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
&lt;br /&gt;
Las tensiones están definidas por la ecuación \(|\sigma \cdot \vec j-(\vec j \cdot \sigma \cdot \vec j) \vec j|\) respecto al plano ortogonal a \(\vec j\). El tensor de tensiones es cero, haciendo cero el segundo sumando. Entonces, nos queda \(|\sigma \cdot \vec j|\).&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a j&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = Y./10; % Componentes x del campo vectorial&lt;br /&gt;
Fy = 0*Y; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a j');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto j.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\sigma_1, \sigma_2, \sigma_3&amp;lt;/math&amp;gt; Son los autovalores de la matriz, tensor de tensiones. En nuestro caso dicho tensor es nulo, luego tendrá como autovalor el cero, con multiplicidad triple. De esta manera al sustituir en la fórmula anterior y operar obtenemos un valor nulo para la tensión.&lt;br /&gt;
&lt;br /&gt;
=Masa total de la placa y función de densidad=&lt;br /&gt;
&lt;br /&gt;
Sabemos que la función que define la densidad de la placa está dada por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f_d(x,y) = x.y.e^{-x^-2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar dicha función para ver como se distribuye en la placa la densidad. &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación de la función densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2)));&lt;br /&gt;
mesh(X,Y,Zd);&lt;br /&gt;
title('Función de densidad de la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Densidad (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Al no tener sentido hablar de densidad negativa, se toman como absolutos todos los valores de la función de densidad. &lt;br /&gt;
&lt;br /&gt;
Así la masa total de la placa es: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;M = \int_{S}f_d dS&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La integral define el volumen bajo la superficie, cuyo valor corresponde a la masa total de la placa. &lt;br /&gt;
&lt;br /&gt;
Para el cálculo del volumen vamos a proceder por el método de aproximación numérica que considera los volúmenes de los paralelepípedos, cuyas bases tienen área &amp;lt;math&amp;gt;H^2 ;H=0.1&amp;lt;/math&amp;gt; y volúmenes las imágenes de la función de densidad. La suma de todos los volúmenes nos da el valor deseado.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Cálculo de la masa total de la placa a partir de la función de densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2))); % Función de densidad&lt;br /&gt;
V = 0.1^2*Zd; % Matriz cuyas componentes son los volúmenes de los &lt;br /&gt;
% paralelepípedos en cuestión&lt;br /&gt;
V = abs(V); % Toma valores absolutos de las componentes de la matriz&lt;br /&gt;
M = sum(sum(V)); % La masa total es la suma de todos los volúmenes&lt;br /&gt;
disp(M); % Muestra en pantalla la masa total de la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La masa total de la placa tiene un valor de &amp;lt;math&amp;gt;M = 0.0163&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22968</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22968"/>
				<updated>2014-12-15T17:00:41Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Tensiones tangenciales respecto al plano ortogonal a î */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos &amp;lt;math&amp;gt;[-1/2,1/2]\times[0,4]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante &amp;lt;math&amp;gt;H = \frac{1}{10}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Rotacional del campo vectorial de desplazamientos&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
rz = inline('-y/10','x','y');&lt;br /&gt;
Zr = abs(rz(X,Y));&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
title('Representación del rotacional');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista ortogonal del rotacional sobre la placa');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rotacional (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Los puntos con que sufren mayor rotacional son los &amp;lt;math&amp;gt;(x,y) = (x,4)&amp;lt;/math&amp;gt;. Cuyo valor de rotacional es 0.4&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
&lt;br /&gt;
Sabiendo que el medio que tratamos, es un medio elástico lineal, isótropo y homogéneo, entonces el tensor de tensiones sobre el sólido elástico depende de los coeficientes de ''Lamé'' (\(\lambda\) y \(\mu\)):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;\( \sigma_{ij}=\lambda \nabla \cdot \vec u \delta_{ij} + 2\mu \epsilon_{ij} \)&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de las tensiones tomamos como valor de éstos coeficientes 1.&lt;br /&gt;
&lt;br /&gt;
Las tensiones normales se calculan con la fórmula anterior.Como la divergencia del campo vectorial es cero, y como los coeficientes de Lamé son iguales a 1, la tensión normal es \( \sigma_{ij}=2*\epsilon_{ij} \), donde \(\epsilon_{ij} \) es la parte simétrica del tensor gradiente de \(\vec u\).&lt;br /&gt;
&lt;br /&gt;
Así, tenemos que la tensión normal al eje \(\vec i\) nos queda \(\vec i\)*\(\sigma\)*\(\vec i\), que es la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec i\) (que depende solo de \(\vec j\)) sobre \(\vec i\), dando como resultado cero.&lt;br /&gt;
&lt;br /&gt;
Para la tensión normal al eje \(\vec j\), ocurre lo mismo, siendo \(\vec j\)*\(\sigma\)*\(\vec j\) la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec j\) (que depende solo de \(\vec i\)) sobre \(\vec j\), dando también cero.&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
&lt;br /&gt;
Las tensiones tangenciales están definidas por la ecuación \(|\sigma \cdot \vec i-(\vec i \cdot \sigma \cdot \vec i) \vec i|\) respecto al plano ortogonal a \(\vec i\). El segundo sumando es cero. Entonces queda \(|\sigma \cdot \vec i|\)&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a î&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = 0*X; % Componentes x del campo vectorial&lt;br /&gt;
Fy = Y./10; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a i');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto i.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
&lt;br /&gt;
Las tensiones están definidas por la ecuación \(|\sigma \cdot \vec j-(\vec j \cdot \sigma \cdot \vec j) \vec j|\) respecto al plano ortogonal a \(\vec j\). El tensor de tensiones es cero, haciendo cero el segundo sumando. Entonces, nos queda \(|\sigma \cdot \vec j|\).&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a j&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = Y./10; % Componentes x del campo vectorial&lt;br /&gt;
Fy = 0*Y; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a j');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto j.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\sigma_1, \sigma_2, \sigma_3&amp;lt;/math&amp;gt; Son los autovalores de la matriz, tensor de tensiones. En nuestro caso dicho tensor es nulo, luego tendrá como autovalor el cero, con multiplicidad triple. De esta manera al sustituir en la fórmula anterior y operar obtenemos un valor nulo para la tensión.&lt;br /&gt;
&lt;br /&gt;
=Masa total de la placa y función de densidad=&lt;br /&gt;
&lt;br /&gt;
Sabemos que la función que define la densidad de la placa está dada por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f_d(x,y) = x.y.e^{-x^-2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar dicha función para ver como se distribuye en la placa la densidad. &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación de la función densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2)));&lt;br /&gt;
mesh(X,Y,Zd);&lt;br /&gt;
title('Función de densidad de la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Densidad (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Al no tener sentido hablar de densidad negativa, se toman como absolutos todos los valores de la función de densidad. &lt;br /&gt;
&lt;br /&gt;
Así la masa total de la placa es: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;M = \int_{S}f_d dS&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La integral define el volumen bajo la superficie, cuyo valor corresponde a la masa total de la placa. &lt;br /&gt;
&lt;br /&gt;
Para el cálculo del volumen vamos a proceder por el método de aproximación numérica que considera los volúmenes de los paralelepípedos, cuyas bases tienen área &amp;lt;math&amp;gt;H^2 ;H=0.1&amp;lt;/math&amp;gt; y volúmenes las imágenes de la función de densidad. La suma de todos los volúmenes nos da el valor deseado.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Cálculo de la masa total de la placa a partir de la función de densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2))); % Función de densidad&lt;br /&gt;
V = 0.1^2*Zd; % Matriz cuyas componentes son los volúmenes de los &lt;br /&gt;
% paralelepípedos en cuestión&lt;br /&gt;
V = abs(V); % Toma valores absolutos de las componentes de la matriz&lt;br /&gt;
M = sum(sum(V)); % La masa total es la suma de todos los volúmenes&lt;br /&gt;
disp(M); % Muestra en pantalla la masa total de la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La masa total de la placa tiene un valor de &amp;lt;math&amp;gt;M = 0.0163&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22541</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22541"/>
				<updated>2014-12-05T22:45:24Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Masa total de la placa */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos &amp;lt;math&amp;gt;[-1/2,1/2]\times[0,4]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante &amp;lt;math&amp;gt;H = \frac{1}{10}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Rotacional del campo vectorial de desplazamientos&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
rz = inline('-y/10','x','y');&lt;br /&gt;
Zr = abs(rz(X,Y));&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
title('Representación del rotacional');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista ortogonal del rotacional sobre la placa');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rotacional (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Los puntos con que sufren mayor rotacional son los &amp;lt;math&amp;gt;(x,y) = (x,4)&amp;lt;/math&amp;gt;. Cuyo valor de rotacional es 0.4&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
&lt;br /&gt;
Sabiendo que el medio que tratamos, es un medio elástico lineal, isótropo y homogéneo, entonces el tensor de tensiones sobre el sólido elástico depende de los coeficientes de ''Lamé'' (\(\lambda\) y \(\mu\)):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;\( \sigma_{ij}=\lambda \nabla \cdot \vec u \delta_{ij} + 2\mu \epsilon_{ij} \)&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de las tensiones tomamos como valor de éstos coeficientes 1.&lt;br /&gt;
&lt;br /&gt;
Las tensiones normales se calculan con la fórmula anterior.Como la divergencia del campo vectorial es cero, y como los coeficientes de Lamé son iguales a 1, la tensión normal es \( \sigma_{ij}=2*\epsilon_{ij} \), donde \(\epsilon_{ij} \) es la parte simétrica del tensor gradiente de \(\vec u\).&lt;br /&gt;
&lt;br /&gt;
Así, tenemos que la tensión normal al eje \(\vec i\) nos queda \(\vec i\)*\(\sigma\)*\(\vec i\), que es la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec i\) (que depende solo de \(\vec j\)) sobre \(\vec i\), dando como resultado cero.&lt;br /&gt;
&lt;br /&gt;
Para la tensión normal al eje \(\vec j\), ocurre lo mismo, siendo \(\vec j\)*\(\sigma\)*\(\vec j\) la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec j\) (que depende solo de \(\vec i\)) sobre \(\vec j\), dando también cero.&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
&lt;br /&gt;
Las tensiones tangenciales están definidas por la ecuación \(|\sigma \cdot \vec i-(\vec i \cdot \sigma \cdot \vec i) \vec i|\) respecto al plano ortogonal a \(\vec i\).Como sabemos, el tensor de tensiones es cero, haciendo cero el segundo sumando. Entonces queda \(|\sigma \cdot \vec i|\)&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a î&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = 0*X; % Componentes x del campo vectorial&lt;br /&gt;
Fy = Y./10; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a i');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto i.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
&lt;br /&gt;
Las tensiones están definidas por la ecuación \(|\sigma \cdot \vec j-(\vec j \cdot \sigma \cdot \vec j) \vec j|\) respecto al plano ortogonal a \(\vec j\). El tensor de tensiones es cero, haciendo cero el segundo sumando. Entonces, nos queda \(|\sigma \cdot \vec j|\).&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a j&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = Y./10; % Componentes x del campo vectorial&lt;br /&gt;
Fy = 0*Y; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a j');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto j.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\sigma_1, \sigma_2, \sigma_3&amp;lt;/math&amp;gt; Son los autovalores de la matriz, tensor de tensiones. En nuestro caso dicho tensor es nulo, luego tendrá como autovalor el cero, con multiplicidad triple. De esta manera al sustituir en la fórmula anterior y operar obtenemos un valor nulo para la tensión.&lt;br /&gt;
&lt;br /&gt;
=Masa total de la placa y función de densidad=&lt;br /&gt;
&lt;br /&gt;
Sabemos que la función que define la densidad de la placa está dada por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f_d(x,y) = x.y.e^{-x^-2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar dicha función para ver como se distribuye en la placa la densidad. &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación de la función densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2)));&lt;br /&gt;
mesh(X,Y,Zd);&lt;br /&gt;
title('Función de densidad de la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Densidad (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Al no tener sentido hablar de densidad negativa, se toman como absolutos todos los valores de la función de densidad. &lt;br /&gt;
&lt;br /&gt;
Así la masa total de la placa es: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;M = \int_{S}f_d dS&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La integral define el volumen bajo la superficie, cuyo valor corresponde a la masa total de la placa. &lt;br /&gt;
&lt;br /&gt;
Para el cálculo del volumen vamos a proceder por el método de aproximación numérica que considera los volúmenes de los paralelepípedos, cuyas bases tienen área &amp;lt;math&amp;gt;H^2 ;H=0.1&amp;lt;/math&amp;gt; y volúmenes las imágenes de la función de densidad. La suma de todos los volúmenes nos da el valor deseado.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Cálculo de la masa total de la placa a partir de la función de densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2))); % Función de densidad&lt;br /&gt;
V = 0.1^2*Zd; % Matriz cuyas componentes son los volúmenes de los &lt;br /&gt;
% paralelepípedos en cuestión&lt;br /&gt;
V = abs(V); % Toma valores absolutos de las componentes de la matriz&lt;br /&gt;
M = sum(sum(V)); % La masa total es la suma de todos los volúmenes&lt;br /&gt;
disp(M); % Muestra en pantalla la masa total de la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La masa total de la placa tiene un valor de &amp;lt;math&amp;gt;M = 0.0163&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22539</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22539"/>
				<updated>2014-12-05T22:44:55Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Masa total de la placa */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos &amp;lt;math&amp;gt;[-1/2,1/2]\times[0,4]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante &amp;lt;math&amp;gt;H = \frac{1}{10}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Rotacional del campo vectorial de desplazamientos&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
rz = inline('-y/10','x','y');&lt;br /&gt;
Zr = abs(rz(X,Y));&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
title('Representación del rotacional');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista ortogonal del rotacional sobre la placa');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rotacional (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Los puntos con que sufren mayor rotacional son los &amp;lt;math&amp;gt;(x,y) = (x,4)&amp;lt;/math&amp;gt;. Cuyo valor de rotacional es 0.4&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
&lt;br /&gt;
Sabiendo que el medio que tratamos, es un medio elástico lineal, isótropo y homogéneo, entonces el tensor de tensiones sobre el sólido elástico depende de los coeficientes de ''Lamé'' (\(\lambda\) y \(\mu\)):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;\( \sigma_{ij}=\lambda \nabla \cdot \vec u \delta_{ij} + 2\mu \epsilon_{ij} \)&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de las tensiones tomamos como valor de éstos coeficientes 1.&lt;br /&gt;
&lt;br /&gt;
Las tensiones normales se calculan con la fórmula anterior.Como la divergencia del campo vectorial es cero, y como los coeficientes de Lamé son iguales a 1, la tensión normal es \( \sigma_{ij}=2*\epsilon_{ij} \), donde \(\epsilon_{ij} \) es la parte simétrica del tensor gradiente de \(\vec u\).&lt;br /&gt;
&lt;br /&gt;
Así, tenemos que la tensión normal al eje \(\vec i\) nos queda \(\vec i\)*\(\sigma\)*\(\vec i\), que es la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec i\) (que depende solo de \(\vec j\)) sobre \(\vec i\), dando como resultado cero.&lt;br /&gt;
&lt;br /&gt;
Para la tensión normal al eje \(\vec j\), ocurre lo mismo, siendo \(\vec j\)*\(\sigma\)*\(\vec j\) la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec j\) (que depende solo de \(\vec i\)) sobre \(\vec j\), dando también cero.&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
&lt;br /&gt;
Las tensiones tangenciales están definidas por la ecuación \(|\sigma \cdot \vec i-(\vec i \cdot \sigma \cdot \vec i) \vec i|\) respecto al plano ortogonal a \(\vec i\).Como sabemos, el tensor de tensiones es cero, haciendo cero el segundo sumando. Entonces queda \(|\sigma \cdot \vec i|\)&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a î&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = 0*X; % Componentes x del campo vectorial&lt;br /&gt;
Fy = Y./10; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a i');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto i.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
&lt;br /&gt;
Las tensiones están definidas por la ecuación \(|\sigma \cdot \vec j-(\vec j \cdot \sigma \cdot \vec j) \vec j|\) respecto al plano ortogonal a \(\vec j\). El tensor de tensiones es cero, haciendo cero el segundo sumando. Entonces, nos queda \(|\sigma \cdot \vec j|\).&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a j&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = Y./10; % Componentes x del campo vectorial&lt;br /&gt;
Fy = 0*Y; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a j');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto j.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\sigma_1, \sigma_2, \sigma_3&amp;lt;/math&amp;gt; Son los autovalores de la matriz, tensor de tensiones. En nuestro caso dicho tensor es nulo, luego tendrá como autovalor el cero, con multiplicidad triple. De esta manera al sustituir en la fórmula anterior y operar obtenemos un valor nulo para la tensión.&lt;br /&gt;
&lt;br /&gt;
=Masa total de la placa=&lt;br /&gt;
&lt;br /&gt;
Sabemos que la función que define la densidad de la placa está dada por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f_d(x,y) = x.y.e^{-x^-2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar dicha función para ver como se distribuye en la placa la densidad. &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación de la función densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2)));&lt;br /&gt;
mesh(X,Y,Zd);&lt;br /&gt;
title('Función de densidad de la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Densidad (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Al no tener sentido hablar de densidad negativa, se toman como absolutos todos los valores de la función de densidad. &lt;br /&gt;
&lt;br /&gt;
Así la masa total de la placa es: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;M = \int_{S}f_d dS&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La integral define el volumen bajo la superficie, cuyo valor corresponde a la masa total de la placa. &lt;br /&gt;
&lt;br /&gt;
Para el cálculo del volumen vamos a proceder por el método de aproximación numérica que considera los volúmenes de los paralelepípedos, cuyas bases tienen área &amp;lt;math&amp;gt;H^2 ;H=0.1&amp;lt;/math&amp;gt; y volúmenes las imágenes de la función de densidad. La suma de todos los volúmenes nos da el valor deseado.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Cálculo de la masa total de la placa a partir de la función de densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2))); % Función de densidad&lt;br /&gt;
V = 0.1^2*Zd; % Matriz cuyas componentes son los volúmenes de los &lt;br /&gt;
% paralelepípedos en cuestión&lt;br /&gt;
V = abs(V); % Toma valores absolutos de las componentes de la matriz&lt;br /&gt;
M = sum(sum(V)); % La masa total es la suma de todos los volúmenes&lt;br /&gt;
disp(M); % Muestra en pantalla la masa total de la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La masa total de la placa tiene un valor de &amp;lt;math&amp;gt;M = 0.0163&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22534</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22534"/>
				<updated>2014-12-05T22:43:26Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Tensión de Von Mises */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos &amp;lt;math&amp;gt;[-1/2,1/2]\times[0,4]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante &amp;lt;math&amp;gt;H = \frac{1}{10}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Rotacional del campo vectorial de desplazamientos&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
rz = inline('-y/10','x','y');&lt;br /&gt;
Zr = abs(rz(X,Y));&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
title('Representación del rotacional');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista ortogonal del rotacional sobre la placa');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rotacional (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Los puntos con que sufren mayor rotacional son los &amp;lt;math&amp;gt;(x,y) = (x,4)&amp;lt;/math&amp;gt;. Cuyo valor de rotacional es 0.4&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
&lt;br /&gt;
Sabiendo que el medio que tratamos, es un medio elástico lineal, isótropo y homogéneo, entonces el tensor de tensiones sobre el sólido elástico depende de los coeficientes de ''Lamé'' (\(\lambda\) y \(\mu\)):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;\( \sigma_{ij}=\lambda \nabla \cdot \vec u \delta_{ij} + 2\mu \epsilon_{ij} \)&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de las tensiones tomamos como valor de éstos coeficientes 1.&lt;br /&gt;
&lt;br /&gt;
Las tensiones normales se calculan con la fórmula anterior.Como la divergencia del campo vectorial es cero, y como los coeficientes de Lamé son iguales a 1, la tensión normal es \( \sigma_{ij}=2*\epsilon_{ij} \), donde \(\epsilon_{ij} \) es la parte simétrica del tensor gradiente de \(\vec u\).&lt;br /&gt;
&lt;br /&gt;
Así, tenemos que la tensión normal al eje \(\vec i\) nos queda \(\vec i\)*\(\sigma\)*\(\vec i\), que es la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec i\) (que depende solo de \(\vec j\)) sobre \(\vec i\), dando como resultado cero.&lt;br /&gt;
&lt;br /&gt;
Para la tensión normal al eje \(\vec j\), ocurre lo mismo, siendo \(\vec j\)*\(\sigma\)*\(\vec j\) la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec j\) (que depende solo de \(\vec i\)) sobre \(\vec j\), dando también cero.&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
&lt;br /&gt;
Las tensiones tangenciales están definidas por la ecuación \(|\sigma \cdot \vec i-(\vec i \cdot \sigma \cdot \vec i) \vec i|\) respecto al plano ortogonal a \(\vec i\).Como sabemos, el tensor de tensiones es cero, haciendo cero el segundo sumando. Entonces queda \(|\sigma \cdot \vec i|\)&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a î&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = 0*X; % Componentes x del campo vectorial&lt;br /&gt;
Fy = Y./10; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a i');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto i.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
&lt;br /&gt;
Las tensiones están definidas por la ecuación \(|\sigma \cdot \vec j-(\vec j \cdot \sigma \cdot \vec j) \vec j|\) respecto al plano ortogonal a \(\vec j\). El tensor de tensiones es cero, haciendo cero el segundo sumando. Entonces, nos queda \(|\sigma \cdot \vec j|\).&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a j&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = Y./10; % Componentes x del campo vectorial&lt;br /&gt;
Fy = 0*Y; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a j');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto j.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\sigma_1, \sigma_2, \sigma_3&amp;lt;/math&amp;gt; Son los autovalores de la matriz, tensor de tensiones. En nuestro caso dicho tensor es nulo, luego tendrá como autovalor el cero, con multiplicidad triple. De esta manera al sustituir en la fórmula anterior y operar obtenemos un valor nulo para la tensión.&lt;br /&gt;
&lt;br /&gt;
==Masa total de la placa==&lt;br /&gt;
&lt;br /&gt;
Sabemos que la función que define la densidad de la placa está dada por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f_d(x,y) = x.y.e^{-x^-2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar dicha función para ver como se distribuye en la placa la densidad. &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación de la función densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2)));&lt;br /&gt;
mesh(X,Y,Zd);&lt;br /&gt;
title('Función de densidad de la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Densidad (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Al no tener sentido hablar de densidad negativa, se toman como absolutos todos los valores de la función de densidad. &lt;br /&gt;
&lt;br /&gt;
Así la masa total de la placa es: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;M = \int_{S}f_d dS&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La integral define el volumen bajo la superficie, cuyo valor corresponde a la masa total de la placa. &lt;br /&gt;
&lt;br /&gt;
Para el cálculo del volumen vamos a proceder por el método de aproximación numérica que considera los volúmenes de los paralelepípedos, cuyas bases tienen área &amp;lt;math&amp;gt;H^2 ;H=0.1&amp;lt;/math&amp;gt; y volúmenes las imágenes de la función de densidad. La suma de todos los volúmenes nos da el valor deseado.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Cálculo de la masa total de la placa a partir de la función de densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2))); % Función de densidad&lt;br /&gt;
V = 0.1^2*Zd; % Matriz cuyas componentes son los volúmenes de los &lt;br /&gt;
% paralelepípedos en cuestión&lt;br /&gt;
V = abs(V); % Toma valores absolutos de las componentes de la matriz&lt;br /&gt;
M = sum(sum(V)); % La masa total es la suma de todos los volúmenes&lt;br /&gt;
disp(M); % Muestra en pantalla la masa total de la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La masa total de la placa tiene un valor de &amp;lt;math&amp;gt;M = 0.0163&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22523</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22523"/>
				<updated>2014-12-05T22:35:16Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos &amp;lt;math&amp;gt;[-1/2,1/2]\times[0,4]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante &amp;lt;math&amp;gt;H = \frac{1}{10}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Rotacional del campo vectorial de desplazamientos&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
rz = inline('-y/10','x','y');&lt;br /&gt;
Zr = abs(rz(X,Y));&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
title('Representación del rotacional');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista ortogonal del rotacional sobre la placa');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rotacional (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Los puntos con que sufren mayor rotacional son los &amp;lt;math&amp;gt;(x,y) = (x,4)&amp;lt;/math&amp;gt;. Cuyo valor de rotacional es 0.4&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
&lt;br /&gt;
Sabiendo que el medio que tratamos, es un medio elástico lineal, isótropo y homogéneo, entonces el tensor de tensiones sobre el sólido elástico depende de los coeficientes de ''Lamé'' (\(\lambda\) y \(\mu\)):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;\( \sigma_{ij}=\lambda \nabla \cdot \vec u \delta_{ij} + 2\mu \epsilon_{ij} \)&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de las tensiones tomamos como valor de éstos coeficientes 1.&lt;br /&gt;
&lt;br /&gt;
Las tensiones normales se calculan con la fórmula anterior.Como la divergencia del campo vectorial es cero, y como los coeficientes de Lamé son iguales a 1, la tensión normal es \( \sigma_{ij}=2*\epsilon_{ij} \), donde \(\epsilon_{ij} \) es la parte simétrica del tensor gradiente de \(\vec u\).&lt;br /&gt;
&lt;br /&gt;
Así, tenemos que la tensión normal al eje \(\vec i\) nos queda \(\vec i\)*\(\sigma\)*\(\vec i\), que es la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec i\) (que depende solo de \(\vec j\)) sobre \(\vec i\), dando como resultado cero.&lt;br /&gt;
&lt;br /&gt;
Para la tensión normal al eje \(\vec j\), ocurre lo mismo, siendo \(\vec j\)*\(\sigma\)*\(\vec j\) la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec j\) (que depende solo de \(\vec i\)) sobre \(\vec j\), dando también cero.&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
&lt;br /&gt;
Las tensiones tangenciales están definidas por la ecuación \(|\sigma \cdot \vec i-(\vec i \cdot \sigma \cdot \vec i) \vec i|\) respecto al plano ortogonal a \(\vec i\).Como sabemos, el tensor de tensiones es cero, haciendo cero el segundo sumando. Entonces queda \(|\sigma \cdot \vec i|\)&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a î&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = 0*X; % Componentes x del campo vectorial&lt;br /&gt;
Fy = Y./10; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a i');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto i.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
&lt;br /&gt;
Las tensiones están definidas por la ecuación \(|\sigma \cdot \vec j-(\vec j \cdot \sigma \cdot \vec j) \vec j|\) respecto al plano ortogonal a \(\vec j\). El tensor de tensiones es cero, haciendo cero el segundo sumando. Entonces, nos queda \(|\sigma \cdot \vec j|\).&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a j&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = Y./10; % Componentes x del campo vectorial&lt;br /&gt;
Fy = 0*Y; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a j');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto j.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total de la placa==&lt;br /&gt;
&lt;br /&gt;
Sabemos que la función que define la densidad de la placa está dada por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f_d(x,y) = x.y.e^{-x^-2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar dicha función para ver como se distribuye en la placa la densidad. &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación de la función densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2)));&lt;br /&gt;
mesh(X,Y,Zd);&lt;br /&gt;
title('Función de densidad de la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Densidad (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Al no tener sentido hablar de densidad negativa, se toman como absolutos todos los valores de la función de densidad. &lt;br /&gt;
&lt;br /&gt;
Así la masa total de la placa es: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;M = \int_{S}f_d dS&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La integral define el volumen bajo la superficie, cuyo valor corresponde a la masa total de la placa. &lt;br /&gt;
&lt;br /&gt;
Para el cálculo del volumen vamos a proceder por el método de aproximación numérica que considera los volúmenes de los paralelepípedos, cuyas bases tienen área &amp;lt;math&amp;gt;H^2 ;H=0.1&amp;lt;/math&amp;gt; y volúmenes las imágenes de la función de densidad. La suma de todos los volúmenes nos da el valor deseado.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Cálculo de la masa total de la placa a partir de la función de densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2))); % Función de densidad&lt;br /&gt;
V = 0.1^2*Zd; % Matriz cuyas componentes son los volúmenes de los &lt;br /&gt;
% paralelepípedos en cuestión&lt;br /&gt;
V = abs(V); % Toma valores absolutos de las componentes de la matriz&lt;br /&gt;
M = sum(sum(V)); % La masa total es la suma de todos los volúmenes&lt;br /&gt;
disp(M); % Muestra en pantalla la masa total de la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La masa total de la placa tiene un valor de &amp;lt;math&amp;gt;M = 0.0163&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Tangenciales_orto_j.png&amp;diff=22521</id>
		<title>Archivo:Tangenciales orto j.png</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Tangenciales_orto_j.png&amp;diff=22521"/>
				<updated>2014-12-05T22:34:36Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Tangenciales_orto_i.png&amp;diff=22520</id>
		<title>Archivo:Tangenciales orto i.png</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Tangenciales_orto_i.png&amp;diff=22520"/>
				<updated>2014-12-05T22:34:17Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22519</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22519"/>
				<updated>2014-12-05T22:33:33Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Tensiones tangenciales respecto al plano ortogonal a ĵ */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{beta}}&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos &amp;lt;math&amp;gt;[-1/2,1/2]\times[0,4]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante &amp;lt;math&amp;gt;H = \frac{1}{10}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Rotacional del campo vectorial de desplazamientos&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
rz = inline('-y/10','x','y');&lt;br /&gt;
Zr = abs(rz(X,Y));&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
title('Representación del rotacional');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista ortogonal del rotacional sobre la placa');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rotacional (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Los puntos con que sufren mayor rotacional son los &amp;lt;math&amp;gt;(x,y) = (x,4)&amp;lt;/math&amp;gt;. Cuyo valor de rotacional es 0.4&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
&lt;br /&gt;
Sabiendo que el medio que tratamos, es un medio elástico lineal, isótropo y homogéneo, entonces el tensor de tensiones sobre el sólido elástico depende de los coeficientes de ''Lamé'' (\(\lambda\) y \(\mu\)):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;\( \sigma_{ij}=\lambda \nabla \cdot \vec u \delta_{ij} + 2\mu \epsilon_{ij} \)&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de las tensiones tomamos como valor de éstos coeficientes 1.&lt;br /&gt;
&lt;br /&gt;
Las tensiones normales se calculan con la fórmula anterior.Como la divergencia del campo vectorial es cero, y como los coeficientes de Lamé son iguales a 1, la tensión normal es \( \sigma_{ij}=2*\epsilon_{ij} \), donde \(\epsilon_{ij} \) es la parte simétrica del tensor gradiente de \(\vec u\).&lt;br /&gt;
&lt;br /&gt;
Así, tenemos que la tensión normal al eje \(\vec i\) nos queda \(\vec i\)*\(\sigma\)*\(\vec i\), que es la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec i\) (que depende solo de \(\vec j\)) sobre \(\vec i\), dando como resultado cero.&lt;br /&gt;
&lt;br /&gt;
Para la tensión normal al eje \(\vec j\), ocurre lo mismo, siendo \(\vec j\)*\(\sigma\)*\(\vec j\) la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec j\) (que depende solo de \(\vec i\)) sobre \(\vec j\), dando también cero.&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
&lt;br /&gt;
Las tensiones tangenciales están definidas por la ecuación \(|\sigma \cdot \vec i-(\vec i \cdot \sigma \cdot \vec i) \vec i|\) respecto al plano ortogonal a \(\vec i\).Como sabemos, el tensor de tensiones es cero, haciendo cero el segundo sumando. Entonces queda \(|\sigma \cdot \vec i|\)&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a î&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = 0*X; % Componentes x del campo vectorial&lt;br /&gt;
Fy = Y./10; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a i');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto i.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
&lt;br /&gt;
Las tensiones están definidas por la ecuación \(|\sigma \cdot \vec j-(\vec j \cdot \sigma \cdot \vec j) \vec j|\) respecto al plano ortogonal a \(\vec j\). El tensor de tensiones es cero, haciendo cero el segundo sumando. Entonces, nos queda \(|\sigma \cdot \vec j|\).&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a j&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = Y./10; % Componentes x del campo vectorial&lt;br /&gt;
Fy = 0*Y; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a j');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto j.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total de la placa==&lt;br /&gt;
&lt;br /&gt;
Sabemos que la función que define la densidad de la placa está dada por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f_d(x,y) = x.y.e^{-x^-2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar dicha función para ver como se distribuye en la placa la densidad. &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación de la función densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2)));&lt;br /&gt;
mesh(X,Y,Zd);&lt;br /&gt;
title('Función de densidad de la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Densidad (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Al no tener sentido hablar de densidad negativa, se toman como absolutos todos los valores de la función de densidad. &lt;br /&gt;
&lt;br /&gt;
Así la masa total de la placa es: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;M = \int_{S}f_d dS&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La integral define el volumen bajo la superficie, cuyo valor corresponde a la masa total de la placa. &lt;br /&gt;
&lt;br /&gt;
Para el cálculo del volumen vamos a proceder por el método de aproximación numérica que considera los volúmenes de los paralelepípedos, cuyas bases tienen área &amp;lt;math&amp;gt;H^2 ;H=0.1&amp;lt;/math&amp;gt; y volúmenes las imágenes de la función de densidad. La suma de todos los volúmenes nos da el valor deseado.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Cálculo de la masa total de la placa a partir de la función de densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2))); % Función de densidad&lt;br /&gt;
V = 0.1^2*Zd; % Matriz cuyas componentes son los volúmenes de los &lt;br /&gt;
% paralelepípedos en cuestión&lt;br /&gt;
V = abs(V); % Toma valores absolutos de las componentes de la matriz&lt;br /&gt;
M = sum(sum(V)); % La masa total es la suma de todos los volúmenes&lt;br /&gt;
disp(M); % Muestra en pantalla la masa total de la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La masa total de la placa tiene un valor de &amp;lt;math&amp;gt;M = 0.0163&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22517</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22517"/>
				<updated>2014-12-05T22:32:42Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Tensiones tangenciales respecto al plano ortogonal a î */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{beta}}&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos &amp;lt;math&amp;gt;[-1/2,1/2]\times[0,4]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante &amp;lt;math&amp;gt;H = \frac{1}{10}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Rotacional del campo vectorial de desplazamientos&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
rz = inline('-y/10','x','y');&lt;br /&gt;
Zr = abs(rz(X,Y));&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
title('Representación del rotacional');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista ortogonal del rotacional sobre la placa');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rotacional (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Los puntos con que sufren mayor rotacional son los &amp;lt;math&amp;gt;(x,y) = (x,4)&amp;lt;/math&amp;gt;. Cuyo valor de rotacional es 0.4&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
&lt;br /&gt;
Sabiendo que el medio que tratamos, es un medio elástico lineal, isótropo y homogéneo, entonces el tensor de tensiones sobre el sólido elástico depende de los coeficientes de ''Lamé'' (\(\lambda\) y \(\mu\)):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;\( \sigma_{ij}=\lambda \nabla \cdot \vec u \delta_{ij} + 2\mu \epsilon_{ij} \)&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de las tensiones tomamos como valor de éstos coeficientes 1.&lt;br /&gt;
&lt;br /&gt;
Las tensiones normales se calculan con la fórmula anterior.Como la divergencia del campo vectorial es cero, y como los coeficientes de Lamé son iguales a 1, la tensión normal es \( \sigma_{ij}=2*\epsilon_{ij} \), donde \(\epsilon_{ij} \) es la parte simétrica del tensor gradiente de \(\vec u\).&lt;br /&gt;
&lt;br /&gt;
Así, tenemos que la tensión normal al eje \(\vec i\) nos queda \(\vec i\)*\(\sigma\)*\(\vec i\), que es la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec i\) (que depende solo de \(\vec j\)) sobre \(\vec i\), dando como resultado cero.&lt;br /&gt;
&lt;br /&gt;
Para la tensión normal al eje \(\vec j\), ocurre lo mismo, siendo \(\vec j\)*\(\sigma\)*\(\vec j\) la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec j\) (que depende solo de \(\vec i\)) sobre \(\vec j\), dando también cero.&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
&lt;br /&gt;
Las tensiones tangenciales están definidas por la ecuación \(|\sigma \cdot \vec i-(\vec i \cdot \sigma \cdot \vec i) \vec i|\) respecto al plano ortogonal a \(\vec i\).Como sabemos, el tensor de tensiones es cero, haciendo cero el segundo sumando. Entonces queda \(|\sigma \cdot \vec i|\)&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Tensiones tangenciales respecto al plano ortogonal a î&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Fx = 0*X; % Componentes x del campo vectorial&lt;br /&gt;
Fy = Y./10; % Componentes y&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Tensiones tangenciales plano ortogonal a i');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
quiver(X,Y,Fx,Fy,2.5);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Visualización de las tensiones en la placa')&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:tangenciales orto i.png|500px]]&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total de la placa==&lt;br /&gt;
&lt;br /&gt;
Sabemos que la función que define la densidad de la placa está dada por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f_d(x,y) = x.y.e^{-x^-2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar dicha función para ver como se distribuye en la placa la densidad. &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación de la función densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2)));&lt;br /&gt;
mesh(X,Y,Zd);&lt;br /&gt;
title('Función de densidad de la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Densidad (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Al no tener sentido hablar de densidad negativa, se toman como absolutos todos los valores de la función de densidad. &lt;br /&gt;
&lt;br /&gt;
Así la masa total de la placa es: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;M = \int_{S}f_d dS&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La integral define el volumen bajo la superficie, cuyo valor corresponde a la masa total de la placa. &lt;br /&gt;
&lt;br /&gt;
Para el cálculo del volumen vamos a proceder por el método de aproximación numérica que considera los volúmenes de los paralelepípedos, cuyas bases tienen área &amp;lt;math&amp;gt;H^2 ;H=0.1&amp;lt;/math&amp;gt; y volúmenes las imágenes de la función de densidad. La suma de todos los volúmenes nos da el valor deseado.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Cálculo de la masa total de la placa a partir de la función de densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2))); % Función de densidad&lt;br /&gt;
V = 0.1^2*Zd; % Matriz cuyas componentes son los volúmenes de los &lt;br /&gt;
% paralelepípedos en cuestión&lt;br /&gt;
V = abs(V); % Toma valores absolutos de las componentes de la matriz&lt;br /&gt;
M = sum(sum(V)); % La masa total es la suma de todos los volúmenes&lt;br /&gt;
disp(M); % Muestra en pantalla la masa total de la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La masa total de la placa tiene un valor de &amp;lt;math&amp;gt;M = 0.0163&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22512</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=22512"/>
				<updated>2014-12-05T22:29:45Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Tensiones normales */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{beta}}&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos &amp;lt;math&amp;gt;[-1/2,1/2]\times[0,4]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante &amp;lt;math&amp;gt;H = \frac{1}{10}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Rotacional del campo vectorial de desplazamientos&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
rz = inline('-y/10','x','y');&lt;br /&gt;
Zr = abs(rz(X,Y));&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
title('Representación del rotacional');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista ortogonal del rotacional sobre la placa');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rotacional (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Los puntos con que sufren mayor rotacional son los &amp;lt;math&amp;gt;(x,y) = (x,4)&amp;lt;/math&amp;gt;. Cuyo valor de rotacional es 0.4&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
&lt;br /&gt;
Sabiendo que el medio que tratamos, es un medio elástico lineal, isótropo y homogéneo, entonces el tensor de tensiones sobre el sólido elástico depende de los coeficientes de ''Lamé'' (\(\lambda\) y \(\mu\)):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=&amp;quot;center&amp;quot;&amp;gt;\( \sigma_{ij}=\lambda \nabla \cdot \vec u \delta_{ij} + 2\mu \epsilon_{ij} \)&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para el cálculo de las tensiones tomamos como valor de éstos coeficientes 1.&lt;br /&gt;
&lt;br /&gt;
Las tensiones normales se calculan con la fórmula anterior.Como la divergencia del campo vectorial es cero, y como los coeficientes de Lamé son iguales a 1, la tensión normal es \( \sigma_{ij}=2*\epsilon_{ij} \), donde \(\epsilon_{ij} \) es la parte simétrica del tensor gradiente de \(\vec u\).&lt;br /&gt;
&lt;br /&gt;
Así, tenemos que la tensión normal al eje \(\vec i\) nos queda \(\vec i\)*\(\sigma\)*\(\vec i\), que es la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec i\) (que depende solo de \(\vec j\)) sobre \(\vec i\), dando como resultado cero.&lt;br /&gt;
&lt;br /&gt;
Para la tensión normal al eje \(\vec j\), ocurre lo mismo, siendo \(\vec j\)*\(\sigma\)*\(\vec j\) la proyección de &lt;br /&gt;
&lt;br /&gt;
\(\sigma\)*\(\vec j\) (que depende solo de \(\vec i\)) sobre \(\vec j\), dando también cero.&lt;br /&gt;
&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total de la placa==&lt;br /&gt;
&lt;br /&gt;
Sabemos que la función que define la densidad de la placa está dada por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f_d(x,y) = x.y.e^{-x^-2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar dicha función para ver como se distribuye en la placa la densidad. &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación de la función densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2)));&lt;br /&gt;
mesh(X,Y,Zd);&lt;br /&gt;
title('Función de densidad de la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Densidad (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Al no tener sentido hablar de densidad negativa, se toman como absolutos todos los valores de la función de densidad. &lt;br /&gt;
&lt;br /&gt;
Así la masa total de la placa es: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;M = \int_{S}f_d dS&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La integral define el volumen bajo la superficie, cuyo valor corresponde a la masa total de la placa. &lt;br /&gt;
&lt;br /&gt;
Para el cálculo del volumen vamos a proceder por el método de aproximación numérica que considera los volúmenes de los paralelepípedos, cuyas bases tienen área &amp;lt;math&amp;gt;H^2 ;H=0.1&amp;lt;/math&amp;gt; y volúmenes las imágenes de la función de densidad. La suma de todos los volúmenes nos da el valor deseado.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Cálculo de la masa total de la placa a partir de la función de densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2))); % Función de densidad&lt;br /&gt;
V = 0.1^2*Zd; % Matriz cuyas componentes son los volúmenes de los &lt;br /&gt;
% paralelepípedos en cuestión&lt;br /&gt;
V = abs(V); % Toma valores absolutos de las componentes de la matriz&lt;br /&gt;
M = sum(sum(V)); % La masa total es la suma de todos los volúmenes&lt;br /&gt;
disp(M); % Muestra en pantalla la masa total de la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La masa total de la placa tiene un valor de &amp;lt;math&amp;gt;M = 0.0163&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19745</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19745"/>
				<updated>2014-12-04T05:43:32Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Presentación */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{beta}}&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos &amp;lt;math&amp;gt;[-1/2,1/2]\times[0,4]&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante &amp;lt;math&amp;gt;H = \frac{1}{10}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Rotacional del campo vectorial de desplazamientos&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
rz = inline('-y/10','x','y');&lt;br /&gt;
Zr = abs(rz(X,Y));&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
title('Representación del rotacional');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista ortogonal del rotacional sobre la placa');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rotacional (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Los puntos con que sufren mayor rotacional son los &amp;lt;math&amp;gt;(x,y) = (x,4)&amp;lt;/math&amp;gt;. Cuyo valor de rotacional es 0.4&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total de la placa==&lt;br /&gt;
&lt;br /&gt;
Sabemos que la función que define la densidad de la placa está dada por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f_d(x,y) = x.y.e^{-x^-2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar dicha función para ver como se distribuye en la placa la densidad. &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación de la función densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2)));&lt;br /&gt;
mesh(X,Y,Zd);&lt;br /&gt;
title('Función de densidad de la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Densidad (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Al no tener sentido hablar de densidad negativa, se toman como absolutos todos los valores de la función de densidad. &lt;br /&gt;
&lt;br /&gt;
Así la masa total de la placa es: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;M = \int_{S}f_d dS&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La integral define el volumen bajo la superficie, cuyo valor corresponde a la masa total de la placa. &lt;br /&gt;
&lt;br /&gt;
Para el cálculo del volumen vamos a proceder por el método de aproximación numérica que considera los volúmenes de los paralelepípedos, cuyas bases tienen área &amp;lt;math&amp;gt;H^2 ;H=0.1&amp;lt;/math&amp;gt; y volúmenes las imágenes de la función de densidad. La suma de todos los volúmenes nos da el valor deseado.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Cálculo de la masa total de la placa a partir de la función de densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2))); % Función de densidad&lt;br /&gt;
V = 0.1^2*Zd; % Matriz cuyas componentes son los volúmenes de los &lt;br /&gt;
% paralelepípedos en cuestión&lt;br /&gt;
V = abs(V); % Toma valores absolutos de las componentes de la matriz&lt;br /&gt;
M = sum(sum(V)); % La masa total es la suma de todos los volúmenes&lt;br /&gt;
disp(M); % Muestra en pantalla la masa total de la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La masa total de la placa tiene un valor de &amp;lt;math&amp;gt;M = 0.0163&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19744</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19744"/>
				<updated>2014-12-04T05:39:42Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Masa total de la placa */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{beta}}&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos [-1/2,1/2] x [0,4].&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante H=1/10.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Rotacional del campo vectorial de desplazamientos&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
rz = inline('-y/10','x','y');&lt;br /&gt;
Zr = abs(rz(X,Y));&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
title('Representación del rotacional');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista ortogonal del rotacional sobre la placa');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rotacional (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Los puntos con que sufren mayor rotacional son los &amp;lt;math&amp;gt;(x,y) = (x,4)&amp;lt;/math&amp;gt;. Cuyo valor de rotacional es 0.4&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total de la placa==&lt;br /&gt;
&lt;br /&gt;
Sabemos que la función que define la densidad de la placa está dada por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f_d(x,y) = x.y.e^{-x^-2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar dicha función para ver como se distribuye en la placa la densidad. &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación de la función densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2)));&lt;br /&gt;
mesh(X,Y,Zd);&lt;br /&gt;
title('Función de densidad de la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Densidad (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Al no tener sentido hablar de densidad negativa, se toman como absolutos todos los valores de la función de densidad. &lt;br /&gt;
&lt;br /&gt;
Así la masa total de la placa es: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;M = \int_{S}f_d dS&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La integral define el volumen bajo la superficie, cuyo valor corresponde a la masa total de la placa. &lt;br /&gt;
&lt;br /&gt;
Para el cálculo del volumen vamos a proceder por el método de aproximación numérica que considera los volúmenes de los paralelepípedos, cuyas bases tienen área &amp;lt;math&amp;gt;H^2 ;H=0.1&amp;lt;/math&amp;gt; y volúmenes las imágenes de la función de densidad. La suma de todos los volúmenes nos da el valor deseado.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Cálculo de la masa total de la placa a partir de la función de densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2))); % Función de densidad&lt;br /&gt;
V = 0.1^2*Zd; % Matriz cuyas componentes son los volúmenes de los &lt;br /&gt;
% paralelepípedos en cuestión&lt;br /&gt;
V = abs(V); % Toma valores absolutos de las componentes de la matriz&lt;br /&gt;
M = sum(sum(V)); % La masa total es la suma de todos los volúmenes&lt;br /&gt;
disp(M); % Muestra en pantalla la masa total de la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
La masa total de la placa tiene un valor de &amp;lt;math&amp;gt;M = 0.0163&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Densidad_(25C).png&amp;diff=19743</id>
		<title>Archivo:Densidad (25C).png</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Densidad_(25C).png&amp;diff=19743"/>
				<updated>2014-12-04T05:31:27Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19742</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19742"/>
				<updated>2014-12-04T05:29:37Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Masa total de la placa */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{beta}}&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos [-1/2,1/2] x [0,4].&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante H=1/10.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Rotacional del campo vectorial de desplazamientos&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
rz = inline('-y/10','x','y');&lt;br /&gt;
Zr = abs(rz(X,Y));&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
title('Representación del rotacional');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista ortogonal del rotacional sobre la placa');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rotacional (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Los puntos con que sufren mayor rotacional son los &amp;lt;math&amp;gt;(x,y) = (x,4)&amp;lt;/math&amp;gt;. Cuyo valor de rotacional es 0.4&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total de la placa==&lt;br /&gt;
&lt;br /&gt;
Sabemos que la función que define la densidad de la placa está dada por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f_d(x,y) = x.y.exp{-x^-2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar dicha función para ver como se distribuye en la placa la densidad. &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación de la función densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2)));&lt;br /&gt;
mesh(X,Y,Zd);&lt;br /&gt;
title('Función de densidad de la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Al no tener sentido hablar de densidad negativa, se toman como absolutos todos los valores de la función de densidad. &lt;br /&gt;
&lt;br /&gt;
Así la masa total de la placa es: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;M = \int_{S}f_d dS&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La integral define el volumen bajo la superficie, cuyo valor corresponde a la masa total de la placa. &lt;br /&gt;
&lt;br /&gt;
Para el cálculo del volumen vamos a proceder por el método de aproximación numérica que considera los volúmenes de los paralelepípedos, cuyas bases tienen área &amp;lt;math&amp;gt;H^2 ;H=0.1&amp;lt;/math&amp;gt; y volúmenes las imágenes de la función de densidad. La suma de todos los volúmenes nos da el valor deseado.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19741</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19741"/>
				<updated>2014-12-04T05:29:04Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Masa total de la placa */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{beta}}&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos [-1/2,1/2] x [0,4].&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante H=1/10.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Rotacional del campo vectorial de desplazamientos&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
rz = inline('-y/10','x','y');&lt;br /&gt;
Zr = abs(rz(X,Y));&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
title('Representación del rotacional');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista ortogonal del rotacional sobre la placa');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rotacional (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Los puntos con que sufren mayor rotacional son los &amp;lt;math&amp;gt;(x,y) = (x,4)&amp;lt;/math&amp;gt;. Cuyo valor de rotacional es 0.4&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total de la placa==&lt;br /&gt;
&lt;br /&gt;
Sabemos que la función que define la densidad de la placa está dada por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;f_d(x,y) = x.y.exp{-x^-2}&lt;br /&gt;
&lt;br /&gt;
Vamos a representar dicha función para ver como se distribuye en la placa la densidad. &lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación de la función densidad&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
Zd = (X.*Y.*exp(-X.^(-2)));&lt;br /&gt;
mesh(X,Y,Zd);&lt;br /&gt;
title('Función de densidad de la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Al no tener sentido hablar de densidad negativa, se toman como absolutos todos los valores de la función de densidad. &lt;br /&gt;
&lt;br /&gt;
Así la masa total de la placa es: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;M = \int_{S}f_d dS&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La integral define el volumen bajo la superficie, cuyo valor corresponde a la masa total de la placa. &lt;br /&gt;
&lt;br /&gt;
Para el cálculo del volumen vamos a proceder por el método de aproximación numérica que considera los volúmenes de los paralelepípedos, cuyas bases tienen área &amp;lt;math&amp;gt;H^2 ;H=0.1&amp;lt;/math&amp;gt; y volúmenes las imágenes de la función de densidad. La suma de todos los volúmenes nos da el valor deseado.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19740</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19740"/>
				<updated>2014-12-04T05:18:18Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Rotacional del campo Desplazamientos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{beta}}&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos [-1/2,1/2] x [0,4].&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante H=1/10.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Rotacional del campo vectorial de desplazamientos&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
rz = inline('-y/10','x','y');&lt;br /&gt;
Zr = abs(rz(X,Y));&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
title('Representación del rotacional');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista ortogonal del rotacional sobre la placa');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rotacional (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
Los puntos con que sufren mayor rotacional son los &amp;lt;math&amp;gt;(x,y) = (x,4)&amp;lt;/math&amp;gt;. Cuyo valor de rotacional es 0.4&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total de la placa==&lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19739</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19739"/>
				<updated>2014-12-04T05:17:50Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Rotacional del campo Desplazamientos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{beta}}&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos [-1/2,1/2] x [0,4].&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante H=1/10.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Rotacional del campo vectorial de desplazamientos&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
rz = inline('-y/10','x','y');&lt;br /&gt;
Zr = abs(rz(X,Y));&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
title('Representación del rotacional');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista ortogonal del rotacional sobre la placa');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rotacional (25C).png|500px]]&lt;br /&gt;
Los puntos con que sufren mayor rotacional son los &amp;lt;math&amp;gt;(x,y) = (x,4)&amp;lt;/math&amp;gt;. Cuyo valor de rotacional es 0.4&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total de la placa==&lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Rotacional_(25C).png&amp;diff=19738</id>
		<title>Archivo:Rotacional (25C).png</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Rotacional_(25C).png&amp;diff=19738"/>
				<updated>2014-12-04T05:15:03Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19737</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19737"/>
				<updated>2014-12-04T05:14:52Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Rotacional del campo Desplazamientos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{beta}}&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos [-1/2,1/2] x [0,4].&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante H=1/10.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Rotacional del campo vectorial de desplazamientos&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
rz = inline('-y/10','x','y');&lt;br /&gt;
Zr = abs(rz(X,Y));&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
title('Representación del rotacional');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
surf(X,Y,Zr);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista ortogonal del rotacional sobre la placa');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Rotacional (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total de la placa==&lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19736</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19736"/>
				<updated>2014-12-04T05:06:33Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{beta}}&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos [-1/2,1/2] x [0,4].&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante H=1/10.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total de la placa==&lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19735</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19735"/>
				<updated>2014-12-04T05:05:34Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Rotacional del campo Desplazamientos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{beta}}&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos [-1/2,1/2] x [0,4].&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante H=1/10.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Para representar el rotacional se ha de hallar su módulo, en este caso el módulo del campo vectorial U sólo tiene componente para el eje &amp;quot;z&amp;quot;, luego se aplica el valor absoluto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = |\frac{-y}{10}| = \frac{y}{10}&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total de la placa==&lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19734</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19734"/>
				<updated>2014-12-04T05:01:57Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Rotacional del campo Desplazamientos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{beta}}&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos [-1/2,1/2] x [0,4].&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante H=1/10.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;|\nabla \times \vec U| = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total de la placa==&lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19733</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19733"/>
				<updated>2014-12-04T04:58:59Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Tensión de Von Mises */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{beta}}&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos [-1/2,1/2] x [0,4].&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante H=1/10.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \sigma _{VM}=\sqrt{\frac{(\sigma_1-\sigma_2)^{2}+(\sigma_2-\sigma_3)^{2}+(\sigma_3-\sigma_1)^{2}}{2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Masa total de la placa==&lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19732</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19732"/>
				<updated>2014-12-04T04:56:40Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Rotacional del campo Desplazamientos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{beta}}&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos [-1/2,1/2] x [0,4].&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante H=1/10.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
==Masa total de la placa==&lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19731</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19731"/>
				<updated>2014-12-04T04:56:23Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Rotacional del campo Desplazamientos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{beta}}&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos [-1/2,1/2] x [0,4].&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante H=1/10.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\abs{x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
==Masa total de la placa==&lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19730</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19730"/>
				<updated>2014-12-04T04:56:04Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Rotacional del campo Desplazamientos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{beta}}&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos [-1/2,1/2] x [0,4].&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante H=1/10.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\det{x}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
==Masa total de la placa==&lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19729</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19729"/>
				<updated>2014-12-04T04:54:35Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Rotacional del campo Desplazamientos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{beta}}&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos [-1/2,1/2] x [0,4].&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante H=1/10.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta \frac{y^2}{20}}{\delta y} \vec k = \frac{-y}{10} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
==Masa total de la placa==&lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19728</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19728"/>
				<updated>2014-12-04T04:53:18Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Rotacional del campo Desplazamientos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{beta}}&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos [-1/2,1/2] x [0,4].&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante H=1/10.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta y^2/20}{\delta y} \vec k = -y/10 \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
==Masa total de la placa==&lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19727</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19727"/>
				<updated>2014-12-04T04:52:08Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Rotacional del campo Desplazamientos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{beta}}&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos [-1/2,1/2] x [0,4].&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante H=1/10.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
El rotacional de un campo vectorial está definido por la expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla \times \vec U = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  U_1 &amp;amp;  U_2 &amp;amp; U_3 \end{bmatrix} = \begin {bmatrix}  \vec i &amp;amp; \vec j &amp;amp; \vec k \\ &lt;br /&gt;
\frac{\delta}{\delta x} &amp;amp; \frac{\delta}{\delta y} &amp;amp; \frac{\delta}{\delta z}  \\&lt;br /&gt;
\  y^2/20 &amp;amp;  0 &amp;amp; 0 \end{bmatrix} = -\frac{\delta y^2/20}{\delta x} \vec k = -y/10 \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
==Masa total de la placa==&lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19726</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19726"/>
				<updated>2014-12-04T04:43:38Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Divergencia del campo Desplazamientos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{beta}}&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos [-1/2,1/2] x [0,4].&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante H=1/10.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
La Divergencia de un campo vectorial, en nuestro caso del campo de desplazamientos, está definida por la siguiente expresión:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Geométrica-mente la divergencia de un campo vectorial es una medida del cambio de volumen local debido al desplazamiento, en este caso, el desplazamiento de la placa rectangular en el plano XY produce un cambio de volumen nulo, luego la divergencia ha de ser cero.  &lt;br /&gt;
&lt;br /&gt;
Además, podemos comprobar en la definición de divergencia que para nuestro caso, efectivamente toma valor nulo, ya que el desplazamiento se produce únicamente en la dirección de “x” y además, éste sólo depende de los valores de “y”, luego la derivada es cero.&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
==Masa total de la placa==&lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19725</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19725"/>
				<updated>2014-12-04T04:39:59Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Campo vectorial Gradiente del campo Temperatura */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{beta}}&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos [-1/2,1/2] x [0,4].&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante H=1/10.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
==Masa total de la placa==&lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19724</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19724"/>
				<updated>2014-12-04T04:39:39Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Divergencia del campo Desplazamientos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{beta}}&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos [-1/2,1/2] x [0,4].&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante H=1/10.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇.\vec U= \frac{∂U_1}{∂x} i ⃗+ \frac{∂U_2}{∂y}j ⃗+ \frac{∂U_3}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
==Masa total de la placa==&lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19723</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19723"/>
				<updated>2014-12-04T04:37:13Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Campo vectorial Gradiente del campo Temperatura */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{beta}}&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos [-1/2,1/2] x [0,4].&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante H=1/10.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y).e^{-(x+1)^2}.(-2(x+1)).(\vec î) + e^{-(x+1)^2}.(-2y+2).(\vec ĵ)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
==Masa total de la placa==&lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19722</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19722"/>
				<updated>2014-12-04T04:34:59Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Campo vectorial Gradiente del campo Temperatura */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{beta}}&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos [-1/2,1/2] x [0,4].&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante H=1/10.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
El gradiente es un operador que, aplicado a cualquier campo escalar, da como resultado un campo vectorial, de vectores, cuyas direcciones y sentido son las de máximo crecimiento de la función que es campo escalar, en nuestro caso la temperatura.&lt;br /&gt;
Luego la expresión del gradiente para el campo escalar temperatura es:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
que en nuestro caso, para una determinada función de temperatura, hemos obtenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k = (8-y^2+2y)e^{-(x+1)^2}(-2(x+1)) (î) + e^{-(x+1)^2}(-2y+2) (ĵ) ⃗&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De esta manera podemos representar el campo vectorial por medio del siguiente programa;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
==Masa total de la placa==&lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19721</id>
		<title>Visualización de campos escalares y vectoriales en elasticidad. (Grupo 25C)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Visualizaci%C3%B3n_de_campos_escalares_y_vectoriales_en_elasticidad._(Grupo_25C)&amp;diff=19721"/>
				<updated>2014-12-04T04:25:34Z</updated>
		
		<summary type="html">&lt;p&gt;Jose Ramos: /* Campo vectorial Gradiente del campo Temperatura */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{beta}}&lt;br /&gt;
{{ TrabajoED | Visualización de campos vectoriales y escalares en elasticidad. Grupo 25C | [[:Categoría:Teoría de Campos|Teoría de Campos]]|[[:Categoría:TC14/15|2014-15]] | María Moreno, Pablo Goenechea, Andrés Vila, Victor Molina, Jose Ramos }}&lt;br /&gt;
&lt;br /&gt;
==Presentación==&lt;br /&gt;
&lt;br /&gt;
La siguiente práctica tiene como objetivo el estudio de los campos sobre un sólido elástico tras ser sometido a tensión, en función de los desplazamientos y de la temperatura de cada punto del sólido.&lt;br /&gt;
&lt;br /&gt;
Un campo físico representa la distribución de una magnitud física que varía en el espacio, en otras palabras, es una aplicación que asocia a cada punto del espacio un tensor. Hablamos de campos escalares y vectoriales. &lt;br /&gt;
&lt;br /&gt;
El sólido que vamos a estudiar es una placa rectangular que ocupa la región plana producto cartesiano de los intervalos [-1/2,1/2] x [0,4].&lt;br /&gt;
&lt;br /&gt;
Previo al estudio, debemos definir la placa en nuestro programa informático. Para ello se configura un mallado sobre dicha placa que determine los puntos de análisis, de forma que cada intervalo es dividido en subintervalos de valor constante H=1/10.&lt;br /&gt;
&lt;br /&gt;
==Representación de la placa y mallado==&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Representación tridimensional y vista ortogonal de la placa&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);         % Representación espacial&lt;br /&gt;
title('Representación espacial');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(X,Y,0*X); &lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Vista Ortogonal');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
view(2);               % Vista ortogonal a la placa&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Representación_de_la_placa_y_mallado_(25C).png|500px|Placa rectangular plana de región [-1/2,1/2]x[0,4]]]&lt;br /&gt;
&lt;br /&gt;
La malla nos proporciona una idea de la distribución espacial del sólido&lt;br /&gt;
&lt;br /&gt;
==Campo escalar Temperatura==&lt;br /&gt;
&lt;br /&gt;
Considerando que sobre el sólido actúa un campo escalar que representa la temperatura, independiente del tiempo y que está definido para cada punto de la malla por la función; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;T(x,y) = (8-y^2+2y)e^{-(x+1)^2}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vamos a representar el campo.&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo escalar Temperatura de los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
&lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y'); % Se crea la función &lt;br /&gt;
% temperatura por medio del comando &amp;quot;inline&amp;quot;&lt;br /&gt;
T = ft(X,Y); % Cálculo del campo de temperaturas&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
surfc(X,Y,T);&lt;br /&gt;
title('Función de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
zlabel('Eje &amp;quot;z&amp;quot;');&lt;br /&gt;
colorbar;&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
[C,h] = contour(X,Y,T,20);&lt;br /&gt;
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2);&lt;br /&gt;
title('Vista ortogonal de las curvas de nivel');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
colormap hot;&lt;br /&gt;
colorbar;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Temperatura_de_la_placa_(25C).png|500px|Función temperatura de los puntos de la placa y vista ortogonal de sus curvas de nivel]]&lt;br /&gt;
&lt;br /&gt;
La representación gráfica de las curvas de nivel, junto con sus respectivos valores, de la función Temperatura, permite observar las zonas de crecimiento, pudiendo aproximar a simple vista la zona más caliente de la placa. &lt;br /&gt;
Una buena aproximación  del punto de máxima temperatura puede ser (x , y) = (-0.5 , 1) dónde la función vale &lt;br /&gt;
T(-0.5 , 1)= 7.01 &lt;br /&gt;
&lt;br /&gt;
Sin embargo para conocer el valor exacto recurrimos al cálculo vectorial del campo gradiente de un campo escalar (siendo este diferenciable), en nuestro caso la temperatura, lo que nos permite conocer la dirección de máximo crecimiento de este campo escalar, desde cualquier punto del mismo. Las diferentes direcciones deben ser ortogonales a las curvas de nivel del campo escalar.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Gradiente del campo Temperatura==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;∇T= \frac{∂T}{∂x} i ⃗+ \frac{∂T}{∂y}j ⃗+ \frac{∂T}{∂z} \vec k&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
%Cálculo y representación del campo vectorial gradiente de temperatura&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
ft = inline('(8-y.^2+2*y).*exp(-(x+1).^2)','x','y');&lt;br /&gt;
T = ft(X,Y);&lt;br /&gt;
&lt;br /&gt;
% Cálculo del campo gradiente&lt;br /&gt;
gx = inline('(8-y.^2+2*y).*exp(-(x+1).^2).*(-2*(x+1))','x','y'); % Función que define las coordenadas en x del gradiente&lt;br /&gt;
gy = inline('exp(-(x+1).^2).*(-2*y+2)','x','y'); % Función de las coordenadas en y del gradiente&lt;br /&gt;
&lt;br /&gt;
Gx = gx(X,Y); % Cálculo de las coordenadas en x del gradiente para los valores de la malla&lt;br /&gt;
Gy = gy(X,Y); % Coordenadas en y&lt;br /&gt;
&lt;br /&gt;
% Representación del gradiente y curvas de nivel de la temperatura sobre la&lt;br /&gt;
% placa&lt;br /&gt;
&lt;br /&gt;
quiver3(X,Y,0*X,Gx,Gy,0*Gx);&lt;br /&gt;
hold on;&lt;br /&gt;
contour(X,Y,T,10);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo Gradiente de temperatura');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Gradiente de temperatura (25C).png|500px|]]&lt;br /&gt;
&lt;br /&gt;
Como podemos observar los vectores que conforman el campo son ortogonales a las curvas de nivel de la función Temperatura. Este hecho se debe a que la manera más rápida de recorrer la superficie es en la dirección de máxima pendiente, que corresponde a la mínima distancia entre curvas de nivel, es decir, perpendicular a éstas, y que está definida por el Gradiente.&lt;br /&gt;
&lt;br /&gt;
==Campo vectorial Desplazamientos y Representación de la placa antes y después de la transformación==&lt;br /&gt;
&lt;br /&gt;
Además de la temperatura, también se ha definido una deformación sobre la placa, debida a la acción de una fuerza, que podemos representar como un campo vectorial al que llamamos Campo de Desplazamientos &amp;lt;math&amp;gt;U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
De esta forma si definimos &amp;lt;math&amp;gt;R_0(x,y)&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 &amp;lt;math&amp;gt;(x,y)&amp;lt;/math&amp;gt; de la placa después de la deformación viene dada por &amp;lt;math&amp;gt;R(x,y) = R_0(x,y) + U(x,y)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Vamos a suponer que la fuerza &amp;lt;math&amp;gt;F&amp;lt;/math&amp;gt; aplicada sobre la placa, ha provocado un desplazamiento de los puntos de la misma dado por el vector de desplazamientos &amp;lt;math&amp;gt;U(x,y) = \vec a.(\vec b.R_0)^2&amp;lt;/math&amp;gt;&lt;br /&gt;
Dónde &amp;lt;math&amp;gt;\vec a&amp;lt;/math&amp;gt; y &amp;lt;math&amp;gt;\vec b&amp;lt;/math&amp;gt; son dos vectores dados tal que &amp;lt;math&amp;gt;\vec a = î/20 , \vec b = ĵ&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
% Campo vectorial de desplazamientos y forma de la placa tras la&lt;br /&gt;
% deformación&lt;br /&gt;
&lt;br /&gt;
x = -0.5:0.1:0.5;      % Intervalo de puntos en el eje &amp;quot;x&amp;quot;&lt;br /&gt;
y = 0:0.1:4;           % Intervalo de puntos en el eje &amp;quot;y&amp;quot;&lt;br /&gt;
[X,Y] = meshgrid(x,y); % Creación de las matrices que representan &lt;br /&gt;
                       % los puntos de la malla&lt;br /&gt;
                       &lt;br /&gt;
% El vector de posición para cada punto inicial de la placa queda definido&lt;br /&gt;
% por la matriz de coordenadas&lt;br /&gt;
% Los desplazamientos se producen en la dirección del vector unitario i,&lt;br /&gt;
% esto es en la dirección del eje &amp;quot;x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
U = (Y.^2)./20; % Es la matriz de los desplazamientos para el eje &amp;quot;x&amp;quot;&lt;br /&gt;
R = X + U; % Es la matriz con las coordenadas en x, después del desplazamiento&lt;br /&gt;
&lt;br /&gt;
figure(1);&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,1);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos de la placa sin deformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
subplot(1,2,2);&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
axis([-1.5 1.5 -1 5]);&lt;br /&gt;
title('Puntos después de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(2);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
mesh(R,Y,0*R);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Comparamos la placa antes y depués de la transformación');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
&lt;br /&gt;
figure(3);&lt;br /&gt;
mesh(X,Y,0*X);&lt;br /&gt;
hold on;&lt;br /&gt;
quiver3(X,Y,0*X,U,0*Y,0*U,5);&lt;br /&gt;
view(2);&lt;br /&gt;
title('Campo vectorial de desplazamientos sobre la placa');&lt;br /&gt;
xlabel('Eje &amp;quot;x&amp;quot;');&lt;br /&gt;
ylabel('Eje &amp;quot;y&amp;quot;');&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Campo de desplazamientos (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Placa antes y despues (25C).png|500px]]&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Comparacion (25C).png|400px]]&lt;br /&gt;
&lt;br /&gt;
==Divergencia del campo Desplazamientos==&lt;br /&gt;
==Rotacional del campo Desplazamientos==&lt;br /&gt;
&lt;br /&gt;
=Tensiones debidas al desplazamiento=&lt;br /&gt;
&lt;br /&gt;
==Tensiones normales==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a î==&lt;br /&gt;
==Tensiones tangenciales respecto al plano ortogonal a ĵ==&lt;br /&gt;
==Tensión de Von Mises==&lt;br /&gt;
==Masa total de la placa==&lt;br /&gt;
&lt;br /&gt;
[[Categoría:TC14/15]]&lt;/div&gt;</summary>
		<author><name>Jose Ramos</name></author>	</entry>

	</feed>