metodos sin mallas. - uc

75
UNVERSIDAD DE CARABOBO FACULTAD EXPERIMENTAL DE CIENCIAS Y TECNOLOG ´ IA DEPARTAMENTO DE MATEM ´ ATICAS M ´ ETODOS SIN MALLAS. Trabajo de Ascenso presentado ante la Universidad de Carabobo por aximo Gonzalo Mero Barcia Como requisito para optar a la Categor´ ıa de Profesor Asociado 2014

Upload: others

Post on 04-Jul-2022

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: METODOS SIN MALLAS. - UC

UNVERSIDAD DE CARABOBO

FACULTAD EXPERIMENTAL DE CIENCIAS Y TECNOLOGIA

DEPARTAMENTO DE MATEMATICAS

METODOS SIN MALLAS.

Trabajo de Ascenso presentado ante la Universidad de Carabobo por

Maximo Gonzalo Mero Barcia

Como requisito para optar a la Categorıa de Profesor Asociado

2014

Page 2: METODOS SIN MALLAS. - UC

Indice general

Portada I

Resumen V

1. Introduccion y Planteamiento del Problema 1

2. Metodos sin Mallas 4

2.1. Smoothed Particle Hydrodynamics - SPH . . . . . . . . . . . . . . . . . . . . 5

2.2. Mınimos Cuadrados Moviles - MLS . . . . . . . . . . . . . . . . . . . . . . . 8

3. Aproximacion de nubes de puntos usando metodos sin mallas 12

3.1. Mınimos Cuadrados (LS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

3.2. Mınimos Cuadrados Ponderados (WLS) . . . . . . . . . . . . . . . . . . . . . 14

3.3. Mınimos Cuadrados moviles (MLS) . . . . . . . . . . . . . . . . . . . . . . . 17

3.3.1. Aplicaciones de Mınimos Cuadrados Moviles . . . . . . . . . . . . . . 19

3.4. Implementacion y resultados . . . . . . . . . . . . . . . . . . . . . . . . . . 20

4. Modelos deformables usando MLS 24

i

Page 3: METODOS SIN MALLAS. - UC

4.1. Teorıa de Elasticidad Lineal . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

4.2. Metodos de Mallas Libres MLS . . . . . . . . . . . . . . . . . . . . . . . . . 25

4.2.1. Aproximacion de ∇~U empleando el metodo de MLS . . . . . . . . . . 26

4.2.2. Funciones de Peso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

4.2.3. Calculo de las Fuerzas . . . . . . . . . . . . . . . . . . . . . . . . . . 28

4.3. Dinamica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

4.3.1. Dinamica de la Superficie del objeto 3D . . . . . . . . . . . . . . . . 32

4.4. Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

5. Simulacion de Fluidos Basados en Partıculas usando SPH 39

5.1. Las Ecuaciones de Navier-Stokes . . . . . . . . . . . . . . . . . . . . . . . . . 39

5.1.1. Enfoque Euleriano . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

5.2. Smoothed Particle Hydrodynamics (SPH) . . . . . . . . . . . . . . . . . . . 41

5.3. Enfoque Lagrangiano . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

5.3.1. Masa-Densidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

5.3.2. Fuerzas Internas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

5.3.3. Viscosidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

5.3.4. Fuerzas Externas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

5.4. Integracion Numerica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

5.5. Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

6. Conclusiones 64

ii

Page 4: METODOS SIN MALLAS. - UC

Indice de figuras

3.1. Aproximacion por Mınimos Cuadrados . . . . . . . . . . . . . . . . . . . . . 21

3.2. Aproximacion por Mınimos Cuadrados ponderados . . . . . . . . . . . . . . . 21

3.3. Aproximacion por Mınimos Cuadrados Moviles . . . . . . . . . . . . . . . . 22

3.4. Aproximacion por SPH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

3.5. MLS con 256 datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

4.1. Objeto en estado de reposo y en estado de deformacion. . . . . . . . . . . . . 34

4.2. Funcion de Lennard-Jones L(α, dij). Funcion W1(r, h). . . . . . . . . . . . . 36

4.3. Funciones de peso W2(r, h) y W3(r, h). . . . . . . . . . . . . . . . . . . . . . 36

4.4. Funciones de peso W4(r, h) y W5(r, h). . . . . . . . . . . . . . . . . . . . . . 36

4.5. Diferencia entre hi y α. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

4.6. Animacion de un octaedro con 299 partıculas internas. . . . . . . . . . . . . 37

4.7. Animacion de un elipsoide con 568 partıculas internas. . . . . . . . . . . . . 37

4.8. Animacion de un elipsoide formado por 715 partıculas internas y 990 de lasuperficie y 1976 triangulos. . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

5.1. Configuracion Basica de SPH para las ecuaciones de Navier-Stokes . . . . . 46

iii

Page 5: METODOS SIN MALLAS. - UC

5.2. Nucleo por Defecto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

5.3. Grafica del nucleo de Presion . . . . . . . . . . . . . . . . . . . . . . . . . . 60

5.4. Grafica del nucleo de Viscosidad . . . . . . . . . . . . . . . . . . . . . . . . . 60

5.5. Funcion de Peso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

5.6. Simulacion en Progreso. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

5.7. Manejo de Colision. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

5.8. Dinamica con 65536 Partıculas . . . . . . . . . . . . . . . . . . . . . . . . . 63

iv

Page 6: METODOS SIN MALLAS. - UC

Indice de cuadros

4.1. Equipos utilizados. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

4.2. Tiempos de las animaciones basadas en el modelo de partıculas internasusando la estrategia de busqueda de vecinos de todos contra todos en losdistintos equipos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

4.3. Parametros usados en las animaciones basadas en el modelo de los puntosinternos y de superficie. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

5.1. Resultados para HW1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

5.2. Resultados para HW2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

5.3. Resultados para HW3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

v

Page 7: METODOS SIN MALLAS. - UC

RESUMEN

Los metodos sin mallas (Mesh Free -MFree) son metodos de aproximacion, es decir, metodospara reconstruir funciones y sus derivadas a partir de los valores puntuales en una seriede partıculas irregularmente distribuidas, y de cierta informacion geometrica de bajo nivelacerca de la distribucion de partıculas. La reconstruccion requiere la existencia de unainterconexion de mas alto nivel entre partıculas, esto es, la reconstruccion es independientede que las partıculas sean o no los nodos de una red.

Por extension, se denomina habitualmente metodos sin mallas a una serie de metodosnumericos para resolver ecuaciones diferenciales, que trabajan directamente en el espaciofısico y que obtienen su marco de representacion espacial a traves de un metodode aproximacion sin malla. En la simulacion dinamica se requiere resolver ecuacionesdiferenciales complejas que gobiernan estos fenomenos. Tradicionalmente, tales ecuacionesdiferenciales en derivadas parciales se resuelven usando metodos numericos tales como elMetodo de los Elementos Finitos (FEM) y el Metodo de Diferencias Finitas (FDM). En estosmetodos, el dominio espacial donde las ecuaciones diferenciales parciales estan definidas,usualmente se discretiza en mallas. En FDM, la malla es usualmente llamada cuadrıcula(grids). En el Metodo de Volumen Finito (FVM), estas mallas son llamadas volumenes oceldas, y en FEM las mallas son llamadas elementos. Sin embargo, todas estas cuadrıculas,volumenes, celdas y elementos pueden ser calificadas como mallas. La clave es que una malladebe estar predefinida para proveer cierta relacion entre los nodos, la cual es la base de laformulacion de estos metodos numericos convencionales.

Existen muchos metodos Mfree, tales como el metodo Element Free Galerkin (EFG) [5], elmetodo sin malla local de Petrov-Galerkin (MLPG) [3], el metodo de interpolacion puntual(PIM) [8], el metodo Smoothed Particle Hydrodynamics [16].

Esta investigacion se centra en el estudio de los metodos Smoothed Particles Hydrodynamics(SPH) [15], Moving Least-Squares (MLS),( [11], [14], [8]), Least-Squares (LS) y WeightedLeast Squares (WLS) [22], su aplicacion en los modelos deformables basados en la teorıa deelasticidad lineal y la simulacion dinamica de los fluidos.

Page 8: METODOS SIN MALLAS. - UC

Capıtulo 1

Introduccion y Planteamiento delProblema

Si trabajamos directamente en el espacio fısico un metodo numerico, es necesario disponerde un marco de aproximacion espacial, este ha de tener asociada una cierta representacionfuncional. De esta forma, mientras los metodos de diferencias finitas trabajan en unespacio computacional transformado, de forma que las ecuaciones se resuelvan en una mallarectangular, otros metodos numericos, como el metodo de los volumenes finitos o el metodode los elementos finitos, toman la solucion numerica de ciertos subespacios de funcionescapturadas por la malla. Por ejemplo, la representacion basica en un metodo de volumenesfinitos es la de una funcion constante a trozos, es decir, es constante en cada volumen decontrol.

El principal atractivo de los metodos que trabajan en el espacio fısico es la posibilidad deemplear mallas no estructuradas. Se dice que una malla es estructurada cuando se disponede una transformacion desde el espacio fısico, representado por la red, hacia un espaciocomputacional como el empleado con el metodo de diferencias finitas. Si la geometrıa essencilla, se podra generar una malla estructurada con relativa facilidad. Sin embargo, lageneracion de mallas estructuradas, o estructuradas por bloques, para geometrıas muycomplejas resulta, con frecuencia, en un problema inabordable en terminos de ingenierıapractica. En estos casos, resulta mucho mas eficiente el empleo de mallas no estructuradas,a las que solamente se requiere cubrir la totalidad del dominio con una serie de celdas queno se solapen.

Estas mallas, entendidas como conjuntos de celdas conectadas en el sentido de una red,pueden ser empleadas por los metodos que trabajan en el espacio fısico para desarrollardistintos aspectos de la formulacion. En los metodos de elementos finitos o elementos de

1

Page 9: METODOS SIN MALLAS. - UC

contornos, la conectividad de la malla sirve para construir la aproximacion espacial (definirfunciones de forma), ademas de permitir la discretizacion de la forma debil del problemaen terminos de contribuciones elementales (elemento a elemento). El metodo de volumenesfinitos no utiliza, en principio, unas funciones de forma (salvo, quizas, si suponemos queutiliza funciones constantes en cada celda). Sin embargo, el papel de la discretizacion deceldas (volumenes de control) esta intrınsecamente relacionado con el propio planteamientodel esquema, a traves de conceptos como forma integral del problema en cada volumen decontrol y flujo a traves del contorno de cada volumen de control.

Los metodos sin mallas son metodos de aproximacion, es decir, metodos para reconstruirfunciones y sus derivadas a partir de los valores puntuales en una serie de partıculasirregularmente distribuidas, y de cierta informacion geometrica de bajo nivel acerca de ladistribucion de partıculas (por ejemplo, la distancia entre ellas). La reconstruccion requiere laexistencia de una interconexion de mas alto nivel entre partıculas, esto es, la reconstrucciones independiente de que las partıculas sean o no los nodos de una red.

Por extension, se denomina habitualmente metodos sin mallas a una serie de metodosnumericos para resolver ecuaciones diferenciales, que trabajan directamente en el espaciofısico (capaces de utilizar informacion no estructurada), y que obtienen su marcode representacion espacial a traves de un metodo de aproximacion sin malla. En lasimulacion dinamica se requiere resolver ecuaciones diferenciales complejas que gobiernanestos fenomenos. Tradicionalmente, tales ecuaciones diferenciales en derivadas parciales seresuelven usando metodos numericos tales como el Metodo de los Elementos Finitos (FEM)y el Metodo de Diferencias Finitas (FDM). En estos metodos, el dominio espacial dondelas ecuaciones diferenciales parciales estan definidas, usualmente se discretiza en mallas. EnFDM, la malla es usualmente llamada cuadrıcula (grids). En el Metodo de Volumen Finito(FVM), estas mallas son llamadas volumenes o celdas, y en FEM las mallas son llamadaselementos. Sin embargo, todas estas cuadrıculas, volumenes, celdas y elementos pueden sercalificadas como mallas. La clave es que una malla debe estar predefinida para proveer ciertarelacion entre los nodos, la cual es la base de la formulacion de estos metodos numericosconvencionales.

Al usar una malla predefinida apropiadamente y al aplicar un principio apropiado, lasecuaciones diferenciales parciales que gobiernan el problema pueden ser aproximadas por unconjunto de ecuaciones algebraicas a traves de la malla. El sistema de ecuaciones algebraicaspara la totalidad del dominio del problema puede ser formado al ensamblar el conjunto delas ecuaciones algebraicas para todas las mallas.

En los metodos sin mallas MFree (mesh free) se establece un sistema de ecuaciones algebraicaspara la totalidad del dominio del problema sin el uso de la malla predefinida. Los metodosMFree usan un conjunto de nodos diseminado o esparcidos por el interior del dominiodel problema, ası como tambien un conjunto de nodos diseminados por las fronteras para

2

Page 10: METODOS SIN MALLAS. - UC

representar (no discretizar) tanto el dominio como sus fronteras. Estos conjuntos de puntosdiseminados no forman una malla, lo cual significa que ninguna informacion de la relacionentre ellos es requerida, al menos para el campo de interpolacion.

Existen muchos metodos Mfree, tales como el metodo Element Free Galerkin (EFG) [5], elmetodo sin malla local de Petrov-Galerkin (MLPG) [3], el metodo de interpolacion puntual(PIM) [8], el metodo Smoothed Particle Hydrodynamics [16].

Esta investigacion se enfoca en el estudio de los metodos Smoothed Particles Hydrodynamics(SPH) [15], Moving Least-Squares (MLS),( [11], [14], [8]), Least-Squares (LS) y WeightedLeast Squares (WLS) [22] y su aplicacion en los modelos deformables basados en la teorıade elasticidad lineal y la simulacion dinamica de los fluidos.

Esta trabajo combina y desarrolla las lıneas de investigacion de metodos numericos ycomputacion grafica de la Facultad de Ciencias y Tecnologıa de la Universidad de Carabobomediante el analisis y desarrollo de los metodos de aproximacion sin mallas y sus aplicacionesen la resolucion numerica de ecuaciones diferenciales.

3

Page 11: METODOS SIN MALLAS. - UC

Capıtulo 2

Metodos sin Mallas

Los denominados metodos sin malla han atraıdo muy recientemente el interes de los investi-gadores, debido a su flexibilidad para resolver problemas practicos de simulacion numerica.El principal objetivo de los metodos sin malla es superar las dificultades que aparecen enlos problemas de simulacion numerica al tener que remallar los dominios en estudio, ya queen estos metodos es suficiente con anadir nodos donde sea necesario. Se trata por tanto deenfoques novedosos en el area de computacion grafica que han cambiado la estrategias a lahora de realizar simulacion o animacion de objetos deformables.

Los metodos sin mallas son aquellos donde el objeto es modelado por medio de una nu-be de partıculas sin conectividad previa. Existe una diversidad de metodos sin mallas ylos mas destacados son: SPH (Smoothed Particle Hydrodynamics), DEM (Method ElementDifuse),EFG (Element Free Galerkin), Mınimos Cuadrados (Moving Least-Squares), LBIE(Local Boundary Integral Equation), PUM (Partition of Unity Method).

El metodo de SPH fue desarrollado originalmente en 1977 para la simulacion de gas interes-telar en el campo de la astro fısica. Fue desarrollado por Bob Gingold y Joe Monaghan [9] eindependientemente por Leon Lucy [16]. El metodo SPH es un metodo poderoso que permi-te la solucion de problemas dinamicos complejos tanto de fluidos como de otros materiales.Desde su desarrollo ha sido usado exitosamente en mutiples areas de estudio tales como:rompimiento de oleaje, flujo de lava, estudio de fracturas elasticas, problemas de superficielibre y materia granular.

4

Page 12: METODOS SIN MALLAS. - UC

La aproximacion de los mınimos cuadrados (MLS - Moving Least-Squares) fue desarrolladapor Lancaster y Salkauskas en 1981 [12], quienes fueron los primeros que usaron laaproximacion de MLS para el suavizado e interpolacion de datos en el area de computaciongrafica.

2.1. Smoothed Particle Hydrodynamics - SPH

La formulacion de SPH se divide en dos etapas. La primera es la representacion integralo tambien llamada aproximacion por nucleos del campo de funciones. La segunda es laaproximacion de partıculas.

En la primera, la integracion de una funcion arbitraria y una funcion de nucleo (tambienllamada funcion de peso) da la funcion de nucleo en la forma de la representacion integral dela funcion. La representacion integral de la funcion es posteriormente aproximada agregandolos valores de las partıculas vecinas mas proximas las cuales producen la aproximacion departıculas de la funcion a un punto discreto o partıcula.

Aquı, el termino representacion integral o aproximacion por nucleos y aproximacion departıculas seran usados para lo mismo.

El Concepto de representacion integral de una funcion f(x) usada en el metodo SPH comienzade la siguiente identidad

f(x) =

∫Ω

f(y)δ(x− y)dy (2.1)

donde f es una funcion del vector x y δ(x− y) es la funcion delta de Dirac dada por

δ(x− y) =

1 x = y0 x 6= y

(2.2)

En la ecuacion (2.1), Ω es el volumen de la integral que contiene a x. La ecuacion (2.1)implica que una funcion puede ser representada en una forma integral. Puesto que la funciondelta de Dirac es usada, la representacion integral en la ecuacion 2.1 es exacta siempre ycuando f(x) este definida y sea continua en Ω.

5

Page 13: METODOS SIN MALLAS. - UC

Si la funcion nucleo Delta δ(x − y) es reemplazada por una funcion suave W (x − y, h), larepresentacion integral de f(x) viene dada por

f(x).=

∫Ω

f(y)W (x− y, h)dy (2.3)

Donde W es la llamada funcion nucleo, o funcion de peso. h es la longitud de suavidad quedefine el area de influencia de la funcion de peso W . Notar que aun cuando W no es la funcionde Dirac, la representacion integral de la ecuacion (2.3) es solamente una aproximacion. Estees el origen del termino aproximacion por nucleos.

La funcion W es elegida de modo que cumpla las condiciones siguientes:

1. La funcion de peso debe estar normalizada sobre su dominio∫Ω

W (x− y, h)dy = 1 (2.4)

2. La funcion de peso sera de soporte compacto

W (x− y, h) = 0, | x− y |> κh (2.5)

El tamano del soporte compacto esta definido por la longitud del nucleo multiplicadopor un factor κ, donde h es la longitud del nucleo y κ determina la propagacion de lafuncion de peso dada. | x− y |≤ κh define el dominio de soporte de la partıcula en elpunto x.

3. W (x − y, h) ≥ 0 para todo punto y dentro del dominio de soporte para el punto x(Positividad).

4. La funcion de nucleo sera una funcion monotona decreciente a medida que se incrementela distancia entre partıculas.

5. La funcion de nucleo deberıa satisfacer la condicion de la funcion delta de Dirac amedida que la longitud de nucleo tienda a cero (propiedad de la funcion Delta)

lımh→0

W (x− y, h) = δ(x− y). (2.6)

6. La funcion de nucleo debe ser una funcion par (propiedad de simetrıa)

7. La funcion de nucleo debe ser lo suficientemente suave (condicion de suavidad )

6

Page 14: METODOS SIN MALLAS. - UC

La primera propiedad de normalizacion asegura que la integral de la funcion de nucleosobre el dominio de soporte sea la unidad. Tambien asegura el orden de consistencia de larepresentacion integral de una funcion continua.

La segunda propiedad transforma una aproximacion SPH de forma global a una deoperaciones locales.

La tercera propiedad establece que la funcion nucleo serıa no negativa en el dominio desoporte. Esto no es matematicamente necesario como un requerimiento de convergencia,pero importante para asegurar un sentido fısico, o estable, de la representacion de algunosfenomenos fısicos. Algunas funciones de nucleo usadas en la practica son negativas en partesdel dominio soporte. Sin embargo en simulaciones hidrodinamicas, valores negativos para lafuncion de nucleo pueden tener serias consecuencias que resultan en algunos parametros nofısicos tales como densidad negativa y energıa.

La cuarta propiedad esta basada sobre consideraciones fısicas en que las partıculas masproximas tendrıan una influencia mayor sobre la partıcula en cuestion. En otras palabras, conel incremento de la distancia entre dos partıculas que interactuan, las fuerzas de interacciondecrecen.

La quinta propiedad asegura que cuando la longitud de nucleo tiende a cero, los valoresaproximados se acercan a los valores reales de la funcion.

La sexta propiedad significa que las partıculas a una misma distancia pero en diferentesposiciones tienen el mismo efecto sobre una partıcula dada. Esta no es una condicionmuy rıgida, y algunas veces es violada en algunos metodos sin mallas que tienen mayorconsistencia.

La septima propiedad tiene como objetivo obtener una mejor aproximacion. Para elaproximaciones de una funcion y sus derivadas, la funcion de nucleo necesita ser losuficientemente continua para obtener buenos resultados.

Cualquier funcion que tenga las propiedades anteriores puede ser empleado como una funcionde peso o funcion nucleo del metodo SPH.

En el artıculo original del metodo SPH, Lucy [16] uso la siguiente funcion nucleo

W (x− y, h) = W (R, h) = αd

(1 + 3R)(1−R)3 R ≤ 1

0 R > 1(2.7)

7

Page 15: METODOS SIN MALLAS. - UC

donde αd = 5/(4h), αd = 5/(πh2) y αd = 105/(16h3) en una, dos y tres dimensionesrespectivamente. r es la distancia entre los puntos x y y. R es la distancia relativa entre lospuntos x y y y la longitud de nucleo h definida por R = r

h= |x−y|

h.

Monagan [18] senalo que para encontrar una interpretacion fısica de una ecuacion SPH,siempre es mejor asumir que la funcion de nucleo sea una Gaussiana. Gingold y Monaghan [9]en su artıculo original seleccionaron el siguiente nucleo Gaussiano para simular estrellas noesfericas

W (R, h) = αde−R2

(2.8)

donde αd = 1/(π1/2), αd = 1/(π3/2h2) y αd = 1/(π3/2h3) en una, dos y tres dimensionesrespectivamente.

El nucleo Gaussiano es suficientemente suave incluso para derivadas de orden grandes y esconsiderado como una buena seleccion ya que es muy estable y exacta, especialmente parapartıculas desordenadas. Sin embargo, no es compacta porque nunca se va a cero a menos queR se aproxime al infinito. Pero, debido a que se aproxima a cero muy rapido numericamentees practicamente compacta

2.2. Mınimos Cuadrados Moviles - MLS

La aproximacion de Mınimos Cuadrados Moviles fue inicialmente trabajada sobre el ajustede datos y construccion de superficies (Lancaster y Salkauskas, [12]). La invencion de laaproximacion MLS fue la clave para el desarrollo de muchos metodos sin mallas, porquelos MLS pueden dar una aproximacion continua para una funcion de campo sobre todo eldominio del problema. Este enfoque, en la actualidad, es extensamente usado en muchosmetodos sin mallas para construir las funciones de forma. Nayroles [21] uso la aproximacionMLS la primera vez para desarrollar los llamados metodos difusos (DEM). Muchos metodossin mallas basados en la aproximacion MLS han sido desarrollados desde entonces, talescomo los elementos libres de Galerkin [5] y el metodo local sin malla Petrov-Galerkin [3].

El procedimiento del MLS es el siguiente. Sea u(x) la funcion del campo de variables definidaen el dominio Ω. La aproximacion de u(x) en el punto x es denotada por uh(x). Ası, laaproximacion MSL escrita en terminos de campo es:

8

Page 16: METODOS SIN MALLAS. - UC

u(x) =m∑j

pj(x)aj(x) = pT (x)a(x) (2.9)

donde m es el numero de terminos de los monomios (base polinomial), y a(x) es un vectorde coeficientes dado por

aT (x) = a0(x), a1(x), · · · , am(x) (2.10)

los cuales son funciones de x.

En la ecuacion (2.9), p(x) es un vector de las funciones bases que consiste usualmente demonomios de orden menor o igual a m. En 1D, una base completa de polinomios de ordenm esta dado por

pT (x) = p0(x), p1(x), · · · , pm(x) = 1, x, · · · , xm (2.11)

El vector de coeficientes de a(x) en la ecuacion (2.9) es determinado usando los valores dela funcion en el conjunto de los nodos que estan incluidos en el dominio de soporte de x. Undominio de soporte de un punto x determina el numero de nodos que son usados localmentepara aproximar el valor de la funcion en x.

Ası, dada un conjunto de n nodos para la funcion de campo u1, u2, · · · , un en n nodosx1, x2, · · · , xn que estan en el dominio de soporte, entonces la ecuacion (2.9) es usada paracalcular los valores aproximados a la funcion de campo en estos nodos:

uh(x, xi) = pT (xi)a(x), i = 1, 2, · · · , n (2.12)

Notar que aquı a(x) es una funcion arbitraria de x. Un funcional de residual ponderado esconstruido usando los valores aproximados de la funcion de campo y los parametros nodalesui = u(xi)

J =n∑i

W (x− xi)[uh(x, xi)− u(xi)]2

=n∑i

W (x− xi)[pT (xi)a(x)− u(xi)]2

(2.13)

donde W (x−xi) es una funcion de peso y ui es el parametro nodal de las variables de campoen el nodo i. Estas funciones de pesos proveen una ponderacion para los residuos en losdiferentes nodos en el dominio de soporte. Se espera que los nodos que estan muy alejados

9

Page 17: METODOS SIN MALLAS. - UC

de x tengan un peso menor que los que estan mas proximos a x. Tambien esta funcion de pesodebe asegurar que los nodos que entren o salgan de dominio de soporte de x sea en formasuave. La condicion de la unidad que es requerida para el SPH no es necesario aquı para laaproximacion MLS.

En la aproximacion MLS, en un punto arbitrario x, a(x) es elegido para minimizar el residualponderado. La condicion de minimizacion requiere

∂J

∂a= 0 (2.14)

lo cual resulta en el siguiente sistema de ecuaciones lineales

A(x)a(x) = B(x)Us (2.15)

Donde A es la matriz de momentos ponderada, la cual esta dada por

A(x) =n∑i

Wi(x)p(xi)pTxi

(2.16)

donde

Wi(x) = W (x− xi) (2.17)

En la ecuacion (2.15) la matriz B tiene la forma

B(x) = [B1,B2, . . . ,Bn] (2.18)

Bi = Wi(x)p(xi) (2.19)

y Us es en vector que reune la todos los parametros nodales de las variables de campo paratodos los nodos en el dominio de soporte:

Us = u1, u2, · · · , unT (2.20)

10

Page 18: METODOS SIN MALLAS. - UC

Resolviendo la ecuacion (2.15) para a(x), obtenemos

a(x) = A(x)−1B(x)Us (2.21)

y sustituyendo este valor en la ecuacion (2.12) se tiene que

uh(x, xi) =n∑i

m∑j

pj(x)(A(x)−1B(x))jiui (2.22)

o

uh(x, xi) =n∑i

φi(x)ui (2.23)

donde las funciones φi(x) estan definidas por

φi(x) =m∑j

pj(x)(A(x)−1B(x))ji = pTA−1Bi (2.24)

Notar que m es el numero de terminos de la base de polinomios p(x), el cual es muchomenor que n, donde n es el numero de nodos usados en dominio de soporte para construirlas funciones de formas. El requerimiento de que n m evita la singularidad de la matrizde momento ponderada, por lo tanto A−1 existe. En los siguientes capitulos se dan detallesde los metodos Least-Squares (LS) y Weighted Least Squares(WLS) [22].

11

Page 19: METODOS SIN MALLAS. - UC

Capıtulo 3

Aproximacion de nubes de puntosusando metodos sin mallas

3.1. Mınimos Cuadrados (LS)

Los Mınimos cuadrados es una tecnica de aproximacion numerica de una funcion u(x) apartir de su valor en ciertos puntos xi . . .xn pertenecientes a algun conjunto Ω ⊂ Rd dondei ∈ 1, . . . , N. Se quiere obtener una funcion definida globalmente f(x) que se aproximea los valores escalares dados fi en los puntos xi en el sentido de mınimos cuadrados con elerror funcional

JLS =∑i

‖f(xi)− fi‖2

Por lo tanto, se plantea el problema de minimizacion siguiente

mınf∈

∏dm

∑i

‖f(xi)− fi‖2, (3.1)

donde f es tomada de∏d

m, el espacio de polinomios de grado total m en d dimensionesespaciales, y puede ser escrito como

f(x) = b(x)T c = b(x) · c, (3.2)

donde b(x) = [b1(x), . . . , bk(x)]T es el vector de base polinomial y c = [c1, . . . , ck]T es el vector

de coeficientes desconocidos que se desean miminizar en la ecuacion (3.1). Algunos ejemplos

12

Page 20: METODOS SIN MALLAS. - UC

de bases polinomiales son (a) para m = 2 y d = 2, b(x) = [1, x, y, x2, xy, y2]T , (b) para unajuste lineal en R3(m = 1, d = 3), b(x) = [1, x, y, z]T , y (c) para el montaje de una constanteen dimensiones arbitrarias b(x) = [1]. En general, el numero k de elementos en b(x) (y por

tanto en c) es dado por k = (d+m)!m!d!

Solucion: Se puede minimizar (3.1) al establecer las derivadas parciales del error funcionalJLS a cero, i.e, ∇JLS = 0 donde ∇ = [ ∂

∂c1, . . . , ∂

∂ck]T que es una condicion necesaria para un

mınimo. Al tomar derivadas parciales con respecto a los coeficientes desconocidos c1, . . . , ck,se obtiene un sistema de ecuaciones lineales de donde se puede calcular c [22]

∂JLS∂c1

= 0 :∑i

2b1(xi)[b(xi)T c− fi] = 0

∂JLS∂c2

= 0 :∑i

2b2(xi)[b(xi)T c− fi] = 0

...∂JLS∂c3

= 0 :∑i

2b3(xi)[b(xi)T c− fi] = 0

(3.3)

En notaticion Matriz-Vector esto se escribe como:

∑i

2b(xi)[b(xi)T c− fi] = 2

∑i

[b(xi)b(xi)T c− b(xi)fi] = 0 (3.4)

Dividiendo por la constante y reordenando se obtiene:

∑i

b(xi)b(xi)T c =

∑i

b(xi)fi, (3.5)

Que se resuelve como

c =

[∑i

b(xi)b(xi)T

]−1∑i

b(xi)fi, (3.6)

13

Page 21: METODOS SIN MALLAS. - UC

Si la matriz cuadrada ALS =∑

i b(xi)b(xi)T es no singular, i.e det(ALS) 6= 0, sustituyendo

la ecuacion (3.6) en la ecuacion (3.2) se obtiene la funcion de ajuste f(x). Para k pequenos(k < 5) la inversion de la matriz en la ecuacion (3.6) puede llevarse a cabo de forma explıcita,de lo contrario metodos numericos son la herramienta preferida.

Ejemplo. Dados los puntos en R2 y se desea ajustar con una cuadratica, polinomio bivariado,i.e. d = 2,m = 2 y por lo tanto b(x) = [1, x, y, x2, xy, y2]T entonces el Mınimo Cuadradoresultante se ve ası:

∑i

1 xi yi x2

i xiyi y2i

xi x2i xiyi x3

i x2i yi xiy

2i

yi xiyi y2i x2

i yi xiy2i y3

i

x2i x3

i x2i yi x4

i x3i yi x2

i y2i

xiyi x2i yi xiy

2i x3

i yi x2i y

2i xiy

3i

y2i xiy

2i y3

i x2i y

2i xiy

3i y4

i

c1

c2

c3

c4

c5

c6

=∑i

1xiyix2i

xiyiy2i

fi. (3.7)

3.2. Mınimos Cuadrados Ponderados (WLS)

Formulacion del Problema. En la formulacion de Mınimos Cuadrados Ponderados(Weighted Least Squares) se utiliza el error funcional JWLS =

∑i θ(‖x − xi‖)‖f(xi) − fi‖2

para un punto estimado x ⊂ Rd que se minimiza

mınf∈

∏dm

∑i

θ(‖x− xi‖)‖f(xi)− fi‖2, (3.8)

es similar a la ecuacion (3.1) solo que ahora el error es ponderado por θ(d) donde di son lasdistancias euclidianas entre x y las posiciones de los puntos de la data xi.

Los coeficientes desconocidos que se deben obtener de la solucion a la ecuacion (3.8) sonponderados por las distancias a x y por lo tanto una funcion x.

Ası, la local, aproximacion de mınimos cuadrados ponderados en x se escribe como

fx(x) = b(x)T c(x) = b(x) · c(x), (3.9)

14

Page 22: METODOS SIN MALLAS. - UC

y solo define localmente dentro de una distancia R alrededor de x, i.e. ‖x− x‖ < R.

Funcion de Peso. Muchas opciones para la funcion de ponderacion θ se han propuesto enla literatura, tal como una gaussiana, [4]

θ(d) = e−d2

h2 (3.10)

donde h es un parametro de espaciado que se puede utilizar para suavizar los rasgos pequenosen los datos. Otra funcion de ponderacion popular, [15], con soporte compacto es la funcionsiguiente

θ(d) =

(1− d

h

)4(4d

h+ 1

)(3.11)

Esta funcion esta bien definida en el intervalo d ∈ [h, 0] , y, ademas θ(0) = 1, θ(h) = 0, θ′(h) =0, θ′′(h) = 0. Varios autores, [12], [4], [19], sugieren usar funciones de peso de la siguienteforma:

θ(d) =

(1

d2 + ε2

)(3.12)

Es de hacer notar que establecer el parametro ε a cero da como resultado una singularidaden d = 0, lo que obliga a la funcion de ajuste de la MLS a interpolar los datos.

Solucion. Analogo al metodo de Mınimos Cuadrados convencional, se toman derivadasparciales del error funcional JWLS con respecto a los coeficientes desconocidos c(x)

15

Page 23: METODOS SIN MALLAS. - UC

∑i

θ(di)2b(xi)[b(xi)T c(x)− fi] =

2∑i

[θ(di)b(xi)b(xi)T c(x)− θ(di)b(xi)fi] =0,

(3.13)

donde di = ‖x− xi‖. Dividiendo entre la constante y reordenando se tiene

∑i

θ(di)b(xi)b(xi)T c(x) =

∑i

θ(di)b(xi)fi, (3.14)

y despejando los coeficientes

c(x) = [∑i

θ(di)b(xi)b(xi)T ]−1

∑i

θ(di)b(xi)fi], (3.15)

La unica diferencia entre las ecuaciones (3.6) y (3.15) son los terminos de ponderacion. Ob-serve de nuevo, sin embargo, que mientras los coeficientes c en la ecuacion (3.6) son globales,los coeficientes c(x) son locales y tienen que ser recalculados para cada x. Si la matriz cua-drada AWLS =

∑i θ(di)b(xi)b(xi)

T (a menudo se denomina Matriz Momento) es no singular(i.e. det(AWLS) 6= 0), sustituyendo la ecuacion (3.15) en la ecuacion (3.9) se obtiene la fun-cion de ajuste fx(x).

Aproximacion Global usando una Particion de la Unidad PU. Ajustando polinomiosa j ∈ 1, . . . , n los puntos estimados y discretos xj en el parametro de dominio Ω sepueden ensamblar en una aproximacion global a la data garantizando que cada punto en Ωesta cubierto por al menos un polinomio de aproximacion, es decir, el soporte de las funcionesde peso θj centrado en los puntos xj que cubren Ω

Ω = ∪jsupp(θj). (3.16)

La ponderacion adecuada de estas aproximaciones se puede lograr mediante la construccionde una particion de la unidad (PU) desde θj

ϕj(x) =θj(x)∑nk=1 θk(x)

(3.17)

16

Page 24: METODOS SIN MALLAS. - UC

donde∑

j ϕi(x) ≡ 1 en todo Ω. La aproximacion global viene a ser

f(x) =∑j

ϕj(x)b(x)T c(xj). (3.18)

Una cuestion numerica. Para evitar inestabilidades numericas con posibles numerosgrandes en AWLS puede ser beneficioso llevar a cabo el procedimiento de ajuste en un sistemade coordenadas local con respecto a x, es decir, para cambiar x en el origen. Por lo tanto, sereescribe la funcion de ajuste local en x como

fx(x) = b(x− x)T c(x) = b(x− x) · c(x), (3.19)

los coeficientes asociados como

c(x) =

[∑i

θ(di)b(xi − x)b(xi − x)T

]−1∑i

θ(di)b(xi − x)fi, (3.20)

y la aproximacion global como

f(x) =∑j

ϕj(x)b(x− xj)T c(xj). (3.21)

3.3. Mınimos Cuadrados moviles (MLS)

Metodo. El Moving Least Squares fue propuesto por Lancaster and Salkauskas [12] parasuavizar e interpolar datos. Esta tecnica de aproximacion es una variante de la aproximacionpor mınimos cuadrados ponderados, con la particularidad de que ahora la funcion de pesose traslada de un punto a otro, de manera que el maximo esta en el punto x donde se quiereobtener el valor aproximado, por ello el nombre de mınimos cuadrados moviles [2]. Esto selleva a cabo facilmente si se asocian unos pesos positivos Wi (los cuales van a depender dex ) a cada punto y se minimiza.

17

Page 25: METODOS SIN MALLAS. - UC

La idea es iniciar con una formulacion de mınimos cuadrados ponderados para un puntofijo arbitrario en Rd, a continuacion mover este punto sobre el dominio entero, donde secalcula un mınimo cuadrado ponderado y se evalua para cada punto individualmente. Sepuede demostrar que la funcion global f(x), obtenida a partir de un conjunto de funcioneslocales

f(x) = fx(x), mınf∈

∏dm

∑i

θ(‖x− xi‖)‖fx(xi)− fi‖2, (3.22)

es continuamente diferenciable si y solo si la funcion de ponderacion es continuamentediferenciable.

Ademas θ(‖x − xi‖) es positiva, grande para los puntos x cercanos a xi, y relativamentepequena para los x mas distantes. diferencia θ(‖x−xi‖) decrece monotonamente al aumentarla diferencia ‖x− xi‖ hasta valer cero (soporte compacto).

Ası que en lugar de construir la aproximacion global utilizando la ecuacion (3.18), se utilizanlas ecuaciones (3.9) y (3.15) (o las ecuaciones (3.19) y (3.20)) y se construye y evalua unpolinomio local adaptado continuamente a lo largo de todo el dominio Ω, lo que resulta enla funcion de ajuste MLS.

Para el caso general, cuando el sistema es de r dimensiones x = [x1, x2, ..., xr] y se quiereaproximar una funcion f(x), el funcional J pasa a ser ahora de la siguiente manera:

J =∑j

wj(x− xj)(P T (xj)c(x)− fj)2 (3.23)

y en forma matricial

J = (Pc(x)− f)TW (x)(Pc(x)− f) (3.24)

Donde f es el vector de nx1 valores nodales y P la matriz de nxm siendo n el numero depuntos y m el numero de terminos del polinomio aproximador (base polinomial), y W (x) esla matriz diagonal de la funcion de ponderacion

W = diag[w(x− xi), ..., w(x− xn)] (3.25)

18

Page 26: METODOS SIN MALLAS. - UC

derivando se obtiene∂J

∂c= A(x)c(x)−B(x)f = 0 (3.26)

donde

A(x) =P TW (x)P

B(x) =P TW (x)(3.27)

y por lo tanto

c(x) = A(x)−1B(x)f (3.28)

en esta ocacion los coeficientes de la matriz c(x), dependen de x, debido a la inclusion de lafuncion de ponderacion en el funcional, de forma que la funcion de aproximacion queda

f(x) = p(x)TA(x)−1B(x)f (3.29)

donde p(x) es la base polinomial evaluada en cada x y y perteneciente al dominio discretizado,p(x) = [1, x, y, x2, xy, y2]T

Utilizando la ecuacion (3.12) como la funcion de ponderacion con un ε muy pequeno asignapesos cercanos al infinito cerca de los puntos de entrada de datos, obligando a la funcionde ajuste MLS a interpolar los valores de la funcion prescrita en estos puntos. Por lo tanto,mediante la variacion de ε se puede influir directamente en la aproximacion / interpolacionde la naturaleza de la funcion de ajuste MLS. O tambien se puede hacer uso de la funcion deponderacion exponencial (3.1012) con un radio de soporte entre 0 y 1 con la cual se puedenobtener excelentes resultados.

3.3.1. Aplicaciones de Mınimos Cuadrados Moviles

Disenada originalmente para el tratamiento de datos y la generacion de superficies, la tenicade Mınimos Cuadrados Moviles se ha vuelto muy popular entre los grupos de investigacionque trabajan con metodos sin malla, siendo ampliamente utilizada en aplicaciones tantoeulerianas como lagrangianas. Esta clase de metodos de aproximacion es particularmente

19

Page 27: METODOS SIN MALLAS. - UC

