57 votos

Cómo identificar las superficies de revolución

Dada una superficie $f(x,y,z)=0$ ¿Cómo se puede determinar si se trata de una superficie de revolución y encontrar el eje de rotación?

El caso especial en el que $f$ es un polinomio también es de interés.

Unas cuantas ideas que pueden llevar a alguna parte, tal vez:

(1) Para los de álgebra: Superficies de la forma $z = g(x^2 + y^2)$ son siempre superficies de revolución. No sé si lo contrario es cierto. Si lo es, entonces sólo tenemos que encontrar un sistema de coordenadas en el que $f$ tiene esta forma particular. Encontrar sistemas de coordenadas especiales que simplifiquen las cosas suele implicar encontrar valores propios. De todos modos, los valores propios se utilizan para abordar el caso especial de las superficies cuádricas.

(2) Para las personas de geometría diferencial: Las superficies de revolución tienen un patrón muy especial de líneas de curvatura. Una familia de líneas de curvatura es un conjunto de círculos coaxiales. No sé si esta propiedad caracteriza a las superficies de revolución, pero parece prometedora.

(3) Para físicos e ingenieros: El eje de rotación debe ser uno de los ejes principales para los momentos de inercia centroidales, según los apuntes de física que he leído. Así que deberíamos calcular el centroide y el tensor de inercia. No estoy seguro de cómo. Luego, diagonalizar, por lo que los valores propios, de nuevo. Tal vez esto es en realidad el mismo que la idea # 1.

(4) Para los amigos de la geometría clásica: Lo que caracteriza a las superficies de revolución (creo) es que cada línea normal a la superficie interseca alguna línea fija, que es el eje de rotación. Por lo tanto, construir las líneas normales en algunos puntos de la superficie (¿cuántos?), y ver si hay alguna línea $L$ que cruza todas estas líneas normales (¿cómo?). Ver esta pregunta relacionada . Si lo hay, entonces esta línea $L$ es (probablemente) el eje de rotación deseado. Esto parece estar relacionado de alguna manera con las respuestas dadas por Holographer y zyx.

¿Por qué es interesante/importante? Porque las superficies de revolución son más fáciles de manejar computacionalmente (por ejemplo, los cálculos de área y volumen), y fáciles de fabricar (utilizando un torno). Por lo tanto, es útil poder identificarlas, para poder tratarlas como casos especiales.

La pregunta está relacionada con este sobre superficies simétricas Creo que Los tres últimos párrafos de esa pregunta (sobre los centroides) también se aplican aquí. En concreto, si tenemos una superficie de revolución acotada (compacta), su eje de rotación debe pasar por su centroide, por lo que algunos grados de libertad desaparecen.

Si quieres poner a prueba tus ideas, puedes probar a experimentar con $$ f(x,y,z) = -6561 + 5265 x^2 + 256 x^4 + 4536 x y - 1792 x^3 y + 2592 y^2 + 4704 x^2 y^2 - 5488 x y^3 + 2401 y^4 + 2592 x z - 1024 x^3 z - 4536 y z + 5376 x^2 y z - 9408 x y^2 z + 5488 y^3 z + 5265 z^2 + 1536 x^2 z^2 - 5376 x y z^2 + 4704 y^2 z^2 - 1024 x z^3 + 1792 y z^3 + 256 z^4 $$ Esta es una superficie de revolución, y es compacta. Lamento que sea un desastre tan feo. Era el ejemplo compacto no cuadrado más simple que pude inventar.

Si giramos a un $(u,v,w)$ sistema de coordenadas, donde $$ u = \frac{1}{9}( x - 4 y + 8 z) \\ v = \frac{1}{9}(8 x + 4 y + z) \\ w = \frac{1}{9}(-4 x + 7 y + 4 z) $$ entonces la superficie se convierte en $$ u^2 + v^2 + w^4 - 1 = 0 $$ que es una superficie de revolución que tiene la $w$ -como su eje de rotación.

0 votos

@Hoseyn -- He buscado un poco y no he encontrado ninguna referencia.

0 votos

@Hoseyn -- tal vez te preguntes por qué esto es interesante/importante. La respuesta es que las superficies de revolución son más fáciles de manejar computacionalmente, y fáciles de fabricar (usando un torno). Por lo tanto, es útil poder identificarlas, para poder tratarlas como casos especiales. Si no es eso lo que querías decir, intenta preguntar de nuevo.

0 votos

Fueron las dos cosas a las que me refiero. Ahora estoy trabajando en ello.

28voto

Holographer Puntos 1083

Se puede reducir a un problema algebraico de la siguiente manera:

La definición de una superficie de revolución es que existe algún eje tal que las rotaciones alrededor de este eje dejan invariante la superficie. Denotemos la acción de una rotación por el ángulo $\theta$ sobre este eje por el mapa $\vec x\mapsto \vec R_\theta(\vec x)$ . Con su superficie dada como un conjunto de nivel $f(\vec{x})=0$ la condición de invariabilidad es que $f(\vec R_\theta(\vec x))=0$ siempre que $f(\vec{x})=0$ para todos $\theta$ .

En particular, podemos diferenciar esto con respecto a $\theta$ para conseguir $\vec\nabla f(\vec R_\theta(\vec x))\cdot \frac{\partial}{\partial\theta}\vec R_\theta(\vec x)=0$ que en $\theta=0$ da $\vec\nabla f(\vec x)\cdot \vec k(\vec x)=0$ , donde $\vec k(\vec x)=\left.\frac{\partial}{\partial\theta}\vec R_\theta(\vec x)\right|_{\theta=0}$ es el campo vectorial que representa la acción de una rotación infinitesimal. (Si el lenguaje de la geometría diferencial es familiar, se trata de un campo vectorial de Killing).

Así que con este lenguaje establecido, lo que tenemos que comprobar es si hay algún campo de Matanza $\vec k(\vec x)$ asociado a una rotación, que es ortogonal al gradiente de $f$ en cualquier lugar de la superficie (es decir, siempre que $f(\vec x)=0$ ). De hecho, esto será no sólo necesario, sino también suficiente, ya que (intuitivamente) cualquier rotación se puede construir a partir de muchas pequeñas.

Por suerte, es bastante sencillo escribir el campo más general de Killing: si $\vec x_0$ es un punto en el eje de rotación, y $\vec a$ un vector unitario que apunta a lo largo del eje, tenemos $\vec k(\vec x)=\vec a \times (\vec x-\vec x_0)$ . (Obsérvese que se trata de una parametrización degenerada, ya que podemos elegir cualquier punto del eje, correspondiente al desplazamiento $\vec x_0$ por un múltiplo de $\vec a$ y también enviar $\vec a$ a $-\vec a$ para dar la misma rotación).

Resumiendo: la pregunta se ha reformulado como "¿hay alguna solución $\vec x_0, \vec a$ a $\vec a \times (\vec x-\vec x_0)\cdot\vec\nabla f(\vec x)=0$ que se mantienen para todos los $\vec x$ tal que $f(\vec x)=0$ ?".

(También se puede escribir la ecuación como $\det[\vec a, \, \vec x-\vec x_0, \,\vec\nabla f(\vec x)]=0$ ).

Para tu ejemplo, conseguí que Mathematica utilizara este método. Dejé que $\vec x_0=(x_0,y_0,0)$ , tomando $z_0=0$ para eliminar alguna degeneración, y $\vec a=(a_x,a_y,a_z)$ , dando 5 incógnitas para el eje. Luego encontré cuatro puntos en la superficie, resolviendo $f(x,y,z)=0$ con $y=z=0$ y $x=z=0$ . Entonces conseguí que se resolviera $\vec a \times (\vec x-\vec x_0)\cdot\vec\nabla f(\vec x)=0$ para los cuatro puntos, y $|\vec a|^2=1$ (5 ecuaciones para las 5 incógnitas), obteniendo una solución única hasta el signo de $\vec a$ . A continuación, he sustituido la solución en $\vec a \times (\vec x-\vec x_0)\cdot\vec\nabla f(\vec x)$ en general $\vec x$ , obteniendo cero, por lo que la solución daba efectivamente un eje de revolución. Se simplifica en este caso porque todos los conjuntos de niveles de $f$ dar una superficie de revolución alrededor del mismo eje, por lo que este último paso no requirió asumir $f(\vec x)=0$ .

2 votos

Una nota práctica sobre cómo podría funcionar esto: hay un espacio de cuatro dimensiones de posibles ejes, así que para fijar una solución necesitarás cuatro ecuaciones. Así que encuentra cuatro puntos en tu superficie, y genéricamente esto te dará una solución única (hasta la degeneración ya mencionada). Ahora comprueba que esta solución funciona para todos los puntos de la superficie.

0 votos

Gracias por sus recientes incorporaciones. ¿Cuál es la naturaleza de las 5 ecuaciones que has tenido que resolver? ¿Son lineales? En la respuesta de zyx más abajo, él termina con ecuaciones lineales (homogéneas), y su solución parece algo relacionada con la tuya.

0 votos

Su estado $\det[\vec a, \, \vec x-\vec x_0, \,\vec\nabla f(\vec x)]=0$ ) dice que tres vectores son coplanarios: el vector del eje, un vector desde el punto del eje hasta el punto de la superficie $\vec x_0$ y la normal de la superficie en $\vec x_0$ . Me parece geométricamente claro que esta propiedad caracteriza a las superficies de revolución. Sus argumentos lo justifican, pero yo lo habría creído de todos modos.

2voto

Si trabajas numéricamente probablemente no te interesen los casos degenerados, así que vamos a suponer que la superficie es "genérica" en un sentido adecuado (esto descarta la esfera, por ejemplo). Como señalas, es útil utilizar la curvatura gaussiana $K$ porque $K$ es independiente de la presentación, como la elección particular de la función $f(x,y,z)$ . La buena noticia es que es posible calcular $K$ directamente de $f$ utilizando un operador diferencial adecuado. Para las curvas en el plano es el operador de Riess de la geometría algebraica; para las superficies es más complicado. Esto fue tratado en detalle en un artículo de Goldman:

Goldman, Ron: Fórmulas de curvatura para curvas y superficies implícitas. Comput. Aided Geom. Design 22 (2005), nº 7, 632-658.

Ver aquí

Ahora la gracia es que si esta es una superficie de revolución entonces las líneas $\gamma$ de curvatura son muy especiales: todos son círculos (excepto los casos degenerados como la esfera). En particular, $\gamma$ tiene curvatura constante y torsión cero $\tau$ como una curva en el espacio 3. Si $f$ es un polinomio, se debería obtener una función racional, digamos $g$ para la curvatura, y luego la condición de curvatura constante para $\gamma$ debe ser expresable mediante un par de ecuaciones.

0 votos

Gracias por su respuesta. En cuanto a las esferas... podemos ignorar todas las ecuaciones polinómicas de grado dos, porque éstas son sólo cuádricas, y son fáciles de clasificar usando métodos bien conocidos basados en los valores propios.

1 votos

En principio suena bien. Pero todavía no he leído el artículo de Ron Goldman, así que no sé lo difícil que es calcular las líneas de curvatura. Como mencioné en mi sugerencia para la gente de la geometría diferencial, creo que hay que hacer un poco más de trabajo, sin embargo. Sólo porque las líneas de curvatura sean círculos, no creo que esto garantice que tengamos una superficie de revolución. Creo que los cíclidos tienen la misma propiedad, por ejemplo. Pero, si podemos encontrar las líneas de curvatura, deberíamos ser capaces de demostrar que todas son círculos coaxiales, como he dicho, y esto demuestra que tenemos una superficie de revolución.

0 votos

Su sitio web parece estar muerto, así que no puedo descargar el documento. No obstante, intentaré encontrar una copia en otro lugar.

1voto

FasterEd Puntos 31

Esto no es realmente una respuesta completa, sólo algunas ideas que deberían servir para empezar.

Supongamos que ya hemos identificado un eje de revolución candidato para la superficie. ¿Cómo podemos saber si la superficie se creó realmente por revolución? Pues bien, podemos simplemente cambiar las coordenadas al nuevo sistema de coordenadas dado por el eje candidato y dos vectores ortogonales cualesquiera y ver si la ecuación de la superficie en las nuevas coordenadas sólo depende de dos variables.

Ahora, precisemos lo anterior. En lugar de la afirmación cualitativa "tenemos/no tenemos una superficie de revolución" consideremos algún tipo de función $R$ (dependiendo del eje de revolución y quizás de algunos otros parámetros a especificar) que desaparece precisamente cuando tenemos una superficie de revolución. ¿Podemos encontrar tal función? Claro que sí. Entre en la transformación de Fourier.

Puede que estés familiarizado con el hecho de que la transformada de Fourier de una función constante en un círculo es la función delta. Explícitamente $\hat 1 = \delta_0$ (también debería haber algún factor de normalización, pero no lo tengamos en cuenta). Así que nuestra función $R$ puede ser $\lVert \delta_0 - \hat f\rVert$ donde $\lVert \cdot \rVert$ es cualquier norma razonable y $\hat f$ es la transformada de Fourier de la ecuación de la superficie alrededor del eje de rotación candidato. La razón es que $f$ no depende de una de las variables de las nuevas coordenadas. Otra forma de decir esto es que es constante en esa variable o que su transformada de Fourier es una función delta.

Resumiendo, hemos reducido el problema a la minimización de la función $R$ . Podría decirse que el cálculo de la transformada de Fourier de $f$ alrededor de un eje arbitrario y encontrar una buena norma a utilizar. La buena noticia es que seguramente hay paquetes para calcular la transformada de Fourier y que se puede truncar la norma para incluir sólo los primeros términos (los llamados de baja frecuencia) de la transformada de Fourier.

