Ondas y campos vectoriales en un arco (Grupo 61)

De MateWiki
Revisión del 16:54 7 dic 2025 de Javier.sanchezt (Discusión | contribuciones) (. Rotacional de \overrightarrow{u})

Saltar a: navegación, buscar
Trabajo realizado por estudiantes
Título Ondas y Campos Vectoriales en un Arco. Grupo 61
Asignatura Teoría de Campos
Curso 2025-26
Autores Marco Antonio Vives Rocamora
Pelayo Álvarez Fernández
Álvaro Rodríguez
Javier Portabella
Javier Sánchez Torres
Este artículo ha sido escrito por estudiantes como parte de su evaluación en la asignatura


1 . Definición del Arco.

1.1 . Arco

El dominio que se analiza en este trabajo es un arco circular obtenido a partir de dos circunferencias concéntricas de radios 1 y 2. Todos los puntos pertenecientes a la región satisfacen la condición

[math]1 \le \sqrt{x^2 + y^2} \le 2.[/math]

Aunque esta descripción puede expresarse en coordenadas cartesianas, resulta mucho más natural utilizar coordenadas polares para caracterizar la geometría del arco. En estas, la región queda definida mediante los intervalos

[math]\rho \in [1,2][/math][math]\theta \in [0,2\pi][/math]

lo que describe una corona circular completa alrededor del origen.

Sobre esta zona de estudio se considera un desplazamiento impuesto en dirección radial, que depende únicamente del valor de [math]\rho[/math]. Dicho desplazamiento está descrito por

[math]\vec{u}(\rho,\theta)=\tfrac{1}{5}(\rho-1)\rho\,\vec{e}_\rho.[/math]

Este campo puede interpretarse como una expansión uniforme hacia el exterior, que separa progresivamente las circunferencias de radio 1 y 2 sin introducir componente angular. A partir de esta deformación se estudiarán distintas magnitudes —gradiente, divergencia, rotacional y tensiones— con el fin de comprender cómo responde el material del arco ante una perturbación radial.

1.2 . Mallado del arco

Para poder trabajar numéricamente sobre el arco es necesario discretizarlo, es decir, construir una malla de puntos en su interior. Partimos de la descripción del dominio en coordenadas polares:

[math]1 \le \rho \le 2,\qquad 0 \le \theta \le 2\pi[/math]

que corresponde a una corona circular completa alrededor del origen.

El mallado se obtiene tomando un número finito de valores igualmente espaciados de [math]\rho[/math] y [math]\theta[/math]. A partir de ellos se construye una rejilla en el plano [math](\rho,\theta)[/math] y, usando el cambio a coordenadas cartesianas:

[math] x = \rho \cos\theta,\qquad y = \rho \sin\theta [/math]

se obtienen las coordenadas [math](x,y)[/math] de todos los puntos de la malla. Las líneas de [math]\rho[/math] constante dan lugar a circunferencias, mientras que las líneas de [math]\theta[/math] constante se representan como radios. El resultado es una malla estructurada formada por curvas radiales y circunferenciales que recubre todo el dominio del arco y que servirá de base para representar los distintos campos escalares y vectoriales en los apartados siguientes.


Mallado del arco realizado a través de Matlab:

Representación del mallado del arco mediante MatLab.
% Paso de muestreo
h = 0.1;

% Valor de u (radios)
u = 1:h:2;

% Calculo de lo puntos que caben aproximadamente
puntos = round(pi/h) + 1;

% Vector v (ángulos) de 0 a pi
v = linspace(0, pi, puntos);

% Matrices de coordenadas polares
[rho, theta] = meshgrid(u, v);

% Conversión a Cartesianas
xx = rho .* cos(theta);
yy = rho .* sin(theta);


plot(xx, yy, 'r'); 

hold on %Se mantiene el gráfico para añadir las líneas radiales

plot(xx', yy', 'r');

hold off

% Ajustes finales visuales
axis equal
axis([-3, 3, -0.5, 2.5]);
title('Arco II');


2 . Temperatura

En este apartado se estudia el comportamiento del campo de temperatura definido sobre el dominio del arco. La temperatura viene dada por la función escalar

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

la cual asigna a cada punto del arco un valor real no negativo. Se trata de un campo escalar sencillo pero representativo, ya que su variación depende de la distancia a la diagonal [math]x = y[/math], lo que permite observar cómo cambian las isótemas dentro de un dominio curvilíneo.

El análisis de la temperatura se divide en dos partes. En primer lugar, se representa el campo mediante un mapa de colores sobre el dominio discretizado, lo que permite visualizar de forma inmediata las zonas de mayor y menor temperatura. En segundo lugar, se estudian sus valores extremos dentro del arco, determinando dónde se alcanzan los máximos y mínimos en función de la geometría del dominio.

Este estudio será esencial para comprender el gradiente de la temperatura en el apartado siguiente, ya que las zonas donde [math]T[/math] crece o decrece más rápidamente estarán directamente relacionadas con la orientación del vector [math]\nabla T[/math].


2.1 . Representación

En este apartado se representa gráficamente el campo de temperatura definido por

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

evaluado sobre la malla construida en el arco. Para cada punto de la rejilla [math](x,y)[/math], la función asigna un valor proporcional al cuadrado de la diferencia entre sus coordenadas. Esto implica que la temperatura es mínima sobre la diagonal [math]x = y[/math] y aumenta conforme los puntos se alejan de dicha línea.

La representación se realiza mediante un mapa de colores sobre el dominio, utilizando la misma malla generada en el apartado anterior. Este tipo de visualización permite identificar rápidamente las regiones de temperatura elevada (colores cálidos) y las zonas donde [math]T[/math] es más baja (colores fríos). La variación del campo resulta suave y simétrica respecto a la recta [math]x = y[/math], lo que facilita su análisis en apartados posteriores.

Representación de la temperatura del arco
% Cálculo de la temperatura T(x,y) = (x - y)^2

T = (xx - yy).^2;                 % Campo escalar de temperatura

figure

contourf(xx, yy, T, 40, 'LineColor', 'none')   % Mapa suave con 40 niveles

hold on

contour(xx, yy, T, 12, 'k', 'LineWidth', 0.5)  % Líneas de contorno finas en negro

colormap(turbo)                               % Paleta moderna y más limpia

colorbar                                      % Barra lateral

title('Temperatura del arco')                 % Título de la gráfica

xlabel('x'); ylabel('y')                      % Etiquetas de los ejes

axis equal                                    % Proporción real

xlim([-3 3]); ylim([-3 3])                    % Ventana visual

set(gcf, 'Color', 'w')                        % Fondo blanco para mejor calidad


En la figura anterior se representa el campo de temperatura definido por T(x,y) = (x - y)^2 sobre el dominio del arco. La distribución térmica depende directamente de la diferencia entre las coordenadas cartesianas x e y, de modo que la temperatura se anula en los puntos situados sobre la recta x = y y aumenta progresivamente conforme los puntos se alejan de dicha diagonal.

En el gráfico puede observarse cómo las zonas próximas a la línea x = y presentan valores más bajos (colores fríos), mientras que las regiones donde x e y difieren más muestran temperaturas elevadas (colores cálidos). Las bandas inclinadas que aparecen en la imagen reflejan esta estructura nivelada de la función, generando curvas de igual temperatura que atraviesan el arco con una orientación similar.

Esta representación permite identificar con facilidad las regiones en las que la temperatura varía más rápidamente, información que será fundamental en el apartado siguiente para estudiar el gradiente de T y su relación con la geometría del dominio.

2.2 . Máximos y mínimos

Una vez representado el campo de temperatura, analizamos ahora los puntos del arco en los que la función

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

alcanza sus valores extremos. Dado que se trata de una función cuadrática, la temperatura siempre es no negativa y solamente se anula cuando [math]x = y[/math]. Esto permite identificar de forma inmediata los puntos del dominio donde se alcanza el mínimo absoluto.

Por otra parte, los valores máximos no se encuentran en un punto aislado, sino en las zonas del arco donde la diferencia entre [math]x[/math] e [math]y[/math] es mayor dentro del dominio geométrico estudiado. Para localizarlos con precisión se calcula el valor de la temperatura en toda la malla y se identifican los puntos que alcanzan el máximo.

Representación del máximo y mínimo de la función temperatura
% Cálculo de los valores extremos de la temperatura T(x,y) = (x - y)^2

T = (xx - yy).^2;                % Campo de temperatura

valor_min = min(T(:));           % Mínimo absoluto del campo
valor_max = max(T(:));           % Máximo absoluto del campo

% Localización aproximada de los puntos donde se alcanzan
[idx_min] = find(T == valor_min);
[idx_max] = find(T == valor_max);

puntos_min = [xx(idx_min), yy(idx_min)];   % Coordenadas donde T es mínima
puntos_max = [xx(idx_max), yy(idx_max)];   % Coordenadas donde T es máxima

% Representación gráfica
figure
contourf(xx, yy, T, 30)          % Mapa de temperatura
hold on
plot(puntos_min(:,1), puntos_min(:,2), 'wo', 'MarkerSize', 10, 'LineWidth', 2)  % mínimos
plot(puntos_max(:,1), puntos_max(:,2), 'rx', 'MarkerSize', 10, 'LineWidth', 2)  % máximos
colorbar
title('Máximos y mínimos de la temperatura')
xlabel('x'); ylabel('y')
axis equal

En el gráfico se observa que la temperatura mínima se alcanza en los puntos del arco situados sobre la línea x = y, donde la función T(x,y) se anula. Estos puntos aparecen marcados en blanco en la figura.

Los valores máximos, representados mediante cruces rojas, se encuentran en las zonas del arco donde la diferencia |x - y| es mayor. En este caso, los máximos aparecen en la parte superior izquierda y superior derecha del dominio, coincidiendo con los puntos en los que la geometría del arco permite un mayor alejamiento entre x e y.

Este estudio proporciona una visión clara de cómo se distribuyen los valores extremos en el dominio, lo cual será útil en el apartado siguiente para comprender la dirección y magnitud del gradiente de T.

3 . Gradiente de T y curvas de nivel

En este apartado se calcula y representa el gradiente de la temperatura asociada al campo

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

El gradiente proporciona la dirección en la que la temperatura aumenta más rápidamente en cada punto del arco y su módulo indica la variación máxima de T en esa dirección. Dado que se trata de una función diferenciable, el gradiente se obtiene mediante las derivadas parciales respecto a x e y, evaluadas en todos los nodos de la malla.

La representación vectorial del gradiente permite visualizar la orientación de las zonas donde la temperatura crece de forma más acusada, lo cual resulta fundamental para interpretar la distribución térmica del dominio.

Representación del gradiente de la temperatura
% Cálculo del gradiente del campo T(x,y) = (x - y)^2

T = (xx - yy).^2;                % Campo de temperatura

% Derivadas parciales de T
Tx = 2*(xx - yy);                % dT/dx
Ty = -2*(xx - yy);               % dT/dy

% Representación del gradiente
figure
quiver(xx, yy, Tx, Ty, 'k')      % Flechas negras del gradiente
hold on
contourf(xx, yy, T, 20, 'LineColor', 'none')   % Fondo suave con la temperatura
colormap(turbo)
colorbar
title('Gradiente de la temperatura')
xlabel('x'); ylabel('y')
axis equal


En la figura se observa el campo vectorial del gradiente de T superpuesto al mapa de temperatura. Las flechas apuntan en la dirección donde la función T aumenta con mayor rapidez y su orientación coincide con la perpendicular a las curvas de nivel.

Dado que T(x,y) depende únicamente de la diferencia (x - y), los vectores del gradiente son paralelos entre sí en amplias zonas del dominio y presentan una dirección inclinada, siempre perpendicular a las bandas de colores observadas en el mapa de temperatura.

La simetría de la función se refleja en la estructura del gradiente, que cambia de sentido a ambos lados de la recta x = y, donde la temperatura es mínima.

4 . Campo de Vectores en el Sólido ([math]\overrightarrow{u}[/math]).

Tenemos el campo vectorial en coordenadas cilíndricas: [math]\vec u(\rho,\theta)=\frac{1}{5}(\rho-1)\rho\vec e_\rho[/math].

Vamos a representarlo en los puntos del mallado del sólido.

Representación del Campo Vectorial en el Mallado del Sólido
% Defino el paso de muestreo para la rejilla. 
% Defino el dominio.
h = 1/10;
r = 1:h:2;

% Calculo el número aproximado de puntos.
npuntos = round(pi/h)+1;

% Vector en el que asigno un ángulo de 0 a pi a cada punto.
ang = linspace(0,pi,npuntos);

% Generación de la malla de coordenadas polares.
[rho, theta] = meshgrid(r,ang);

% Paso a coordenadas cartesianas para el trazado de las líneas de malla.
x = rho.*cos(theta);
y = rho.*sin(theta);

% Inicio la figura. 
% Uso color verde para las radiales y los arcos.
figure;

plot(x,y,'g'); % Rayos.
hold on
plot(x',y','g'); % Arcos.
axis equal
axis([-3, 3, -0.5, 2.5]);
title('Campo Vectorial: u(ρ,θ)=15(ρ−1)ρ eρ');
xlabel('Eje X'); ylabel('Eje Y');
grid on

% Cálculo y visualización del campo vectorial.
ri = 1;
re = 2;
theta_vec = linspace(0, pi, 20);
rho_vec = linspace(ri, re, 20);
[R, THETA] = meshgrid(rho_vec, theta_vec);

% Posiciones donde nacerán las mallas.
X = R.*cos(THETA);
Y = R.*sin(THETA);

% Definición del campo en base polar.
U_rho = (1/5)*(R-1).*R;
U_theta = zeros(size(U_rho));

% Paso a Cartesianas
U = U_rho.*cos(THETA)-U_theta.*sin(THETA);
V = U_rho.*sin(THETA)+U_theta.*cos(THETA);

% Dibujo de vectores.
quiver(X, Y, U, V, 0.5, 'b', 'LineWidth', 1.2);

hold off

