La Clotoide (Grupo 36)

De MateWiki
Revisión del 15:30 4 dic 2025 de Jlsv (Discusión | contribuciones) (La Clotoide aplicada a la ingeniería.)

Saltar a: navegación, buscar
Trabajo realizado por estudiantes
Título La clotoide. Grupo 36
Asignatura Teoría de Campos
Curso 2025-26
Autores José Luis Sánchez Vargas, Dennis Rodríguez Pérez, Yayun Wang.
Este artículo ha sido escrito por estudiantes como parte de su evaluación en la asignatura

1 Introducción.

Una clotoide, también conocida como espiral de Cornu o espiral de Euler, es una curva geométrica cuya curvatura varía de manera lineal con respecto a su longitud. Es decir, a medida que avanzamos a lo largo de la curva, la curvatura cambia gradualmente, comenzando desde un valor inicial nulo (recta) hasta alcanzar una curvatura máxima, lo que la hace ideal para transiciones suaves entre rectas y curvas.
Para estudiar sus características, examinaremos primero los vectores de velocidad y aceleración, junto con los elementos del triedro de Frenet.
Más adelante, relacionaremos estos conceptos con su utilización en ingeniería civil.

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,L) [/math]

Para nuestro caso tomaremos L=4. La expresión general quedará de esta forma:

[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,4) [/math]


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

Figura 1: Clotoide
clear; clc; clf;
% Asignación de los parámetros
t = linspace(0, 4, 200);
x = @(t) integral(@(s) cos(s.^2/2), 0, t);
y = @(t) integral(@(s) sin(s.^2/2), 0, t);
x = arrayfun(x, t);
y = arrayfun(y, t);
figure;
plot(x, y);
title('La Clotoide');
xlabel('X');
ylabel('Y');
axis equal;


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 de la clotoide
t = linspace(0, 4, 150);
x = @(t) integral(@(s) cos(s.^2/2), 0, t);
y = @(t) integral(@(s) sin(s.^2/2), 0, t);
x = arrayfun(x, t);
y = arrayfun(y, t); 
V1 = cos(t.^2/2);
V2 = sin(t.^2/2);
A1 = -t.*sin(t.^2/2);
A2 = t.*cos(t.^2/2);
figure
hold on
plot (x ,y ,'b') ; 
quiver(x,y,V1,V2,"color","g") ; 
quiver(x,y,A1,A2,"color","r") ; 
axis equal
hold off
title('Vectores velocidad y aceleracion');
xlabel("X");
ylabel("Y");


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}^{4}\sqrt {cos^2(\frac{t^2}{2})+sin^2(\frac{t^2}{2})}dt = \int_{0}^{4}1dt = 4-0 = 4 [/math]


5 Cálculo de los vectores tangente y normal

Haciendo uso del vector velocidad, calcularemos el vector tangente y normal:

El vector tangente:

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



El vector normal:

[math] \vec n (t) =\tfrac{-{y}'(t) \vec i+{x}'(t) \vec j}{\sqrt{{x}'(t)^2 \vec i + {y}'(t)^2 \vec j}} = \tfrac{-sen(\frac{t^2}{2}) \vec i+cos(\frac{t^2}{2}) \vec j}{1} = -sen(\frac{t^2}{2}) \vec i+cos(\frac{t^2}{2}) \vec j [/math]



Figura 3. Curva vector tangente y normal
t = linspace(0, 4, 100);
x = @(t) integral(@(s) cos(s.^2/2), 0, t);
y = @(t) integral(@(s) sin(s.^2/2), 0, t);
x=arrayfun(x, t);
y=arrayfun(y, t);
norma=1;
T1 = cos(t.^2/2)./norma;
T2 = sin(t.^2/2)./norma;
N1= -sin((t.^2)./2);
N2= cos ((t.^2)./2);
figure;
hold on;
plot(x,y,'b'); %curva
quiver(x,y,T1,T2,"color",'r');
quiver(x,y,N1,N2,"color",'g');
axis equal
hold off;
title ('Clotoide, tangente y normal.')
xlabel('Eje X');
ylabel('Eje Y');


6 Curvatura k(t).

Estudiaremos la curvatura de [math] γ(t) [/math] que se expresa de la siguiente forma:


[math] \kappa (t)=\frac{{x}'(t)\cdot {y}''(t)-{x}''(t)\cdot {y}'(t)}{({x}'(t)^2 + {y}'(t)^2)^{\frac{3}{2}}} [/math] [math] =\frac{cos(\frac{t^2}{2})\cdot t\cdot cos(\frac{t^2}{2})-(-t\cdot sin(\frac{t^2}{2})\cdot sin(\frac{t^2}{2}))}{\sqrt{[(cos(\frac{t^2}{2}))^2+(sin(\frac{t^2}{2}))^2]^3}}=\frac{t}{1}=t , t ∈ [0,4] [/math]


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

Figura 4: Gráfica de la curvatura


t=linspace(0,4,70)
k=t;
figure
plot(t,k,'b');
axis equal
title('Curvatura.');
xlabel('Eje X');
ylabel('Eje Y');







7 Circunferencia osculatriz.

La circunferencia osculatriz en un punto de la curva es aquella que es tangente a la curva en ese punto y que mejor la aproxima localmente (el término osculatriz viene del latín osculum, que significa beso).
En este caso calcularemos dicha circunferencia para P= [math] \gamma (1.5) [/math], es decir, t=1.5, el radio R(t) de la circunferencia osculatriz y su centro Q(t) 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(1.5)=\frac{1}{1.5}[/math]

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


De esta forma obtenemos la circunferencia osculatriz, añadiendo el siguiente código, al anterior de la clotoide:

Figura 5: Circunferencia osculatriz y clotoide
% Curva para t = 1.5
X1 = integral(f1,0,1.5);
Y1 = integral(f2,0,1.5);
% R(t)
R = 1/1.5;
% Vec norm t = 1.5
nx = -sin(1.5^2/2);
ny =  cos(1.5^2/2);
% Q(t)
Qx = X1 + R*nx;
Qy = Y1 + R*ny;
% Param
theta = linspace(0,2*pi,500);
Cx = Qx + R*cos(theta);
Cy = Qy + R*sin(theta);
% Dibujo
hold on
plot(x,y,'r')      % Clotoide
plot(Cx,Cy,'b')    % Circunferencia osculatriz
axis equal
xlabel('Eje x')
ylabel('Eje y')
title('Circunferencia osculatriz en t = 1.5')
hold off


8 La Clotoide aplicada a la ingeniería.

1. Carreteras y ferrocarriles:Transición suave: Su función principal es evitar el cambio brusco de dirección que se produce al pasar directamente de una recta a una curva.Seguridad: Proporciona una trayectoria más natural para los conductores, reduciendo la posibilidad de accidentes.Comodidad: Permite que los pasajeros experimenten aceleraciones centrífugas de manera gradual, lo que aumenta la comodidad del viaje.Diseño del peralte: Facilita el diseño y la aplicación progresiva del peralte (inclinación de la carretera) en las curvas.Otras aplicaciones:Incorporaciones y cambios de sentido: Se utiliza en el diseño de rampas de incorporación a autopistas y en cambios de sentido.Adaptación a la topografía: Su flexibilidad geométrica permite una adaptación más económica a las características del terreno. Propiedades clave Variación del radio: El radio de curvatura (\(\rho \)) de la clotoide varía de manera inversamente proporcional a la distancia (\(s\)) recorrida. La ecuación que lo describe es \(\rho \cdot s=a^{2}\), donde \(a\) es una constante que define el tamaño de la clotoide.Conexión de tramos:Puede conectar una recta con una curva circular.Puede conectar dos curvas circulares de diferentes radios.Radio de curvatura: Al inicio de la curva (s=0), el radio es infinitamente grande (tangente a una recta). A medida que se avanza, el radio disminuye hasta el radio de la curva circular siguiente. 

9 Ejemplos en Ingeniería Civil.

Clotoide en carretera
Espiral de Euler en carretera


Autopista del Sol (México)
Clotoide en montaña rusa

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)


10.1 Masa de la superficie reglada.

Dada la función de densidad [math] f(x_1,x_2,x_3)=(\frac{x_1^2+x_2^2}{x_3 })[/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))= (\frac{v^2+u^2}{v }) [/math]

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

[math] Masa=\int_{2\pi}^{6\pi}\int_{0}^{1} (\frac{v^2+u^2}{v}) \cdot \sqrt{1+(u+v)^2} du dv =2176.6255 [/math]

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

clear;clc
% Esta función calcula la integral doble con el orden dv du:
% Definición de la función a integrar f(u, v)
fun = @(u, v) ((u + v).^2 ./ u) .* sqrt(1 + (u + v).^2);
%% Definición de los límites de integración
v_min = 0;
v_max = 1;
u_min = 2*pi;
u_max = 6*pi;
%% Cálculo de la integral doble
Masa = integral2(fun, u_min, u_max, v_min, v_max);
%% Mostrar el resultado
fprintf('El valor numérico de la integral doble (Masa) con orden dv du es: M = %f\n', Masa);