Saltar al contenido

Error de truncamiento local de Crank-Nicolson para PDE $u_t+au_x = 0$

Te damos la bienvenida a nuestro espacio, en este sitio vas a encontrar la respuesta que buscas.

Solución:

Escribamos el método de Crank-Nicolson para la ecuación de advección lineal $u_t + au_x = 0$ promediando la integración temporal de Euler hacia adelante y hacia atrás y usando diferencias espaciales centradas:
$$ fracu_j^n+1 – u_j^nDelta t = -fraca2left(fracu_j+1^n – u_j-1^n2Delta x + fracu_j+1^n+1 – u_j-1^n+12Delta x right) , qquad u_j^n simeq u(jDelta x, nDelta t) . etiqueta1 $$
Así, el esquema dice
$ u_j^n+1 = u_j^n – frac14 pbig(u_j+1^n – u_j-1^n + u_j+ 1^n+1 – u_j-1^n+1grande) = 0 $dónde $p = aDelta t/Delta x$ denota el número de Courant. Para realizar el análisis de error de truncamiento local, necesitamos expandir la función suave $u$ como una serie de Taylor en dos variables en la vecindad de $(x,t)$. Si lo hace en el tercer orden, tenemos
beginalineado v &= u + h u_x + k u_t + tfrac12 left( h^2 u_xx + 2 hk u_xt + k^2 u_tt derecha) \ &+ tfrac16 left( h^3 u_xxx + 3 h^2 k u_xxt + 3 hk^2 u_xtt + k^3 u_ttt right) + O(h^4 + k^4) endalineado
con la notación $v(x,t) = u(x+h, t+k)$ por los pasos $h in lbrace0, pmDelta xrbrace$ y $k in lbrace0,Delta trbrace$. Asumiendo que $u$ cumple la PDE $u_t = -au_x$reemplazamos las derivadas temporales por derivadas espaciales de la siguiente manera
$$ v = u + (h-ak)u_x + tfrac12 (h-ak)^2 u_xx + tfrac16 (h-ak)^3 u_ xxx + O(h^4 + k^4) . $$
Para un valor fijo del número de Courant, obtenemos las siguientes expresiones para ser sustituidas en el esquema numérico $(1)$:
beginalineado v_j^n+1 &= u – pDelta x,u_x + tfrac12(pDelta x)^2 u_xx – tfrac 16 (pDelta x)^3 u_xxx + O(Delta x^4) \ v_j^n &= u \ v_jpm 1^n &= u pm Delta x,u_x + tfrac12 Delta x^2 u_xx pm tfrac16 Delta x^3 u_xxx + O( Delta x^4) \ v_jpm 1^n+1 &= u + (pm 1 -p)Delta x, u_x + tfrac12 ( pm 1 -p)^2Delta x^2 u_xx + tfrac16 ( pm 1 -p)^3Delta x^3 u_xxx + O(Delta x^4) endalineado
Los operadores de diferencias finitas divididos se convierten en
beginalineado fracv_j^n+1 – v_j^nDelta t &= -a u_x + tfrac12pau_xx Delta x – tfrac16 p^2 au_xxx Delta x^2 + O(Delta x^3) , , \ fracv_j+1^n – v_j-1^n2Delta x &= u_x + tfrac16 u_xxx Delta x^2 + O(Delta x^3) , , \ fracv_j+1^n+1 – v_j-1^n+12Delta x &= u_x – pu_xxDelta x + tfrac 16 (1 + 3p^2) u_xxx Delta x^2 + O(Delta x^3) endalineado
lo que lleva al error de truncamiento local
$a u_xxx big(tfrac16 + tfrac112 p^2big) Delta x^2 + O(Delta x^3)$.

Nos puedes añadir valor a nuestro contenido contribuyendo tu experiencia en las aclaraciones.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *