UNIVERSIDAD NACIONAL DE INGENIERIA FACULTAD DE CIENCIAS DE POST GRADO Y SECCION PROFESIONAL 2da ESPECIALIZACION DE SUPERFICIES, SOBRE DATOS DISIPADOS, MEDIANTE LA INTERPOLACION TRIANGULACION. TESIS PARA OPTAR EL GRADO DE MAESTRO EN CIENCIAS, MENCION : APLICADA MATEMATICA PRESENTADO POR : MARCO ERNESTO QUIÑONES ROBLES PERU 1998 LIMA Contenido Introducción 3 1 Preliminares 5 1.1 Criterios para elegir un método ............................................................. 6 1.2 Método de ................................................................................ 7 1.3 Método de Hardy .................................................................................. 14 1.4 Alcances de los métodos de y Hardy ........................................... 16 Shepard 2 27 ............. 28 Shepard ........................................................................ 32 2.1 Criterios para comparar dos 2,2 Formas de para cuatro puntos 2.3 Relaciones entre el número de lados, vértices, triángulos y nodos del casco Triangulación con vexo ............................................................................................... tríangulaciones 2.3.1 Criterio para contar el número de lados k ..................................... triangulación Criterio para contar el número de triángulos ................................ 2.3.2 3 40 42 47 Interpolación por con puntos disipados ............................................. 47 ............................................................................. 47 .................................................. 53 Interpolación por .......................................................... splines ........................ Interpolación por de grado 5 sobre Bilineal 66 3.1 Superficies de 3.2 Interpolación 3.3 Interpolación por 3,4 3.5 39 Splines splínes bicuadrátícos spline bicúbícos1 splines triangulaciones 69 3.6 4 Otros métodos 5 ..................... Alcances de los 4.1 Métodos de 4.2 Método de 4.3 Método y Renk ya 5.2 5.3 76 ..................................................................... Chile ................................................................ Quak C2Schumaker de bivariante Evaluación Numérica 5.1 bicuadráticos, bicúbicos Splines 79 93 ................................................ 107 Glough—Tocher Comparación entre los métodos de mediante la. 70 117 y de Hardy ........................... 117 de Shepard............................................. 118 Triangulaciónde los Métodos rutina. Renka Comparación de Interpolación por Híncales, Splines ........................................................................ 126 bicuadráticos, Bicúbicos Bibliografía 13.1 2 Resumen Este trabajo consta de cinco capítulos, en el primer capítulo tratamos sobre los Métodos de Shepard y de Hardy, donde se utiliza mallas rectangulares para graficar. En el segundo capítulo definirnos que es una triangulación y se tratan los diferentes métodos de triangular. En el tercer capítulo tratamos sobre los splines bilineales que requieren mallas triangulares. En el cuarto capítulo vemos algunos métodos para calcular las derivadas parciales en los nodos que requieren otros métodos de interpolación. Introducción Dado un conjunto de datos y) disipados en R2 y su valor de función. El objetivo principal de esta tesis es construir diferentes tipos de superficies que interpolen dichos 1 1 puntos. El trabajo se ha dividido en 5 capítulos: En el primer capítulo trataremos los métodos y Hardy que requieren una malla rectangular. En el segundo capítulo definire(z, y las distintas formas óptimas para triangular. En el tercer mos qué es una de y capítulo trataremos sobre una malla triangular. y para poder aproximar En el cuarto capitulo trataremos los métodos de Shepard las derivadas parciales en los nodos que necesitamos como datos de entrada en la mayoría triangulación de los métodos expuestos en los capítulos 1, 3 ,4 y 5 (por ejemplo, en el método de biciíbicos requeriendo splines bilineales, bicuadráticos y En el capítulo 5 se compara algunos métodos de Renka y de Hardy, y se. da un ejemplo de la interpolación por con los métodos de Cline bical bicos. Shepard inicialmente, nos sirve para encontrar una solución -única para el La Quak Schuma,ker, Clough Tocher). de interpolación. Se trata de un mecanismo eficiente para resolver problemas de triangulación Sheppuntos cercanos; como por ejemplo, encontrar los nodos más cercanos a un punto dado o splines bilineales, bicuadráticos, ard encontrar el circulo más grande que no contenga los nodos anteriormente mencionados. tienen una variedad de aplicaciones, tales como: el Los métodos de triangulación, tendido de cables, facilidades de ubicación, la construcción de un polígono factible para poblema 3 triangulación programación lineal con generación de una malla automática para un IV resticCifines, triángulo basado en códigos de elementos finitos. También se pueden encontrar aplicadones en topología, planimetría, hidrología y cartografía. La 'interpolación por superficies tiene aplicaciones en de carreteras, medición de la presión, etc. temperatura > 4 para la construcción topograÉa Capítulo 1 Preliminares En este capítulo definiremos algunos conceptos básicos que son útiles para la interpolación de superficies con puntos disipados. Como algoritmos más simples para la interpolación que no requieren usar una triangulación, usaremos en el Capítulo 3, los Métodos de Shepard y de Hardy que nos servirán también para hallar el gradiente en cada punto. Estos datos servirán para la interpolación cuadrática, cúbica y de grado 5. Definición 1.1 Sean a l , a2, • • • , a, en R 3. Entonces x = E(tiai) donde t i + + tn = 1 y t, > O, es la combinación convexa de los puntos a l , a2,..., a„. Los (4, i = 1, ,n forman los vértices del casco convexo. n. Se dice que x = E piel,: es í=.1 una combinación baricéntrica de puntos en R3 si p i +p2+...+pn = 1, donde Pi, P2, • • • , Pn Definición, 1.2 Sean ai,a2, an en 3 , pi. E R, i = son llamadas coordenadas baricéntricas de x. Las coordenadas baricéntricas no siempre son positivas. Si por lo menos alguna es negativa., el punto x está fuera del casco convexo. Dados los puntos (xi , yi ), i = 1, n, con f(xi, !fi) = z i , i = 1, . ..,n. El problema consiste en encontrar un polinomio iuterpolante y para esto, se distinguen métodos !octles y globales. Según Franke . Cóncepto 1.1 Dado un conjunto de puntos de datos. Se habla de un método local, si un cambio de datos (agregando, suprimiendo, o cambiando las coordenadas) cambiada la función interpolan te sólo en puntos cercanos al punto de influencia. Concepto 1.2 Dado un conjunto de puntos de datos, se habla de un método global, si un cambio de datos (agregando, suprimiendo o cambiando las coordenadas) cambiaría toda la furidjri interpolante. Observación 1.1 Distinguimos métodos globales de locales en forma relativa, de los datos, podemos escoger un subconjunto de estos datos, donde podamos utilizar un método local o global. Un criterio sugerido por Franker51 es: Si el conjunto de datos es moderadamente pequeño utilizaremos un método global, en cambio si es excesivo utilizaremos un método local, ya que si cambiamos un dato para hallar la nueva función interpelante tendríamos que resolver sólo sistemas de ecuaciones que dependan de los vecinos del dato cambiado. 1.1 Criterios para elegir un método Existen diferentes criterios para elegir un método. Los clasificaremos en importancia descendente. Estos criterios deben ser comparados y además son subjetivos. Precisión: Dada la función z f (x, y), el método debe describir las propiedades de la superficie, tales como concavidad, máximos, mínimos, etc. Por ejemplo, si nosotros estamos interpolando una esfera, al plotear los puntos deberíamos reconocer que es efectivamente una esfera. • Aspecto visual: La apariencia de la función interpolante z = f (r, y) es importante. Lo más útil es representar la superficie en forma dinámica con diferentes ángulos de vista. • Sensibilidad de Parámetros: Entendemos por parámetro al valor que se expresa como una constante en una ecuación. Los métodos de interpolación involucran uno rmás parámetros o ninguno. Si Se elige los parámetros, estos dependerán indirectamente de la. elección de un punto o cercanos. y de las distancias de sus vecinos más (zrk, yk) Algunos métodos son sensitivos al valor del parámetro, otros a las variables dependientes, otros al valor por lo tanto conjunto de parámetros dará. buenos resultados para una función y pobres para otros. (xk, yk ); uu Cuando se perturbe el parámetro, es deseable que la función sea estable. interpelante El tiempo en ejecutar el programa no es muy importante, a no ser que a m• extenso. .1. lempo: Requerimientos de almacenaje: El esfuerzo de programación es importante, ya que uno de sus objetivos es almacenar lo menos posible datos en la memoria. Mediremos el almacenaje en términos de matrices agregadas para almacenar grandes cantidades de datos, ya que los datos de entrada y salida los expresamos en términos de matrices. Los puntos son tomadas en cuenta como elementos de la matriz arreglo. (r k , yk , z i,,) 1.2 Método de Shepard En lo siguiente nos referiremos al trabajo de i 1, función = [13]. Dados los puntos n, con sus respectivos valores de función S Definición interpolarte 1.3 Sea S R 2: el problema consiste en hallar una Spaeth yi), 1, R con s-1 la función S(xbásica = = .de í, IR, del método (x, y); 1--+ E 5(Z, donde = E r distancia de un punto del plano al nodo k. wk (x,y) dk = vi(x — x k ) 2 + XY 7 Shepard y) w; í=1 (y k=1 definida como: W k (X , q es un parámetro real, — yk) 2 , 4 es la Definiendo y reemplazando en (1.1) tenemos y) Y) E wit±) 11,;(z., y):k=1 = ,: ti,„(x, y) E = A:1;y donde: (x, y)) í=1 q (1.2) 1 k== 7t. d r el numerador y el denominador, tenemos: En la fórmula (1.2), multiplicando por 7i, H r=I n V X i( ) (E k=1 dr r=1 n d q ti II Gil r r n 1 n #1: = (1.3) E( fi k=1 r ar cl r e )(11 dl) r r=I 1.2 La fórmula (L3) para el cálculo de S 1 cin # k, a ser va = numéricamente más i E {1, fórmula (1.2), ya que cuando evaluamos en el punto estable 01.kervación rol numerador de la fórmula (1.2) resulta 1/0, lo que no sucede en la fórmula (xi, y¿), (1.3). quela tiene las siguientes propiedades: Teorema 1.1 La función básica de 1. S 2. (xi, w 0. E Ví(X12 y1 >1. - 11/,(. , = 4. ruin k=i 5. Si i EShepard {1, n}. un interpelante de y) (.27,)i E<{1, S(7,-, O con < max (ami) y) O. , 71}, entonces c. n}, entonces y) S(u.-, G. Si; zie,>E 1, = ..., { ., S(x, = > n} , 7. Las funciones excepto en los puntos pi y) son donde las derivadas parciales 1, si q es un entero. de orden q Si q infinitamente diferenciables 1 y q es un entero, entonces las derivadas parciales no existen en los nodos. Si q 2, entonces as as ROn O. — < es cero, la superficie es un plano cuya Observación q es= igual = L3 Cuando —1 —1 a = as Pi Oy Pi Sí q 2 la superficie S tiene la apariencia de una superficie llana en (z1 ecuacion la vecindad de = z„)/n. Prueba: pi. = 1. Por definición tenemos: fi r 1 4(r)11) 11 I n r #í = n r =1 E( II k=1 n r r E( # r =k r (i n E[ r =k r 1 1 + - (1.4) (y. # =k r# k=1 # tenemos: - yr)21q1 (yí - yrrign 1 [(x, H n r =1 II (y - = r r n [(x - xr)2 + )2r/2 JJ [(x. - z..)2 + - yr)21'11 = := xi , n E[ I n k=1 y 1 k=1 #L Ví(Xí N) = Asignando x r r d (y [(x yi , r 1 # 4 E( ) r =k r Li (./i , Vi) k=l ñ ( y; r#í r= n n E[ u {(si - xr)2 + - y,-)2P/2 (1.5) k r k=i I r =I # = (.1 [(zí 2 12 xr) 2 +(yi - yr) 19 1' donde i V- j. En (1.4): Las sumas parciales del denominador resultan cero a excepción de la cuando k i, entonces tenemos: productoria 2 2 141 r r =1 v,(7,_, k=1=r r n r r =1 r 1 fi E( En (1.5): [(xt _xr )2 ±(yi j r =1 dl) xr) = 2 (1.6) 1. + (yi - ) r 2 12 = del término Si i j el denominador resulta cero a excepción y el numerador resulta cero, entonces Yr)2r/2 1(.7'i zr).' 11 (1.7) En total resulta: ki) = E .7,i, k=1 2. Trivial 3. 1, 7kvk(rs, ys.) --- S X ( 1.5 yt) = r n V Z i = rt r =1 n ri E( II = t( ) Y) =r r (5,7) 1 ic=1 II = (I) di: rc i=1 .. ft 1( i=i n k=1 y Vi(xf y)—yL s=1 1 10 í=1 1 # ctO # =1. j= y =1 = li 1 =1 ta d' O Q. mil! < 7.¡ < .= I, ...,y)r y) tenemos: (min zi )1/i (x, Tomando V¡(x, ( z "aún =1. < max ze - I — (por ( 3 )) IMr, t O, tenemos > 3. Utilizando (4): min > y) c. Por definición. S(x., = 11 < max .z¿ t =1 5. Como z y) y) max zi)Vi(x, 11-_, zi)Vt() ruin z; I min < (maxzi)1;,(x, E( i=1 sumatorias 71. y) S(x, < (x, y) c < ruin O sE,{1,—,n) > y) c. Resulta c ,n} < < S(x, max es una interpolación de la forma: Otra propuesta de 7. (y (x ShepardrI3j, fG donde las derivadas parciales = Dzi m (x, y), son—dadas. yi )z iu ]Vi (x, i — tiene las siguientes propiedades: Teorema 1.2 La función S 1 de , 71, (zz „z y ,), = y) 2. 3 4. n}. y;), i E (1, Shepard .7. S1 es un interpelante de , (x;, > V; (x, (,:r = 1, Y) k=1 y) :nin {(1: E t=I (x, rnax (2,:) 7:¡)Z,r 71. + — — (y 11 + y) y y). "5: . Si(r, — S(x, y) > c, entonces < O con E 5. Si ,zí > 6. Si z; c, i entonces i y) 11, ..., n}, n}, entonces (y í=1 S1(27, y) y). > E[(7:— z:;)z,.,+ (y — yí)zyjIli(27, = {1,..., Si (x, = c+E[(x — xí)z x ,-1- — yí)zjifi(x,y). y) son infinitamente 7. Las funciones V excepto en los puntos Las derivadas es un entero. Sí q = Ví(zr,son de orden q 1 si qdiferenciables entonces parciales no existen en los z í . las derivadas parciales — nodos. as, Si q 2, entonces y = Prueba: ay 1. Como Si (x, (y = S(x, < as, = z., 14) 1, q E Z, y), evaluemos en el punto +E{(x — xi )z„ + — yi )z„,]K(x, por el Teorema 1.1. O (x&, (x;) Yi) = Aziy yi) 2. Demostrado en el Teorema 1.1. 3. Demostrado en el Teorema 1.1. 4. Por (4) del Teorema 1.1 tenemos y) mí_n < 5. Si O z, > = SiEU* (x, y) — < max O en (4): min zí > + (y E[(X — íaI + í=1 y) + (x, y) — yi)zy Ndx, (y + E[(x )zz, + y) — yjzy,1Vi(x, < (T I?J) > < max (y íE{1,n} + 7[(x — 1.11111 y) tE{i,„.,n} (c, (x, < yt )zy j17,(x, (y zi ,1=1 y) — y i )z-v jVí (27, - y). + y) — Y%)zv.11/1(› 6. Utilizando (4): (y y) E[(ze $=1 5"1 (x.> — + e+ y) y) r_z Si (7-, (y < + V [( 71 (y + Eftx — i=i = Si (x, 7. Por definición. Y) Y + y) Shepard,E y) y) Etuk(:r, y)Lk(x, y) F(x, y) y z = k=1 Lk 1, n y para i = ..., k=1 t.1)k tenemos 7.1)k E k=1 Lk(x, = (y Z1, Utilizando los polinomios de S1 (x, = wk(x, y)LLk(x, función nodal: k /4, nodal, k, í E {1, n}. . yi) = k=1 C 2,, y) es decir: 10=1 Lk(xk, yk) = zk, Por ejemplo, para fr. es una función tok(x ) k = dr, = f(X, O un,(x, — 14)zy jZ(x, se tiene una interpolación de la siguiente forma: Generalizando el método de donde y). vi(x> r= I (x-xr) r r (x k — .v r ) =r k r I r r lt st• La función= E y) k=1 para interpolar podemos calcular la siguiente + — xk) + z„„ — yk)i/ wk(x, Lagrauge Yr 1 11 ) — Yr) = zk. (yk fr. y) va a ser una función F(2 13 ya que interpolante F(zk, yk ) = zk . El método de puede ser usado para la aproximación donde se busca una función de la forma P(%, x, y) donde a0 , a„ son constantes a Shepard tambié`n * ser encontradas, dichas constantes se encuentran al minimizar la pondera„, al, ada de la diferencia de los cuadrados de P y el valor de función sumatoria zk ••• donde como [zi,de-funciones P(au, al, es la combinación o f." d-2 k u otros. (Ver exp(-adDdk-2 1, x, Y)]2yWk(L) Y),y) se puede escoger [5]). mononiales W4(x, Franke 1.3 Método de HardyDados 1043 puntos an, n, con sus respectivos valores de la función problema consiste en hallar una función = ..., H: R2 R con el i zi, interpola.nte R(x¡, yi ) = zi = El método de. (ver es un algoritmo simple para la interpolación. Es ...n.. un método global, y no requiere Hardy Spaetb [13]) Definición 1.4 Sea S R 2 : donde los función del método de Hardy se define como: triangulaciones. 1--> E lay) y), denotados por (x ) y), =dependen ak .Bh (x, de ((x x4)2 (x que es la distancia del nodo k a cualquier punto del plano y k 1, n son Bk(x, Bk (r4 ), r4 = + - x4)2)1/2 constantes a ser calculadas por las condiciones de interpolación corno veremos en los XY, ak, = ejemplos L5 y 1.6. 1.4 Las funciones las siguientes funciones: Obs.ervación y) son llamados funciones radiales y se recomienda Bk{x, Re*, donde R4, es un parámetro que no debe B,(x, = Mrk) = [( - 2'k)2 + - /./k) 2 ± ser muy grande, es otro parámetro dado. (rZ. + iirre ln((rZ + Hi)q.), qk 14 • El método de puede ser usado también para la aproximación donde se función de Sliepard la forma 'nao , a„, x, y) donde a, son constantes a bilsca ser-una encontradas, dichas constantes la ao , a i , ..., a lse , encuentran al minimizar ada de la diferencia de los cuadrados de F y el valor de función •• o como d-2 k , an, 2",1i)]2 Wk(r, y u otros. (Ver exp(-ad)d-a ic [5]). mononiales suinatoria zk y), É[zil - nao, di, • donde F es la combinación de funciones ponder- y) se puede escoger Wk(x, Franke 1.3 Método de Hardy puntos Dados i 1, n, con sus respectivos valores de la función tos problema consiste en hallar función (xi , yuna = ..., i ), El 3, ... n. de i R con interpola.nte H:R2 el R(x i , yi ) = [13]) es un algoritmo simple para la interpolación. Es (ver un método global, y no requiere u-iétodo Hardy Spaetb triangulaciones. Definición 1.4 Sea S R 2 H R, la función del método de Hardy se define como: : donde los H y), denotados por E y) (T, y), al,Bk (x, 1c=1 dependen de que es la distancia punto del planorj, = (( yx _ zi,)2 k 1, B k (x, del nodo k a cualquier B k (r k ), zo2)1/2 son -n constantes a. ser calculadas por las condiciones de interpolación en, los XY,como ak,veremos = ejemplos y 1,5 Le. Observación 1.4 Las funciones las siguientes funciones: u) son llamados funciones radiales y se recomienda Bk(x, [(x Bk(x --= B(rk) = xk) 2 + donde es un parámetro que no debe — yk) 2 ± ni", serÉfrk) muy grande, es otro parámetro = (rZ. + Ri)q* In((rZ + Ri)q*),dado. yk 14 14 se comportará de acuerdo a los valores de La están entre cero y 1, la función Si los + valores Rirk de ln((ri + Rt)lk) funcirin "^k) = O la función ln(B(rk) B(rk) 14 será y su gráfica se verá ovalada hacia arriba, en cambio si B(rk) B(negativa rk ) = [rit + R.2• . se comportará en forma creciente. B(rk) > B(rk)El método de Hardy tiene las siguientes propiedades: B(rk)ln 1.3 Teorema H es un interpelante de I. 2, La función n}. i (zi, y) es con respecto a la traslación y rotación. Bkis x, invariante 3. La matriz del sistema de ecuaciones para hallar es una matriz simétrica. ak Prueba: 1. Por definición de y), se elige los coeficientes a de tal manera que H (x, Bk(x, interpolarte. 2. Inicialmente utilizamos el siguiente cambio de coordenadas (traslación) y Luego, 9= — yk. y) es =x el sistema de coordenadas nuevas, tenemos — xk rotando Asignando a y xt= rccoso — 9sent9 = 5sene + flama y reemplazando en la función podemos verificar que la función no varía, luego := concluimos que la función := x', a la traslación y rotación, ya que reemplazando á es Bk x. Bk con respecto y tenemos: invariante Ahora teniendo en cuenta=que— xknoj dependen = — yk de x e y tenemos: Bk (i,•fj) [Ci2 + fj 2 RIY4. Rk — 5seng, "sen0 + 9cose, elevando al cuadrado ambasicos9 ecuaciones y luego=sumando y simplificando, se llega x'2 x2 5) + varia. FUI, = Reemplazando en + b2. se tiene: y asignando r Bk(I, x' p) y = [(x'2 + y'2 + := 15 y' tenemos que := y) no Bk(x, de H y B, ya que definiciorn Por 3. y por (y y — 370 2 + — B(r,f,) y) h) 2 E , = 91- es una ak Nrk) función interpolante k=I se plantea el siguiente sistema lineal: + ar B = donde B = Bik = [Gr'i ,2 xk)2 2 Rkr • Luego se concluye que B es una matriz, simétrica ya que se puede demostrar que B es simétrica cuando Para la elección de En forma análoga Bík = Bkí. R2)9 O B(rk) = (T.?, + In(rk + le)q. Hardy [13] recomienda: Rk, V = ( — rnax(rnax;,/, 10 — xkl 1.4 Alcances de los métodos de — ?!k l)) 2 y Hardy Shepard está en sus curvas de nivel, en Shepard el método de Hardy la mayoría de curvas son ovaladas, ya que cuando hallamos • La diferencia entre el método de Hardy y curvas de nivel, resultan compuestas por la suma de funciones circulares estár en forma lineal; en cambio en el método de también están compuestas por Shepard funciones circulares pero no de forma lineal. ssls Ambas funciones siempre dependen del parámetro q. Para resolver ambos métodos se plantea sistemas de ecuaciones lineales de n * ecua clones con n incógnitas, donde n es el número de datos y cuando n no es muy grande, el sistema planteado es factible de resolver. igura, 1.1: de Punctilli para el Ejemplo 1.1 shepard /os puntos 1.1 de 1, . Encontrar ETérnplóla Dados de (3, 6 ), 6) y sus respectivos valores y2 5. y(2:1 su, gráfica. = ( 2) funcicírr z i = %:!2 = Solución: Shepard funcídn está. dada por: La. función de Shepard r r 1 i = ;(2 ) 11 )1 t=1 para nuestro caso tenemos n 2, q V t () 2. E( k=1 r = = n r „1 1-1 # = = = 6)2 (y 6 )2 2 (y 6)2 6) + (y 6)2 (x 3) (x 3) 2 (y 6)2 —8 )2 + —3 )2 (Y 6 )2 6)2 + — +(y — ( — 1[( — 2 (y 6)2 (x 6)2 (y —6)2 +(x —3) - + - 3)22+ (y— 2+ 1 — 6(3)2 + — 6) ) (x 3) 2 +(y — 6)2 ' (x 6)2 + — + — + — — 6 5 {(x — + — )21 + un — + (11 — 5 es — 1, 5(6, 6) 5 2 C.,‘,alculeulos 171 , V2: Se comprueba: 5(3, 6) y como O tiR > En la figura y) 2 y) 1, 1 o, i e {1, 2}, E interpolante, = = = $(x, y) O y también como q 2 < S(x, < 14(X, = 1> y) 5 (.2:, se observa que el y por encima del piano z 1. -.1 z paralelo al plano = =O y) 2 — 1, y) 5, la gráfica está = O, P puntos (3, 6,ay 1) ,.y (6, 6, 5) podemos hacer pasar un plano m'in S(x, O. = O, i E {1,2} > = los = m.ax S( x, = O Figura 1.2. el Ejemplo 1.2 Fanctón de.7)tiepard para 2 0 0 5 0 2 E'jemplo 1.2 Dados los puntos ( 2'11Y1) = ( , ), (x2, y2) = ( , ), (x3, ya) = ( , ), 0 et 4 , y4) = (3, 4), (y:5, Y.5) = (4, 1 ), (z:6, ye) = (5, 0), (Y:7, Y7) = (6, 7), (z8, yrt) = (8, 3), 10, 2), (x io , y io ) = (10, 9,) y sus respectivos valores de función z1 = 1, z2 = 2, ( 1;9 , = 4, = 7, z.6 4, z 7 6, zt, = 5, z, 6, ziu = 4. Graficar la función de Shepard S. Solución: En la figura 1.2 se observa que ruin 5(x, y) = 1, max S(x, y) = 7, la función S es una n} podemos pasar un plano i E {1, función iuterpolaute, y para los puntos (xi, yi, paralelo al plano Y = 0. Ejemplo 1.3 Dados los puntos (X L , y.) = (3, 6), (x2 , y2 ) = (6, 6) con sus respectivos valores de función z 1 = 1, z 2 = 5, q = 2 y también 1, zx l = = 1, 1, zx 2 = = -1. Encontrar la función de Shepard So!ución.: La función de Sliepard S1 está dada por: n. Si(x, = 7[z, +(x- x,)zr, + (y - y,)4„jizt(x, y), s=1 para nuestro caso n = 2, y = 2. Calculemos Vi , V,: V I z, y) (x - 6)2 +(i/ 6 2 ) 2 - 3)2 + (y - 6) V2(x, 2 ( x - 6)2 + (y - 6)2 + (x - 3)2 +(y- 6) 1[(x - 6) + (y - 6) 2 ] S1 (x, y) = 2 2 - 6)2 + - 6) + (x - 3) + (y - 6)2 5[(c - 3 )2 + - 6 )21 2 _ 6)2 + _ 6)2 + _ 3)2 ± - 6)2 + (y - 6)1[(x - 3)1 + (y - 6)1] - 6)2 + (y - 6) 2 + (x - 3) 2 + (y - 6) 2 6 -1 1 2 3 ) + - 6 ) 2][( 2' - 6 ) + - )( ± [( ' 6 2 +(y -3 2 ) + " 3 )2 + -6' ) (y 6) ' terpolante y a diferencia del Observación 1.5 En la figura 1.3 se observa que S c es un in Ejemplo 1.1 trazamos planos tangentes a los puntos (3,2, 1) y (5, 4, 2), estos planos en 20 lo L3 ip,13.ra, de 1.'uncióin 51 para el Ejemplo 1.3 Shepard lo Figura L4: para el Ejemplo 1,4 de Funci4h Shépard Si 22 este caso no serán paralelos al plano z mas bien las normales de dichos planos serán paralelas a (1,1, -1) y (1, -1, -1). = O,0 2 ( , ), (x2, y2) Ejemplo 1.4 Dados los puntos (x4,1/4) ( 3, 4 ), (0,5), (x3, y3) ( 5, O), (DT, 1/7) ( 4, 10), (x6, Y6) 0 ), ( 8, 3), ( 6, 7 ), (10,9) y sus respectivos valores de función z1 1, z2 2, = (=L' Y') = = (21 (1, 1), 5, 6, 4 y también z3 4, z5 =7, z6 =4, z7 6, = (xs, Ya) = (xs, Ys) = = = (-1, 1), i 6, 10. 5, i = 1, = = = (xio, = (xo, de para q 2, se ve en la figura 1.4. La función (z a,,, z y ,) = = z8 = zg = zio = = yo) (10, 2), Solución: . . , Vio) (z„, z v ,) = .. , interpolante Shepard = En la figura 1.4 se pueden construir 5 planos tangentes cuyas normales son paralelas al vector (1, 1, -1) y 5 planos tangentes cuyas normales son paralelas al vector (-1, 1, -1) f 10}, también se á E {1, debido a que cuando g 2 se tiene observa que la función es una función a af z„,6), = 1, = (3, 6), (x2, V2) = (6, z yz „2 ayi interpolante. Hallar la función de Hardy S donde Ejemplo 1.5 Dados Solución: = (xi,Y1) = B(rk) = La matriz de Hardy está dada por: B tal que = [B(i,i)12x2 B zl = , R 5, q . . .-1, = = Riq . j) 0.0912 B(i, ((xi - xj) 2 0.0912=0.5102 0.5102 =[ 23 - yi)2 R2 r 1.4. = lo Figura 1.5. Función de Hardy para el Ejemplo 1.5 24 hallar 8 se plantea el siguiente sistema: z Para 13' aB = 2.0248 -0.3621 a -= 1z T5*1 T -0.3621 2.0248 T (0.2143 = [ 9,* 7617) a 2 E aT =k=1 0.2143[(r 3)2 (y 6)2 1.96]-1 S = akB(rk) = aiB(ri) + a2B(r2) La función de Hardy se ve en la figura 1.5. - + - + = 6)2 (y 6)2 1.961-1 + 9.7617Rx - + - + ( 3 , 6 ), (x2, Y2) ( 6 , 6 ), z1 1, z2 5, q Hallar la función de Hardy S donde = = (xi,Yi) = = 2 4 2 2 2 Solución B(rii ) = (rj, // )q1n(r1, + R )/ tal que La matriz de Hardy está dada por: B Ejemplo 1.6 Dados (N j) datos tenemos: B(i, = ((xí - xj)2 + = [B(i, j)]2x2 - xj)2 + R2r1n ((xi - yi)2 -0.3433 -0.2185 B= -0,2185 -0.3433 -1, R 1.4. = = Reemplazando - yi)2 R2 )q . Para hallar S se plantea el siguiente sistema: B B-1 aT = zT z T* -4.8937 3.1137 3.1137 -4.8937 aT =(10.6746 -21.3547) 2 S al E aT k=1 3)2 (y 6)2 1.96]-1 S = al„ B(rk) = B(r1 ) + a3 /3(r2) La figura 1.6 muestra el gráfico correspondiente. + - + = 0.2143[(x 25 6)2 (y 6)2 + 9.7617[(z - + - + 1.961' 10 Figura 1.6: de Hardy para el Ejemplo 1.6 •Ftinció- U 26 Capítulo 2 Triangulación El objetivo del Capítulo 2 es la triangulación, que nos permite generar una función única para la interpolación. Para esto definiremos lo que es una triangulación, presentamos criterios para comparar dos triangulaciones con cuatro puntos y luego generalizaremos estos criterios para n > 4 puntos. También daremos criterios para contar el número de lados, triángulos, vértices y las relaciones entre ellos. Definición 2.1 (ver Hoschek/Lasser[7]) Dado el conjunto de puntos y,), i E {1,...,N}} en el plano XY y sea T = (ai ,13 j , -O, 1 < ay < N, p, = 1 < fi, < N, 1 < < N, (cti,i3i,yi) EN xNx N, N < o°. T define una triangulación si: 1. Para cada j E {1,... , M} los vértices son los vértices de un triángulo Ti • 2. Cada triángulo es definido exactamente por tres puntos de p que son vértices de este tnángulo. 3. n T3 = 0, paras .j. 4. La unión de los triangulos Tk, k E {1,..., N} es un casco convexo'. 'Casco convexo es un conjunto convexo formado por la unión de triángulos 27 Ejemplo 2.1 Ea una triangulación No es una triangulación 2.1 Criterios para comparar dos triangulaciones para cuatro puntos Presentamos algunos criterios para la triangulación, dado que existe la posibilidad de triangular de diferentes maneras para un conjunto de puntos. Con estos criterios tratamos de encontrar una mejor triangulación optimal. Diremos que una triangulación es mejor cuando los triángulos más agudos o más obtusos han sido descartados. En lo que sigue trataremos los criterios encontrados en Hosdiek/Lasser[7]. 1. Criterio del Max-Min del ángulo La triangulación T de cuatro puntos es mejor que la triangulación t si amin,(T) > donde: a mi,,(T) = min Icc(Ti ) : Ti E T, j E {l,2}}, cy,‘„(i1) = min tk E t, k E {1,2}} : y a(T5 ) es el ángulo más pequeño del triángulo T5 , Ti E T, j E {1, 2}, ce(ilk) es el ángulo más pequeño del triángulo t., k E {1, 2}. 28 Ejemplo 2.2 Figura 2.1: cymin(t) > cx.i.(T) 't es mejor que T 2. Criterio del Min-Max del ángulo La triangulación T de cuatro puntos es mejor que la triangulación si cr,„,z (T) < nm,„,(7) donde: a,,(T) = max{A(Ti) : Ti E T, j e {1,2}}, a,ax (7) 1) max {A(1 tk E P, k E {1, 2}}, 29 y E es el ángulo más grande del triángulo fi, A(Ti) IT; el ángulo más grande del triángulo kE 2 tk, 11, j. E T, j E Tri 2}; II, es A(t) Ejemplo 2.3 Figura 2.2: a m (T) a.(t) < es mejor que T 't 3. Criterio de la diagonal más corta La T de cuatro puntos es mejor que la triangulación 30 si d triangulación t donde < ci d de la d = pipk, son las diagonales del cuadrilátero cuyos vértices son los nodos = pipi triangulación. Ejemplo 2.4 Pi pt Figura 2.3: a T es mejor que d 4. Criterio del círculo Dado cuatro puntos que forman un cuadrilátero, la 31 triangulación T se forma al trazar una dé las diagonales del cuadrilátero, de tal forma que los círculos circunscritos en cada uno de los dos triángulos formados no contengan el otro vértice del cuadrilátero n su interior. Podría darse el caso en que el vértice caiga en la circunferencia; en este e caso la triangulación T ya no seria única debido a que existirían dos triangulaciones posibles. Comparación de los criterios Definición 2.2 Una triangulación T es localmente óptima, si cada cuadrilátero formado por un par de triángulos, cumple un criterio anteriormente dado. Ejemplo 2.5 (ver Hoschek/Lasser[7]) • Ambas triangulaciones son localmente óptimas por el criterio del miu-máx. 2.2 Formas de triangulación Para comparar dos vectores utilizaremos el criterio lexicográfico. Dados dos vectores de las triángulaciones T y t, definidos por a(T) (a h a2, 32 , an), con los ángulos más . • • • , éTé,, YDiremos que a(T) < a(l pequeíiosjgrandes en cada triángulo, y a(i) = si existe algún k E N tal que aí = rn para 2, .. , k— I} y cri < ai para i E {lc, n}. Definición 2.3 (ver Hoscheck/Lasser[7]) Dados los ángulos ati y ai como componentes de los vectores a(T) y a(P) que cumplen con un criterio anteriormente dado. Entonces una triangulación T de un conjunto de puntos es globalmente óptima si 4 a(T) > a(T) ó a(T) < ce(i ) para cada triangulación T de p 1. Criterio lexicográfico maxmin Para cada triangulación T sea el vector a(T (a1 , a2, = , at), aquel cuyas componentes están ordenadas en forma creciente, cij es el menor ángulo del triángulo Ti, j E t el número de triángulos. Entonces diremos que la triangulación T r es mejor, si a(T r ) es mayor o igual que todos los a(T'), i r. 2. Criterio lexicográfico minmax Para cada triangulación T , sea el vector A(T (A1 , ./42, . A1), cuyas compo- nentes están ordenadas en forma decreciente, k es el mayor ángulo del triángulo j, j E {1, . . . , 1}, 1 el número de triángulos. r Entonces diremos que la triangulación T es la mejor, si A(T r ) es menor o igual que todas las A(T i r. Ejemplo 2.6 Mostramos las tres posibles triangulaciones {T `}.=, asociados con los puntos siguientes: Pl = (-2,3), Pa = (1,5), P3 = (3, 2), P4 = 33 0), P5 = (0, 3) Por el criterio lexicográfico, la. distribución de vectores asociados con estas diferentes triangulaciones son: Min-Max ángulo Max-Min ángulo a(T 1 ) = (0.53, 0.59, 0.67, 0.91) A(T = (2.02, 1.57, 1.48, 1.25) a(T 2 ) = (0.20, 0.53, 0.59, 0.78) A(T 2 ) = (2.79, 2.02,1.57,1.43) a(T = (0.14,0.53,0.66,0.78) A(T 3 ) = (2.79,2.02,1.57,1.43) Comparando los vectores a(T ) correspondiente al criterio lexicográfico del max-miu tenemos: i) a(T 3 ) < a(T 2 ) < a(T 1 ) Entonces T 1 es la mejor triangulación. ii) A(T 1 ) < A(T 2 ), A(T < A(T Para este caso no podemos aplicar el criterio lexiográfico del min-max.pem podriamos escoger A(T 1 ) porque es menor que A(T 2 ) y A(T 3 ), la cuál sería la única alternativa para este criterio. - 34 Observación 2.1 (ver Niel'•on/Frankelll]) Los métodos de tríangidación del maxruin y el min-max difieren a lo más en algunos triángulos en el orden del 10% como lo muestra en el siguiente gráfico: MIN-MAX TRIANGULACION MAX-MIN TRIANGULACION 3.Triangulación de Thiessen Para entender qué es una triangulación de Thiessen (ver Cfine/Renka [2]) definamos qué es un lado localmente óptimo de un triángulo en una triangulación T. Definición 2.4 Un lado de un triángulo en una tríangulación T es localmente óptima si y sólo si: 1. Dicho lado pertenece a la frontera del casco convexo o, 2. el lado está en el interior del casco convexo y es la diagonal de un cuadrilátero aplicando el criterio lexicográfico del Max-Min o el criterio del círculo. Se dice que el cuadrilátero con el lado dado forma una triangulación T localmente óptima. 35 Definición 2.5 Una tríangulación es de Thiessen cuando todos los lados de cada triángulo de una triangulación T son localmente óptimas. Para su construcción definamos los siguientes conceptos: Definición 2.6 Sea pi un nodo de la tríangulación. Definimos como Fi la región (el polígono) de Dirichlet (también Thiessen, Voro.uo0 asociada al punto pi, como la clausura de todos los puntos más cercanos a pi que a cualquier otro nodo pi, i # j. Expresado matemáticamente: 1x e R2/ d(x, pi) 5_ d(x, pi), i j}, donde des la distancia euclideana; pi, pi nodos. Definición 2.7 Sean Fi y F,.i # j, regiones de Dir ichlet, asociadas a los puntos pi, pi respectivamente; entonces, si n Fi y la intersección es un conjunto que tiene más de un elemento, diremos que pi y pi son vecinos fuertes. En cambio, si la intersección es el conjunto unitario, diremos que pi y pi son vecinos débiles. Este último caso se genera cuando 4 puntos o más pertenecen a una circunferencia, porque el centro de la circunferencia es un vértice de un polígono de Dirichlet. P4 P2, p4 son vecinos fuertes 36 pi , p4 son vecinos débiles Construcción de la triangulación de Thiessen (Criterio del Círculo) Una triangulación de Thiessen T se obtiene de la siguiente manera: Si los vecinos son fuertes se unen mediante un segmento cada par de estos vecinos, donde dicho segmento forma un lado de un triángulo en T. Previamente definiremos qué son vecinos débiles en una circunferencia: Dados un círculo C con centro c, pi puntos de la circunferencia del círculo C y sus correspondientes regiones de Dirichlet í = 1, ...n, diremos que son k vecinos débiles de la circunferencia si existe / E {1,...,74 tal que FinFine= {c}. Teniendo k vecinos débiles que pertenecen a una circunferencia, se construye k — 3 segmentos que no deben intersectarse y además los extremos de dichos segmentos son vecinos débiles de la circunferencia. De esta manera,cada segmento forma un lado de un triángulo de la triangulación T. Observación 2.2 En la triangulación de Thiessen los vértices de los polígonos de Dirichlet son circuncentros de la triangulación T. Los polígonos de Dirichlet estan compuestos por las mediatrices de la triangulación T. Definición 2.8 (Triangulación de Delanauy [3]) Dado un conjunto de puntos y dado una triangulación T. T es una triangulación de Delanauy, si cuando circunscribimos una circunferencia en cada triángulo de la triangulación T, el número de puntos interiores del conjunto p en la cír37 cunferencía es cero y sólo tres puntos del conjunto p que son los vértices del triángulo pertenecen a dicha circunferencia. Observación 2.3 Dado un conjunto P de puntos. En ambas tríangulaciones de Delaunay y Thíessen se aplica el criterio del círculo o el criterio lexicográfico del Max-Mín. En la triangulación de Delaunay hay una restricción que consiste en que por cada tres vértices de cada triángulo se puede circunscribir una circunferencia que no contiene más que estos tres puntos del conjunto P. En cambio en la triangulación de Thíessen no hay restricción para la circunferencia, es decir a dicha circunferencia pueden pertenecer tres o más puntos. Se concluye que la Triangulación de Delaunay es un caso particular de la Triangulación de Thiessen. Mostraremos los siguientes 2 gráficos: Ejemplo 2.7 Figura 2.4: Polígono de Dirichlet asociada con la triangulación de Delanauy. En la figura 2.4 mostramos la triangulación de Thiessen que también es una Trianguladón de Delaunay debido a que si nosotros circunscribimos una circunferencia en cada 38 triángulo, la circunferencia contendrá solo sus tres vértices. Además, observamos que el centro de cada circunferencia son vértices del polígono de Dirichlet. Figura 2.5: Triangulación de Thiessen y sus respectivos polígonos de Dirichlet. En la figura 2.5 mostramos la triangulación de Thiessen que de antemano no es una triangulación de Delaunay debido a que en cuatro puntos del conjunto P podemos circunscribir una circunferencia. Para dichos cuatro puntos tenemos la opción de triangular de dos diferentes maneras. 2.3 Relaciones entre el número de lados, vértices, triángulos y nodos del casco convexo Dada una triangulación T cualquiera, nos interesa encontrar una relación geométrica del número de lados k de todos los triángulos con el número de nodos en la frontera del casco convexo rz,. y también encontrar una relación entre el número de triángulos NT con el número de nodos en la frontera del casco convexo. 39 Estas fórmulas serán demostradas por inducción y por el criterio de Poincaré. 2.3.1 Criterio para contar el número de lados k Sea k el número de lados, n = número de puntos de interpolación, n,. = número de puntos de frontera del casco convexo, ni el número de puntos de interpolación interiores. El número de lados k deducimos de de la siguiente manera (Figura 2.6): De cada punto de la frontera del casco convexo construimos tres vectores uno que parta al interior del casco convexo y dos que partan a sus nodos vecinos en la frontera, así tenemos: 3n r — nr vectores que se identifican como una suma parcial del número de lados. Despues de cada. punto interior construimos tres vectores que partan de cada nodo interior del casco convexo pero que no se encuentren con los vectores que tuvieron su origen en la frontera del casco convexo; esta construcción se puede desarrollar con excepción de un nodo. Luego el número de lados será 3 * — 1).entonces tenemos: = 3 ra, — n,, -1- 3(% —1) k = 3n — 3 — ny. Observación: Está relación tambien es válida cuando se tiene algunos puntos en linea recta. Esta relación esta dada por Spaeth [13], la enunciaremos y demostraremos mediante el siguiente teorema: Teorema 2.1 Dado T una tríangulación, NT número de tríangulos, n,. número de podas del casco convexo. Entonces se cumple: k 3n — 3 — n,. Prueba: Por inducción: (a) Para. n 3 tenemos. 3(3) — 3 — 3 = 3 40 (b) Supongamos que para el caso n > 3 la, afirmación es cierta: k = 3n — n.y. — 3. (c) Veamos para el caso n+ 1 Si el punto agregado pertenece al interior del casco convexo, entonces el número de lados aumenta en tres, es decir k = 3n — TLr - 3 + 3. entonces k=3(n+1)—rLr -3. como antes Si ei punto agregado pertenece al exterior del casco convexo existen dos posibilidades:Si ni. aumenta en 1, el número de lados aumenta en 2. k = 3n — 74. — 3 + 2 = 3(n + 1) —(n, + 1) — 3. Si aumenta, el número de lados aumenta en 3. k. = 3n — n,. — 3 + 3 = 3(n + 1) — nr. — Ejemplo 2.8 n = 9, n,. = 5, ni = 4. 3 Figura 2.6: Criterio para contar el número de lados. 41 Tenemos k = 3(9) 2.3.2 3 — 5 = 19. Criterio para contar el número de triángulos Sea k el número de lados, n el número de puntos de interpolación, n,. el número de puntos de frontera del casco convexo, NT el número de triángulos, ni el número de puntos interiores. El número de triangulos NT deducimos de la siguiente Figura 2.7: De cada nodo de la frontera del casco convexo podemos construir dos vectores de tal manera que al contabilizar los triángulos mediante estos vectores tendríamos, el número 2(n — ni) — n,. = 2n,. — n,. = n,. Ahora de cada nodo interior sólo tracemos dos vectores que tengan su origen en cada nodo, y cada vector este contenido en un solo triángulo; de esta manera dada la condición se cumplira para todos los nodos interiores a excepción de un nodo; luego el número de triángulos a. contabilizar con los vectores que. tienen origen en los nodos interiores será: 2(ni — 1). El total de triángulos en la triangulación T es entoces: = 2(n — ni) — + 2(ni — 1) es decir: NT = 2n — —2 Observación: Esta relación es válida cuando se tiene algunos puntos en linea recta Esta relación esta dada tambien por Spaeth[13], lo enunciaremos y demostraremos mediante el siguiente teorema: 42 Teorema 2.2 Dado una triangulación T, ?I T sea el número de tríangulos, n,. el número de nodos de la frontera del casco convexo. Entonces se cumple: /VT = 2n — — 2. Prueba: Por Inducción 1. Para n = 3 tenemos: NT = 2(3) — 3 — 2 = 1, es decir la fórmula se cumple. 2. Supongamos que la afirmación es verdad para n : NT == 2n — —2 3. Veamos para el caso n + 1 Agregamos un punto en el casco convexo; si el punto pertenece al interior del casco convexo, ya sea que pertenezca a un lado, entonces la triangulación aumenta en dos triángulos. Resulta: NT = 2n — — 2 + 2 = 2(n + 1) — nr. —2. Entonces la afirmación es correcta para este caso. De otro lado, si el punto agregado está en el exterior y si el número de la frontera del casco nuevo formado no aumenta, entonces el número de triangulos aumenta en 2. En este caso tenemos: NT = 2n — — 2 + 2 = 2(n. + 1) — ny. — 2, y la afirmación es también correcta. Al final, sí el número de nodos de la frontera del casco convexo aumenta en 1 el 43 / numero de triángulos aumenta en 1 y tambien se cumpliria lá al-ir:Mac:mn por NT = 2n — —2+1 = 2(n, + 1) — (nr + 1) — 2. Ejemplo 2.9 Dados n = 13, n,. = 8 Figura 2.7: Criterio para contar el número de triángulos. NT = 2(13) — 8 — 2 = 26 — 10 = 16 Otra forma de demostrar estos últimos resultados fué desarrollado por Delaunay utilizando la fórmula de Poincaré que enunciarnos en el siguiente teorema: Teorema 2.3 La relación entre el número de regiones r de Dirichlet, número de vértices n, .rnimem de lados k en un plano está dada por r + n, — k = 2. Prueba La demostración se realiza por inducción sobre r, sobre n, o sobre k. Sólo desarrollaremos la prueba por inducción sobre r: 44 1. Pala r = 2 tenemos: 2 = k — n + 2 luego k = n, es decir, la fórmula se cumple. 2. Supongamos que la afirmación es verdad para r, esto es: r =k — n+2 3. Veamos para r 1: Si las regioneshan aumentado en 1 quiere decir que a aumentado un lado es decir: (r+ 1) = (k + 1)— n+ 2) Entoces la afirmación es correcta para este caso. Delanauy se da cuenta que al multiplicar el número de triángulos por 3, el número de lados se duplica a excepción de los lados en la frontera del casco. Expresado matemáticamente sena: 2k — nr = 3NT (2.1) Por otro lado, utilizando la fórmula de Poincaré dada la triangulación T resulta: r= NT + 1, n = n, 3NT + rt,k 2 Reemplazando en la fórmula de Poincaré tenemos: NT +1-1-n ( 3NT 127 ) =.2. NT = 2n — n,. — 2, (reemplazando en (2.1) 2k — 71r = 3(2n — rz r — 2). k = 3n— nr — 3. 45 Teorema 2.4 ( Ver Si.jaeth (131)Dados el idirbero de triángulos N T y el número de lados k y el número de Dados n, se cumplen las siguientes relaciones: I. n — 2 < NT < 2n — 5, 2. 2n — 3 < k < 3n — 6. Prueba: I. Sabemos que N T = 27i — —2 NT = (n — 2) (n — n.,.) y mino n > n, y n > 3 (por definición), entonces: NT > n — 2. Por otro lado: t1r >3 —nr < —3 — 2 < —5 NT < 2n — 5. 2n —n, — 2 < 2n — 5 2. Sabemos que k = 3n — n,. — 3 3 k = (2n, — 3) (n — nr ) y corno n > ni. y n > — 2 k > 2n — 3. Por otro lado: n,. > 3 —nr < —3 3n — 3 — nr < 3n — 3 — 3 k < 3n — 6. 4(3 CI Capitulo 3 Interpolación por Splines 3.1 Superficies de splines con puntos disipados En el Capítulo 2 desarrollamos criterios para seleccionar la triangulación para una superficie interpolante. Ahora, dada la tria,ngulación, el objetivo de este capítulo es encontrar un spline de grado 1 ó 2 6 3 ó 5 que interpole cada triángulo. Nos referimos en este capitulo al trabajo de Spaeth [13]. Definición 3.1 Sea q : R 2 -+ IR una función interpolante, diremos que q es un Spline si esta compuesto por la unión de funciones bípolínomíales, donde cada función bipolínomíal está definida en un triángulo de una triangulación T. 3.2 Interpolación Bilineal El primer splíne es de la forma z = Ai + By + C definido sobre cada triángulo, donde es la ecuación de un plano. El interpolante resulta contínuo. Dada la triangulación T del conjunto de puntos pi = yi ), i = 1, , n, con sus valores Sin pérdida de generalidad escogemos tres puntos (x j , y i ) con f (x j , yi ) = zi , j E {1, 2, 3}. El interpolante sobre el triángulo formado por estos puntos lo definimos de la siguiente manera: E(x, y) = a -I- b(x 47 + - Evaluando los puntos (z-,, y) yi), i E {I, 2, 3} entonces 0 a z 1 X2 — XI y2 —u1 b Z2 1 X3 — xl Y3 — Y1 e Z3 1 0 Definiendo d = (x2 — x1)(y3 — yi) — (x3 — 2,1)(y2 — yl) O hallemos a, b, e: Como E(x i , y l ) = Z1 = a, por la. regla de Cramer hallemos b y c: 1 z1 1 O 0 1 O z1 2 Y2 Y1 1 z`5 z1 Y1 1 Z3 Y3 Y1 1 Z3 Z1 Y3 — yl 0 0 x2 1 1 x2 — X1 y2 — — xi y2 — ,V I x 3 — x 1 y3—yj J1 1 X3 — X1 y3 — y i Z1)(Y3 Y1) — (Z3 b =-- (Z2 1 0 O zi 1 xl z2 O x 2 —x 1 Z2 — Z1 1 x3 — x j. z3 O X3 — X1 Z3 1 x2 C = 0 1 0 1 X3 — XI Y/3 (=2 — z1 x2 — xl Y2 — Z1 yl —x1y3— yl 1 X2 — X1 Y2 Y1 C= z1)(y2 — Y1) Y%1 - x1)(z3 - z1) — ( 02 — Z1)(X3 x 1) Hallemos las coordenadas baricéntricas 14, Pa, /13 con respecto a los puntos (xi Y1), 4 .x Y2)) (X3) Y3). 48 Sabemos que: ) X2 1.12 Yl Y2 1 /Al /1 + !PI = /A3 Y3 — = Y µ3x3 — Ma)Y2 M9Y3 - Y2) (3.2) } — 11,3)x2 )1•43 - 712 ) (3.1) Y3 X (Xl - X2) + 1A3 (X3 - X2) /I I ( X3 ) =1 +1A2 + 1-A1 XI + /12 X2 + i-h3 X3 ,u3 = y X - X2 = y — ://2 Hallemos pd por la regla de Cramer — za x3 — x2 = X - X2 X3 - X2 Y Y2 .Y3 Y2 Y Y2 Ya — Y2 X1 - X2 X3 - X2 X2 - Xi Y Y2 Y3 - Y2 ( - X2) Y2 X2 X1 X3 Y2 - yi YI Y3 - Y2 (X3 - x2 ) Y Y2 Y3 Y2 - X3 - X2 - (7 .9 - X2)(Y XI Y2 49 y2) - (y3 Y2)(X x2) d o AhOra reemplazando en (3.1) // i = 1 — 1/2 — /1,3 , tenemos: (1 — pa — /13)X1 -1- 1.12X2 4- 11,3X3 = X ( 1 — Pa — 1 PaY2 +1.13Y3 1 3)Y1 P2(x2 — xt) +1.43(x3 — xt) = x — y') P.2(Y2 1-/3( 1Y3 — xI x3 — == µa Y — Yi = xI Yi) = Y — Vi xI — x3 X3 — X1 Y3 Y1 Y — Y3 13 — y1 X2 — XI X3 — XI d 1/2 — 1/1 y3 -- y1 x3)(Y (J71 s2 — y3) -- (1/1 -- Y3)(X -- X3) , d sj 7/2 — Yi Y — Yi 113 = x2 -- xl x3 — x1 Y2 — 1/1 Y3 — 1/1 3 = (7:2 — x1)(1 Y1) — (Y2 — Yi)(:c — 271). d Haciendo X4 = X11 X5 = X21 X6 = X31 114 = y1 7)5 = 7)2, Y6 = 7)3 y denotando: = 2:14.2 — xi +1 , tli = yi +2 — yi +1 , i E {1, 2, 3}, resulta = 1,1(zc, y) = [7.4(Y — Yí4.1) — ví(x — x-1)1/d, 50 donde d = (x2 — x i )(y3 — y i ) — (x3 — x i )(y2 — y i ) O. Estos cambios son importantes para evaluar la función interpolante E porque basta evaluar las ;4, i e { l, 2, 3} ya que EGc, y) resulta ser una combinación lineal y de las pci, por ser xy xi ( X3 E una ecuación lineal y una combinación afín de . de tal y3 yl y2 manera hemos encontrado el siguiente teorema: Teorema 3.1 Dada una trianguladón T del conjunto de puntos pi = (xi, yi) con sus , n. Sin pérdida de generalidad escogemos tres puntos y lo valores de función zi, i = 1, denotamos (xj, yi), j e {1, 2, 3} en el que definimos la función interpolante E(x, y) = a + b(x — x i ) - y1) y expresamos el punto (:) como una combinación baricéntrica de xi (X2 (yi X3 ) (y3) • Haciendo: x4 = xi, X5 = X2, x6 = x31 Y4 = Y1 > Ys = Y2) Y6 = Y3: ZLi = xi+2. - x24-11 Vi = Yi4-11 iE {1,2,3}, se cumple: I. ta = í. = (72 — 7 (x2 2,1)(43 - Z1) - (Z2 - 1)(Y3 — Vi) — (73 — 71)(Y2 — y i ) d 1 `'1)1x3 - X1) donde d = (x 2 — xi)(y3 — yi) — (x3 — xi)(y2 — yi) O. 51 2. 1.1.,; — yi+i ) u; (x — =i4.1 )1/d, i E {1, 2, 3} xi 3. E = +i12 ( 51 °2 Y2 = ) + 113 ( 1 Y3 Y1 )) + bt2E(( X2 y2 Al3 E( ( Y3 ) Teorema 3.2 Las funciones lineales 14, i e. {1, 2, 3} dependen de x, y tienen las siguientes propiedades: 1. 1-4 (Pi) E (1,2,3}. `i). 2. 1-4(Q) = O i E{1,2,3}. (2 E Pi+Iln+2, 3. ili(g) > O para i {1,2,3} 4. ji.i (Q) < O para algún Q. E A. Q1 -1==> Prueba: 1. Asignando ;al xi en (3.1) tenemos: Y +1,42 ( X2 ) Y1 Y2 (xl + \ Yi y como xi ( X ,2 11,3 ( XI ) Y3 \ Y2 yI ) /4 ( T3 ) = 0, \ 1/3 ( X3 ) (Y1 son vértices de un triángulo de una triangulación linealmente independiente : /-11 = 15 F-12 = 0 5 1-13 = 0 Resumiendo este. y los demás casos obtenemos: mi(pi) = 5,1;, 52 para i Q= 7'4 \y X •<=1:. ( xi = -4+1 yí ( Yi+i ni+i j-tí +2 xi+l Yí+ I ) Xi+2 Yi+2 ) I ni+2 )t-4+1 X++2 ní(Q) = ° ní +2 = 1, P4+1 > O, ri+ 1 ) .ri+2 > O Q es una combinación convexa de los puntos 11,41 5 7)7:+2 Q E 74-1-1Pi+z , los puntos p i , p2, p3. 3. Utilizando :3, es trivial. 3.3 Interpolación por splines bicuadráticos Dados los puntos {(xi, yi)}, conf(xi, yi) = zi, i = 1, también las derivadas parciales z,v „ i E {1, . , n, una triangulación T, dadas , n}, el objetivo es construir una función interpola,nte (15(x , y) compuesta por funciones cuadráticas sobre cada triángulo, de tal manera que la función sea contínuamente diferenciable sobre el casco convexo. Dado (x, y), según Powell [12] es importante en la práctica, utilizar un método local para hallar el valor de función z en el punto (x, y), ya que cuando calculemos z, este va depender del perímetro del triángulo donde este situado (x, y). En este capítulo la base de los polinomios p„(x , y) R 2 1-4- R que se utilizan para construir el interpolan te (Kincaid [8]) será: x"- 1 71-1 y x n-2 x n.-2 y zn-3 Xn-3y n-52 x n-3 X 2 n-3 X y 1 3 y 1/3 • • • e. El número de elementos de la base sería: 1+2 3+4 ••• + rt +1 = (n + 1)(r¿ + 2) 2 que coincide con el número de coeficientes a hallar. Por ejemplo para el caso del spline bilineal requerimos para cada triángulo (1 + 1)(1 + =3 datos. Para nuestro caso, si queremos interpolar sobre cada triángulo requerimos + 1)(2 + 2) = 6, pero tenemos 9 condiciones de interpolación que no coincide con los 6 de coeficientes que requerimos. Para el caso bicúbico si queremos interpolar sobre cada triángulo requeriríamos + 1)(3 + 2) = 10, pero tenemos sólo 9 condiciones, 6 condiciones de las derivadas parciales y 3 condiciones de interpolación, que no coincide con el número de coeficientes, además si tuvieramos las segundas derivadas parciales tendríamos 9 condiciones más que en total serian 18 que tampoco coincide. Para contrarrestar, Powell [12] recomienda: a) Restringir el polinomio interpolarte. 5) Subdividir el triángulo en el que estamos trabajando de las siguientes maneras mostrad as en las figuras - 3.4. 54 A Figura 3.1: División del 15 ABC en 4 triángulos 2) Figura. 3.2: División del Ls ABC en 6 triángulos 55 3) Figura 3.3: División del A ABC en 12 triángulos Figura 3.4: División del A ABC en 4 triángulos Dado un triángulo ABC cualquiera. El objetivo es ver cómo se relacionan dos funciones bicuadráticas definidas sobre dos subtriángulos que tengan un lado en común y que sean continuamente diferenciables sobre dicho lado. Teorema 3.3 Dado un triángulo cualquiera .A.BC, (Y. 7-, L O. Sean + a2( + Oy + -y) + a3y + a4(az + fly + -y) 2 + a5(cíz + fiy + y)y + as?? , gi(x, 7-.1) (12(x, = bt + b2(ax + t3y + ^f) + b3y +1)4(az + /3y + -y)2 + b ts (ax + 9y + -y)y + bey2, dos funciones bícuadr.ticas definidas sobre dos subtriángulos del ISABC . cuya intersección = O. Si (11 , q2 son funciones continuamente diferenciables sobre es el lado k: crz: + dicho lado entonces se cumple: 2 1. a l + a3 y + a6 y b3 y V(z, y) E K b6 y 2 , 0(12 = oeb 2. aa2 + aasY = 0q1 2 — ax = ax abs y, V(x, y) E K. 3, (12(x., y) = giGe,1i ) + (1) 4 — a4 )(ax + a + "j') . Prueba: 1. Sean (:c, y) E K /9y + -y = O ax (x, y) = a l + a3 y + a6Y2 T2,(x, y) = b 1 + b3y bc:112 V(x, y) E K, V(x, y) e K, Como q i ,q2 son diferenciables sobre K, son continuas. Entonces tenemos: al -I- a3Y a61/2 = bl + b3y + b6y 2 Y(x, y) E K. 2. Derivando las funciones bicuadráticas q i , ( II con respecto a x resulta: aqi <1q2 aa2 + 2a4 a(ax + fly + -y) + aa5 y, (x, y) = Gc, = GYb2 2b4a(ux + + abs y. Evaluando para (x, y) E K tenemos: aa2 + aas y, cyb2 + abs y; ax y como q i , q2 son diferenciables sobre K, entonces: 0q2 aa2 + aas y = ax y) = — (x, y) = ab2 + ab s y. ax 3. Dé 1) tenemos: (a1 — b1) + (a3 — b3)y + (a6 — 66)Y2 = O V(x, y) E K a l = hl, a3 = h3, as = hs. De 2) resulta aa2 — ab2 + (aas — abs )y = O aa2 = ab2, aa5 = ab5 , a O = a2 = b2, a5 = bs . = bi para i E {1, 2, 3, 5, 6} q2(x, y) = a l + a2(ax a5 (aa5 + 01/ 1') fiy + -y) + a3y +64(az + /3y + 7)2+ a6 y2 . Sumando y restando a4(ax + fi'y + -y)2 y agrupando tenemos: 42(x) y) = 41(x, + (b4 a4)(ct por la definición de q i , q2 es b4 — a4 es única. Py 'Yr O Teorema 3.4 Dado un triángulo cualquiera ABC, de la trianguladón T. Para funciones bleu adráticas q1 , q2 definidas sobre dos su btriángulos del triángulo ABC cuya intersección es el lado k = cY.r +13y +-y = O se cumple: Si q i ,q2 son continuamente diferenciables sobre el lado k qi(x, y) = q2(x, y) + A(ax + 0y + 7)2. Prueba: Lo hemos probado en el Teorema 3.3. . )Sea ql (x, y) = q2(x, y) + )( ax + 18y + Evaluando en (x, y) E K: cex+fiy+-y = 0 obtenemos: qi(x, y) = q2 (x, y)+A(0)2 = q2(x, y). Esto significa que q l , q2 son contínuas. Tomando el gradiente: v(ii(x, y) = vq2(x, + 2A(ax + flY + -r)(a, evaluando en (x, y) E K: ax + fly + -y = O, resulta Vqi (x, y) = Vq2(x, y) + 2A (0)(a, fi) Vcii k = Vq2(x) Y); q1 , g2 son continuamente diferenciables sobre K, O Ahora utilizaremos el teorema anterior para construir una función iuterpolante de 58 clase C1 en cada uno de los triángulds anteriormente mostrados en las Figuras 3.1, 3.2, 3.3, 3.4: Primer caso: Para la Figura 3.1: dividimos el triángulo en 4 subtriángulos. B(x2, 1/2) Figura 3,5: División en 4 subtriángulos Dados los valores de la función interpola.nte z1, z2, z3 y sus respectivos gradientes (z,,„ zy,),(zti „ zy2 ), (z„,, z y3 ), para el triángulo ABC. Para el subtriángulo PQR definimos la función bicuadrática q1 (x, y) = Áx.2 + Éxy + Úy2 + Dx + Éy + É. Construiremos funciones bicuadráticas q2 , Q3 , q4 definidas en los subtriángulos AQR, PBR, CPQ que sean diferenciables sobre los lados QR, PR, PQ entonces por el teorema 3.4 tenemos: (i2(z., y) = ql(x, y) + Ai(aix + Ply + 71) 2 , 2 = qi(x,y)+ A2(a22: + 132y + 72) , 13(x , ( q4(x , y) = qi(z,y) + ,\3((3z fi3Y + 73)2. Utilizando las tres las 3 condiciones de interpolación tenemos: q2(xi,Y1) = qi(;;ci, Yi) + Ai(c:Y1x1 + (1) q3(272, v2) = qi (x2, Y2) + + 71)2, 2 ( Y:Z.:2 + /32y2 + 72)2 , (2) (14 1x 3 , y3) -= g1 (x3, Y3) + -4(cr3=3 + 03y3 + 73)2. (3) ( 7 tal:tibien usando el gradiente. en cada punto del triángulo ABC tenemos: 59 \-7,12 ( 2:1 ) (-7x3. 01,a. ), (4 ) Y (5) Vq3 (7:2> !h.) = (zsz> zy2 ( 6) Y ( 7) Vq4(x3,1/3) = (zx3, zy3), (8) Y (9) donde las incógnitas son Á, B, C, .b, É, P, A i , A 2, A 3 que coinciden con el número de ecuadones, pero Powell [12] demuestra que en el sistema planteado, que es de la forma A 1 x = b1 , la matriz A l es singular cuando las líneas AP y CR se intersectan. Por eso descartamos esta posibilidad. Observación 3.1 Esto no siempre sucede ya que AP y CR pueden no intersectarse en un punto diferente de A como mostramos en el siguiente gráfico: B(x2, Y2) A(xi,111.) Figura 3.6: Este caso seria el mismo caso anterior, solo con la diferencia que CP y AQ se intersectan. La matriz A l tambien será singular. Luego descartamos esta posibilidad tambien. Segundo caso En la Figura 3.2 dividamos el triángulo en 6 subtriángulos. Sea 01 un punto cualquiera del triángulo, Fi, Q, P puntos arbitrarios sobre los tres lados. Figura 3.7: Con los mismos datos de entrada del caso anterior definimos para el subtriángulo 01QC la función bicuadrática ql(z, y) = Áz2 Óy 2 fizy + Éy + É, que en total tiene 6 parámetros y desde que es de clase C 1 , el interpolante del triángulo ABC es calculado sobre los segmentos 01 Q, 01A, 01R, 01B 4 O1P,01C definidos por (y k = Ok y = O, k e 11, 6}. Cuando extendemos el subtriángulo 01 QC por el teorema 3.3 tenemos 6 parametros adicionales. Esto no cambia contando como se relaciona la funciion bicuadratica q6 del subtriángulo PO I C con la función bicuadtica q i del subtriángulo Q01 C. En total tendríamos 12 parámetros. La función bicuadrática <l e se relaciona con la función bicuadrática q l de la siguiente forma: q6 (x, y) + A6(a6:c + fisy + 76 )2 =-- (x, y) (3.3) Sin pérdida de generalidad asumimos que 01 está en el origen, entonces se tiene = O, k E {1,...,6}, así hay tres condiciones impuestas por (3.3), ya que al expresar qG en función de qi y reemplazarlo en la ecuación (3.3), podemos calcular los coeficientes de .17 2 , xy, y 2 y debido a que estas funciones son linealmente independientes 1119 coeficientes que lo acompañan resultan ser ceros, como veremos cuando procedemos , a encontrar las ecuaciones (1), (2), (3) de las 12 ecuaciones que requerimos para hallar el interpolante sobre el triángulo ABC. Con los 9 datos plantearemos 9 ecuaciones desde 61 la ecuación (4) hasta la ecuación 12 y despejando un de cada una de las parametro ecuaciones (1), (2), (3) y reemplazarlo en cada una de las Ecuaciones desde la ecuación (3) hasta la ecuación (12) podemos plantear un sistema. lineal de 9 ecuaciones con 9 incognitas.. construida de esta manera ya interpolante [12] asegura que existe dicha función Powell que, cuando plantea un sistema lineal la forma A l x Para la implementación computacional b,=Al resulta no singular. [13] utiliza Spaeth como 01 el círcuncentro cuando está en el interior del triángulo y sucede solo con triángulos acutángulos. recomienda triángulos acutángulos que tengan ángulos menores de 75°, ya que el Spaeth no está ubicado ni muy cerca a los lados ni a los vértices del triángulo. circuncentro Para hallar las 12 ecuaciones vamos a suponer que triángulo del 01(0,=0) es el del circuncentro y está en el origen. il.ABC Hallemos las 12 ecuaciones: Sea (x,Ti = .Áz- 2 1)x + By 2 + Gy + ÉyF +definido en el triángulo en los cuadráticas teorema 3.4 tenemos para las funciones y por el OQC 01,4Q, subtriángulos D 1 PC: 01 .11B, O I BP, q2(x, y) . (x> y ) + A l (cr i z +13102 ) q1 q3 (x, y) = q2(x, y) + A 2 (cx2 x + /92 y)2 , q4 (x, y) = q3 (x, y) + ›t3(CY3X qs (x, y) = q 4 (x, y) + b9.3y)2 , + /3402 , .cm(x, y) = qs (x, y) + A s (as x + / 502, y para relacionar el subtriángulo OPC con el subtriángulo OCQ tenemos: qt(c, y) q6(x, + AGGYex 62 P602 . O 1 AR, las últimas 6 ecuaciones y Stimando 2 simplificando tenemos: adémás )2 2 2 2 \ + As(a5x, + PO) + )64 + ((-Yi + )("Ji y) + A2((Y.2:1; + fi2Y) + A3 ((>!3:r + fi3V) + A4((Y4x ,\G (o/ G x +130)02 = Considerando que los coeficientes que acompañan a x2 , y2 , deben xy, ser ceros, tenemos: .1, 10,1 2 + A 2 ty2 2 + A 31..y 3 2 + ..,1 4 c2.4 2 + ) 5 a¡,2 + )16 (-26O2 = , O= 2), TcYlfii + 2A2a2192 + 2A3(x3,63 + 2 A4ce4/64 + 2,N5a5/35 + 2)16 a6,86 Á1012 + 4i942 82 + A3) 3 + ‘5P5 2 2A6/36O. = Utilizando el valor de función para los puntos C 3 , y3 ) .8(x= = (xi,Yt), A (x2, = y2), tenemos: (x2, = 112) que es punto común de los Para A q3y(x 2 )2, q3, q2, tenemos que bicuadráticas las funciones ,3(x2, V2),1(x'2, y2) definen (x= 3 , y3 ) que es punto común a los funciones las (x 3 , z, = q5y3) = q2y(x 2 ), 2, implica Resulta . (atx2 + fily2) + z, = Áz-1 + 13=2y, + ¿iy 2 + bx2 + ÉyaP + (al + x2 En el punto B se definen AOdonde 1 Q, A01 R, subtriángulos y2) r31+ (4) 2 01 B P, O subtriángulos que bicuadfaticas q3,tenernos q 4i q3y(z 3 )3 , RB i donde se = q 4y(x a )3 ,implica: + Maix3 + filY3)2 + A2(a2x3 + je2y3)2 + ;\3(a3x3 + /33:4/3) 2 y3) = ;71(23, resulta tia = Áz32 +Éx3 y3 +Úy3 +hza -i-Éya +P+),1X3 (cei + Y3)22 +,\ (Y2 + fl2Y3) 2 +A3(CY3 X3 f13y3) (5) Para el punto C = se definen las funciones yi) = que y l ) es punto común de los subtriángulosPC al que bicuadraticas qetenernos , qi (x / ,implica vi ) (6) Óy i 2 + Dx1 + Élh :f.] = Áíf + Ahora utilizaremos los datos de los gradientes en los vértices del triángulo ABC el punto A ) ,que está definido sobre el lado común de los = y(x 22 O I donde AR la función q3 está. definida sobre el bicuadrática q2 sobre el triángulo función bicuadrática, y2)2 , 743 (2: donde O 1 CQ tenemos: O I AQ, y2 )2,implica = 7,12(x 63 Para : subtriángulos O1AQ, la subtriángulo O I y AR, , 1 Vq3( 272, Y2) = v•;' 71. G172, /2 + 2A dai + 11)((Y1 rg1') 7 luego , hx2 + 2¿' zy,Yr = (2Áx2 + f3Y2 + + 2),i(aix + fily)(ai, 01)T implica.: a-.2 = 9 11 - -"2. + R y2 = ÉV2 + 15 + 2A1 ((Y-1 x + fitY)t-Y1 (7 ) + 2A (CX1 X + filY)P1 ( 8) 2(5y2 + Para el punto B = (x 3 , y3 ) que está definido sobre el lado común de los subtriángulos O I RÉ, O I BP, donde la función bicuadrática qs están definida sobre el triángulo ()1 HP y la función bicuadrática q4 está definida sobre el triángulo 01 RB , ienemos:V q5(x3, Y3) = Vía (X3, :1/3 ), q5( :1-" (cki z + 13102 + 2(("-.Y2z + 020 ( 2+ 3 Cil (X> y) + (1 1 3:-" fl3Y) 2. (.,. alculaclo el gradiente en el punto B tenemos: Vq, (x 3 , y3;1 = (2ÁT1 + 2,\,(Lx2x3 + 15, Bx 3 /32 y3 )(ex2 , /92 )7" + 3 Gy3 x3 2(Yy3 + É)7" + 2,11 (cr i + fily3)(ai , + + /3.3 y3 )(ex3 , /33 ) T Esto implica: = 2Ax 3 + f-iy 3 +h+2A i a'i (a i x3 4- f31 y3) + 2A2(x2 (o'2x3 + fi2y2,) + 2A (73(cY3T3 + r13 Y3)(9) -1 kyy = 45 y 3 + 243 + É + IN 1,81 (ai fliy3 ) + 2A2fi2(a2 x3 + fl2 y3 ) + 2A 3/33 (a 3 z 3 + /33y 3 ) (10) En el punto C = función qj(x, y) , y 1 ) que pertenece al subtriángulo CO1Q y donde está definida la = Ás 2 + Bxy + Cy 2 + Dx + Ey + É resulta: 21x1 + f3y1 + b (11) z,„ = B -1- 2c y2 + E (12) Ahora supongamos que (e1 , e2 ) = 01 no está en el origen. Inicialmente todos los puntos del triángulo ABC lo trasladarnos al origen y calcularnos las funciones cuadráticas que componen la función iuterpolaute del triángulo ABC luego hacemos el siguiente cambio de variable := Tercer Caso En la Figura 3.3 dividimos el triángulo ABC en 12 subtriángulos A Para la construcción de un interpolante q sobre el triángulo ABC procedemos de la siguiente manera: inicialmente el subtriángulo PQR. es un caso particular de la. subdivisión en 6 triángulos en el cuál tenemos 9 parámetros por calcular ya que los valores de la función de los puntos R, P, Q podemos estimar en forma lineal y también sus derivadas parciales. Luego agregamos tres factores más, cuando extendemos los subtriángulos RSQ , R. S P , P S Q hacia los subtriángulos RQ A, ,C P, PBQ respectivamente. En total tenemos 1:2 parámetros. Para completar el número de ecuaciones encontramos las aproximaciones de las derivadas normales en los puntos R., Q, P que nos sirven para plantear 3 ecuaciones más, entonces el número de ecuaciones coincide con los 12 parametros a ser calculados. Powell [121 demuestra para este tercer caso que siempre es posible bailar la función interpolante /7. l'ara la implementación computw-ional tenemos: inicialmente en el subtriánguio PQR queremos aplicar el caso anterior, pero si supieramos que el triángulo ABC es obtusángulo tendríamos que el triángulo PQR también lo es. Eso que no podemos escoger el cicuncentro como punto interior. Lo que tenemos que nacer, es tratar de resolver el problema en cuestión de diferente manera, porque Spaeth 6.5 recomienda que el baricentro del triángulo PQR sea también el baricentro del triángulo A B(. Las derivadas normales pueden ser calculadas por interpolación lineal. Así por ejemplo: ag 1 ( n 1RR 5(gradq(c gradqIA) ' en EL. Dadas las derivadas normales a lo largo de los lados, junto con las condiciones de interpolación. Entonces se garantiza que la función global Q es continuamente diferencia!)1e. cuarto caso: Tenemos el caso de la Figura 3.4: En forma análoga se plantea un sistema de ecuaciones A l x, = h donde Powell [12] demuestra que la matriz A l es una matriz no singular, pero Spaeth [13] descarta esta posibilidad para la construcción del interpolante, dada la simetría de la figura. 3.4 Interpolación por spline bicúbicos Dados los puntos p = derivadas parciales yi), = 1, . n con sus respectivos valores de función, las zv ,, una triangulacióu T cualquiera. El objetivo es construir un interpolante de clase C' sobre la triangulación, compuesto por funciones bicúbicas sobre cada triángulo. Para el triángulo cuyos vértices son p i , 102, :03, resultan tres subtriángulos v I ST)3 , pSp i con un punto Mterior S (ver Figura 3.8) con un punto interior S. : N N pi P3 Figura 3.8: Triángulo base para un spfine bidbico. En la Figura 3.8 el punto . significa que están dados los i E {1, 2, 3}, el círculo que están dadas las derivadas parciales en los puntos pi , i E {1, 2, 3} y finalmente los vectores que están dadas las derivadas normales sobre cada lado. Ahora, sobre cada subtriángulo construimos funciones bicúbicas de la forma: ai X 3 + a2z2 y a3xy -1-asy 3 a7y a6 Y 2 a4 y 2 x+ asx2 agx am. Luego, para construir dicha función bicúbica requerimos 10 coeficientes, y ahora como (37 queremos interpolar sobre un triángulo y este está dividido en tres subtriángulos, reqneriremos 30 coeficientes en total. Por otro lado Spaeth dice: Es muy importante el hecho de que cada polinomio bicúbico y su gradiente son únicamente determinados sobre un lado de un triángulo arbitrario por sus valores de función zi y las primeras derivadas parciales zrti , zy i en sus vértices como también por el valor de la derivada normal en un punto interior del lado. La derivada normal es calculada en forma lineal y está dada por: iff 57; ' donde H3 es el punto medio de pl y 1I )) Pi + 1 , zy)IP1.1 /02 Ahora para calcular los 30 coeficientes utilizaremos las siguientes condiciones: 1. Cada subtriángulo de este caso tiene un lado común que pertenece al triángulo formado por los puntos p i ,p2 ,p3 . Como en dicho lado tenemos información de las derivadas parciales tendríamos 4 condiciones además su valor de función en lados finales de cada lado total tendríamos 6 condiciones, Ahora como tenemos tres s u bt riáng tilos tendríamos 18 condiciones. 2. Tomando en cuenta las derivadas normales de los lados del triángulo tendríamos 3 condiciones más. . 3. Construim os las tres funciones bicúbicas definidas en cada subtriángulo de tal ma- nera que tengan el mismo valor de función y gradiente en las aristas comunes en el punto S que resultan 6 condiciones, 2 con respecto al valor de función y 4 con respecto al gradiente (ver Fig. 3.8). 4. Finalmente, al evaluar las derivadas normales en los tres puntos p que pertenecen a Sp i en la dirección bp i ó Sp 2 en la dirección5p2 ó Sp3 en la dirección 5p3 tendríamos 3 condiciones más dadas Luego sumando las condiciones tendríamos: 18 + 3 + 6 + 3 = 30 que coincide con el número de coeficientes requeridos. 3.5 Interpolación por spli-nes de grado 5 sobre triangulaciones Dados los puntos p = {;c¿, yi}, i = 1, . . , n con sus respectivos valores de función z,:, sus derivadas parciales zz „ z y „ sus segundas derivadas parciales zz ,,, zzy , = zy „, T una triangulación cualquiera. El objetivo es construir un interpolante de clase G 1 sobre la triangulación, compuesto por polinomios biquínticos sobre cada triángulo que son de la forma: (, p c, y ) al a,, x4 a7/74 clax3 y a12a' 3 y + ci4x2 y 3 aszy a9x2 Y 2 a10xY 3 a11 y 4 + 3 a le x 2+ a13x 2 y+ a14 xy 2 a u xy -f- a18y 2 4 3 y 2, a3x a1s y ao5 a19x + a20y + a21. El polinomio de q tiene la misma forma de p Figura 3.9: Triángulo base para Splines de grado 5 69 Para calcular los 21 coeficientes en el triángulo T, utilizaremos las siguientes condi- ciones: 1. El valor de función zi, que son tres condiciones. 2. Las derivadas parciales (Z,, Zvi ) que dan un total de 6 condiciones. 3. Las segundas derivadas parciales en los vértices del triángulo: zxx „ z z y, = zy x „ zuy „ que suman 9 condiciones 4. Las tres restantes condiciones se cubriría utilizando las derivadas normales en cada lado. En Total tendríamos 3 + 3+ 6+ 3 condiciones que coincide con el número de coeficientes del polinomio q biquíntico. La derivada normal se utiliza como el caso anterior: an 2 =. 2 I )P (Zz ) i p,i. k, Z ) 3.6 Alcances de los Splines bilineales, bicuadráticos, bicúbicos Para el cálculo del valor de función de cada spliue utilizaremos las rutinas de Renka "ACM 624" [14] Ejemplo 3.1 Dados 103 puntos p i = (2, 0), p2 = (4, 0), p3 = (4, 5) con sus respectivos valores de función z 1 = 4, z2 = 4, z3 = 7. Recordando para el caso de las cuadráticas empleamos la división de 6 subtriángutos, cuando los cíngulos del triángulo son menores de 75 grados, en cambio si es mayor de 75 grados (por lo menos un ángulo del triángulo) usaremos la división en 12, subtriángulos. Para este ejemplo usamos la división del triángulo en 12 subtriángulos debido a que un ángulo es de noventa grados. Graficar los Splines bilineales, bicuadáticos, bicúbicos sobre dicho triángulo. 70 Sóliicióri: Como la regla de correspondencia del im.erpolaute bilineal, cada triángulo es un plano en el triángulo dado, tenemos: 20 + 3y 5 Ahora utilizamos la rutina de Renka [141 con la subrutina INTERCO para la interpolación bilineal; QUADSF para la interpolación utiliza la teoría desarrollada. Tenenemos los siguientes resultados cuando evaluamos 15 puntos dentro del triángulo dado: ::r 1 1 i z(Spline bicuabrático) I z(Spline bicúbico) y z(Spline bilineal) 0 0 4 4 4 2 0 4 4 4 4 0 4 4 4 0 4 4 4 4 4 6 1 8 0 4 7 ' 1:25 4.75 4.375 4.46875 5 1.25 4.75 4.66768 4.72485 3 1.25 -4.75 4.66768 4.72485 1 1.25 4.75 4.375 4.46875 2 2.5 5.5 5.5 4 2.5 5.5 1.63415 6 2.5 5.5 1 5 3.75 6.25 6.625 6.53125 3 3.75 6.25 6.625 6.53125 4 5 7 7 5.5 5.5 5.86585 5.5 7 Para la interpolación lineal, fácilmente se verifica que los resultados son buenos reemplazando en la ecuación del plano. Ahora gralicaremob: Los puntos se obtienen corno muestra el siguiente gráfico: TI Figura 3.10: La idea es obtener una malla triangular de este tipo. Para la interpolación lineal no es tan importante esta malla, debido a que el ínterpolante de un triángulo es un plano, en cambio para los splines bicuadráticos, bicúbicos requerimos dicha malla para graficar. Mientras la .malla este más particionada, la gráfica será mejor. 72 Figura 3.11: lrherpolaci(Sn lineal 15 10 Figiira 3.12: Ihterpolación Bictiadrát,ica. 10 8 6 4 2 o 5 o o Figura 3.13: · Iniel'J)Olación Blcuóka 75 Capítulo 4 Otros métodos = (xi, yi), i E {1, 2,..., n}}, con su respectivo Dado el conjunto de puntos p = valor de la función zi, el problema consiste en encontrar una función interpolante en forma muy diferente a lo expuesto en el capítulo anterior. Inicialmente desarrollaremos algunas definiciones previas que utilizaremos en este capítulo. , un vector m1116-índice conteniendo n Definición 4.1 (ver [4]) Dado i E (i3O , . . . ,i„), y sea 171 la norma de z definida por la suma de las ponentes denotado por z componentes de Los polinomios de Bernstein de n variables de grado m son definidos por: B¿ donde uo + u i + ... + tin 1 . (uo > u i > • • • , un) = (7 1-, ILY IL'i' • • . ut„" , =1 y donde m (Z rn! = icli1 ! ...in !, l i ' = 171 BP(u `(u0o , ..., u.„) = O para 171 m es llamado coeficiente monomíal. Se define By 4.1 Los polinomios de Bernstein satisfacen Br (tio, • « • , com- E 7- 1,,, rn = 171 = O 1 sí O si 1 71 11, B;*--,- ,( 0, • • • un), otro caso 76 donde a":„ E Z es el m ulti-indice teniendo O en cada componente, excepto para el a componente que es .1. Prueba Si m = Co )tig, ... non = 1. Si 171 # rn = Br(uo , Bó(uo, , um ) = = O io = = ° , u„) = O, por definición. Para otro caso: BP(uú , . • • , u„) (771)! Un, U = i 0!) • • • I ft (por definición) +. • • • in = ° U1 j , t4r. Ou ii io!il! • • • , 1 1 0 it 7./.0 11 ... Uin n 1 Br(11.0, 711 ... , un) = ( m - 1).(i0 + il + • • • ira) . . (por definición de í) z o !t i ! ... , i n ! 1 )! (m) un ) Br(u o, i (m — 1)! (.14 u`Il ... li n ) + (( m 1)! (Q 24 ...1.4". ) (i0 — 1)1i i ! ...in! n io !(i i — 1)! ...in ! n — = = uo(771 1)! e t0—hil (Lo — 10 u0 , , , ul: 1)!ii! (1n — 1)! (uoí° ull . . . unI n ) 1 11,1 11 . . . in! +u l (trz 1)! io!(ii .... uut l ii . . . u"n ,_:". ust:'— ' io!ii! • • • in•-.1(in — 1)! l u0B-yreo (tiO, • • • un) + U) Br1—ct— (Uo +• • • + i 0 !i l ! • • . ( in ... 1 )! .1 1.4,2 1. 3 . , . 1)!i2! . . . in! +un (m - 1)! E u„Br s—Ca at=o , un ) . 11„) • + Br — 1 (uo • • • un) O Definición 4.2 Una Superficie Triangular de Bézier está definida por: x(21) donde a = (til, • • • ›tit), con lili = 1, E bz.13-17 .(a) 1:1=n. b i e R3. x(t) es la representación paramétrica de una superficie triángu/ar de Bézier de grado n, los coeficientes br son llamados puntos de Bézier asociados a una superficie o puntos de control. Ellos forman la red de Bézier o poliedros de Bézier asociados con la superficie. Los puntos de esquina del triángulo yacen en la superficie. 77 Definición 4.3 Dados bo,b1,...,b„ en IR/ y t E R. Sean bl = br, lil = n 1 (il) donde r = 1, ..., n , ril = n - r. + vbr41-e 1 (fi) + tvg".. bl(t1) = u1A1--e .!t ( 11) a t e 3 z Entonces al punto bri le llamaremos punto intermedio del algoritmo de Casteljau. Teorema 4.2 Dado el punto intermedio b: en el algoritmo de Casteljau. Entonces b: puede ser expresado en términos de los polinomios de Bernstein = E b r+I Birf(a), 1;1=, 171 = n - r. Prueba: Lo demostraremos por inducción: Se verifica para r = 1, y supongamos que se cumple para r, Veamos para r 1: d gi = ubr,-fre, + vbrs+e, + wb.T.;,.-Fe, i. = u E b•:+:;+ ,,, Bri + v E br.t.;+ ,.2 Bri + +tv E br+;+,.3 Bri l.71= , Cil=r ril= , , , , = E ttbz+i B!.i ...„ + vb-s+3 B1,+ Wbit4.;Eri_ e3 . iji=r+1 = E b7+;13`.;+1 I gi=r+i O Nota: Especialmente sale del Teorema 4.2 que bl(fil = E b-,/p(a). gi=n. .7 Definición 4.4 Sean u1 , u2 dos puntos del dominio, d = (d, e, f) = u2 - u1 . La derivada direccional de una superficie en x(u) con respecto al vector ct esta dado por: Ddx(a) = dx„(a) + ex„(f.1) + f c„, ), a = (u, y, w) Utilizando la Definición 4.4 podemos calcular la derivada direccional de b(a). E nt uiviwkg, i !j!lc! 78 Entonces tenemos: Ob( g) a = Ou Ou n (,-, n!• .1 .1ki u' triw iTi z•-•' i¿i=n "" n- l)! • • E u` n E I 1= ((n. 7 1 )! í • k) - -vliwkr):44.1 r:1= y:: - 1::!::: =n (13!" -i (u)br+e1 ). ion-1 Hallando en forma análoga las derivadas parciales con respecto a v y w tenemos: E Dd b(ft) = n E (db1.44, + fb14.1.,)Br (fi) y en términos del algoritmo de Casteljau podemos escribir: Dd b(a) = E bl(d.)B?-1 (fi›). I4n-1 Ya que existe un isomorfismo entre Wiln y el espacio de matrices, esto nos permite dar la siguiente definición: Definición 4.5 Dada la matriz A = (a jj ) E Rmn una matriz de orden m x n La norma de Hobenius de la matriz A se define como: 171 A ii= (EE' aii 12 ) • :=1j=1 4.1 Métodos de Renka y Cline Dado el conjunto de puntos p = Ipi = (x 1 , yi), i E {l, 2, n}} con sus respectivos valores de función interpolante. El objetivo principal es encontrar una función cuadrática que aproxime las derivadas pardales z.,k , 2 v, en el nodo k para utilizarlas como datos de entrada para funciones de interpolación que requieran dichos datos y dicha función debe interpolar. Por ejemplo para utilizar el método de Shepard S1 , para calcular un spline bicuadrático, etc., utilizamos aproximaciones de las derivadas parciales. 79 Para resolver dicho problema, Renka, plantea los siguientes métodos: 1. Interpolación mediante una función bicuadrática Renka/Cline [3] plantean la función bicuadrática siguiente: G(x, y) = zk a(z — zk )2 b(z — zi,)(y — yk) donde el vector desconocido es c(y — yk)2 + u = [a, b, e, zyk ] y — =1,) + zwi (y — yk), 1c es un entero fijo, k E {1, ..., n}, Se comprueba facilmente que la función G va interpolar al nodo k, es decir: G(x ;„ yk ) = zk , k = 1, , n. Para este método, cuando decimos que interpola al nodo k no queremos decir que necesariamente la función G va a interpolar a 1( s otros nodos. Si queremos calcular una función que interpole al nodo á diferente de k y calcule su gradiente tendremos que buscar una nueva función G semejante a la función anterior pero ahora dependiendo del nodo i. Ahora para hallar el vector desconocido u, Renka plantea el siguiente problema: E Minimizar (.1 [tv1(x, y)(G(xj , yi ) — zi )] 2 'Esi, donde jOky los tuj son funciones de pesos dados y Sk es un conjunto dado de vecinos del nodo k. Por otro lado tenemos lo siguiente: Teorema 4.3 Dada G, la función interpolante de Renka en el nodo (xk,yk), j E {1, cuya m}, rri es el número de vecinos del nodo k, m < n. Definimos la matriz A j-exima fila es de la forma: xh)21 )(Yi Yk)wi, (yi 2 Yk) wk)tuk, (Vi y el vector columna t) de la forma: toi(z4 — zj), j E {1,...,70. Entonces se cumple que los dos problemas siguientes son equivalentes: (P1) Minimizar E [tv (x , y)(G(x, , /fi) — z )1 , í sEsk (P2) Minimizar (Il Au — v11 2 ). i 2 80 Vh)tuk, Prueba: Para los nodos (x j , yi ), j = 1, . . m, tenemos: zj, — zj + a(xv — xk)2 + b(x i — xk)(yi — yk) G(x,,yí) — zj — 114) 2 + zxh(oi ok) zyk(Yí — Yk) + (141 — x4)2 + b(xj — xk)(yi — yk) G(xi, yj) — zi = —(z1 — 4-e(Yi — Yk)2 zo k (zi — =k) zy k (Vi — yk) Multiplicando por w1 tenemos + awi(x i — xk)2 + bwi (x j — x 4 )(yi — yk ) wi(G(x j , yi ) — z1 ) = —wf(zi — +cwi(lí Yk) 2 j E {1, 2, , tuiz=cx(i tli Z .í vb(YS yk), m}. Ahora expresado matricialmente tenemos: ) 2 ((z1-3;k)2 , (x1-zk)(Y1-Y1), (711-yk) , (xl-z4), (yryk))wi a w2(G(x2, y2)-z2) 2 ((z2-°14)21 (z2-°k)(Y2- Y4 ), (y2 Y4) 1 (=2 =k), (Y2 Yk))tu2 b u)3(G(x3, y3)-z5) ((x3-x02 )(z3-xh)(v3-vh), (v3-vh)2 , (xs-zk), (v3-w.))u)3 c wm(G(=m, 7m)-zni) ((x.-=k) 21 (=m-x.4)(Ym-Y4), (y.-yh)2 , (zr.-=k), (yr.-yh))wf. zsgh (G(zi Wi (Z1 - zk) W2(2.2 - zk) t/J3 (Z3 - zk) — zk) Reconociendo a la matriz A, u, y tenemos: tui(G(zi, Yi) — zi) w2(G(x2, Y2) — z2) w 3 (G(x 3 , y 3 ) — z3 ) w m,(G(x„„ — z„,) 81 = Au — v il Au — v112 = E[tui(G(xi , yi ) — zi)12 j=1 (Pa ) y (P2 ) son equivalentes Para el cálculo del interpolante y del gradiente en un nodo (fijo) del conjunto de datos n escogemos un subconjunto de rn elementos, rn < n. De acuerdo al valor de m que utilizamos, Renka. y Cline [3] recomiendan lo siguiente: Si el número rn de nodos es de 3 ó 4 ó 5 elementos se utiliza el método de interpolación lineal. Si el número de elementos tiene por lo menos 6 elementos se recomienda que se utilice la función cuadrática G que hemos definido. Ahora, para la elección de pesos se utilizará el siguiente criterio, recomendado por Franke y Nielsón[11]: Para I3i := d((zi, ya ), (xk, yk)), la distancia del nodo k, i # k, definimos el peso tvi: = (14— Di )+ I(R4,Di ), (Rk — Di)+ = donde 0, R k — Di si Di < Rk O si Di > Rk donde R k es el radio del circul -, cuyo centro está en el nodo k, que será escogido de acuerdo a un criterio dado. Para escoger Rk tenemos lo siguiente: Si R 1 1 k A< = = — —> , Rk DiD Di R ), 1 1 ya que Rk — Di > 0 y I4Di > 0, A 0, Rk y 0. Ahora, como = — — — , entonces A Rk a mayor distancia del punto p‘ al punto pk , i # k; el punto In tendrá menos influencia en el cálculo de la derivada en el punto (xk, yk). Para la elección de Rk, Renka y Cline [3] sugieren el siguiente criterio: Criterio para la elección de Rk Dados n datos, la distancia del nodo k al nodo á = d((x4, yk), yi)) , m < n. Para in > 9, escogemos D como la distancia del octavo nodo i más cercano al nodo k y 82 para N < 9, escogemos D como la distancia más lejana del nodo í al nodo k. Entonces definimos 111, = d((x k , yh), (y,, ya )), la distancia del nodo k al nodo s, donde el nodo y,) es el más cercano al nodo k, pero cuya distancia es más grande que D. Si tal nodo no existe escogeremos arbitrariamente 14 = 2D. Ahora trataremos de dos métodos desarrollados por Renka y Cline [2] para calcular las derivadas parciales. que los llamaremos "Método global para calcular las derivadas parciales de Renka y Cline" y 'Método local para calcular las derivadas pardales de Renka y Cline" El objetivo de ambos métodos en lo siguiente a estimar las derivadas en los nodos. Ambos métodos envuelven un sistema iterativo lineal de ecuacionesy no requieren almacenamiento del orden 2n ubicaciones, dados que existen 2n derivadas parciales 2. Método global para calcular las derivadas parciales de Renka y Cline. Dados (xí, yí), i = 1 con su respectivo valor de función 4, nuestro objetivo es encontrar aproximaciones para las derivadas parciales z,,„zy , i = 1, ... n en los nodos. Nuestras incógnitas los representamos mediante el vector u tal que sus n primeras componentes van a ser las derivadas pardales zz „ seguidas de las derivadas pardales zy„ Ahora nuestro problema es calcular u, para esto Renka y Cline plantean el siguiente objetivo: Calcular el valor de u que minimice la norma L2 de la curvatura linealizada del interpolante F(x, y) sobre el casco convexo H. Consideraremos la curvatura de F a ser la norma en L3 de las curvaturas k1 y k2 en las direcciones de los ejes x e y respectivamente. Hallaremos k1 y k2 utilizando las siguientes ecuaciones:Az = k -1 Bx donde A = 1+F: 2 Fr Fy F.F y 1 + Fy Fx x B= Fx Fzy Fyy 83 , a = (114:2 4- F1)1 / 2 , (4.1) De estas ecuaciones planteadas se tiene los siguientes resultados. Inicialmente tenemos A -1 Bx . Hallando la función inversa de A -F-F, FI A-1 = 1[1+ 2 a Fy 1 + .F? y reemplazando loe datos en esta ultima ecuación tenemos: — F.F y ns, (1 + (1 + kl = 1 Fx Fy Fxx a (1 + — F,F y F yy x, —Fx Fv Fxy + (1+ F:)Fy y nw Teniendo en cuenta las siguientes notaciones: E = 1 + F, F = FJv , G = 1 + F:, L = a-1 F„, M = a-1 41 , N = yy , EG — = 1+ n , a = a3 k. Calculamos el polinomio caracteristico: — a(EN + GL — 2FM)a + (LN — M 2 )(EG — F 2 )a2 = O. 3 Reemplazando a = a k tenemos: 4 4 2 k 2a6 — ka (EN + GL — 2FM) + (LN — M )a = O. Dividiendo entre a2 resulta: 2 k2a2 — k(EN + GL — 2FM) + (LN — M ) = O, k2(EG — F 2 ) — k(EN + GL — 2FM) + (LN — M 2 ) = O. El producto de las raíces será: (LN — M 2 ) ki ka = EG — F2 • Para la semisuma de las raíces resulta 1 2 , 1 EN + GL —2FM ka) = 2 (EG F 2 ) • Por otro lado, para obtener la curvatura linealizada nosotros asumimos que las derivadas 84 parciales son pequeñas y tomamos F-2, F72, y F,,F y iguales a cero. Para el caso particular k = 1 vamos a hallar las curvaturas principales. Reemplazando F¢ = 0, F.F y = 0, e, = O en la matriz A y en a ontenemos: A= 1 + 02 O O 1 +02 1 O [0 1 A = I, I matriz identidad, a = (1 + -I- 02 )1P = 1 =-# a = 1. Ahora como A = 1, a = 1, tenemos por (4.1): -1 Ix = k 13= donde kx = Bx matriz B. A = I, B = F„„ Fay F yy = ik1 - B( = 0, esto significa que k 1 y k2 son autovalores de la Ahora veamos como se relaciona la norma de Frobenius de la matriz B con norma de Frobenius de la matriz diagonal, cuyos elementos son los autovalores de B. Esto lo enunciamos en el siguiente: Teorema 4.4 Dados B, una matriz simétrica, y D una matriz diagonal que contiene los valores propios de B. Entonces la norma de Frobenius es igual a la norma de la matriz diagonal. Ahora por el teorema anterior desde que B es una matriz simétrica, su norma de Frobenius es igual a la norma de la matriz diagonal de sus valores propios, luego tenemos: 2 Asi podemos plantear nuestro objetivo es encontrar u E 11 " que minimice la funcional cuadrática: q(u) = iff (Pl+ 2nv SS F: y )dH. y el interpolante puede ser escrito 2n 1 F( , y) = E 4A(x, y) + 1 E z&g,(z, y), donde u = [ui ] es el vector que contiene n las derivadas parciales con repecto a x seguida de las n derivadas parciales con respecto a y en forma ordenada de acuerdo a los indices, fi y gi son funciones parches apropiadas (funciones cardinal& de soporte local) Para desarrollar el siguiente teorema previamente recordemos los siguientes conceptos: Definición : Forma bilineal (ver Seymour Lipschutz [9]) Sea V un espacio vectorial de dimensión finita sobre un cuerpo k. Una forma bilineal sobre V es una aplicación f : Vx V 1-4. k y satisface: a) f(aui b) f (u, av i bu2, v) = af(ui, v) + bf(u2 , v) bu2) = af (u, ) b f (u, v2 ) para todo a, b E fe, para todo 14,14 E V. Se dice que una forma bilineal es simétrica si f(u, = f (v, u). Teorema 4.5 Dados la funcional cuadrática 7(u) = fH (F1,„ + 2Fly terpolante F(x, y) = 2n E t4M:c, y) + E 4Mx, y), ny )c1H y el in- fí, g, funciones cardinales de soporte compacto, y también la función bilineal simétrica a(F, G) = f11 ( &x Gr , + 2 Fn G.y + Fyi ,Gyy )cll 1 . Entonces q(u) = a(F, F) = uT Au+bT u+c, donde u es un vector que contiene las derivadas parciales z„„ seguidas de las derivadas pardales zy „ A ;.1 = y c= a(fí,h), bí = 2 E a(A,91 )zi> j=1 a (E z,g i , E zi gi ), 86 Prueba: Para F(x, y) = 2n E14 h(x, y) + E ziMx, y) tenemos: 2n F.(x, y) = E14.his(x, y) + E zígía.(z, 11)) Fxr (x ) y) E u,A.,(x, y) + E zigi..(z, u), =i = YY (X> y) = F í=1 í=1 j 2n E tlifí„(x, i=1 + E zigi„(x, Y). j=1 Denotando al = E u¡A„„(z, Y), i=i = zigi..(z,Y)) E j=1 bi = E u-ífígm(z, y), E zigi„.(x, y), 5=1 el = E uiL„(z, y), í=1 e2 = E zigi„(z, y), tenemos F.(z, y) = a l + a2, , = b1 b2, ci y reemplazando Fvy (x, y) = en q(u) resulta 2. 2 2 q(u) = ¡ H[(a1 + a2) + 2(b1 + b3) + (c i + c2 ) 1c1H 2 q(u) = hila? + a2 + 2a i a2 + 2bi + 4b 1 b2 + 214 + ci + 2c1 o, + 4dH Agrupamos q de la siguiente manera (u) = fi,(4+ 2by + cy),:u/ + fH(2a1a2 + 4b1b3 q + f ff (al + 2b1 + c.22)dH. 2c1 c2)c/H Desarrollando cada sumando resulta que se cumple: fH (cil + 2by + cDan uT Au, fH (2ct1 a2 + 4b1b2 + 2c1 ca)rIH = bTu, fH(al + 261+ )6111 = c q(u) Au + b r u + e a(F, F) Verifiquemos que se cumplen estas 3 igualdades relacionados con q. Desarrollemos uT Au = { U 1 U2 • • U2n .. + 2fi écr h,..11 + f2vr f1,vrdH • fH(f.,.. • fff 2 frz f2,r,w f1"f2Nzli fl ,Ify f2f$,~)(1/1 • + + Abyth,vv)d-li fi/ (heirss ••• 2 f2n,xy f2nray f2n,fir f2 ,spi )dH Ul U2 U2n Entonces uT Au ea: 2n E i=, f f i ••• + 2n + A,..vh,zy + Ayyfiwy) + E i_] 3,* fH ah + 2A,, El + fin f2,,,n . + Ef t séptimo,— sumandos resulta: fif ,f2" + f‘,.v.f2,71,) + 2 Agrupando el primero, cuarto, el segundo, quinto, octavo,... sumandos resulta: 214; el tercero, sexto, noveno,... sumandos resulta: fH En conclusión tendremos: uTAu = fff (ctl + 214 En forma análoga se comprueba que se verifica las dos igualdades restantes que conforman los sumandos de Teorema 4.6 f H (F 2 2Fly q. Dado la funcional F:p )dH tiene cuadrática q(u). El problema (P) Minimizar q(u) = solución única. Prueba: Para demostrar que el problema de minimización de q(u) tiene solución única, dado que 88 la matriz es simetrica, es suficiente demostrar que la matriz A es definida positiva. Eso mostramos, probado que F # O implica a(F, F) > O. Si a(F; F) > O y u#O tenemos: uTAu + bTu c > O y para u y —u se cumple: uT itu > —bTu + c > O, Y uT Au > b T u Resulta: uTAu — c > bTu uTAu — c > c > O. —bTu luego se tiene: uTAu — c > Ibrul > O. Ahora supongamos que exite u1 tal que u1 T Au1 = O. Reemplazando en la última desigualdad tendríamos c < O lo que no corresponde al signo de c, entonces necesariamc Ite se cumple uT Au > O. para u 0 O, luego tendríamos por definición que A es definida positiva. Por otro lado lo que 1108 falta es demostrar que a(F, = O implica F = O. Demostraremos alzando la equivalencia: f ff (F2 Para. a(F, F) = O F = O, F8, = O, Como Fs.= O tenemos 2P2o ni )dif = O Faq = O. F.(x, y) = r(y) => F(r , y) = r(y)x (b(y) Fy( 0 , y) = 1j(Y)1 + ny) Fvy( 1, Y) = r ft(Y)0 95"(Y) = Ot r(y) = cl , 911(Y) = c, F(x, y) = rii(y) = O, A (Y) = q5"(y) = O 95(y) = c2y c3 + c2 y + c3 c l , a2, c3 son constantes F Desde que Fwy(x) Y) = es una función lineal en H es independiente de los valores de los datos, sin perdida de generalidad podemos asumir que z = O, í E {1, ..., n}. Entonces 89 F tiene por lo menos tres ceros en H y por lo tanto es idénticamente cero. O Desde que q con respecto a u. es cero obtenemos un sistema lineal de orden 2n: 2Au+b=0 donde A ea simétrica y definida positiva. 3. Método local de Renka jaine Para tratar el 'método local de Renka y Chile para calcular las derivadas parciales" previamente describiremJs el método de interpolación cúbica de Hermite (caso particular). Método de interpolación de Hermite: Hermite a diferencia de Lagrange interpola con polinomios no sólo utilizando loe puntos de datos, sino también con la información de la derivada de los datos. El caso que nos interesa para entender el método local 2 de Renka y Cline es cuando tenemos 2 puntos como datos y sus respectivas tangentes, esto es: p(0) = po 0 P( ) rno p(1) = p i ib(1) = rni El punto p podemos escribir en la forma cúbica de Bezier y sabemos que son determinados por cuatro puntos bo, 6 1 , b2, b 3. Dos de loe puntee son determinados fácilmente bo = Po, b3 = pi . Los otros dos puntos calculamos utilizando la definición de las derivadas en los puntos finales de las curvas de Bezier: s(0) = 3ábo, 3b á 2 / donde 1 S i = po + 5 - rno, b2 = pl — ábo = b l — b0. áb2 = b2 — bi. Luego el interpolarte en la forma de Bezier ee dado por: P(t) = Poin(t) + (Po + Irno) Bi(t) + 90 — mi) in(t) + PI B1(1). Agrupando tenemos la forma cardinal: P(t) = PoHó(t) + ?no H l (t) miln(t) + Pt In (t). donde 1/1(t) = /32,(t) BIt) liNt) = -31--in(t) 111(t) = --1/11(t) Hg(t) = B1(t) nt). Gráficamente tenemos: En el método global 1 de Renka y Cline para calcular las derivadas parciales [31 determinamos el valor de u al minir, izar la norma L3 de la curvatura linealizada del interpolante F(z, y) sobr H y deducimos que encontramos u al minimizar la funcional q(u) = fH (F1, + 2FIr + Fr2p )dH , donde fi(z , y) = E u, f;(x, y) + E ;Mx, y) y las com- ponentes de u en el método global de Renka y Chile Para el cálculo de las derivadas eran los z.„ i E {1, , n}, seguidos de las zr ,. 91 Ahora, en el método local de Renka. y Cfine para el cálculo de las derivadas que desarrollamos, el vector u tendrá sólo dos componentes z.„ zyk , y encontraremos u al minimizar la funcional qk(u) = fn(g2 F:v )dH, donde Tk denota el parche del triángulo 2F" conteniendo el nodo k. Luego, para hallar el minino en cada parche 71 k E {1, ..., I} se podría plantear el siguiente sistema: aq _ aqk _ o az, — az,„ aq [bu aqk _ o az» ya que estamos utilizando condiciones necesarias de minimización en el triángulo Tk. Para reducir el esfuerzo computacional, se introduce la siguiente aproximación de qh : ij k va a ser la funcional cuadrática, definida por la suma de los cuadrados de la norma Ir2 F a lo largo de los segmentos cuyos extremos son el nodo de la curvatura lineal,ada de kysuvecinoi i =1,...,m: 41 ( 4 I V) = E Io t=1 I [47(012 dt; donde t varia a lo largo de los segmentos, 14 es la longitud del nodo k al nodo í y 4n(t) es la restricción del interpolarte F hacia el lado cuyos extremos son los nodos i y k. 4,, puede ser hallado usando los l í(t) como interpelantes cúbicos de Hermite, considerando sus valores y derivadas direccionales de F en los extremos de los lados Li. Al reemplazar qk por qk se tiene la misma estructura asociada al "método local 1 de Renka y Cline'. Para resolver el sistema de ecuaciones planteado, se emplea el método de GaussSeidel con bloques de 2 por 2. Para k = 1, , n, sea z,,„ y zi,, la solución del sistema: aq 5i.„ 0, az» o las componentes de z.,zy son dados en cada paso. Como se tiene la misma estructura que el nt..1todo global para calcular las derivadas parciales, se prueba que la solución es única, además el método de Gauss-Seidel que vamos a utilizar para hallar la solución es un método convergente. 92 Mediante las rutinas de Renka [14], la subrutina GR.ADG estima el gradiente en loe nodos utilizando el método local 2 de Renka/Cline tenemos el sigiente resultado, z z y 2.5 6 1 —0.8659320 —1.32137 0 0 1 —0.071389 1.80535 3 4 3 —1.422887 —1.01657 2 3 5 —1.24743 0.144452 5 2 1 —0.908824 0.321953 Empleamos estos datos, graficaremos la función interpolante de Shepard Si debido a que podemos utilizar de datos de entrada las derivadas parciales que hemos calculado por el método de Renka/Cline para el calculo de las derivadas parciales. Esto lo mostramos en la figura 4.1. 4.2 Método de Quak y Schumaker Dado un subconjunto p = {(xí,14)}:1_, en R 2 y sus correspondientes valores de función, el objetivo es construir una función S que interpole dichos datos. Vamos a suponer que están dados z,„ zv,), i e {l, Tocher en el triángulo Ti, i n}. Previamente definimos la división de Clougth NT Definición 4.6 Dado el triángulo (PI í E {11 ... I NT} y sus lados e1 , ea , e3 . Conectando el baricentrop4 con los tres vértices pi , P2, p3 se forman tres subtrííngulos, la división de esta forma es referido usualmente como la división de Clough/Tocher. Luego construiremos ulia función interpolante bicúbica Sr í en C l (Ti ) que satisfaga las condiciones ST;(pi) = z,, DxST;(pf) z xi , D y STi (12j) = xrj , j E {1, 2, 3} (4.2) y las condiciones adicionales para los polinomios que describen las derivadas direccionales en la dirección normal de los lados e l , e3 , e3 sean polinomios lineales y, si esto no es lo Figura 4.1:' Punción de Shépard S1 con del método local. 2 de dasós 94 R2nlak y Cline posible polinomios Estas condiciones adicionales junto que toda la superficie cuádratícos. uniendo las piezas (4.2), Vi E 1 , n}. condiciones de interpolación dadas implican es globalmente C' si satisface las condiciones con lie , Sr i p2 , p3 dividido Ahora en la figura 4.2 siguiente mostramos el triángulo de vértices { ..., y donde catan situados los coeficientes de que nos en tres pi. , al triángulo i para calcular la pieza p seTlee q restringido Bernatein/Bezier de los En el subtriángulos triángulo T, los coeficientes c13 , c 14 catan situados en serviran polinomial qpi y en q7;forma trivial se puede demostrar respectivamente, e ls,coeficientes, son que dichos puntos donde catan situados dichos subtriángulos p1p4p3, p2p4p3 equidistancia en15217494, los coeficientes de cada lado de cada los baricentros ya que existe baricentros, subtriángulo. 95 PI CI ce e'9 P4 C17 CI4 Ce , C2 C18 C1), '' -'''' C7 s• ,,,, C12 P2 es P3 Figura 4.2: Split de Clough—Toclier En el siguiente teorema hallamos las fórmulas de loe coeficientes ch calcular el interpelante q sobre el triángulo Ti, mostrado en la Figura 4.2.. DO c19 para Teorema 4.7 Sobre el triángulo Ti , el spline q tiene los titiguieUtes coeficientes de Bernateán—Besier: ci = C2 Z21 Cg = Zg, C4 = ((z2 C6 = ((24 C6 = ((`13 0 7 = (( x3 Cg C9 Z1)Zst + (Y2 — Y1)Zyt )/3 (y4 Z1)Zet Y1) ZTI)/3 + Z11 X1)Zzt + (Y3 — Y1)Zyi )/3 2 (y3 — Y2 )21,3)/3 + Z2 I 2)43 (( X 4 — Z3)41 + (Y4 — r2) ZY2)/3 = ((z1 C10 = ((z1 Zi, 2 2)Zx2 (111 2. 2) 112)52)/3 + Z2, 3 ) 111 + (Vi — Y3).51)/ + z3, r3 Z 1 e11 = ((x4 — xl)zw: + (14 — 1/3 )zy3)/ 3 + z3, e12 = ((x2 — x3)xx, C13 = (es (Y3 — 1/3 )zy3)/ 3 + Z3) c8+ (01 — 1)ei + (2 — 30 1 )c4 + (301 — 1)c9 — O i c2 )/2, Cu + (02 — 1)C2 + (2 — 302)07 + (302 — 1)c12 02c3)/2, Cig = (Cll + es + (03 — 1)c3 + (2 — 303)C10 + (303 — 1)C-8 03C1)/2, C14 = (e8 C16 = (C15 + C5 + c13)/3> C17 = ‘C18 +C8 + C1411 \ -> CI8 = ( Cf• C15 + C17)13 ) e19 = (C1 + c2 + c3 )/3, donde 91 — 92 Og — (x4 - z1)(22 - xi) + (Y4 - Y')(y2 2 x 1 /1) 2 ( 2 — r1) + (Y2 — Y1) (z4 — 1 2 — 12 ) + (y4 13 2)(1/1 — 11 ) — 22 )2 + (1/3 — Y2 )2 22)(23 ( 23 - (=4 - 23)(z1 - 23) + (y4 - y3)(y1 - y3) (z, - 23)2 + (y, - Y3)2 Prueba: Consideramos primero la pieza polinomial p = gni 97 71, 1 , es el subtriángulo de los vértices pi , P2 en la figura 4.2 esta dado por La representación del /N, tnostrada. polinomio donde (r, s, t) son las coordenadas reladel punto (z, y) en el triángulo 3 2 2 2 2 3 2 2 p(r,s,t) = c r 3c r s 3c 17r t 3c6 rs +3c8rt c1s 3c4ts 3c6st c t3 , tivo a loe vértices16p4 , p i , p2i6 . Ahora calculemos los coeficientes del T, 1 en el2 Ti„ baricéntricas siguiente orden C4, C9, C15, Primero identificaremos los coeficientes el, c2, • • $ C13 • de la siguiente manera: , els) es ei = baso C8 C2 Calculo de c4 = bo2i C17 (4.3) 11 210 bi2o = c13 = bIll co = boi2 subtriángulo C18, C171 C19 C19 = C16 1 102 Para encontrar = 1003 utilicemos la = = b201 definición 4.3 para luego compararla con la= definición bsoo clásica de la Calculemos la derivada en elc.1punto de p en la dirección y1 ) en términos de los coeficientes de y direccionaL Para la ubicaciónderivada de los puntos tendremos en cuenta el sentidodirecciond. como muestra la (r2 — zi,y2 figura:yl) (zi , Bemstein antihorario siguie:ite 98 Bezier: El Vector unitario de Y2 (t2 zi dado por: y1) — (z2 118 tAt (Y2 zblh - 111) = 2 Hallando el vector a en coordenadas\i(z2 - zi) obtenemos: - 1/1)2 r1 y1)+311 X2 barícéntricas y2) 1/2 (y2 — =1 (zi, Haciendo I Y1 — = V(.r2 - - + 7' 1 +3 1 si z4 1/2 z2 Y1 1 - )zi + + t1x2 = (agrupando) ( 31 t i )y i + + t i y2 = - ( — z1 +x4)81 ti (X2 (y2 — -y Luego por la regla de Cramer resulta: 1/4)31 + 21 1 Y1 Y2X2 — = i 1/1 Si = d.= - Ya — za , — zi — 1/1 ) = 1 1 z2 — z1 1 1 =0 ti = - (o, —11 , en coordenadas El punto pi I /2 1 = 3:1 — z1) + - -- está dado por (0,1,0). Utilizando la definición 4.4 se cumple: baiicéntricas = (zi, Yi) p() donde ) (=4, y4)+t12 (z2, = (2 2' 1 - y i )3 ' z1)1 3 +O, tenemos teniendo ) N,y(x2 A:7-+t x 1 ) (y2 /2 - yi)que + (cuenta - 11)2 en Da n E ,, -1(~) f = IA=tt-1 [db ,14-ai + eb,t+e3 + Ert = n 141uí 99 = Br n! (u v, w) • • = 71.-wc?` t u/s , u = (0, 1, O), n = 3, tenemos: kemplazando datos tenemos: a = I /0;7(11) = B1(u) E (ek+ + f 3 3 ki=2 pV.9 E (—t.s...„, +1)4,j B!(0, 1, o) 7 3 7i+j+k=2 E 21 b,4-13 t ilj!k! —v 7,+-1 1'ü Luezo tos sumandos e anulan a excepción de los correspondientes a = 0, :t = 2. Luego tenemos: Do _lit,1/0.7 ( /-4 I = 3 = -1,-b0 3 e + que \ 2! — 2! í- oro 2,o)+0,1,o) + i>0,2,0+0,0,1)) = es la derivada direccional en el punto (x 1 ,11 1 ). Do../ = r--- 31c.< - V( ( x2 — ) 1 )2 + (12 — /1 ) donde 11 = (0, 1,0) está identificado como el punto (x 4 ,y 1 ). le c en términos del gradiente tenemos Di psü*4 1)z 1 - ' ' +fv" - =1)2 + (y2 - donde 1. );p3 denota la derivada direccional en la dirección (z2 - r 1 , ; R. - y! ) en el punto Igualando y despejando tenemos: c4 = — 11 =n — !)z.1 + (112 - til)zyd krma análoga se calcula ch , ca , ca. Para el Cálculo de cv: Se calcula, la derivada en la dirección a = í z 4 - zi , f)101) = i 2 V (X4 — X1) + (y4 100 2 Yi } 4 - y ! ) en el punto p4: ti = (1,0,0), v en terminos del Iradiente por detinicion está dada por 4— ~pf itl _ (xs — =1 \Ar-4 — 11)2 4- (v4 — D donde:Dípii denota la derivada dírcccíoual en la. dirección (34 xi0/4 — Vi) en el punto z., ; ) Igualan d o y despejando tenemos: 2 %)2.-zi + (y, — :45 = 1 Cált:ulo de ,f:a y cg : el punto p, la derivada direccional en la dirección u — zt, yz — y;) de .Berusteín y Bezier está dada por 3(cs c2) — x,)2 +11» -- tk, D<zp(ii.) — 1= (0,0,1), 2 y en téyrninog del gradiente epté, dada por: 1 x2 .7 1 = (2' — ) .4 + ( /1 Y2)zy2 — Y2)2 (11 — 12)2 + 1 D.T t í 211 denota la derivada direccional en la dirección (zi — z2, Yi — y2 ) en el punto (z2 , y2). Igualando y despejando tenemos: = La derivada direccional a DiP( 21) -1 rí2 — 3 11 1 — 112);c2 1/2)Z721 (ff t ' z¿. (4-.4 -- =1, y, — y.2 ) de Bernstein/Bezier .está dada por v (zr2 — ;ya' t (.1/2 — ifl )2 u= (O,1, 0) eu vérininos del gradiente está dada por. = (x4 -- x2 \4414 , (1/4 — 112) 712 '2) + (Y2 — Yi)2 1 2 lp,ualando y de.spejando tenemos: r 3 i( l' 2)2Z2 (114 112) 21,21 • de 6i cácelo de es un poco mas complejo y procedemos de la siguiente manera C.ICulti figura 4.2 vemos: ert De id. recordemos la definición de proyección: Dados c y definimos la dei vector de sobre el vector g 1)rlwiamente proywcion 3 vector unitario en g: dirección de la altura del lado Utilizando la definición de proyección2b. tenemos: Prowa = ilbii el Clalcularemos f/ la Pi) r fig ura 4.2'1 ver -4 — ) Pro-y(1, -p,)(P4 — == (p4 - 102 + 14"4 tri (Z2) Y'3), (4.4) ').(P1 - P2 ) (Pi - P2i) - P2i2 Reemplazando en (4.4) tenemos: I n= - , t4 - ZI )(22 — 21) + (Y4 — YIXY2 — Yi) (22 — 21)2 +(y2_ Yi)2 (x4 — ri X*2 — 21) + (Y4 — Yi)( Y2 14), yi)+ kz3 (z2— zi)2 + (Y3 — Yi Y4 —1%1) {(r4=d Definimos el = [(24 — 21 . (z4 - =1)(z2 (z [( 4 — 1) — 01(22 — entonces 2$ — Y21 ) — 1/1 )} • Zi) + (Y4 — Y1)(Y2 — Y1) ri + (Y2 — Y1 )2 2 2 2 2 — 042 — Yi) (y4 — d d Rallando n en coordenadas baricéntricas tenemos: t', x , yi )+ zy: — 91(1h — — 111) [(z4 — z ) — 01(z2 — z1) 1 y4 si 4 e) donde (4.5) rt + 3, + t i = O, ?IX& + 21x4 (z4 Z1) tIZ2 Z1) 1(Z2 Yi) — 042 d (y4 nyi +31y4 + fly2 0 — (4.6) in) (4.7) (Reemplazando 4.5) en (4.6) y (4.7) tenemos: ( 1 — t1)Z1 -3 1Z4 + ti Z2 5 = (3:4 (— si — ti)Yi 4- siy4 + tiy2 = °I) 9 d 1(Z2 — 0 (y4 — Y1) — 42 — YI) d Ordenando resulta: a,(—x,+ 04) + tl(Z2 si (—y, + y4) + — zI) = 1 — 1 1) 103 (04 — 01) (1/4 0 1(02 — 0 1) /11) — 042 — Vi) Por la regla de Cramer encontramos s i , s2, t i : I (z4 -za-el(r2- x1) Z2 - d (Y4 — Yi) — 01(Y2 — 1 /2 - 1/I d Z4 - x1 Z2 - Z1 - 112 — YI 114 111 Z4 - x1 Z2 - Zi 114 — Y1 112 f4 Z4 = 7:2 - Z1 - Z1 7 1 - 111 - I (Z4 - - 01(22 - Z3) (1/4 — — 0 42 — ri) = d x1 Z9 - xi X4 114 d - 111 Ü2 Y4 — Vi (Y4 — 274 ~ Z1 111 - ▪$1 _O 1 01 tri xi ) ) — 01 (Y2 — Y1) 212 - xt 11'2 - 111 (x2 —x1) —91 02 — Y Zt -r 11i — 91(x2 =4 — x1 (z 4 ti = , — =0 104 ) —01 , y como = ti — Identificando los datos tendríamos: 7t2 = r 2 = —1 d = $1 = = ti = (ni, na, n1 ) loe datos n = 3,11 = (r, 8, t) = (O, 1 — 3, 8), donde oi es un punto del lado Tii 1r2 en coordenadas baricéntricaa. Calculamos Dnp(1): Di,, p(t1) = 3 E d ) 1+.1,+ (t9i d ji1=2 1 Pa-b( ) = 3 E 11=2 f (0, — 1).1 d %-s2 105 k+c3 — d i+0. o, 1 dh:+4 MÍO — 3)4 , (4.8) i! j!k! 4 Si i = O necesariamente se cumple: j+ k = 2 O 4- 2 = 2 (j, k) = (O, 2) 1+ 1 = 2 (j,k) = (I, 11 2+0 = 2 (j, k) = (2, 0) =r (i, j, k) = (O, O, 2), J (i, j, k) = (O, 1, 1), (i, j, k) = (0, 2, 0). = Desarrollando (4.8) tenemos que Do(ii): 1 3 () . birr3 [ I + — W) b120 (2)(1 — d 1 db 3.)032 41 2 0 ( 1 (1 s) 1 3 + (61 — 1)/1030(1 )2 0 2 )12021 0 (2) s 8)2+ y 31 + (el d— 1) b0o ar ao 81 —1 bo0.3 11(1 — srs 2 — -2°1bo12(1 — 3/ 13 2! d d 2 } reemplazando en (4.3) resulta: Dilp(ii) = 3 [1ess2 id 2c133(1 — 3) d (01 — 1)ces2 + 2 1 c5(1 — s)2 + 1(01 — 1)c.4(1 — s)s + (0 — 1)(1 — s)2 ci — 1 01 c2(1 s 2 + e9(1 — 8)3 — 7C4(1 — 3) 21, (4.9) donde des la distancia del punto p.1 el lado el y 01 definido en el teorema. El polinomio Ddp(1.1) se reduce a un polinomio de primer grado en s si y sólo si la segunda derivada de la expresión (4.9) vale cero en s, es decir 0= + 2cs + 2c i (01 — 1) + c4-201 —4(81 — 1)1+ — +c,[401 + 2(01 — 1)] — 20101. Despejando exs tenemos: C33 = [ea + ea + (03 — 1)e3 + (2 — 303 )ea + (303 106 — 1)c9 — 93 c2]/2. de Petra el ciiicald tenemos c le , e i7 CI6 últimas expresiones se deben a. que se forman paralelogramos. Por ejemplo para Cr? forma un paralelogramo y justo el punto medio de las diagonales va ser el Estas medio de las justo punto medio del lado y para el paralelogramo c.!_els ch3c il y de esta manera el punto ele es el va a ser el punto medio de e6c 1G ezc i6 elpuuto c lics, En forma análoga se demuestra para c 17. En forma análoga se calcula los de c6c 16 barimitro diagonales para los otros i7s , C13. coeficie'ltes Método Dado 4,3 un conjunto p subtriángulos. 2 G de {pi bivariante E ron sus respectivos valores de función 1, n}} en R 3 de puntos disipados, Clough-Tocher gradientes y su El objetivo = (xi, 2: { , construir un .9 R 2 R con soporte local, compuesto por funciones zi , z.„ zy , Hessiano. de tal manera que la función sea de clase C2 sobre el casco convexo. Dados cs interpolante : f--1 vértices del triángulo, para construir dos lados de una división se triseca dos biquinticas, ángulos con cuatro rayos y se escoge dos de est rayos que al junto con lcx.3 minimal, los dos dados, formen un área mínima con los vértices correspondientes. De esta , s intersectarse manera podemos construir 6 lados. vértices Los otros 3 lados se formaron al unir los tres puntos de intersección que formaron el área = mínima. .107 Figura 4.3: División minimal Farin [8] muestra que una función interpolarte C2 no puede ser construído con una, división minnnal de Claugh/Tochear. La dificultad puede ser la división de cada ángulo en dos partes ya que para la construcción de la. función interpolarte C2 se requiere dividir los angulos de los vertices del triángulo en tres partes. Clongh/Tocher señalan que no se ha construído todavía un interpola,nte C2 considerando una división minimaL Más bien Clough-Tocher han considerado la doble división que lo definimos de la. siguiente lob manera: Primero dividimos el triángulo en tres subtriázigulos y cada subtriátigulo en tres inicrotriáneulos. Así el triángulo es la unión de 9 tnicrotriánnlos, No referimos a/ centro de gravedad como el bazicentro y a los centros de gravedad de los isubtriánRulos como su subbaricentro. B C A Figura 4.4: División doble de elougli--Tocher 1.khora en ta Fig. 4.5 en el triángulo i = 1, , n mostrarnos los coeficientes de Bernstein- hezier que sirven para calcular la pieza polinomial quintica qi 109 restringido a T. Figura, 4.5: División doble de CkwgIr-Tocher y la red de B&iec para la construcción de polinomios biquintícos En la Fig. 4.5 el punto v4 es el baricentro del triángulo, y los punkm v1, vb ,v7 son los baricentras de loe subtriángulos formado por los vértices v•2, v3 ,v4; vi , v4 v3; vi , v4 , v2 re9pertivamente. Teorema 4.8 Dados Jos vértices v1 ,02 , t?3 , v 4 , vb , ve , V. Entonces se cumple: v5 = 4v4 — v i 3 v7 = 4L/J4 — 113 ve = 3 4v4 — v2 3 • Demostración: v4 + v2 + v3 3 + v2+ v3 v4 3 v2 = 314 — v 1 — v3, v3 = 3v4 — — [v4 + (3v4 — — v3) + (3v4 — vs — v2)] vs= Vs = vs En forma análoga: _ 4v4 — v i 7v4 — 3v4 — 3 17= 41)4 — v3 vs = 3 . 4v4 — v2 3 Clough—Tocher requieren representar el interpolante biquintíco y la ubicación del punto p, del triángulo, para eso generalizan la noción de coordenadas baricéntricas. La localización de un punto general p en el triángulo es e; presado como: 7 7 p == E biv, i=1 (4.10) bi = 1, donde los fn son fondones cardinales definidas sobre el triángulo en la triangulación, esto es: b,(1)i) = ó ij , 8 delta de Kronecker. Fi interpolaste q restringido al triar gulo 71 es construido de la siguiente manera: q(p) = 5! E , IN!) E ij= 5 j= 7 7 H j=! (4.11) 1 donde cit ,ís,í„,..,i, son loe coeficientes de Bernstein-Besier, donde el polinomio q restringido al triángulo Ti es un polinomio biquintico. Por conveniencia consideramos = 1. Esta formula es una generalización para calcular /(1) que estamos denotando como q(p) 111 donde u = ,1)7 ) tiene siete componentes y los son números reales. A difer- encia de lo que normalmente es un vector diríamos que son números de control de la red triangular de Bezier. Similarmente el punto q y el interpelante en cada subtriángulo pueden ser representados. Por ejemplo, para el 0147, obtenernos P donde q(p) = b i t), +64 v4 + byu, 5! i1jiii;°°"°Ablb«1414) í+j+kwaS ( E (4.12) La suma y el producto de las ecuaciones (4.10) y (4.11) indican que el triángulo ha sido dividido en 7 subtriángulos. En la ecuación (4.12); b i , b4 , b7 son las coordenadas haricéntricas en el triángulo 1, 4, 7. Expliquemos cómo loe cíooiook están identificados en el microtriángulo 1, 4, 7: 112 Corno í + j + kw- 5, i, j, k E Zt; tenemos: j= 0 --> k= 5 ---> (O, 0, 5) j= 1 --+ k= 4 --> (O, 1, 4) j+ k= 5 j= 2 j =3 --+ k= 3 ---> (0, 2, 3) --> k= 2 --> (O, 3, 2) =4 --> k =1 --+ (O, 4,1) j= 5 --> k= 0 --+ (O, 5, 0) j= 0 ---+ k= 4 --+ (1, 0, 4) =1 --> k =3 = j+k=4 j=2 --> ---+ k= 2 -4 (1,2,2) i-O j j i =1 =3 j= 4 j= 1 -+ k=1 ---> (1, 3, 1) ---> k= 0 -4 (1, 4, O) --> k= 3 ---> (2, 0, 3) ---> k= 2 --+ (21 1, 2) j= 2 --4 k=1 --> =3 --> k =0 --> (2, 3, 0) j j= 0 i=2 j+k=3 j j= 0 i=3 i=5 Debido al A147 (2, 2, 1) -+ k = 2 -+ k=1 --+ (3, 0, 2) --+ (3, 1, 1) j=2 ----> k= 0 ---> (3, 2, 0) =0 -4 k =1 --+ (4, O, 1) j=1 ---> k= 0 --> (4, 1, O) = j+ k = O { j= 0 --+ k= 0 --> (5, 0, 0) ) = i =4_ (1, 1, 3) j j +k = 2 +k = 1 j= 1 j los coeficientes de Bernstein-Bezier estarían identificados de la siguiente manera: 113 0 1004000 oosoim emano:, 0 1002002 C003002 0 0001004 0 3001001 0 C1001003 2001002 0 0 0002003 1000004 C2000003 En forma análoga los 8 3002000 0 4000001 0 600000 restantes. Ahora contemos cuántos puntos de control de En cada C3000002 4001000 0 2002001 0 0 existen: 6 puntos interiores, lo que serian en 9 triángulos en total 54, más 7 puntos en los vértices comunes a los y 60 en los lados del ontenemos microtriángulos (sin considerar vértices en común) de tal manera que sumaria: Bézier 54+7+80= 121. microtriángulo existers Ahora consideremos la ubicación del punto: El punto p subtriángnlos en coordenadas generalizadas está dado por: microtriángnlo nn Primer paso: Calcular las coordenadas con respecto al triángulo, esto es: p baricéntricas 114 baricéntricas b i v i + b-21r2 + bsv3 . Sia {i;:7,1c} = {1,2,3} tal que bi = bi, bk1 El punto p pertenece al subtriángulo vi, vk y v4 . Entonces las coordenadas baricéntricas con respecto al triángulo ai, ak y as están dadas por a4 = 3bi, al = bk bi y ak = bk — bi. Segundo paso: Después repitiendo el paso 1 sobre el subtriángulo, ubicamos el microtriángulo que contenga p. La explicación de esto es la siguiente: 115 P =— litif + i2v2-1-104; VI + pero 04 = 403, vi 4- 102 + va + I2v2 3 b2v2 P = V2 4- V3 P = 3 lava 11 p = (11+-1-1vi+ 12+ 3 ) v2 + 3 . 3 Comparando tenemos: bi = + 13 62 = 12 + b3 = l3 13 = 363, 61 — b2 = 11 — = bi — 63, = 152 Para este caso tenemos B3 = min{/31 , B3}. Esto significa que i = 3 y j, k pueden tomar los valores 1, 2. 111 Capítulo 5 Evaluación Numérica El objetivo del capítulo 5 es comparar los diferentes métodos de interpolación dey Hardy, los métodos de Inicialmente sarrollados en loe capítulos interpolaremos mediante y por ultimo, ya teniendo una anteriores. y cúbicos que compararemos y lineales, luego ard de para encontrar la rutinas de utilizaremos loa Shep- comparamos triangulación Renka y*Tilines de tríangulación, Thiessen, 5.1 Comparación entre los métodos de graficaremos. aiadráticos Hardy Los métodos de Interpolación de dado un conjunto de datos, Shepard y Hardy son métodos globales debido a que vamos a plantear un sistema lineal de n con En cada ecuación interviene un solo dato. La curvas de nivel en n de Hardy son casi siempre ovaladas,Shepard en cambio en el método de son. Cada función no siempre lo sienapre en los métodos dependerá del incógnitas.los valores de q para el método de método de Hardy se tiene buenos resultados, para q parametro Shepard = 117 el en el 4, en ~lío Shepard 112, q —1. Daremos —112, q interpolatnte algunos ejemplos gráficos variando el parámetro q: remuienda ecuaciones[13] q. 2, q q método = = = = Spaeth 1. Dado el siguiente conjunto de puntosgraficamos las %ademes interpolantes por les métodos de Shepard y z1 = -10, r7 = -6, q = 2 y q = -1. z2 = -10, =3 = -10, re = -6, =9 = 4, X 14 = 10, 215 = 10, yl Hardypara X 4 = -10, zso = 4, Zis = 10, r1 = 4, = -6, X6 = -6, r13 = r16 = 10. ys = 6, 114 = 10, y6 = -10, y6 = -6, = 6, y i2 = 10, yta = 10, y9 = -10, yao = -6, = -10, y2 = -6, 3/7 = 6, y i4 = -6, y13 = -10, ya6 = 6, = S, x3 = 5, x4 = 0, = = 5, za = 5, Zg = 5, Z13 = 0, z14 = 5, z15 = 5, y a6 = 10. Xs = 5, zao = 5, xe = S, zia = 5, :12 = 5, zis = 0. En la siguiente mostramos solo dos graficas ya que cuando q = -1 la función es inestable por el método de Shepard, y para el método de Hardy cuando g = 2. Cuando q = -1, R = 1.4 el método de Hardy es estable y esto lo mostramos en la figura 5.1. cuando g = 2 el método de Shepard es estable, y esto lo mostramos en la figura 5.2 5.2 Triangulación mediante la rutina de Renka Daremos dos ejemplos, uno utilizando el criterio lexicográfico del Max-Min (ver Hosc:hek/Lasser [7]) y otro utilizando la triangulación de Thiessen, y para hallar dicha triangulación utilizaremos las rutinas de Renka [14], y otro ejemplo usando los datos de un ejemplo del capítulo 2 cuando triangulamos por el criterio lexicográfico del max-ruin. para luego comparar con la triangulación de Thiessen. 1. Dados los puntos = ( 51 9), P2 = ( 2, 5), P3 = (4, 2), P4 = (71 1 . 5), P5 = (8. 5, 4 ), 1743 = (5, 8) 118 10 Figura de Hardy, para 5.11 likábdo 119 -1 q= ío Figura 5:42. Método de Shepard, 120 para q=2 2. Pr'=( -213 )1 4 1 -=:( 1%), PSs - V2); pl = (0,0), p6 = (0,3) En ambos casos buscamos una triangulación óptima. Solución 1. Para el primer conjunto de 6 puntas tenemos diez posibles triangulacioner como lo mostramos en la siguiente figura: Por el criterio lexicográfico del max-min, los vectores asociados con esta triangulackl son: 121 criterio — lexicograf i.4':;c4 — mar — min a(T1) = (0.04, 0.14.0.35, 0.46, 0.62) a(r ) = (0.02, 0.04, 0.35, 0.46, 0.62) a(T) = (0.02, 0.11, 0.42,0.46.0.50) a(T4 ) = (0.04, 0.14, 0.35, 0.37, 0.66) a(2"4 ) ----- (0.11, 0.14, 0.42, 0.46,0.62) a(778 ) = (0.02, 0.11, 0.50, 0.58, 0.88) a(r) = (0.11, 0.14, 0.37,0.42,0.66) a(Ts ) = (0.11, 0.14, 0.37, 0.46, 0.70) a(r) = (0.11, 0.14, 0.57, 0.58, 0.70) a(T10 ) = (0.11, 0.14, 0.58, 0.62, 0.88) Comparando los vectores a(T2) < a(V) < a(T6 ) < a(V) < a(Ti ) e 16 16 6 < a(T7 ) < a(7 ) < a(T ) < a(T ) < a(T ), Obtenemos por el criterio lexicográfico del max-min tenemos que 7" es mejor. Ahora, usemos la subrutinas de Renka para encontrar una triangulación optima de Thiessen. En estas subrutinas los datos de entrada son loe puntos E {1, n} y de salida son los vectores lend, Iadj que se define'; de la siguiente manera: Iadj: Es una. matriz ordenada que contiene prime.° los vecinos del nodo 1,los vecinas del nodo 2, y asi sucesivamente hasta loe vecinos del nodo n. Esta lista ea modificada cuando el nodo esta en la frontera del casco convexo anadiendo a este nodo un vecino ficticio que es el vecino cero. El numero de las componentes de la matriz Iadj se calcula: nc = 2*k+n,., donde k es el número de lados y rir es el número de nodos en la frontera del casco convexo. Iend: Es de orden n y contiene los punteros finales de la lista adyacente modificada. Veamos con este ejemplo como interpretamos /acij e 1encl, para graficar la triangulación: Tenemos los siguientes datos cuando procesamos el programa: 122 IEND 1 4 2 8 3 13 4 16 5 21 6 25 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 ludí 2 6 5 0 3 6 1 0 4 5 6 2 0 5 3 0 1 6 3 4 0 1 2 3 5 Vecinos de 1 Vecinos de 2 Vecinos de 3 Vecinos de 4 Vecinos de 5 Vecinos 8 Matrices lend y la4I Figura 5.3: En la tabla mostramos cuáles son los vecinos de cada nodo y si el nodo está en la frontera del casco convexo. Por ejemplo: Como /end(1) = 4 se interpreta que sus vecinos del nodo 1 son I ac(j(1) hasta 1ac{j(4) contando con el vecino ficticio, estos son los vecinos del nodo 1, loe nodos 2, 6, 5 y dicho nodo está en la frontera del casco convexo ya i23 que /adj(4) = O. Los vecinos del nodo 2 son loe 4 vecinos siguientes, es decir /adj(5) hasta la4j(8), contando con sn vecino ficticio. En forma análoga encontramos para cada nodo restante sus vecinos. De esta lista notamos que cinco nodos están en la frontera. Graficando resulta la siguiente figura: PI Figura 5.4: Triangulación de Thiessen. En el ejemplo comprobamos que la triangulación óptima por el Criterio Lexicográfico del max-min coincide con la triangulación de Thiessen en la figura 5.4, pero no necesariamente la triangulación por el criterio lexicográfico va a coincidir con la triangulación de Thiessen debido a que esta no es única. 2. Ejemplo: Mediante el paquete de Renka tenemos los siguientes resultados: 124 4 ladj(2) = 5 ia4j(3) = 2 vecinos de 1 ladd(5) = 1 ladi( 6 ) = 5 ladj(l) = 3 vecinos de 2 lend(3) = 2 ladj(9) = 2 /adj(10) = 5 /adj(11) = 4 lacjj(12) = O vecinos de 3 /end(4) = 16 /adj(13) = 3 /adj(14) = 5 /adj(15) = 1 /4(16) = O /end(1) = 4 1o4j(4) = O lend(2) = 8 /end(5) = 2 /adj(8) = O vecinos de 4 ladj(17) = 2 /adj(18) = 1 lacij(19) = 4 /4(20) = 3 vecinos de 5 Figura 5.5: Obtenemos la figura 5.6 que coincide con la misma gráfica mostrada en el ejemplo que desarrollamos por el criterio lexicográfico del Max-Min: 125 Triang& ación de Thiessen Figura 5.6: Una de las rutinas de Renka para Triangular es la rutina de Trmesh. 5.3 Comparación de los Métodos de Interpolación por Splines bilineales, bicuadráticos, Bicúbicos Dado loe siguientes puntos graficar (zi y i , zi ) = (-2, 3, 3), (z2, y2 , z2) = (1, 5, 4), Y5, zs) (3, 2, 3), (z4, Y4, 24) (0, 0, 2), (Da) Y5) Z6) = (0, 3> 8) sus spfines bilineales, bicuadráticos, bicábicos. Para graficar el apline bilineal, inicial- mente tenemos que triangular. En el capítulo de triangulación se utilizaron estos datos, de antemano obtuvimos la triangulación de Thiessen. Ahora sólo faltaría procesar datos para bosquejar el interpolante. Para eso utilizamos la rutina IntercO. La gráfica de la in- terpolación lineal se muestra así: Una parte de la gráfica de la interpolación bicuadrática 126 -5 Lineal 5.'7: Fláura Splíne 127 -5 Lineal Figura 5.7: Splíne 127 lo Figura S 5.8; 4ine Bic.uadráttco 1211 lo Figura 5.9: Spiine Bkálmeo 119 Bibliografía [1] C2 P.: A Computer 1, p. 257-267, 1984. [2] A.; A C' bivariate1984. Clongh - Tocher scheme, J.Alfekl, 14, p. 223-237, Aided Geometric Design A.; R.: A for oí a Cline, Renka, IL: Triangle-Based J. Vol. Interpolation 14, N° 1, 1984.method. Rocky Mountain Math. [4] De T.: Composing Graphics, Vol. 7, N° Construction Thiessen 3,Cline,1988, Renka, pagel 198, 221.Storage-Efficient Method [3] Triangulation, Rocky Mountain Math. [5] R.: Data Tests Some Rose, 1982. Béxier Simplexes, ACM Transaction p. 181-200, [6] [7] [8] [9] July G.: Curves for Computer Pranke, Press Scattered Interpolation: In; San Diego, 1992. J.; Lesser, D.: Farin,Ltd. 289 Linden and Surfaces Petera, of Methods, Math. del Cálculo Aided Geometric Design, Steet Wellesley, S.: Lineal, Series de Compendios 1968, Kincaid, Cheney Númerico. Matemáticas Algebra Edition. Computer AK Aided Geometric Massachusetts, 1993. Design, Third Academic D.; W.: Análisis Las Hoschek, The University oí Texas enFundamentals Austin, 1994. of Lipschutz, Comp. 38, 130 Schaum, Científico. [10] Maus, A.: Deiannay Triangulation and the Convex Hull of n points in expected linear time, Bit 24, p. 151,163, Norway, 1984. [11) Nielson, G.; Pranke, Surface Constructiou &leed Upon TTiangulations, Computer Aided Geometric Design, p. 163-167, 1983. [121 Powell, M.; Sabin, M.: Piecewise Quadratic Approximations 023 Mangles, ACM TOMS 4, vol.3, N°4, p 316-325, 1997. [13] Spaeth, H.: Two Dimensional Spline Interpolation Algorithma, A. Petera, Weliealey, 1995. Software: [14] Rutinas de R.enka, R.: vea [131 131