El campo vectorial, al carecer de componente angular ([math]\;\;\vec{e}_{\theta}\;[/math]), es estrictamente radial (los vectores apuntan desde el origen hacia afuera). La ecuación muestra una dependencia respecto a la distancia al origen, a medida que aumenta el radio se produce un crecimiento de la norma de los vectores, siendo nula en el radio interior y máxima en el exterior. Si hacemos zoom, podemos ver que las líneas azules están formadas por infinidad de flechas apuntando hacia el radio externo y que aumentan de tamaño según nos vamos alejando del interior del semianillo.

5 . Sólido antes y después del desplazamiento

Consideramos que el campo [math]\vec u(\rho,\theta)=\frac{1}{5}(\rho-1)\rho\vec e_\rho[/math] determina el desplazamiento que sufre cada punto del sólido.

Dibujo el sólido antes y después del desplazamiento:

Sólido Antes y Después de Aplicarle el Desplazamiento
% Paso del mallado.
h = 0.1;

% Defino el dominio radial.
r = 1:h:2;

% Calculo el nº de puntos.
npuntos = round(pi/h)+1;

% Dominio angular.
ang = linspace(0,pi,npuntos);

% Generación de la malla de coordenadas polares.
[rho,theta] = meshgrid(r,ang);

% Defino la Configuración de Referencia.
% Transformo la geometría original a cartesianas para visualizar.
x = rho.*cos(theta);
y = rho.*sin(theta);

% Cálculo del Campo de Desplazamiento.
% Aplicamos la fórmula sobre la malla radial.
desprad = (1/5).*(rho-1).*rho;

% Proyección del desplazamiento en cartesianas.
despx = desprad.*cos(theta);
despy = desprad.*sin(theta);

% Definición de la Configuración Deformada.
% La posición final es la inicial más el vector desplazamiento.
X = x+despx;
Y = y+despy;

% Visualización de los resultados.
figure('Color','w');

% Límites comunes.
limitesejes=[-3 3 -1 3];

% Panel Superior: Geometría Original.
subplot(2,1,1)
mesh(x,y,0*x); % z=0 para vista 2D.
view(2)
axis equal
axis(limitesejes)
set(gca,'DataAspectRatio',[1 1 1]);
title('Antes de la Deformación');
set(findobj(gca,'Type','Surface'),'EdgeColor','g');

% Panel Inferior: Geometría Resultante.
subplot(2,1,2)
mesh(X,Y,0*X);
view(2)
axis equal
axis(limitesejes)
set(gca,'DataAspectRatio',[1 1 1]);
title('Después de la Deformación');
set(findobj(gca,'Type','Surface'),'EdgeColor','r');

El campo de desplazamiento impuesto provoca que los puntos en el radio interior permanezcan fijos, mientras que los puntos exteriores sufren un desplazamiento progresivo hacia afuera resultando en una expansión radial del sólido. Se puede observar con facilidad fijándonos en los ejes, en un principio el radio exterior era igual a 2 y el anillo era tangente a x=2, y=2, y=-2. Después de la deformación, podemos ver que estas líneas cortan al semianillo.

6 . Divergencia de [math]\overrightarrow{u}[/math]

La divergencia de un campo vectorial expresado en coordenadas cilíndricas puede calcularse aplicando la forma general: [math]\nabla \cdot \vec{u}= \frac{1}{\rho}\left( \frac{\partial (\rho u_{\rho})}{\partial \rho}+ \frac{\partial u_{\theta}}{\partial \theta}+ \frac{\partial (\rho u_{z})}{\partial z} \right)[/math]

En nuestro caso, el campo sobre el que se desea operar viene definido por: [math]\vec{u}=\frac{1}{5}\frac{\rho-1}{\rho}\,\vec{e}_{\rho}[/math]

Antes de evaluar la divergencia, se identifican sus componentes en la base cilíndrica:

[math]u_{\rho}=\frac{1}{5}(\rho - 1)[/math]

[math]u_{\theta}=0[/math]

[math]u_{z}=0[/math]

Sustituyendo en la expresión de la divergencia, se obtiene: [math] \nabla\cdot\vec{u} =\frac{1}{\rho}\left( \frac{\partial}{\partial\rho}\big(\rho u_{\rho}\big) \right) [/math]

El producto es: [math]\rho u_{\rho}=\frac{1}{5}(\rho^{2}-\rho)[/math]

Derivando respecto de 𝜌: [math]\frac{\partial}{\partial\rho}\left(\tfrac{1}{5}(\rho^{2}-\rho)\right)=\tfrac{1}{5}(2\rho - 1)[/math]

Por tanto, la divergencia final queda: [math] \nabla\cdot\vec{u} =\frac{1}{\rho}\cdot \frac{1}{5}(2\rho - 1) =\frac{1}{5}(3\rho - 2) [/math]

