You are on page 1of 52

DINÁMICA DE FLUIDOS

COMPUTACIONAL

Discretización: Diferencias Finitas


Carlos Duque-Daza
Universidad Nacional de Colombia

V0
Construcción de las Dif. Finitas

✤ Los métodos más comunes para construir las


diferencias finitas son:

✤ Expansiones de Series de Taylor

✤ Mediante el uso de polinomios de orden -n

✤ Otros métodos son:

✤ Polinomios de Padé, Esquemas compactos, etc


Construcción de Diferencias Finitas

✤ Los métodos más comunes para


construir las diferencias finitas
son:

✤ Expansiones de Series de
Taylor

✤ Mediante el uso de
polinomios de orden -n

✤ En cualquier caso el concepto es


la discretización del dominio en
NODOS Equidistantes… o
Construcción de Diferencias Finitas

✤ Los métodos más comunes para


construir las diferencias finitas
son:

✤ Expansiones de Series de
Taylor

✤ Mediante el uso de
polinomios de orden -n

✤ En cualquier caso el concepto es


la discretización del dominio en
NODOS de separación variable
Construcción de Diferencias Finitas

✤ En diferencias finitas:

✤ La grilla utilizada (generalmente) es estructurada y ortogonal

✤ Por tanto líneas de malla pertenecientes a dos familias diferentes


SOLO se cruzan una sola vez

✤ Generalmente los nodos se identifican de manera unívoca con sub-


índices i, j, k (dependiendo del número de dimensiones)

✤ Cada NODO tiene asociado un valor desconocido de variable, y debe


suministrar una ecuación al sistema algebraico resultante
Diferencias Finitas - Serie de Taylor

✤ Considere la siguiente serie de Taylor


@f ( x)2 @ 2 f ( x)3 @ 3 f
f (x + x) = f (x) + ( x) + + + ···
@x x 2! @x2 x 3! @x 3
x
X1
( x)n @ n f
= f (x) + n
n=1
n! @x x

✤ ojo, a veces … ✓ ◆ ✓ ◆
2 2
@ (x xi ) @
(x) = (xi ) + (x xi ) + +
@x
i 2! i @x2
3
✓ 3 ◆ n
✓ n ◆
(x xi ) @ (x xi ) @
3
+ .... + n
+H
3! @x i n! @x i
Diferencias Finitas - Serie de Taylor

✤ En cualquier caso, la
interpretación de la serie es:

✤ Usar información de una


función en una posición
conocida para estimar el
valor de la función en una
posición más adelante o
atrás
Diferencias Finitas - Serie de Taylor
✤ Despejando la primera derivada…
@f f (x + x) f (x) ( x) @ 2 f ( x)2 @ 3 f
= + ···
@x x x 2! @x2 x 3! @x3 x

Representación en DF Error de truncamiento

✤ o agrupando términos…
@f f (x + x) f (x)
= + O( x)
@x x x

✤ usando notación indicial


@f fi+1 fi Diferencia finita
= + O( x)
@x i x hacia adelante
Diferencias Finitas - Serie de Taylor

✤ Usando una expansión hacia atrás


@f ( x)2 @ 2 f ( x)3 @ 3 f
f (x x) = f (x) ( x) + + ···
@x x 2! @x2 x 3! @x3 x
X1 n n
n ( x) @ f
= f (x) + ( 1) n
n=1
n! @x x

✤ y despejando para la primera derivada… (ustedes!)


@f f (x) f (x x) Diferencia finita hacia atrás
= + O( x)
@x x x
@f fi fi 1
= + O( x)
@x i x
Diferencias Finitas - Serie de Taylor
Diferencias Finitas - Serie de Taylor

✤ Obviamente, estas expresiones se pueden generalizar para cualquier


cantidad escalar, e incluso con tamaños de malla variables

✓ ◆ ✓ 2
◆ 2
✓ 3

