Diferencias finitas para la segunda derivada con puntos separados por distancias que siguen una serie geometrica respecto del punto central (II)

Seguimos con el post anterior. Vamos a utilizar ahora siete puntos separados de la siguiente manera: $latex x_0$ $latex x_1:=x_0+n^2 h$ $latex x_2:=x_0 + (n^2+n) h$ $latex x_3:=x_0 + (n^2+n+1) h$ $latex x_4:=x_0 + (n^2+n+2) h$ $latex x_5:=x_0 + (n^2+2n+2) h$ $latex x_6:=x_0 + (2n^2+2n+2) h$

Diferencias finitas para la segunda derivada con puntos separados por distancias que siguen una serie geometrica respecto del punto central (I)

El caso mas sencillo es cuando tenemos cinco puntos: $latex (x_0,y_0), (x_1,y_1), (x_2,y_2), (x_3,y_3), (x_4,y_4)$, de manera que: $latex x_1-x_0 = 2(x_2-x_1) = 2(x_3-x_2) = x_4-x_3$. Tal y como escribimos en el anterior post, el polinomio general para cinco puntos quedaria: $latex L(x) = y_0 l_0(x) + y_1 l_1(x) + y_2 l_2(x) + y_3 l_3(x) …

Interpolación de Lagrange y formula en diferencias finitas para la aproximación de las derivadas

Dados $latex n+1$ puntos: $latex (x_0,y_0), ldots, (x_n,y_n)$, definimos el polinomio interpolador de Lagrange: $latex L(x) := Sigma_{i=0}^n y_i l_i(x)$ donde: $latex l_i(x) := Pi_{0 leq j leq n,j neq i} frac{x-x_j}{x_i-x_j}$. Con esto, tenemos: $latex frac{d^n}{dx^n}L(x) = Sigma_{i=0}^n y_i frac{d^n}{dx^n}l_i(x)$ Supongamos que tenemos $latex n=2$: $latex (x_0,y_0), (x_1,y_1)$. En este caso, tenemos: $latex L(x) …

Reescritura del Laplaciano nd en diferencias finitas mediante el 1d con fuentes de las (n-1)d restantes

Laplaciano en cartesianas: $latex Delta u = Sigma_i frac{partial^2}{partial x_i^2}u$ 1d $latex frac{u_{i-1}-2u_i+u_{i+1}}{h^2} = f_i $ $latex frac{1}{h^2}u_{i-1} + frac{1}{h^2}u_{i+1} +frac{-2}{h^2}u_i= f_i$ 2d $latex frac{u_{i-1,j}-2u_{i,j}+u_{i+1,j}}{h_x^2} + frac{u_{i,j-1}-2u_{i,j}+u_{i,j+1}}{h_y^2} = f_{i,j}$ $latex i$ fijo: $latex frac{1}{h_y^2}u_{i,j-1} + frac{1}{h_y^2}u_{i,j+1} +(frac{-2}{h_x^2}+frac{-2}{h_y^2})u_{i,j}= g_{i,j}(:=f_{i,j} + frac{-1}{h_x^2}u_{i-1,j} + frac{-1}{h_x^2}u_{i+1,j})$ $latex j$ fijo: $latex frac{1}{h_x^2}u_{i-1,j} + frac{1}{h_x^2}u_{i+1,j} +(frac{-2}{h_x^2}+frac{-2}{h_y^2})u_{i,j}= g_{i,j}(:=f_{i,j} + frac{-1}{h_y^2}u_{i,j-1} + frac{-1}{h_y^2}u_{i,j+1})$ …

Block Cyclic Reduction

Ya hace casi dos meses que no escribo nada en el blog :-(. Es hora de añadir algo. El Block Cyclic Reduction es un algoritmo rápido para resolver sistemas de ecuaciones de manera directa cuya matriz tiene estructura tridiagonal por bloques. Supongamos que tenemos una discretización de un volumen mediante cinco puntos para las $latex …