ecuacion de_difusion_esquema_de_crank_nicholson

4
1/4 Ecuación de Difusión.- Esquema de Crank-Nicholson (basado en unos apuntes del Prof. Javier García de Jalón) Sea la ecuación diferencial de difusión: t u ) t , X ( p X u 2 2 = con las condiciones iniciales: u(x,0) = f(x) 0 x L y condiciones de contorno 0 t ) t ( h x t) u(L, (t) t) u(L, 0 t ) t ( g x t) u(0, (t) t) u(0, = β = α Para resolverlo se va a utilizar el método de los elementos finitos con funciones de interpolación lineales, teniendo en cuenta que los valores u k van a ser funciones del tiempo. Considérese el intervalo [0,L] dividido en M elementos cuyos extremos son [X 1 ,X 2 ], [X 2 ,X 3 ], [X 3 ,X 4 ], ……., [X k ,X k+1 ], …….., [X M ,X M+1 ], donde X 1 = 0 y X M+1 = L. Se va reducir este estudio al elemento genérico e k , definido en el subintervalo [X k ,X k+1 ] cuyos nodos son X k y X k+1 . Se aproxima la solución mediante las funciones de interpolación lineales: k k 1 h x 1 ) x ( N - = y donde h k = X k+1 - X k y las funciones están expresadas en coordenadas locales que se relacionan con las globales mediante la ecuación: X = x + X k Repárese que dX = dx, con lo que la ecuación diferencial expresada en coordenadas locales para el elemento e k tendría la forma: t u ) t , x X ( p x u k 2 2 = Con estas funciones de interpolación la función en este elemento se aproxima mediante la línea recta definida por: ) x ( N u ) x ( N u y k 2 1 k k 1 k = donde u k y u k+1 son los valores de las ordenadas en los nodos del elemento, y funciones del tiempo, en las abscisas, expresadas en coordenadas globales, X k y X k+1 , respectivamente. Aplicando el método de Galerkin, en el que i) Integrando por partes la integral correspondiente al primer miembro dx · dx ) x ( dN . x u ) x ( N · x u dx ) x ( N x u k h 0 k r k h 0 k r k h 0 k r 2 2 - - = Particularizando ahora para r = 1 y, sustituyendo a u por su valor, se obtiene dx · dx ) x ( dN . dx ) x ( dN u dx · dx ) x ( dN . dx ) x ( dN u · X ) t , X ( u k h 0 k 1 k 2 1 k k h 0 k 1 k 1 k k - - - Para r = 2 se obtiene, dx · dx ) x ( dN . dx ) x ( dN u dx · dx ) x ( dN . dx ) x ( dN u · X ) t , X ( u k h 0 k 21 k 2 1 k k h 0 k 2 k 1 k 1 k - - llamando dx dx ) x ( dN dx dN K k h 0 k 1 k 1 k 11 = k k 2 h x ) x ( N = 2 , 1 r dx x ( N · t u ) t , x X ( p dx ) x ( N x u k k h o k r k h 0 k r 2 2 = =

Transcript of ecuacion de_difusion_esquema_de_crank_nicholson

Page 1: ecuacion de_difusion_esquema_de_crank_nicholson

1/4

Ecuación de Difusión.- Esquema de Crank-Nicholson (basado en unos apuntes del Prof. Javier García de Jalón)

Sea la ecuación diferencial de difusión:

tu

)t,X(pX

u2

2

∂∂

⋅=∂

∂⋅

con las condiciones iniciales: u(x,0) = f(x) 0 ≤ x ≤ L y condiciones de contorno

0t)t(hx

t)u(L,(t) t)u(L,

0t)t(gx

t)u(0,(t) t)u(0,

≥∀=∂

∂⋅β+

≥∀=∂

∂⋅α+

Para resolverlo se va a utilizar el método de los elementos finitos con funciones de interpolación lineales, teniendo en cuenta que los valores uk van a ser funciones del tiempo. Considérese el intervalo [0,L] dividido en M elementos cuyos extremos son [X1,X2], [X2,X3], [X3,X4], ……., [Xk,Xk+1], …….., [XM,XM+1], donde X1 = 0 y XM+1 = L. Se va reducir este estudio al elemento genérico ek, definido en el subintervalo [Xk,Xk+1] cuyos nodos son Xk y Xk+1. Se aproxima la solución mediante las funciones de interpolación lineales:

k

k1 h

x1)x(N −=

y

donde hk = Xk+1 - Xk y las funciones están expresadas en coordenadas locales que se relacionan con las globales mediante la ecuación:

X = x + Xk Repárese que dX = dx, con lo que la ecuación diferencial expresada en coordenadas locales para el elemento ek tendría la forma:

tu

)t,xX(px

uk2

2

∂∂

⋅+=∂

Con estas funciones de interpolación la función en este elemento se aproxima mediante la línea recta definida por:

)x(Nu)x(Nuy k21k

k1k ⋅+⋅= +

donde uk y uk+1 son los valores de las ordenadas en los nodos del elemento, y funciones del tiempo, en las abscisas, expresadas en coordenadas globales, Xk y Xk+1, respectivamente. Aplicando el método de Galerkin, en el que

i) Integrando por partes la integral correspondiente al primer miembro

dx·dx

)x(dN.

xu)x(N·

xudx)x(N

x

u kh0

kr

kh

0

kr

kh0

kr2

2

∫∫ ∂∂−

∂∂−=⋅

Particularizando ahora para r = 1 y, sustituyendo a u por su valor, se obtiene

dx·dx

)x(dN.

dx

)x(dNudx·

dx

)x(dN.

dx

)x(dNu·

X)t,X(u kh

0

k1

k2

1kkh

0

k1

k1

kk ∫∫ ⋅−⋅−

∂∂

− +

Para r = 2 se obtiene,

dx·dx

)x(dN.

dx

)x(dNudx·

dx

)x(dN.

dx

)x(dNu·

X)t,X(u kh

0

k21

k2

1kkh

0

k2

k1

k1k ∫∫ ⋅−⋅−

∂∂

++

llamando

dxdx

)x(dN

dx

dNK kh

0

k1

k1k

11 ⋅⋅= ∫

k

k2 h

x)x(N =

2,1rdx)·x(N·tu

)t,xX(pdx)x(Nx

u kk ho

krk

h0

kr2

2=∀

∂∂

⋅+=⋅∂

∂∫∫

Page 2: ecuacion de_difusion_esquema_de_crank_nicholson

2/4

dxdx

)x(dN

dx

dNKK kh

0

k2

k1k

21k12 ⋅⋅== ∫

dxdx

)x(dN

dx

dNK kh

0

k2

k2k

22 ⋅⋅= ∫

se llega a las siguientes expresiones

1kk12k

k11

k uKuK·X

)t,X(u+⋅−⋅−

∂∂

1kk22k

k21

1k uKuK·X

)t,X(u+

+ ⋅−⋅−∂

ii) El segundo miembro

( ) =⋅+⋅⋅+=∂∂⋅+ ∫∫ + dx)·x(N·NuNu)t,xX(pdx)·x(N·

tu)t,xX(p kh

okr

k21k

k1kk

kho

krk &&

∫∫ ⋅⋅⋅+⋅+⋅⋅⋅+⋅= +kh

okr

k2k1k

kh

okr

k1kk dx)x(N)x(N)t,xX(pudx)x(N)x(N)t,xX(pu &&

llamando

∫ ⋅⋅⋅+= kh

okr

k1k

k1r dx)x(N)x(N)t,xX(pC

y

∫ ⋅⋅⋅+= kh

okr

k2k

k2r dx)x(N)x(N)t,xX(pC

La expresión anterior matricialmente adopta la forma:

=

∂∂

∂∂

+++ 1k

kk22

k21

k12

k11

1k

kk22

k21

k12

k11

1k

k

uu

CC

CC

uu

KK

KK

X)t,X(u

X)t,X(u

&&

Se suele llamar

= k

22k21

k12

k11k

el KK

KKK y

= k

22k21

k12

k11k

el CC

CCC

que, como se ha visto, son simétricas. Si se ha discretizado el dominio en M elementos, por cada uno de ellos se obtienen dos ecuaciones, como las vistas. Es obvio que las componentes de los vectores correspondientes a las condiciones de contorno de los elementos, por continuidad, son iguales en el nodo común a elementos adyacentes. Por tanto, se puede pasar de las 2xM ecuaciones a M+1, sin más que sumarlas dos a dos.

[ ] [ ]K K= ∑ ==

e

e

n

1

[ ]K 1 [ ]K 2

[ ]K 3

[ ]K 4

Ensamblaje de la matriz [K].

Este proceso, conocido también como “ensamblaje” de matrices, conduce a la siguiente ecuación matricial:

Page 3: ecuacion de_difusion_esquema_de_crank_nicholson

3/4

=

⋅⋅⋅⋅

+⋅

⋅⋅⋅⋅⋅⋅+

⋅⋅⋅+

⋅⋅⋅

∂∂

⋅⋅⋅

∂∂

+

+ 1M

2

1

M22

M12

M11

1M22

311

211

212

211

122

112

111

1M

1

u

uu

K

KKK0sim

KK

0KKK

00KK

X)t,X(u

0

0X

)t,X(u

⋅⋅⋅⋅

+⋅

⋅+

+

⋅⋅⋅

=

+

1M

2

1

M22

M12

M11

1M22

311

211

212

211

122

112

111

u

uu

C

CCCsim

CC

CCC

00CC

&

&&

De modo simbólico: {v} – K·{u} = C·{du/dt}

Ahora se va a ver cómo integrar numéricamente el sistema de ecuaciones diferenciales ordinarias, que sólo dependen del tiempo t. Integrar este sistema precisa disponer de una expresión que permita calcular las temperaturas en el instante t+∆t a partir de las temperaturas en el instante t. Aplicando esta expresión recursivamente a partir de las temperaturas en el instante inicial, se pueden calcular las temperaturas en cualquier instante de tiempo.:

t t+∆t/2 t+∆t

T(t+∆t)T(t)

Método de Crank-Nicholson.

Según se muestra en la figura, el método de Crank-Nicholson supone la ecuación aplicada en el instante (t+∆t/2), en la forma:

[ ]{ } [ ]{ } { }vuu 2/tt2/tt =+ ∆+∆+ &CK

En esta ecuación se introducen ahora las siguientes aproximaciones, basadas en los conceptos aproximados de valor medio y derivada:

{ } { } { }( )ttt2/tt uu21

u ∆+∆+ +=

{ } { } { }( )ttt2/tt uut

1u −∆

= ∆+∆+&

Sustituyendo estos valores en la ecuación y reordenando se obtiene:

[ ]{ } [ ]{ }t2/tttt u}v{u BA =+ ∆+∆+

donde,

[ ] [ ] [ ] [ ] [ ] [ ]KCBKCA21

t1

21

t1

2/tt2/tt −∆

=+∆

= ∆+∆+

Page 4: ecuacion de_difusion_esquema_de_crank_nicholson

4/4

ecuación de la que puede calcularse { }ttu ∆+ conocido { }tu . Mediante esta ecuación se puede avanzar paso a paso desde el instante inicial, hasta el instante de tiempo que se desee. En otras palabras, a partir de las condiciones iniciales { }0u se calcula { }1u ; a partir de { }1u se calcula { }2u ; y así sucesivamente hasta el último instante de tiempo previsto en el cálculo.