Articulo de referencia

Curva implícita

Óvalos de Cassini: (1) a=1,1, c=1 (arriba), (2) a=c=1 (en el medio), (3) a=1, c=1,05 (abajo) Curva implícita: pecado ⁡ ( incógnita + y ) − porque ⁡ ( incógnita y ) + 1 = 0 {\dis...

Óvalos de Cassini: (1) a=1,1, c=1 (arriba), (2) a=c=1 (en el medio), (3) a=1, c=1,05 (abajo)
Curva implícita:pecado(incógnita+y)porque(incógnitay)+1=0{\displaystyle \sin(x+y)-\cos(xy)+1=0}
Curva implícitapecado(incógnita+y)porque(incógnitay)+1=0{\displaystyle \sin(x+y)-\cos(xy)+1=0}como curvas de nivel de la superficiez=pecado(incógnita+y)porque(incógnitay)+1{\displaystyle z=\sin(x+y)-\cos(xy)+1}

En matemáticas , una curva implícita es una curva plana definida por una ecuación implícita que relaciona dos variables de coordenadas, comúnmente x e y . Por ejemplo, el círculo unitario se define mediante la ecuación implícita.incógnita2+y2=1{\displaystyle x^{2}+y^{2}=1}En general, toda curva implícita se define mediante una ecuación de la forma

F(incógnita,y)=0{\displaystyle F(x,y)=0}

para alguna función F de dos variables. Por lo tanto, una curva implícita puede considerarse como el conjunto de ceros de una función de dos variables. Implícita significa que la ecuación no se expresa como una solución para x en términos de y, ni viceversa.

SiF(incógnita,y){\displaystyle F(x,y)}Si se trata de un polinomio en dos variables, la curva correspondiente se denomina curva algebraica y existen métodos específicos para estudiarla.

Las curvas planas se pueden representar en coordenadas cartesianas ( coordenadas x , y ) mediante cualquiera de los tres métodos, uno de los cuales es la ecuación implícita dada anteriormente. La gráfica de una función se describe generalmente mediante una ecuación.y=F(incógnita){\displaystyle y=f(x)}en la que la forma funcional se indica explícitamente; esto se denomina representación explícita . La tercera descripción esencial de una curva es la paramétrica , donde las coordenadas x e y de los puntos de la curva se representan mediante dos funciones x ( t ) e y ( t ), cuyas formas funcionales se indican explícitamente y que dependen de un parámetro común.t.{\displaystyle t.}

Algunos ejemplos de curvas implícitas son:

  1. una línea :incógnita+2y3=0,{\displaystyle x+2y-3=0,}
  2. un círculo :incógnita2+y24=0,{\displaystyle x^{2}+y^{2}-4=0,}
  3. la parábola semicúbica :incógnita3y2=0,{\displaystyle x^{3}-y^{2}=0,}
  4. Óvalos de Cassini(incógnita2+y2)22do2(incógnita2y2)(a4do4)=0{\displaystyle (x^{2}+y^{2})^{2}-2c^{2}(x^{2}-y^{2})-(a^{4}-c^{4})=0}(ver diagrama),
  5. pecado(incógnita+y)porque(incógnitay)+1=0{\displaystyle \sin(x+y)-\cos(xy)+1=0}(Ver diagrama).

Los primeros cuatro ejemplos son curvas algebraicas, pero el último no lo es. Los tres primeros ejemplos poseen representaciones paramétricas simples, lo cual no ocurre con el cuarto y el quinto. El quinto ejemplo muestra la estructura geométrica, posiblemente compleja, de una curva implícita.

El teorema de la función implícita describe las condiciones bajo las cuales una ecuaciónF(incógnita,y)=0{\displaystyle F(x,y)=0}se puede resolver implícitamente para x y/o y , es decir, bajo el cual se puede escribir válidamenteincógnita=gramo(y){\displaystyle x=g(y)}oy=F(incógnita){\displaystyle y=f(x)}Este teorema es clave para el cálculo de las características geométricas esenciales de la curva: tangentes , normales y curvatura . En la práctica, las curvas implícitas presentan una desventaja fundamental: su visualización es difícil. Sin embargo, existen programas informáticos que permiten representar una curva implícita. Las propiedades especiales de las curvas implícitas las convierten en herramientas esenciales en geometría y gráficos por computadora.

Una curva implícita con una ecuaciónF(incógnita,y)=0{\displaystyle F(x,y)=0}puede considerarse como la curva de nivel del nivel 0 de la superficiez=F(incógnita,y){\displaystyle z=F(x,y)}(véase el tercer diagrama).

Pendiente y curvatura

En general, las curvas implícitas no superan la prueba de la línea vertical (lo que significa que algunos valores de x se asocian con más de un valor de y ) y, por lo tanto, no son necesariamente gráficas de funciones. Sin embargo, el teorema de la función implícita establece las condiciones bajo las cuales una curva implícita se corresponde localmente con la gráfica de una función (es decir, no presenta autointersecciones). Si las relaciones que las definen son suficientemente suaves, entonces, en dichas regiones, las curvas implícitas tienen pendientes, líneas tangentes, vectores normales y curvatura bien definidos.

Existen varias formas posibles de calcular estas cantidades para una curva implícita dada. Un método consiste en utilizar la diferenciación implícita para calcular las derivadas de y con respecto a x . Alternativamente, para una curva definida por la ecuación implícitaF(incógnita,y)=0{\displaystyle F(x,y)=0}, se pueden expresar estas fórmulas directamente en términos de las derivadas parciales deF{\displaystyle F}En lo que sigue, las derivadas parciales se denotanFincógnita{\displaystyle F_{x}}(para la derivada con respecto a x ),Fy{\displaystyle F_{y}},Fincógnitaincógnita{\displaystyle F_{xx}}(para el segundo parcial con respecto a x ),Fincógnitay{\displaystyle F_{xy}}(para el segundo parcial mixto),Fyy.{\displaystyle F_{yy}.}

Vector tangente y vector normal

Un punto de curva(incógnita0,y0){\displaystyle (x_{0},y_{0})}es regular si las primeras derivadas parcialesFincógnita(incógnita0,y0){\displaystyle F_{x}(x_{0},y_{0})}yFy(incógnita0,y0){\ Displaystyle F_ {y} (x_ {0}, y_ {0})}no son ambos iguales a 0.

La ecuación de la recta tangente en un punto regular(incógnita0,y0){\displaystyle (x_{0},y_{0})}es

Fincógnita(incógnita0,y0)(incógnitaincógnita0)+Fy(incógnita0,y0)(yy0)=0,{\displaystyle F_{x}(x_{0},y_{0})(x-x_{0})+F_{y}(x_{0},y_{0})(y-y_{0})=0,}

por lo tanto la pendiente de la línea tangente, y por consiguiente la pendiente de la curva en ese punto, es

pendiente=Fincógnita(incógnita0,y0)Fy(incógnita0,y0).{\displaystyle {\text{pendiente}}=-{\frac {F_{x}(x_{0},y_{0})}{F_{y}(x_{0},y_{0})}}.}

SiFy(incógnita,y)=0Fincógnita(incógnita,y){\displaystyle F_{y}(x,y)=0\neq F_{x}(x,y)}en(incógnita0,y0),{\displaystyle (x_{0},y_{0}),}la curva es vertical en ese punto, mientras que si ambosFy(incógnita,y)=0{\displaystyle F_{y}(x,y)=0}yFincógnita(incógnita,y)=0{\displaystyle F_{x}(x,y)=0}En ese punto, la curva no es diferenciable, sino que se convierte en un punto singular , ya sea una cúspide o un punto donde la curva se interseca a sí misma.

Un vector normal a la curva en el punto viene dado por

norte(incógnita0,y0)=(Fincógnita(incógnita0,y0),Fy(incógnita0,y0)){\displaystyle \mathbf {n} (x_ {0}, y_ {0}) = (F_ {x} (x_ {0}, y_ {0}), F_ {y} (x_ {0}, y_ {0}))}

(aquí escrito como un vector fila).

Curvatura

Para facilitar la lectura de las fórmulas, los argumentos(incógnita0,y0){\displaystyle (x_{0},y_{0})}se omiten. La curvaturaκ{\displaystyle \kappa }en un punto regular viene dado por la fórmula

κ=Fy2Fincógnitaincógnita+2FincógnitaFyFincógnitayFincógnita2Fyy(Fincógnita2+Fy2)3/2{\displaystyle \kappa ={\frac {-F_{y}^{2}F_{xx}+2F_{x}F_{y}F_{xy}-F_{x}^{2}F_{yy}}{(F_{x}^{2}+F_{y}^{2})^{3/2}}}}. [ 1 ]

Derivación de las fórmulas

El teorema de la función implícita garantiza dentro de un entorno de un punto(incógnita0,y0){\displaystyle (x_{0},y_{0})}la existencia de una funciónF{\displaystyle f}de tal manera queF(incógnita,F(incógnita))=0{\displaystyle F(x,f(x))=0}. Por la regla de la cadena , las derivadas de la funciónF{\displaystyle f}son

F(incógnita)=Fincógnita(incógnita,F(incógnita))Fy(incógnita,F(incógnita)){\displaystyle f'(x)=-{\frac {F_{x}(x,f(x))}{F_{y}(x,f(x))}}}yF(incógnita)=Fy2Fincógnitaincógnita+2FincógnitaFyFincógnitayFincógnita2FyyFy3{\displaystyle f''(x)={\frac {-F_{y}^{2}F_{xx}+2F_{x}F_{y}F_{xy}-F_{x}^{2}F_{yy}}{F_{y}^{3}}}}

(donde los argumentos(incógnita,F(incógnita)){\displaystyle (x,f(x))}(Los términos del lado derecho de la segunda fórmula se omiten para facilitar la lectura).

Insertando las derivadas de la funciónF{\displaystyle f}en las fórmulas para una tangente y curvatura de la gráfica de la ecuación explícitay=F(incógnita){\displaystyle y=f(x)}rendimientos

y=F(incógnita0)+F(incógnita0)(incógnitaincógnita0){\displaystyle y=f(x_{0})+f'(x_{0})(x-x_{0})}(tangente)
κ(incógnita0)=F(incógnita0)(1+F(incógnita0)2)3/2{\displaystyle \kappa (x_{0})={\frac {f''(x_{0})}{(1+f'(x_{0})^{2})^{3/2}}}}(curvatura).

Ventajas y desventajas de las curvas implícitas

Desventaja

La principal desventaja de una curva implícita es la falta de una forma sencilla de calcular puntos individuales, lo cual es necesario para la visualización de dicha curva (véase la siguiente sección).

Ventajas

  1. Las representaciones implícitas facilitan el cálculo de puntos de intersección: si una curva se representa implícitamente y la otra paramétricamente, el cálculo de puntos de intersección solo necesita una iteración de Newton simple (1 dimensión), lo cual es contrario a los casos implícito-implícito y paramétrico-paramétrico (ver Intersección ).
  2. Una representación implícitaF(incógnita,y)=0{\displaystyle F(x,y)=0}da la posibilidad de separar puntos que no están en la curva por el signo deF(incógnita,y){\displaystyle F(x,y)}Esto puede resultar útil, por ejemplo, al aplicar el método de la falsa posición en lugar de una iteración de Newton.
  3. Es fácil generar curvas que sean casi geométricamente similares a la curva implícita dada.F(incógnita,y)=0,{\displaystyle F(x,y)=0,}con solo añadir un pequeño número:F(incógnita,y)do=0{\displaystyle F(x,y)-c=0}(véase la sección #Aproximaciones suaves ).

Aplicaciones de curvas implícitas

Aproximación suave de un polígono convexo
Aproximación suave de 1) la mitad de un círculo, 2) la intersección de dos círculos.

En matemáticas, las curvas implícitas desempeñan un papel fundamental como curvas algebraicas . Además, se utilizan para diseñar curvas con las formas geométricas deseadas. He aquí dos ejemplos.

aproximaciones suaves

Polígonos convexos

Se puede obtener una aproximación suave de un polígono convexo de la siguiente manera: Seagramoi(incógnita,y)=aiincógnita+biy+doi=0, i=1,,norte{\displaystyle g_{i}(x,y)=a_{i}x+b_{i}y+c_{i}=0,\ i=1,\dotsc ,n}sean las ecuaciones de las rectas que contienen los bordes del polígono tales que para un punto interior del polígonogramoi{\displaystyle g_{i}}es positivo. Entonces, un subconjunto de la curva implícita

F(incógnita,y)=gramo1(incógnita,y)gramonorte(incógnita,y)do=0{\displaystyle F(x,y)=g_{1}(x,y)\cdots g_{n}(x,y)-c=0}

con un parámetro pequeño adecuadodo{\displaystyle c}es una aproximación suave (diferenciable) del polígono. Por ejemplo, las curvas

F(incógnita,y)=(incógnita+1)(incógnita+1)y(incógnitay+2)(incógnitay+2)do=0{\displaystyle F(x,y)=(x+1)(-x+1)y(-x-y+2)(x-y+2)-c=0}parado=0,03,,0,6{\displaystyle c=0.03,\dotsc ,0.6}

Contienen aproximaciones suaves de un polígono con 5 lados (ver diagrama).

Pares de líneas

En caso de dos líneas

F(incógnita,y)=gramo1(incógnita,y)gramo2(incógnita,y)do=0{\displaystyle F(x,y)=g_{1}(x,y)g_{2}(x,y)-c=0}

uno consigue

un lápiz de líneas paralelas , si las líneas dadas son paralelas o
el haz de hipérbolas, que tienen como asíntotas las líneas dadas.

Por ejemplo, el producto de las variables de los ejes de coordenadas produce el haz de hipérbolas.incógnitaydo=0, do0{\displaystyle xy-c=0,\ c\neq 0}, que tienen los ejes de coordenadas como asíntotas.

Otros

Si se parte de curvas implícitas simples distintas de las líneas (círculos, parábolas,...) se obtiene una amplia gama de nuevas curvas interesantes. Por ejemplo,

F(incógnita,y)=y(incógnita2y2+1)do=0{\displaystyle F(x,y)=y(-x^{2}-y^{2}+1)-c=0}

(producto de un círculo y el eje x) produce aproximaciones suaves de la mitad de un círculo (ver imagen), y

F(incógnita,y)=(incógnita2(y+1)2+4)(incógnita2(y1)2+4)do=0{\displaystyle F(x,y)=(-x^{2}-(y+1)^{2}+4)(-x^{2}-(y-1)^{2}+4)-c=0}

(producto de dos círculos) produce aproximaciones suaves de la intersección de dos círculos (ver diagrama).

Curvas de fusión

Curva de fusión (roja) de dos círculos

En CAD se utilizan curvas implícitas para la generación de curvas de fusión , [ 2 ] [ 3 ] que son curvas especiales que establecen una transición suave entre dos curvas dadas. Por ejemplo,

F(incógnita,y)=(1μ)F1F2μ(gramo1gramo2)3=0{\displaystyle F(x,y)=(1-\mu )f_{1}f_{2}-\mu (g_{1}g_{2})^{3}=0}

genera curvas de fusión entre los dos círculos

F1(incógnita,y)=(incógnitaincógnita1)2+y2r12=0,{\displaystyle f_{1}(x,y)=(x-x_{1})^{2}+y^{2}-r_{1}^{2}=0,}
F2(incógnita,y)=(incógnitaincógnita2)2+y2r22=0.{\displaystyle f_{2}(x,y)=(x-x_{2})^{2}+y^{2}-r_{2}^{2}=0.}

El método garantiza la continuidad de las tangentes y curvaturas en los puntos de contacto (véase el diagrama). Las dos líneas

gramo1(incógnita,y)=incógnitaincógnita1=0, gramo2(incógnita,y)=incógnitaincógnita2=0{\displaystyle g_{1}(x,y)=x-x_{1}=0,\ g_{2}(x,y)=x-x_{2}=0}

determinar los puntos de contacto en los círculos. Parámetroμ{\displaystyle \mu }es un parámetro de diseño. En el diagrama,μ=0,05,,0,2{\displaystyle \mu =0.05,\dotsc ,0.2}.

Curvas equipotenciales de dos cargas puntuales

Curvas equipotenciales de dos cargas puntuales en los puntos azules.

Curvas equipotenciales de dos cargas puntuales iguales en los puntosPAG1=(1,0),PAG2=(1,0){\displaystyle P_{1}=(1,0),\;P_{2}=(-1,0)}puede representarse mediante la ecuación

F(incógnita,y)=1|PAGPAG1|+1|PAGPAG2|do{\displaystyle f(x,y)={\frac {1}{|PP_{1}|}}+{\frac {1}{|PP_{2}|}}-c}
=1(incógnita1)2+y2+1(incógnita+1)2+y2do=0.{\displaystyle ={\frac {1}{\sqrt {(x-1)^{2}+y^{2}}}}+{\frac {1}{\sqrt {(x+1)^{2}+y^{2}}}}-c=0.}

Las curvas son similares a los óvalos de Cassini , pero no son curvas de ese tipo.

Visualización de una curva implícita

Para visualizar una curva implícita, normalmente se determina un polígono sobre la curva y se muestra dicho polígono. Para una curva paramétrica, esta tarea es sencilla: basta con calcular los puntos de una secuencia de valores paramétricos. Para una curva implícita, es necesario resolver dos subproblemas:

  1. determinación de un primer punto de curva a un punto de partida dado en las proximidades de la curva,
  2. Determinación de un punto de curva a partir de un punto de curva conocido.

En ambos casos es razonable suponergraduadoF(0,0){\displaystyle \operatorname {grad} F\neq (0,0)}En la práctica, esta suposición solo se incumple en puntos aislados.

Algoritmo de punto

Para la solución de ambas tareas mencionadas anteriormente es esencial contar con un programa informático (al que llamaremosdoPAGoinortet{\displaystyle {\mathsf {CPoint}}}), que, cuando se le da un puntoQ0=(incógnita0,y0){\displaystyle Q_{0}=(x_{0},y_{0})}cerca de una curva implícita, encuentra un puntoPAG{\displaystyle P}Eso se ajusta exactamente a la curva, dentro de la precisión del cálculo:

(P1) para el punto de inicio esj=0{\displaystyle j=0}
(P2) repetir
(incógnitaj+1,yj+1)=(incógnitaj,yj)F(incógnitaj,yj)Fincógnita(incógnitaj,yj)2+Fy(incógnitaj,yj)2(Fincógnita(incógnitaj,yj),Fy(incógnitaj,yj)).{\displaystyle (x_{j+1},y_{j+1})=(x_{j},y_{j})-{\frac {F(x_{j},y_{j})}{F_{x}(x_{j},y_{j})^{2}+F_{y}(x_{j},y_{j})^{2}}}\,\left(F_{x}(x_{j},y_{j}),F_{y}(x_{j},y_{j})\right).}
( Paso de Newton para la funcióngramo(t)=F(incógnitaj+tFincógnita(incógnitaj,yj),yj+tFy(incógnitaj,yj)) .{\displaystyle g(t)=F\left(x_{j}+tF_{x}(x_{j},y_{j}),y_{j}+tF_{y}(x_{j},y_{j})\right)\ .})
(P3) hasta que la distancia entre los puntos(incógnitaj+1,yj+1),(incógnitaj,yj){\displaystyle (x_{j+1},y_{j+1}),\,(x_{j},y_{j})}es lo suficientemente pequeño.
(P4)PAG=(incógnitaj+1,yj+1){\displaystyle P=(x_{j+1},y_{j+1})}es el punto de la curva cerca del punto de inicioQ0{\displaystyle Q_{0}}.

Algoritmo de rastreo

Al algoritmo de seguimiento: los puntos de partida son verdes.

Para generar un polígono casi igualmente espaciado en la curva implícita, se elige una longitud de paso.s{\displaystyle s}y

(T1) elige un punto de partida adecuado en las proximidades de la curva.
(T2) determina un primer punto de la curva.PAG1{\displaystyle P_{1}}utilizando el programadoPAGoinortet{\displaystyle {\mathsf {CPoint}}}
(T3) determina la tangente (ver arriba), elige un punto de partida en la tangente usando la longitud del pasos{\displaystyle s}(véase el diagrama) y determina un segundo punto de la curva.PAG2{\displaystyle P_{2}}utilizando el programadoPAGoinortet{\displaystyle {\mathsf {CPoint}}}.
{\displaystyle \cdots }

Because the algorithm traces the implicit curve it is called a tracing algorithm. The algorithm traces only connected parts of the curve. If the implicit curve consists of several parts it has to be started several times with suitable starting points.

Example: An illustration of the raster algorithm applied to the implicit curve F(x,y)=(3x2y2)2y2(x2+y2)4=0{\displaystyle F(x,y)=(3x^{2}-y^{2})^{2}y^{2}-(x^{2}+y^{2})^{4}=0}. The curve (red) is what the algorithm is trying to draw. The raster points (black) are used as starting points to find the closest points on the curve (red circles). The spacing between each raster point is exaggerated to show the individual curve points; to more accurately trace the curve, more raster points would be used.[4]

Raster algorithm

If the implicit curve consists of several or even unknown parts, it may be better to use a rasterisation algorithm. Instead of exactly following the curve, a raster algorithm covers the entire curve in so many points that they blend together and look like the curve.

(R1) Generate a net of points (raster) on the area of interest of the x-y-plane.
(R2) For every point P{\displaystyle P} in the raster, run the point algorithm CPoint{\displaystyle {\mathsf {CPoint}}} starting from P, then mark its output.

If the net is dense enough, the result approximates the connected parts of the implicit curve. If for further applications polygons on the curves are needed one can trace parts of interest by the tracing algorithm.

Implicit space curves

Any space curve which is defined by two equations

F(x,y,z)=0,G(x,y,z)=0{\displaystyle {\begin{matrix}F(x,y,z)=0,\\G(x,y,z)=0\end{matrix}}}

is called an implicit space curve.

A curve point (x0,y0,z0){\displaystyle (x_{0},y_{0},z_{0})} is called regular if the cross product of the gradients F{\displaystyle F} and G{\displaystyle G} is not (0,0,0){\displaystyle (0,0,0)} at this point:

t(x0,y0,z0)=gradF(x0,y0,z0)×gradG(x0,y0,z0)(0,0,0);{\displaystyle \mathbf {t} (x_{0},y_{0},z_{0})=\operatorname {grad} F(x_{0},y_{0},z_{0})\times \operatorname {grad} G(x_{0},y_{0},z_{0})\neq (0,0,0);}

otherwise it is called singular. Vector t(x0,y0,z0){\displaystyle \mathbf {t} (x_{0},y_{0},z_{0})} is a tangent vector of the curve at point (x0,y0,z0).{\displaystyle (x_{0},y_{0},z_{0}).}

Intersection curve between a sphere and a cylinder

Examples:

(1)x+y+z1=0 , xy+z2=0{\displaystyle (1)\quad x+y+z-1=0\ ,\ x-y+z-2=0}

is a line.

(2)x2+y2+z24=0 , x+y+z1=0{\displaystyle (2)\quad x^{2}+y^{2}+z^{2}-4=0\ ,\ x+y+z-1=0}

is a plane section of a sphere, hence a circle.

(3)x2+y21=0 , x+y+z1=0{\displaystyle (3)\quad x^{2}+y^{2}-1=0\ ,\ x+y+z-1=0}

is an ellipse (plane section of a cylinder).

(4)x2+y2+z216=0 , (yy0)2+z29=0{\displaystyle (4)\quad x^{2}+y^{2}+z^{2}-16=0\ ,\ (y-y_{0})^{2}+z^{2}-9=0}

is the intersection curve between a sphere and a cylinder.

For the computation of curve points and the visualization of an implicit space curve see Intersection.

See also

References

  1. Goldman, R. (2005). "Curvature formulas for implicit curves and surfaces". Computer Aided Geometric Design. 22 (7): 632–658. CiteSeerX 10.1.1.413.3008. doi:10.1016/j.cagd.2005.06.005.
  2. C. Hoffmann & J. Hopcroft: The potential method for blending surfaces and corners in G. Farin (Ed) Geometric-Modeling, SIAM, Philadelphia, pp. 347-365
  3. E. Hartmann: Combinación de superficies implícitas con splines funcionales , CAD, Butterworth-Heinemann, Volumen 22 (8), 1990, págs. 500-507
  4. G. Taubin: Aproximaciones de distancia para el rastereo de curvas implícitas. ACM Transactions on Graphics, vol. 13, n.º 1, 1994.
  • Gomes, A., Voiculescu, I., Jorge, J., Wyvill, B., Galbraith, C.: Curvas y superficies implícitas: matemáticas, estructuras de datos y algoritmos , 2009, Springer-Verlag Londres, ISBN 978-1-84882-405-8
  • C:L: Bajaj, CM Hoffmann, RE Lynch: Trazado de intersecciones de superficies , Comp. Aided Geom. Design 5 (1988), 285-307.
  • Geometría y algoritmos para el diseño asistido por ordenador.
  • Curvas famosas