Diferencia entre revisiones de «La Clotoide (Grupo 24)»

De MateWiki
Saltar a: navegación, buscar
Línea 1: Línea 1:
Discusión:La Clotoide (Grupo 24)
+
{{ TrabajoED | La Clotoide (Grupo 25) |  [[:Categoría:Teoría de Campos|Teoría de campos]] | [[:Categoría:TC24/25|2024-25]] | Silvia Tortuero Montero, <br/>Clara Franco Reigada, <br/>Javier Nievas Molina, <br/>Rafael Eguiagaray González, <br/>Juan Rubiato Pérez. }}
1 Introducción. De forma matemática, las clotoides son curvas que, en el origen, son tangentes al eje de abscisas y tienen un radio de curvatura cuya disminución es inversamente proporcional a la distancia recorrida a lo largo de la curva. Con el objetivo de analizar sus propiedades, nos vamos a enfocar en el estudio de los vectores velocidad y aceleración, así como los tres vectores del Triedro de Frenet, para posteriormente, aplicarlo en la ingeniería civil. En los dos últimos apartados, calcularemos una helicoide cónico, así como la masa de la superficie reglada.
+
  
2 Dibujo de la curva. La expresión matemática de la clotoide es:
+
[[Categoría:TC24/25]]
 
+
γ(t)=(x(t),y(t))=(∫t0cos(s22)ds,∫t0sin(s22)ds),t∈(0,5)
+
  
 +
==Introducción.==
 +
De forma matemática, las clotoides son curvas que, en el origen, son tangentes al eje de abscisas y tienen un radio de curvatura cuya disminución es inversamente proporcional a la distancia recorrida a lo largo de la curva.
 +
<br/>
 +
Con el objetivo de analizar sus propiedades, nos vamos a enfocar en el estudio de los vectores velocidad y aceleración, así como los tres vectores del Triedro de Frenet, para posteriormente, aplicarlo en la ingeniería civil.
 +
<br/>
 +
En los dos últimos apartados, calcularemos una helicoide cónico, así como la masa de la superficie reglada.
  
 +
==Dibujo de la curva.==
 +
La expresión matemática de la clotoide es:
 +
<br>
 +
<center>
 +
<math>
 +
\gamma (t)=(x(t),y(t))=\left (  \int_{0}^{t}cos(\frac{s^2}{2})ds, \int_{0}^{t}sin(\frac{s^2}{2})ds \right ),  t\in (0,5)
 +
</math>
 +
</center>
 +
<br>
 
La representación gráfica de la curva se ha obtenido mediante el siguiente código:
 
La representación gráfica de la curva se ha obtenido mediante el siguiente código:
 +
<br>
 +
[[Archivo:hhhhhhhhhh.jpg|505px|thumb|right|Figura 1: Clotoide]]
 +
{{matlab|codigo=
 +
clear; clc; clf;
 +
% Definimos los parámetros
 +
L = 5;     
 +
n = 500; 
 +
t = linspace(0, L, n); 
  
 
Figura 1: Clotoide clear; clc; clf; % Definimos los parámetros
 
 
L = 5;     
 
n = 500; 
 
t = linspace(0, L, n); 
 
 
% Definimos los vectores para las coordenadas x y y
 
% Definimos los vectores para las coordenadas x y y
 +
x = zeros(1, n);
 +
y = zeros(1, n);
  
x = zeros(1, n);
 
y = zeros(1, n);
 
 
% Definimos las funciones
 
% Definimos las funciones
 +
f1= @(s) cos(s.^2/2);
 +
f2= @(s) sin(s.^2/2);
  
f1= @(s) cos(s.^2/2);
+
% Aproximamos la integral usando el método del rectángulo
f2= @(s) sin(s.^2/2);
+
for i = 2:n
% Aproximamos la integral usando el método del rectángulo for i = 2:n
+
    % Para x(t), sumamos la función cos(s^2 / 2) de t = 0 hasta t = t(i)
 
+
    x(i) = x(i-1) + f1(t(i-1)) * (t(i) - t(i-1));
  % Para x(t), sumamos la función cos(s^2 / 2) de t = 0 hasta t = t(i)
+
   
  x(i) = x(i-1) + f1(t(i-1)) * (t(i) - t(i-1));
+
    % Para y(t), repetimos el método usando sin(s^2 / 2)  
 
+
    y(i) = y(i-1) + f2(t(i-1))* (t(i) - t(i-1));
  % Para y(t), repetimos el método usando sin(s^2 / 2)  
+
  y(i) = y(i-1) + f2(t(i-1))* (t(i) - t(i-1));
+
 
end
 
end
  
% Representamos gráficamente la curva figure; plot(x, y); axis equal; xlabel('eje x'); ylabel('eje y'); title('Curva de la clotoide'); grid on;
+
% Representamos gráficamente la curva
 
+
figure;
 
+
plot(x, y);
3 Velocidad y aceleración. Para calcular ambos vectores, se han aplicado las siguientes fórmulas de velocidad γ˙
+
axis equal;
 
+
xlabel('eje x');
y aceleración γ¨
+
ylabel('eje y');
γ′→=cos(t22)i⃗ +sin(t22)j⃗
+
title('Curva de la clotoide');
 
+
grid on;
γ′′→=−t⋅sin(t22)i⃗ +t⋅cos(t22)j⃗
+
}}
 
+
  
 +
==Velocidad y aceleración.==
 +
Para calcular ambos vectores, se han aplicado las siguientes fórmulas de velocidad <math> \dot{\gamma } </math> y aceleración <math> \ddot{\gamma } </math>
 +
<center>
 +
<math>
 +
\vec{{\gamma }'}=cos(\frac{t^2}{2}) \vec{i}  +sin(\frac{t^2}{2})\vec{j}
 +
</math>
 +
<br>
 +
<math>
 +
\vec{{\gamma }''}= -t\cdot sin(\frac{t^2}{2}) \vec{i} +t\cdot cos(\frac{t^2}{2})\vec{j}
 +
</math>
 +
</center>
 +
<br>
 
Para representarlo, partiremos del código y gráfica del apartado anterior, añadiendo el siguiente código, y obteniendo:
 
Para representarlo, partiremos del código y gráfica del apartado anterior, añadiendo el siguiente código, y obteniendo:
 +
<br>
 +
[[Archivo:iiiiiiiii.jpg|505px|thumb|right|Figura 2: Vectores velocidad y aceleración junto a la clotoide]]
 +
{{matlab|codigo=
 +
% Calculamos las derivadas numéricas de x(t) y y(t) (velocidad)
 +
dx = cos(t.^2/2);  % Derivada primera de x(t)
 +
dy = sin(t.^2/2);  % Derivada primera de y(t)
  
 
+
% Calculamos las derivadas de las velocidades (aceleración)
Figura 2: Vectores velocidad y aceleración junto a la clotoide % Calculamos las derivadas numéricas de x(t) y y(t) (velocidad) dx = cos(t.^2/2);  % Derivada primera de x(t) dy = sin(t.^2/2);  % Derivada primera de y(t)
+
ddx = -t.*sin(t.^2/2);  % Derivada segunda de x(t)
 
+
ddy = t.*cos(t.^2/2);  % Derivada segunda de y(t)
% Calculamos las derivadas de las velocidades (aceleración) ddx = -t.*sin(t.^2/2);  % Derivada segunda de x(t) ddy = t.*cos(t.^2/2);  % Derivada segunda de y(t)
+
  
 
hold on;
 
hold on;
  
% Dibujamos los vectores de velocidad (negro) y aceleración (azul) for i = 1:5:n
+
% Dibujamos los vectores de velocidad (negro) y aceleración (azul)
 
+
for i = 1:5:n
  % Vectores de velocidad
+
    % Vectores de velocidad
  quiver(x(i), y(i), dx(i), dy(i), 0.2, 'k', 'LineWidth', 0.5, 'MaxHeadSize',1);
+
    quiver(x(i), y(i), dx(i), dy(i), 0.2, 'k', 'LineWidth', 0.5, 'MaxHeadSize',1);
 
+
   
  % Vectores de aceleración
+
    % Vectores de aceleración
  quiver(x(i), y(i), ddx(i), ddy(i), 0.025, 'b', 'LineWidth', 0.5, 'MaxHeadSize',0.5);
+
    quiver(x(i), y(i), ddx(i), ddy(i), 0.025, 'b', 'LineWidth', 0.5, 'MaxHeadSize',0.5);
 
end
 
end
  
% Etiquetas y configuración de la gráfica title('Curva, Vectores de Velocidad y Aceleración'); legend('Curva', 'Velocidad', 'Aceleración','Location','Best'); hold off; 4 Longitud de la curva.
+
% Etiquetas y configuración de la gráfica
 
+
title('Curva, Vectores de Velocidad y Aceleración');
 +
legend('Curva', 'Velocidad', 'Aceleración','Location','Best');
 +
hold off;
 +
}}
 +
==Longitud de la curva.==
 +
<br>
 
La longitud de la curva viene dada por la siguiente expresión:
 
La longitud de la curva viene dada por la siguiente expresión:
 
+
<br>
L(γ′(t))=∫t0|γ′(t)|dt
+
<center><math> L(γ'(t))=\int_{0}^{t}|γ'(t)|dt </math></center>
 
+
<br>
 
Como se ha plasmado en el apartado anterior:
 
Como se ha plasmado en el apartado anterior:
 
+
<center><math>
γ′→=cos(t22)i⃗ +sin(t22)j⃗
+
\vec{{\gamma }'}= cos(\frac{t^2}{2}) \vec{i} +sin(\frac{t^2}{2})\vec{j}
 
+
</math></center>
 +
<br>
 
Cuyo módulo es:
 
Cuyo módulo es:
 
+
<center><math>
|γ'(t)|=cos2(t22)+sin2(t22)−−−−−−−−−−−−−−−−√=1–√=1
+
|γ′(t)| = \sqrt {cos^2(\frac{t^2}{2})+sin^2(\frac{t^2}{2})} = \sqrt {1} = 1
 
+
</math></center>
 +
<br>
 
Por tanto la longitud es:
 
Por tanto la longitud es:
 
+
<br>
L(γ)=∫50cos2(t22)+sin2(t22)−−−−−−−−−−−−−−−−√dt=∫501dt=5−0=5
+
<center><math>
 
+
L(γ) = \int_{0}^{5}\sqrt {cos^2(\frac{t^2}{2})+sin^2(\frac{t^2}{2})}dt = \int_{0}^{5}1dt = 5-0 = 5
 
+
</math></center>
5 Vectores tangente y normal. Los vectores tangente y normal de la clotoide vienen dadas por:
+
<br>
 
+
==Vectores tangente y normal.==
t⃗ (t)=γ′(t)|γ′(t)|=cos(t22)i⃗ +sin(t22)j⃗ 1
+
Los vectores tangente y normal de la clotoide vienen dadas por:
 
+
<center>
 
+
<math>\vec{t}(t)=\frac{\gamma {}'(t)}{\left | \gamma {}'(t) \right |}=\frac{cos(\frac{t^2}{2})\vec{i}+sin(\frac{t^2}{2})\vec{j}}{1}
n⃗ (t)=γ′(t)×γ′′(t)|γ′(t)×γ′′(t)|×cos(t22)i⃗ +sin(t22)j⃗ 1=−sin(t22)i⃗ +cos(t22)j⃗
+
</math></center>
 
+
<br/>
 +
<center>
 +
<math>\vec{n}(t)={\frac{\gamma'(t) \times \gamma''(t)}{|\gamma'(t) \times \gamma''(t)|}}\times{\frac{cos(\frac{t^2}{2})\vec{i}+sin(\frac{t^2}{2})\vec{j}}{1}}= {-sin(\frac{t^2}{2})\vec{i} + cos(\frac{t^2}{2})\vec{j}}
 +
</math></center>
 +
<br>
 
Para representarlo, partiremos del código y gráfica del apartado anterior, añadiendo el siguiente código, y obteniendo:
 
Para representarlo, partiremos del código y gráfica del apartado anterior, añadiendo el siguiente código, y obteniendo:
 +
[[Archivo:jjjjjjjjj.jpg|505px|thumb|right|Figura 3: Vectores tangente y normal junto a la clotoide]]
 +
{{matlab|codigo=
  
 +
% Calculamos los vectores tangente x(t) e y(t)
 +
tx = cos(t.^2/2);
 +
ty = sin(t.^2/2); 
  
Figura 3: Vectores tangente y normal junto a la clotoide % Calculamos los vectores tangente x(t) e y(t) tx = cos(t.^2/2); ty = sin(t.^2/2);
+
% Calculamos los vectores normal x(t) e y(t)
 
+
nx = -sin(t.^2/2);  
% Calculamos los vectores normal x(t) e y(t) nx = -sin(t.^2/2); ny = cos(t.^2/2);
+
ny = cos(t.^2/2);
  
 
hold on;
 
hold on;
  
% Dibujamos los vector tangente (negro) y normal (azul) for i = 1:5:n
+
% Dibujamos los vector tangente (negro) y normal (azul)
 
+
for i = 1:5:n
  % Vector tangente
+
    % Vector tangente
  quiver(x(i), y(i), tx(i), ty(i), 0.2, 'k', 'LineWidth', 0.5, 'MaxHeadSize',1);
+
    quiver(x(i), y(i), tx(i), ty(i), 0.2, 'k', 'LineWidth', 0.5, 'MaxHeadSize',1);
 
+
   
  % Vector normal
+
    % Vector normal
  quiver(x(i), y(i), nx(i), ny(i), 0.1, 'b', 'LineWidth', 0.5, 'MaxHeadSize',0.5);
+
    quiver(x(i), y(i), nx(i), ny(i), 0.1, 'b', 'LineWidth', 0.5, 'MaxHeadSize',0.5);
 
end
 
end
  
% Etiquetas y configuración de la gráfica title('Curva, Vectores tangente y normal'); legend('Curva', 'Tangente', 'Normal','Location','Best'); hold off; 6 Curvatura k(t). La curvatura se calcula con la siguiente fórmula:
+
% Etiquetas y configuración de la gráfica
 
+
title('Curva, Vectores tangente y normal');
k(t)=|γ′(t)×γ′′(t)||γ′(t)|3=∣∣(cos(t22)i⃗ +sin(t22)j⃗ )×(−tsin(t22)i⃗ +tcos(t22)j⃗ )∣∣∣∣cos(t22)i⃗ +sin(t22)j⃗ ∣∣3=t
+
legend('Curva', 'Tangente', 'Normal','Location','Best');
 
+
hold off;
 +
}}
 +
==Curvatura k(t).==
 +
La curvatura se calcula con la siguiente fórmula:
 +
<center>
 +
<math>
 +
k(t)=\frac{|\gamma'(t) \times \gamma''(t)|}{|\gamma'(t)|^3}=\frac{\left| \left( \cos\left(\frac{t^2}{2}\right) \vec{i} + \sin\left(\frac{t^2}{2}\right) \vec{j} \right) \times \left( -t \sin\left(\frac{t^2}{2}\right) \vec{i} + t \cos\left(\frac{t^2}{2}\right) \vec{j} \right) \right|}{\left| \cos\left(\frac{t^2}{2}\right) \vec{i} + \sin\left(\frac{t^2}{2}\right) \vec{j} \right|^3} = t
 +
</math></center>
 +
<br>
 
La gráfica de la curvatura se calcula mediante el siguiente código de Matlab
 
La gráfica de la curvatura se calcula mediante el siguiente código de Matlab
 
+
[[Archivo:kkkkkkkk.jpg|505px|thumb|right|Figura 4: Curvatura]]
 
+
{{matlab|codigo=
Figura 4: Curvatura % Definimos el parámetro t
+
% Definimos el parámetro t
 
+
t=linspace(0,5,50);
t=linspace(0,5,50);
+
 
% Definimos la curvatura k(t)
 
% Definimos la curvatura k(t)
 
+
k=t;
k=t;
+
 
% Representamos la gráfica de la curvatura
 
% Representamos la gráfica de la curvatura
 
+
figure;
figure;
+
plot(k,t);
plot(k,t);
+
title('Curvatura');
title('Curvatura');
+
xlabel('Eje x');
xlabel('Eje x');
+
ylabel('Eje y');
ylabel('Eje y');
+
}}
 
+
<br>
 
+
<br>
 
+
<br>
 
+
<br>
 
+
<br>
 
+
<br>
 
+
<br>
 
+
<br>
 
+
<br>
7 Circunferencia osculatriz. La circunferencia osculatriz es una aproximación local de la curva en cada punto de esta, es decir, la circunferencia tiene la misma tangente, curvatura y centro de curvatura que la curva en cada punto. Dada esta definición y dado P= γ(2) , es decir, t=2, el radio de la circunferencia osculatriz y su centro son:
+
==Circunferencia osculatriz.==
 
+
La circunferencia osculatriz es una aproximación local de la curva en cada punto de esta, es decir, la circunferencia tiene la misma tangente, curvatura y centro de curvatura que la curva en cada punto.
R(t)=(t)
+
<br>
 
+
Dada esta definición y dado P= <math> \gamma (2) </math>, es decir, t=2, el radio de la circunferencia osculatriz y su centro son:
Q(t)=γ(t)+(t)(t)
+
<br>
 
+
<center>
 
+
<math>R(t)=\frac{1}{\kappa(t)}</math>
 
+
</center>
 +
<center>
 +
<math>Q(t)=\gamma (t)+\frac{1}{\kappa (t)}\bar{n}(t)</math>
 +
</center>
 +
<br>
 +
<br>
 
Realizando las operaciones correspondientes, tenemos:
 
Realizando las operaciones correspondientes, tenemos:
 +
<center>
 +
<math>R(2)=\frac{1}{2}</math>
 +
</center>
 +
<center>
 +
<math>Q(2) = \left\{\begin{matrix}
 +
Q_x(2)=\int_{0}^{2}cos(\frac{s^2}{2})ds - (\frac{sin(2)}{2})\\\
  
R(2)=12
+
Q_y(2)=\int_{0}^{2}sin(\frac{s^2}{2})ds + (\frac{cos(2)}{2})
 
+
Q(2)=⎧⎩⎨Qx(2)=∫20cos(s22)ds−(sin(2)2) Qy(2)=∫20sin(s22)ds+(cos(2)2)
+
  
 +
\end{matrix}\right.</math></center>
 +
<br>
 
Con el centro recientemente calculado, se realiza el gráfico, añadiendo el siguiente código, al anterior de la clotoide, y por tanto, obteniendo la circunferencia osculatriz:
 
Con el centro recientemente calculado, se realiza el gráfico, añadiendo el siguiente código, al anterior de la clotoide, y por tanto, obteniendo la circunferencia osculatriz:
 +
[[Archivo:osculatriz4444.jpg|505px|thumb|right|Figura 5: Circunferencia osculatriz y la curva]]
 +
{{matlab|codigo=
 +
%Calculamos las integrales de la curva para t=2
 +
X1=integral(f1,0,2);
 +
Y1=integral(f2,0,2);
  
 +
%Definimos el centro de la circunferencia
 +
Qx=X1-(sin(2))/2;
 +
Qy=Y1+(cos(2))/2;
 +
theta=linspace(0,2*pi,n);
  
Figura 5: Circunferencia osculatriz y la curva %Calculamos las integrales de la curva para t=2 X1=integral(f1,0,2); Y1=integral(f2,0,2);
+
%Calculamos el radio de la circunferenica (es constante al ser k=t=2) como el radio es igual a 1/k(t):
 +
R=1/2;
  
%Definimos el centro de la circunferencia Qx=X1-(sin(2))/2; Qy=Y1+(cos(2))/2; theta=linspace(0,2*pi,n);
+
%Definimos la parametrización de la circunferencia, C(t):
 +
Cx=Qx+R.*cos(theta);
 +
Cy=Qy+R.*sin(theta);
  
%Calculamos el radio de la circunferenica (es constante al ser k=t=2) como el radio es igual a 1/k(t): R=1/2;
+
%Representamos la curva junto a la circunferencia osculatriz:
 
+
hold on
%Definimos la parametrización de la circunferencia, C(t): Cx=Qx+R.*cos(theta); Cy=Qy+R.*sin(theta);
+
plot(x,y,'r')
 
+
plot(Cx,Cy,'b')
%Representamos la curva junto a la circunferencia osculatriz: hold on plot(x,y,'r') plot(Cx,Cy,'b') title('Curva y circunferencia osculatriz') axis equal xlabel('Eje x') ylabel('Eje y') hold off 8 Propiedades para la ingeniería. La clotoide describe un fenómeno de transición suave entre una trayectoria recta y una curva circular, ya que, como se ha expuesto anteriormente, su curvatura crece de forma lineal. Conociendo esto, en el punto de inicio, el radio de curvatura es infinito, y a medida que avanza, el radio disminuye hasta tomar un valor finito, estableciendo una curvatura más definida.
+
title('Curva y circunferencia osculatriz')
 +
axis equal
 +
xlabel('Eje x')
 +
ylabel('Eje y')
 +
hold off
 +
}}
 +
==Propiedades para la ingeniería.==
 +
La clotoide describe un fenómeno de transición suave entre una trayectoria recta y una curva circular, ya que, como se ha expuesto anteriormente, su curvatura crece de forma lineal. Conociendo esto, en el punto de inicio, el radio de curvatura es infinito, y a medida que avanza, el radio disminuye hasta tomar un valor finito, estableciendo una curvatura más definida.
  
 
Su principal aplicación en la ingeniería es el diseño de carreteras y ferrocarriles en el que la clotoide se usa para suavizar la transición entre un tramo recto y una curva circular. Esta transición es crucial, ya que evita cambios abruptos en la aceleración centrípeta y la ajusta gradualmente. Sin una transición suave, se podría generar incomodidad o incluso peligro para los vehículos y pasajeros ya que se enfrentarían a un aumento agresivo de las fuerzas centrípetas, lo que puede afectar a la estabilidad.
 
Su principal aplicación en la ingeniería es el diseño de carreteras y ferrocarriles en el que la clotoide se usa para suavizar la transición entre un tramo recto y una curva circular. Esta transición es crucial, ya que evita cambios abruptos en la aceleración centrípeta y la ajusta gradualmente. Sin una transición suave, se podría generar incomodidad o incluso peligro para los vehículos y pasajeros ya que se enfrentarían a un aumento agresivo de las fuerzas centrípetas, lo que puede afectar a la estabilidad.
Línea 165: Línea 247:
 
Las propiedades de la clotoide ofrecen otras aplicaciones como ayudar a mantener un flujo de agua estable, diseñar rutas de entrada y salida para embarcaciones en los puertos e incluso para construir montañas rusas.
 
Las propiedades de la clotoide ofrecen otras aplicaciones como ayudar a mantener un flujo de agua estable, diseñar rutas de entrada y salida para embarcaciones en los puertos e incluso para construir montañas rusas.
  
9 Ejemplos en Ingeniería Civil.
+
==Ejemplos en Ingeniería Civil.==
 +
[[Archivo:clotoide11.jpg|600px|miniaturadeimagen|izquierda|'''Curva circuito Silverstone''' <br />]]
 +
[[Archivo:clotoide33.jpeg|600px|miniaturadeimagen|centro|'''Puente Vasco da Gama (Portugal)''' <br />]]
 +
<br />
 +
[[Archivo:clotoide44.jpg|600px|miniaturadeimagen|izquierda|'''Autopista del Sol (México)''' <br />]]
 +
[[Archivo:clotoide66.jpg|600px|miniaturadeimagen|centro|'''Viaducto de Brusio (Suiza)''' <br />]]
 +
<br>
  
Curva circuito Silverstone
+
==Superficie Reglada.==
 +
Se considera la helice cónica cuya parametrización es:
  
Puente Vasco da Gama (Portugal)
+
<center> <math> \gamma (t)=(x_{1}(t),x_{2}(t),x_{3}(t))=(tcos(t),tsin(t),t), t∈(2π,6π) </math> </center>
 +
Para dibujar dicha superficie reglada asociada a la curva mediantes segmentos ortogonales de longitud 1 y vector <math>\bar{e}_p </math>, se hace lo siguiente:
 +
<br>
 +
1) Se parametriza la curva segun v:
 +
<br>
 +
<center><math> \gamma (v)=(x_{1}(v),x_{2}(v),x_{3}(v))=(vcos(v),vsin(v),v), v∈(2π,6π) </math></center>
 +
<br>
 +
2)Usar una matriz de cambio de base para pasar el vector <math>\vec{e_{\rho}} </math> de cilíndricas a cartesianas:
 +
<br/>
 +
<br/>
 +
<center>
 +
\begin{pmatrix}v_1\\v_2 \\v_3 \end{pmatrix}=
 +
\begin{pmatrix}cost & -sint &0 \\ sint & cost & 0\\ 0 & 0 & 1\end{pmatrix}
 +
\begin{pmatrix}1\\0\\0\end{pmatrix}=
 +
\begin{pmatrix}cost\\ sint\\0 \end{pmatrix}
 +
</center>
 +
<br/>
 +
<br/>
 +
Por lo tanto <math>\vec{w}(v) = cosv \overline{i} + sinv\overline{j} </math>
  
 +
3) Sustituir todos los valores en la formula <math> \phi (u,v)= \gamma(v) + u\cdot \bar{w}(v) </math> :
  
 
+
<center><math>\phi (u,v)= (vcosv+u\cdot cosv) \overline{i} + (vsinv+ u\cdot sinv) \overline{j} + v \overline{k} </math></center>
Autopista del Sol (México)
+
<br/>
 
+
Viaducto de Brusio (Suiza)
+
 
+
 
+
10 Superficie Reglada. Se considera la helice cónica cuya parametrización es:
+
 
+
γ(t)=(x1(t),x2(t),x3(t))=(tcos(t),tsin(t),t),t∈(2π,6π) Para dibujar dicha superficie reglada asociada a la curva mediantes segmentos ortogonales de longitud 1 y vector e¯p , se hace lo siguiente: 1) Se parametriza la curva segun v:
+
 