Divergencia de campo
% Discretización de variables
nr = 12;       % número de divisiones en rho
nt = 90;       % número de divisiones en theta
rho_vals = linspace(1, 2, nr);
theta_vals = linspace(0, pi, nt);

% Mallado en coordenadas polares
[R, T] = meshgrid(rho_vals, theta_vals);

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

% Divergencia del campo
DIV_u = (3.*R - 2) / 5;

% Gráfica (modificada en colores y sombreados)
figure;
surf(X, Y, DIV_u, 'EdgeColor', 'none'); % sin líneas
shading interp;                         % suavizado
colormap(turbo);                        % NUEVA paleta de colores
colorbar;

% Ajustes de vista
view(2);                                
axis equal;
title('Mapa de divergencia del campo');
xlabel('x');
ylabel('y');
axis([-3 3 -1 3]);


7 . Rotacional de [math]\overrightarrow{u}[/math]

El rotacional es una herramienta que permite identificar si un campo vectorial genera o no un efecto de giro alrededor de un punto. En otras palabras, mide la circulación local del campo. En coordenadas cilíndricas, la expresión general para el cálculo del rotacional de un campo [math]\overrightarrow{u}[/math] viene dada por el determinante:

[math] \nabla \times \vec{u} = \frac{1}{\rho} \begin{vmatrix} \vec{e}_{\rho} & \dfrac{\partial}{\partial \rho} & u_{\rho} \\ \vec{e}_{\theta} & \dfrac{\partial}{\partial \theta} & \rho\,u_{\theta} \\ \vec{e}_{z} & \dfrac{\partial}{\partial z} & u_{z} \end{vmatrix} [/math]

En este problema se analiza el campo: [math] \vec{u}=\frac{1}{5}\frac{\rho - 1}{\rho}\,\vec{e}_{\rho} [/math]

Dado que se trata de un campo puramente radial, sus componentes son:

[math]u_{\rho}=\tfrac{1}{5}(\rho-1)[/math]

[math]u_{\theta}=0[/math]

[math]u_{z}=0[/math]

Sustituyendo estas componentes en la expresión del rotacional y evaluando las derivadas correspondientes, se obtiene: [math] \nabla \times \vec{u} =\frac{1}{\rho} \begin{vmatrix} \vec{e}_{\rho} & \dfrac{\partial u_{\rho}}{\partial \rho} & u_{\rho} \\ \vec{e}_{\theta} & 0 & 0 \\ \vec{e}_{z} & 0 & 0 \end{vmatrix} = \vec{0} [/math]

El resultado es el vector nulo, lo cual indica que el campo es irrotacional. Esto implica que sus líneas de flujo no describen trayectorias circulares ni generan rotación: simplemente apuntan hacia afuera o hacia adentro siguiendo direcciones radiales.

Dado que el rotacional desaparece en todo el dominio, no es necesario realizar ninguna representación gráfica mediante Matlab.

8 . Tensor deformaciones

La parte simétrica del tensor gradiente corresponde al tensor de deformaciones, que se describe mediante la siguiente expresión:
[math]\epsilon (\vec u) = \frac{\nabla \vec u + \nabla \vec u ^ t}{2}[/math]


En un medio elástico lineal, isótropo y homogéneo, el campo de desplazamientos permite obtener el tensor de tensiones σ a través de la relación

  • [math]\sigma[/math]=[math]\lambda\nabla \cdot \overrightarrow{u}\;\mathbf{I}+2\mu\epsilon[/math]



Donde [math] \mathbf{I} [/math] es el tensor identidad en el conjunto de vectores libres del espacio [math] R^{3} [/math], y [math] \lambda [/math], [math] \mu [/math] on los coeficientes de Lamé, que dependen de las propiedades elásticas del material. Tomando [math] \lambda [/math][math]\;[/math]=[math]\;[/math][math] \mu [/math][math]\;[/math]=[math]\;[/math]1 se procede a calcular y representar las tensiones normales asociadas a los ejes [math] \overrightarrow{e_{\rho}}[/math] y el eje [math]\frac{1}{\rho}\overrightarrow{e_{\theta}}[/math]
Para obtener dichas tensiones normales es necesario realizar previamente una serie de operaciones. En primer lugar, se calculará el gradiente del campo vectorial [math]\overrightarrow{u}[/math] y su traspuesto, con lo que se podrá determinar el tensor de identidad: [math]\;[/math][math]\epsilon (\vec u) = \frac{\nabla \vec u + \nabla \vec u ^ t}{2}[/math].
Dado el Gradiente del campo [math]\overrightarrow{u}[/math]

  • [math]\overrightarrow{u}=\frac{1}{5}(\rho-1)\rho\overrightarrow{e_{\rho}}[/math]


