Beruflich Dokumente
Kultur Dokumente
2
u ( x ) D 2 (106)
t x x
1 ( x , t ) 2 ( x , t )
D a f S (107)
v t x 2
T 2T 2T
c k (
Q( x , y )) (108)
t x 2 y 2
5.2 Solucin de una EDP Parablica
( x , t ) 2 ( x , t )
k S( x , t ) (109)
t x 2
Los nodos (i, n+1) de la grilla espacio-temporal estn rodeados por tres nodos,
de los cuales pueden obtener informacin. Utilizando el mtodo de Euler
hacia adelante, podemos aproximar los trminos de la ecuacin (109)
mediante una diferencia finita adelantada para la derivada temporal, y una
diferencia finita central para la derivada espacial:
58 Modelamiento Numrico en Ingeniera Hidrulica
in1 in (111)
t t
2 in1 2in in1
(112)
x 2 x 2
donde, k ( t
) . Este esquema es explcito ya que, los valores de in 1 se
x 2
x 2
t 0.5 (115)
k
Nn1 Nn
(116)
t t
2
n n
x x
N N 1 / 2 (117)
2
x x 2
2 2 Nn Nn1
( ) (118)
x 2 x x
Nn1 Nn 2 Nn 2 Nn1
k( ) SN
t x 2
t
Finalmente, con k ( ) , el algoritmo ser:
x 2
h 1 q
0
t x
h (109)
q kh
x
donde:
h = profundidad de la capa de agua subterrnea (m)
60 Modelamiento Numrico en Ingeniera Hidrulica
Las ecuaciones (109) pueden ser combinadas para obtener una sola EDP del tipo
parablico:
k h
h
h 1 x
t x
h k 2 h h h
h 2
t x x x
2
h k h h
t x 2
(110)
Para un tramo de 600 m en un acufero libre con los siguientes datos y condiciones:
Solucin:
h k h 2 h
Se tiene la ecuacin gobernante (110), la cual es una EDP parablica:
t x 2
k ht
donde, . La condicin de estabilidad establece que 0.5 ; por lo tanto,
x 2
el tamao del paso de tiempo, t , debe ser:
Podemos aproximar los trminos de la ecuacin (110) mediante una diferencia finita
adelantada para la derivada temporal, y una diferencia finita atrasada para la
derivada espacial:
h h Nn1 h Nn
2h xh n xh n
N N 1 / 2
t t x 2 x 2
2h 2 h Nn h Nn 1
( )
x 2 x x
h Nn1 h Nn k h 2 h Nn 2 h Nn 1
( )
t x 2
k ht
Finalmente, con , el algoritmo ser:
x 2
program aguasubte
use msflib
use yzolib
real h(0:30,0:6),t(0:30)
real dx,dt,k,mu,hprom,gamma,amp
integer i,n,in,nn
h(n,0) = h0 + onda1(t(n))
! Calcula h en los nodos internos
do i=1,in-1
h(n,i) = gamma*h(n-1,i-1) + (1-2*gamma)*h(n-1,i) + gamma*h(n-1,i+1)
enddo
! Condicion de frontera derecha
h(n,in) = 2*gamma*h(n-1,in-1) + (1-2*gamma)*h(n-1,in)
enddo
! Imprime la solucin
write (2,20)
do n=0,nn
write (2,22) n,t(n),( h(n,i),i=0,in )
enddo
20 format (/10x,'Solucin de Aguas Subterrneas:'//10x,' n t(hrs) i=0 &
i=1 i=2 i=3 i=4 i=5 i=6'/)
22 format (10x,i2,3x,f4.0,7f8.3)
close (2)
contains
!
! Funcin que calcula la condicion de frontera trapezoidal
!
function onda1(t)
do i=1,nf
axy(i,1) = t(i)
64 Modelamiento Numrico en Ingeniera Hidrulica
enddo
do k=1,nc
do i=1,nf
axy(i,k+1) = h(i,k)
enddo
enddo
! 12345678901234567890123456789012345678901234567890
title1 = ' CARGA HIDRAULICA H'
title2 = ' Aguas Subterraneas'
title3 = 'gamma= '
write (t_gamma,'(f5.2)') gamma
t_ejex = 'Tiempo t(horas)'
t_ejey = 'Altura h(m)'
call grafica ( xy, nf, nc+1, 11, title1, title2, title3, t_ejex, t_ejey,xmin, xmax, xincr,
ymin, ymax, yincr, t_gamma )
do while (.true.)
call sleep(20)
enddo
!
close (11)
return
end subroutine hidro
!
end program
Ecuaciones Diferenciales Parciales Parablicas 65
7
x=0 m
x=50 m
x=100 m
6
x=200 m
Altura h (m)
x=300 m
3
0 12 24 36 48 60 72 84 96 108 120 132 144
Tiempo (horas)