You are currently browsing the tag archive for the ‘gaussiana’ tag.

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

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

Anuncios

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

La función kernel, 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: W(r-r',h) \geq 0 dentro del dominio.
  2. Soporte compacto: W(r-r',h) = 0 fuera del dominio.
  3. Normalizada: \int W(r-r',h) dr' = 1.
  4. Comportamiento de función delta: \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.

\nabla f(\vec{r}) = \sum_b \frac{m_b}{\rho_b} f_b W(\vec{r}-\vec{r'},h)

octubre 2019
L M X J V S D
« Oct    
 123456
78910111213
14151617181920
21222324252627
28293031  
Anuncios