Diferencia entre revisiones de «La Clotoide (Grupo 25)»
| Línea 176: | Línea 176: | ||
xlabel('Eje x'); | xlabel('Eje x'); | ||
ylabel('Eje y'); | ylabel('Eje y'); | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
}} | }} | ||
==Circunferencia osculatriz.== | ==Circunferencia osculatriz.== | ||
Revisión del 17:27 29 nov 2024
| Trabajo realizado por estudiantes | |
|---|---|
| Título | La Clotoide (Grupo 25) |
| Asignatura | Teoría de campos |
| Curso | 2024-25 |
| Autores | Silvia Tortuero Montero, Claro 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 | |
Contenido
1 Introducción.
De forma matemática, los 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.
Dada una función
[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:
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:
% 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:
Como se ha plasmado en el apartado anterior:
Cuyo módulo es:
Por tanto la longitud es:
5 Vectores tangente y normal.
Los vectores tangente y normal de la clotoide vienen dadas por:
Para representarlo, partiremos del código y gráfica del apartado anterior, añadiendo el siguiente código, y obteniendo:
% 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:
La gráfica de la curvatura se calcula mediante el siguiente código de Matlab
% 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:
Siguiendo con el código de la representación de la curva y añadiendo el siguiente, se obtiene la circunferencia osculatriz:
%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