Documentos de Académico
Documentos de Profesional
Documentos de Cultura
FACULTAD DE MATEMATICAS
“DESARROLLO DE UN ALGORITMO
PARA EVALUAR EL SUMINISTRO DE
AGUA SUBTERRANEA”
T E S I S
QUE PARA OBTENER EL TITULO DE
LICENCIADO EN MATEMATICAS
P R E S E N T A:
DIRECTORA DE TESIS:
2. Bases físicas 9
2.1. Mecánica de fluidos en medios porosos . . . . . . . . . . . . . 9
2.1.1. Fluidos . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.1.2. El fluido como un medio continuo . . . . . . . . . . . . 11
2.1.3. Propiedades físicas de los fluidos . . . . . . . . . . . . . 12
2.2. Agua subterránea . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.2.1. Clasificación de acuíferos . . . . . . . . . . . . . . . . . 17
2.2.2. Propiedades físicas de los acuíferos: . . . . . . . . . . . 17
2.3. Descripción del flujo en medios porosos . . . . . . . . . . . . . 20
2.3.1. Ley de Darcy . . . . . . . . . . . . . . . . . . . . . . . 20
1
6. Experimentos numéricos 42
6.1. Experimento 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
6.2. Experimento 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
6.3. Experimento 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
6.4. Experimento 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
7. Conclusiones 56
8. Apéndice 58
8.1. Programas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
8.1.1. Programa 1 . . . . . . . . . . . . . . . . . . . . . . . . 58
8.1.2. Programa 2 . . . . . . . . . . . . . . . . . . . . . . . . 63
8.1.3. Programa 3 . . . . . . . . . . . . . . . . . . . . . . . . 67
8.1.4. Programa 4 y 5 . . . . . . . . . . . . . . . . . . . . . . 72
9. Bibliografía 79
2
1. Introducción
1.1. Motivación
3
comportamiento de dicho sistema bajo ciertas condiciones y modificaciones.
En general podemos decir que, la simulación es la construcción y manipu-
lación de un modelo de un sistema o proceso. Esto es muy importante porque
se hacen experimentos sobre un modelo del sistema en lugar de hacerlos sobre
el mismo sistema real y esto permite estudiar problemas que de otra manera
sería impráctico o imposible estudiarlos.
Así, se emplea la simulación en un modelo apropiado, se observan y
evalúan los resultados y se dan las conclusiones.
Es claro, y no se puede dejar pasar, el observar que el desarrollo de las
computadoras y de la actual ciencia de la computación sobre la matemática
fundamental y sus aplicaciones, es muy profundo y tiene una gran importan-
cia.
En las aplicaciones de la matemática el papel de las computadoras ha
sido inmenso, sobre todo a través de su capacidad de resolución numérica de
problemas muy complicados cuya solución hubiera resultado irrealizable hace
unos pocos años. La participación de las computadoras puede convertirse en
una pieza clave para la realización de experimentos en muchas ciencias, desde
las matemáticas hasta las sociales, y lo mejor es que con un costo y esfuerzo
mínimos.
Por otro lado la Modelación Matemática se fundamenta en otras distintas
ramas de la matemática, como son: el álgebra lineal, el cálculo vectorial,
el análisis funcional, las ecuaciones diferenciales; y a su vez también con
las demás disciplinas de las cuales requiere conceptos y conocimientos para
establecer modelos en particular.
La teoría de las Ecuaciones Diferenciales Parciales (EDP’s) es una de las
áreas de las matemáticas mas extensas e importantes y es fundamental en
la modelación. Una EDP puede modelar distintos fenómenos físicos. Existen
varios métodos de solución para algunas de estas ecuaciones, pero es impor-
tante observar que no todas las soluciones analíticas son funciones suaves, y
también que las soluciones numéricas resuelven un gran número de problemas
4
para los cuales es muy difícil o imposible encontrar una solución analítica.
Para encontrar una solución numérica a una EDP existen varios méto-
dos, ejemplos de estos son, el Método de Elementos Finitos y el Método de
Diferencias Finitas. Para los fines de este trabajo, se usará el segundo y se
describirá en uno de los capítulos de esta tesis.
5
1.2. Simulación en hidrología
∂2U ∂2U
+ =0 (1)
∂x2 ∂y 2
que modela el flujo de agua a través de un acuífero, el cual dará las condi-
ciones iniciales y de frontera apropiadas que intervendrán en el planteamiento
y solución de la ecuación diferencial dada. La ecuación está definida en dos
dimensiones ya que consideramos que el espesor del acuífero es muy pequeño
en comparación con su longitud. Básicamente se tomarán en cuenta algunos
posibles casos que se desprenderán de distintas consideraciones, así tendremos
6
que las condiciones de frontera variarán para ser condiciones de Dirichlet o
de Neumann. La solución numérica de la ecuación se llevará a cabo por el
método de diferencias finitas en diferencias centrales. El algoritmo correspon-
diente se implementará en el ambiente de programación MATLAB. Se eligió
este ambiente ya que es una poderosa herramienta de cálculo, simulación y
modelado matemático, además de que la visualización gráfica es una de las
ventajas de éste ambiente respecto a otros.
7
1.3.1. Objetivos
8
2. Bases físicas
En éste capítulo se introducirán los conceptos básicos, que han sido desar-
rollados en otras disciplinas como la física y la geología, y que son necesarios
para entender el planteamiento y desarrollo del problema que se aborda en
ésta tesis.
Para tratar un problema de este tipo, tenemos que tomar en cuenta: por
el lado de la Geología, las condiciones en las cuales se encuentra el sistema
que estamos estudiando, en este caso, un acuífero; la Física, por su parte,
valiendose de las leyes que describen el comportamiento de los fluidos (ya sea
en reposo o en movimiento) nos da la manera general de abordar el estudio
del sistema.
9
Figura 1: Medio Poroso
Vp
φ= (2)
Vm
y es una cantidad adimensional, se expresa en porcentajes.
La porosidad es una medida de la abundancia de huecos de un medio
determinado.
2.1.1. Fluidos
10
Un fluido se define como una sustancia que sufre una deformación con-
tinua cuando se le aplica un esfuerzo cortante no importa que tan pequeño
sea éste.
11
fluidos se pueden considerar medios que poseen continuidad en todas sus
propiedades y ser estudiados bajo tal suposición.
Esta hipótesis significa que es posible asignar valores definidos de las
propiedades del sistema (o porción de materia) a un punto y que los valores de
esas propiedades son funciones continuas de la posición y del tiempo. Por eso,
la hipótesis del continuo es la base de la mecánica de fluidos. En lo sucesivo
será necesario suponer la existencia de un elemento pequeño o partícula del
fluido, la cual tendrá que ser suficientemente grande para contener muchas
moléculas.
F
P = (3)
A
12
rapidez con que ocurren las deformaciones es distinta según el tipo de fluido
del que se trate. El agua es un fluido de baja viscosidad.
m
ρ= (4)
V
sus unidades son: [M/L3 ]. Si la densidad varía de punto a punto entonces:
dm
ρ= (5)
dV
donde dm es un elemento infinitesimal de masa y dV un elemento infinitesi-
mal de volumen.
ρ = ρ(P )
También estamos considerando el hecho de que la cantidad de masa de agua
que fluye no cambia, es decir se mantiene constante, de la ecuación (4)
1
ρ= ∗m
V
y si además la consideramos unitaria
1
ρ=
V
Esta función está definida para todos y cada uno de los puntos de la región
de estudio, así:
13
1
=V
ρ
y
ρ−1 = V
si derivamos
dρ−1 dV
=
dP dP
Si la Compresibilidad se define como:
∆V
∆P
Entonces se pueden establecer la siguiente relación:
∆V dV
=
∆P dP
Cuando ρ es constante la compresibilidad
∆V
=0
∆P
Es decir el fluido es incompresible.
x
v=
t
14
ó
dx
v=
dt
W peso
γ= = (6)
V vol
sus unidades son: [F/L3 ]
Relacionamos ambas igualdades (3) y (5) recordando que:
W = mg. (7)
m = ρV (8)
y
γV
m= (9)
g
así:
γ = ρg (10)
15
Figura 2: Flujo de agua en acuíferos
V
Q=
t
16
2.2.1. Clasificación de acuíferos
Acuífero libre
Se llama así al que está conectado directamente con la superficie y por
abajo tiene una capa impermeable
Acuífero confinado:
Está acotado por arriba y por abajo mediante capas geológicas imper-
meables.
Acuitardo:
Se llama así cuando solo permite el flujo de agua verticalmente hacia
arriba.
kρg
K= (11)
µ
donde:
g = aceleración de la gravedad [ TL2 ]
17
k = permeabilidad del medio [L2 ]
ρ =densidad [ LM3 ]
M
µ =viscosidad [ LT ]
donde:
K = conductividad hidráulica
b = espesor del acuífero
Carga hidráulica (h): Es la fuerza por unidad de área ejercida por una
columna de líquido a una altura determinada.
18
El Coeficiente de Almacenamiento (S) en un acuífero confinado se
define como la variación en el volumen de agua por unidad de área. Es una
cantidad adimensional y se expresa:
∆V
S= (13)
A∆h
donde:
∆V = variación del volumen de agua
A = unidad horizontal de área
∆h = variación de la carga hidráulica
19
Figura 3: Ley de Darcy
20
KA(h1 − h2 ) KA∆h
Q= = (14)
L L
donde:
Q = volumen de agua que fluye por unidad de tiempo [L3 /t]
∆h =diferencia entre los niveles de agua [L]
L = longitud lineal del recorrido del flujo [L]
A = sección transversal de area [L2 ]
K = conductividad hidráulica [L/T ]
es decir:
La ley de Darcy nos dice que: "la velocidad del flujo es proporcional al
gradiente hidráulico"
es decir:
Q dh
U= = −K (15)
A dl
el signo negativo indica que el agua fluye en la dirección de la pérdida de
altura, a v le llamaremos velocidad de Darcy.
dh
U = Q = −K (16)
dl
21
3. Conceptos básicos de la teoría de las Ecua-
ciones Diferenciales Parciales
Una cantidad física puede ser expresada por una función de dos o más
variables. Si queremos saber el comportamiento de tal función sin conocerla,
(pero teniendo algunos otros datos), tenemos que plantearnos una ecuación
tal que ésta este en función de sus derivadas parciales. Existen distintos
fenómenos que pueden ser descritos por una misma ecuación.
En general:
22
La notación que usaremos será como sigue:
u = u(x, y)
lo cual, en este caso, designa a u como una función de las variables inde-
pendientes x e y. Las derivadas parciales las escribiremos como sigue:
∂u ∂u ∂2u ∂ 2u
ux = ; uy = ; uxx = 2 ; uyy = 2 ; ...
∂x ∂y ∂x ∂y
Así una EDP es una ecuación que tiene como incógnita a una función de
dos o más variables y que involucra a una o más de sus derivadas parciales.
23
Definición 2 Una EDP de segundo orden en las variables independientes x
e y en la función incógnita u(x, y) es una expresión de la forma:
u : Ω −→ R
u = u(x, y)
denota una función que cuando se sustituye en la EDP genera una iden-
tidad. Por supuesto cuando se busca la solución de una EDP es necesario
considerar condiciones auxiliares, es decir condiciones iniciales y de frontera,
apropiadas.
Además todos los problemas razonables, bien planteados, tienen una úni-
ca solución y ésta depende continuamente de las condiciones auxiliares. Un
problema bien planteado, puede considerarse uno para el que una pequeña
perturbación en las condiciones iniciales conduce a un pequeño cambio en la
solución.
24
La ecuación (18), usualmente se derivada en el ámbito de la Mecánica, y
establece una relación entre la incógnita u, sus derivadas parciales hasta un
cierto orden y el punto (x, y) espacio temporal ya que usualmente la variable
independiente y representa el tiempo.
La función u representa una cantidad física, como por ejemplo:
temperatura, concentración de un contaminante, intensidad de una señal
acústica, deformación de una estructura, etc.
hiperbólica si d = B 2 − AC > 0
parabólicas si d = B 2 − AC = 0
elíptica si d = B 2 − AC < 0
25
3.2. Condiciones iniciales y de frontera
Por otra parte además de la ecuación diferencial parcial por resolver, las
condiciones iniciales y de frontera juegan un papel importante en la solución
y en general en la modelación de cualquier fenómeno físico.
Un primer problema asociado con las EDP que se plantea es, si al conocer
el valor de la función en el instante t = 0,
∂u
β(x, y, t) − α(x, y, t)u ≡ f (x, y, t) (21)
∂n
Donde (x, y) ∈ ∂Ω; α,β son coeficientes conocidos; y f (x, y, t) es
especificada.
26
3.2.1. Condiciones de Dirichlet:
∂u
β(x, y, t) ≡ f (x, y, t)
∂n
27
3.3. Problemas bien planteados
Usualmente se tiene que hallar una solución que verifique ciertas condi-
ciones auxiliares. Un problema de este tipo puede tener una solución, ningu-
na solución o incluso infinitas soluciones. Esto nos induce necesariamente a
considerar el adecuado planteamiento de los problemas, para obtener resul-
tados que describan en buena medida la realidad y permitan además efectuar
predicciones. Si el modelo representa adecuadamente el fenómeno físico que
se estudia cabe esperar que posea solución única. Por otro lado, se puede es-
tar seguro de que la solución existe y es única pero esto no es suficiente para
afirmar que el problema esté bien planteado. Tenemos que esperar también,
que un pequeño cambio en las condiciones auxiliares no produzca grandes
cambios en la solución. Como en la mayor parte de las ocasiones, las EDP’s
tienen que resolverse numéricamente, lo que siempre implica aproximaciones
y errores de redondeo si no se cumple lo anterior el modelo sería de muy poca
utilidad.
Así, diremos que un problema para una cierta EDP está bien planteado
si se cumplen las tres condiciones siguientes:
Para las EDP de segundo orden han sido estudiadas y se conocen resul-
tados para saber qué tipos de problemas estan bien planteados.
28
4. Las ecuaciones de balance
p−1 (x, t) = X
29
Figura 4: Posición de la partícula en el paso del tiempo
30
alternativa podemos enfocarnos sobre qué está pasando en un punto específi-
co x en el espacio por el cual se mueven los puntos materiales. A este segundo
enfoque se le llama la forma Euleriana y a menudo se usa para describir el
movimiento de los cuerpos en los cuales las trayectorias de los puntos materi-
ales son difíciles de describir en la práctica. El flujo de un fluido es un ejemplo
de movimiento complicado en los cuales el enfoque Euleriano es apropiado.
Z
∂Ψ
+ ∇ · (Ψv) − ∇ · τ − g = 0 (23)
∂t
Ω(t)
donde
31
g la cantidad que se genera ó consume dentro del cuerpo en la unidad de
tiempo
τ es la cantidad que entra ó sale por la frontera del cuerpo en la unidad
de tiempo
v representa la velocidad
Ψ es una propiedad intensiva
∂Ψ
+ ∇ · (vΨ) = ∇.τ + g (24)
∂t
32
manera:
∂(φρ)
+ ∇ · (vφρ) = 0; ∀x ∈ Ω(t) (27)
∂t
33
∂(φρ)
+ ∇ · (ρU) = 0; ∀x ∈ Ω(t) (28)
∂t
∂(φρ) dρ ∂P dφ ∂P
=φ +ρ
∂t dP ∂t dP ∂t
dφ 1 dρ
hacemos α = dP
yβ= ρ dP
se tiene que:
∂(φρ) ∂P ∂P
= ρφβ + ρα
∂t ∂t ∂t
µ ¶
∂(φρ) ∂P ∂P
= ρ φβ +α
∂t ∂t ∂t
∂(φρ) ∂P
= ρ (α + φβ) (29)
∂t ∂t
∂(φρ) 1 ∂P
= Ss
∂t ĝ ∂t
∂P ∂h
= ρĝ
∂t ∂t
así:
∂(φρ) ∂h
= ρSs
∂t ∂t
34
sustituyendo en la ecuación 28
∂h
ρSs + ∇ · (ρU ) = 0
∂t
∂h
ρSs + U · ∇ρ + ρ∇ · U = 0
∂t
∂h ∇·ρ
Ss +U +∇·U =0
∂t ρ
∂h
Ss + U ∇Inρ + ∇ · U = 0
∂t
∂h
Ss +∇·U =0
∂t
∂h
Ss − ∇ · (K · ∇h) = 0
∂t
35
∂h
Ss = ∇ · (K∇h)
∂t
∂h
Ss = ∇ (K∇h)
∂t
∂h
Ss = K∇2 h
∂t
∂h ∂2h ∂2h
Ss = K( 2 + 2 )
∂t ∂x ∂y
∂2h ∂2h
+ =0
∂x2 ∂y 2
36
4.4. Descripción de la ecuación
hxx + hyy = ht
se llama ecuación de difusión y con esta se modelan distintos fenómenos
físicos relativos al flujo de alguna cantidad como puede ser: calor, concen-
tración de partículas, etc., también el caso que se trata en esta tésis, el flujo
de una masa de agua a través de un acuífero. Este estudio se hace en dos
dimensiones debido a que en los acuíferos el espesor es una cantidad muy
pequeña comparada con la longitud de éste, es decir,
espesor
→0
longitud
la razón entre espesor y longitud tiende a cero, es por eso que al hacer el
análisis los resultados son válidos bajo tal suposición.
Es importante resaltar que la masa de agua se mantiene constante.
En la ecuación anterior, la expresión
ht 6= 0
nos indica que el sistema está cambiando al pasar el tiempo. A este estado
le llamamos transitorio.
Cuando
ht = 0
decimos que el flujo está ocurriendo en el estado estacionario y nuestra
ecuación se reduce a la ecuación de Laplace, (30). Esta es una ecuación
diferencial parcial elíptica de segundo orden, ha sido una de las más
estudiadas dentro de la teoría de las ecuaciones diferenciales parciales.
Ahora que ya tenemos planteada la ecuación que nos describe el sistema
que estamos investigando pasaremos a describir el método numérico de solu-
ción de dicha ecuación.
37
5. Descripción del algoritmo computacional
No siempre existen soluciones analíticas de una EDP es por eso que ac-
tualmente gran parte de los problemas reales son resueltos numéricamente
con la ayuda de las computadoras. El método de diferencias finitas es uno
de los métodos numéricos que más se han utilizado para solucionar numéri-
camente una EDP. Es por eso que en ésta tesis se adopta para encontrar la
solución numérica de la ecuación que estamos tratando con las condiciones
iniciales establecidas.
38
Figura 5: Discretización del dominio para el método de diferencias finitas
Para obtener matrices con ciertas características que simplifiquen los cál-
culos, por ejemplo matrices formadas por diagonales, es importante la forma
en que se numeran los nodos interiores en la malla, se comienza de izquierda
a derecha y de abajo hacia arriba. En cambio los nodos en la frontera pueden
ser numerados en cualquier orden, vease figura (5).
39
Figura 6: Esquema de diferencias centrales
diferencias centrales, estas consisten en tomar el nodo del centro y los que
estan a su alrededor sin tomar las esquinas como se ve en la figura (6)
donde
h es la función incógnita y O(∆x), O(∆y) es el orden de error.
Sustituyendo en la ecuación:
hxx + hyy = 0
40
hi+1,j − 2hi,j + hi−1.j + hi,j+1 − 2hi,j + hi,j−1
=0
h2
−4 1 0 0 1 0 ... ...
1 −4 1 0 0 1 ... ...
0 1 −4 0 0 0 ... ...
0 0 0 −4 1 0 ...
1 0 0 1 −4 1 ...
... ... ... ...
... ... ... 1 −4 1
... ... ... 1 0 0 1 −4
La matriz anterior tiene una de las posibles formas que se pueden obtener
al hacer el análisis con diferencias finitas.
Al resolver este sistema, obtenemos los valores de la función h en cada
uno de los nodos donde no es conocido el valor y así obtenemos la solución
numérica.
41
6. Experimentos numéricos
6.1. Experimento 1
42
Figura 7: Dominio de estudio
hxx + hyy = 0
43
Figura 8: Gráfica que muestra los valores de h para el experimento 1
44
la solución analítica que satisface la ecuación que gobierna el fenómeno con
las condiciones de frontera establecidas. Dicha solución es:
10
h(x, y) = ( )∗y
YL
45
6.2. Experimento 2
hxx + hyy = 0
La función h tiene los siguientes valores a lo largo de la frontera
h(x, 0) = 0; h(x, Y L) = 6; 0 ≤ x ≤ XL
6
h(0, y) = ( ) ∗ y; 0≤y ≤YL
YL
éstas son nuestras condiciones de frontera, análogas a las del caso anterior
pero ahora la condición para uno de los lados laterales en el dominio que se
ve en la figura 7 queda determinada por:
∂h
= 0; 0 ≤ y ≤ YL
∂x
es decir, en ese lado ubicamos una condición de frontera de Neumann. Esta
condición de frontera se traduce fisicamente, en que no hay flujo de agua
en dirección de la recta normal al lado donde se especifica la condición de
Neumann.
46
Figura 9: Gráfica del experimento 2
6
h(x, y) = ( )∗y
YL
lo cual se puede verificar facilmente, sustituyendo en la ecuación de Laplace y
observando que cumple con las condiciones de frontera. Con éste experimento
también se verifica que el algoritmo elaborado funciona para los casos donde
tenemos condiciones de Neumann. El motivo de resolver los casos mostrados
en los experimentos 1 y 2, es el de verificar que el algoritmo elaborado para
tratar condiciones de Dirichlet y de Neumann nos sirve para tratar otros
problemas semejantes que no tienen solución analítica.
47
Figura 10: Gráfica del experimento 3
6.3. Experimento 3
Aquí tenemos el acuífero del caso anterior, con tres lados de la frontera
con condiciones de Dirichlet y en el otro tenemos condición de Neumann pero
ahora las condiciones iniciales se modifican de la siguiente manera:
h(x, 0) = 0; 0 ≤ x ≤ XL
Π
h(x, Y L) = sen(x ∗ ); 0 ≤ x ≤ XL
XL
Π
h(0, y) = sen(y ∗ ) 0 ≤y ≤YL
YL
nuestra frontera está limitada en dos de sus lados por otro tipo de funciones,
es decir, la distribución de h en la zona del acuífero es diferente del caso
anterior. Y nuestra condición de Neumann es como antes:
∂h
= 0; 0 ≤ y ≤ YL
∂x
48
y lo que nos dice que no hay flujo de agua en dirección de la recta normal al
lado donde especificamos la condicion de Neumann.
49
6.4. Experimento 4
∂2h ∂2h
Podemos ver que: ∂2x
=0 y ∂2y
=0
∂h ∂h
si integramos tenemos: ∂x
=A y ∂y
=B
asi llegamos a h = Ax + By + C
50
Figura 11: Dominio estudiado en el experimento 3
d
U = −K∇h y v =
t
la relación entre estas dos es :
U = Φv
donde
Φ = porosidad
v = partículas que circulan a través de los poros del medio.
V
Sabemos también que el gasto Q = t
= Av
51
Figura 12: Pozo
AU · n = (2πrb)(−K∇h) · n
∂h
AU · n = (2πrb)(K )=Q
∂r
donde n es el vector normal a la superficie.
∂h Q Q 1
= = (32)
∂r 2πKbr 2πKb r
Q
h=− In(r) + u(r) (33)
2πKb
52
y esta es la solución a la ecuación diferencial que describe el compor-
tamiento del sistema descrito. Donde u(r) es una función que depende de la
posición y que satisface la ecuación de Laplace.
Ahora, nuestra condición inicial es la siguiente
así:
Q Q
− In(r) + u(r) = 0 =⇒ In(r) = u(r);
2πKb 2πKb
para (x, y) ∈ ∂Ω,
q
donde r = (x − 12 )2 − (y − 12 )2 para el caso de la isla.
53
Figura 13: Gráfica de la función -log(r)
54
Q
Figura 15: Gráfica de h = − 2πKb In(r) + u(r)
Así que sumando las dos funciones obtenemos los valores y consecuente-
mente la gráfica correspondiente a la solución. Y eso lo vemos en la gráfica de
la figura (15), que nos describe el comportamiento del flujo de agua en una
región cuadrada de un acuífero, con condiciones iniciales dadas y un pozo de
extracción o inyección en el centro de esta región.
55
7. Conclusiones
A lo largo de la elaboración de esta tesis, fué importante entender
conceptos físicos y de Geohidrología ya que la modelación matemáti-
ca interviene en la solución de muchos problemas de estas áreas. La
utilidad de los modelos matemáticos es indiscutible ya que estos nos
permiten resolver problemas reales complicados sin necesidad de hacer
experimentos físicos en el sistema estudiado que resultarían muy cos-
tosos.
56
de derivar y programar y porque se ha demostrado que es estable para
las ecuaciones que gobiernan los problemas que se estudiaron en este
trabajo.
57
8. Apéndice
8.1. Programas
8.1.1. Programa 1
∂2u ∂2u
+ =0
∂x2 ∂y 2
que modela el flujo en el estado estacionario con condiciones de frontera
tipo Dirichlet.
En este caso se dan valores fijos para XL, YL, Ex, Ey, cf.
Pero en el programa se pueden cambiar estos valores sin necesidad de
modificarlo.
DATOS INICIALES
%longitud total en el eje x
XL=300;
%longitud total en el eje y
YL=300;
%número de elementos en x
Ex=35;
%número de elementos en y
Ey=35;
%tamaño de cada elemento en x
58
dx=XL/Ex;
%tamaño de cada elemento en y
dy=YL/Ey;
%pasos en el intervalo x
lx=0:dx:XL;
%pasos en el intervalo y
ly=0:dy:YL;
%número de nodos en el eje x
xs=Ex+1;
%número de nodos en el eje y
ys=Ey+1;
%número de nodos interiores en el eje x
xn=Ex-1;
%número de nodos interiores en el eje y
yn=Ey-1;
%número de nodos de la malla
N=xs*ys;
%número de incógnitas
Z=xn*yn;
%condición de frontera constante
cf=10;
%Define los lados laterales del dominio
f=(cf/YL)*ly;
––––––––––––––––––––––––––––––
%Esta es la función f sin el primero y el último elemento
s=f(2:Ey);
%Aqui al vector a lo ponemos en forma de columna
a=s(:);
59
ELABORACIÓN DE LA MATRIZ QUE REPRESENTA AL SISTEMA
DE ECUACIONES
%Este es el vector que va en la diagonal inferior de la matriz
for i=1:Z;
v(i)=1;
for i=xn:xn:Z-xn;
v(i)=0;
end
end
Y=v(:);
%Este es el vector que va en la diagonal superior
b=[0;Y(1:Z-1)];
%Este es el vector de la diagonal principal
v1=-4*ones(Z,1);
%Las 5 diagonales de la matriz
c1=spdiags([Y v1 b], -1:1, Z,Z);
%Matriz identidad
d=eye(Z);
%Esta es la matriz
MATRIZ=c1*d+diag(ones(Z-xn,1),xn)+diag(ones(Z-xn,1),-xn);
––––––––––––––––––––––––––––––
CON LAS CONDICIONES INICIALES CONOCEMOS LOS DATOS EN
LA FRONTERA
%vector con la condición de frontera constante
V0=[zeros(1,Z-xn) cf*ones(1,xn)];
V1=-V0(:);
%vector con condiciones laterales
for i=1:Z;
v(i)=0;
60
for i=xn:xn:Z;
v(i)=1;
end
end
V2=v(:);
for i=1:yn;
V2(xn*i)=-a(i);
end
V2;
%vector con condiciones laterales
for i=1:Z;
v(i)=0;
for i=1:xn:Z;
v(i)=1;
end
end
V3=-v(:);
for i=1:yn;
V3(1+(i-1)*xn)=-a(i);
end
V3;
%este es el vector conocido (de las cond. de front.)
V=V1+V2+V3;
–––––––––––––––––––––––-
%calculamos la inversa de la matriz
I=inv(MATRIZ);
%La multiplicamos por la izquierda del vector para obtener el vector
solución
U=I*V;
––––––––––––––––––––––—
61
%Esta es la matriz que se grafica
U1=transp(U);
j=1:Ex+1;
%condiciones de ceros
q(1,j)=[f(1) zeros(1,Ex-1) f(1)];
for i=2:Ey;
%estas son las aproximaciones
q(i,j)=[f(i) U1(1+xn*(i-2):xn*(i-1)) f(i)];
end
%condición constante
q(Ey+1,j)=[f(Ey+1) 10*ones(1,Ex-1) f(Ey+1)];
%gráfica
mesh(lx,ly,q)
62
8.1.2. Programa 2
∂2u ∂2u
+ =0
∂x2 ∂y 2
que modela el flujo en el estado estacionario con condiciones de frontera
tipo Dirichlet en tres lados del dominio y con condiciones de Newman en
el cuarto. En el programa se pueden cambiar estos valores sin necesidad de
modificarlo.
DATOS INICIALES
%longitud total en el eje x
XL=4;
%longitud total en el eje y
YL=3;
%número de elementos en x
Ex=35;
%número de elementos en y
Ey=35;
%tamaño de cada elemento en x
dx=XL/Ex;
%tamaño de cada elemento en y
dy=YL/Ey;
%número de pasos en el eje x
lx=0:dx:XL;
%número de pasos en el eje y
ly=0:dy:YL;
%número de nodos en x
xs=Ex+1;
%número de nodos en y
63
ys=Ey+1;
%número de nodos interiores en x
xn=Ex-1;
%número de nodos interiores en y
yn=Ey-1;
%número de nodos de la malla
N=xs*ys;
%número de nodos incógnitas
Z=(xn*yn)+yn;
%––––––––––––––––––––––––-
% b es un vector que forma el vector diagonal inferior en la matriz
for i=1:Ex;
v(i)=1;
end
v;
z1=-v(1:(Z/yn)-2);
b=[z1 -1 0];
for i=1:Z;
v(i)=-1;
for i=Ex+1:Ex:Z;
v(i)=0;
end
end
v;
% b es un vector que forma el vector diagonal inferior en la matriz
Y1=v(:); x
%vector formado por la repetición del vector b, diagonal inferior
f=vec(b,yn);
f1=f(:);
64
%vector diagonal principal (de cuatros)
v1=4*ones(Z,1);
for i=1:Z;
v11=v1;
for i=Ex:Ex:Z;
v11(i)=3;
end
end
v11;
D=v11;
c1=spdiags([f1 D Y1], -1:1, Z,Z);
%matriz identidad
d=eye(Z);
%matriz principal
MATRIZ=c1*d+diag(-ones(Z-Ex,1),xn+1)+diag(-ones(Z-Ex,1),-xn-1);
%nodos en el eje y
y=0:dy:YL;
%función condición inicial a un lado de la gráfica
uy=(6/YL)*y;
Uy=uy(:);
cf=0; %esta es la condición de frontera (la parte baja)
hacer una función para cuando el valor es diferente de cero %
for i=1:Z;
v(i)=0;
for i=1:Ex;
v(i)=cf;
end
end
v;
%vector condiciones iniciales (lado mas bajo)
65
V1=v(:);
for i=xn:-1:0;
Va(Z-i)=6;
end
Va;
%vector condiciones iniciales (el lado mas alto)
V2=Va(:);
for i=1:Z;
v(i)=0;
for i=1:yn;
v(1+(i-1)*Ex)=uy(i+1);
end
end
v;
%Vector lado izquierdo de la grafica
V3=v(:);
V=V1+V2+V3;
%calculamos la inversa de la matriz
I=inv(MATRIZ);
B=I*V;
b1=transp(B);
j=1:Ex+1;
q(1,j)=zeros(1,Ex+1);
for i=2:Ey;
q(i,j)=[Uy(i) b1(1+Ex*(i-2):Ex*(i-1))];
end
q(Ey+1,j)=6*(ones(1,Ex+1));
%Gráfica
mesh(lx,ly,q)
66
8.1.3. Programa 3
∂2u ∂2u
+ =0
∂x2 ∂y 2
que modela el flujo en el estado estacionario con condiciones de frontera
tipo Dirichlet en tres lados del dominio y con condiciones de Newman en
el cuarto. Y con dos condiciones de frontera representadas por una función
senoidal.
En el programa se pueden cambiar estos valores sin necesidad de
modificarlo.
DATOS INICIALES
%longitud total en el eje x
XL=4;
%longitud total en el eje y
YL=3;
%número de elementos en x
Ex=35;
%número de elementos en y
Ey=35;
%tamaño de cada elemento en x
dx=XL/Ex;
%tamaño de cada elemento en y
dy=YL/Ey;
%número de pasos en x
lx=0:dx:XL;
%número de pasos en y
ly=0:dy:YL;
67
%número de nodos en x
xs=Ex+1;
%número de nodos en y
ys=Ey+1;
%número de nodos interiores en x
xn=Ex-1;
%número de nodos interiores en y
yn=Ey-1;
%número de nodos de la malla
N=xs*ys;
%número de nodos incógnitas
Z=(xn*yn)+yn;
%condición de frontera %
cf=0;
––––––––––––––––––––––––- %
for i=1:Ex;
v(i)=1;
end
v;
z1=-v(1:(Z/yn)-2);
% b es un vector que forma el vector diagonal inferior en la matriz
b=[z1 -1 0];
for i=1:Z;
v(i)=-1;
for i=Ex+1:Ex:Z;
v(i)=0;
end
end
v;
68
% Y1 es el vector diagonal superior
Y1=v(:);
%vector formado por la repetición del vector b, diagonal inferior
f=vec(b,yn);
f1=f(:);
%vector diagonal principal (de cuatros)
v1=4*ones(Z,1);
for i=1:Z;
v11=v1;
for i=Ex:Ex:Z;
v11(i)=3;
end
end
v11;
D=v11;
c1=spdiags([f1 D Y1], -1:1, Z,Z);
%matriz identidad
d=eye(Z);
%matriz principal
MATRIZ=c1*d+diag(-ones(Z-Ex,1),xn+1)+diag(-ones(Z-Ex,1),-xn-1);
%nodos en el eje x
x=0:dx:XL;
%en la gráfica este el lado más alto
ux=sin(x*pi/(XL));
Ux=ux(:);
%nodos en el eje y
y=0:dy:YL;
uy=sin(y*pi/(YL));
%función condición inicial a un lado de la gráfica
69
Uy=uy(:);
%––––––––––––––––––––––––-
%esta es la condición de frontera (la parte baja)
cf=0;
for i=1:Z;
v(i)=0;
for i=1:Ex;
v(i)=cf;
end
end
v;
%vector condiciones iniciales (lado más bajo)
V1=v(:);
for i=xn:-1:0;
Va(Z-i)=ux(i+1);
end
Va;
%vector condiciones iniciales (el lado más alto)
V2=Va(:);
for i=1:Z;
v(i)=0;
for i=1:yn;
v(1+(i-1)*Ex)=uy(i+1);
end
end
v;
%Vector lado izquierdo de la gráfica
V3=v(:);
%Vector de las condiciones de frontera
V=V1+V2+V3;
70
%calculamos la inversa de la matriz
I=inv(MATRIZ);
B=I*V;
b1=transp(B);
–––––––––––––––––– %
%Matriz que se grafica
j=1:Ex+1;
q(1,j)=zeros(1,Ex+1);
for i=2:Ey;
q(i,j)=[Uy(i) b1(1+Ex*(i-2):Ex*(i-1))];
end
q(Ey+1,j)=[ux(xs:-1:1)];
%Gráfica
mesh(lx,ly,q)
71
8.1.4. Programa 4 y 5
DATOS INICIALES
%longitud total en el eje x
XL=1;
%longitud total en el eje y
YL=1;
%número de elementos en x
Ex=55;
%número de elementos en y
Ey=55;
%tamaño de cada elemento en x
dx=XL/Ex;
%tamaño de cada elemento en y
dy=YL/Ey;
%pasos en el intervalo x
lx=0:dx:XL;
%pasos en el intervalo y
ly=0:dy:YL;
%número de nodos en el eje x
xs=Ex+1;
%número de nodos en el eje y
ys=Ey+1;
%número de nodos interiores en el eje x
xn=Ex-1;
%número de nodos interiores en el eje y
yn=Ey-1;
72
%número de nodos de la malla
N=xs*ys;
%número de incógnitas
Z=xn*yn;
for i=1:Ex+1;
g1(i)=ly(i);
g2(i)=lx(i);
end
g1;
g2;
for i=1:Ex+1;
for j=1:Ex+1;
f(i,j)= log (sqrt ( ((g1(i)-1/2)*transp(g1(i)-1/2)) +
((g2(j)-1/2)*transp(g2(j)-1/2)) ) );
end
end
f;
mesh(lx,ly,f)
%axis([-1 1 -1 1 -0 5])
%–––––––––––––––
%FUNCION U
%longitud total en el eje x
XL=1;
%longitud total en el eje y
YL=1;
%número de elementos en x
Ex=15;
%número de elementos en y
Ey=15;
73
%tamaño de cada elemento en x
dx=XL/Ex;
%tamaño de cada elemento en y
dy=YL/Ey;
%pasos en el intervalo x
lx=0:dx:XL;
%pasos en el intervalo y
ly=0:dy:YL;
%número de nodos en el eje x
xs=Ex+1;
%número de nodos en el eje y
ys=Ey+1;
%número de nodos interiores en el eje x
xn=Ex-1;
%número de nodos interiores en el eje y
yn=Ey-1;
%número de nodos de la malla
N=xs*ys;
%número de incógnitas
Z=xn*yn;
Q=5; %
K=1; %
b=5; %
C=-Q/(2*pi*K*b); %
x1.*x1; %
C=1;
a=0:dx:1;
x1=a-1/2;
x2=x1(:);
74
for i=1:xs;
x(i)=x1(i)*x2(i);
end
%vector (x-1/2)^2
x=x(:);
b=0:dy:1;
y1=b-1/2;
y2=y1(:);
for i=1:ys;
y(i)=y1(i)*y2(i);
end
%vector (y-1/2)^2
y=y(:);
for i=1:xs;
s1(i)=-log(sqrt(x(i)+(1/4)));
end
fs1=s1(:);
for i=1:ys;
s3(i)=-log(sqrt((1/4)+y(i)));
end
fs3=s3(:);
––––––––––––––––––––––
%MATRIZ PRINCIPAL
%Este es el vector de la diagonal principal
v1=-4*ones(Z,1);
v(i)=1;
for i=xn:xn:Z-xn;
v(i)=0;
end
end
75
%Este es el vector que va en la diagonal inferior
Y=v(:);
%Este es el vector que va en la diagonal superior
b=[0;Y(1:Z-1)];
%Este es el vector de la diagonal principal
v1=-4*ones(Z,1);
%Las 5 diagonales de la matriz
c1=spdiags([Y v1 b], -1:1, Z,Z);
%Matriz identidadd=eye(Z);
MATRIZ=c1*d+diag(ones(Z-xn,1),xn)+diag(ones(Z-xn,1),-xn);
%––––––––––––––––––––––—
for i=1:Z;
s11(i)=0;
for i=1:xn;
s11(i)=s1(i+1);
end
end
s11;
V1=-s11(:);
%–––––––––––––––––––––––-
for i=1:Z;
s22(i)=1;
for i=1:Z-xn;
s22(i)=0;
end
end
V2=s22(:);
for i=1:xn;
V2(Z-xn+i)=-s1(i+1);
end
76
V2;
%––––––––––––––––––—
for i=1:Z;
s33(i)=0;
for i=1:xn:Z;
s33(i)=1;
end
end
V3=s33(:);
for i=1:xn;
V3(1+(i-1)*xn)=-s3(i+1);
end
V3;
%––––––-
for i=1:Z;
s44(i)=0;
for i=xn:xn:Z;
s44(i)=1;
end
end
V4=s44(:);
for i=1:Ex-1;
V4(xn*i)=-s1(i+1);
end
V4;
%vector con las condiciones de frontera
V=V1+V2+V3+V4;
%–––––––––––––––––––––––-
%calculamos la inversa de la matriz
I=inv(MATRIZ);
77
%La multiplicamos por la izquierda del vector
%Vector solución
U=I*V1;
––––––––––––––––––––––— %
U1=transp(U);
j=1:Ex+1;
q(1,j)=[s1(1:Ex+1)];
for i=2:Ey;
q(i,j)=[fs1(i) U1(1+xn*(i-2):xn*(i-1)) fs1(i)];
end
%condicion constante
q(Ey+1,j)=[s1(1:Ex+1)];
q;
%gráfica
mesh(lx,ly,q);
LA FUNCION VEC
%Funcion vec
function resultado=vec(a,n)
i=1;
resultado=[];
while(i<=n)
resultado=[resultado a];
i=i+1;
end
78
9. Bibliografía
Referencias
[1] Myron B. Allen, Ismael Herrera, George F. Pinder; Numerical Modeling
in Science and Engineering; John Wiley & Sons.
[9] Batu Vedat; Aquifer Hydraulics; .John Wiley & Sons, 1998.
79
[13] John H. Mathews, Kurtis D. Fink; Metodos numéricos con MATLAB,
3a. edición; Prentice hall, 2000.
80