+
γ(v)=(x1(v),x2(v),x3(v))=(vcos(v),vsin(v),v),v∈(2π,6π)
+
 
+
2)Usar una matriz de cambio de base para pasar el vector eρ→
+
 
+
de cilíndricas a cartesianas:
+
 
+
⎛⎝⎜v1v2v3⎞⎠⎟ = ⎛⎝⎜costsint0−sintcost0001⎞⎠⎟
+
 
+
⎛⎝⎜100⎞⎠⎟
+
= ⎛⎝⎜costsint0⎞⎠⎟
+
 
+
 
+
 
+
Por lo tanto w⃗ (v)=cosvi¯+sinvj¯
+
 
+
3) Sustituir todos los valores en la formula ϕ(u,v)=γ(v)+u⋅w¯(v)
+
 
+
:
+
ϕ(u,v)=(vcosv+u⋅cosv)i¯+(vsinv+u⋅sinv)+vk¯¯¯
+
 
+
 
Para representar la hélice cónica hemos usado el siguiente código de Matlab:
 
Para representar la hélice cónica hemos usado el siguiente código de Matlab:
 
+
[[Archivo:helicoide999999.jpg|505px|thumb|right|Figura 6: Hélicoide cónica]]
 
+
{{matlab|codigo=
Figura 6: Hélicoide cónica clear; clc; clf; %Definimos los parámetros u=(0:0.01:1); v=(2.*pi:0.01:6.*pi); [MU,MV]=meshgrid(u,v);
+
clear; clc; clf;
 +
%Definimos los parámetros
 +
u=(0:0.01:1);
 +
v=(2.*pi:0.01:6.*pi);
 +
[MU,MV]=meshgrid(u,v);
  
 
%Definimos la superficie reglada en coordenadas cilíndricas
 
%Definimos la superficie reglada en coordenadas cilíndricas
 +
r=MV+MU;
 +
th=MV;
 +
z=MV;
  
r=MV+MU;
+
%Transformamos las coordenadas en cartesianas
th=MV;
+
x=r.*cos(th);
z=MV;
+
y=r.*sin(th);
%Transformamos las coordenadas en cartesianas x=r.*cos(th); y=r.*sin(th); z=z;
+
z=z;
 
+
%Dibujamos la superficie en una gráfica surf(x,y,z); title('Helicoide cónico'); shading flat;
+
 
+
  
 +
%Dibujamos la superficie en una gráfica
 +
surf(x,y,z);
 +
title('Helicoide cónico');
 +
shading flat;
 +
}}
 +
<br>
 +
<br>
 
A continuación, se muestran una serie de aplicaciones en el mundo real:
 
A continuación, se muestran una serie de aplicaciones en el mundo real:
  
 +
[[Archivo:helicoide33.jpg|600px|miniaturadeimagen|izquierda|'''Torre espiral (Dinamarca)''' <br />]]
 +
[[Archivo:helicoide44.jpg|600px|miniaturadeimagen|centro|'''Helicoide de Caracas (Venezuela)''' <br />]]
 +
<br>
  
Torre espiral (Dinamarca)
+
==Masa de la superficie reglada.==
 
+
Dada la función de densidad <math> f(x_1,x_2,x_3)=100-x_1^2-x_2^2</math>, para calcular la masa usaremos la expresión
Helicoide de Caracas (Venezuela)
+
<center><math> Masa=\iint_{S}^{}fds=\iint_{D}^{}f(\phi(u,v))\cdot \left | \phi '_u\times\phi '_v \right |dudv</math></center>
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
  
 +
Primero calculamos las derivadas de <math>\phi'_u </math> y <math>\phi'_v </math>
 +
<center><math>
 +
\phi'_u = cosv \overline{i} + sinv \overline {j}</math></center>
 +
<center><math>
 +
\phi'_v = (cosv-vsinv-usinv) \overline{i} + (sinv+vcosv+ucosv) \overline {j} +\overline{k}
 +