@ i+1 i xi+1 xi @ (xi+1 xi ) @
= +H
@x i xi+1 xi 2 @x2 i 6 @x3 i

✓ ◆ ✓ 2
◆ 2
✓ 3

@ i i 1 xi xi 1 @ (xi xi 1) @
= + +H
@x i xi xi 1 2 @x2 i 6 @x3 i
Diferencias Finitas - Serie de Taylor

✤ Resultaría conveniente tener una “mejor” aproximación?

✤ Ejercicio: Sume las representaciones forward y backward


✓ ◆ 2 2
✓ 2

@ i+1 i 1 (xi+1 xi ) (xi xi 1 ) @
=
@x i xi+1 xi 1 2(xi+1 xi 1 ) @x2 i
3 3
✓ 3 ◆
(xi+1 xi ) + (xi xi 1 ) @
3
+H
6(xi+1 xi 1 ) @x i

✤ O si se tiene un tamaño de malla constante…


✓ ◆ ✓ ◆
@ i+1 i 1 ( x)2 @2
= +H
@x i 2 x 3! @x2 i
Diferencias Finitas - Serie de Taylor

✤ Este último esquema se denomina Diferencias Finitas Centradas

@ i+1 i 1 2
= + O(( x) )
@x i 2 x
✤ El error de truncamiento siempre podrá expresarse como:

m m+1 n
✏⌧ = ( x) ↵m+1 + ( x) ↵m+2 + ... + ( x) ↵n+1
✤ Por lo que el término líder (primer término en esta sumatoria), será el
que determine la “rata” a la cual se reduce el error de truncamiento

✤ En la ecuación anterior el error de truncamiento se reduce a una rata


m
proporcional a ( x)
Diferencias Finitas - Serie de Taylor
Diferencias Finitas - Serie de Taylor
Malla computacional 2D
Y si la variable también cambia en otra dimensión?
Malla computacional 2D
Y si la variable también cambia en otra dimensión?
Malla computacional 2D
Y si la variable también cambia en otra dimensión?
Diferencias Finitas - Serie de Taylor

Es posible incluso tener esquemas de alto orden…


Diferencias Finitas -
Ejercicio en clase 01
Considere las siguientes expansiones de Taylor:
@f ( x)2 @ 2 f ( x)3 @ 3 f
f (x + x) = f (x) + ( x) + 2
+ 3
+ ···
@x x 2! @x x 3! @x x

@f (2 x)2 @ 2 f (2 x)3 @ 3 f
f (x + 2 x) = f (x) + (2 x) + 2
+ 3
+ ···
@x x 2! @x x 3! @x x

1. Determine un esquema de diferencias finitas hacia adelante para la


segunda derivada. (Tip: Multiplique la primera ecuación por 2 y réstela de la segunda ecuación)
Diferencias Finitas -
Ejercicio en clase 02
Considere la siguiente ecuación
✓ ◆
@(⇢uj ) @ @
= +q
@xj @xj @xj
y asuma que: ⇢, uj , , q , son constantes.

1. Encuentre una formulación en diferencias finitas hacia adelante (1D).


2. Encuentre una formulación en diferencias finitas centradas (1D).
3. Formule un pseudo-algoritmo de solución de este problema.
Diferencias Finitas - Polinomios
✤ Es posible generar formulaciones de diferencias finitas a través de
polinomios interpolantes.

✤ Para la actual discusión, un polinomio de grado -n


n n 1
pn (x) = an (x x0 ) + an 1 (x x0 ) + · · · + a1 (x x0 ) + a0

✤ ó
n n 1
pn (x) = an x + an 1x + · · · + a1 x + a0

✤ Mediante el ajuste de puntos “conocidos”, es posible determinar los


coeficientes de tal polinomio
Diferencias Finitas - Polinomios
✤ Considere que la función se aproxima, localmente a un polinomio, por
ejemplo, un polinomio cuadrático:

f (x) = Ax2 + Bx + C
✤ Asuma que xi = 0

✤ Entonces…

fi = C
fi+1 = A( x)2 + B( x) + C
2
fi+2 = A(2 x) + B(2 x) + C
Diferencias Finitas - Polinomios
✤ De esta forma es posible ver que

fi+2 2fi+1 + fi
A=
2( x2 )

fi+2 + 4fi+1 3fi


B=
2( x)

C = fi
Diferencias Finitas - Polinomios
✤ De esta forma es posible ver que

@f fi+2 + 4fi+1 3fi


=
@x i 2( x)

✤ este esquema de es segundo orden. ¿Por qué?

✤ La segunda derivada se puede construir a partir de A

@2f fi+2 2fi+1 + fi


=
@x2 i ( x)2
Diferencias Finitas - Polinomios
✤ Y de esta forma:

✤ y en x=0
Diferencias Finitas - Polinomios
✤ Es posible también construir los esquemas para mallas NO-uniformes
2
f (x) = Ax + Bx + C

✤ Asuma que
xi = 0
xi+1 = xi + xi+1
xi+2 = xi + xi+1 + xi+2
= xi+1 + xi+2
✤ y definamos una relación de expansión: xi+2
re =
xi+1
Diferencias Finitas - Polinomios
✤ De esta forma, es posible obtener:

@f fi+2 (1 + re )2 fi+1 re (2 + re )fi


=
@x re (1 + re )( xi+1 )


@2f fi+2 (1 + re )fi+1 + re fi
2
=2
@x re (1 + re )( xi+1 )2

✤ Estos esquemas son de segundo y primer orden, respectivamente


Diferencias Finitas - Polinomios
✤ Igualmente es posible obtener estos esquemas de diferencias finitas a
través de polinomios de Lagrange…

(x x1 )(x x2 ) · · · (x xn )
f (x) = f (x0 )
(x0 x1 )(x0 x2 ) · · · (x0 xn )
(x x0 )(x x2 ) · · · (x xn )
+ f (x1 )
(x1 x0 )(x1 x2 ) · · · (x1 xn )
+ ···
(x x0 )(x x1 ) · · · (x xn 1 )
f (xn )
(xn x0 )(xn x1 ) · · · (xn xn )
✤ Pero este método es más complejo.
Diferencias Finitas -
Metodología alternativa
✤ En general, cualquier esquema de diferencias finitas se puede expresar
como: m
n
@ f X
n
= ! k f i+k
@x
k= l

✤ Considerando expansiones de Taylor alrededor de diferentes puntos,


es posible entonces obtener sistemas como (simple ejemplo)…
0 ! 1 ! 1 ! 1 x 00 ! 1( x)2 (3)
! 1 fi = fi 1+ fi + fi fi + ...
x x 2 6
0 !1 !1 !1 00 x !1 ( x)2 (3)
!1 fi = fi + fi+1 fi fi + . . .
x x 2 6
0 !2 !2 00 !2 (2 x)2 (3)
!2 fi = fi + fi+2 !2 xfi fi + . . .
2 x 2 x 3
Diferencias Finitas -
Metodología alternativa
✤ Usando esta configuración, por ejemplo, es posible obtener un
esquema de tercer orden de exactitud, usando cuatro nodos, si se
cumple que…
! 1 !1 2!2 ! 1 !1 4!2
! 1 + !1 + !2 = 1; = 0; =0
2 6

✤ Este es un sistema lineal cuya solución es:


1 1
! 1 = ; !1 = 1; !2 =
3 3
✤ Con lo que se obtiene

@f 2fi 1 3fi + 6fi+1 fi+2


= + O(( x)3 )
@x i 6 x
Esquemas “Upwind”
✤ En esquemas asimétricos (“bandeados”) la mayor contribución viene
de un solo lado del nodo

✤ En caso de convección, resulta natural pensar en usar diferencias