Se va a calcular su gradiente de forma matricial: [math]\left[ \nabla\overrightarrow{u}(\rho,\theta,z) \right]=\left( \frac{\partial \overrightarrow{u}}{\partial \rho}\left| \frac{1}{\rho}\frac{\partial \overrightarrow{u}}{\partial \theta} \right| \frac{\partial \overrightarrow{u}}{\partial z}\right)[/math]

  • [math]\frac{\partial \overrightarrow{u}}{\partial \rho}=\frac{1}{5}(2\rho-1)\overrightarrow{e_{\rho}}+\frac{1}{5}(\rho-1)\rho\frac{\partial \overrightarrow{e_{\rho}}}{\partial \rho}=\frac{1}{5}(2\rho-1)\overrightarrow{e_{\rho}}[/math]


[math]\frac{\partial \overrightarrow{e_{\rho}}}{\partial \rho}=\Gamma^{k}_{11}\overrightarrow{e_{k}}=\Gamma^{1}_{11}\overrightarrow{e_{\rho}}+\Gamma^{2}_{11}\overrightarrow{e_{\theta}}+\Gamma^{3}_{11}\overrightarrow{e_{z}}=\overrightarrow{0}[/math]

  • [math]\frac{\partial \overrightarrow{u}}{\partial \theta}=\frac{1}{5}(\rho-1)\rho\frac{\partial \overrightarrow{e_{\rho}}}{\partial \theta}=\frac{1}{5}(\rho-1)\rho\overrightarrow{e_{\theta}}[/math]


[math]\Gamma^{k}_{12}\overrightarrow{e_{k}}=\Gamma^{1}_{12}\overrightarrow{e_{\rho}}+\Gamma^{2}_{12}\overrightarrow{e_{\theta}}+\Gamma^{3}_{12}\overrightarrow{e_{z}}=1\cdot \overrightarrow{e_{\theta}}[/math]

  • [math]\frac{\partial \overrightarrow{u}}{\partial z}=\frac{1}{5}(\rho-1)\rho\frac{\partial \overrightarrow{e_{\rho}}}{\partial z}=\overrightarrow{0}[/math]

En consecuencia:
[math]\left[ \nabla\overrightarrow{u}(\rho,\theta,z) \right]=\begin{pmatrix} \frac{1}{5}(2\rho-1)& 0&0 \\ 0 &\frac{1}{\rho}(\frac{1}{5}(\rho-1)\rho)&0 \\ 0 &0&0 \end{pmatrix}[/math][math]\quad[/math]=[math]\quad[/math][math]\frac{1}{5}\begin{pmatrix} 2\rho-1& 0&0 \\ 0 &\rho-1&0 \\ 0 &0&0 \end{pmatrix}[/math]

Cálculo de la matriz gradiente traspuesta

[math]\left[ \nabla\overrightarrow{u}(\rho,\theta,z) \right]^{t}=\frac{1}{5}\begin{pmatrix} 2\rho-1& 0&0 \\ 0 &\rho-1&0 \\ 0 &0&0 \end{pmatrix}[/math]


[math]\frac{\partial \overrightarrow{e_{\rho}}}{\partial z}=\Gamma^{k}_{13}\overrightarrow{e_{k}}=\Gamma^{1}_{13}\overrightarrow{e_{\rho}}+\Gamma^{2}_{13}\overrightarrow{e_{\theta}}+\Gamma^{3}_{13}\overrightarrow{e_{z}}=\overrightarrow{0}[/math]

Como se puede observar[math]\quad[/math][math]\nabla \overrightarrow{u}=\nabla \vec u ^ t[/math]. Por lo tanto, el tensor deformaciones queda definido como:[math]\quad[/math][math]\epsilon (\vec u) = \frac{\nabla \vec u + \nabla \vec u }{2}[/math]
A continuación, se procederá a calcular el tensor de deformaciones de forma matricial.

  • [math]\epsilon (\vec u)=\frac{1}{2}\left( \frac{1}{5}\begin{pmatrix} 2\rho-1&0 &0 \\ 0& \rho-1&0 \\ 0& 0&0 \end{pmatrix}+\frac{1}{5}\begin{pmatrix} 2\rho-1 &0 &0 \\ 0& \rho-1&0 \\ 0&0 &0 \end{pmatrix} \right)=\frac{1}{5}\begin{pmatrix} 2\rho-1&0 &0 \\ 0& \rho-1&0 \\ 0& 0&0 \end{pmatrix}[/math]