competitiva en la reconstruccion de una determinada funcion y sus derivadas sucesivas apartir de los valores de dicha funcion en una serie de puntos dispersos. Se ha pretendidoque el empleo de Mınimos Cuadrados Moviles proporcione algo parecido a unas funciones deformas para esquemas de volumenes finitos en mallas no estructuradas, representando unainteresante alternativa a los metodos existentes en la actualidad, ası como tambien haceruso del metodo en aplicaciones en problemas de flujo de fluidos comprensibles. En general,el MLS es un metodo bastante util a la hora de reconstruir superficies a partir de puntos [1],simulaciones [4], animaciones [19], interpolacion y aproximacion de superficies implıcitas [24]

3.4. Implementacion y resultados

Como se observo en la seccion teorica, los metodos sin mallas MLS requieren mas calculosmatriciales que toman gran cantidad de tiempo de ejecucion. Sin embargo, dado los estudiosrealizados a la programacion de las tarjetas graficas se han conseguido buenos resultados entiempo de ejecucion y en obtencion de la solucion.

Las primeras pruebas se realizaron con pocos puntos en la data. Se pudo notar que losmetodos LS, WLS son aproximaciones ”gruesas 2la solucion no se ajusta a los datos, mientrastanto, las soluciones obtenidas con los metodos SPH y MLS dan mejores resultados.

los resultados obtenidos con los metodos sin mallas, en este caso de 9 puntos de entrada, sobrela CPU y sobre el dispositivo grafico se lograron en el mismo tiempo aproximadamente yaque como se observo en la seccion de implementacion de los algoritmos del algebra matricial,en principio, para matrices no muy grandes la multiplicacion de matrices es bastante rapidaen la CPU, el problema viene a ser con matrices mas grandes.

Se realizaron las pruebas usando una base polinomial b(x) = [1, x, y, x2, xy, y2]T .

Pi = (1, 1), (1,−1), (−1, 1), (−1,−1), (0, 0), (1, 0), (−1, 0), (0, 1), (0,−1)

con el conjunto de valores de funcion asociados

fi = 1.0,−1.0, 0.0, 0.0, 1.0, 0.0,−1.0,−1.0, 1.0.

En la figura (3.1) se muestra la solucion de la aproximacion a los datos usando el Metodo deMınimo Cuadrado(LS). Se aprecia que existen datos muy alejados de la superficie solucion.

20

Page 28: METODOS SIN MALLAS. - UC

Figura 3.1: Aproximacion por Mınimos Cuadrados

En la figura 3.2 se muestra la solucion al problema de ajuste de datos usando el Metodode Mınimos Cuadrado ponderado (WLS). Aquı, el punto x fijo es el origen. Con lo cual,la funcion de peso que realiza la ponderacion esta centrada de este punto. Por lo tanto lasolucion tiene un ajuste optimo para los datos proximos a este punto fijo, fenomeno que seaprecia en esta imagen.

Figura 3.2: Aproximacion por Mınimos Cuadrados ponderados

La imagen (3.3) muestra la solucion de ajuste de datos usando el Metodo de MınimoCuadrado Movil (MLS). De los metodos estudiados este es el que mejor se ajusta a losdatos, pero el tiempo de ejecucion es mayor. En esta imagen se aprecia un ajuste optimo alos datos usando esta estrategia.

21

Page 29: METODOS SIN MALLAS. - UC

Figura 3.3: Aproximacion por Mınimos Cuadrados Moviles

En la figura (3.4)se presenta la solucion del ajuste de datos usando el metodo SPH.Aquı usamos la discretizacion de la formulacion integral y observamos que la solucionobtenida con este enfoque es optimo para el ajuste de datos. El tiempo de ejecucion usandoSPH es menor que el empleado con el metodo MLS.

Figura 3.4: Aproximacion por SPH

Tambien se realizaron pruebas con otro tipo de datos de entrada, aquı mostramos unejemplo con 256 datos. El metodo utilizado en este caso fue el metodo sin mallas MınimosCuadrados Moviles. En este ejemplo, la nube de puntos fue generada de forma aleatoriay el dominio de definicion fue generada con 10.201. El tiempo de ejecucion fue de 44,43segundos. La programacion de estos metodos fue en lenguaje C, en un equipo de escritorio

22

Page 30: METODOS SIN MALLAS. - UC

con un procesador Intel Core i7 920 a 2.66 Ghz. Una GPU nVidia geForce 9500GT y unamemoria RAM de 4GB DDR3.

Figura 3.5: MLS con 256 datos

23

Page 31: METODOS SIN MALLAS. - UC

Capıtulo 4

Modelos deformables usando MLS

Este capıtulo contiene bases teoricas relacionadas con las ecuaciones de elasticidad lineal, laaproximacion del operador de deformacion utilizando el metodo de los mınimos cuadrados,la manera en que son obtenidas las fuerzas, las distintas funciones de peso utilizadas en estainvestigacion y el como se realiza el movimiento de las partıculas del cuerpo en deformacion.

4.1. Teorıa de Elasticidad Lineal

A continuacion se muestra el modelo fısico-matematico que surge de la teorıa de elasticidadlineal y cuyas leyes son las que gobiernan el modelo deformable en estudio, [7] . Considerese

un objeto 3D cuyas coordenadas de material son: ~Xi =[xi, yi, zi

]T. Para describir

la deformacion de dicho objeto se utiliza un campo vectorial de desplazamiento ~Ui =[ui, vi, wi

]T, donde ui = u(xi, yi, zi), vi = v(xi, yi, zi) y wi = w(xi, yi, zi) son funciones

de las coordenadas de material. En la figura 4.1 se observa que las coordenadas de unapartıcula originalmente se encuentran en ~Xi y en su posicion deformada son ~Xi + ~Ui. Sedenota por ~Xij el vector diferencia entre los vectores posicion de las partıculas i y j.

~Xij = ~Xj − ~Xi (4.1)

En el analisis de elasticidad lineal, el Jacobiano (J) de una transformacion es fundamentalpara determinar ciertas variaciones del objeto en estudio. Este se expresa para cada partıculai como:

Ji = ∇ ~UiT

+ I (4.2)

24

Page 32: METODOS SIN MALLAS. - UC

donde I es la matriz identidad 3x3. Por comodidad en la escritura, el Jacobiano se escribede la siguiente manera:

Ji =

JuTiJvTiJwTi

(4.3)

Para medir el grado de deformacion (strain) de una partıcula i se empleo el tensor de Green-Saint-Venant el cual esta definido por la siguiente matriz:

εi = (JTi Ji)− I (4.4)

De la teorıa de elasticidad lineal se tiene que el grado de deformacion ε y la tension (stress)σ estan linealmente relacionados, es decir:

σi = Cεi (4.5)

donde C es un tensor de rango cuatro relacionado con la ley constitutiva de los materialesy tanto ε como σ son tensores simetricos. Para materiales isotropicos C tiene solo doscoeficientes independientes llamados modulo de Young (E) y tasa de Poisson (v). De estateorıa se deduce que el tensor de tension es:

σi(1,1)

σi(2,2)

σi(3,3)

=E

(1 + v)(1− 2v)

1− v v vv 1− v vv v 1− v

εi(1,1)

εi(2,2)

εi(3,3)

(4.6)

σi(1,2) = σi(2,1) = E1+v

εi(1,2)

σi(1,3) = σi(3,1) = E1+v

εi(1,3)

σi(2,3) = σi(3,2) = E1+v

εi(2,3)

(4.7)

Para calcular tension(stress), deformacion (strain) y fuerzas elasticas es necesario determinar

el campo de desplazamiento ∇~U . Para ello se hace uso del metodo de mallas libres MLSsiguiendo las pautas del trabajo de Muller [20]. En este caso, las derivadas en una partıculai son estimadas a partir de sus vecinos.

4.2. Metodos de Mallas Libres MLS

Los metodos de mallas libres son metodos numericos desarrollados para aproximar lasecuaciones diferenciales parciales sobre una nube de partıculas sin conectividad previa [8].Uno de los primeros enfoques utilizados para resolver estas ecuaciones es el metodo SPH(Smoothed Particle Hydrodynamics), el cual fue empleado en computacion grafica en el ano1977 por Lucy [16]. Luego Monaghan [17], en 1982, utilizo las nociones de aproximacion paranucleos.

25

Page 33: METODOS SIN MALLAS. - UC

Lancaster y Salkauskas [11] en 1981, fueron los primeros que usaron la aproximacion deMLS en el area de computacion grafica, para el suavizado e interpolacion de datos. Si unafuncion ~U ~X definida sobre un dominio Ω ⊂ Rd es suficientemente suave, se puede definir una

aproximacion local alrededor de un punto fijo ~X ∈ Ω como:

~U( ~X, ~X) ≈ L ~XU( ~X) = pT ( ~X)a( ~X), (4.8)

donde

~U( ~X, ~X) =

~U( ~X) ∀ ~X ∈ Ω, || ~X − ~X||2 < ρ

0 en otro caso(4.9)

y L ~Xes un operador. El operador || ||2 es la norma euclıdea. El vector p( ~X) contiene una

base completa en dimension d con consistencia n. En vista de que la aproximacion local usala mejor aproximacion de ~U en un cierto sentido de mınimos cuadrados, el vector incognita

a( ~X) es seleccionado para minimizar la norma 2 de los mınimos cuadrados. De esta forma,

el vector coeficiente a( ~X) es seleccionado para satisfacer la condicion H ~X(a( ~X)) ≤ H ~X

(b)para todo b 6= a ∈ R con

H ~X(a) =

N∑i=1

W ( ~X − ~Xi)[L ~XU( ~X)− U( ~X, ~X)]2 =

N∑i=1

W ( ~X − ~Xi)(pT ( ~Xi)a( ~X)− ~Ui

)2

(4.10)

~Xi se refiere a la posicion de losN nodos dentro del dominio. Cada funcion de pesoWi( ~X− ~Xi)

esta definida en soportes Ωi alrededor de cada nodo ~Xi para garantizar la aproximacion local.La funcion de peso Wi puede ser tambien elegida individualmente para cada nodo.

4.2.1. Aproximacion de ∇~U empleando el metodo de MLS

El calculo de las derivadas parciales ∇ui,∇vi,∇wi del vector desplazamiento ~Ui de lapartıcula i, siguiendo el metodo de mallas libres MLS, se muestran a continuacion.

Haciendo uso de la expansion de Taylor en cada una de las coordenadas de ~Ui, midiendo elerror de aproximacion promediado con el nucleo polinomial de soporte compacto, se tieneque las derivadas que minimizan este error satisfacen para ∇ui lo siguiente:

26

Page 34: METODOS SIN MALLAS. - UC

∑j

~Xij~XTijWij∇ui =

∑j

(uj − ui) ~XijWij (4.11)

La expresion

Ai =∑j

(~Xij

~XTijWij

), (4.12)

es conocida como la matriz de momentos.

Mediante estas ecuaciones:

∇ui = A−1i

∑j

((uj − ui) ~XijWij

)(4.13)

De forma similar se obtiene un resultado para ∇vi,∇wi. Se deduce entonces que ∇ ~UiT

es:

∇ ~UiT

=

∇uTi∇vTi∇wTi

(4.14)

Para calcular la matriz A−1 se utilizo el algoritmo de descomposicion en valores singulares[25], (SVD - Singular Values Decomposition).

4.2.2. Funciones de Peso

Se considera en este modelo que la masa de una partıcula es fija y se calcula como sigue:

mi = s ri3 ρ (4.15)

donde s es un factor de escala igual para todas las partıculas, ρ es la densidad del materialy ri es la distancia promedio de las k partıculas mas cercanas a la partıcula i. La masa mi

esta distribuida alrededor de un nucleo polinomial o funcion de peso. En esta investigacionse usaron los siguientes nucleos polinomiales, obtenidos de la literatura en computaciongrafica [8], [20]:

W1(r, h) =

315

64πh9(h2 − r2)3 si r < h

0 en caso contrario(4.16)

27

Page 35: METODOS SIN MALLAS. - UC

W2(r, h) =

e−( r

0,4h)2 si r

h≤ 1

0 si rh> 1

(4.17)

W3(r, h) =

23− 4( r

h)2 + 4( r

h)3 si r

h≤ 1

2

43− 4( r

h) + 4( r

h)2 − 4

3( rh)3 si 1

2< r

h≤ 1

0 si rh> 1

(4.18)

W4(r, h) =

1− 6( r

h)2 + 8( r

h)3 − 3( r

h)4 si r

h≤ 1

0 si rh> 1

(4.19)

W5(r, h) =

2

3h

(1− 3

2( rh)2 + 3

4( rh)3)

si rh≤ 1

23h

(14(2− r

h)3)

si 1 < rh≤ 2

0 si rh> 2

(4.20)

de estas ecuaciones se define Wij por:

Wij = W (‖ ~Xij‖2, hi), (4.21)

siendo el operador ‖ ‖2 la norma euclıdea. Las graficas de estos nucleos se pueden observaren las figuras 4.2.b, 4.3 y 4.4.

El ındice j representa la partıcula vecina de la partıcula i. Las funciones asociadas a estosnucleos relacionan una partıcula con sus vecinos, donde r es la distancia entre la partıcula iy j, y h es el radio de soporte de estos nucleos.

La esfera centrada en la coordenada de material de la partıcula i tiene como radio de soportehi = 3ri, donde ri es la distancia promedio entre la partıcula i y sus vecinos. La densidad de

una partıcula i viene dada por ρi =∑j

mjWij y el volumen de una partıcula i se obtiene de

la forma siguiente:

voli =mi

ρi(4.22)

4.2.3. Calculo de las Fuerzas

Las fuerzas internas estan formadas por fuerzas elasticas, fuerzas de conservacion del volumeny fuerzas de Lennard-Jones. Las primeras son descritas de la siguiente manera:

28

Page 36: METODOS SIN MALLAS. - UC

Fei = (2voliJiσi)A−1i

∑j

(~XijWij

)(4.23)