</math></center>
 +
Posteriormente se calcula su producto vectorial para introducirlo en la matriz
 +
<center><math>
 +
\phi '_u\times\phi '_v  = sinv \overline{i} - cosv \overline{j} + (u+v)\overline{k}
 +
</math></center>
 +
Cuyo módulo es:
 +
<center><math>
 +
|\phi '_u\times\phi '_v | = \sqrt{1+(u+v)^2}
 +
</math></center>
  
 +
A continuacion se calcula <math> f(\phi(u,v))</math>
 +
<center><math>
 +
f(\phi(u,v))= 100-v^2 - u^2 -2uv
 +
</math></center>
 +
Finalmente, sustituimos los valores obtenidos en la integral doble para calcular la masa
 +
<center><math>
 +
Masa=\int_{2\pi}^{6\pi}\int_{0}^{1} (100-u^2 - v^2 -2uv) \cdot \sqrt{1+(u+v)^2} du dv =1540,2174
 +
</math></center>
  
 +
Para calcular la integral, hemos usado el siguiente código de matlab:
 +
{{matlab|codigo=
 +
clear; clc;
 +
% Definimos los extremos de los intervalos y el número de puntos
 +
n=100;
 +
h1=(1-0)/n; h2=(6*pi-2*pi)/n;
 +
u=0:h1:1; v=2*pi:h2:6*pi;
 +
% Definimos el mallado
 +
[uu,vv]=meshgrid(u,v);
  
 +
% Definimos el área de cada subrectángulo y usamos el método del prisma
 +
area=2*2/(n^2);
 +
v_acumulado=0;
 +
for i=1:n
 +
    for j=1:n
 +
        alt=(100*ones(n+1,1)-(uu).^2-(vv).^2-2*uu.*vv).*(sqrt(1+(uu+vv).^2));
 +
        v_prisma=area*alt;
 +
        v_acumulado=v_acumulado+v_prisma;
 +
    end
 +
end
 +
int=v_acumulado;
  
[[Categoría:Teoría de Campos]]
+
fprintf ('Para n=%d, el resultado de la integral es: %.4f.\n',n,int)
[[Categoría:TC25/26]]
+
}}

