Juegos topológicos

Animaciones de curvas

Posted on: abril 19, 2011

Esta entrada participa en la Edición 2.3 del Carnaval de Matemáticas
cuyo anfitrión es el blog Los Matemáticos no son Gente Seria 

En esta entrada os mostramos algunas animaciones de curvas que hemos realizado con el programa Mathematica. Las funciones que aparecen en los subtítulos son las correspondientes funciones de curvatura, que incluyen un parámetro u variable que da lugar a la animación.

El Teorema Fundamental de Curvas Planas  garantiza la existencia (y unicidad salvo movimientos Euclídeos) de una curva plana con una curvatura \kappa_2 dada. Por ejemplo, la curva que tiene \kappa_2=0 en todos sus puntos es una recta (o un tramo de ella). La curva que tiene curvatura constante c es un tramo de circunferencia de radio 1/c .

La curvatura de una curva unitaria \alpha, parametrizada por su longitud de arco s, es el producto escalar entre los vectores aceleración \alpha''(s) y el vector velocidad \alpha'(s) girado 90º,  que denotamos J\alpha'(s):

\kappa_2(s)=\alpha''(s) \cdot J \alpha'(s)

de modo que la aceleración es perpendicular al vector velocidad (no hay aceleración tangencial, porque la curva al ser unitaria tiene velocidad con módulo constante igual a 1):

\alpha''(s) = \kappa_2(s) J \alpha'(s).

Hay que observar que cuando \kappa_2 es positiva, la curva gira hacia la izquierda, y si es negativa hacia la derecha, y su módulo indica cuánto se dobla.

Por ejemplo, la curva que tiene \kappa_2(s)=s es la famosa clotoide, usada para empalmar tramos de ferrocarril o carreteras:

Os dejamos los comandos del Mathematica para que podáis jugar con estas curvas. Solo tenéis que substituir la función en negrita por la que vosotros queráis  (# es el parámetro arco s).

intrinsic[f_, a_: 0, {c_: 0, d_: 0, e_: 0}, {min_: – 15, max_: 15}, opts___][t_] :=Module[{x, y, z, s}, eqic = {x'[s] == Cos[z[s]], y'[s] == Sin[z[s]], z'[s] == f[s], x[a] == c, y[a] == d, z[a] == e}; sol = NDSolve[eqic, {x, y, z}, {s, min, max}, opts]; {x[t], y[t]} /. sol[[1]]]

Animate[Show[ ParametricPlot[ Evaluate[ intrinsic[u # 3 Sin[#] Cos[#]  &, 0, {0, 0, 0}, {-15, 15}][s]], {s, -15, 15}, ImageSize -> 350, PlotRange -> {{-5, 5}, {-5, 5}}]], {u, -5, 5, .01}]

Podéis probar por ejemplo con las funciones

u # Cos[#], u #^2, Exp[u #], Exp[Cos[u #]], etc 

[OJO: Si probáis con una función que esté definida en un rango diferente a {u,-5,5}, o {s,-5,5}, tedréis que cambiar los extremos. ]

Este sistema de ecuaciones diferenciales nos da como solución  una curva con curvatura prefijada f(s) = \kappa_2(s). La parametrización explícita de la curva es

\alpha(s) = (\int_a^s Cos(\theta(s)) ds, \int_a^s Sin(\theta(s)) ds) + (c, d)

donde

\theta(s)= \int_a^s\kappa_2(s) ds +e

es el ángulo que forma el vector velocidad de la curva con el semieje x positivo, llamado ángulo de giro.

El punto (c,d) es por donde pasa la curva en \alpha(a), que en el sistema de ecuaciones es (0,0) por defecto. Y el ángulo de giro inicial es e, por defecto 0, es decir, sale la curva con vector velocidad (1,0), tangente al eje x.

Referencia: Notebook 5, del libro

Modern Differential Geometry of CURVES and SURFACES with Mathematica, by Alfred Gray, Elsa Abbena, Simon Salamon CRC Press, 2006.

1 Response to "Animaciones de curvas"

Muy chulo,gracias por participar

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

Estadísticas del blog

  • 718,746 visitas

Síguenos en

Google translator

Sierpinski carpet project

Juego alicatado con hilos.

3D POLYFELT – POLIFIELTROS 3D

Enlaces

Escribe tu dirección de correo electrónico para suscribirte a este blog, y recibir notificaciones de nuevos mensajes por correo.

Únete a otros 81 seguidores

Actualizaciones de Twitter

A %d blogueros les gusta esto: