un m odulo de interpolaci on de datos dispersos y...

15
Un m´ odulo de interpolaci´on de datos dispersos y su aplicaci´ on a la generaci´on de mallas hexaedrales estructuradas Pablo Barrera, Javier J. Cort´ es, Guilmer F. Gonz´ alez, Jorge Zavaleta Departamento de Matem´aticas Facultad de Ciencias Universidad Nacional Aut´onoma de M´ exico Av. Universidad 3000, Circuito Exterior S/N, Del. Coyoac´an, C.P. 04510, Ciudad Universitaria, D.F. M´ exico e-mail: [email protected], [email protected], [email protected], [email protected] Resumen La interpolaci´ on de datos dispersos es de gran utilidad en la ciencia e ingenier´ ıa para el an´ alisis y modelaci´ on de una gran cantidad de fen´ omenos ısicos y experimentos que se presentan en estos campos. Por ello, se ha desarrollado un m´ odulo que resuelve este problema eligiendo entre varias ecnicas como, distancia inversa, funciones de base radial, B-spline multinivel y kriging. En este escrito se describe el m´ odulo y se mostrar´ a su aplicaci´ on a la generaci´ on de mallas hexaedrales estructuradas. Palabras Clave. Interpolaci´ on de datos dispersos, software, mallas hexaedra- les, mallas estructuradas, generaci´ on de mallas. A module of scattered data interpolation and its application to the generation of structured hexahedral grids Abstract Scattered data interpolation is very useful in science and engineering for the analysis and modeling of a large number of physical phenomena and experiments presented in these fields. Therefore, it has been developed a 1

Upload: others

Post on 15-May-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Un m odulo de interpolaci on de datos dispersos y …tikhonov.fciencias.unam.mx/pablo/pdf/UMIDDAGMHEMetNum...Aqu se presenta el m odulo de interpolaci on de datos dispersos y su aplicaci

Un modulo de interpolacion de datos

dispersos y su aplicacion a la generacion

de mallas hexaedrales estructuradas

Pablo Barrera, Javier J. Cortes,Guilmer F. Gonzalez, Jorge Zavaleta

Departamento de MatematicasFacultad de Ciencias

Universidad Nacional Autonoma de MexicoAv. Universidad 3000, Circuito Exterior S/N, Del. Coyoacan,

C.P. 04510, Ciudad Universitaria, D.F. Mexicoe-mail: [email protected], [email protected],

[email protected], [email protected]

Resumen

La interpolacion de datos dispersos es de gran utilidad en la ciencia eingenierıa para el analisis y modelacion de una gran cantidad de fenomenosfısicos y experimentos que se presentan en estos campos. Por ello, se hadesarrollado un modulo que resuelve este problema eligiendo entre variastecnicas como, distancia inversa, funciones de base radial, B-spline multinively kriging. En este escrito se describe el modulo y se mostrara su aplicaciona la generacion de mallas hexaedrales estructuradas.

Palabras Clave. Interpolacion de datos dispersos, software, mallas hexaedra-les, mallas estructuradas, generacion de mallas.

A module of scattered data interpolation and its applicationto the generation of structured hexahedral grids

Abstract

Scattered data interpolation is very useful in science and engineering forthe analysis and modeling of a large number of physical phenomena andexperiments presented in these fields. Therefore, it has been developed a

1

Page 2: Un m odulo de interpolaci on de datos dispersos y …tikhonov.fciencias.unam.mx/pablo/pdf/UMIDDAGMHEMetNum...Aqu se presenta el m odulo de interpolaci on de datos dispersos y su aplicaci

module that solves this problem by choosing among several techniques likeinverse distance, radial basis functions, multilevel B-spline and kriging. Inthis paper we describe the module and its application to structured hexa-hedral grid generation is shown.

Keywords. Scattered data interpolation, software, hexahedral grids, struc-tured grids, grid generation.

Introduccion

En terminos simples, la interpolacion de datos dispersos se refiere alproblema de ajustar una superficie a traves de muestras de datos con distri-bucion no uniforme o aleatoria. Este tema es de gran importancia practicadentro de diversos campos de la ciencia e ingenierıa debido a que en ellos esnecesario analizar y modelar varios fenomenos fısicos, experimentos, valorescomputacionales, entre otros, a partir de datos obtenidos en posiciones irre-gulares dentro de un dominio de interes. Por ejemplo, de acuerdo con Leeet al. [9], mediciones no uniformes de cantidades fısicas de varios fenomenosson tomadas en geologıa, meteorologıa, oceanografıa, ingenierıa petrolera yminerıa; datos dispersos experimentales son producidos en quımica, fısicae ingenierıa; y valores computacionales espaciados de manera no uniformesurgen en la salida de las soluciones de ecuaciones diferenciales parcialesobtenidas mediante elemento finito. Por esta razon dichos campos requierenutilizar la interpolacion para propagar la informacion sobre todas las po-siciones de un dominio de interes para ayudar con las tareas de analisis ymodelacion.

Con el objetivo de facilitar la resolucion del problema de interpolacionde datos dispersos en dos dimensiones se ha desarrollado una herramientacomputacional que utiliza algunas tecnicas con diferentes enfoques, entre lascuales estan los metodos de distancia inversa, las funciones de base radial,B-splines multinivel y en particular kriging que es probablemente la mas uti-lizado en la practica. Dentro del modulo se ha creado una herramienta parala construccion de mallas 3D a partir de la reconstruccion de superficies, uti-lizadas como base para la generacion de mallas hexaedrales estructuradas yaque en numerosas aplicaciones es necesario generar una malla estructurada3D que sea adecuada para la simulacion numerica de algun fenomeno den-tro de una region interes. Una muestra de ello se encuentra en la simulacionnumerica del flujo de hidrocarburos dentro de un yacimiento, donde la malla3D que nos permite modelar este fenomeno, debe ser construida a partir delos datos geologicos y petrofısicos recabados en los pozos.

2

Page 3: Un m odulo de interpolaci on de datos dispersos y …tikhonov.fciencias.unam.mx/pablo/pdf/UMIDDAGMHEMetNum...Aqu se presenta el m odulo de interpolaci on de datos dispersos y su aplicaci

Aquı se presenta el modulo de interpolacion de datos dispersos y suaplicacion para la generacion de mallas hexaedrales estructuradas. Con estefin, se describiran primeramente los metodos usados para despues mostrar elmodulo y las ideas de la construccion de la malla utilizadas en la herramientade generacion.

Metodos de interpolacion de datos dispersos en dosdimensiones

El problema de interpolacion en dos dimensiones puede ser formuladocomo sigue: Sea P = (xi, yi, zi) ⊂ R3 un conjunto de puntos dispersos enel espacio, donde xxxi = (xi, yi)

T ∈ D para D ⊂ R2 un dominio en el planoe i = 1, . . . , N . Resolver el problema consiste en encontrar una funcionescalar continua bivariada F , tal que F (xxxi) = F (xi, yi) = zi. En algunasocasiones cuando los datos tienen errores de medicion es util considerar elproblema de aproximacion en lugar del problema de interpolacion, es por elloque tambien se trata este problema. Analogamente, resolver el problema deaproximacion consiste en encontrar una funcion escalar continua bivariadaF , tal que F (xxxi) ≈ zi.

Existe una gran variedad de metodos para resolver este problema, aun-que aquı solo se enuncian algunos de los que han sido utilizados en la practica(Franke [6]). Todos los metodos estan basados en la idea de que el valor des-conocido en algun punto xxx ∈ D debe ser muy parecido a los valores de losdatos zi en las posiciones xxxi que esten mas cercanas a xxx. Los metodos enun-ciados se clasifican en dos grupos: Globales, que utilizan todos los puntos delos datos y locales, en el caso contrario.

Metodos de distancia inversa

La idea original del metodo de distancia inversa es debido a Shepard[11]. Todos los metodos de este tipo pueden ser vistos como generalizacionesdel metodo de Shepard o modificaciones de estas generalizaciones (Franke[6], Spath [12]).

3

Page 4: Un m odulo de interpolaci on de datos dispersos y …tikhonov.fciencias.unam.mx/pablo/pdf/UMIDDAGMHEMetNum...Aqu se presenta el m odulo de interpolaci on de datos dispersos y su aplicaci

Metodo de Shepard

Este metodo global calcula un valor de la funcion F en un punto arbi-trario xxx = (x, y)T ∈ D como un promedio ponderado de los valores zi

F (xxx) =N∑i=1

zivi(xxx), donde vi(xxx) =wi(xxx)

N∑k=1

wk(xxx)

.

Los pesos wi(xxx) son elegidos de tal manera que estos varıen como unapotencia del inverso de la distancia euclidiana de xxx a xxxi (Shepard [11]), i.e.

wi(xxx) =1

dpi (xxx)(p > 0), con di(xxx) = ‖xxx−xxxi‖2 =

√(x− xi)2 + (y − yi)2.

La eleccion de los pesos wi(xxx) tiene relacion con la idea de que el valordel nuevo punto xxx debe estar mayormente influenciado por los valores mascercanos a este que por los que se encuentran mas alejados, ya que, cuandodi →∞ se tiene que wi → 0, para cualquier p > 0, implicando que el valoren la posicion xxxi no tiene mucha influencia sobre la determinacion del valoren xxx. El valor de p sirve para determinar que tan rapido o lento se pierdeesta influencia.

Metodo de Shepard modificado

Una modificacion al metodo de Shepard es el utilizar algunas funcionesconocidas como aproximaciones locales alrededor de las posiciones xxxi enlugar de usar solo los valores zi. En particular, Franke & Nielson [7] yRenka [10] utilizaron funciones cuadraticas bivariadas en conjuncion conpesos que dan lugar a un metodo local conocido como metodo de Shepardcuadratico modificado. Para el metodo de Shepard modificado se define lafuncion interpolante como

F (xxx) =N∑i=1

ui(xxx)Qi(xxx), con ui(xxx) =wi(xxx)

N∑k=1

wk(xxx)

, xxx ∈ D

donde wi son pesos relativos y las funciones Qi son aproximaciones localesen una vecindad de xxxi, conocidas dentro de este contexto como funciones

4

Page 5: Un m odulo de interpolaci on de datos dispersos y …tikhonov.fciencias.unam.mx/pablo/pdf/UMIDDAGMHEMetNum...Aqu se presenta el m odulo de interpolaci on de datos dispersos y su aplicaci

nodales. Los pesos relativos wi son definidos por las funciones de distanciainversa, (propuesta por Franke & Little (vease [6], [7], para referencias)),

wi(xxx) =

[(Rw − di)+

Rwdi

]2, donde (Rw−di)+ =

Rw − di, si di < Rw

0, si dk ≥ Rw.

Aquı, di denota nuevamente la distancia euclidiana entre xxx y xxxi, y Rw esun radio de influencia alrededor del nodo xxxi, por lo que los puntos xxxi soloinfluencian valores interpolados de los puntos dentro de este radio haciendoel metodo local al no involucrar todos los nodos xxxi en el calculo del nuevovalor en la posicion xxx.

Las funciones nodales Qi son funciones cuadraticas que cumplen la con-dicion Qi(xxxi) = zi, ademas de que se ajustan sobre un conjunto de nodoscercanos en un sentido de mınimos cuadrados ponderados, de esta manera,para xxx = (x, y)T ∈ R2 quedan dadas como

Qi(xxx) = ci1(x−xi)2+ci2(x−xi)(y−yi)+ci3(y−yi)2+ci4(x−xi)+ci5(y−yi)+zi,

donde los coeficientes cij , j = 1, . . . , 5, son obtenidos al resolver el problemade minimizacion

mınci1 ,ci2 ,ci3 ,ci4 ,ci5

N∑k=1k 6=i

wk(xxxi) [Qi(xxxk)− zk]2 , con wk(xxx) =

[(Rq − dk)+

Rqdk

]2,

donde Rq es un radio de influencia alrededor del nodo xxxk. Solo los nodoscuyos radios de influencia incluyen a xxxi tienen contribucion no cero al ajustede mınimos cuadrados ponderados, y ası Qi esta localmente definida.

De acuerdo con Renka [10] los radios Rw y Rq se toman variables, demanera tal que estos sean lo suficientemente grandes para incluir Nw yNq nodos, respectivamente, para valores fijos de Nw y Nq, donde, Nq es elnumero de nodos que se incluyen en el ajuste de mınimos cuadrados de lasfunciones nodales y Nw es el numero de funciones nodales que se incluyen enel calculo del nuevo valor mediante el interpolador. Por ejemplo, de formamas precisa, Rq varia con respecto al i-esimo nodo de modo tal que Rq setoma como la distancia del nodo xxxi al nodo (j + 1)-esimo mas cercano aeste para j + 1 > Nq, ası, solo se utilizan j = Nq nodos, que son los mascercanos a xxxi. Rw se obtiene de manera similar. Los valores propuestos porRenka son Nq = 13 y Nw = 19.

5

Page 6: Un m odulo de interpolaci on de datos dispersos y …tikhonov.fciencias.unam.mx/pablo/pdf/UMIDDAGMHEMetNum...Aqu se presenta el m odulo de interpolaci on de datos dispersos y su aplicaci

Funciones de base radial

Sea Πm(R2) el espacio de polinomios de dos variables de grado absolutoa lo mas m*. La funcion interpolante en el metodo de funciones de baseradial esta dada por la combinacion lineal de funciones φ : [0,∞)→ R masuna parte polinomial p(xxx), es decir