1voto

zyx Puntos 20965

La ecuación definitoria debe tener una simetría infinitesimal que, tras una traslación del sistema de coordenadas para centrarlo en el eje de rotación, sea lineal y sesgada (es una rotación infinitesimal) con coeficientes independientes de $(x,y,z)$ . En otras palabras,

$f(x,y,z)=0 \hskip15pt$ implica, después de ignorar los términos de orden $(dt)^k$ con $k > 1$ que $$f(x+ (\alpha + Py + Qz) dt, y + (\beta - Px + Rz)dt, z + (\gamma -Qx -Ry) dt) = 0$$

para las constantes $P,Q,R$ (las entradas de la matriz simétrica sesgada) y $(a,b,c)$ (el nuevo centro de coordenadas, que puede ser cualquier punto del eje de rotación). El triple de constantes $(\alpha,\beta,\gamma)$ se define como igual a $(-Pb-Qc, Pa-Rc, Qa +Rb)$ ; esto es sólo el término de corrección resultante del cambio de coordenadas ya que tenemos por ejemplo $x = a + (P(y-b) + Q(z-c)) dt$ como el efecto sobre $x$ de una rotación infinitesimal a través de un ángulo proporcional a $dt$ .

Como $f(x,y,z)$ es cero, se trata de un conjunto de ecuaciones en el grado $1$ plazo (en $dt$ ) de la serie de potencias de $F(x + ..., y+ ..., z + ...)$ que debe desaparecer.

El desvanecimiento no es sólo numérico, sino hasta cualquier orden de desvanecimiento $f(x,y,z)$ tiene, en el caso de una ecuación no reducida como $f(x,y,z)=(1 + g^2) h(x^2+y^2)^2$ donde $g$ y $h$ son polinomios. La ecuación puede verse como si tuviera lugar en un anillo de funciones módulo $f(x,y,z)$ o como la coincidencia de las expansiones asintóticas hasta el orden correcto. Si no hay una capacidad infalible para reducir la ecuación antes de empezar, elegir varios puntos genéricos $(x_i,y_i,z_i)$ puede fallar porque las derivadas parciales de $f$ podría desaparecer en todas partes $f$ hace. Para los polinomios se puede factorizar $f$ antes de empezar.

Las ecuaciones son lineales (y homogéneas, por lo que son invariables bajo escala) en $P,Q,R$ pero contienen productos bilineales como $Pa$ . La condición de $(P,Q,R)$ es invariable bajo cambios de $(a,b,c)$ correspondientes a diferentes elecciones de puntos en el eje de rotación, por lo que si hay una solución hay una con $a=0$ o $b=0$ o $c=0$ . Teniendo en cuenta estos dos hechos, la dimensión del espacio de soluciones es $6 - 1 - 1 = 4$ que es el mismo que el número de parámetros para definir una línea en $3$ -dimensiones. El grado del sistema es $2$ después de imponer $abc=0$ y requiriendo $P=1$ (o lo mismo para $Q$ o $R$ si no tiene solución $P=1$ ); esto refleja la doble redundancia de que invertir tanto la orientación del eje de rotación como el sentido de la misma no cambia la rotación.

En definitiva, esto acaba siendo similar a la respuesta de Holographer utilizando puntos aleatorios, ya que las variables que parametrizan el problema son equivalentes. Si $f$ es un polinomio que se puede calcular exactamente en un sistema de álgebra computacional sin escoger puntos al azar; $C[x,y,z]/(f=0)$ será un espacio vectorial de dimensión infinita sobre $C$ (o cualquier otro campo de coeficientes) y tras agotar las relaciones en grado bajo (obteniendo un grado numérico $2$ sistema que se resuelve para las constantes $P,Q,R,a,b,c$ tras imponer diferentes casos de $abc=0$ y $(P-1)(Q-1)(R-1)=0$ ) se puede probar la solución para ver si el grado $1$ término con $dt$ es divisible por $f(x,y,z)$ o no.

0 votos

Muchas gracias. Siento ser tan denso, pero hay varias cosas que no entiendo. No veo a qué "conjunto de ecuaciones lineales homogéneas" te refieres. Y, si resolviera estas ecuaciones, cómo obtendría entonces el eje de rotación a partir de estas soluciones.

0 votos

He hecho algunas revisiones que podrían responder a algunas de sus preguntas.

0 votos

Gracias. Sigue siendo difícil de entender (para mí), y parece ser más o menos el mismo enfoque sugerido por Holographer, pero explicado de una manera diferente.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X