Revisión del 17:13 25 nov 2025

Trabajo realizado por estudiantes
Título La Clotoide (Grupo 25)
Asignatura Teoría de campos
Curso 2024-25
Autores Silvia Tortuero Montero,
Clara Franco Reigada,
Javier Nievas Molina,
Rafael Eguiagaray González,
Juan Rubiato Pérez.
Este artículo ha sido escrito por estudiantes como parte de su evaluación en la asignatura

1 Introducción.

De forma matemática, las clotoides son curvas que, en el origen, son tangentes al eje de abscisas y tienen un radio de curvatura cuya disminución es inversamente proporcional a la distancia recorrida a lo largo de la curva.
Con el objetivo de analizar sus propiedades, nos vamos a enfocar en el estudio de los vectores velocidad y aceleración, así como los tres vectores del Triedro de Frenet, para posteriormente, aplicarlo en la ingeniería civil.
En los dos últimos apartados, calcularemos una helicoide cónico, así como la masa de la superficie reglada.

2 Dibujo de la curva.

La expresión matemática de la clotoide es:

[math] \gamma (t)=(x(t),y(t))=\left ( \int_{0}^{t}cos(\frac{s^2}{2})ds, \int_{0}^{t}sin(\frac{s^2}{2})ds \right ), t\in (0,5) [/math]


La representación gráfica de la curva se ha obtenido mediante el siguiente código:

Figura 1: Clotoide
clear; clc; clf;
% Definimos los parámetros
 L = 5;       
 n = 500;  
 t = linspace(0, L, n);  

% Definimos los vectores para las coordenadas x y y
 x = zeros(1, n);
 y = zeros(1, n);

% Definimos las funciones
 f1= @(s) cos(s.^2/2);
 f2= @(s) sin(s.^2/2);

% Aproximamos la integral usando el método del rectángulo
for i = 2:n
    % Para x(t), sumamos la función cos(s^2 / 2) de t = 0 hasta t = t(i)
    x(i) = x(i-1) + f1(t(i-1)) * (t(i) - t(i-1));
    
    % Para y(t), repetimos el método usando sin(s^2 / 2) 
    y(i) = y(i-1) + f2(t(i-1))* (t(i) - t(i-1));
end

% Representamos gráficamente la curva
figure;
plot(x, y);
axis equal;
xlabel('eje x');
ylabel('eje y');
title('Curva de la clotoide');
grid on;


3 Velocidad y aceleración.

Para calcular ambos vectores, se han aplicado las siguientes fórmulas de velocidad [math] \dot{\gamma } [/math] y aceleración [math] \ddot{\gamma } [/math]

[math] \vec{{\gamma }'}=cos(\frac{t^2}{2}) \vec{i} +sin(\frac{t^2}{2})\vec{j} [/math]
[math] \vec{{\gamma }''}= -t\cdot sin(\frac{t^2}{2}) \vec{i} +t\cdot cos(\frac{t^2}{2})\vec{j} [/math]


Para representarlo, partiremos del código y gráfica del apartado anterior, añadiendo el siguiente código, y obteniendo:

Figura 2: Vectores velocidad y aceleración junto a la clotoide
% Calculamos las derivadas numéricas de x(t) y y(t) (velocidad)
dx = cos(t.^2/2);  % Derivada primera de x(t)
dy = sin(t.^2/2);  % Derivada primera de y(t)

% Calculamos las derivadas de las velocidades (aceleración)
ddx = -t.*sin(t.^2/2);  % Derivada segunda de x(t)
ddy = t.*cos(t.^2/2);  % Derivada segunda de y(t)

hold on;

% Dibujamos los vectores de velocidad (negro) y aceleración (azul)
for i = 1:5:n  
    % Vectores de velocidad
    quiver(x(i), y(i), dx(i), dy(i), 0.2, 'k', 'LineWidth', 0.5, 'MaxHeadSize',1);
    
    % Vectores de aceleración
    quiver(x(i), y(i), ddx(i), ddy(i), 0.025, 'b', 'LineWidth', 0.5, 'MaxHeadSize',0.5);
end

% Etiquetas y configuración de la gráfica
title('Curva, Vectores de Velocidad y Aceleración');
legend('Curva', 'Velocidad', 'Aceleración','Location','Best');
hold off;

4 Longitud de la curva.


La longitud de la curva viene dada por la siguiente expresión:

[math] L(γ'(t))=\int_{0}^{t}|γ'(t)|dt [/math]


Como se ha plasmado en el apartado anterior:

[math] \vec{{\gamma }'}= cos(\frac{t^2}{2}) \vec{i} +sin(\frac{t^2}{2})\vec{j} [/math]


Cuyo módulo es:

[math] |γ′(t)| = \sqrt {cos^2(\frac{t^2}{2})+sin^2(\frac{t^2}{2})} = \sqrt {1} = 1 [/math]


Por tanto la longitud es:

[math] L(γ) = \int_{0}^{5}\sqrt {cos^2(\frac{t^2}{2})+sin^2(\frac{t^2}{2})}dt = \int_{0}^{5}1dt = 5-0 = 5 [/math]


5 Vectores tangente y normal.

Los vectores tangente y normal de la clotoide vienen dadas por:

[math]\vec{t}(t)=\frac{\gamma {}'(t)}{\left | \gamma {}'(t) \right |}=\frac{cos(\frac{t^2}{2})\vec{i}+sin(\frac{t^2}{2})\vec{j}}{1} [/math]


[math]\vec{n}(t)={\frac{\gamma'(t) \times \gamma''(t)}{|\gamma'(t) \times \gamma''(t)|}}\times{\frac{cos(\frac{t^2}{2})\vec{i}+sin(\frac{t^2}{2})\vec{j}}{1}}= {-sin(\frac{t^2}{2})\vec{i} + cos(\frac{t^2}{2})\vec{j}} [/math]


Para representarlo, partiremos del código y gráfica del apartado anterior, añadiendo el siguiente código, y obteniendo:

Figura 3: Vectores tangente y normal junto a la clotoide
% Calculamos los vectores tangente x(t) e y(t) 
tx = cos(t.^2/2); 
ty = sin(t.^2/2);  

% Calculamos los vectores normal x(t) e y(t)
nx = -sin(t.^2/2); 
ny = cos(t.^2/2);  

hold on;

% Dibujamos los vector tangente (negro) y normal (azul)
for i = 1:5:n  
    % Vector tangente
    quiver(x(i), y(i), tx(i), ty(i), 0.2, 'k', 'LineWidth', 0.5, 'MaxHeadSize',1);
    
    % Vector normal
    quiver(x(i), y(i), nx(i), ny(i), 0.1, 'b', 'LineWidth', 0.5, 'MaxHeadSize',0.5);
end

% Etiquetas y configuración de la gráfica
title('Curva, Vectores tangente y normal');
legend('Curva', 'Tangente', 'Normal','Location','Best');
hold off;

6 Curvatura k(t).

La curvatura se calcula con la siguiente fórmula:

[math] k(t)=\frac{|\gamma'(t) \times \gamma''(t)|}{|\gamma'(t)|^3}=\frac{\left| \left( \cos\left(\frac{t^2}{2}\right) \vec{i} + \sin\left(\frac{t^2}{2}\right) \vec{j} \right) \times \left( -t \sin\left(\frac{t^2}{2}\right) \vec{i} + t \cos\left(\frac{t^2}{2}\right) \vec{j} \right) \right|}{\left| \cos\left(\frac{t^2}{2}\right) \vec{i} + \sin\left(\frac{t^2}{2}\right) \vec{j} \right|^3} = t [/math]


La gráfica de la curvatura se calcula mediante el siguiente código de Matlab

Figura 4: Curvatura
% Definimos el parámetro t
 t=linspace(0,5,50);
% Definimos la curvatura k(t)
 k=t;
% Representamos la gráfica de la curvatura
 figure;
 plot(k,t);
 title('Curvatura');
 xlabel('Eje x');
 ylabel('Eje y');










7 Circunferencia osculatriz.

La circunferencia osculatriz es una aproximación local de la curva en cada punto de esta, es decir, la circunferencia tiene la misma tangente, curvatura y centro de curvatura que la curva en cada punto.
Dada esta definición y dado P= [math] \gamma (2) [/math], es decir, t=2, el radio de la circunferencia osculatriz y su centro son:

[math]R(t)=\frac{1}{\kappa(t)}[/math]

[math]Q(t)=\gamma (t)+\frac{1}{\kappa (t)}\bar{n}(t)[/math]



Realizando las operaciones correspondientes, tenemos:

[math]R(2)=\frac{1}{2}[/math]

[math]Q(2) = \left\{\begin{matrix} Q_x(2)=\int_{0}^{2}cos(\frac{s^2}{2})ds - (\frac{sin(2)}{2})\\\ Q_y(2)=\int_{0}^{2}sin(\frac{s^2}{2})ds + (\frac{cos(2)}{2}) \end{matrix}\right.[/math]


Con el centro recientemente calculado, se realiza el gráfico, añadiendo el siguiente código, al anterior de la clotoide, y por tanto, obteniendo la circunferencia osculatriz:

Figura 5: Circunferencia osculatriz y la curva
%Calculamos las integrales de la curva para t=2
X1=integral(f1,0,2);
Y1=integral(f2,0,2);

%Definimos el centro de la circunferencia
Qx=X1-(sin(2))/2;
Qy=Y1+(cos(2))/2;
theta=linspace(0,2*pi,n);

%Calculamos el radio de la circunferenica (es constante al ser k=t=2) como el radio es igual a 1/k(t):
R=1/2;

%Definimos la parametrización de la circunferencia, C(t):
Cx=Qx+R.*cos(theta);
Cy=Qy+R.*sin(theta);

%Representamos la curva junto a la circunferencia osculatriz:
hold on
plot(x,y,'r')
plot(Cx,Cy,'b')
title('Curva y circunferencia osculatriz')
axis equal
xlabel('Eje x')
ylabel('Eje y')
hold off

8 Propiedades para la ingeniería.

La clotoide describe un fenómeno de transición suave entre una trayectoria recta y una curva circular, ya que, como se ha expuesto anteriormente, su curvatura crece de forma lineal. Conociendo esto, en el punto de inicio, el radio de curvatura es infinito, y a medida que avanza, el radio disminuye hasta tomar un valor finito, estableciendo una curvatura más definida.

Su principal aplicación en la ingeniería es el diseño de carreteras y ferrocarriles en el que la clotoide se usa para suavizar la transición entre un tramo recto y una curva circular. Esta transición es crucial, ya que evita cambios abruptos en la aceleración centrípeta y la ajusta gradualmente. Sin una transición suave, se podría generar incomodidad o incluso peligro para los vehículos y pasajeros ya que se enfrentarían a un aumento agresivo de las fuerzas centrípetas, lo que puede afectar a la estabilidad.

Las propiedades de la clotoide ofrecen otras aplicaciones como ayudar a mantener un flujo de agua estable, diseñar rutas de entrada y salida para embarcaciones en los puertos e incluso para construir montañas rusas.

9 Ejemplos en Ingeniería Civil.

Curva circuito Silverstone
Puente Vasco da Gama (Portugal)


Autopista del Sol (México)
Viaducto de Brusio (Suiza)


10 Superficie Reglada.

Se considera la helice cónica cuya parametrización es:

[math] \gamma (t)=(x_{1}(t),x_{2}(t),x_{3}(t))=(tcos(t),tsin(t),t), t∈(2π,6π) [/math]

Para dibujar dicha superficie reglada asociada a la curva mediantes segmentos ortogonales de longitud 1 y vector [math]\bar{e}_p [/math], se hace lo siguiente:
1) Se parametriza la curva segun v:

[math] \gamma (v)=(x_{1}(v),x_{2}(v),x_{3}(v))=(vcos(v),vsin(v),v), v∈(2π,6π) [/math]


2)Usar una matriz de cambio de base para pasar el vector [math]\vec{e_{\rho}} [/math] de cilíndricas a cartesianas:

\begin{pmatrix}v_1\\v_2 \\v_3 \end{pmatrix}= \begin{pmatrix}cost & -sint &0 \\ sint & cost & 0\\ 0 & 0 & 1\end{pmatrix} \begin{pmatrix}1\\0\\0\end{pmatrix}= \begin{pmatrix}cost\\ sint\\0 \end{pmatrix}



Por lo tanto [math]\vec{w}(v) = cosv \overline{i} + sinv\overline{j} [/math]

3) Sustituir todos los valores en la formula [math] \phi (u,v)= \gamma(v) + u\cdot \bar{w}(v) [/math] :

[math]\phi (u,v)= (vcosv+u\cdot cosv) \overline{i} + (vsinv+ u\cdot sinv) \overline{j} + v \overline{k} [/math]


Para representar la hélice cónica hemos usado el siguiente código de Matlab:

Figura 6: Hélicoide cónica
clear; clc; clf;
%Definimos los parámetros
u=(0:0.01:1);
v=(2.*pi:0.01:6.*pi);
[MU,MV]=meshgrid(u,v);

%Definimos la superficie reglada en coordenadas cilíndricas
 r=MV+MU;
 th=MV;
 z=MV;

%Transformamos las coordenadas en cartesianas
x=r.*cos(th);
y=r.*sin(th);
z=z;

%Dibujamos la superficie en una gráfica
surf(x,y,z);
title('Helicoide cónico');
shading flat;



A continuación, se muestran una serie de aplicaciones en el mundo real:

Torre espiral (Dinamarca)
Helicoide de Caracas (Venezuela)


11 Masa de la superficie reglada.

Dada la función de densidad [math] f(x_1,x_2,x_3)=100-x_1^2-x_2^2[/math], para calcular la masa usaremos la expresión

[math] Masa=\iint_{S}^{}fds=\iint_{D}^{}f(\phi(u,v))\cdot \left | \phi '_u\times\phi '_v \right |dudv[/math]

Primero calculamos las derivadas de [math]\phi'_u [/math] y [math]\phi'_v [/math]

[math] \phi'_u = cosv \overline{i} + sinv \overline {j}[/math]
[math] \phi'_v = (cosv-vsinv-usinv) \overline{i} + (sinv+vcosv+ucosv) \overline {j} +\overline{k} [/math]

Posteriormente se calcula su producto vectorial para introducirlo en la matriz

[math] \phi '_u\times\phi '_v = sinv \overline{i} - cosv \overline{j} + (u+v)\overline{k} [/math]

Cuyo módulo es:

[math] |\phi '_u\times\phi '_v | = \sqrt{1+(u+v)^2} [/math]

A continuacion se calcula [math] f(\phi(u,v))[/math]

[math] f(\phi(u,v))= 100-v^2 - u^2 -2uv [/math]

Finalmente, sustituimos los valores obtenidos en la integral doble para calcular la masa

[math] Masa=\int_{2\pi}^{6\pi}\int_{0}^{1} (100-u^2 - v^2 -2uv) \cdot \sqrt{1+(u+v)^2} du dv =1540,2174 [/math]

Para calcular la integral, hemos usado el siguiente código de matlab:

clear; clc; 
% Definimos los extremos de los intervalos y el número de puntos
 n=100;
 h1=(1-0)/n; h2=(6*pi-2*pi)/n;
 u=0:h1:1; v=2*pi:h2:6*pi;
% Definimos el mallado 
 [uu,vv]=meshgrid(u,v);

% Definimos el área de cada subrectángulo y usamos el método del prisma
area=2*2/(n^2);
v_acumulado=0;
for i=1:n
    for j=1:n
        alt=(100*ones(n+1,1)-(uu).^2-(vv).^2-2*uu.*vv).*(sqrt(1+(uu+vv).^2));
        v_prisma=area*alt;
        v_acumulado=v_acumulado+v_prisma;
    end
end
int=v_acumulado;

fprintf ('Para n=%d, el resultado de la integral es: %.4f.\n',n,int)