F (xxx) =

N∑i=1

λiφ(‖xxx− xxxi‖2) + p(xxx), λi ∈ R, xxx ∈ D, p ∈ Πm−1(R2).

La funcion φ es llamada funcion de base radial y algunas de ellas son(Fasshauer [5]):

φ(‖xxx‖2) = eε2‖xxx‖22 (Gaussianas),

φ(‖xxx‖2) =(1 + ε2‖xxx‖22

)−1/2(Multicuadraticas inversas),

φ(‖xxx‖2) = (1 + ε2‖xxx‖22)1/2 (Multicuadraticas),

φ(‖xxx‖2) = ‖xxx‖β2 , para β impar (Potencias radiales),

φ(‖xxx‖2) = ‖xxx‖22 log ‖xxx‖2 (Splines de placa delgada),

donde ε > 0 denota el parametro de forma.Para determinar F a partir del conjunto de puntos P es necesario en-

contrar los coeficientes λi que deben cumplir (Wendland [14])

N∑i=1

λiq(xxxi) = 0 para todo q ∈ Πm−1(R2),

que junto con las condiciones de interpolacion F (xxxi) = zi, i = 1, . . . , N ,reducen el problema de interpolacion a encontrar la solucion del sistema deecuaciones BBBλλλ = bbb donde

BBB =

(AAA PPPPPPT OOO

), λλλ =

(λλλccc

)y bbb =

(bbb000

),

con AAAik = φ(‖xxxi−xxxk‖2), i, k = 1, . . . , N , Pi` = p`(xxxi) elementos de una basepara Πm−1(R

2), ` = 1, . . . ,M , λλλ = (λ1, . . . , λN )T, ccc = (c1, . . . , cM )T, bbb =(z1, . . . , zN )T, 000 es el vector cero de tamano M yOOO es una matriz de ceros detamano M×M . Las funciones de base radial consideradas por el metodo sonfunciones estrictamente definidas positivas y estrictamente condicionalmentedefinidas positivas que hacen a BBB no singular, garantizando la unicidad dela solucion (Fasshauer [5], Wendland [14]).

*Con grado absoluto se refiere a que la suma de los exponentes de los monomios sea alo mas m.

6

Page 7: Un m odulo de interpolaci on de datos dispersos y …tikhonov.fciencias.unam.mx/pablo/pdf/UMIDDAGMHEMetNum...Aqu se presenta el m odulo de interpolaci on de datos dispersos y su aplicaci

Kriging

Las funciones de interpolacion F dadas previamente tienen una formapredefinida. El metodo kriging utiliza otro enfoque cuya principal diferenciaes que este comienza a partir de un modelo estadıstico del problema deestudio en lugar de un modelo de la funcion de interpolacion. Es dentro deeste enfoque que el problema de interpolacion se puede ver ahora como unproblema de estimacion.

Kriging es un metodo global que se basa en dar la mejor estimacion linealinsesgada de los valores de los puntos, esto es, elegir el promedio ponderadode los valores de las muestras la cual tenga la mınima varianza. Existendiferentes formas del metodo kriging, entre ellas, kriging simple, krigingordinario y kriging universal, siendo kriging ordinario el mas ampliamenteutilizado.

Un concepto importante para derivar este metodo es el variograma expe-rimental γ(hhh) que es un promedio de disimilitudes de los datos. La disimilitudpromedio con respecto a una clase de vectores Hk de cardinalidad NHk

esun valor del variograma experimental que se calcula mediante

γ(Hk) =1

2NHk

NHk∑i=1

(z(xxxj)− z(xxxi))2 con xxxj − xxxi = hhh ∈ Hk,

donde z(xxxi) = zi es considerado como una salida de una variable aleatoria,Z(xxxi) y la clase Hk esta formada por todos los vectores hhh que cumplen‖hhhk‖2 −∆hhhk ≤ ‖hhh‖2 < ‖hhhk‖2 + ∆hhhk , ademas de que el angulo ϕ que definesu direccion esta acotado entre θ − ∆θ ≤ ϕ < θ + ∆θ, para hhhk el vectorrepresentante de la clase con direccion θ y ∆hhhk , ∆θ tolerancias prefijadas.

El variograma experimental es reemplazado por un variograma teoricoesencialmente por la razon de que el modelo del variograma debe tener unsignificado fısico. El reemplazo se realiza a traves del ajuste de un modelo ad-misible de variograma teorico siendo algunos de los mas usados (Armstrong[1], Isaaks & Srivastava [8]):

γ(hhh) =

c

(3

2

||hhh||2a− 1

2

||hhh||32a

)||hhh||2 < a

c ||hhh||2 ≥ a(modelo esferico),

γ(hhh) = c (1− exp (−||hhh||2/a)) (modelo exponencial),

γ(hhh) = c (1− exp (−||hhh||22/a2)) (modelo gaussiano),

γ(hhh) =

0 ||hhh||2 = 0c0 ||hhh||2 > 0

(modelo de efecto nugget),

7

Page 8: Un m odulo de interpolaci on de datos dispersos y …tikhonov.fciencias.unam.mx/pablo/pdf/UMIDDAGMHEMetNum...Aqu se presenta el m odulo de interpolaci on de datos dispersos y su aplicaci

γ(hhh) = m‖hhh‖α2 con 0 < α < 2 (modelos de funciones potencia),

donde c denota el “umbral” (sill), a el rango, c0 el efecto nugget y m lapendiente.

El problema que se resuelve con kriging es el estimar el valor desconocidoZ(xxx0) en una nueva posicion xxx0 ∈ D, usando los valores de los datos Z(xxxi).El estimador que se utiliza es de la forma

Z∗(xxx0) =N∑i=1

λiZ(xxxi), sujeto aN∑i=1

λi = 1.

Se busca que el estimador Z∗(xxx0) sea insesgado y de mınima varianza. Lapropiedad de que el estimador sea insesgado es garantizada con la sumaunitaria de los pesos, esto es

E[Z∗(xxx0)− Z(xxx0)] =N∑i=1

λi (E [Z(xxxi)]− E [Z(xxx0)]) = 0,

ya que, al suponerse la media constante, E [Z(xxxi)]− E [Z(xxx0)] = µ− µ = 0.La varianza de la estimacion Var(Z∗(xxx0) − Z(xxx0)) es la varianza de la

combinacion lineal

Z∗(xxx0)− Z(xxx0) =N∑i=1

λiZ(xxxi)− 1 · Z(xxx0) =N∑i=0

λiZ(xxxi),

con un peso λ0 igual a -1 y∑N

i=0 λi = 0. Ası, la condicion que los pesos λi,i = 1, . . . , N sumaran uno, incluso implica que el uso del variograma para elcalculo de la varianza de la estimacion del error es factible. Por lo tanto, lavarianza de la estimacion esta dada en terminos del error cuadratico medio,esto es

Var(Z∗(xxx0)− Z(xxx0)) = E[(Z∗(xxx0)− Z(xxx0))

2]

= 2

N∑i=1

λiγ(xxxi − xxx0)−N∑i=1

N∑j=1

λiλjγ(xxxi − xxxj).

Dado que se tiene la restriccion de los pesos, para minimizar la varianzase utiliza un multiplicador de Lagrange para encontrar el mınimo, que unavez determinado, nos da lugar al sistema de ecuaciones en forma matricial(

ΓΓΓ ppppppT 0

)(λλλρ

)=

(γγγ01

)8

Page 9: Un m odulo de interpolaci on de datos dispersos y …tikhonov.fciencias.unam.mx/pablo/pdf/UMIDDAGMHEMetNum...Aqu se presenta el m odulo de interpolaci on de datos dispersos y su aplicaci

donde ΓΓΓ es la matriz de tamano N × N , con entradas ΓΓΓij = γ(xxxi − xxxj),describe las disimilitudes entre las posiciones de los datos, γγγ0 es un vectorde tamano N , donde la entrada i−esima denota las disimilitudes entre cadaposicion de los datos y la posicion donde se quiere estimar el nuevo valorxxx0, λλλ es un vector de tamano N con los pesos ppp es un vector de tamano Ncon todas las entradas 1 y ρ el multiplicador de Lagrange. El sistema tienesolucion unica si ΓΓΓ es estrictamente condicionalmente negativa definida, lacual se cumple usualmente si se utiliza un modelo valido de variograma(Chiles & Delfiner [4]).

Aproximacion B-spline multinivel

Como se ha mencionado antes, en algunas ocasiones es util considerartambien el problema de aproximacion. Este metodo aplica una tecnica deaproximacion con refinamiento B-spline a una jerarquıa de mallas de controlpara construir una funcion de aproximacion C2 a partir de los datos dados.

El metodo esta formulado bajo las siguientes consideraciones. Sea Ω =xxx = (x, y)T ∈ R2 | 0 ≤ x < m, 0 ≤ y < n, m, n ∈ N un dominio rectan-gular en el plano tal que xxxc ⊂ Ω**. Para aproximar los datos dispersosP, se utiliza una funcion de aproximacion F como una funcion bivariadaB-spline bicubica uniforme, la cual esta definida por una malla de control Φsuperpuesta sobre el dominio Ω. Sin perdida de generalidad, se supone queΦ es una malla de (m+3)×(n+3) la cual genera una malla entera en Ω. Seaφij el valor del ij-esimo punto de control en la malla Φ, localizado en (i, j),para i = −1, 0, . . . ,m+1 y j = −1, 0, . . . , n+1. La funcion de aproximacionF es definida en terminos de estos puntos de control por

F (xxx) = F (x, y) =

3∑k=0

3∑`=0

Bk(s)B`(t)φ(i+k)(j+`),

donde i = bxc − 1, j = byc − 1, s = x− bxc y t = y − byc. Bk y B` son lasfunciones base B-spline cubicas uniformes definidas como:

B0(r) = (1− r)3/6,B1(r) = (3r3 − 6r2 + 4)/6,

B2(r) = (−3r3 + 3r2 + 3r + 1)/6,

B3(r) = r3/6,

**Aquı se ocupan los ındices c en lugar de i, de modo tal que P = (xc, yc, zc) ⊂ R3

y xxxc = (xc, yc)T para c = 1, . . . , N .

9

Page 10: Un m odulo de interpolaci on de datos dispersos y …tikhonov.fciencias.unam.mx/pablo/pdf/UMIDDAGMHEMetNum...Aqu se presenta el m odulo de interpolaci on de datos dispersos y su aplicaci

para 0 ≤ r < 1. Entonces la funcion de aproximacion F es obtenida delproducto tensorial de dos funciones spline cubicas en la direcciones x y yque estan en terminos de las funciones base B-spline cubicas, por lo cual,hay dieciseis puntos de control.

El problema consiste ahora en calcular los valores de los puntos de controladecuados al conjunto de datos. Para obtenerlos se ocupa un criterio delinverso de las distancias entre cada dato y los dieciseis nodos mas cercanosde la malla entera obteniendo que (Lee et al. [9])

φk` =wk`zc

3∑a=0

3∑b=0

w2ab

para wk` = Bk(s)B`(t), k, ` = 0, 1, 2, 3. Con esta formulacion, conocida comoalgoritmo BA, se puede obtener una funcion suave que aproxime los datos sise utiliza una malla de control gruesa o una funcion que interpole pero quepresente picos si la malla de control es muy fina. Es por ello que se utilizaun planteamiento multinivel para aprovechar estas dos caracterısticas bajola siguiente formulacion.

Considerese una jerarquıa de mallas de control, Φ0,Φ1, . . . ,Φh, sobre-puestas en un dominio Ω. Supongase que el espaciamiento entre los puntosde control de una malla a la siguiente es dividido por dos. Bajo esta idea, siΦk es una malla de (m+3)×(n+3), la siguiente malla mas fina Φk+1 va a te-ner (2m+3)×(2n+3) puntos de control. La aproximacion B-spline multinivelcomienza por aplicar el algoritmo BA a P con la malla de control mas gruesaΦ0. La funcion resultante F0 sirve como una aproximacion inicial suave, quedeja una desviacion ∆1zc = zc−F0(xc, yc), para cada punto (xc, yc, zc) en P.La siguiente malla de control mas fina Φ1 es entonces usada para obtener lafuncion F1 que aproxime la diferencia P1 = (xc, yc,∆1zc). De esta forma,la suma F0 +F1 da una desviacion menor ∆2zc = zc−F0(xc, yc)−F1(xc, yc)para cada punto (xc, yc, zc) en P.

En general, para cada nivel k en la jerarquıa, obtenemos la funcion Fk alusar la malla de control Φk para aproximar los datos Pk = (xc, yc,∆kzc)donde

∆kzc = zc −k−1∑i=0

Fi(xc, yc) = ∆k−1zc − Fk−1(xc, yc),

y ∆0zc = zc. Este proceso comienza desde la malla mas gruesa Φ0 y continuaincrementalmente hacia la malla mas fina Φh. La funcion final de aproxima-cion F es definida como la suma de las funciones Fk, i. e., F =

∑hk=0 Fk.

10

Page 11: Un m odulo de interpolaci on de datos dispersos y …tikhonov.fciencias.unam.mx/pablo/pdf/UMIDDAGMHEMetNum...Aqu se presenta el m odulo de interpolaci on de datos dispersos y su aplicaci

Para mejorar el proceso descrito anteriormente, Lee et al. [9] utilizan unrefinamiento B-spline a la jerarquıa de las mallas de control. Esto permiteque F sea representada por una funcion B-spline en lugar de la suma devarias funciones B-spline, ası, el calculo de Fk es limitado a un pequenonumero de puntos de control en Φk en lugar de todos los puntos en Ω.

Modulo de interpolacion de datos dispersos

El modulo de interpolacion de datos dispersos (figura 1) fue desarrolladoen Matlab con el objetivo de tener una herramienta que facilite la resolucionde este problema en dos dimensiones. La razon de tener diferentes metodosde resolucion es para que el usuario tenga la posibilidad de elegir el quemejor se adecue a sus necesidades.

Dicho modulo esta pensado para trabajar con un conjunto de datos a lavez. Cuenta con herramientas para la visualizacion y edicion de los datos,reconstruccion de la superficie mediante los distintos metodos descritos yuna herramienta para el calculo del variograma, que sirve para el analisis dela correlacion espacial de los datos, identificacion de anisotropıa y principal-mente para el calculo de variogramas experimentales y ajuste de modelosadmisibles de variograma necesarios para kriging.

Para utilizar los metodos de interpolacion dentro del modulo solo bastacon elegir el metodo deseado y la malla sobre la que se proyecta la superficiereconstruida. Cada metodo tiene sus parametros correspondientes definidospor defecto para facilitar su uso, sin embargo, para usuarios expertos, setiene la posibilidad de cambiar tales valores. Los parametros por defectopara cada metodo son:

Distancia inversa***. Para este metodo solo se define la potencia p ala que se elevan los pesos de la ponderacion siendo su valor por defecto2.

Shepard Modificado. Solo se definen los vecinos cuadraticos Nq y losvecinos de la ponderacion Nw tomando como sus valores por defectolos sugeridos por Renka que son 13 y 19, respectivamente.

Funciones de base radial. Se tiene que definir el tipo de funciones debase radial a utilizar. Por defecto se utilizan splines de placa delgadacon parte polinomial lineal, es decir, se utiliza un polinomio de grado

***El metodo de Shepard original se denomina por metodo de distancia inversa dentrodel modulo.

11

Page 12: Un m odulo de interpolaci on de datos dispersos y …tikhonov.fciencias.unam.mx/pablo/pdf/UMIDDAGMHEMetNum...Aqu se presenta el m odulo de interpolaci on de datos dispersos y su aplicaci

Figura 1: Modulo de interpolacion de datos dispersos.

absoluto 1. Comunmente en la practica se utilizan polinomios de gradoabsoluto a lo mas 2, por lo que el modulo esta restringido de este modo.

Krigring. Aquı se define el modelo de variograma a utilizar. Por defectoeste es modelo de funciones potencia con exponente α = 1 y pendientem = 1 (conocido en la literatura como modelo lineal (Armstrong [1])).

Multinivel B-spline. En este metodo se define el numero de niveles dela aproximacion cuyo valor por defecto es de 12 niveles.

Las mallas usadas para la reconstruccion son mallas estructuradas en elplano. Para ello se pueden elegir mallas rectangulares euclidianas y mallasgeneradas por el sistema UNAMalla 4.0 (UNAMALLA GROUP [13]), unsistema para generacion de mallas estructuradas sobre regiones irregularesen el plano (Barrera et al. [2]).

12

Page 13: Un m odulo de interpolaci on de datos dispersos y …tikhonov.fciencias.unam.mx/pablo/pdf/UMIDDAGMHEMetNum...Aqu se presenta el m odulo de interpolaci on de datos dispersos y su aplicaci

(a) Superficie base (b) Malla 3D

Figura 2: Proceso de la construccion de la malla 3D

Herramienta de construccion de mallas 3D

Una de las primeras aplicaciones del modulo ha sido la generacion demallas 3D. La idea de la construccion de las mallas se divide en dos pasos:

Realizar la reconstruccion de una superficie en una region de interesmediante los metodos de interpolacion de datos dispersos utilizandomallas estructuradas en dos dimensiones para generar la superficie base(vease figura 2a).

Construir la malla 3D a partir de copias verticales de la superficie base,como se observa en la figura 2b.

La herramienta, que se muestra en la figura 3, esta pensada para apro-vechar la estructura de las mallas utilizadas para la reconstruccion de lasuperficie. De este modo cuando se generan las copias verticales para cons-truir la malla 3D es facil extender y conservar esta propiedad de las mallasen el plano utilizadas (Barrera et al. [2]). La herramienta de construccionpermite visualizar la superficie base y definir el numero de bloques (copias)que se deseen utilizar. Para ello permite especificar el grosor de los bloquesde manera uniforme o con diferentes valores para las separaciones entre capay capa, dando flexibilidad para ciertas aplicaciones.

Con el fin de generar una malla hexaedral, se formula un problema va-riacional el cual puede resolverse como un problema de optimizacion a granescala sin restricciones (Barrera et al. [3]). La malla inicial para este procesoes la malla construida mediante las copias verticales; al final del mismo seobtiene una malla estructurada y hexaedral.

13

Page 14: Un m odulo de interpolaci on de datos dispersos y …tikhonov.fciencias.unam.mx/pablo/pdf/UMIDDAGMHEMetNum...Aqu se presenta el m odulo de interpolaci on de datos dispersos y su aplicaci

Figura 3: Herramienta de generacion de mallas hexaedrales.

Conclusiones

El modulo permite la resolucion del problema de interpolacion mediantediferentes metodos, esto para que el usuario tenga la posibilidad de elegir elque mejor se adecue a sus necesidades. Ademas, proporciona herramientasvisuales para el procesamiento de los datos, permite efectuar el calculo dealgunos estadısticos univariados y del variograma, para el analisis de los mis-mos. La herramienta sirve para construir de forma sencilla mallas 3D sobrealgunas regiones complicadas aprovechando las cualidades de las mallas ob-tenidas por el sistema UNAMalla, y construir finalmente una malla hexaedralestructurada para ser usada en una gama amplia de aplicaciones. Actual-mente se esta trabajando en la migracion del sistema fuera de Matlab paraincorporarse a las herramientas de aplicacion del sistema UNAMalla. Tam-bien, se planea ampliar las capacidades de la herramienta de construccionde mallas 3D. En breve se subira un binario para ser probado en la paginadel grupo UNAMALLA [13].

14

Page 15: Un m odulo de interpolaci on de datos dispersos y …tikhonov.fciencias.unam.mx/pablo/pdf/UMIDDAGMHEMetNum...Aqu se presenta el m odulo de interpolaci on de datos dispersos y su aplicaci

Referencias

[1] Armstrong M.; “Basic Linear Geostatistics”, Springer, (1998).

[2] Barrera P., Cortes, J.J., Gonzalez G., Domınguez Mota F.J., TinocoJ.G., “Smoothness and Convex Area Functioinals-Revisited”, Journalon Scientific Computing, SIAM, (2010).

[3] Barrera P., Cortes J.J., Gonzalez G., “Harmonic Hexahedral Structu-red Grid Generation”, Mathematical and Computer Modelling Journal,ELSEVIER, (2011).

[4] Chiles J.P., Delfiner P.; “Geostatistics. Modeling Spatial Uncertainty”,John Wiley & Sons, (1999).

[5] Fasshauer G.F.; “Meshfree Approximation Methods with Matlab”,World Scientific Publishing Company, (2007).

[6] Franke R.; “Scattered Data Interpolation: Test of Some Methods’, Mat-hematics of Computations, v. 33, n. 157, p. 181-200, (1982).

[7] Franke R., Nielson, G.; “Smooth Interpolation of Large Sets of Scatte-red Data”, International Journal for Numerical Methods in Engineering,v. 15, p. 1691-1704, (1980).

[8] Isaaks E.H., Srivastava R.M.; “ An Introduction to Applied Geostatis-tics”, Oxford University Press, New York, (1989).

[9] Lee S., Wolberg G., Shin S.Y.; “Scattered Data Interpolation with Mul-tilevel B-Splines”, IEEE Transactions on Visualization and ComputerGraphics, Vol. 3, No. 3, July-September (1997).

[10] Renka R.J.; “Multivariate Interpolation of Large Sets of Scattered Da-ta”, ACM Transaction on Mathematical Software, vol. 14, no. 2, p.139-148, (1988).

[11] Shepard D.; “A Two Dimensional Interpolation Function for IrregularlySpaced Data”, Proc. 23rd Nat. Conf. ACM, p. 517-523, (1968).

[12] Spath H.; “Two Dimensional Spline Interpolation Algortihms”, A. K.Peters, (1995).

[13] UNAMALLA GROUP.; “Pagina web del grupo UNAMALLA”, http://www.matematicas.unam.mx/unamalla.

[14] Wendland H.; “Scattered Data Approximation”, Cambridge UniversityPress, (2005).

15