gaussiana

You are currently browsing articles tagged gaussiana.

Existen diferentes posibilidades a la hora de definir una función kernel:

  1. Gaussiana [Gingold & Monaghan, 1977]:$latex W(r,h) = alpha_D cdot e^{-q^2}$ con $latex 0 leq q leq 2$ donde $latex q=frac{r}{h}$, $latex r$ es la distancia entre dos partículas determinadas y $latex alpha_D$, el factor dimensional, que es $latex frac{1}{pi h^2}$ en dos dimensiones y $latex frac{1}{pi^{frac{3}{2}} h^3}$ en tres.
  2. Cuadrática [Gingold & Monaghan, 1977]: $latex alpha_D (frac{3}{16} q^2 – frac{3}{4} q + frac{3}{4})$ con $latex 0 leq q leq 2$ y donde $latex alpha_D$ es $latex frac{2}{pi h^2}$ en 2D y $latex frac{5}{4 pi h^3}$ en 3D.
  3. B-spline cúbico [Monaghan & Lattancio, 1985]: $latex W(r,h) = alpha_D begin{cases} 1 – frac{3}{2} q^2 + frac{3}{4} q^3 ,& mbox{if } 0 leq q leq 1 \ frac{1}{4}(2-q)^3 ,& mbox{if } 1 < q leq 2 \ 0 ,& mbox{if } q > 2end{cases}$ con $latex alpha_D = frac{10}{7 pi h^2}$ en dos dimensiones y $latex frac{1}{pi h^3}$ en 3 dimensiones.
  4. Quíntica: $latex W(r,h) = alpha_D (1-frac{q}{2}^4)(2q + 1)$ con $latex 0 leq q leq 2$ y $latex alpha_D = frac{7}{4 pi h^2}$ en 2D y $latex frac{7}{8 pi h^3}$ en 3D.

Pensando en posibles implementaciones, parece lógico utilizar una classe abstracta Kernel de la que heredaran las anteriores implementando sus métodos, de manera que, las posibles clases que llamen a la misma puedan hacerlo siempre de la misma manera independientement de cual estemos utilizando.

Tags: , , , ,

En el artíclo [Gingold & Monaghan, 1977] se introducen

La función kernel, $latex W(vec{r}-vec{r’},h)$, es una función que permite interpolar los valores de cualquier propiedad del fluido en función del valor de las partículas del entorno. Su papel es similar al de los diferentes esquemas de diferencias en el ámbito de las Diferencias Finitas o las funciones de forma en los Elementos Finitos.

Existen diferentes funciones kernel: Gaussiana, cuadrática, spline cúbico, quíntica, etc.

La función kernel debe cumplir:

  1. Positiva: $latex W(r-r’,h) geq 0$ dentro del dominio.
  2. Soporte compacto: $latex W(r-r’,h) = 0$ fuera del dominio.
  3. Normalizada: $latex int W(r-r’,h) dr’ = 1$.
  4. Comportamiento de función delta: $latex lim_{h rightarrow 0} W(r-r’,h) dr’ = delta(r-r’)$.
  5. Monotona decreciente.

Para derivar, tomamos la derivada analítica de la suma aproximada. De esta manera, como la derivada de la función kernel es conocida, no necesitamos diferencias finitas y el conjunto de ecuaciones PDE pasa a ser ODE.

$latex nabla f(vec{r}) = sum_b frac{m_b}{rho_b} f_b W(vec{r}-vec{r’},h)$

Tags: , , , ,