finitas según la dirección del “flujo”

✤ Estos métodos se denominan “upwind”, y…

✤ Son MUY inexactos

✤ Error de truncamiento tiene un efecto de difusión ficticio (adicional)

✤ Susceptibles de mejora con esquemas de alto orden pero…


Esquemas “Upwind”
✤ Un ejemplo de esquema “upwind” de primer orden, para una primera
derivada, es:
es decir, para flujo en
dirección:
8
 >
< ⇢u i
xi
i
xi
1
, si u>0
@(⇢u ) 1

@x i
>
: ⇢u i+1 i
xi+1 xi , si u<0

✤ Este esquema asume que densidad y velocidad son constantes, pero


considera la dirección del flujo
Esquemas “Compactos”
✤ Este tipo de esquemas tratan de mejorar la exactitud de la
formulación, SIN incluir una cantidad excesiva de puntos espaciales

✤ Su principal característica es: Alto nivel de exactitud (Alto orden), con


bajo número de puntos espaciales (molécula computacional compacta)

✤ Se pueden construir usando la metodología alternativa, pero en este


caso se buscan formulaciones del tipo:

✓ ◆ ✓ ◆ ✓ ◆
@f @f @f fi+2 fi 2 fi+1 fi 1
↵ + +↵ = +
@x i 1 @x i @x i+1 4 x 2 x
Esquemas “Compactos”
✤ Ahora la formulación depende de tres parámetros (↵, , ) .
Dependiendo del valor que tomes, se podrán tener esquemas de
diferente orden de exactitud
Esquemas “Compactos” - Ejercicio
✤ A manera de ejemplo, usando una formulación compacta Padé-4,
determine los valores de la primera derivada de la función:

x
f =2e sin(2 ⇡ x)
✤ Obtenga el nivel de error comparando contra la solución analítica
x x
g= 2e sin(2 ⇡ x) + 4⇡ e cos(2 ⇡ x)

✤ Determine la solución en el dominio 0  x  1.0 , y tenga presente


que la función NO es periódica

✤ ¿Que tipo de sistema lineal representa este esquema?


Esquemas “Compactos” - Ejercicio
✤ Función y derivada (usando 9 puntos), y Scilab
Mallas No-Uniformes

✤ El error de truncamiento depende tanto del término líder en la


expansion de Taylor, como del tamaño de malla

✤ Considere la siguiente formulación No-uniforme


✓ ◆ 2 2
✓ 2

@ i+1 i 1 (xi+1 xi ) (xi xi 1 ) @
=
@x i xi+1 xi 1 2(xi+1 xi 1 ) @x2 i
3 3
✓ 3 ◆
(xi+1 xi ) + (xi xi 1 ) @
+ H
6(xi+1 xi 1 ) @x3 i

✤ Esta formulación es formalmente de segundo orden.


Mallas No-Uniformes
✤ Usando una relación de expansión (o contracción) como
anteriormente se había hecho, se puede encontrar que el término líder
del esquema mostrado es:
✓ ◆
(1 re ) x i @2
✏⌧ ⇡
2 @x2 i
✤ En tanto que el término líder de diferencias finitas hacia atrás o
adelante es ✓ ◆
2
xi @
✏⌧ ⇡
2 @x2 i

✤ Es claro que solo en el límite re ! 1 , el esquema central es


realmente de segundo orden!!!
Mallas No-Uniformes
✤ Considere la malla 2h mostrada. Dos opciones de refinamiento que
pueden “garantizar” el segundo orden:

✤ Opción 1. Refinar de forma equidistante. Efectivamente se cumple


el límite excepto en las zonas no-refinadas

✤ Opción 2. Insertar puntos de manera que se mantenga una


relación de aspectos constantes.
Mallas No-Uniformes
✤ Considere la malla 2h mostrada. Dos opciones de refinamiento que
pueden “garantizar” el segundo orden:

✤ Opción 2. De esta forma, las relaciones de aspecto cumplen:


p
re,h = re,2h

(1 re )2h ( xi )2h (1 + re,h )2


r⌧ = =
(1 re )h ( xi )h re,h
Mallas No-Uniformes

(1 + re,h )2
r⌧ =
re,h
Mallas No-Uniformes

✤ ¿Donde realizarían ustedes el refinamiento de malla haciendo el


análisis anterior?

✤ R./Muy seguramente sería conveniente hacerlo en las regiones donde


los gradientes (derivadas espaciales) sean “significativas”.

✓ 2

(1 re ) x i @
✏⌧ ⇡
2 @x2 i

Término de primer Contribución por


orden en Mallas gradientes
No-Uniformes
Términos de segundas derivadas

✤ De forma estricta, se podrían construir como


2
✓ ◆
@ @ @
=
@x2 @x @x
✓ ◆ ✓ ◆
@ @
✓ 2

@ @x i+1 @x i 1
=
@x2 i xi+1 xi 1

✤ Pero este esquema requeriría 5 puntos!!!


Términos de segundas derivadas

✤ Una mejor estrategia es generar un esquema “más” compacto usando


una pseudo-malla con puntos (i-1/2, i+1/2) alrededor de i

✤ Así:
✓ ◆
@2 i+1 (xi xi 1 ) + i 1 (xi+1 xi ) i (xi+1 xi 1)
⇡ 1
@x2 i 2 (xi+1 xi 1 )(xi+1 xi )(xi xi 1)

✤ Que pasa si la malla es equidistante?


Términos de segundas derivadas
✓ 2

@ i+1 (xi xi 1 ) + i 1 (xi+1 xi ) i (xi+1 xi 1)
⇡ 1
@x2 i 2 (xi+1 xi 1 )(xi+1 xi )(xi xi 1)

✤ Igualmente, se pueden esquemas basados en interpolación

✤ El error de truncamiento de derivadas de segundo orden es el grado


del polinomio interpolante menos uno.

✤ Si la malla es uniforme se gana un orden adicional en la aproximación


(especialmente con polinomios de grado par)
Términos de segundas derivadas

✤ Ojo. A veces los términos difusivos requerirán consideraciones


adicionales:

⇣ ⌘ ⇣ ⌘
@ @
 ✓ ◆ @x @x
@ @ i+ 12 i 1
⇡ 1
2

@x @x i 2 (xi+1 xi 1)

i+1 i i i 1
i+ 12 xi+1 xi i 1
2 xi xi 1
⇡ 1
2 (xi+1 xi 1)
Número de onda equivalente

✤ Utilizando una formulación espectral es posible investigar el


comportamiento de esquemas de diferencias finitas

✤ Considere que la función es periódica (en algún intervalo) y que, por


tanto, se puede representar como

N/2 1
X
f (xi ) = ˆ
f (kq )e ikq xi

q= N/2

✤ Esta es la representación en series de Fourier de la función f(x)


Número de onda equivalente

✤ Utilizando tal serie a la definición de, por ejemplo, las diferencias


finitas centradas, se tiene

eikx eik(x+ x)
eik(x x)
sin(k x) ikx ikx
= =i e = ike↵ e
x 2 x x

✤ Observe que solo se estudia un sólo término de la serie, ¿Por qué?

✤ El número de onda equivalente (o número de onda efectivo), es el


término que remplaza, después de usar la formulación discreta, el
número de onda real.
Número de onda equivalente

✤ En los casos en que las funciones sean suaves (y por lo tanto


representadas principalmente por bajos números de onda), el número
de onda equivalente se puede expresar como

sin(k x) k 3 ( x)2
kef f = =k
x 6

✤ Que pueden concluir de esto?

✤ Es posible definir un número de onda máximo como


kmax = ⇡/ x
Número de onda equivalente
kmax = ⇡/ x
C.Duque-Daza

You might also like