estas fuerzas conservan momento angular y lineal. Las fuerzas de conservacion del volumense definen como:

Fvi = volikv(|Ji| − 1)ϕiA−1i

∑j

(~XijWij

)(4.24)

donde kv es una constante de conservacion del volumen que penaliza la desviacion delJacobiano y

ϕi =

(Jvi × Jwi)T(Jwi × Jui)T(Jui × Jvi)T

(4.25)

Las fuerzas de Lennard-Jones (Fli) [13] son fuerzas de atraccion y repulsion entre partıculas.Para cada partıcula i esta fuerza es representada por:

Fli =∑j

L(α, dij)~pij (4.26)

donde L(α, dij) = 4β(

12α12

d13ij− 6 α

6

d7ij

), β es el mınimo del potencial de energıa de Lennard-

Jones, dij es la distancia entre la partıcula i y j (dij = ‖ ~Xi− ~Xj‖2), ~pij = 1

‖ ~Xi− ~Xj‖2( ~Xi− ~Xj)

y α es el diametro de la esfera que representa la partıcula i. En la figura 4.2.a se puede verla grafica de la funcion L(α, dij). En la figura 5.5 se puede observar que hi define el radio dela esfera de la vecindad de la partıcula i y α va asociado solo a la partıcula i.

Por lo tanto, las fuerzas internas de una partıcula i son representadas por la siguienteexpresion:

Finti = (Fei + Fvi)A−1i

∑j

(~XijWij

)+ Fli (4.27)

En este estudio de modelos deformables, a las fuerzas internas se le pueden agregar fuerzasexternas tales como: gravedad, presion atmosferica entre otras. La suma de las fuerzasinternas y externas es la fuerza total en el modelo.

29

Page 37: METODOS SIN MALLAS. - UC

4.3. Dinamica

La dinamica del modelo de partıculas se basa en las leyes de Newton. Para la integracion delas fuerzas totales fue necesario utilizar el esquema explıcito de Euler. De esta manera, de laecuacion

f t+4ti = miat+4ti (4.28)

donde f t+4ti es la fuerza total, at+4ti es la aceleracion y mi la masa de la partıcula i, sededucen tanto la velocidad

vt+4ti = vti + at+4ti 4t (4.29)

como la posicion de una partıcula i

xt+4ti = xti + vt+4ti 4t. (4.30)

En este trabajo tambien se utilizo un metodo de integracion implıcita similar al usado enel trabajo de Muller [20]. En este esquema, las nuevas posiciones y velocidades de todas laspartıculas son calculadas de la siguiente manera:

X t+4t = X t + V t+4t4t (4.31)

MV t+4t = MV t +4tF (X t+4t) (4.32)

donde los vectores X y V contienen todas las posiciones y velocidades de las partıculas en elsistema. La matriz M es diagonal y contiene todas las masas. Sustituyendo la ecuacion 4.31en la ecuacion 4.32 se obtiene el siguiente sistema:

MV t+4t = MV t +4tF (X t +4tV t+4t) (4.33)

de donde se deduce:

≈MV t +4tF (X t) +4t2K |Xt .V 4t+t

30

Page 38: METODOS SIN MALLAS. - UC

siendo F las fuerzas de todos los puntos y K |Xt= ∇XF (X t) el Jacobiano de F . K |Xt esuna matriz 3n× 3n donde n es la cantidad total de partıculas. Reordenando los terminos seobtiene:

(M −4t2K |Xt)V t+4t = MV t +4tF (X t) (4.34)

Resolviendo el sistema de la ecuacion anterior, se pueden obtener las nuevas velocidades.

La submatriz Kkl, k, l ∈ [1..n] tiene la forma

Kkl = ∇ulfk = (d

dulfk,

d

dvlfk,

d

dwlfk) (4.35)

donde Kkl es una matriz 3× 3, siendo fk = Fek + Fvk, Fek son las fuerzas elasticas y Fvkson las fuerzas de conservacion del volumen de la partıcula k. La derivada de las fuerzaselasticas para la componente ul :

d

dulFek = −2V olk

dTl00

σk + JkC(JukdTl + dlJu

Tk )

· dk (4.36)

Para la componente vl la expresion es:

d

dvlFek = −2V olk

0dTl0

σk + JkC(JvkdTl + dlJv

Tk )

· dk (4.37)

Para la componente wl la expresion es:

d

dwlFek = −2V olk

00dTl

σk + JkC(JwkdTl + dlJw

Tk )

· dk (4.38)

donde

31

Page 39: METODOS SIN MALLAS. - UC

C =E

1− v2

1 v 0v 1 00 0 1−v

2

(4.39)

siendo E el modulo de Young y v la tasa de Poisson. Para las fuerzas de conservacion delvolumen la derivada con respecto a ul es:

d

dulFek = −kvV olk

∣∣∣∣∣∣ dTlJvTkJwTk

∣∣∣∣∣∣ · (Jvk × Jwk)T

(Jwk × Juk)T(Juk × Jvk)T

+ (|Jk| − 1)

0(Jwk × dl)T(dl × Jvk)T

· dk(4.40)

Para la componente vl la expresion es:

d

dvlFek = −kvV olk

∣∣∣∣∣∣ JuTk

dTlJwTk

∣∣∣∣∣∣ · (Jvk × Jwk)T

(Jwk × Juk)T(Juk × Jvk)T

+ (|Jk| − 1)

(dl × Jwk)T0

(Juk × dl)T

· dk(4.41)

Para la componente wl la expresion es:

d

dwlFek = −kvV olk

∣∣∣∣∣∣ JuTkJvTkdTl

∣∣∣∣∣∣ · (Jvk × Jwk)T

(Jwk × Juk)T(Juk × Jvk)T

+ (|Jk| − 1)

(Jvk × dl)T(dl × Juk)T

0

· dk(4.42)

donde el operador | | representa el determinante de una matriz cuadrada.

Una vez calculadas las nuevas velocidades, usando la ecuacion 4.31 se pueden obtener lasnuevas posiciones de todas las partıculas.

4.3.1. Dinamica de la Superficie del objeto 3D

El esquema utilizado en este trabajo para representar la superficie del objeto en deformacionse basa en la investigacion realizada por Pauly [23]. Una vez calculadas las nuevas posiciones,

32

Page 40: METODOS SIN MALLAS. - UC

velocidades y desplazamientos de las partıculas internas (partıculas del modelo) se procedea determinar el desplazamiento de los puntos de las superficie. El desplazamiento de unapartıcula de la superficie con respecto a los puntos internos vecinos se obtiene de la siguientemanera:

usurf =1∑ω(ri)

∑i

ω(ri)(~Ui +∇~UTi (xsurf − ~Xi)) (4.43)

donde xsurf es la posicion de la partıcula de la superficie, ω(ri) = e−r2ih2 es una funcion de

peso gaussiano, ri = ||xsurf − ~Xi||2 y h es la distancia del radio de la esfera que contiene ala partıcula de la superficie y sus partıculas internas vecinas.

Una vez calculado el nuevo desplazamiento de la partıcula de la superficie se procede aobtener su nueva posicion, la cual tiene la siguiente expresion:

xt+4tsurf = xtsurf + usurf (4.44)

4.4. Resultados

Se crearon varios ejemplos sobre los cuales utilizamos esta metodologıa para realizarsimulacion dinamica de objetos deformables. Todas las animaciones fueron realizadas dentrode cajas y cilindros. Por esta razon fue necesario aplicar tecnicas de colision de las partıculascontra las cajas y cilindros que sirvieron de recipientes. La estrategia usada para lailuminacion de la superficie de estos objetos consistio en calcular las normales promediadaspor los triangulos vecinos a cada punto de la superficie. Otro aspecto visto en las simulacionesfue que las fuerzas de Lennard-Jones permitieron que el manejo de colisiones entre laspartıculas fuese el adecuado. Para lograr estas animaciones fue necesario la calibracion delos parametros fısicos para estos objetos.

En la figura (4.2) se muestra el potencial de Lennard-Jones junto

Los objetos de prueba 3D que utilizamos son los siguientes. Objeto 1: es un objeto 3D enforma de un octaedro. Esta formado por 299 partıculas internas, no tiene asignada superficieque cubra el objeto y por lo tanto no existe ninguna triangulacion de malla de la superficie.Objeto 2: Es un objeto en forma de elipsoide formado por 568 partıculas y tampoco tienesuperficie que lo cubra. Objeto 5: es un objeto en forma de elipsoide formado por 715partıculas, tiene superficie asignada formada por 990 nodos y una triangulacion de 1976

33

Page 41: METODOS SIN MALLAS. - UC

triangulos.

En la tabla (4.1) se muestran las caracterısticas de los equipos utilizados (hardware) y lossistemas operativos que estos contienen. En la tabla (4.3) se describen las caracterısticas delos objetos tridimensionales. En la figura 4.6 se muestra la deformacion del objeto 1 usandolos equipos 1 y 2. Se empleo una integracion del tiempo explıcita con un diferencial de tiempo∆t = 0.005. El radio de soporte hi para definir la vecindad fue igual para todas las partıculascon el valor de 0.8. Otros atributos como la densidad de material, la constante de volumenkv, el modulo de Young y la tasa de Poisson tienen los siguientes valores 1, 10, 10 y 0.1respectivamente.

En la figura 4.7, se aprecia la deformacion del objeto 2, ejecutado en los equipos 1 y 2. Eneste modelo se utilizo una tasa de Poisson 0.1, un modulo de Young de 10, kv = 10, unapresion atmosferica de 7. Se realizo con una integracion explıcita con ∆t = 0.009.

En la tabla (4.2) se puede apreciar tiempos en FPS (cuadros por segundo) y por iteraciono ciclo de animacion (TIS - Tiempo por iteracion en segundos). Estos TIS solo calculan eltiempo de ejecucion del metodo sin realizar la visualizacion, el cual implica no solo pintar elmodelo sino tambien la iluminacion. En esta tabla se puede apreciar que los TIS del objeto 1son mayores que los del objeto 2. Esto ocurre porque a medida que aumentan la cantidad departıculas los calculos son mayores produciendo que los FPS disminuyan y los TIS aumenten.

En la figura 4.8 se puede apreciar la simulacion del objeto 5 realizada en los equipos 1 y 4. Seutilizo una integracion del tiempo explıcita. La funcion de peso usada para esta simulaciones mostrada en la ecuacion 4.16.

Figura 4.1: Objeto en estado de reposo y en estado de deformacion.

La figura del lado izquierdo muestra el objeto sin deformaciones. La figura del lado derechorepresenta un objeto con su deformacion (X + U). Donde X es el conjunto de partıculas querepresentan las coordenadas del material y X + U son las coordenadas de las partıculas delobjeto deformado.

34

Page 42: METODOS SIN MALLAS. - UC

Equipo Procesador Velocidad Memoria Arquitectura Aceleradora Sistema(GHZ) RAM (bits) Grafica Operativo

1 AMD 2.20 512 MB 64 · · · · · · · · · WindowsAthlon XP

2 Intel 2.80 752 MB 32 Intel 82852 WindowsPentium 4 82855 GM/GME XP

Graphics Controller

3 UltraSPARC 1.2 1 GB 64 · · · · · · · · · SolarisIII Cu 10

4 2 Dual Core 2.4 7.79 GB 64 NVIDIA Quadro Suse 10.2AMD Opteron FX3450 (Linux)

/4000 SID

Cuadro 4.1: Equipos utilizados.

Objeto FPS TIS Equipo

1 7.2944 0.09926 1

1 5.9943 0.1320 2

2 1.2751 0.5123 1

2 1.029 0.6683 2

Cuadro 4.2: Tiempos de las animaciones basadas en el modelo de partıculas internas usandola estrategia de busqueda de vecinos de todos contra todos en los distintos equipos.

Parametros Objeto 1 Objeto 2 Objeto 5

∆t 0.001 0.001 0.001

Integracion del tiempo explıcita explıcita explıcita

Max. de vecinos para hi 10 10 10

Modulo de Young 10000 100 100

Tasa de Poisson 0.1 0.2 0.2

Constante de Volumen kv 100 100 100

Densidad de Material 10 5 5

Presion Atmosferica 10 10 100

Radio fısico de las partıculas 0.4 0.2 0.2

Radio de vecindad de puntos de la superficie 2 1.5 2.5

Funcion de Peso W5 W1 W1

Cuadro 4.3: Parametros usados en las animaciones basadas en el modelo de los puntosinternos y de superficie.

35

Page 43: METODOS SIN MALLAS. - UC

Figura 4.2: Funcion de Lennard-Jones L(α, dij). Funcion W1(r, h).

La imagen (a) muestra la funcion L(α, dij). La imagen (b) muestra la funcion W1.

Figura 4.3: Funciones de peso W2(r, h) y W3(r, h).

La imagen (a) muestra la funcion W2. La imagen (b) muestra la funcion W3.

Figura 4.4: Funciones de peso W4(r, h) y W5(r, h).

La imagen (a) muestra la funcion W4. La imagen (b) muestra la funcion W5.

Figura 4.5: Diferencia entre hi y α.36

Page 44: METODOS SIN MALLAS. - UC

Figura 4.6: Animacion de un octaedro con 299 partıculas internas.

Figura 4.7: Animacion de un elipsoide con 568 partıculas internas.

Las secuencias de las dos animaciones son mostradas de izquierda a derecha.

37

Page 45: METODOS SIN MALLAS. - UC

Figura 4.8: Animacion de un elipsoide formado por 715 partıculas internas y 990 de lasuperficie y 1976 triangulos.

En la parte superior se muestran las partıculas internas y externas del objeto. La animacionde la deformacion es mostrada en la parte inferior.

38

Page 46: METODOS SIN MALLAS. - UC

Capıtulo 5

Simulacion de Fluidos Basados enPartıculas usando SPH

En computacion grafica el flujo de fluidos es importante a la hora de simular fenomenospresentes en el dıa a dıa, por ejemplo, agua, lluvia, olas, lodo. En este capıtulo se presentanlas ecuaciones de Navier-Stokes para el flujo de fluidos que serviran de basamento para elpresente trabajo.

Las ecuaciones de Navier-Stokes se pueden resolver usando metodos con mallas tambienllamados metodos eulerianos, o bien usando metodos sin mallas, basados en partıculas,tambien llamados metodos lagrangianos.

Los metodos eulerianos basados en mallas son los mas usados en computacion graafica y lasecuaciones de Navier-Stokes han sido extendidas para simular muchos efectos interesantescomo tension superficial, visco-elasticidad y elasto-plasticidad. La mayorıa de las solucioneseulerianas y sus extensiones son poco utiles a la hora de realizar simulaciones interactivas entiempo real.

5.1. Las Ecuaciones de Navier-Stokes

Las propiedades tıpicas de un fluido isotermico viscoso son: velocidad u, masa-densidad ρ ypresion p. Las propiedades fısicas son consideradas como campos continuos en el fluido. Laformulacion clasica de la dinamica para el flujo de un fluido incompresible en el tiempo tviene dada por las ecuaciones de Navier-Stokes.

39

Page 47: METODOS SIN MALLAS. - UC

ρ(∂

∂t+ u · ∇)u = −∇p+ µ∇ · (∇u) + f , (5.1)

∇ · u = 0, (5.2)

donde µ es la viscosidad y f es la suma de las densidades-fuerzas externas actuando sobreel fluido, como por ejemplo, la gravedad.

La formulacion de Navier-Stokes para el flujo de fluidos esta basado en una estructura demallas, lo que significa que no solo depende del tiempo t, sino tambien de la posicion enla malla r(t), que tambien dependen del tiempo. En tres dimensiones el vector de posicionviene dado por:

r(t) = (x(t), y(t), z(t))T . (5.3)

La ecuacion (5.1) describe la conservacion de momento y es basicamente la segunda leyde Newton para un fluido. A la derecha de la ecuacion estan representados el total de lasdensidades-fuerzas mientras que del lado izquierdo esta el producto de las masas-densidadespor la densidad-aceleracion. Para un fluido la densidad-aceleracion es la derivada del campode velocidad. Usando la regla de la cadena tenemos:

d

dtu(t, r(t)) =

∂u

∂t+∂u

∂x

∂x

∂t+∂u

∂y

∂y

∂t+∂u

∂z

∂z

∂t

=∂u

∂t+

[∂u

∂x· ∂u

∂y· ∂u

∂z

]T·[∂x

∂t,∂y

∂t,∂z

∂t

]T=

∂u

∂t+ (u ·

[∂

∂x· ∂∂y· ∂∂z

])u

= (∂

∂t+ u · ∇)u. (5.4)

La velocidad de cambio de un campo continuo adimensional (5.4), en el fluido, es llamadala derivada sustancial de ψ y esta definida como:

dt=∂ψ

∂t+ u · ∇ψ, (5.5)

Donde u · ∇ψ es el termino de adveccion y (5.4) justifica la aparicion de este. La derivadasustancial es la derivada de tiempo completo del campo ψ en el enfoque euleriano.

40

Page 48: METODOS SIN MALLAS. - UC

La ecuacion (5.2) describe la conservacion de masa para un fluido incompresible y fueformulada originalmente en las ecuaciones de Euler. En general, la ecuacion de conservacionde masa para fluidos compresibles es conocida como la ecuacion de continuidad. Es laderivada sustancial del campo de densidad, lo que nos lleva a:

∂ρ

∂t+∇ · (ρu) = 0. (5.6)

Cuando la masa-densidad es constante en el fluido ∂p∂t

= 0 y por lo tanto ρ · ∇u = ∇ · u,entonces el fluido es incompresible.

5.1.1. Enfoque Euleriano

Las ecuaciones de Navier-Stokes (5.1) y (5.2) formulan la dinamica de un fluido. El metodoeuleriano considera un fluido como un conjunto de celdas alineadas en una malla regular,donde cada celda contiene una cantidad de moleculas de dicho fluido. El reto de este metodopara la simulacion consiste en superar las dificultades en la visualizacion debido al grosor dela malla.

La solucion analıtica de las ecuaciones de Navier-Stokes es todo un desafıo, pero se puedenencontrar soluciones numericas usando varios pasos para cada componente de las ecuaciones.Uno de los mas importantes es la descomposicion de Helmholtz-Hodge [6], [10], que proponeuna tecnica matematica que permite representar el gradiente de presion (−∇p) y la ecuacion(5.2) en una sola ecuacion. Los diferentes pasos se resuelven usando integradores explıcitos,implıcitos y semi-implıcitos. La malla provee de una solucion a las derivadas usando el metodode diferencias finitas.

5.2. Smoothed Particle Hydrodynamics (SPH)

La formulacion de SPH surge del campo de la astrofısica computacional y esta disenada pararepresentar problemas de flujo de fluidos compresibles. El metodo es ampliamente utilizadoen fenomenos del campo de la astrofısica, por su facilidad de representar problemas complejosde una manera sencilla. SPH es un metodo de interpolacion para aproximar los valores yderivadas de campos continuos usando puntos discretos de muestreo.

Los puntos de muestreo son identificados como partıculas y contienen valores concretos, por

41

Page 49: METODOS SIN MALLAS. - UC

ejemplo, masa, velocidad, posicion, etc., pero estas partıculas ademas poseen cantidadesestimadas de propiedades fısicas dependientes del problema como, por ejemplo, masa-densidad, temperatura, presion, etc. Las propiedades en el metodo SPH son macroscopicasy son obtenidas como los promedios pesados entre las partıculas vecinas.

Comparado con otros metodos conocidos para la aproximacion numerica de las derivadas,entre ellos, el metodo de diferencias finitas, que requiere que las partıculas se encuentrenalineadas en una malla regular, SPH puede aproximar derivadas de campos continuos usandodiferenciacion analıtica en partıculas con posiciones arbitrarias. Cada partıcula esta pensadacomo que ocupa una fraccion del espacio del problema, y para obtener promedios decantidades mas precisos, las partıculas muestreadas deben ser numerosas.

El metodo SPH es basicamente un metodo de interpolacion, esta interpolacion esta basadaen la teorıa de integrales interpolantes usando funciones de peso para aproximar una funciondelta. La integral interpolante de cualquier funcion, A(r), esta definida sobre todo el espacio,Ω, porcion

AI(r) =

∫Ω

A(r′)W (r− r′, h)dr′, (5.7)

donde r es un punto en Ω, y W es una funcion de peso con h como su radio. El radio, es unfactor de escala que controla la suavidad de la funcion de peso.

El equivalente numerico de 5.7 es obtenido mediante la aproximacion de la integralinterpolante con una sumatoria interpolante,

AI(r) =∑

Ω

AjVjW (r− rj, h), (5.8)

donde j es iterada por todas las partıculas, Vj es el volumen atribuido implıcitamente ala partıcula j, rj es la posicion y Aj es la cantidad A en rj. En comparacion con 5.7 elvolumen de cada partıcula es acumulado en 5.8 lo que puede ser justificado cuando Aj seasume suficientemente constante en Vj. La siguiente relacion entre la masa, el volumen y lamasa-densidad aplica

V =m

ρ, (5.9)

donde m es la masa y ρ es la masa-densidad. Sustituyendo el volumen para la partıcula j

42

Page 50: METODOS SIN MALLAS. - UC

en 5.8 con 5.9 tenemos la formulacion basica del metodo SPH, que puede ser utilizada paraaproximar cualquier cantidad en un campo continuo, y ser evaluada en cualquier lugar delespacio contenido,

As(r) =∑j

Ajmj

ρjW (r− rj, h). (5.10)

En SPH un interpolante diferenciable de una funcion puede ser construido a partir de susvalores en las partıculas usando un nucleo diferenciable, y por lo tanto las derivadas de unainterpolante pueden ser obtenidas mediante la diferenciacion analıtica del nucleo. Por lo tantoes un metodo directo que permite definir el gradiente y laplaciano de un campo, mediante laasumpcion de que el nucleo es diferenciable con derivadas continuas hasta el segundo orden.Considerando un sistema de dos partıculas i y j, la derivada parcial en (5.10) para x resultaen

∂xAS(ri) =

∂x

(Ajmj

ρjW (ri − rj, h)

)(5.11)

usando la regla del producto veremos

∂x

(Ajmj

ρjW (ri − rj, h)

)=

∂x

(Ajmj

ρj

)W (ri − rj, h) + Aj

mj

ρj

∂xW (ri − rj, h)

= 0 ·W (ri − rj, h) + Ajmj

ρj

∂xW (ri − rj, h)

= Ajmj

ρj

∂xW (ri − rj, h), (5.12)

donde se utiliza el hecho de que Ajmj

ρjen este punto no depende directamente de x ni de

ningun otro eje del espacio, por lo tanto el producto se considera constante.

Sabiendo que las derivadas de una sumatoria interpolante solamente afectan al nucleo, elgradiente de un campo resulta en

∇AS(r) =∑j

Ajmj

ρj∇W (r− rj, h). (5.13)

43

Page 51: METODOS SIN MALLAS. - UC

Para obtener mayor precision en el gradiente de un campo, la interpolante puede ser obtenidausando

∇A =1

ρ(∇(ρA)− A∇ρ), (5.14)

La expresion en SPH para 5.14, usando 5.13 en el termino del gradiente resulta en

∇AS(r) =1

ρ

(∑j

pjAjmj

ρj∇W (r− rj, h)− A

∑j

ρjmj

ρj∇W (r− rj, h)

)(5.15)

=1

ρ

(∑j

Ajmj∇W (r− rj, h)− A∑j

mj∇W (r− rj, h)

)(5.16)

Una forma particular de 5.14 puede ser obtenida reescribiendo ∇Aρ

, de acuerdo con

∇A = ρ

(∇(A

ρ

)+A

ρ2∇ρ). (5.17)

donde el termino del SPH se convierte en

∇AS(r) = ρ

(∑j

Ajρj

mj

ρj∇W (r− rj, h) +

A

ρ2

∑j

ρjmj

ρj∇W (r− rj, h)

)

= ρ

(∑j

Ajρ2j

mj∇W (r− rj, h) +∑j

A

ρ2mj∇W (r− rj, h)

)

= ρ∑j

(Ajρ2j

+A

ρ2

)mj∇W (r− rj, h). (5.18)

El laplaciano del campo 5.10 puede ser obtenido derivando el gradiente, de donde resulta

∇2AS(r) =∑j

Ajmj

ρj∇2W (r− rj, h). (5.19)

44

Page 52: METODOS SIN MALLAS. - UC

Nucleos del SPH

El uso de diferentes nucleos en SPH es equivalente al uso de diferentes esquemas dediferenciacion en diferencias finitas, por lo tanto la eleccion de un buen nucleo para unproblema especıfico es sumamente importante. Los nucleos en SPH deben cumplir con dospropiedades,

∫Ω

W (r, h)dr = 1 (5.20)

y

lımh→0

W (r, h) = δ(r). (5.21)

donde δ es la funcion del delta de dirac

δ(r) =

∞ ‖r‖ = 00 en caso contrario

(5.22)

En la ecuacion (5.20) observamos que los nucleos deben estar normalizados. Los nucleosademas deben ser positivos

W (r, h) ≥ 0, (5.23)

para asegurar que son funciones de peso. Si el nucleo es par,

W (r, h) = W (−r, h), (5.24)

se confirma la simetrıa rotacional, lo que es importante para evitar que varıe bajo rotacionesdel sistema de coordenadas. Sı (5.24) y (5.20) se cumplen, el nucleo es par y esta normalizado,entonces el error es O(h2). Tambien se sugiere que los nucleos esten definidos sobre soportescompactos del radio. Se utiliza h como el radio de soporte de los nucleos, por lo que secumplira W (r, h) = 0, ‖r‖ > h.

45

Page 53: METODOS SIN MALLAS. - UC

5.3. Enfoque Lagrangiano

Las ecuaciones de Navier-Stokes representan la formulacion euleriana basica para un fluidoisotermico incompresible. Usando partıculas en vez de una malla se puede simplificar laecuacion enormemente. Se asume que la cantidad de partıculas es constante durante lasimulacion, y manteniendo la masa constante en las partıculas la conservacion de masa estagarantizada, por lo tanto la ecuacion ∇ · u = 0 puede ser omitida.

Figura 5.1: Configuracion Basica de SPH para las ecuaciones de Navier-Stokes

La figura muestra la configuracion basica de un fluido basado en partıculas. En la formulacionlagrangiana de un fluido, son las partıculas quienes lo definen completamente, por lo tantolas partıculas se mueven con el fluido.

Comparativamente el enfoque euleriano mantiene su malla estatica durante la simulacion y lasimulacion depende de la posicion de un nodo en la malla ademas del tiempo t, con el enfoquelagrangiano cualquier propiedad del campo que representa al fluido depende solamentedel tiempo t. Las partıculas contienen masa, posicion y velocidad, ademas de cantidades,asociadas a propiedades de material, aproximadas mediante SPH. La aceleracion para unapartıcula de fluido lagrangiano proviene de la derivada ordinaria d

dtde su velocidad u(t). Esto

explica el por que el termino de adveccion no esta presente en el enfoque lagrangiano. Laformulacion lagrangiana basica de Navier-Stokes para un fluido incompresible e isotermicoviene dada por

46

Page 54: METODOS SIN MALLAS. - UC

ρdu

dt= −∇p+ µ∇2u + f . (5.25)

El lado derecho de la ecuacion consiste en las fuerzas internas y externas. Los campos defuerzas pueden ser combinados en una suma de fuerzas, F = f internal + f external. Para lapartıcula i, la aceleracion se define como

ai =duidt

=Fi

ρi. (5.26)

donde ai y ui son la aceleracion y la velocidad para la partıcula i, respectivamente, Fi es eltotal de fuerza aplicada sobre la partıcula y ρi es la masa-densidad evaluada en la posicionde la partıcula i.

Es necesario seleccionar un nucleo que nos ayude a resolver las ecuaciones de SPH, paraestas razones se ha elegido el nucleo polinomial de sexto grado, que viene dado por

Wdefault(r, h) =315

64πh9

(h2 − r2)3 si r < h

0 en caso contrario(5.27)

con gradiente

∇Wdefault(r, h) =945

32πh9r(h2 − ‖r‖2)2, (5.28)

y laplaciano

∇2Wdefault(r, h) =945

32πh9(h2 − ‖r‖2)(3h2 − 7‖r‖2). (5.29)

Existen algunas caracterısticas interesantes de este nucleo, tales como que preserva lacurvatura de campana de Gauss y la norma de r puede ser omitida completamente, haciendolocomputacionalmente ligero. El nucleo por defecto Wdefault(r, h) y sus derivadas son utilizadaspara el calculo de todas las aproximaciones de las propiedades del campo, excepto por lasfuerzas internas del campo.

47

Page 55: METODOS SIN MALLAS. - UC

5.3.1. Masa-Densidad

Las masas de las partıculas que son requeridas por las ecuaciones de SPH, son constantesdefinidas por el usuario, pero la masa-densidad es un campo continuo del fluido, que debeser calculado. Para evitar cualquier confusion, la masa-densidad es el campo que unicamentedepende de la masa de las partıculas y para este caso especifico se usa la ecuacion (5.10)para calcularlo. En la partıcula i la masa-densidad se expresa ası

ρi = ρ(ri) (5.30)

=∑j

ρjmj

ρjWdefault(r, h) (5.31)

=∑j

mjWdefault(r, h). (5.32)

5.3.2. Fuerzas Internas

Las fuerzas internas son las fuerzas definidas por el fluido mismo, estas se representan comopresion y viscosidad, que son el primero y segundo termino de la ecuacion 5.25 en su ladoderecho. Las fuerzas internas del fluido son aproximadas usando la formulacion del enfoqueSPH.

5.3.2.1. Presion

La presion p en una partıcula puede ser determinada usando la ley del gas ideal

pV = nRT, (5.33)

donde V = 1ρ

es el volumen por unidad de masa, n es el numero de partıculas de gas enmol, R es la constante de gas universal y T es la temperatura. Para un fluido isotermico, conmasa constante el lado derecho de la ecuacion se puede mantener como constante, y por lotanto lo reemplazamos con una constante de rigidez k, que en teorıa solamente depende de lacantidad de partıculas en el fluido. El termino de presion puede ser reescrito de la siguientemanera

48

Page 56: METODOS SIN MALLAS. - UC

pV = k

p1

ρ= k

p = kρ. (5.34)

Si se conoce la presion en cada partıcula, la fuerza local de presion sobre la partıcula i ennotacion SPH es

fpresioni = −∇p(ri) (5.35)

= −∑j 6=i

pjmj

ρj∇Wdefault(ri − rj, h) (5.36)

Esta fuerza no es simetrica lo que llevarıa a la no conservacion de la ley de accion-reaccion,por lo tanto reescribiremos el termino −∇p(ri) usando 5.18 para obtener una fuerza simetricaque si conserve esta ley, quedando la ecuacion anterior de la siguiente manera

fpresioni = −pi∑j 6=i

(piρ2i

+pjρ2j

)mj∇Wdefault(ri − rj, h). (5.37)

Usar la ecuacion 5.34 para el calculo de la presion resulta en un comportamiento de gasideal que se expande en el espacio, pero como el objetivo es representar lıquidos, se debereformular la ecuacion para que el fluido posea cohesion interna y tenga una masa-densidadconstante en reposo. Para ello se puede utilizar una version modificada de la ecuacion de gasideal con una presion de reposo p0, que es

(p+ p0)V = k (5.38)

p+ kρ0 = kρ (5.39)

p = k(ρ− ρ0), (5.40)

donde ρ0 es la densidad en reposo del fluido. Usando esta ecuacion en (5.37) se obtendra uncomportamiento en el cual, cuando las partıculas se acerquen a la densidad de reposo lasfuerzas de atraccion repulsion se balancearan.

49

Page 57: METODOS SIN MALLAS. - UC

El gradiente del campo de presion se utiliza para calcular la fuerza de presion. Para estoes necesario un nucleo especial, debido a que con el nucleo por defecto se obtiene unaacumulacion poco realista de partıculas en las zonas de alta presion, esta misma situacion sele presento a Desbrum et al. Para lo que propuso otro nucleo normalizado, llamado nucleo“spiky”, que sera utilizado como nucleo para la presion

Wpresion(r, h) =15

πh6

(h− r)3 si 0 ≤ r ≤ h

0 si r > h(5.41)

con gradiente

∇Wpresion(r, h) =15

πh6

r

‖r‖(h− ‖r‖)2 (5.42)

lımr→0−

∇Wpresion(r, h) =45

πh6, lımr→0+

∇Wpresion(r, h) = − 45

πh6

y laplaciano

∇2Wpresion(r, h) =90

πh6

1

‖r‖(h− ‖r‖)(h− 2‖r‖) (5.43)

lımr→0∇2Wpresion(r, h) = −∞,

5.3.3. Viscosidad

Un fluido es una sustancia que no posee resistencia para fuerzas de quiebre y por lo tanto fluyea traves de las deformaciones. Al mismo tiempo cuando el fluido fluye, las moleculas sufrenuna friccion interna que reduce su energıa cinetica transformandola en calor. La resistenciaal flujo es llamada viscosidad, que esta controlada por el coeficiente de viscosidad µ, quedefine la fuerza de viscosidad sobre fluido. La variante de SPH para el termino de la fuerzade viscosidad se define

fviscosidadi = µ∇2u(ri) (5.44)

= µ∑j 6=i

ujmj

ρj∇2W (ri − rj, h). (5.45)

50

Page 58: METODOS SIN MALLAS. - UC

Similar a la fuerza de presion, la fuerza de viscosidad es tambien asimetrica, debido a que lavelocidad varia de partıcula a partıcula. Para contrarrestar este efecto, Mullr et al. simetrizael campo de velocidad usando

fviscosidadi = µ∑j 6=i

(uj − ui)mj

ρj∇2W (ri − rj, h). (5.46)

Esto es posible debido al hecho de que la fuerza de viscosidad solamente depende de lasdiferencias de velocidades y no de las velocidades absolutas.

El laplaciano del nucleo en la ecuacion anterior debe ser siempre positivo. Esto es necesariodebido a que la fuerza de viscosidad no debe incrementar las velocidades relativas, puesesto, introducirıa energıa al sistema, causando inestabilidad. Solo si el laplaciano es positivodefinido entonces la fuerza de viscosidad actuara como amortiguamiento para las velocidadesrelativas.

El nucleo por defecto no tiene esta propiedad ni tampoco el nucleo de presion, por lo tantose debe emplear un nucleo que cumpla ∇2W (r, h) ≥ 0 para ‖r‖ ≤ 0, el nucleo que cumpleestas propiedades es

Wviscosidad(r, h) =15

2πh3

−‖r‖

3

2h3+ ‖r‖2

h2+ h

2‖r‖ − 1 0 < ‖r‖ ≤ h

0 ‖r‖ > h(5.47)

lımr→0

Wviscosidad(r, h) =∞,

con gradiente

∇Wviscosidad(r, h) =15

2πh3r

(−3‖r‖

2h3+

2

h2− h

2‖r‖3

), (5.48)

lımr→0−

∇Wviscosidad(r, h) =∞, lımr→0+

∇Wviscosidad(r, h) = −∞,

y el laplaciano

∇2Wviscosidad(r, h) =45

πh6(h− ‖r‖), (5.49)

51

Page 59: METODOS SIN MALLAS. - UC

5.3.4. Fuerzas Externas

Las fuerzas externas son todas aquellas fuerzas que actuan sobre el modelo, estas se balanceancon las fuerzas internas del modelo y corresponden al ultimo termino en la ecuacion (5.25),estas fuerzas pueden ser combinadas en una fuerza total

f externa =∑n

fn, (5.50)

donde n corresponde a cada una de las densidades de fuerza externa. Algunas fuerzas externaspueden ser aplicadas directamente sobre las partıculas mientras que otras dependen de laspartıculas vecinas. El manejo de colisiones para la interaccion al usuario, que tambien puedeser visto como una fuerza externa.

5.3.4.1. Gravedad

La fuerza de gravedad es un campo que actua igualmente sobre todas las partıculas delsistema

f gravedadi = ρig, (5.51)

de donde g es la constante de gravedad.

5.3.4.2. Tension Superficial

La tension superficial es una fuerza externa que puede ser aplicada a la superficie libre deun fluido liquido. Normalmente no es una parte de las ecuaciones de Navier-Stokes, dadoque esta considerada mas bien como una condicion de frontera. Para un fluido lagrangianolas fronteras pueden ser consideradas como las partıculas que no poseen vecinos dentro deun margen determinado. Las moleculas del fluido son influenciadas por fuerzas de atraccionde las partıculas vecinas, y estas fuerzas se mantienen en perfecto balance dentro del fluido.En la superficie del fluido las fuerzas son desbalanceadas y causan tension superficial. Latension superficial actua en la direccion de la normal que apunta hacia adentro del fluido,donde mantienen a la superficie unida. La tension superficial aplanara la curvatura de lasuperficie mediante la minimizacion del area de la superficie.

52

Page 60: METODOS SIN MALLAS. - UC

La fuerza de la tension superficial que emplearemos tiene la siguiente forma

f superficiei = −σ∇2cini‖ni‖

, (5.52)

donde ni es la normal hacia dentro de la superficie en la partıcula i, ci es el valor del campode color evaluado en la partıcula i y σ es el coeficiente de tension que depende de los fluidosque forman la superficie, e.g. agua y aire.

El campo de color c es una propiedad adicional con c = 1 exactamente en el lugar de unapartıcula y c = 0 en cualquier otro lugar. En SPH el campo de color en la partıcula i es

ci = c(ri)

=∑j

cjmj

ρjW (ri − rj, h)

=∑j

mj

ρjW (ri − rj, h). (5.53)

El gradiente del campo de color define la normal hacia dentro de la superficie en el fluido,este se deriva de la siguiente manera

ni = ∇c(ri) (5.54)

=∑j

mj

ρj∇W (ri − rj, h), (5.55)

donde ‖ni‖ > 0 solo cerca de la superficie del fluido. La divergencia de n mide la curvaturagaussiana de la superficie,

κ = −∇n

‖n‖= −∇

2c

‖n‖, (5.56)

donde la negacion es importante para obtener la curvatura positiva en fluidos convexos.

La traccion superficial o traccion externa opuesta a la traccion interna que concierne alcampo de tension, es fuerza por unidad de area actuando en una posicion especifica de lasuperficie del fluido. Se define ası

53

Page 61: METODOS SIN MALLAS. - UC

t = σκn

‖n‖, (5.57)

y deberıa ser distribuida solamente para las partıculas cercanas a la superficie. Debido aque ‖n‖ se hace mas pequeno cuando la partıcula i se encuentra lejos de la superficiepodemos multiplicar la traccion superficial por un campo escalar normalizado δi = ‖ni‖.Esto asegurara que la densidad de la fuerza se dispersara por todas las partıculas potenciales,dejando la ecuacion para calcular la tension superficial de la siguiente manera,

f superficiei = δiti = σκini = −σ∇2cin

‖ni‖. (5.58)

La fuerza de tension superficial solamente aplica como se dijo, a las partıculas cercanas a lasuperficie del fluido. Esta condicion es determinada numericamente dado que cuando n

‖n‖→0

se torna numericamente inestable. Una manera de prevenir errores numericos es evaluandof superficiei en la partıcula i es calcularla solamente cuando

‖n‖ ≤ l (5.59)

donde l > 0 es un margen relacionado a la concentracion de partıculas

5.3.4.3. Interaccion con el Usuario

Una aplicacion interactiva tiene la capacidad de responder ante las demandas del usuario,esto puede ser conseguido mediante el control de los parametros que definen las propiedadesinternas y externas del fluido durante la simulacion, e.g. la fuerza de viscosidad µ,la densidad en reposo ρ0 y la gravedad. Comunmente la interactividad es introducidapermitiendo al usuario controlar la forma de los contenedores de colision y los obstaculos,afectando implıcitamente al fluido teniendo un impacto en el entorno del sistema. Ademas sepueden introducir y eliminar fuerzas externas en tiempo de ejecucion para modelar efectosambientales.

54

Page 62: METODOS SIN MALLAS. - UC

5.4. Integracion Numerica

Para simular el flujo del fluido, cada partıcula es movida en el tiempo usando un parametroglobal ∆t. La ecuacion 4.2 es empleada para calcular la aceleracion de las partıculas, y lasnuevas posiciones de las partıculas son obtenidas mediante la integracion numerica de laaceleracion. En esta seccion se muestran tres esquemas de integracion numerica brevemente.

5.4.0.4. Esquema implıcito de Euler

El esquema implıcito de Euler es realmente un esquema semi-implıcito, debido a quesolamente es la actualizacion de la posicion que es implıcita. Este esquema esta basadoen el esquema explıcito de Euler que es probablemente el esquema de integracion numericamas comun. En el esquema explıcito de Euler la posicion y velocidad son actualizadas enparalelo,

rt+∆t = rt + ∆tut, (5.60)

ut+∆t = ut + ∆tat. (5.61)

El esquema semi-implıcito de Euler ya no es independiente de la actualizacion de posicion yvelocidad. La actualizacion de velocidad es igual a la ecuacion de arriba, pero la actualizacionde posicion usa el resultado de la actualizacion de velocidad para predecir la nueva posicion,

rt+∆t = rt + ∆tut+∆t. (5.62)

5.4.0.5. Esquema de Verlet

El integrador de Verlet se origina del campo de dinamica molecular, y esta basado en elesquema implıcito de Euler. La velocidad actual puede ser estimada usando el operadordiferencial de primer orden progresivo en las posiciones dado por

ut ≈rt − rt−∆t

∆t. (5.63)

55

Page 63: METODOS SIN MALLAS. - UC

De esta forma, la nueva posicion puede ser determinada como

rt+∆t = 2rt − rt−∆t + ∆t2at. (5.64)

El esquema de integracion de Verlet es uno de los mas veloces y estables, pero el manejo decolisiones no es trivial debido a que incluye la modificacion de las posiciones en vez de lasvelocidades.

5.4.0.6. Esquema de Leap-Frog

El esquema de Leap-Frog lleva su nombre por el hecho de que las velocidades saltan sobrelas posiciones y viceversa. La estructura de la integracion es como la del Euler implıcito ylleva a

ut+ 12

∆t = ut− 12

∆t + ∆tat, (5.65)

rt+∆t = rt− 12

∆t + ∆tut+ 12

∆t (5.66)

la velocidad inicial es dada por un paso de Euler,

u− 12

∆t = u0 −1

2∆ta0. (5.67)

La velocidad en el tiempo t puede ser estimada usando una simple aproximacion de puntomedio,

ut =u− 1

2∆t + ut+ 1

2∆t

2. (5.68)

que se necesita cuando se calculan las fuerzas en el tiempo t.

56

Page 64: METODOS SIN MALLAS. - UC

5.5. Resultados

Para comprobar los resultados de la simulacion se utilizaron diferentes equipos, uncomputador portatil y dos equipos de escritorio, los cuales llamaremos HW1, HW2 y HW3.Tambien se programo la tarjeta grafica para hacer la comparacion del rendimiento encomputo de este dispositivo.

La programacion se realizo usando el lenguaje C y CUDA para programar en el dispositivografico (GPU). La nueva generacion de dispositivos graficos permite su programacion y por

El hardware utilizado para tomar las mediciones de los resultados es:

HW1: Un procesador Quad Core Intel Core i7 Q740 a 1.73 Ghz, una GPU nVidiaGeForce GT 425M y memoria RAM 4GB DDR3.

HW2: Un procesador Dual Core Intel Core 2 Duo a 2.0 Ghz, una GPU nVidia GeForce8800GTS y memoria RAM 2GB DDR2.

HW3: Procesador Intel Core i7 920 a 2.66 Ghz, una GPU nVidia GeForce 9500GT yuna memoria RAM de 4GB DDR3.

Para establecer las comparaciones entre el rendimiento de la aplicacion en la CPU y enla GPU, se establecieron 3 modelos: Modelo A, consiste en un cubo de 1024 partıculasuniformemente distribuidas y con una distancia entre partıculas igual a h, el cual coincidecon el radio de soporte compacto de los nucleo. Modelo B, consiste en un cubo de 2048partıculas uniformemente distribuidas. Modelo C, consiste en un cubo de 4096 partıculasuniformemente distribuidas.

Los modelos usados en la simulacion son los siguientes:

57

Page 65: METODOS SIN MALLAS. - UC

(a) Modelo A: 1024 Partıculas (b) Modelo B: 2048 Partıculas (c) Modelo C: 4096 Partıculas

Resultados obtenidos para HW1:

Cuadro 5.1: Resultados para HW1

HW1 WindowsModelos CPU GPUModelo A 35 fps 300 fpsModelo B 18 fps 570 fpsModelo C 7 fps 550 fps

Para el modelo A la CPU alcanzo un rendimiento de 35 fps mientras que en la GPU seobserva un rendimiento de 300 fps, para el modelo B los 18 fps alcanzados por el CPU sonampliamente superados por los 570 fps que obtiene la GPU, de igual manera, para el modeloC que solo alcanzo los 7 fps en la CPU, se muestra un rendimiento de 550 fps en la GPU.

Resultados obtenidos para HW2:

Cuadro 5.2: Resultados para HW2

HW2 Windows LinuxModelos CPU GPU CPU GPUModelo A 25 fps 270 fps 24 fps 270 fpsModelo B 14 fps 200 fps 14 fps 230 fpsModelo C 4 fps 200 fps 4 fps 200 fps

Resultados obtenidos para HW3: Al igual que en los resultados anteriores el rendimiento dela GPU se muestra muy superior al de la CPU.

58

Page 66: METODOS SIN MALLAS. - UC

Figura 5.2: Funcion de peso por defecto utilizada en la mayorıa de los calculos: Wdefault

59

Page 67: METODOS SIN MALLAS. - UC

Figura 5.3: Funcion de peso para el calculo de la presion: Wpresion

Figura 5.4: Funcion de peso para el calculo de la viscosidad, un solo cuadrante: Wviscosidad.

60

Page 68: METODOS SIN MALLAS. - UC

Figura 5.5: Imagen explicativa del funcionamiento de las funciones de peso sobre la Partıculai y sus vecinas ademas se puede observar el radio de la funcion de peso.

Figura 5.6: Simulacion en Progreso.

61

Page 69: METODOS SIN MALLAS. - UC

Cuadro 5.3: Resultados para HW3

HW3 WindowsModelos CPU GPUModelo A 29 fps 370 fpsModelo B 15 fps 260 fpsModelo C 8 fps 260 fps

Figura 5.7: Manejo de Colision.

62

Page 70: METODOS SIN MALLAS. - UC

Figura 5.8: Cubo de 65536 partıculas a 200 fps

63

Page 71: METODOS SIN MALLAS. - UC

Capıtulo 6

Conclusiones

Para la realizacion de este trabajo se programaron rutinas de los problemas a resolver y unainterfaz grafica que permitio interactuar con estos. Todo esto se hizo usando el lenguaje deprogramacion C principalmente, aunque varios modelos de ajuste de datos se programaronusando software propietario.

Tambien podemos decir que el calculo intensivo se optimizo usando la programacion y elparalelismo que incorporan la nueva generacion de tarjetas graficas. Y para esto usamos ellenguaje de programacion CUDA asociado al dispositivo grafico mas el lenguaje C. Estasnuevas tecnicas de programacion que permiten usar esta capacidad de computo al maximo esllamado computo de proposito general sobre la unidad de procesamiento grafico (GPGPU).

El uso de los metodos sin mallas es muy versatil y en este trabajo se muestra que podemosusarlo desde el ajuste de datos pasando por la simulacion de objetos plasticos hasta modelosmuy elasticos tales como la simulacion de fluidos.

Como metodo de aproximacion, los metodos sin mallas MLS y SPH son los que mejor seajustan a una nube de puntos. Y aunque requieren calculo intensivo podemos hacer usode tecnicas y herramientas de optimizacion para estos calculos tales como la programacionde la tarjeta grafica (CUDA). Se puede apreciar de los resultados que la ejecucion sobre eldispositivo grafico mejora sustancialmente de aquellos que se pueden obtener sobre la CPU.

En aplicaciones de los modelos deformables basados en propiedades fısicas, cuya teorıasurge de la teorıa de elasticidad lineal, el problema es realizar simulacion y animacion deobjetos 3D en tiempo real. Para alcanzar este objetivo es necesario que la aplicacion puedaejecutarse a una tasa elevada de cuadros por segundos para percibir dicho realismo. Poresta razon es sumamente importante incorporar al problema todas las tecnicas y estrategias

64

Page 72: METODOS SIN MALLAS. - UC

de optimizacion tales como metodos numericos empleados, generacion optima del softwareademas de potencia y capacidad de calculo del equipo (hardware)

En el caso de la simulacion de modelos deformables vemos que podemos simular grandesdeformaciones de un objeto y al no tener una malla fija sobre el objeto podemos obtenerresultados sorprendentes de animaciones con objetos virtuales que estan basados enpropiedades fısicas. Las simulaciones de modelos deformables basados en propiedades fısicasrequieren una gran demanda de calculo a medida que aumenta la cantidad de partıculasde los objeto 3D. Por lo tanto, si queremos realismo inmediato en la simulacion podemosalcanzar este realismo usando los dispositivos graficos y la implementacion de los metodossin mallas en estos dispositivos para lograr que se ejecuten en tiempo real.

De esta forma, al incluir el uso del dispositivo grafico como herramienta de aceleracion en laobtencion de los resultados para generar un menor tiempo de computo, este permite anadirun mayor nivel de detalle sobre la simulacion mediante el uso de mayores cantidades departıculas.

Esta memoria puede ser tomada como referencia para continuar profundizando en el estudiode los metodos sin mallas y su aplicacion a los modelos deformables.

65

Page 73: METODOS SIN MALLAS. - UC

Bibliografıa

[1] Alexa, M., Behr, J., Cohen, D., Fleishman, S., D., L., and Silva, C.Computing and rendering point set surfaces. IEEE Transactions on Visualization andComputer Graphics 9 1 (2003), 3–15.

[2] Alonso, B. Simulaciones numericas mediante metodos con y sin mallas. estimacionde error y aplicaciones. Master en Investigacion, Modelizacion y Analisis del Riesgo yMedio Ambiente (2003).

[3] Atluri, S., and Zhu, T. A new meshless local petrov-galerkin (mlpg) approach incomputational mechanics. Computational Mechanics, 22 (1998), 117– 127.

[4] Belystschko, T., Krongauz, Y., Organ, D., Fleming, M., and Krysl, P.Meshless methods: An overview and recent developments. Computer Methods in AppliedMechanics and Engineering 139 (1996), 3–47.

[5] Belystschko, T., Lu, Y., and Gu, L. Element-free galerkin methods. Int. J.Numer. Methods Engrg., 37 (1994), 229–256.

[6] Cantarella, J., Deturck, D., and Gluch, H. Vector calculus and the topologyof domains in 3-space. American Mathematical Monthly 109, 5 (2002), 409–442.

[7] Cook, R., Malkus, D., and Plesha, M. Finite element modeling for stress analysis.NY, 1995. Editorial John Wilie & Sons, Inc, Tercera Edicion.

[8] Fries, T., and Hermann-Georg, M. Classification and overview of meshfreemethods. Informatikbericht 2003-03, Institute of Scientific Computing, TechnicalUniversity Braunschweig, Brunswick, Germany, 2003.

[9] Gingold, and Monaghan, J. Smoothed particle hydrodynamics: theory andapplication to non-spherical stars. Mon. Not. R. Astron. Soc. 181 (1977), 375–389.

[10] Joseph, D., Funada, T., and Wang, J. Potential Flows of Viscous and ViscoelasticLiquids, 1st ed. No. 21 in Cambridge Aerospace Series. Cambridge University Press,Cambridge University., 2007.

66

Page 74: METODOS SIN MALLAS. - UC

[11] Lancaster, P., and Salkauskas, K. Surfaces generated by moving least squaresmethods. Mathematics of Computation. 37, n 155. 1981, pp. 141-158.

[12] Lancaster, P., and Salkauskas, K. Classification and overview of meshfreemethods. Mathematics of Computation 87 (1981), 41–158.

[13] Lennard-Jones, J. Cohesion. Proceedings of the Physical Society, Volume 43, Issue5, pp. 461-482. 1931.

[14] Levin, D. The approximation power of moving least-squares. Math. Comp.67, 224,15171531. (1998).

[15] Liu, G., and Liu, M. Smoothed particle hydrodynamics a meshfree particle method.World Scientific Publishing Co. Pte. Ltd.5 Toh Tuck Link, Singapore 596224. ISBN981-238-456-1 (2003).

[16] Lucy, L. B. A numerical approach to the testing of the fission hypothesis. AstronomicalJournal 82 (dec 1977), 1013–1024.

[17] Monaghan, J. Why particle methods work. Society for Industrial and AppliedMathematics. Volume 3 Issue 4. Pages 422-433. 1982.

[18] Monaghan, J. Smoothed particle hydrodynamics. Annual Review of Astronomicaland Astrophysics. Volume 30. Pages 543-574. 1992.

[19] Muller, M., Keiser, R., Nealen, A., Pauly, M., Gross, M., and Alexa, M.Point based animation of elastic, plastic and melting object. In Proceedings of 2004ACM SIGGRAPH Symposium on Computer Animation. (2004).

[20] Muller, M., Keiser, R., Nealen, A., Pauly, M., Gross, M., and Alexa, M.Point based animation of elastic, plastic and melting objects. Eurographics Association,Aire-la-Ville, Switzerland, Switzerland, 2004, pp. 141–151.

[21] Nayroles, B., Touzot, G., and Villon, P. Generalizing the finite element method:diffuse approximation and diffuse elements. Computational Mechanics, 10 (1992), 307–318.

[22] Nealen, A. An as-short-as-possible introduction to the least squares, weightedleast squares and moving least squares methods for scattered data approximation andinterpolation. Discrete Geometric Modeling Group ,TU Darmstadt. 2004 .

[23] Pauly, M., Keiser, R., Kobbelt, L., and M., G. Shape modeling with point-sampled geometry. In SIGGRAPH ’03: ACM SIGGRAPH 2003 Papers (New York,NY, USA, 2003), ACM Press, pp. 641–650.

[24] Shen, C., O’Brien, J. F., and Shewchuk, J. R. Interpolating and approximatingimplicit surfaces from polygon soup. In Proceedings of ACM SIGGRAPH 2004 (2004).

67

Page 75: METODOS SIN MALLAS. - UC

[25] Teukolsky, S., Press, W., Vetterling, W., and Flannery, B. Numericalrecipes in C: The art of scientific computing, segunda edicion ed. 1992. CambridgeUniversity Press. Usa, Nueva York, 1018 paginas.

68