Conociendo [math]\epsilon (\vec u)[/math], se obtiene [math]\sigma[/math]

  • [math]\sigma=1\cdot \nabla \overrightarrow{u}\;\mathbf{I}+2\cdot 1\cdot \epsilon[/math]



  • [math]\sigma= 1\cdot\frac{1}{5}\begin{pmatrix} 2\rho-1& 0&0 \\ 0 &\rho-1&0 \\ 0 &0&0 \end{pmatrix}\cdot \begin{pmatrix} 1 &0 &0 \\ 0& 1&0 \\ 0& 0&1 \end{pmatrix}+2\cdot 1\cdot\frac{1}{5} \begin{pmatrix} 2\rho-1& 0&0 \\ 0 &\rho-1&0 \\ 0 &0&0 \end{pmatrix}[/math]=[math]\;[/math][math]\frac{3}{5}\begin{pmatrix} 2\rho-1&0 &0 \\ 0& \rho-1&0 \\ 0& 0&0 \end{pmatrix}[/math]



Finalmente, con esta información, se puede proceder al cálculo de las tensiones normales, que son los valores de la diagonal principal de la matriz tensor de tensiones o [math]\sigma[/math]

  • Tensión normal en la dirección del eje[math]\;\overrightarrow{e}_{\rho}:\overrightarrow{e}_{\rho}\cdot \sigma\cdot \overrightarrow{e}_{\rho}=\frac{3}{5}(2\rho-1)[/math]


  • Tensión normal en la dirección del eje[math]\;\frac{1}{\rho}\;\overrightarrow{e}_{\theta}:\frac{1}{\rho}\;\overrightarrow{e}_{\theta}\cdot \sigma\cdot \frac{1}{\rho}\overrightarrow{e}_{\theta}=\frac{3}{5}(\rho-1)[/math]
Campo Vectorial de Tensión Normal en la dirección del eje e
Tensor Normal Radial
% Radios interno y externo
Ri = 1;   % radio interno
Re = 2;   % radio externo

% Mallado polar
nr = 5;                % número de radios intermedios
nt = 40;               % número de ángulos
r = linspace(Ri, Re, nr);
theta = linspace(0, pi, nt);

[R, TH] = meshgrid(r, theta);

% Coordenadas cartesianas
X = R .* cos(TH);
Y = R .* sin(TH);

% Vector tangencial e_theta
U = -sin(TH);   % componente x
V =  cos(TH);   % componente y

% Figura
figure;
quiver(X, Y, U, V, 0.6, 'g', 'LineWidth', 1)

hold on;
% Dibujo del arco interno
ti = linspace(0, pi, 50);
plot(Ri*cos(ti), Ri*sin(ti), 'k:', 'LineWidth', 1.6)

title('Campo Vectorial de Tensión Normal en la dirección del eje e');
xlabel('Eje X'); ylabel('Eje Y');
axis equal; grid on;
% Radios interno y externo
Ri = 1;
Re = 2;

% Mallado polar
nr = 7;
nt = 40;
r = linspace(Ri, Re, nr);
theta = linspace(0, pi, nt);

[R, TH] = meshgrid(r, theta);

% Coordenadas cartesianas
X = R .* cos(TH);
Y = R .* sin(TH);

% Vector radial e_r
U = cos(TH);   % componente x
V = sin(TH);   % componente y

% Figura
figure;
quiver(X, Y, U, V, 0.6, 'y', 'LineWidth', 1.1)

hold on;
% Arco interno
ti = linspace(0, pi, 50);
plot(Ri*cos(ti), Ri*sin(ti), 'k:', 'LineWidth', 1.5)

title('Tensión Normal Radial');
xlabel('Eje X'); ylabel('Eje Y');
axis equal; grid on;
  1. Elemento de lista numerada

9 . Tensiones tangenciales respecto al plano perpendicular a [math]\vec{e}_{\rho}[/math]

En este apartado se calcularán las tensiones tangenciales respecto al plano ortogonal a [math]\overrightarrow{e}_{\rho}\;[/math], es decir

  • [math]\;\left | \sigma\cdot \vec e_{\rho}-(\vec e_{\rho}\cdot \sigma \cdot\vec e_{\rho}) \vec e_{\rho} \right |[/math]


Tomando como referencia los datos obtenidos en el apartado anterior:

  • [math]\sigma=[/math][math]\frac{3}{5}\begin{pmatrix} 2\rho-1&0 &0 \\ 0& \rho-1&0 \\ 0& 0&0 \end{pmatrix}[/math]


  • [math]\left(\vec e_{\rho}\cdot \sigma\cdot \vec e_{\rho}\right)=\frac{3}{5}(2\rho-1)[/math]


Se llevan a cabo las operaciones necesarias para obtener dichas tensiones tangenciales

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


Si las tensiones tangenciales respecto al plano ortogonal a [math]\overrightarrow{e}_{\rho}\;[/math] son nulas no se podrán representar.

10 . Tensiones tangenciales asociadas al plano ortogonal al vector [math] \dfrac{1}{\rho},\vec e_\theta [/math]

En este apartado se determinan las tensiones tangenciales asociadas al plano perpendicular al vector [math] \dfrac{1}{\rho},\vec e_\theta [/math].

La magnitud a evaluar es:

[math] \left\lVert \sigma \cdot \frac{1}{\rho}\vec e_\theta \;-\; \bigl( \frac{1}{\rho}\vec e_\theta \;\cdot\; \sigma \;\cdot\; \frac{1}{\rho}\vec e_\theta \bigr) \;\frac{1}{\rho}\vec e_\theta \right\rVert [/math]

El tensor de tensiones considerado es:

[math] \sigma \;=\; \frac{3}{5} \begin{pmatrix} 2\rho - 1 & 0 & 0 \\ 0 & \rho & 0 \\ 0 & 0 & 0 \end{pmatrix} [/math]

El producto doble con la dirección 1𝜌𝑒⃗𝜃ρ1eθ es:

[math] \left( \frac{1}{\rho}\vec e_\theta \cdot \sigma \cdot \frac{1}{\rho}\vec e_\theta \right) \;=\; \frac{3}{5}(\rho - 1) [/math]

Sustituyendo en la expresión general:

[math] \left\lVert \sigma\cdot\frac{1}{\rho}\vec e_\theta - \left(\frac{1}{\rho}\vec e_\theta\cdot\sigma\cdot\frac{1}{\rho}\vec e_\theta\right) \frac{1}{\rho}\vec e_\theta \right\rVert = \left\lVert \frac{3}{5} \begin{pmatrix} 2\rho - 1 \\ \rho \\ 0 \end{pmatrix} \cdot \begin{pmatrix} 0 \\ \frac{1}{\rho} \\ 0 \end{pmatrix} - \frac{3}{5}(\rho - 1) \begin{pmatrix} 0 \\ \frac{1}{\rho} \\ 0 \end{pmatrix} \right\rVert [/math]

Tras simplificar:

[math] \left\lVert \; 0\; \right\rVert = 0 [/math]

Al igual que en el apartado anterior, las tensiones tangenciales son cero, por lo que no es posible representarlas.

11 . Masa total con densidad: [math]d(\rho,\theta)=1+e^{\rho^{2}\cos\theta}[/math]

La densidad del material está descrita por la función: [math]d(\rho,\theta)=1+e^{\rho^{2}\cos\theta}[/math] donde el dominio que ocupa el arco viene dado por: [math](\rho,\theta)\in[1,2]\times[0,\pi][/math]

La expresión integral que define la masa total es: [math]M=\int_{0}^{\pi}\int_{1}^{2}\left(1+e^{\rho^{2}\cos\theta}\right)\rho\; d\rho\, d\theta[/math]

En vez de resolver esta integral analíticamente, se procederá a resolver mediante Matlab:

% Cálculo numérico de la masa del arco mediante la regla del trapecio

% Intervalos de integración
a_rho = 1;  
b_rho = 2;
a_theta = 0;
b_theta = pi;

% Número de divisiones
nR = 60;      
nT = 120;

% Tamaños de paso
dr = (b_rho - a_rho) / nR;
dt = (b_theta - a_theta) / nT;

% Vectores para rho y theta
rho_vals   = a_rho   + dr*(0:nR);
theta_vals = a_theta + dt*(0:nT);

% Generación del mallado
[RR, TT] = meshgrid(rho_vals, theta_vals);

% Densidad multiplicada por rho (Jacobiano del cambio a polares)
dens = RR .* (1 + exp(RR.^2 .* cos(TT)));

% Pesos trapecio en rho
wR = ones(1, nR+1);
wR([1 end]) = 0.5;

% Pesos trapecio en theta
wT = ones(nT+1, 1);
wT([1 end]) = 0.5;

% Integral doble mediante producto matricial
M_arc = dt * dr * (wT' * dens * wR');

% Resultado
fprintf('Masa aproximada del arco: %.6f\n', M_arc);


12 . Ejemplo ingenieril

(Breve explicación)

13 Bibliografía

  • A. Barragán, J. Sánchez. *Apuntes de Teoría de Campos*. Escuela de Ingenieros de Caminos, Canales y Puertos, UPM (2025).
  • J. M. Pérez, M. Pardo. *Métodos Matemáticos para la Ingeniería*. Ed. Pearson, 2018.
  • G. Arfken, H. Weber. *Mathematical Methods for Physicists*. Academic Press, 7th Edition, 2013.
  • F. Kreyszig. *Advanced Engineering Mathematics*. Wiley, 10th Edition, 2011.
  • M. Spiegel. *Vector Analysis (Schaum's Outline)*. McGraw-Hill, 2009.
  • OpenAI. *ChatGPT* (modelo GPT-5.1). Herramienta utilizada como apoyo para la redacción,
 revisión conceptual y generación de código. Disponible en: https://chat.openai.com