Sunteți pe pagina 1din 77

Universidad del Pas Vasco - Euskal Herriko Unibertsitatea

Facultad de Ciencia y Tecnologa


Mster de Modelizacin Matemtica,
Estadstica y Computacin
Proyecto de Fin de Mster
Aspectos matemticos y numricos
de algunas leyes de conservacin
escalares: aplicacin al control
Defendido por
Alejandro Pozo Pazos
Supervisado por
Enrique Zuazua Iriondo
Agradecimientos
Me gustara dar las gracias a todos aquellos que de uno u otro modo han contribuido
a que pudiera completar esta memoria. Ante todo, quiero darle las gracias al Basque Center
for Applied Mathematics, por darme la oportunidad y las facilidades para realizar el mster
y, en particular, este trabajo. En concreto, quiero agradecer a Enrique Zuazua, mi director,
sus ideas y sugerencias para poder llevar esta empresa a buen puerto, y, en concreto, por
insistirme en ir a Benasque, donde encontr el ambiente de trabajo adecuado para poder
redactar gran parte de este documento.
Quiero darles las gracias a Mehmet Ersoy y a Chiara Simeoni por sus explicaciones
y su disponibilidad para resolver mis dudas. Tampoco quiero olvidarme de mis compaeros
de BCAM, de mis amigos y de mi familia, quienes han hecho ms llevadero el tiempo que
he tardado en completar este trabajo.
Por ltimo, y no por ello menos importante, quiero darle las gracias a mi novia,
Guruzne, por estar siempre ah y hacerme ver la luz al nal del tnel que, por momentos,
era incapaz de ver.
Este trabajo ha recibido el apoyo de la beca Ecuaciones en Derivadas Parciales:
Anlisis, Control y Numrico, con referencia PI2010-4, y la beca de formacin de inves-
tigadores de referencia BFI-2010-339, nanciadas ambas por el Gobierno Vasco / Eusko
Jaurlaritza.
Aspectos matemticos y numricos de algunas leyes de conservacin
escalares: aplicacin al control
Resumen: En este trabajo recogemos los resultados bsicos sobre leyes de conservacin
escalares y varios mtodos numricos para simularlas computacionalmente. Basndonos
en dichas herramientas, analizamos dos ejemplos de leyes de conservacin. Por un lado,
estudiamos un problema de control sobre la condicin inicial para la ecuacin de Burgers
con el objetivo de alcanzar una determinada solucin en un instante prejado. Por otro,
mediante el mtodo de caractersticas-Galerkin, tratamos de simular algunos de los re-
sultados analticos existentes referentes al comportamiento asinttico de una ecuacin de
conveccin-difusin no lineal.
Palabras clave: ley de conservacin escalar, mtodo de caractersticas-Galerkin, ecuacin
de Burgers, ecuacin de conveccin-difusin, comportamiento asinttico.
Zenbait kontserbazio-legetako aspektu matematikoak eta numerikoak:
kontrolerako aplikazioa
Laburpena: Lan honetan kontserbazio-legeei buruzko funtsezko emaitzak eta hauek
konputazionalki simulatzeko zenbait metodo numeriko biltzen ditugu. Tresna horiekin oi-
narrituta, kontserbazio-lege bi aztertzen ditugu. Alde batetik, Burgersen ekuaziorako ha-
sierako baldintzaren kontrol problema bat ikertzen dugu, aurretik emandako une batean
soluzio nko bat lortzeko helburuarekin. Bestetik, karakteristikak-Galerkin metodoa erabi-
liz, konbekzio-difusio ekuazio ez lineal baten jokabide asintotikoari buruz dauden zenbait
emaitza analitiko simulatzen saiatzen gara.
Hitz giltzarriak: kontserbazio-lege, karakteristikak-Galerkin metodo, Burgersen ekua-
zio, konbekzio-difusio ekuazio, jokabide asintotiko.
Mathematical and numerical aspects of some scalar conservation laws:
application to control
Abstract: In this work we collect the basic results on scalar conservation laws and some
numerical methods for their computational simulation. Based on those tools, we analyze
two examples of conservation laws. On the one hand, we study a control problem on the
initial condition for the Burgers equation, with the aim of achieving a xed solution in a
given time. On the other, by using the characteristics-Galerkin method, we try to simulate
some of the existing analytical results referring to the asymptotic behavior of a non linear
convection-diusion equation.
Keywords: scalar conservation law, characteristics-Galerkin method, Burgers equation,
convection-diusion equation, asymptotic behavior.
ndice general
1. Introduccin 1
2. Leyes de conservacin escalares: herramientas analticas 5
2.1. Soluciones clsicas y curvas caractersticas . . . . . . . . . . . . . . . . . . . 5
2.2. Soluciones dbiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.3. Soluciones entrpicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.4. El problema de Riemann . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3. Mtodos numricos 13
3.1. Esquemas conservativos: volmenes nitos . . . . . . . . . . . . . . . . . . . 13
3.1.1. Motivacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.1.2. Conservatividad discreta . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.1.3. Ejemplos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3.2. Elementos nitos: caractersticas-Galerkin . . . . . . . . . . . . . . . . . . . 19
3.2.1. FEM: conceptos bsicos . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.2.2. Mtodo Galerkin de las caractersticas . . . . . . . . . . . . . . . . . 23
4. Aplicaciones: Problema de control unidimensional 25
4.1. Ecuacin de Burgers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
4.2. Problema de control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
4.2.1. Planteamiento formal . . . . . . . . . . . . . . . . . . . . . . . . . . 28
4.2.2. Optimizacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
4.2.3. Aproximaciones numricas . . . . . . . . . . . . . . . . . . . . . . . . 30
4.2.4. Implementacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
4.3. Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
vi ndice general
5. Aplicaciones: Comportamiento asinttico multi-dimensional 39
5.1. Ley de conservacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
5.2. Resultados analticos existentes . . . . . . . . . . . . . . . . . . . . . . . . . 41
5.3. Aproximaciones numricas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.4. Implementacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
5.5. Experimentos y resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
6. Conclusiones y trabajo futuro 55
A. Cdigo empleado 57
A.1. Cdigo de Matlab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
A.2. Cdigo de FreeFem++ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Bibliografa 67
Captulo 1
Introduccin
Las leyes de conservacin forman una parte muy importante de las ecuaciones en
derivadas parciales, puesto que, como su nombre indica, incluyen aquellas ecuaciones que
modelan las leyes de conservacin que surgen en la fsica. Se trata de leyes fsicas segn
las cuales ciertas magnitudes de un sistema se mantienen constantes a lo largo del tiempo.
Ejemplos clsicos son la ley de conservacin de la energa, la del momento, la de la masa...
aunque cada vez surgen ms modelos en otras muchas reas (cf. [9]).
Matemticamente, una ley de conservacin puede expresarse de la siguiente forma.
Sea u : [0, ) R
M
una funcin vectorial, que expresa el estado de un sistema en
cada punto x = (x
1
, ..., x
N
) R
N
y en cada instante t [0, ). Entonces, el sistema
de ecuaciones es:
u
t
+ div(Q(u)) = 0 (1.1)
donde Q : R
N
R
N
es el ujo de u y la divergencia es en las variables espaciales.
Todava es posible formularlo de una manera ms general, permitiendo fuerzas externas en
el sistema (con trminos no nulos en la parte derecha de la ecuacin), pero por simplicidad
nosotros supondremos que estamos en un sistema aislado.
Una representacin equivalente, que expresa el equilibrio de la magnitud representa-
da por u y da sentido al nombre de este tipo de ecuaciones, consiste en integrar (1.1) sobre
cualquier parte y aplicar el teorema de la divergencia, de manera que obtenemos:
d
dt
_

u(x, t) dx +
_

Q(u(x, t)) n(x) dx = 0 (1.2)


siendo n el vector normal a , unitario y que apunta hacia el exterior. Esta igualdad puede
interpretarse como el balance entre la cantidad indicada por u y el ujo de este en la
frontera del dominio (de haber considerado fuerzas externas, tambin apareceran en ese
balance).
En cualquier caso, el objetivo de este trabajo es el de simular computacionalmente
diversas situaciones que puedan darse con una clase concreta de leyes de conservacin: las
escalares. As pues, en las anteriores deniciones tomaremos M = 1, de manera que el
sistema contar con una nica ecuacin.
Muchas situaciones reales dan lugar a la conservacin de ciertas cantidades, por
lo que se pueden modelar con este tipo de ecuaciones. Sin embargo, tras la apariencia
simple de (1.1) se esconden varias dicultades (sobre todo, como veremos en este trabajo,
2 Captulo 1. Introduccin
la aparicin de ondas de choque) con las que habr que tener un especial cuidado a la hora
de desarrollar mtodos numricos para aproximar las soluciones. Por ello, es importante
conocer al mximo la estructura matemticas de estas, a n de poder usarlas para mejorar
las simulaciones.
Dada la relevancia del tema, hay numerosos resultados sobre la resolucin analtica
de las leyes de conservacin; no solo sobre la existencia o unicidad de soluciones, sino tam-
bin sobre las propiedades que estas puedan tener. En este trabajo recordamos brevemente
un importante teorema de S. N. Kruzkov (cf. [28]), en el que se prueba la existencia y
unicidad de las soluciones entrpicas (con sentido fsico). Sin embargo, la trascendencia del
citado artculo fue ms all, debido a las tcnicas empleadas en la demostracin, que se
han reutilizado posteriormente en numerosas investigaciones.
En ese sentido, tambin cabe mencionar los resultados de Glimm (cf. [16]) sobre el
desarrollo de esquemas numricos y la existencia y unicidad de soluciones globales y de
Michael G. Crandall y T. M. Ligget (cf. [11]) sobre generacin de semi-grupos. Pero, como
decamos, la teora sobre leyes de conservacin no hubiera tenido tal envergadura de no
haber sido por el trasfondo que tiene, no solo en la fsica, sino tambin en diferentes reas
de la ingeniera como la dinmica de uidos, la qumica, la aerodinmica...
De entre todos los modelos, cabe destacar las ecuaciones de Euler sobre la dinmica
de gases, que han sido de las ms recurridas a la hora de desarrollar mtodos numricos (cf.
[3], [8]). Estas son una simplicacin de las ecuaciones de Navier-Stokes, fundamentales
en la dinmica de uidos, en las que no se tiene en cuenta la viscosidad (asuncin que
normalmente puede hacerse con los gases), lo cual hace que tomen la forma (1.1). Las
ecuaciones de Euler se emplean mucho, por ejemplo, en aerodinmica (por ejemplo, [25]),
para reproducir el ujo de aire en torno a un avin u otro vehculo cualquiera, con el n
de conseguir las mejores prestaciones en aspectos como la resistencia o la sustentacin.
Tambin aparecen leyes de conservacin en la meteorologa y la astrofsica (cf. [38],
[5]), aunque a distinta escala. Los frentes de calor o las ramas de una galaxia con forma de
espiral no son ms que discontinuidades (siempre teniendo en cuenta la escala) en la presin
atmosfrica o en la densidad de materia. Otros modelos representan el plasma en una fusin
nuclear (mediante las ecuaciones de la magnetohidrodinmica [32]), la densidad de trco
en una carretera [40] o el ujo de mltiples fases en materiales porosos (por ejemplo, en
la recuperacin de petrleo mediante el bombeo de agua [27]). Un caso particular de este
ltimo problema es la ecuacin de Buckley-Leverette [4], que modela la saturacin de agua
en la arena o en una roca y, a diferencia de los sistemas presentados hasta ahora, se trata
de nica ecuacin escalar.
A lo largo de este trabajo presentaremos otros dos ejemplos, tambin escalares, de
leyes de conservacin: la ecuacin de Burgers y una ecuacin de conveccin-difusin. En el
captulo 4, plantearemos un problema de control sobre la condicin inicial de la primera
ecuacin mencionada, de manera que haya que modicar esta para que la solucin tenga
una determinada forma en un instante de tiempo prejado. En cuanto a la segunda, que
trataremos en el captulo 5, nuestro objetivo es el de capturar numricamente algunas de
3
las propiedades del comportamiento asinttico que M. Escobedo y E. Zuazua presentaron
en [13] y en [14].
En ambos casos, ser importante que consigamos imitar las propiedades matemti-
cas que aparecen en la resolucin analtica. Para ello, introduciremos los resultados bsicos
en el captulo 2 sobre las leyes de conservacin escalares y expondremos algunos de los
mtodos numricos existentes para la simulacin de estas en el captulo 3. Por ltimo,
analizaremos los dos problemas mencionados, para los que tambin resumiremos algunos
de los resultados existentes que trataremos de mimetizar computacionalmente.
Captulo 2
Leyes de conservacin escalares:
herramientas analticas
Esta seccin est dedicada a la introduccin a las leyes de conservacin escalares. En
ella mostraremos los principales resultados respecto a estas y que usaremos ms adelante
en las aplicaciones. Nos vamos a centrar, sobre todo, en el caso unidimensional, aunque los
resultados pueden extenderse, como as haremos en alguno de ellos, a dimensiones mayores.
Para este captulo tomaremos como referencias principales los libros de Evans [15], Lax [30]
y Serre [37].
Vamos a considerar el siguiente Problema de Valor Inicial para leyes de conservacin
escalares unidimensionales:
_
u
t
+F(u)
x
= 0, en R (0, )
u = u
0
, en R t = 0
(2.1)
En l, las funciones F : R R y u
0
: R R vienen dadas y u : R [0, ) es la
funcin incgnita.
2.1. Soluciones clsicas y curvas caractersticas
Una solucin clsica del PVI es una solucin de clase (
1
para t > 0, continua para
t 0 y que satisface (2.1) punto a punto. En particular, si u
0
(
1
, la solucin clsica es
tambin de clase (
1
para t 0. Para evitar fenmenos relacionados con la velocidad de
propagacin innita, supondremos que u
0
est acotada en R. Consideremos tambin que
el ujo F es de clase (

y denotemos f(u) = F

(u).
Denicin 2.1. Sea u (
1
una solucin de (2.1). Denimos las curvas caractersticas
(o, simplemente, las caractersticas) en R[0, T] como las curvas t (X(t), t) dadas por
la ecuacin diferencial
dX(t)
dt
= f(u(X(t), t)) (2.2)
La particularidad de las curvas caractersticas es que la solucin u es constante a lo
largo de ellas:
d
dt
u(X(t), t) =
dX
dt
u
x
(X, t) +u
t
(X, t) = (u
t
+f(u)u
x
)(X, t) = 0
6 Captulo 2. Leyes de conservacin escalares: herramientas analticas
donde la ltima igualdad no es ms que la aplicacin de la ley de conservacin. As pues,
u es constante a lo largo de cada X, tomando el valor u
0
(x
0
) con x
0
el punto inicial (en
t = 0) de la curva. Deducimos, adems, que las curvas son rectas dadas por:
X(t) = x
0
+t f(u
0
(x
0
)) (2.3)
Encontrar una solucin clsica u para (2.1) se reducir a resolver la ecuacin algebraica
x = x
0
+t f(u
0
(x
0
)) para cada (x, t) R[0, T] y tomar u(x, t) = u
0
(x
0
). Si u
0
es continua,
es sencillo probar la existencia de solucin usando el teorema del valor medio, pero no se
puede garantizar la unicidad. La siguiente proposicin concreta esto.
Proposicin 2.1. Sea u
0
(
1
(R) acotada y de derivada acotada. Sea
T

=
_
+, si f u
0
es creciente

1
nf(f u
0
)

, en otro caso
Entonces, (2.1) tiene una nica solucin de clase (
1
en R [0, T

) y no puede extenderse
ms all de T

.
Dem. Puede verse una demostracin en [37].
Sin embargo, lo que ms nos interesa es el hecho de que para la ley de conservacin
puede existir un instante T

en el que la solucin clsica explota, en el sentido de que


la solucin puede dejar de ser continua, acotada... Por lo tanto, tendremos que relajar de
alguna manera nuestras suposiciones iniciales si queremos encontrar soluciones de (2.1)
para cualquier instante.
2.2. Soluciones dbiles
En la forma en la que tenemos planteado el PVI, no tiene sentido que intentemos
buscar soluciones u que no sean diferenciables. Tendremos que transformarlo para que po-
damos evitar la restriccin de regularidad que habamos impuesto en el apartado anterior.
La idea consiste en multiplicar la ecuacin en (2.1) por una funcin regular
v : R [0, ) de soporte compacto v T(R[0, )), que recibe el nombre de funcin
test e integrar por partes, transriendo as las derivadas a v. De esa manera obtenemos:
_

0
_

uv
t
+F(u)v
x
dxdt +
_

u
0
v[
t=0
dx = 0 (2.4)
Denicin 2.2. Diremos que u L

(R (0, )) es una solucin dbil de (2.1) si para


toda funcin test v T(R [0, )) se cumple (2.4).
Se puede comprobar fcilmente que la denicin de solucin dbil es una extensin
de la de solucin clsica; toda solucin clsica es, de hecho, solucin dbil. El recproco,
2.3. Soluciones entrpicas 7
en cambio, no siempre es cierto. Como ya hemos comentado, el concepto de solucin dbil
incluye funciones que no son continuas.
A pesar de la relajacin de las condiciones que debe vericar una solucin, de (2.4)
podemos deducir varias propiedades que cumplen las soluciones dbiles. La primera de ellas,
la condicin de Rankine-Hugoniot, nos permitir ubicar las discontinuidades que puedan
tener.
Proposicin 2.2. (Condicin de Rankine-Hugoniot) Sea R(0, ) un abierto
sobre el que u es regular a cada lado de una curva contenida en ella, que denotamos por

y
+
. Sean u

(x, t) el lmite de u(y, s) cuando (y, s) tiende a (x, t) y permanece


en

. Denotaremos por [[h]](x, t) = h


+
(x, t) h

(x, t) el salto sobre de una funcin h


continua a trozos. Entonces, u es solucin de (2.4) si y solo si satisface la ecuacin punto
a punto en
+
y en

y cumple la condicin de salto [[u]]n


t
+ [[F(u)]]n
x
= 0 a lo largo
de , siendo n el vector unitario normal a en (x,t).
Dem. La demostracin puede encontrarse en [37].
Suponiendo que F es Lipschitz continua, se puede deducir que la curva es parame-
trizable respecto al tiempo. En tal caso, si (x, t) = (s(t), t), obtenemos que la condicin
de Rankine-Hugoniot puede ser escrita en la forma:
[[F(u)]] = [[u]] (2.5)
donde = s ser la velocidad de la curva .
En cualquier caso, el problema que surge con el uso de soluciones dbiles es la
prdida de unicidad de soluciones. Dado que el inters de las leyes de conservacin es la
de modelar situaciones fsicas reales, tendremos que imponer otras restricciones a n de
excluir aquellas soluciones que carezcan de ese sentido fsico.
2.3. Soluciones entrpicas
La denicin de curva caracterstica nos ofreca una manera de calcular una frmula
(generalmente implcita) para las soluciones de la ley de conservacin (2.1). Como decamos
inicialmente, esta teora puede extenderse al caso multidimensional:
_
u
t
+F(u)
x
= 0, en R
N
(0, )
u = u
0
, en R
N
t = 0
(2.6)
La solucin u, suponiendo la regularidad suciente, es constante a lo largo de estas, que
vienen dadas por:
y(s) = (f(u
0
(x
0
))s +x
0
, s), s 0 (2.7)
8 Captulo 2. Leyes de conservacin escalares: herramientas analticas
La proposicin 2.1 prueba que existe la posibilidad de que dos curvas caractersticas
acaben cruzndose, provocando una discontinuidad en la solucin al avanzar en el tiempo.
En cambio, es de esperar que si estamos en un punto en R
N
(0, ) y retrocedemos en el
tiempo a lo largo de una curva caracterstica, no nos crucemos con ninguna otra; es decir,
que no encontraremos ninguna discontinuidad de u.
Supongamos que es una curva sobre la que u es discontinua y tiene distintos
valores lmite a izquierda y a derecha, u
l
y u
r
respectivamente. Si una caracterstica de
cada lado va a parar a un punto de , por (2.7) deducimos que
F

(u
l
) > > F

(u
r
) (2.8)
Estas desigualdades forman la condicin de entropa. Puede verse como el anlogo al prin-
cipio de la termodinmica, que arma que la entropa fsica no puede disminuir a medida
que el tiempo aumenta. En el caso particular en que F es uniformemente convexa, es decir,
si existe > 0 tal que F

(como el caso de la ecuacin de Burgers que analizaremos


en el captulo 4), entonces esta condicin se reduce a u
r
> u
l
.
Aprovechamos ahora para introducir el concepto de onda de choque. El estudio y
control de este tipo de curvas es una de las mayores prioridades a la hora de analizar leyes
de conservacin escalares.
Denicin 2.3. Una curva de discontinuidad para u se denomina onda de choque si
cumple las condiciones de Rankine-Hugoniot (2.5) y de entropa (2.8).
Volviendo al tema que nos ocupa, recordemos que estbamos buscando soluciones
dbiles de (2.1) que tengan un sentido desde el punto de vista de la fsica. Para ello hemos
denido la condicin de entropa. Y es precisamente esta desigualdad la que nos garantiza,
adems, la unicidad de solucin. En la literatura que vamos mencionando en este captulo
pueden encontrarse diversas aproximaciones para la demostracin de este hecho; nosotros
nos quedaremos con el teorema probado por Kruzkov.
La idea bsica de Kruzkov consiste en suponer que u es el lmite de una sucesin
funciones u

que son solucin de una generalizacin de las leyes de conservacin, dada


por
u
t
+F(u)
x
= u
xx
(2.9)
donde << 1 es un coeciente no negativo relativo a la difusin. El problema de Cauchy
correspondiente a la ecuacin anterior tiene una nica solucin que, adems, satisface el
principio del mximo. Si suponemos que u

u en casi todo punto cuando 0 (para


lo cual solamente son necesarias hiptesis muy generales), tenemos el siguiente lema:
Lema 2.1. Supongamos que u
0
(
b
(R). Si u

(x, t) u(x, t) en casi todo Q = R(0, T],


siendo u

solucin de (2.9), entonces u es solucin de (2.1).


Este nuevo punto de vista nos ofrece una generalizacin de la condicin de entropa
que presentbamos anteriormente. Se trata de una teora ms general, que concierne a
2.4. El problema de Riemann 9
sistemas de conservacin hiperblicos, pero que aplicaremos nicamente a ecuaciones es-
calares. Esta, adems de permitirnos reconocer la solucin que tiene sentido fsico de entre
todas las soluciones dbiles, nos garantizar la unicidad, adems de la existencia.
Denicin 2.4. Denimos un par entropa/ujo de entropa como una pareja (E, G)
de funciones regulares denidas en el espacio de estados de u para las que cada solucin
clsica de u
t
+F(u)
x
= 0 tambin satisface E(u)
t
+G(u)
x
= 0. En el caso de las leyes de
conservacin escalares, son aquellas que verican G

= fE.
La denicin anterior, nos va a permitir enunciar la condicin de entropa ms
general que mencionbamos.
Proposicin 2.3. (Condicin de entropa) Bajo las mismas hiptesis que en el lema
2.1, la solucin u de (2.1) satisface la siguiente desigualdad para todo par de entropa/ujo
de entropa (E, G) con E continua y convexa:
__
Q
(E(u)
t
+F(u)
x
) dxdt +
_
R
E(u
0
(x))(x, 0)dx 0 (2.10)
para toda D(R (, T)) y 0.
As, diremos que una solucin dbil u es una solucin entrpica (o admisible) si
satisface la condicin de entropa (2.10) para toda entropa continua y convexa E con ujo
G. Puede comprobarse que, en efecto, la condicin (2.8) no es ms que un caso particular
de este nuevo enunciado.
Tenemos ya las sucientes herramientas para enunciar el siguiente teorema, que,
como habamos anunciado inicialmente, nos garantiza la existencia y unicidad de la solucin
entrpica.
Teorema 2.1. (Teorema de Kruzkov) Para cada funcin u
0
medible y acotada en R,
existe una nica solucin entrpica de (2.1) en /

(Q) (([0, T); /


1
loc
(R)) y que tambin
satisface el principio del mximo: |u|
L

(Q)
= |u
0
|
L

(R)
.
Las demostraciones de esta seccin, tanto del teorema de Kruzkov como de los
enunciados anteriores, pueden encontrarse en [37].
2.4. El problema de Riemann
Ahora que ya tenemos los principales resultados referentes a las leyes de conserva-
cin escalares, vamos a presentar un ejemplo muy habitual a la hora de estudiarlas. Este,
denominado problema de Riemann, consiste en tomar como condicin inicial:
u
0
(x) =
_
u
l
si x < 0
u
r
si x > 0
(2.11)
10 Captulo 2. Leyes de conservacin escalares: herramientas analticas
donde u
l
, u
r
R con u
l
,= u
r
. Tambin consideraremos que F es uniformemente convexa
y (
2
(R), de manera que podemos escribir g = (F

)
1
.
En funcin de la relacin entre los dos parmetros u
l
y u
r
, es sencillo comprobar
que la nica solucin entrpica viene dada por una de las dos siguientes soluciones:
Si u
l
> u
r
, la nica solucin entrpica de (2.1)-(2.11) viene dada por:
u(x, t) =
_
u
l
si
x
t
<
u
r
si
x
t
>
(x R, t > 0) (2.12)
donde =
F(u
l
)F(u
r
)
u
l
u
r
, que determina la velocidad de desplazamiento de la onda de
choque.
En cambio, si u
l
< u
r
, la nica solucin entrpica de (2.1)-(2.11) viene dada por:
u(x, t) =
_

_
u
l
si
x
t
< F

(u
l
)
g(
x
t
) si F

(u
l
) <
x
t
< F

(u
r
)
u
r
si
x
t
> F

(u
r
)
(x R, t > 0) (2.13)
En este caso, la discontinuidad inicial desaparece, dando lugar a una curva denomi-
nada onda de rarefaccin en el intervalo (F

(u
l
), F

(u
r
)).
Evidentemente, en los intervalos en que son constantes, cumplen la ley de conser-
vacin en su forma variacional. Para la onda de rarefaccin, basta comprobar qu sucede
para soluciones del tipo u(x, t) = v
_
x
t
_
:
0 = u
t
+F(u)
x
= u
t
+F

(u)u
x
= v

_
x
t
_
x
t
2
+F

(v
_
x
t
_
)v

_
x
t
_
1
t
= v

_
x
t
_
1
t
_
F

(v
_
x
t
_
)
x
t
_
(2.14)
luego, asumiendo que v

no se anula, tenemos que F

(v(
x
t
)) =
x
t
, de donde, efectivamente,
obtenemos que u(x, t) = g(
x
t
) es solucin de la ecuacin y, adems, los lmites en ambos
puntos del salto por la derecha e izquierda coinciden. En cuanto a la condicin de entropa,
nos remitimos a [15] para un anlisis ms profundo, puesto que requiere una serie de
resultados de Lax y Oleinik que quedan fuera de nuestras necesidades. Recordemos que
habamos optado por la teora de Kruzkov para probar la existencia y unicidad de soluciones
entrpicas, pero estos dos autores siguieron otro camino relacionado con las ecuaciones de
Hamilton-Jacobi y la frmula de Hopf-Lax.
En las imgenes 2.1 y 2.2 podemos ver dibujadas las curvas caractersticas para
ambas soluciones. En el primer caso podemos ver cmo, a lo largo de la recta x = t, se
van juntando las rectas caractersticas, producindose una discontinuidad que se desplaza
2.4. El problema de Riemann 11
Figura 2.1: Caso u
l
> u
r
.
En rojo, la onda de choque de velocidad
= (F(u
l
) F(u
r
)/(u
l
u
r
)).
Figura 2.2: Caso u
l
< u
r
.
En verde, la onda de rarefaccin
u(x, t) = g(x/t).
con velocidad . En el otro, la discontinuidad inicial desaparece, dando lugar a la onda de
rarefaccin.
Este tipo de problemas suelen ser los primeros que se estudian a la hora de trabajar
con leyes de conservacin, sobre todo en una dimensin, pues dentro de su aparente sim-
plicidad, recogen los principales resultados y propiedades que hemos visto en este captulo.
En el ejemplo de control sobre la aplicacin de Burgers que realizamos en el captulo 4
ser, en efecto, la principal situacin a la que nos enfrentemos.
Captulo 3
Mtodos numricos
Ahora que ya disponemos de la base analtica suciente para la interpretacin de
las leyes de conservacin escalares, vamos a presentar varios mtodos numricos que nos
permitirn simular computacionalmente las soluciones de dichas ecuaciones. Como comen-
tbamos inicialmente, la bibliografa acerca de la aproximacin numrica de estas es muy
extensa, ya que se trata de un tema de gran importancia en el mundo de la ingeniera.
En esta seccin describiremos algunas de esas tcnicas, que usaremos ms adelante en las
aplicaciones que mostremos en los siguientes captulos.
Empezaremos con una breve introduccin al mtodo de volmenes nitos, que nos
servir para las simulaciones del captulo 4. Para ello utilizaremos como fuente los libros de
Godlewski [18] y de LeVeque [31]. Despus, presentaremos el mtodo de elementos nitos
y haremos hincapi en una variante, basada en las curvas caractersticas, que emplearemos
despus en el captulo 5. Como referencia usaremos, principalmente, los libros de Johnson
[26], de Glowinski [17] y de Quarteroni y Valli [36].
3.1. Esquemas conservativos: volmenes nitos
El mtodo de volumenes nitos es un mtodo numrico que permite la resolucin
de leyes de conservacin haciendo uso de dicha conservacin en las distintas celdas en las
que podemos dividir el dominio. Aunque en apariencia es similar al mtodo de diferencias
nitas, su origen es completamente distinto y es, precisamente, el uso de las propiedades
de este tipo de ecuaciones lo que permite que la simulacin de soluciones no regulares sea
ms precisa. Dado que emplearemos el mtodo de volmenes nitos para la simulacin de
la ecuacin de Burgers, que es unidimensional, nos centraremos nicamente en el desarrollo
de este en una nica variable espacial.
As pues, primero daremos una motivacin al uso de este mtodo y despus presen-
taremos algunos de los mtodos concretos que usaremos en el captulo 4.
3.1.1. Motivacin
A la hora de tratar con la simulacin de leyes de conservacin, lo primero a lo que
uno piensa en recurrir es al mtodo de diferencias nitas, sobre todo en una nica dimen-
14 Captulo 3. Mtodos numricos
sin espacial. Sin embargo, cuando las ecuaciones son no lineales, estos esquemas pierden
precisin. Aunque una linealizacin del problema permitira obtener algunos resultados de
convergencia para el mencionado mtodo, sigue habiendo un segundo inconveniente que
ya no podremos superar: las soluciones discontinuas (que, como ya hemos visto, no son
inusuales). El uso de diferencias nitas para la simulacin de estas puede llegar a ser tre-
mendamente inecaz, dando lugar a aproximaciones que distan mucho de ser correctas.
Por lo tanto, necesitaremos imponer algn requerimiento que garantice que el mtodo que
usemos converja correctamente; es decir, que no aparezcan distorsiones (en forma de oscila-
ciones, por ejemplo) y que no converja a funciones que no son solucin del correspondiente
problema.
Consideremos un mallado de R[0, ) con un ancho espacial x y un paso temporal
t (consideraremos que son constantes, aunque tambin podra suponerse que el mallado
no es uniforme e, incluso, sin estructura), sobre el que denimos los puntos (x
j
, t
n
) =
(jx, nt) con j Z y n = 0, 1, 2, ... Tambin ser til denir x
j+1/2
= x
j
+ x/2. Por
u
n
j
denotaremos el valor de la solucin exacta u en el punto (x
j
, t
n
), mientras que usaremos
U
n
j
para denotar la aproximacin. Por ltimo, deniremos la media de u(x, t
n
) en una celda
en torno a x
j
:
u
n
j
:=
1
x
_
x
j+
1
2
x
j
1
2
u(x, t
n
) dx (3.1)
que tambin utilizaremos, puesto que la forma integral de las leyes de conservacin describe
la evolucin en el tiempo de integrales como esa. Del mismo modo, podremos considerar
la condicin inicial bien como una simple evaluacin de u
0
en los nodos (U
0
j
= u
0
j
) o como
una media (U
0
j
= u
0
j
).
Con esa notacin, la imposicin que mencionbamos es que el esquema est en la
denominada forma conservativa:
U
n+1
j
= U
n
j

t
x
_
G
_
U
n
jp
, U
n
jp+1
, ..., U
n
j+q
_
G
_
U
n
jp1
, U
n
jp
, ..., U
n
j+q1
_
(3.2)
donde G es una funcin con p + q + 1 argumentos llamada funcin de ujo numrico. El
caso ms sencillo, que ser el que empleemos nosotros, se reduce a tomar p = 0 y q = 1,
de modo que
U
n+1
j
= U
n
j

t
x
_
G
_
U
n
j
, U
n
j+1
_
G
_
U
n
j1
, U
n
j
_
(3.3)
Denicin 3.1. Diremos que el esquema 3.3 es consistente con la ley de conservacin
original si la funcin de ujo numrico G coincide con F en el caso de que el ujo sea
constante.
Esta condicin tiene sentido en tanto en cuanto podemos ver U
n
j
como una aproxima-
cin de u
n
j
denida en (3.1). Sabemos que una solucin dbil u(x, t) satisface la formulacin
integral de la ley de conservacin:
_
x
j+
1
2
x
j
1
2
u(x, t
n+1
) dx =
_
x
j+
1
2
x
j
1
2
u(x, t
n+1
) dx

__
t
n+1
t
n
F(u(x
j+
1
2
, t)) dt
_
t
n+1
t
n
F(u(x
j
1
2
, t)) dt
_
(3.4)
3.1. Esquemas conservativos: volmenes nitos 15
Dividiendo por x y usando (3.1), obtenemos:
u
n+1
j
= u
n
j

1
x
__
t
n+1
t
n
F(u(x
j+
1
2
, t)) dt
_
t
n+1
t
n
F(u(x
j
1
2
, t)) dt
_
(3.5)
y si comparamos la frmula anterior con (3.3), podemos ver que el ujo numrico
G(U
n
j
, U
n
j+1
) acta como una media del ujo en torno a x
j+1/2
durante el intervalo de
tiempo [t
n
, t
n+1
]; es decir:
G(U
n
j
, U
n
j+1
)
1
t
_
t
n+1
t
n
F(u(x
j+
1
2
, t)) dt (3.6)
3.1.2. Conservatividad discreta
El principio bsico de una ley de conservacin es que la cantidad total de una variable
conservada solamente cambia en funcin del ujo en la frontera, tal como veamos en (1.2).
En el caso unidimensional, dicha formulacin integral puede escribirse de la siguiente forma:
_
b
a
u(x, t
2
) dx =
_
b
a
u(x, t
1
) dx
__
t
2
t
1
F(u(b, t)) dx
_
t
2
t
1
F(u(a, t)) dx
_
(3.7)
para cualquier a, b R y t
1
, t
2
0. En particular, si u es constante fuera de un intervalo
nito en el intervalo temporal [t
1
, t
2
], por ejemplo, u = u

si x a y u = u
+
si x b,
entonces obtenemos:
_
b
a
u(x, t
2
) dx =
_
b
a
u(x, t
1
) dx (t
2
t
1
) [F(u
+
) F(u

)] (3.8)
y si u

= u
+
(esto es, si la solucin tiene soporte compacto, en cuyo caso u

= 0),
entonces, los trminos de ujo se anulan entre s y concluimos que
_
b
a
u(x, t) dx es constante
en el tiempo siempre que la solucin sea constante en los extremos a y b.
A continuacin vamos a comprobar que los esquemas en forma conservativa tambin
cumplen una propiedad anloga. Por comodidad, denotaremos
G(U
n
; j) := G(U
n
jp
, U
n
jp+1
, ..., U
n
j+q
) (3.9)
el ujo numrico denido entorno al nodo j. Ahora, tomamos J y K enteros arbitrarios
(con J < K) y sumamos (3.2) sobre j:
x
K

j=J
U
n+1
j
= x
K

j=J
U
n
j
t
K

j=J
[G(U
n
; j) G(U
n
; j 1)] (3.10)
En el ltimo sumando se anulan muchos trminos entre s, quedando nicamente el ujo
numrico en los extremos, por lo que obtenemos el equivalente discreto a (3.7):
x
K

j=J
U
n+1
j
= x
K

j=J
U
n
j
t [G(U
n
; K) G(U
n
; J 1)] (3.11)
16 Captulo 3. Mtodos numricos
En particular, si u
0
es constante fuera de un intervalo nito, tambin lo ser U
n
,
ya que los mtodos numricos explcitos siempre tienen un dominio de dependencia nito.
Por tanto, para J y K lo sucientemente alejados, por la consistencia del ujo numrico
tenemos:
x
K

j=J
U
n+1
j
= x
K

j=J
U
n
j
t [F (u
+
) F (u

)] (3.12)
y aplicndolo de manera recursiva, para N > n llegamos a:
x
K

j=J
U
N
j
= x
K

j=J
U
n
j
(t
N
t
n
) [F (u
+
) F (u

)] (3.13)
que es el equivalente discreto de (3.8).
Finalmente, si como datos iniciales tomamos U
0
j
= u
0
j
y n sucientemente pequeo
para que la solucin sea constante en un entorno de x
J1/2
y x
K+1/2
, entonces:
x
K

j=J
U
n
j
=
_
x
K+
1
2
x
J
1
2
u(x, t
n
) dx (3.14)
De hecho, si tomamos la funcin a trozos denida por:
U
k
(x, t) = U
n
j
, para (x, t) [x
j
1
2
, x
j+
1
2
) [t
n
, t
n+1
) (3.15)
tendremos que
_
x
K+
1
2
x
J
1
2
U
k
(x, t
n
) dx =
_
x
K+
1
2
x
J
1
2
u(x, t
n
) dx, (3.16)
razn por la cual decimos que el mtodo de volmenes nitos es conservativo.
3.1.3. Ejemplos
Dado que para crear esquemas de volmenes nitos no hay mayor requerimiento que
el que estn en forma conservativa, lo primero que a uno se le ocurre es intentar discretizar la
correspondiente ecuacin mediante alguno de los mtodo de diferencias nitas ya existentes
y reordenarlo, de manera que cumplan dicha condicin. As, tenemos dos ejemplos claros:
Los esquemas upwind, que segn el lado que se elija son de una de las dos siguientes
formas:
U
n+1
j
= U
n
j

t
x
_
F
_
U
n
j
_
F
_
U
n
j1
_
(3.17)
U
n+1
j
= U
n
j

t
x
_
F
_
U
n
j+1
_
F
_
U
n
j
_
(3.18)
Estn, efectivamente, en forma conservativa. Basta considerar para ello G(v, w) =
F(v) en el primer caso y G(v, w) = F(w), en el segundo.
3.1. Esquemas conservativos: volmenes nitos 17
Lo mismo sucede con el esquema de Lax-Friedrichs. El mtodo de diferencias nitas
tendra la forma:
U
n+1
j
=
1
2
_
U
n
j1
+U
n
j+1
_

t
2x
_
F
_
U
n
j+1
_
F
_
U
n
j1
_
(3.19)
Para expresarlo en forma conservativa, se reordena y se toma:
G
LF
(v, w) =
t
2x
(v w) +
1
2
[F(v) +F(w)] (3.20)
Para poder usar el mtodo upwind correctamente, es necesario que no haya alter-
nancia de signo en los autovalores de la matriz del sistema que hay que resolver. Este
impedimento se puede salvar usando el mtodo de Lax-Friedrichs. Sin embargo, tiene la
desventaja de que, en general, es mucho ms disipativo que el upwind, por lo que con l
se obtienen soluciones menos precisas. Nos interesar, por tanto, conseguir un mtodo que
ane la capacidad que tiene el upwind de recoger la informacin que ofrecen las curvas
caractersticas y la exibilidad que permite el de Lax-Friedrichs.
En 1959, Godunov propuso un mtodo [20] que combinaba ambas caractersticas,
consistente en resolver problemas de Riemann a medida que se avanza en el tiempo. La
solucin de este tipo de problemas es sencilla de calcular, da cuantiosa informacin sobre
la estructura de caractersticas y, sobre todo, conduce a mtodos conservativos. Podemos
dividir el mtodo de Godunov en tres pasos para cada iteracin n = 0, 1, 2, ...:
1. A partir de la solucin numrica U
n
, denimos una funcin constante a trozos
u
n
(x, t
n
) que vale U
n
j
en la celda x
j1/2
< x < x
j+1/2
.
2. Con u
n
(x, t
n
) como condicin inicial, resolvemos la correspondiente secuencia de
problemas de Riemman, obteniendo u
n
(x, t) para t
n
t t
n+1
(he ah la diferencia
con la funcin U
k
(x, t
n
) de (3.15), que era constante en ese intervalo temporal). Dicho
intervalo deber ser lo sucientemente pequeo para que las curvas caractersticas de
una celda no se encuentren con las de las adyacentes (ver g. 3.1).
3. Calcular U
n+1
haciendo la media de u
n
(x, t) en t
n+1
:
U
n+1
j
=
1
x
_
x
j+
1
2
x
j
1
2
u
n
(x, t
n+1
) dx (3.21)
En la prctica, el ltimo paso puede simplicarse aplicando la forma integral (3.4)
de la ley de conservacin, que u
n
tambin cumple ya que suponemos que es una solucin
dbil exacta. As, teniendo en cuenta que u
n
(x, t
n
) = U
n
j
en la celda (x
j1/2
, x
j+1/2
), se
reduce a:
U
n+1
j
= u
n
j

t
x
_
G(U
n
j
, U
n
j+1
) G(U
n
j1
, U
n
j
)

(3.22)
siendo la funcin de ujo numrico:
G(U
n
j
, U
n
j+1
) =
1
t
_
t
n+1
t
n
F( u
n
(x
j+
1
2
, t)) dt (3.23)
18 Captulo 3. Mtodos numricos
Figura 3.1: Caractersticas de problemas de Riemann con la condicin inicial u(x, t
n
).
Puesto que u
n
es constante en x
j+1/2
(ya que la solucin del problema de Riemann es
autosemejante y constante en las rectas (xx
j+1/2
)/t), la integral anterior ser simplemente
el valor del ujo F para dicha constante, que denotaremos por u

(U
n
j
, U
n
j+1
):
U
n+1
j
= u
n
j

t
x
_
F(u

(U
n
j
, U
n
j+1
)) F(u

(U
n
j1
, U
n
j
))

(3.24)
De hecho, en el caso de las leyes de conservacin escalares puede saberse exactamente
ese valor. Sin entrar en grandes detalles (puede verse el desarrollo completo en [18]), diremos
que basta con considerar que las soluciones del paso 2 vienen dadas en la forma (2.12),
independientemente de la relacin entre u
l
y u
r
, de manera que:
u

(u
l
, u
r
) =
_
u
l
si > 0
u
r
si < 0
(3.25)
y:
G(u
l
, u
r
) =
_
F(u
l
) si 0
F(u
r
) si < 0
(3.26)
Estas siempre son soluciones dbiles, pero no siempre son soluciones entrpicas. El ujo
numrico as denido no importar en la mayora de los casos, pues a pesar de ser soluciones
del problema de Riemann no entrpicas, no siempre la solucin numrica ser no entrpica.
Pero si F

(u
l
) < 0 < F

(u
r
), puede darse esa situacin. Sin embargo, bastar con modicar
ligeramente el ujo numrico para obtener soluciones numricas entrpicas en todos los
casos:
G
G
(v, w) =
_
_
_
mn
vuw
F(u) si v w
max
wuv
F(u) si v > w
(3.27)
La desventaja que tiene el mtodo de Godunov es el coste numrico que implica su
uso, pues es necesario resolver un problema de Riemann para cada nodo del mallado. La
idea de los dos siguientes esquemas es similar a la de Godunov, pero utilizan una solucin
aproximada para dichos problemas. En [18] podemos encontrar cmo se deducen.
3.2. Elementos nitos: caractersticas-Galerkin 19
El mtodo de Murman-Roe toma como funcin de ujo numrico:
G
R
(v, w) =
_
F(v) si a(v, w) > 0
F(w) si a(v, w) < 0
(3.28)
donde
a(v, w) =
_
F(v)F(w)
vw
si v ,= w
F

(v) si v = w
(3.29)
Y que tambin puede escribirse de la siguiente forma:
G
R
(v, w) =
1
2
[F(v) +F(w) [a(v, w)[(w v)] (3.30)
El inconveniente de este esquema es que puede devolver soluciones dbiles no entr-
picas.
El esquema de Engquist-Osher, en cambio, evita esta contrariedad tomando el si-
guiente ujo numrico:
G
EO
(v, w) =
1
2
_
F(v) +F(w)
_
w
v
[F

()[ d
_
(3.31)
As pues, ya tenemos varios mtodos de volmenes nitos entre los que elegir para
realizar las simulaciones de la ecuacin de Burgers en el captulo siguiente. Para nalizar,
podemos apuntar que, al igual que el de Godunov, tambin obtienen soluciones entrpicas,
aunque ser necesario imponer ciertas restricciones sobre el grosor de la malla y el tamao
del paso temporal. En [31] se ofrece un anlisis ms profundo de estos aspectos.
3.2. Elementos nitos: caractersticas-Galerkin
Una de las tcnicas ms usadas en la simulacin en la ingeniera es el mtodo de
los elementos nitos (FEM). La idea original apareci publicada por primera vez en el
apndice de un artculo de Courant en 1943 (cf. [34]), hecho por el que se le conoce como
el padre de los elementos nitos. A nales de la dcada de los cincuenta, con la aparicin
de los recursos computacionales necesarios, comenz a usarse para la resolucin numrica
de ecuaciones en derivadas parciales en ingeniera estructural (ecuaciones de elasticidad,
ecuaciones de lminas...). Fue a mediados de los sesenta cuando su uso se generaliz a otras
reas, no solo de la ingeniera, sino de la ciencia en general, llegando a usarse en problemas
tan dispares como mecnica de uidos o procesos de reaccin-difusin.
3.2.1. FEM: conceptos bsicos
Si bien cada problema debe ser tratado de manera particular, la lnea que hay que
seguir en todos ellos para aplicar el mtodo de elementos nitos es siempre la misma. En
20 Captulo 3. Mtodos numricos
funcin de la dicultad del problema y de la precisin requerida se optar por unas variantes
u otras del mtodo, usando diferentes espacios de funciones, mtodos adaptativos etc.; pero,
en cualquier caso, dada una ecuacin o sistema de ecuaciones en derivadas parciales, esta
tcnica consiste, principalmente, en completar los siguientes cuatro pasos:
1. A partir de las ecuaciones del problema, se plantea la formulacin variacional de este,
obteniendo una nueva armacin que debe cumplirse para todas las funciones de un
determinado espacio V de dimensin innita.
2. Se construyen los espacios de dimensin nita V
h
sobre los que se calcularn las
aproximaciones.
3. Se discretiza y resuelve el problema variacional sobre V
h
.
4. Se implementa el mtodo en un ordenador.
A n de ilustrar el procedimiento, vamos a presentar un ejemplo en el que deta-
llaremos los tres primeros pasos. Consideremos el siguiente problema de contorno para la
ecuacin de Poisson:
_
u = f, en
u = 0, en
(3.32)
donde R
2
es un dominio abierto y acotado con frontera . Denotaremos por V el
espacio (de dimensin innita) de funciones admisibles, que, por el momento, deniremos
de la siguiente manera:
V := v [ v es continua en ,
v
x
1
y
v
x
2
son
continuas a trozos en y v = 0 en
(3.33)
La imposicin de la condicin v = 0 en es clara. En cuanto a las otras dos, nos
permitirn trabajar con derivadas parciales. Si ahora multiplicamos la ecuacin en (3.32)
por una funcin v V cualquiera e integramos sobre , obtenemos la siguiente ecuacin:

uv dx =
_

fv dx (3.34)
Sobre la integral de la izquierda podemos aplicar la siguiente frmula de Green:
_

uv dx =
_

v
u
n
dx
_

uv dx =
v|
=0

uv dx (3.35)
de manera que llegamos a la formulacin variacional que estbamos buscando:
Hallar u V tal que
_

uv dx =
_

fv dx, v V (3.36)
Es sencillo comprobar que toda solucin de (3.32) tambin es solucin de (3.36). El inverso
tambin es cierto, siempre que u sea lo sucientemente regular.
3.2. Elementos nitos: caractersticas-Galerkin 21
Ahora tenemos que construir un espacio V
h
V (esta inclusin no siempre es nece-
saria, pero la consideraremos por simplicidad) de dimensin nita. Supondremos tambin
que es una curva poligonal. Hacemos una triangulacin de , dividindolo en tringulos
K
1
, ..., K
m
T
h
de manera que =

m
j=1
K
j
sin solaparse y solo con uniones lado-lado o
vrtice-vrtice. En la siguiente gura tenemos un ejemplo de triangulacin vlida.
Figura 3.2: a
Por h entendemos la longitud del lado ms largo de entre todos los tringulos en
T
h
. Entonces, denimos V
h
de la siguiente forma:
V
h
:= v [ v es continua en , v[
K
es lineal K T
h
, v[

= 0 (3.37)
Claramente, V
h
V . Para determinar una funcin v V
h
, basta con elegir los valores de v
en los nodos interiores N
1
, ..., N
M
(en los exteriores vale siempre 0). As, podemos denir
la siguiente base para V
h
:

M
j=1
=
j
V
H
[
j
(N
i
) =
ij
i = 1, ..., M (3.38)
de tal modo que podemos expresar cualquier v V
h
como:
v(x) =
M

j=1
v(N
j
)
j
(x), x (3.39)
La siguiente gura muestra una de estas funciones bsicas:
Figura 3.3: a
Ya solamente nos queda formular el problema discreto acorde con los elementos
nitos que hemos denido. En este caso, la formulacin variacional discreta para (3.36)
22 Captulo 3. Mtodos numricos
queda:
Hallar u
h
V
h
tal que
_

u
h
v dx =
_

fv dx, v V
h
(3.40)
Dado que ahora las funciones son lineales y vienen determinadas por sus valores en los
nodos de la triangulacin, tal y como se expresa en (3.39), resolver el problema (3.40) es
equivalente a resolver un sistema de ecuaciones lineal A = b, donde:
A = (a
ij
) es una matriz M M que se llama matriz de rigidez y est formada por
los elementos a
ij
=
_

j
dx, con i, j = 1, ..., M.
= (
i
) es el vector de incgnitas, con los valores de u
h
en los M nodos interiores.
b = (b
i
) es el vector de masas, dado por b
i
=
_

f
i
dx
Es sencillo comprobar que la matriz A es simtrica y denida positiva, por lo que
es no singular y, en consecuencia, el sistema anterior tiene solucin nica. Tambin puede
probarse que la solucin u
h
obtenida as es la mejor aproximacin de u, en el sentido de
que
|u u
h
| |u v|, v V
h
(3.41)
donde |w| := (
_

w
2
dx)
1/2
. En particular, se cumple para la funcin interpolante u
h
V
h
(la que toma los valores exactos de u en los nodos). Las estimaciones del error cometido
pueden concretarse ms an, pudiendo demostrarse que
|u u
h
| C
1
h (3.42)
y que
|u u
h
| C
2
h
2
(3.43)
donde C
1
, C
2
R son constantes positivas que dependen solamente de la triangulacin.
Una vez especicados los tres primeros pasos del mtodo de elementos nitos para el
problema (3.32), solamente quedara implementarlo en un ordenador para su resolucin. Se
pueden usar los lenguajes de programacin genricos (Fortran, C++, Java...) o recurrir a
paquetes especcos. En [2], por ejemplo, se ofrece un sencillo cdigo en aproximadamente
50 lneas. Si se desea un software ms completo, una buena opcin es FreeFem++, desarro-
llado por Olivier Pironneau et al. [22]. Ser este ltimo el que usemos para las simulaciones
en el captulo 5.
Para nalizar, sealaremos que los resultados de convergencia (3.42) y (3.43) estn
basados en el denominado anlisis a priori, segn el cual un mtodo numrico converge si
es estable y consistente con el problema continuo. Sin embargo, en los ltimos tiempos se ha
dado un gran empuje desarrollando un rea con un enfoque distinto pero complementario:
el anlisis a posteriori, que dio lugar a los mtodos adaptativos. La idea fundamental
es la de, una vez realizado el clculo de una solucin, hallar una cota superior del error
en trminos de una constante (que se puede estimar rpidamente) multiplicada por los
residuos del problema (que son fcilmente calculables). A diferencia del anlisis a priori,
3.2. Elementos nitos: caractersticas-Galerkin 23
el anlisis a posteriori no necesita la consistencia del esquema con el problema continuo
para la convergencia, sino que requiere que los residuos tiendan a disiparse. La adaptacin
de malla que realizamos en el algoritmo del captulo 5 se basa en este tipo de anlisis del
error.
3.2.2. Mtodo Galerkin de las caractersticas
Como comentbamos en el apartado anterior, hay numerosas variantes del mtodo
de elementos nitos. Si bien todos siguen el esquema general presentado, cada uno de ellos
se acopla en cierta manera al problema que debe resolver. Nosotros nos vamos a centrar
en uno, descrito en [35], basado en una de las principales propiedades de las leyes de
conservacin: las curvas caractersticas. Veremos, adems, que este esquema nos ser muy
til en las simulaciones del captulo 5.
En el captulo 2 presentbamos este tipo de curvas, que en el caso de leyes de
conservacin escalares de la forma u
t
+ div F(u) = 0 son aquellas dadas por la ecuacin
diferencial ordinaria:
_
_
_
dX
dt
(t; s, x) = F

(u(X(t; s, x), t))


X(s; s, x) = x
(3.44)
donde s 0 y x R
N
. Geomtricamente, X(t; s, x) indica la posicin en el instante t de
una partcula que ha sido desplazada por el campo vectorial F

u desde la posicin x que


ocupaba en el instante s.
En las condiciones del teorema de Picard-Lindelf (cf. [21]), la existencia y unicidad
de solucin de (3.44) nos garantiza la igualdad
X(t; s, X(s; , x)) = X(t; , x), t, s, 0 y x R
N
(3.45)
y, en particular, X(t; s, X(s; t, x)) = x, luego para t y s jos, podemos denir la funcin
x X(s; t, x) cuya inversa es y X(t; s, y). Entonces, deniendo u(y, t) := u(X(t; 0, y), t)
para y R
N
tenemos que:
d u
dt
(y, t) =
u
t
(X(t; 0, y), t) +
N

k=1
u
x
k
(X(t; 0, y), t)
dX
k
dt
(t; 0, y)
=
_
u
t
+F

(u) u
_
(X(t; 0, y), t)
(3.46)
Como podemos observar, en (3.45) aparecen trminos de la ecuacin de conveccin-difusin
similares a los que estudiaremos en el captulo 5, de ah nuestro inters por este mtodo.
Ahora solamente nos queda discretizar la derivada temporal. Para ello, podemos
considerar que se trata, simplemente, de una ecuacin diferencial ordinaria y aplicar un
esquema de Euler regresivo:
d u
dt
(y, t
n+1
)
u(y, t
n+1
) u(y, t
n
)
t
(3.47)
24 Captulo 3. Mtodos numricos
donde, tomando y = X(0; t
n+1
, x) y usando (3.45), queda:
d u
dt
(X(0; t
n+1
, x), t
n+1
)
u(X(0; t
n+1
, x), t
n+1
) u(X(0; t
n+1
, x), t
n
)
t
=
u(x, t
n+1
) u(X(t
n
; t
n+1
, x), t
n
)
t
(3.48)
Finalmente, sustituyendo en (3.46), obtenemos:
_
u
t
+F

(u) u
_
(x, t
n+1
)
u(x, t
n+1
) u(X(t
n
; t
n+1
, x), t
n
)
t
(3.49)
Ahora bien, X es, en general, una solucin no trivial de la ecuacin diferencial
ordinaria (3.44), por lo que normalmente no conoceremos su expresin. Por ello, tambin
tendremos que obtener una aproximacin de esta. Dado que se trata de una derivada
temporal y hemos semidiscretizado u en esa variable, podremos aproximar F

u en cada
iteracin:
dX
dt
(t; t
n+1
, x) = F

(u(X(t; t
n+1
, x), t)) (3.50)
Por ejemplo, podemos decantarnos de nuevo por un esquema de Euler regresivo:
F

(u(x, t
n+1
)) = F

(u(X(t
n+1
; t
n+1
, x), t
n+1
))
X(t
n+1
; t
n+1
, x) X(t
n
; t
n+1
, x)
t
(3.51)
de donde, usando (3.45), denimos la aproximacin:
X(t
n
; t
n+1
, x) X
n
(x) := x t F

(u(x, t
n+1
)) (3.52)
Tenemos, por tanto, el esquema semidiscretizado siguiente:
_
u
t
+F

(u) u
_
(x, t
n+1
)
u(x, t
n+1
) u(x t F

(u(x, t
n+1
)), t
n
)
t
(3.53)
El esquema anterior no es ms que otra forma de aproximar la derivada convectiva
(tambin denominada derivada sustancial o lagrangiana). Sin embargo, tiene la ventaja de
que nos permite usar sobre l elementos nitos. Por ejemplo, para la ecuacin de conveccin
u
t
+ a u = 0 (con a R
N
es la velocidad de conveccin), eligiendo un espacio V
h
apropiado, a partir de u
0
h
V
h
tendremos que buscar u
n+1
h
V
h
(con n = 0, 1, 2, ...) tal
que:
1
t
_

v(x) [u
n+1
h
(x) u
n
h
(x t a)]dx = 0, v V
h
(3.54)
Para terminar, nos remitiremos al artculo de Pironneau [35], en el que se realiza
un profundo anlisis de convergencia del mtodo Galerkin de las caractersticas para la
ecuacin del transporte lineal, tanto sin difusin como con ella. Adems, se da una cota del
error cometido, que es del orden x+t+x
2
/t en el caso de tomar elementos nitos de
tipo P1. En [36] tambin podemos encontrar otro estudio del mtodo, as como referencias
adicionales para su implementacin en otros tipos de problemas, como las ecuaciones de
Navier-Stokes incompresibles o problemas elpticos dominados por adveccin.
Captulo 4
Aplicaciones:
Problema de control unidimensional
En el Captulo 2 presentbamos los principales resultados sobre leyes de conserva-
cin escalares. Despus, en el Captulo 3 establecamos los mtodos ms generales para la
simulacin computacional de estas. En los dos siguientes captulos vamos a estudiar dos
problemas particulares, en los que podremos observar y usar las herramientas analticas y
numricas que hemos descrito anteriormente.
En esta primera aplicacin, como ejemplo de problema de control unidimensional,
consideraremos la ecuacin de Burgers viscosa junto con una condicin inicial u
0
y una
funcin objetivo u

dadas. Nuestra nalidad ser la de modicar u


0
de la manera ms
rpida posible para que en un tiempo prejado, la solucin de la ecuacin sea u

.
4.1. Ecuacin de Burgers
La ecuacin de Burgers es uno de los ejemplos ms importantes entre las leyes de
conservacin. Aparece en numerosas situaciones de la mecnica de uidos, pues se trata
de una simplicacin de las ecuaciones de Navier-Stokes, y tambin es una ecuacin muy
recurrente en modelos de ujo de trco. En cualquier caso, se suele emplear para entender
mejor el comportamiento del problema general y para probar sobre l mtodos que poder
aplicar despus en situaciones ms complejas.
Esta ley de conservacin surge de considerar F(u) =
u
2
2
u
x
. La forma general de
la ecuacin viene dada por
u
t
+

x
_
u
2
2
_
=

2
u
x
2
(4.1)
donde podemos considerar u la velocidad del uido y el coeciente de viscosidad de
este. Se trata de la ecuacin en derivadas parciales ms simple que combina efectos de
propagacin no lineal y efectos de difusin. El caso particular en que = 0 tambin es de
gran inters, puesto que es el ms claro ejemplo de ecuacin en cuyas soluciones pueden
aparecer ondas de choque (recordemos que la solucin de este caso es, de hecho, el lmite
de (4.1) cuando 0). As pues, nosotros nos centraremos, sobre todo, en este ltimo.
u
t
+

x
_
u
2
2
_
= 0 (4.2)
26 Captulo 4. Aplicaciones: Problema de control unidimensional
Dado que se trata de una ley de conservacin escalar, podemos aplicar toda la teora
que presentamos en el captulo 2 en lo que respecta a curvas caractersticas y soluciones
clsicas, dbiles y entrpicas. As, podemos destacar las siguientes:
Las curvas caractersticas vienen dadas por X(t; x
0
) = x
0
+ t u
0
(x
0
) donde x
0
es
el pie de la curva caracterstica, cuando t = 0. Son rectas cuya pendiente la ja la
condicin inicial u
0
.
Las soluciones clsicas son de la forma u(x, t) = u
0
(x
0
), con x = x
0
+t u
0
(x
0
).
La condicin de Rankine-Hugoniot implica que la velocidad de una curva de discon-
tinuidad es la media de los valores a cada lado de esta ( = (u
l
+u
r
)/2).
La condicin de entropa requiere que si hay una discontinuidad que se propaga,
entonces el valor de la izquierda ha de ser mayor al de la derecha (u
l
> u
r
).
Pero, adems de ese enfoque hiperblico de la ecuacin, tambin es posible orientarlo
desde el punto de vista que empleamos con el teorema de Kruzkov. Es decir, podemos
suponer que nuestra ecuacin es (4.1), cuya solucin podremos obtener de otra manera que
veremos a continuacin, y despus hacer tender la viscosidad a 0. Este mtodo, denominado
enfoque de la viscosidad disipativa, es mucho ms natural desde el punto de vista fsico,
puesto que la ecuacin de Burgers es la idealizacin de modelos ms complejos en los que
cabe esperar que s exista algo de viscosidad.
La manera de resolver (4.1) fue descubierta por E. Hopf [23] y J. D. Cole [10] de
manera independiente y consiste en hacer un cambio de variable para obtener la ecuacin
del calor, cuya solucin es conocida. Para realizar la susodicha transformacin de Cole-
Hopf, tomamos:
u(x, t) = 2

x
(x, t)
(x, t)
(4.3)
de manera que el problema (4.1) se convierte en la siguiente ecuacin de difusin lineal:
_

xx
= 0, x R, t > 0
(x, 0) = e

1
2

x
0
u
0
() d
, x R
(4.4)
La solucin a este problema es de sobra conocida (ver, por ejemplo, [15]) y viene dada por:
(x, t) =
1
2

t
_

(y, 0)e

(yx)
2
4t
dy (4.5)
que, sustituyndolo en (4.3), nos devuelve la solucin de (4.1):
u(x, t) =
_

(y x)(y, 0)e

(yx)
2
4t
dy
t
_

(y, 0)e

(yx)
2
4t
dy
(4.6)
Como veremos en la siguiente seccin, esta forma de resolver (4.1) nos permitir desarrollar
otro mtodo numrico para obtener soluciones aproximadas.
4.2. Problema de control 27
4.2. Problema de control
En esta seccin plantearemos formalmente el problema de optimizacin que quere-
mos llevar a cabo, as como el procedimiento que realizaremos para solucionarlo. Se trata de
un problema de gran actualidad en la ingeniera aeronutica, pues es una representacin
simplicada de cmo llegan a la supercie terrestre las ondas de sonido producidas por
una aeronave al traspasar la barrera del sonido (el denominado boom snico). Al intentar
superar la velocidad del sonido, se genera una explosin cuya onda sonora, al llegar a tie-
rra, resulta peligrosa para la salud por su intensidad. Por ello, el Concorde, por ejemplo,
solamente volaba a velocidad supersnica cuando sobrevolaba el ocano Atlntico.
Figura 4.1: Grco de la presin ejercida so-
bre la supercie terrestre por el boom snico.
Los saltos en la lnea roja implican sendas ex-
plosiones.
Figura 4.2: Imagen de la explosin
producida por un avin al superar
la velocidad del sonido, en torno a
los 343m/s.
En [24] se puede encontrar un amplio estudio sobre el mencionado problema, sobre
el que se explican aspecto tanto tericos como prcticos. En nuestro caso, trataremos
una simplicacin de este. Partiendo de la ecuacin de continuidad, se asume que hay
equilibrio termodinmico, se desechan trminos de orden alto y se hace un cambio de
variables, obtenindose la ya conocida ecuacin de Burgers viscosa. En [29] puede verse el
razonamiento completo de esta simplicacin.
Ahora que se ha iniciado una nueva carrera por conseguir aviones comerciales de
tipo supersnico, encontrar soluciones al problema mencionado es de gran inters. Nuestro
planteamiento consistir en averiguar cmo modicar las condiciones iniciales (la geometra
del avin en una situacin real) con el n de conseguir una determinada solucin en un
instante prejado.
28 Captulo 4. Aplicaciones: Problema de control unidimensional
4.2.1. Planteamiento formal
Dadas una funcin u
d
/
2
(R) y un instante T, queremos encontrar una condicin
inicial u
0

|
ad
que nos minimice el siguiente funcional de coste:
J(u
0
) =
_
R
[u(x, T) u
d
(x)[
2
dx (4.7)
donde u(x, t) es la nica solucin entrpica de la ecuacin de Burgers no viscosa:
_
_
_
u
t
+

x
_
u
2
2
_
= 0, (x, t) R(0, T)
u(x, 0) = u
0
(x), x R
(4.8)
Por |
ad
denotamos el conjunto de condiciones iniciales admisibles. En nuestro caso, con-
sideraremos |
ad
= f /

(R), supp(f) K, |f|

C, siendo K R un intervalo
acotado y C > 0 una constante. En [7] podemos encontrar anlisis ms profundo de este
problema de minimizacin. En l se demuestra la existencia de minimizadores y se muestran
contraejemplos para la unicidad.
Ahora bien, en las aplicaciones prcticas (es decir, en los clculos computaciona-
les) uno no puede trabajar directamente con el problema continuo. Ser necesario que lo
discreticemos para poder trabajar con l. As pues, consideraremos el funcional:
J

(u
0

) =
x
2

j=
(U
N+1
j
U
d
j
)
2
(4.9)
donde u
0

= U
0
j
es la condicin inicial discretizada; U
d

= U
d
j
, la discretizacin de
u
d
(por ejemplo, la obtenida mediante (3.1), u
d
j
= u
d
j
); y U
N+1
= U
N+1
j
la solucin
en t = T obtenida mediante un esquema conservativo como los que mencionaremos en la
siguiente seccin. En el citado artculo tambin se puede encontrar una demostracin para
la existencia de solucin del problema
mn
u
0

U
ad,
J

(u
0

) (4.10)
siendo |
ad,
el conjunto de condiciones iniciales discretas admisibles (el equivalente discreto
al conjunto |
ad
). Este ser, por tanto, el problema de optimizacin que trataremos de
solucionar.
4.2.2. Optimizacin
La manera ms eciente de aproximar los mnimos de un funcional son los algoritmos
basados en el gradiente. Estos estn diseados para alcanzar un mnimo (sin garanta de
que sea local o global) de la funcin siguiendo la direccin negativa que determina el
gradiente en cada punto. Intuitivamente, se basan en bajar de una montaa siguiendo la
pendiente descendente. Matemticamente, consisten en, dado un funcional F y un punto
4.2. Problema de control 29
inicial x
0
, calcular sucesivamente x
n+1
= x
n

n
F(x
n
) (n 0), de manera que para
n
sucientemente pequeo, F(x
0
) F(x
1
) F(x
2
) ... Dependiendo del mtodo escogido,
la forma de aproximar el gradiente y de tomar un tamao de paso u otro sern distintas.
En nuestro caso, tendremos que buscar una manera de aplicar un algoritmo de ese
tipo al funcional (4.7). Habitualmente, se suelen considerar dos posibles aproximaciones:
el enfoque discreto, que consiste en discretizar primero y despus calcular el gradiente
discreto; o el enfoque continuo, en el que primero se obtiene el gradiente de manera analtica
y despus se discretiza. Existen otras opciones, como el mtodo de descenso alternante
planteado en [7], que a riesgo de aumentar el costo computacional de cada paso, obtienen
mejores resultados con soluciones discontinuas en un menor nmero de iteraciones.
As pues, el objetivo de este apartado ser encontrar la manera de determinar el
gradiente de J, para lo cual analizaremos la sensibilidad de este a los cambios en la condicin
inicial u
0
. Solamente consideraremos el enfoque discreto y no tendremos en cuenta posibles
discontinuidades en las soluciones.
Sea u
0
(
1
0
(R) una condicin inicial con soporte compacto dada, para la cual la
ecuacin (4.8) tiene solucin clsica u en R[0, T] para cierto T > 0. Supongamos tambin
que puede extenderse a un intervalo de tiempo mayor, [0, T +] con > 0. Por otro lado,
sea u
0
(
1
0
(R) una posible variacin de u
0
, que, dada la velocidad de propagacin nita,
solamente afectar a la solucin en [0, T]. Entonces, para un > 0 sucientemente pequeo,
la solucin u

correspondiente a la condicin inicial:


u
,0
(x) = u
0
(x) +u
0
(x) (4.11)
es tambin una solucin clsica en R(0, T) y podemos escribir u

(
1
(R(0, T)) como:
u

= u +u +o() (4.12)
con respecto a la topologa de (
1
y siendo u la solucin de la ecuacin linealizada:
_

t
u +
x
(uu) = 0, (x, t) R (0, T)
u(x, 0) = u
0
(x), x R
(4.13)
Antes de continuar, introduciremos el concepto de derivada de Gateaux, que gene-
raliza la nocin de derivada direccional.
Denicin 4.1. Sean X e Y dos espacios de Banach y sea F : U Y , con U X
abierto, una funcin. Denimos la derivada de Gateaux de F en un punto x U en la
direccin X como
dF(x, ) := lm
0
F(x +) F(x)

(4.14)
Diremos que F es diferenciable Gateaux si el lmite existe para todo X.
As pues, sea J la derivada de Gateaux de J en u
0
en la direccin u
0
. Esta vendr
dada por
J =
_
R
_
u(x, T) u
d
(x)
_
u(x, T) dx (4.15)
30 Captulo 4. Aplicaciones: Problema de control unidimensional
donde u resuelve el sistema (4.13). Esta expresin puede simplicarse haciendo uso del
sistema adjunto de (4.8):
_

t
p +u
x
p = 0, (x, t) R (0, T)
p(x, T) = u(x, T) u
d
(x), x R
(4.16)
Ahora, multiplicando (4.13) por p, integrando por partes y teniendo en cuenta que p satis-
face (4.16), obtenemos que:
J =
_
R
p(x, 0)u
0
(x) dx (4.17)
Esto nos permite calcular de manera sencilla una direccin de descenso en el mtodo del
gradiente, sin ms que tomar u
0
(x) = p(x, 0). Recordemos que, tal y como planteamos
estos tipos de algoritmos, habremos alcanzado un mnimo si el gradiente es cero. En el caso
de J, si estamos en un mnimo, J ser nulo y el integrando tambin si este no cambia de
signo, como sera si tomsemos u
0
como hemos mencionado.
No obstante, en la prctica esa direccin podra no resultar muy til, pues aunque
tomemos una u
0
suave, nada nos garantiza que la solucin vaya a seguir siendo clsica
durante el proceso iterativo. En ese sentido, es recomendable hacer un estudio ms avanzado
en el que se tengan en cuenta los posibles choques que puedan aparecer. Nosotros no
profundizaremos en ello, remitindonos a [7] para un mayor detalle al respecto.
4.2.3. Aproximaciones numricas
En el apartado anterior obtenamos una forma de calcular el gradiente de J de ma-
nera analtica. Sin embargo, como comentbamos inicialmente, en la prctica trabajaremos
con J

, por lo que tambin necesitamos aproximar el gradiente de esta de alguna manera.


Nosotros utilizaremos el enfoque discreto, haciendo uso de algunos de los mtodos conser-
vativos que introdujimos en la seccin 3.1.3. A pesar de que estos resultan poco ecaces
cuando la solucin desarrolla alguna onda de choque, frente a otro tipo de mtodos que s
son capaces de capturar estas, nos centraremos nicamente en estos por un simple motivo:
no siempre ser sencillo detectar discontinuidades en una solucin, bien porque no lo sean o
bien porque se trate de un problema de mayor complejidad (como es el caso en dimensiones
superiores).
Dentro de ese enfoque, tambin tendremos que diferenciar entre esquemas diferen-
ciables y no diferenciables. Para las simulaciones realizadas en este trabajo hemos elegido
tres esquemas: por un lado, el de Lax-Friedrichs (3.20) y el de Enquist-Osher (3.31), ambos
diferenciables, y por otro, el de Roe (3.28), que no es diferenciable y que para la ecuacin
de Burgers coincide con el de Godunov.
Si consideramos un mtodo conservativo en la forma general (3.3) con una funcin
de ujo numrico G diferenciable, entonces la linealizacin (4.13) es sencilla de aproximar
4.2. Problema de control 31
numricamente, sin ms que tomar:
_

_
U
n+1
j
= u
n
j

t
x
_

1
G(U
n
; j) U
n
j
+
2
G(U
n
; j) U
n
j+1

1
G(U
n
; j 1) U
n
j1

2
G(U
n
; j 1) U
n
j

= 0,
j Z, n = 0, ..., N
(4.18)
Esto nos permite tambin escribir el sistema adjunto discreto de la siguiente forma:
_
_
_
P
n
j
= P
n+1
j
+
t
x
_

1
G(U
n
; j)(P
n+1
j+1
P
n+1
j
) +
2
G(U
n
; j 1)(P
n+1
j
P
n+1
j1
)
_
P
N+1
j
= P
T
j
, j Z, n = 0, ..., N
(4.19)
De hecho, multiplicando (4.18) por P
n+1
j
, sumando en j, usando (4.19) y tomando
P
T
j
= U
N+1
j
U
d
j
, obtenemos el equivalente discreto de (4.17):
J

= x

jZ
P
0
j
U
0
j
(4.20)
lo cual nos permite, de manera anloga al caso continuo, tomar como direccin de descenso
U
0

= P
0

.
As pues, ya tenemos la forma de aproximar numricamente, tanto la solucin de la
ecuacin de Burgers (4.8), como el sistema linealizado (4.13) y el adjunto (4.16), adems
de la direccin de descenso para el mtodo del gradiente.
En cuanto al esquema de Roe, no siendo diferenciable, no es posible calcular el
gradiente de J

. Sin embargo, es posible obtener una direccin de descenso alternativa


para utilizar en el mtodo del gradiente. En [19] se propone, por ejemplo, usar el siguiente
esquema para la linealizacin:
U
n+1
j
= U
n
j

x
t
(h
n
j+
1
2
h
n
j
1
2
) (4.21)
donde
h
n
j+
1
2
= h(U
n
j
, U
n
j+1
; U
n
j
, U
n
j+1
) (4.22)
h(u, v; w, z) =
1
2
(A(u, v)(w +z) [A(u, v)[(z w)) (4.23)
Con este, la discretizacin del sistema adjunto queda de la siguiente forma:
_
_
_
P
n
j
= P
n+1
j
+
t
x
_

n
j
(P
n+1
j+1
P
n+1
j
) +
n
j
(P
n+1
j
P
n+1
j1
)
_
P
N+1
j
= P
T
j
, j Z, n = 0, ..., N
(4.24)
donde

n
j
=
1
2
_
A(U
n
j
, U
n
j+1
) +[A(U
n
j
, U
n
j+1
)[

(4.25)

n
j
=
1
2
_
A(U
n
j
, U
n
j+1
) [A(U
n
j
, U
n
j+1
)[

(4.26)
32 Captulo 4. Aplicaciones: Problema de control unidimensional
Mediante el esquema anterior se obtiene, nuevamente, la direccin de descenso U
0

= P
0

,
aunque recordemos que en este caso no estamos hallando el gradiente de J

. Esta aproxi-
macin con pseudogradientes es muy habitual en el diseo ptimo en la aeronutica, en la
que los esquemas usados suelen ser no diferenciables.
Para nalizar esta seccin, introduciremos un esquema basado en la transformacin
de Cole-Hopf que presentamos al inicio de este captulo. El inconveniente de esta, por el
que la investigacin por esta va no ha sido muy productiva, es que la funcin (x, 0) puede
hacerse enorme o tremendamente pequea, por lo que muchos lenguajes de programacin
no podran manejarla correctamente. Sin embargo, autores como Ohwada, del que hemos
tomado este mtodo (cf. [33]), han desarrollado alternativas para poder emplear dicha
transformacin sin problemas de precisin.
En el caso citado se observa que, tomando los tamaos de paso temporal y espacial
adecuados, se puede determinar el valor de la solucin en cada nodo solamente con el valor
de (x, 0) en un entorno de este. Sin entrar en grandes detalles, bastara con tener en
cuenta el decaimiento exponencial en los trminos de los integrandos. As pues, solamente
quedara pendiente la aproximacin de la condicin inicial. Ohwada considera tres tipos de
interpolaciones polinmicas, de manera que las integrales pueden calcularse analticamente.
Nosotros consideraremos nicamente la de polinomios cbicos a trozos, que con la notacin
habitual queda:
u(x
j
+, 0)
U
0
j+1
2U
0
j
+U
0
j1
(x)
2

3
+
U
0
j+1
U
0
j1
2x
+U
0
j
, 0 < < x (4.27)
con la que se obtiene el siguiente esquema:
U
n+1
j
= u
n
j
+
s
1
t +s
2
t
2
+s
3
t
3
+s
4
t
4
k
0
+k
1
t +k
2
t
2
+k
3
t
3
+k
4
t
4
(4.28)
donde
s1 = 6ab + 12c
2
, s
2
= (18ab
2
+ 6a
2
c) + 24bc
2
,
s3 = 18ab
3
+ 12b
2
c
2
, a
4
bc 6(ab
4
+a
2
b
2
c)
k
0
= 6, k
1
= 24b, k
2
= (36b
2
+ 6ac),
k
3
= a
3
c + (24b
3
+ 12abc), k
4
= a
3
bc + 6(b
4
+ab
2
c),
(4.29)
siendo
a = U
n
j
, b =
U
n
j+1
U
n
j1
2x
, c =
U
n
j+1
2U
n
j
+U
n
j1
(x)
2
(4.30)
4.2.4. Implementacin
Ahora que ya disponemos de las herramientas numricas necesarias para resolver el
problema de optimizacin, vamos a detallar el algoritmo que emplearemos para calcular la
solucin. En el apndice A se incluye el cdigo de Matlab completo empleado para obtener
los resultados, mientras damos en el pseudocdigo (Burgers) de la pgina siguiente un
esquema sencillo de los pasos a seguir.
4.2. Problema de control 33
Pseudocdigo Burgers
Entrada: Condicin inicial u
0
, tiempo nal T, funcin objetivo u
d
y parmetros de la dis-
cretizacin (paso temporal dt, intervalo espacial [a,b], grosor del mallado dx, esquemas
numricos...) y del mtodo del gradiente (paso inicial ep, aumento ap>1, disminucin
an<1, tolerancias...).
1: Inicializacin:
2: u0 u
0
(a,a+dx, ...,bdx,b) // Discretizacin de la condicin inicial
3: uT u
d
(a,a+dx, ...,bdx,b) // Discretizacin de la funcin objetivo
4: solverburgers Esquema numrico para la ecuacin de Burgers
5: solveradj Esquema numrico para el adjunto
6: Fin Inicializacin
7: u solverburgers(u0) // Solucin de la ecuacin de Burgers
8: pT u(T,)-uT
9: p solveradj(pT,u) // Solucin del adjunto
10: func
1
2
dx

k
[uT(k)u(T,k)]
2
// Valor del funcional
11: gtv p(0,) // Valor del gradiente del funcional
12: resid (

k
gtv(k)
2
)
1
2
// Residuos
13: iter 0 // Contador de iteraciones
14: Mientras log(func) >tol y ep<epmin hacer
15: iter iter+1
16: u0new u0epgtv
17: u solverburgers(u0)
18: funcn
1
2
dx

k
[uT(k)u(T,k)]
2
19: Si func>funcn entonces
20: func funcn
21: ep epap
22: u0 u0new
23: pT u(T,)-uT
24: p solveradj(pT,u)
25: gtv p(0,)
26: Si no
27: ep epan
28: Fin Si
29: Fin Mientras
30: Devolver u0
Salida: Aproximacin u
0

del ptimo (sin garanta de que sea global) del funcional J

.
34 Captulo 4. Aplicaciones: Problema de control unidimensional
4.3. Resultados
A continuacin, presentaremos los resultados obtenidos en las simulaciones. A n de
poder comparar los distintos mtodos, trabajaremos con los mismos parmetros de la dis-
cretizacin. As, salvo que indiquemos lo contrario, consideraremos t = 0,05 y t = 0,005
y el dominio [a, b] [0, T] = [4, 4] [0, 1]. En cuanto a la condicin inicial y funcin ob-
jetivo elegidas, tomaremos siempre funciones como las vistas en el problema de Riemann
en el apartado 2.4:
Condicin inicial u
0
(x; u
0
l
, u
0
r
, c
0
) =
_
u
0
l
si x < c
0
u
0
r
si x > c
0
Funcin objetivo:
Si u
d
l
> u
d
r
u
d
(x; u
d
l
, u
d
r
, c
d
) =
_
u
d
l
si x < c
d
u
d
r
si x > c
d
Si u
d
l
< u
d
r
u
d
(x; u
d
l
, u
d
r
) =
_

_
u
d
l
si x < u
d
l
x si u
d
l
< x < u
d
r
u
d
r
si x > u
d
r
Recordemos que para la condicin inicial u
0
, la nica solucin entrpica es una de las dos
anteriores, dependiendo de los valores de u
0
l
y u
0
r
(y teniendo en cuenta que t = 1). Adems,
en el mtodo del gradiente, como condiciones de paro usaremos el valor del funcional J

y un tamao de paso mnimo


n
= 10
16
. En este partiremos siempre del paso
0
= 1 y
lo modicaremos multiplicndolo por 1,2 o por 0,5 en funcin de que el cambio realizado
en la anterior iteracin sea aceptable o no.
Primero, empezaremos considerando el caso en que se genera una onda de rarefac-
cin, es decir, aquel en el que u
0
l
< u
0
r
. Tomaremos, por ejemplo, u
0
l
= 0 y u
0
r
= 1, con el
salto en c
0
= 0,5. Nuestro objetivo ser conseguir u
d
(x; 0,5, 2) en t = 1.
Figura 4.3: A la derecha, el valor de la aproximacin de u en t = 1. A la
izquierda, la condicin inicial ptima obtenida. Criterio de paro: J

< 10
4
.
4.3. Resultados 35
Figura 4.4: A la derecha, el valor de la aproximacin de u en t = 1. A la
izquierda, la condicin inicial ptima obtenida. Criterio de paro: J

< 10
4
.
Como vemos, el esquema de Lax-Friedrichs es el que devuelve la solucin ms ines-
table. De hecho, como podremos ver a continuacin, es el que mayor nmero de iteraciones
necesita para conseguir una precisin aceptable. Los otros dos son mucho ms rpidos y
ofrecen soluciones menos oscilantes, aunque el de Roe se queda estancado en un mnimo
local.
J

10
3
10
4
10
5
10
6
10
7
10
8
Lax-Friedrichs 7 71 >10000
Osher 4 5 8 24 197 >10000
Roe 4 5 8 24 129 No se alcanza
Cuadro 4.1: Nmero de iteraciones necesarias para alcanzar el valor del funcional indicado
y evolucin del logaritmo de este en las 1000 primeras iteraciones.
36 Captulo 4. Aplicaciones: Problema de control unidimensional
El segundo experimento que realizaremos ser uno que tenga una onda de choque.
Para ello, tomaremos u
0
l
= 2, u
0
r
= 1 y c
0
= 0. Vamos a tratar de conseguir alcanzar
u
d
(x; 1, 0, 1).
Figura 4.5: A la derecha, el valor de la aproximacin de u en t = 1. A la izquierda,
la condicin inicial ptima obtenida. Criterio de paro: J

< 10
4
, salvo para Lax-
Friedrichs, que paramos en la iteracin 5000.
De nuevo, nos encontramos con soluciones muy oscilantes, con un comportamiento
similar al caso de la onda de rarefaccin. Cabe destacar que la discontinuidad hace que
la precisin que se puede obtener por el mtodo del gradiente ya no sea la misma que
en el primer experimento, lo cual coincide con lo que habamos predicho al presentar los
esquemas numricos.
4.3. Resultados 37
J

10
3
10
4
10
5
10
6
10
7
Lax-Friedrichs 10 >10000
Osher 5 27 115 555 >10000
Roe 7 30 No se alcanza
Cuadro 4.2: Nmero de iteraciones necesarias para alcanzar el valor del funcional indicado
y evolucin del logaritmo de este en las 1000 primeras iteraciones.
Finalmente, realizaremos un ltimo experimento, usando el esquema propuesto por
Ohwada para aproximar la solucin de la ecuacin de Burgers. Dado que no se conoce
ningn esquema anlogo para resolver el sistema adjunto, haremos uso de uno de los
conservativos que ya hemos empleado. En concreto, elegiremos el de Osher, por ser el que
mejores resultados ha arrojado hasta ahora. Esto no nos garantiza que la direccin de
descenso escogida sea la ptima, pero tambin debera devolver soluciones aceptables.
Como parmetros usaremos = 10
5
y, siguiendo la sugerencia planteada en el pro-
pio artculo [33], introduciremos en el algoritmo de clculo una modicacin que aumente
localmente la viscosidad cuando exista el riesgo de que aparezcan oscilaciones en la solucin.
En cuanto a los problemas, volveremos a considerar los dos planteados anteriormente.
Figura 4.6: Solucin para el problema de la onda de rarefaccin. A la derecha, el
valor de la aproximacin de u en t = 1. A la izquierda, la condicin inicial ptima
obtenida. Criterio de paro: J

< 10
4
.
38 Captulo 4. Aplicaciones: Problema de control unidimensional
Figura 4.7: Solucin para el problema de la onda de choque. A la derecha, el valor
de la aproximacin de u en t = 1. A la izquierda, la condicin inicial ptima
obtenida. Criterio de paro: J

< 10
4
.
Como se muestra en la tabla siguiente, el nmero de iteraciones necesarias mejora,
incluso, el del esquema de Osher. Sin embargo, esto se consigue a costa de emplear ms
tiempo en cada iteracin, ya que el esquema de Ohwada es ms lento. Adems, el algoritmo
alcanza un mnimo local en ambos casos. Por tanto, podra resultar interesante tratar de
obtener un esquema para el sistema adjunto que garantizara una direccin de descenso
adecuada.
J

10
3
10
4
10
5
Experimento 1 4 8 No se alcanza
Experimento 2 5 15 No se alcanza
Captulo 5
Aplicaciones: Comportamiento
asinttico multi-dimensional
En esta segunda aplicacin de las leyes de conservacin, vamos a considerar una
ecuacin escalar de conveccin-difusin con un trmino no lineal. Esta vendr dada de la
siguiente forma:
_
u
t
u = a (H(u)) en R
N
(0, )
u(x, 0) = u
0
(x) en R
N
(5.1)
donde a R
N
es un vector constante, H (
1
(R) tal que H(0) = 0 y u
0
/
1
(R
N
).
Esta ecuacin es un modelo para el efecto regularizador de la viscosidad en una ley de
conservacin hiperblica. Aparece, por ejemplo, en el desplazamiento de un uido a travs
de un medio poroso cuando se tiene en cuenta la capilaridad (cf. [4]) o en la contaminacin
entre lotes en el transporte mediante tuberas al usar la tcnica de produccin discontinua
(cf. [39]).
En esta ocasin, a diferencia del captulo anterior, nos interesa el comportamiento
de la ecuacin cuando el tiempo transcurrido es muy grande. Sobre este tema hay numerosa
bibliografa, entre las que podemos destacar [1], [6], [13] y [14].
A pesar de que los resultados son para dimensin N cualquiera, a la hora de realizar
las simulaciones, nosotros nos centraremos en un caso particular de estas, tomando N = 2,
a = (1, 0) y H(u) = [u[
q1
u, con q (1, ). La razn de considerar el caso bidimensional
es meramente prctico, puesto que nos interesa poder visualizar los resultados, mientras
que la eleccin de H responde al inters de estudiar una no linealidad homognea y el
diferente comportamiento de la solucin en funcin del exponente q. Cabe sealar tambin
que, salvo que se indique lo contrario, cuando nos reramos a (5.1), estaremos considerando
H(u) = [u[
q1
u.
Empezaremos comprobando que (5.1) se trata, en efecto, de una ley de conser-
vacin. Despus enunciaremos y demostraremos resumidamente los principales resultados
que trataremos de capturar numricamente. Finalmente, concretaremos el problema bi-
dimensional descrito anteriormente, lo aproximaremos numricamente y recogeremos los
resultados obtenidos en las simulaciones.
40 Captulo 5. Aplicaciones: Comportamiento asinttico multi-dimensional
5.1. Ley de conservacin
Lo primero que podemos observar en la ecuacin es que se trata, efectivamente, de
una ley de conservacin, ya que se conserva la masa de la solucin a lo largo del tiempo.
Podemos integrar la ecuacin en R
N
con respecto a las variables espaciales:
_
R
N
u
t
dx
_
R
N
udx =
_
R
N

x
([u[
q1
u) dx (5.2)
Ahora bien:
En el primer sumando, podemos sacar la derivada fuera:
_
R
N
u
t
dx =
d
dt
_
R
N
udx (5.3)
Los otros dos sumandos son nulos. Para probarlo, dado que la ecuacin (5.1) genera un
semigrupo de contracciones en /
1
(R
N
) (vase la proposicin 5.1 ms adelante), ser
suciente con vericarlo para un conjunto denso de funciones; por ejemplo, aquellas
que son (

de soporte compacto. Una vez demostrado para estas, se extiende a todo


J
2,1
(R
N
) por densidad.
Ahora, en el caso de las mencionadas funciones test, se tiene:
_
R
N
udx = lm
R
_
B
R
udx
= lm
R
_

_
B
R
0 udx +
_
B
R
u nd
_
= 0
(5.4)
donde B
R
es una bola abierta de radio R centrada en el origen con frontera B
R
y n es el vector normal a B
R
. En la segunda igualdad hemos aplicado integracin
por partes y la ltima igualdad es cierta ya que, siendo el soporte de las funciones
compacto, podemos encontrar un radio lo sucientemente grande para el que u se
anula en el exterior de la correspondiente bola y, por tanto, su gradiente tambin.
Del mismo modo:
_
R
N
a (H(u)) dx = lm
R
_
B
R
a (H(u)) dx
= lm
R
_

_
B
R
H(u)( a) dx +
_
B
R
aH(u) nd
_
= 0
(5.5)
donde hemos vuelto a aplicar integracin por partes. La integral sobre la frontera de
la bola tambin es nula, ya que H(0) = 0 y H (
1
(R
N
), por lo que H es localmente
Lipschitz y siempre podremos encontrar un radio sucientemente grande para que
[H(u)[ [u[, que se anular en el exterior de la correspondiente bola.
Por lo tanto, tal y como habamos enunciado, la solucin conserva su masa a lo
largo del tiempo:
d
dt
_
R
N
u(x, t) dx = 0 (5.6)
5.2. Resultados analticos existentes 41
y, en concreto:
_
R
N
u(x, t)dx =
_
R
N
u
0
(x)dx, t > 0 (5.7)
De aqu en adelante, denotaremos por M R esa masa constante.
De hecho, tambin podemos reescribir la ecuacin en (5.1) para que adquiera la for-
ma con la que denamos las leyes de conservacin en la introduccin. Como u = div(u),
tenemos:
0 = u
t
u a (H(u))
= u
t
div(u) + div(a H(u))
= u
t
+ div(u a H(u))
(5.8)
que es, precisamente, la forma de ecuacin que presentbamos en (1.1) con
Q(u) = u a H(u).
En las simulaciones que realicemos ser importante conseguir observar esta propie-
dad de conservatividad, que es, de hecho, la ms importante entre las que estudiaremos en
este trabajo, puesto que es la caracterstica principal en las leyes de conservacin.
5.2. Resultados analticos existentes
Adems de la conservacin de la masa, la ecuacin de conveccin-difusin (5.1)
cumple otras propiedades, relacionadas con su comportamiento asinttico y la distribucin
de la masa a lo largo del tiempo. En este apartado, enunciaremos las ms destacadas y
daremos una prueba esquemtica de alguno de ellos, haciendo referencia en cada caso a
la fuente original en la que encontrar las demostraciones completas. Por comodidad, en
muchos casos omitiremos la dependencia espacial de u e, incluso, la temporal, denotando
simplemente u(t) u(x, t) o u u(x, t).
Tal y como veremos ms adelante, el decaimiento de la norma usual | |
p
(con
1 p ) de la ecuacin cuando t puede ser estimado de manera general sin
depender del valor de q. Sin embargo, podemos observar un comportamiento distinto en
las soluciones de (5.1) en funcin de este parmetro. En realidad, podemos distinguir tres
casos:
El valor q = 1 + 1/N marca la frontera entre los distintos comportamientos. Para
dicho valor, la ecuacin admite soluciones autosemejantes de la forma
u(x, t) = t

N
2
f
_
x

t
_
(5.9)
siendo f una funcin en /
1
(R
N
). En [1, 13, 14] se demuestra que dicha funcin es la
nica solucin de
f
x f
2

N
2
f = a ([f[
1/N
f), x R
N
(5.10)
42 Captulo 5. Aplicaciones: Comportamiento asinttico multi-dimensional
de manera que
_
R
N
f(x)dx = M. Por tanto:
t
N
2

1
1
p

|u(x, t) MG(x, t)|


p
0 cuando t 0 (5.11)
donde G(x, t) = (4t)
N/2
e
|x|
2
/4t
es el ncleo del calor.
Para q > 1 + 1/N, el sistema presenta un comportamiento denominado dbilmente
no lineal. La tasa de decrecimiento de la solucin es fuerte y tambin cumple (5.11),
ya que cuando t , como se prueba en [13, 14], esta se comporta como el ncleo
del calor lineal.
El valor q < 1+1/N es el que depara mayores cambios, ya que la difusin desaparece
en la direccin de la conveccin a cuando t . El comportamiento asinttico de
la solucin viene dado por las soluciones entrpicas autosemejantes de la siguiente
ecuacin hiperblico-parablica:
_
u
t

u =
x
1
([u[
q1
u), x R
N
(0, )
u(x, 0) = M, x R
2
(5.12)
donde

es el laplaciano en todas las variables espaciales salvo x


1
. Estamos ante un
comportamiento fuertemente no lineal y, sin embargo, como veremos ms adelante, se
puede obtener una estimacin que indica que la velocidad de decaimientos es mayor
en este caso. Esto puede encontrarse en [12].
En cualquier caso, como decamos, independientemente del valor de q, existe una
estimacin del decaimiento de las soluciones de la ecuacin en /
p
(R
N
), para p [1, ].
Una proposicin previa nos permitir despus probar un teorema al respecto.
Proposicin 5.1. Supongamos que H (
1
(R) y H(0) = 0. Entonces, para todo dato
inicial u
0
/
1
(R
N
)/

(R
N
) existe una nica solucin u (([0, ); /
1
(R
N
))/

(R
N

(0, )). Esta solucin verica u (((0, ); J


2,p
(R
N
)) (
1
((0, ); /
p
(R
N
)) para todo
p (1, ).
Adems, si u y v son soluciones de (5.1) correspondientes a datos iniciales u
0
, v
0

/
1
(R
N
) /

(R
N
), se tiene
|u(t) v(t)|
1
|u
0
v
0
|
1
, t > 0 (5.13)
por lo que (5.1) genera un semigrupo de contracciones en /
1
(R
N
).
De esta manera, adems de la existencia y unicidad de solucin, ya tenemos la
primera estimacin del decaimiento para la norma ||
1
. La demostracin puede encontrarse
en [14]. El siguiente teorema, tambin probado detalladamente en el citado artculo, nos
da la generalizacin del decaimiento para toda norma | |
p
con p [1, ].
Teorema 5.1. Para todo p [1, ], existe una constante positiva C
p
= C(p, N) > 0 tal
que:
|u(t)|
p
C
p
|u
0
|
1
t

N
2
(1
1
p
)
, t > 0 (5.14)
para toda solucin de (5.1) con dato inicial u
0
/
1
(R
N
) /

(R
N
), siendo | |
p
la norma
usual en /
p
(R
N
).
5.2. Resultados analticos existentes 43
Dem. Para el caso p = 1, basta tomar v(x, t) = v
0
(x) = 0 (x, y) R
N
y C
1
= 1 para
obtener la estimacin correspondiente a la norma | |
1
.
Consideremos ahora el caso p (1, ). Si multiplicamos la ecuacin en (5.1) por
[u[
p2
u e integramos en R
N
, obtenemos:
1
p
d
dt
_
R
N
[u(t)[
p
dx + (p 1)
_
R
N
[u(t)[
2
[u(t)[
p2
dx =
_
R
N

x
(Q
p
(u(t)))dx (5.15)
donde
Q
p
(z) =
_
z
0
H

(s)[s[
p2
sds (5.16)
En la propia demostracin de la proposicin 5.1 se comprueba que la integral a la derecha
de la igualdad en (5.15) es nula, por lo que podemos deducir:
1
p
d
dt
_
R
N
[u(t)[
p
dx +
4(p 1)
p
2
_
R
N
[([u(t)[
p/2
)[
2
dx = 0 (5.17)
Por otro lado, en [14] se prueba que para todo p > 1 existe una constante
C = C(p, N) > 0 tal que para todo v J
2,p
(R
N
) /
1
(R
N
) se tiene
|v|
(N(p1)+2)p
N(p1)
p
C|v|
2p
N(p1)
1
|([v[
p/2
)|
2
2
(5.18)
Combinando (5.17) y (5.18), obtenemos:
d
dt
(|u(t)|
p
p
) +
4(p 1)
Cp
|u(t)|
(N(p1)+2)p
N(p1)
p
|u(t)|
2p
N(p1)
1
0 (5.19)
de donde
d
dt
(|u(t)|
p
p
) +
4(p 1)
Cp
|u
0
|
2p
N(p1)
1
|u(t)|
N(p1)+p
N(p1)
p
0 (5.20)
Finalmente, se puede comprobar que las soluciones no negativas de la desigualdad
diferencial

(t) +((t))

0, t > 0 (5.21)
con > 0 y > 1 satisfacen
(t) (( 1)t)
1
1
, t > 0 (5.22)
por lo que, al aplicarlo para (5.20) y simplicando, llegamos a que
|u(t)|
p
|u
0
|
1
_
8
NCp
_

N
2
(1
1
p
)
t

N
2
(1
1
p
)
(5.23)
donde tomaremos C
p
=
_
8
NCp
_

N
2
(1
1
p
)
.
Nos queda probar el caso p = , puesto que no nos vale tomar el lmite en la
anterior constante. Para ello consideremos la desigualdad (5.18) para p = 2 (que, por
44 Captulo 5. Aplicaciones: Comportamiento asinttico multi-dimensional
densidad, puede extenderse a todo v 1
1
(R
N
) /
1
(R
N
)) y la igualdad (5.17) para
p = 2q. Entonces:
d
dt
(|u(t)|
2q
2q
) +
2(2q 1)
Cq
|u(t)|
2q(N+2)
N
2q
|u(t)|
4q
N
1
0 (5.24)
Multiplicando (5.1) por [u[
q2
u, se llega fcilmente a que |u(t)|
q
|u
0
|
q
, t > 0 y
q [1, ]. Usando eso en la expresin anterior y aplicando (5.22), se sigue que
|u(t)|
2q

_
NCq
4(2q 1)
_N
4q
|u
0
|
q
t

N
4q
(5.25)
y, como q/(2q 1) 1, deducimos que
|u(t)|
2q

_
NC
4
_N
4q
|u
0
|
q
t

N
4q
(5.26)
Ahora bien, (5.1) es invariante con respecto a traslaciones en t, por lo que la expresin
anterior se puede generalizar a
|u(t +s)|
2q

_
NC
4
_N
4q
|u(t)|
q
s

N
4q
(5.27)
En particular, dado > 0, eligiendo s = 2
(n+1)
y q = 2
n
, obtenemos
|u(t +2
(n+1)
)|
2
n+1
_
NC
4
_
2
(n+2)
N
2
N(n+1)2
(n+2)
|u(t)|
2
n (5.28)
Finalmente, por iteracin se concluye que
|u((2
1
+... + 2
n
))|
2
n+1 C
n
|u
0
|
1
(5.29)
con
C
n
=
_
NC
4
_
N
n1

j=0
2
(j+2)
(2

N
2
)
n1

j=0
(j+1)2
(j+1)
(5.30)
Pero, como 2
1
+... + 2
n
1 y |u(t)|

|u
0
|

t > 0, concluimos que


|u()|
2
n+1 C
n
|u
0
|
1
(5.31)
Basta tomar el lmite n para obtener:
|u()|

|u
0
|
1

N
2
(5.32)
con C

=
_
NC
4
_
N
2
.
As pues, queda demostrado el teorema, con C
1
= 1, C
p
=
_
8
NCp
_

N
2
(1
1
p
)
para
p (1, ) y C

=
_
NC
4
_
N
2
.
5.3. Aproximaciones numricas 45
El teorema anterior recoge el comportamiento asinttico de (5.1), independiente-
mente del valor q del trmino de conveccin. Sin embargo, hay un caso particular en el
que todava puede obtenerse una mejor acotacin del decaimiento. El siguiente teorema se
demuestra en [12] para funciones no negativas y en general en [6]:
Teorema 5.2. Dado cualquier dato inicial u
0
/
1
(R
N
), existe una constante positi-
va que depende continuamente sobre |u
0
|
1
tal que la solucin de la ecuacin (5.1) con
a = (1, 0, ..., 0) y H(u) = [u[
q1
(1 < q 2) verica:
|u(t)|

C(|u
0
|
1
)t

N+1
2q
, t > 0 (5.33)
Tambin es posible obtener una estimacin para el decaimiento del gradiente de
la solucin de (5.1). La demostracin del siguiente teorema, que nos proporciona dicho
acotacin, tambin puede encontrarse en [14].
Teorema 5.3. Para todo p [1, ], existe una constante positiva C
p
= C(p, N) > 0 tal
que:
|u(t)|
p
C
p
|u
0
|
1
t

N
2
(1
1
p
)
1
2
, t > 0 (5.34)
para toda solucin de (5.1) con dato inicial u
0
/
1
(R
N
) /

(R
N
), siendo | |
p
la norma
usual en /
p
(R
N
).
Como ya hemos dicho, en nuestras simulaciones intentaremos conseguir que num-
ricamente se observen las propiedades que hemos enunciado en esta seccin.
5.3. Aproximaciones numricas
Una vez planteados el problema y los resultados analticos concernientes a este, va-
mos a proceder a plantear el problema variacional que nos permitir obtener las aproxima-
ciones numricas mediante elementos nitos. Como ya habamos comentado inicialmente,
consideraremos nicamente el caso bidimensional, con conveccin solamente en la direccin
de uno de los ejes y para H(u) = [u[
q1
u; es decir:
_
u
t
u =
x
1
([u[
q1
u) en R
2
(0, )
u(x
1
, x
2
, 0) = u
0
(x
1
, x
2
) en R
2
(5.35)
Es sencillo comprobar que el trmino de la conveccin puede expresarse tambin
como (q[u[
q1
, 0) u, siempre que u sea lo sucientemente regular. As pues, se trata de
una ecuacin con trminos similares a los que aparecan en (3.53), por lo que el mtodo de
caractersticas-Galerkin puede sernos til para simular la solucin de (5.35).
Siguiendo los pasos descritos en la seccin 3.2, primero multiplicaremos (5.35) por
una funcin test v 1
1
0
(R
2
) e integraremos sobre R
2
. Por simplicidad, denotaremos por
< u, v >

el producto escalar
_

uv dx:
< u
t
, v >
R
2 < u, v >
R
2=< (q[u[
q1
, 0) u, v >
R
2 (5.36)
46 Captulo 5. Aplicaciones: Comportamiento asinttico multi-dimensional
Ahora podemos reordenar la ecuacin, de manera que podamos aplicar el mtodo
de las caractersticas.
< u
t
+ (q[u[
q1
, 0) u, v >
R
2 + < u, v >
R
2= 0 (5.37)
El primer sumando ser el que aproximemos usando las curvas caractersticas, mientras
que sobre el segundo aplicaremos directamente integracin por partes para aproximar la
solucin mediante elementos nitos:
< D
t
u, v >
R
2 + < u, v >
R
2= 0 (5.38)
donde D
t
u := u
t
+ (q[u[
q1
, 0) u es la derivada convectiva. Por lo tanto, el problema
variacional consistir en encontrar u tal que para todo v 1
1
0
(R
2
) se cumpla:
_
< D
t
u, v >
R
2 + < u, v >
R
2= 0, t > 0
u(x
1
, x
2
, 0) = u
0
(x
1
, x
2
)
(5.39)
Para realizar la aproximacin numrica, primero vamos a discretizar la ecuacin en
la variable tiempo. Si t es el tamao del paso temporal, denotaremos u
n
:= u(x
1
, x
2
, nt)
la aproximacin de u en (x
1
, x
2
) R
2
en el instante t = nt, siendo n = 0, 1, 2, ... As,
obtenemos la semidiscretizacin:
< D
t
u
n
, v >
R
2 + < u
n
, v >
R
2= 0 (5.40)
Siguiendo, tal y como habamos comentado anteriormente, el mtodo de las caractersticas-
Galerkin, aproximaremos la derivada convectiva mediante las curvas caractersticas:
<
u
n+1
u
n
(X
n
)
t
, v >
R
2 + < u
n+1
, v >
R
2= 0 (5.41)
donde X
n
es la aproximacin de la curva caracterstica, que se dene de la siguiente manera:
_
dX
d
(; t, x
1
, x
2
) = (q[u(X(; t, x
1
, x
2
), )[
q1
, 0)
X(t; t, x
1
, x
2
) = (x
1
, x
2
)
(5.42)
Por comodidad, denotaremos x = (x
1
, x
2
) y X = (X
1
, X
2
). En la seccin 3.2.2 tombamos
la siguiente aproximacin:
X
n
(x) = (x
1
q[u
n+1
(x)[
q1
t, x
2
) (5.43)
Sin embargo, esta nos nos permitira aprovechar el comando convect que ofrece
FreeFem++. Es por ello por lo que intentaremos buscar una segunda aproximacin. Por
un lado, haciendo un desarrollo de Taylor y usando que X(t
n+1
; t
n+1
, x) = x tenemos:
u
n
(X(t
n
; t
n+1
, x)) = u
n
(x) t
2

k=1
u
n
x
k
(x)
X
k
t
(t
n+1
; t
n+1
, x) +O(t
2
)
= u
n
(x) t (q[u
n
(x)[
q1
, 0) u
n
(x) +O(t
2
)
(5.44)
5.4. Implementacin 47
Por otro, si en el instante t
n+1
consideramos u
n
(x) jo, obtenemos:
u
n
(x
1
+ t q[u
n
(x)[
q1
, x
2
) = u
n
(x) t (q[u
n
(x)[
q1
, 0) u
n
(x) +O(t
2
) (5.45)
As pues, podemos tomar la aproximacin:
u
n
(X
n
(x)) = u
n
(x
1
q[u
n
(x)[
q1
t, x
2
) (5.46)
que es, precisamente, la que nos ofrece FreeFem++ con convect([q[u[
q1
, 0], t, u
n
).
Por lo tanto, el esquema semidiscreto sobre el que aplicaremos el mtodo de ele-
mentos nitos ser:
_
1
t
< u
n+1
, v >
R
2
1
t
< u
n
(X
n
), v >
R
2 + < u
n+1
, v >
R
2= 0
X
n
(x
1
, x
2
) = (x
1
q[u
n
(x
1
, x
2
)[
q1
t, x
2
)
(5.47)
con n = 0, 1, 2, ... y con u
0
(x) = u
0
(x).
Siguiendo los pasos mencionados en 3.2.1, ahora tenemos que denir el espacio de
funciones V
h
sobre el que tomaremos nuestras aproximaciones. Nosotros trabajaremos con
elementos nitos P
1
y P
2
, que por ser conformes verican V
h
V = 1
1
0
(R
2
). Sea
h
una
triangulacin del dominio espacial, siendo h la longitud del lado ms largo de los tringulos
de
h
. Entonces, el problema variacional discreto consiste en determinar u
h
V
h
tal que
para todo v
h
V
h
:
_
1
t
< u
n+1
h
, v
h
>

h

1
t
< u
n
h
(X
n
h
), v
h
>

h
+ < u
n+1
h
, v
h
>

h
= 0
X
n
h
(x
1
, x
2
) = (x
1
q[u
n
h
(x
1
, x
2
)[
q1
t, x
2
)
(5.48)
5.4. Implementacin
Una vez obtenidas todas las herramientas numricas necesarias, solamente nos queda
implementar el mtodo en un ordenador. Como ya habamos anunciado, para realizar estas
simulaciones nos hemos decantado por el software de libre distribucin FreeFem++, creado
por Olivier Pironneau et al. (cf. [22]). Se trata de un producto integrado con su propio
lenguaje de programacin de alto nivel, basado en el mtodo de elementos nitos y que es
tremendamente verstil, de ah nuestra eleccin.
En el apndice A se incluye el cdigo completo empleado para obtener los resultados.
No obstante, en la siguiente pgina damos un resumen esquematizado de los pasos ms
importantes realizados.
La ventaja de FreeFem++ es que ya tiene implementadas la mayora de las opera-
ciones que mencionamos. Por ejemplo, la generacin de mallas se puede realizar automti-
camente, basndose en el algoritmo de Delaunay-Voronoi, sin ms que indicar la cantidad
de nodos en la frontera del dominio. As mismo, tambin cuenta con numerosos tipos de
elementos nitos triangulares y una funcin de adaptacin de malla. En los experimentos
aprovecharemos todas esas posibilidades, a n de lograr la mayor eciencia posible.
48 Captulo 5. Aplicaciones: Comportamiento asinttico multi-dimensional
Pseudocdigo Conv-Dif
Entrada: Condicin inicial u
0
, exponente q y parmetros de la discretizacin (paso tem-
poral t, tiempo nal T, malla espacial, espacio de elementos nitos...).
1: Inicializacin:
2: q q // Exponente de la no-linealidad
3: dt t // Paso temporal
4: M parte_entera(T/t) // Nmero de pasos temporales
5: Th generar_malla(n
o
de nodos,dominio) // Malla inicial
6: Vh generar_FE(malla,tipo FE) // Espacio de elementos nitos
7: Fin Inicializacin
8: Th adaptar(Th,u0) // Adaptacin manual de la malla
9: uold u
0
// Proyectar u
0
sobre la malla Th
10: convdiff Problema variacional
11: Para m=1 hasta m=M hacer
12: t mdt // Tiempo
13: u solucionar(convdiff,uold,dt) // Solucin en dt con uold inicial
14: Th adaptar(Th,u,error) // Adaptacin de la malla con un error mximo
15: mostrar(u) // Representar grcamente u en t
16: normas norma(u,[1, 2, ]) // Calcular las normas 1, 2 e de u en t
17: u remuestrear(u,Vh) // Remuestrear u en la nueva malla Th
18: u uold // Condicin inicial para el siguiente paso
19: Fin Para
20: Devolver u, normas
Salida: Aproximacin u
h
de la solucin de la ecuacin 5.35 y sus normas.
5.5. Experimentos y resultados 49
5.5. Experimentos y resultados
A continuacin resumiremos los distintos experimentos computacionales realizados,
detallando la condicin inicial escogida, as como los parmetros de la discretizacin. Res-
pecto a lo primero, vamos a considerar dos funciones distintas:
1. Una funcin regular:
u
1
0
(x, y) = 2 exp
_

1
4
_
x
2
+y
2
_
_
con (x, y) R
2
(5.49)
2. Una funcin indicatriz:
u
2
0
(x, y) =
[2,2][4,4]
(x, y) =
_
1, si (x, y) [2, 2] [4, 4]
0, en otro caso
(5.50)
Ambas funciones estn en /
1
(R
2
) /

(R
2
), por lo que estamos en las condiciones
del teorema 5.1. Es decir, que en ambos experimentos deberamos obtener un decaimiento
de las normas de la solucin de (5.35) segn la armacin de dicho teorema.
Otro parmetro que tenemos que escoger es el exponente de la no linealidad. Tal y
como hemos visto en la seccin 5.2, el comportamiento de la solucin es diferente en funcin
del valor de q respecto de la dimensin del problema. En nuestro caso, estamos trabajando
con la ecuacin bidimensional, el cambio lo marcar q = 3/2, por lo que optaremos por
tres valores de q representativos de las tres situaciones que se pueden plantear: q
1
= 1,25
para el intervalo (1, 3/2); q
2
= 3/2 y q
3
= 2 para el intervalo (3/2, ).
En cuanto a la discretizacin del problema, lo primero que podemos observar es que
necesitamos acotar tanto el dominio espacial como el intervalo temporal, a n de poder
trasladarlo al ordenador. Para lo segundo no hay mayor inconveniente, ya que nuestro
mtodo es iterativo, por lo que podemos ejecutarlo hasta el instante que deseemos. A
n de visualizar correctamente la evolucin de las soluciones, optaremos por truncar en
T = 100 o T = 1000, dependiendo de las necesidades. El tamao del paso, salvo que
indiquemos lo contrario, ser t = 0,1.
La acotacin del dominio espacial, en cambio, es ms delicada, puesto que gran par-
te de los resultados analticos se basan, precisamente, en el hecho de que el problema est
planteado en todo R
2
. Sin embargo, teniendo en cuenta las condiciones iniciales elegidas y
el comportamiento de estas descrito en 5.2, podemos elegir un rectngulo sucientemen-
te grande en cuya frontera la solucin ser nula durante el periodo de tiempo escogido.
As, tomaremos distintos tamaos de rectngulos, dependiendo tambin del objetivo de la
simulacin.
Por ltimo, tal y como adelantbamos en la seccin 5.3, recordemos que empleare-
mos dos tipos de elementos nitos: P
1
y P
2
.
50 Captulo 5. Aplicaciones: Comportamiento asinttico multi-dimensional
Lo primero que podemos observar en los experimentos (g. 5.1) es el veloz decai-
miento al que se ve sometido la funcin. Tanto u
1
0
como u
2
0
pierden rpidamente su cota
mxima inicial (2 y 1 respectivamente), para tender a cero rpidamente. Dado que se trata
de una ley de conservacin, esto se traduce en que el soporte (compacto) de ambas tambin
se expande en la misma proporcin, pues la masa ha de repartirse.
Figura 5.1: Condicin inicial u
1
0
(superior izquierda) y aproximacin de u en t = 5
para q = 1,25 (superior derecha), q = 1,5 (inferior izquierda) y q = 2. El dominio
es [20, 20]
2
y el tipo de elementos nitos, P
2
.
Hay que sealar tambin el efecto regularizante de laplaciano de (5.35) (ver g.
(5.2)). En el caso de u
1
0
apenas se nota, pues la propia funcin es regular. En el otro caso,
en cambio, a pesar de la discontinuidad inicial, tras la primera iteracin obtenemos ya una
funcin suave que poco tiene que ver con los saltos que haba inicialmente.
Figura 5.2: Aproximacin de u con condicin inicial u
2
0
en t = t para q = 1,25
(superior derecha), q = 1,5 (inferior izquierda) y q = 2. El dominio es [20, 20]
2
y el tipo de elementos nitos, P
2
.
En ese sentido, otro hecho a destacar es la inuencia del trmino de conveccin.
Como mencionbamos en la seccin 5.2, la solucin tena un comportamiento ms similar
al ncleo de Gauss si q > 3/2 y del tipo hiperblico para q < 3/2. Esto podemos verlo
reejado en las grcas de (5.3), en las que en el primer caso la solucin se estabiliza rpi-
damente en torno a un punto, mientras que en el segundo caso el soporte se va desplazando
5.5. Experimentos y resultados 51
progresivamente, siendo la difusin en el sentido del eje de las x marcado por la conveccin.
Figura 5.3: Aproximacin de u con condicin inicial u
2
0
en t = 10 y t = 100 para
q = 1,25 y q = 2 (de izquierda a derecha y de arriba a abajo). El dominio es
[200, 200]
2
y el tipo de elementos nitos, P
1
.
En cuanto a las normas de las soluciones y el decaimiento enunciado en el teorema
5.1, en las siguientes grcas podremos ver cmo las aproximaciones numricas tambin
capturan bien esa propiedad. Adems, quedar patente que las discontinuidades de la
condicin inicial no tienen por qu afectar a la solucin del problema.
Por un lado, en la gura 5.4 vemos que la norma | |
1
prcticamente se conserva,
lo cual va en consonancia con el teorema. Adems, puesto que se trata de una funcin
no negativa, dicha norma coincide con la integral de la solucin sobre el dominio espacial
(recordemos, la magnitud conservada, como veamos en (5.6)). Adems, este resultado es
independiente del valor de q.
En las siguientes grcas (ver g. 5.5) podemos comprobar que la norma | |
2
igualmente se comporta como era de esperar, teniendo un decaimiento proporcional a t

1
2
.
Tambin mostramos el comportamiento de la norma | |

(g. 5.6). Al igual que en los


casos anteriores, observamos que tras un breve intervalo de tiempo, la solucin pasa a tener
un decaimiento segn lo esperado por el teorema 5.1. No obstante, cabe indicar que el el
52 Captulo 5. Aplicaciones: Comportamiento asinttico multi-dimensional
caso particular de q < 3/2, la cota an puede mejorarse, como veamos en el teorema
5.2. Sin embargo, no ha sido posible lograr un esquema que consiga capturar elmente ese
comportamiento.
Figura 5.4: Norma | |
1
de u(, t) para u
1
0
(izquierda) y u
2
0
. El dominio es
[200, 600] [200, 200] y el tipo de elementos nitos, P
2
.
Figura 5.5: Norma | |
2
de u(, t) para u
1
0
(izquierda) y u
2
0
. El dominio es
[200, 600] [200, 200] y el tipo de elementos nitos, P
2
.
Figura 5.6: Norma | |
I
nf de u(, t) para u
1
0
(izquierda) y u
2
0
. El dominio es
[200, 600] [200, 200] y el tipo de elementos nitos, P
2
.
5.5. Experimentos y resultados 53
Finalmente, presentamos en la gura 5.7 la evolucin de las normas del gradiente
de la solucin aproximada. Como podemos apreciar, todas ellas se mantienen de acuerdo
al teorema 5.3.
Figura 5.7: Normas del gradiente de u(, t) para u
1
0
(izquierda) y u
2
0
. El dominio
es [200, 600] [200, 200] y el tipo de elementos nitos, P
2
.
Captulo 6
Conclusiones y trabajo futuro
A lo largo de este trabajo hemos podido comprobar que las leyes de conservacin
aparecen en numerosas aplicaciones, sobre todo, de la fsica y la ingeniera. Por ello, supone
un gran reto conseguir mimetizar numricamente las propiedades que estas puedan tener
a nivel analtico, de cara a poder realizar simulaciones de fenmenos reales que permitan
realizar predicciones, estimaciones, ensayos...
Tal y como veamos en el captulo 2, uno de los grandes problemas al que uno debe
enfrentarse a la hora de simular soluciones de este tipo de ecuaciones en derivadas parciales
es la aparicin de ondas de choques. Disear esquemas numricos que sean capaces de
aproximar estas correctamente sin disparar el coste computacional resulta tremendamente
complicado. Nosotros hemos presentado algunos de ellos en el captulo 3, haciendo hincapi
en las ventajas e inconvenientes de cada uno de ellos.
En el caso de los esquemas para simular la ecuacin de Burgers, hemos visto que no
todos los descritos realizan una correcta aproximacin en el entorno de las discontinuidades.
Estas producen oscilaciones en varios de los casos, como en el de Lax-Friedrichs; otros, en
cambio, suavizan en cierto modo esos saltos a n de no sufrir perturbaciones. En cualquier
caso, sera interesante generar algoritmos que fueran capaces de detectar las ondas de
choque para poder darles un tratamiento distinto al de los intervalos en los que la solucin
es continua. En el captulo 4 ya hemos hecho mencin a algunos artculos en los que
se implementan ese tipo de alternativas para el caso unidimensional de la ecuacin de
Burgers. Sin embargo, todas ellas incrementan el coste computacional considerablemente
y no son fcilmente generalizables a dimensiones mayores. En ese sentido, podra resultar
de gran inters desarrollar otras tcnicas que agilizaran los mtodos ya existentes, usando,
por ejemplo, las ideas de [41] en el establecimiento del tamao del paso en el mtodo del
gradiente o, como ya hemos mencionado anteriormente, creando un esquema basado en el
de Ohwada para el sistema adjunto.
En cuanto a las simulaciones realizada en el captulo 5, hemos podido visualizar
las propiedades asintticas que posee la ecuacin de conveccin-difusin tratada en el caso
bidimensional. La discretizacin empleada nos ha permitido aproximar elmente muchos de
los resultados tericos, aunque no nos ha sido posible conseguir el decrecimiento adecuado
para la norma | |

en el caso q (1, 2]. Obtener un esquema numrico que capte esa


propiedad y realizar un anlisis del error cometido son dos opciones a considerar para
futuros trabajos.
En resumen, hemos realizado un recorrido por los aspectos bsicos de las leyes de
56 Captulo 6. Conclusiones y trabajo futuro
conservacin, resaltando lo importante que es, desde el punto de vista prctico, poder re-
coger las caractersticas que presentan sus soluciones. Como ejemplo de dicha necesidad,
hemos presentado dos ejemplos con los que comprender las dicultades que entraan este
tipo de ecuaciones en derivadas parciales, tanto desde la perspectiva de ecacia compu-
tacional como de la precisin. En cualquier caso, se trata de problemas an abiertos y con
un gran peso en numerosas aplicaciones prcticas, por lo que todava quedan muchos pasos
que dar en trabajos futuros.
Apndice A
Cdigo empleado
A.1. Cdigo de Matlab
A continuacin presentamos el cdigo bsico empleado para realizar en Matlab las
simulaciones correspondientes al captulo 4. Primero incluimos el programa principal y
despus, los cheros auxiliares con las diferentes funciones con los esquemas de resolucin
numrica y las condiciones iniciales y nales.
Fichero A.1: Programa principal main.m
1 % Programa principal para la resolucion del problema de
2 % optimizacion de la ecuacion de Burgers.
3
4 cl ear a l l ; cl c ;
5
6 % Parametros del problema
7 T=1; % Tiempo final
8 condini=u0_riemann ; % Condicion inicial
9 salto =0.; % Punto de discontinuidad
10 ul=2.; % Valor a la izquierda del salto
11 ur=1.; % Valor a la derecha del salto
12 condobj=ud_riemann ; % Solucion objetivo
13 saltod =-1.; % Punto de discontinuidad
14 uld =1.; % Valor a la izquierda del salto
15 urd =0.; % Valor a la derecha del salto
16
17 % Parametros de la discretizacion
18 N=159; % Numero de nodos espaciales
19 dx=8./(N+1); % Grosor del mallado
20 x=-4:dx:4; % Vector de nodos espaciales
21 mu=0.1; % Cociente dt/dx
22 dt=mu*dx; % Tamano de paso temporal
23 Nt= f l oor (T/dt); % Numero de pasos temporales
24 T=(Nt+1)*dt; % Nuevo tiempo final
25 t=0:dt:T; % Vector de tiempos
26
27 % Parametros del mtodo del gradiente
28 ep=1; % Paso inicial
29 ap=1.2; % Aumento del paso
58 Apndice A. Cdigo empleado
30 an=0.5; % Disminucion del paso
31
32 % Especificacion de esquemas empleados
33 solverburgers=sol_osher ;
34 solveradj=adj_osher ;
35
36 % Calculo de las condiciones inicial y objetivo
37 u0= f eval (condini ,x,ul,ur,salto);
38 uu0=u0;
39 uT= f eval (condobj ,x,uld ,urd ,saltod );
40
41 % Solucion de la ecuacion de Burgers y del sistema adjunto
42 % con la condicion inicial dada
43 u= f eval (solverburgers ,u0,dx,dt ,Nt ,N);
44 pT=u(Nt+2,:)-uT;
45 p= f eval (solveradj ,pT,u,mu,Nt,N);
46
47 % Calculo del gradiente del funcional
48 g(1)=.5* dx*sum((uT-u(Nt +2 ,:)).^2);
49 func=g(1);
50 gtv=p(1,:);
51
52 % Optimizacion por el metodo del gradiente
53 iter =0;
54 aviobj = avifile(burgers1.avi,fps ,20);
55 f i gure (5);
56 pl ot (x,uT ,b,LineWidth ,2);
57 hold on;
58 pl ot (x,u(end,:),r,LineWidth ,2);
59 hold off;
60 ylim([ -1. ,2.5]);
61 legend(Objetivo ,Aproximacin ,1);
62 frame = getframe(gca);
63 aviobj = addframe(aviobj ,frame);
64
65 while (l og(g(end))>-6 && ep >1.e-16 && iter <10000)
66 iter=iter +1;
67 u0new=u0 -ep*(gtv);
68 u= f eval (solverburgers ,u0new ,dx ,dt ,Nt ,N);
69 funcn =.5*dx*sum((uT-u(Nt +2 ,:)).^2);
70 i f funcn <func
71 f i gure (5);
72 pl ot (x,uT ,b,LineWidth ,2);
73 hold on;
74 pl ot (x,u(end,:),r,LineWidth ,2);
75 hold off;
76 ylim([ -1. ,2.5]);
77 legend(Objetivo ,Aproximacin ,1);
78 frame = getframe(gca);
79 aviobj = addframe(aviobj ,frame);
80 func=funcn;
A.1. Cdigo de Matlab 59
81 ep=ep*ap;
82 u0=u(1 ,:);
83 pT=u(Nt+2,:)-uT;
84 p = f eval (solveradj ,pT,u,mu,Nt,N);
85 gtv = p(1 ,:);
86 el s e
87 ep=ep*an;
88 end
89 g=[g funcn ];
90 disp([Iteracin num2str(iter) ...
91 - log(g)= num2str(l og(g(end)))]);
92 end
93 aviobj = cl ose (aviobj)
94
95 % Graficas de los resultados
96 f i gure (1);
97 pl ot (l og(g),b,LineWidth ,2);
98 f i gure (2);
99 pl ot (x,uu0 ,b,LineWidth ,2);
100 hold on;
101 pl ot (x,u(1,:),r,LineWidth ,2);
102 hold off;
103 f i gure (3);
104 pl ot (x,uT ,b,LineWidth ,2);
105 hold on;
106 pl ot (x,u(Nt+2,:),r,LineWidth ,2);
107 hold off;
Fichero A.2: Esquema de Lax-Friedrichs para la ecuacin de Burgers (sol_laxfri.m)
1 % Esquema de LaxFriedrichs
2 functi on u = sol_laxfri(u0,dx ,dt ,Nt ,N)
3 mu=dt/dx;
4 u=zeros (Nt+2,N+2);
5 u(:,1)=u0(1)* ones(Nt+2,1);
6 u(:,N+2)=u0(N+2)* ones(Nt+2,1);
7 u(1,:)=u0;
8 f or k=1:Nt+1
9 f or j=2:N+1
10 u(k+1,j)=.5*(u(k,j-1)+u(k,j+1)) ...
11 -mu/4*((u(k,j+1))^2 -(u(k,j -1))^2);
12 end
13 end
14 return
Fichero A.3: Esquema de Enquist-Osher para la ecuacin de Burgers (sol_osher.m)
1 % Esquema de Osher
2 functi on u = sol_osher(u0,dx ,dt ,Nt ,N)
60 Apndice A. Cdigo empleado
3 mu=dt/dx;
4 u=zeros (Nt+2,N+2);
5 u(:,1)=u0(1)* ones(Nt+2,1);
6 u(:,N+2)=u0(N+2)* ones(Nt+2,1);
7 u(1,:)=u0;
8 f or k=1:Nt+1
9 f or j=2:N+1
10 fp =0.25*(u(k,j)*(u(k,j)+abs(u(k,j))) ...
11 +u(k,j+1)*(u(k,j+1)-abs(u(k,j+1))));
12 fm =0.25*(u(k,j -1)*(u(k,j-1)+abs(u(k,j -1))) ...
13 +u(k,j)*(u(k,j)-abs(u(k,j))));
14 u(k+1,j)=u(k,j)-mu*(fp-fm);
15 end
16 end
17 return
Fichero A.4: Esquema de Murman-Roe para la ecuacin de Burgers (sol_roe.m)
1 % Esquema de Roe
2 functi on u = sol_roe(u0,dx,dt ,Nt ,N)
3 mu=dt/dx;
4 u=zeros (Nt+2,N+2);
5 u(:,1)=u0(1)* ones(Nt+2,1);
6 u(:,N+2)=u0(N+2)* ones(Nt+2,1);
7 u(1,:)=u0;
8 f or k=1:Nt+1
9 f or j=2:N+1
10 flp =0.25*(u(k,j)*u(k,j)+u(k,j+1)*u(k,j+1));
11 flm =0.25*(u(k,j-1)*u(k,j-1)+u(k,j)*u(k,j));
12 flrp =0.25*abs(u(k,j)+u(k,j+1))*(u(k,j+1)-u(k,j));
13 flrm =0.25*abs(u(k,j-1)+u(k,j))*(u(k,j)-u(k,j -1));
14 fp=flp -flrp;
15 fm=flm -flrm;
16 u(k+1,j)=u(k,j)-mu*(fp-fm);
17 end
18 end
19 return
Fichero A.5: Esquema de Ohwada para la ecuacin de Burgers (sol_chB.m)
1 % Esquema de Ohwada
2 functi on u=sol_chB(u0,dx,dt,Nt,N)
3 nu =0.00001;
4 C1=1;
5 C2=1.5;
6 u=zeros (Nt+2,N+2);
7 u(1,:)=u0(:);
8 u(:,1)=u0(1);
9 u(:,N+2)=u0(N+2);
A.1. Cdigo de Matlab 61
10 f or n=1:Nt+1
11 nuloc=nu;
12 f or k=2:N+1
13 bp=(u(n,k+1)-u(n,k))/dx;
14 bm=(u(n,k)-u(n,k -1))/dx;
15 i f (bp*bm <0 || (abs(bp)>C2*dx && abs(bm)>C2*dx))
16 nuloc=C1*dx;
17 end
18 a=u(n,k);
19 b=(u(n,k+1)-u(n,k -1))/(2* dx);
20 c=(u(n,k+1) -2*u(n,k)+u(n,k -1))/( dx)^2;
21 S=[0,...
22 -6*a*b*nuloc +12*c*nuloc^2,...
23 (-18*a*b^2+6*a^2*c)* nuloc +24*b*c*nuloc^2,...
24 -18*a*b^3* nuloc +12*b^2*c*nuloc^2,...
25 -a^4*b*c-6*(a*b^4+a^2*b^2*c)*nuloc];
26 K=[6* nuloc ,...
27 24*b*nuloc ,...
28 (36*b^2+6*a*c)*nuloc ,...
29 a^3*c+(24*b^3+12*a*b*c)*nuloc ,...
30 a^3*b*c+6*(b^4+a*b^2*c)* nuloc];
31 T=[1;dt;dt^2;dt^3;dt^4];
32 u(n+1,k)=u(n,k)+(S*T)/(K*T);
33 end
34 end
35 return
Fichero A.6: Esquema de Lax-Friedrichs para el adjunto de la ecuacin de Burgers
(adj_laxfri.m)
1 % Adjunto de LaxFriedrichs
2 functi on p = adj_laxfri(pT,u,mu ,Nt ,N)
3 p=zeros (Nt+2,N+2);
4 p(:,1)=pT(1)* ones(Nt+2,1);
5 p(:,N+2)=pT(N+2)* ones(Nt+2,1);
6 p(Nt+2,:)=pT;
7 f or k=Nt+2: -1:2
8 f or j=2:N+1
9 p(k-1,j)=.5*(p(k,j-1)+p(k,j+1)) ...
10 -mu/2*(u(k-1,j))*(p(k,j-1)-p(k,j+1));
11 end
12 end
13 return
Fichero A.7: Esquema de Enquist-Osher para el adjunto de la ecuacin de Burgers
(adj_osher.m)
1 % Adjunto de Osher
2 functi on p = adj_osher(pT,u,mu ,Nt ,N)
62 Apndice A. Cdigo empleado
3 p=zeros (Nt+2,N+2);
4 p(:,1)=pT(1)* ones(Nt+2,1);
5 p(:,N+2)=pT(N+2)* ones(Nt+2,1);
6 p(Nt+2,:)=pT;
7 f or k=Nt+2: -1:2
8 f or j=2:N+1
9 i f u(k-1,j)>0
10 p(k-1,j)=p(k,j)...
11 -mu*u(k-1,j)*(p(k,j)-p(k,j+1));
12 el s e
13 p(k-1,j)=p(k,j)...
14 -mu*u(k-1,j)*(p(k,j-1)-p(k,j));
15 end
16 end
17 end
18 return
Fichero A.8: Esquema de Murman-Roe para el adjunto de la ecuacin de Burgers
(adj_roe.m)
1 % Adjunto de Roe
2 functi on p = adj_roe(pT,u,mu ,Nt ,N)
3 p=zeros (Nt+2,N+2);
4 p(:,1)=pT(1)* ones(Nt+2,1);
5 p(:,N+2)=pT(N+2)* ones(Nt+2,1);
6 p(Nt+2,:)=pT;
7 f or k=Nt+2: -1:2
8 f or j=2:N+1
9 Ap =0.5*(u(k,j+1)+u(k,j));
10 Am =0.5*(u(k,j)+u(k,j -1));
11 alpha =0.5*( Ap*p(k,j)+Am*p(k,j-1)) ...
12 -0.5*(abs(Am)*p(k,j-1)-abs(Ap)*p(k,j));
13 beta=0.5*( Ap*p(k,j+1)+Am*p(k,j))...
14 -0.5*(abs(Am)*p(k,j)-abs(Ap)*p(k,j+1));
15 p(k-1,j)=p(k,j)-mu*(alpha -beta);
16 end
17 end
18 return
Fichero A.9: Condicin inicial del problema de Riemann (u0_riemann.m)
1 % Condicion inicial del problema de Riemann
2 functi on u0=u0_riemann(x,ul ,ur ,c)
3 u0=0*x;
4 u0(x<c)=ul;
5 u0(x>=c)=ur;
6 return
A.2. Cdigo de FreeFem++ 63
Fichero A.10: Funcin objetivo (ud_riemann.m)
1 % Funcion objetivo para el problema de Riemann
2 functi on ud=ud_riemann(x,ul ,ur ,c)
3 i f ul >ur
4 ud=0*x;
5 ud(x<c)=ul;
6 ud(x>=c)=ur;
7 el s e
8 s=(ul+ur)/2;
9 ud=x;
10 ud(x<ul)=ul;
11 ud(x>ur)=ur;
12 end
13 return
A.2. Cdigo de FreeFem++
A continuacin presentamos el cdigo bsico empleado para realizar en FreeFem++
las simulaciones correspondientes al captulo 5. Se trata de un nico chero que almacena
las normas de la solucin en un chero .dat ubicado en el mismo directorio que el cdigo.
Fichero A.11: Fichero principal conv-diff.edp
1 // Opciones de visualizacion
2 verbosity =0;
3 i nt vdim =2; // Imagenes 2D (vdim=2) o 3D (vdim=3)
4
5 // Parametros del problema
6 real q=1.25;
7 i nt u0=1; // C.I.: u_0^1 (u0=1) o u_0^2 (u0=2)
8 real x0,y0 ,a,b,c;
9
10 // Parametros de la discretizacion
11 // Dominio : rectangulo [L1l1,L1+l1]x[L1l1,L1+l1]
12 real L1=800,L2=400,l1=L1/4, l2=L2/2;
13 // Nodos por lado
14 real n1=L1/2,n2=L2/2;
15 // Tiempo final y tamano de paso
16 real T=1000 , dt =0.1;
17 // Contador de iteraciones y numero de pasos temporales
18 i nt m, M=floor(T/dt);
19 // Generacion de la malla
20 mesh Th=square(n1 ,n2 ,[L1*x-l1,L2*y-l2]);
21 // Generacion del espacio de elementos finitos (P1/P2)
22 fespace Vh(Th ,P2);
23
24 // Definicion de variables y funciones
64 Apndice A. Cdigo empleado
25 real mass; // Magnitud conservada
26 real unorm1 ,unorm2 ,unormInf; // Normas de u
27 real gradnorm1 ,gradnorm2 ,gradnormInf; // Normas de grad(u)
28 real t; // Tiempo
29 Vh u,v,uold ,uaux1 ,uaux2; // Funciones sobre el mallado
30
31 // Discretizacion de la condicion inicial y adaptacion de la
32 // malla a esta
33 i f (u0==1) {
34 // Condicion u_0^1
35 x0=0.;
36 y0=0.;
37 a=0.25;
38 b=0.25;
39 c=2.;
40 func box=abs(x-x0)*abs(x-x0)/a+abs(y-y0)*abs(y-y0)/b<=1;
41 func meshsize =50. -(50. -50.^ -5)* box;
42 plot(Th,wait =1);
43 Th=adaptmesh(Th ,meshsize ,ratio =1.7);
44 plot(Th,wait =1);
45 Th=adaptmesh(Th ,meshsize ,ratio =1.2);
46 plot(Th,wait =1);
47 uold=c*exp(-a*(x-x0)^2-b*(y-y0)^2);
48 } el s e {
49 // Condicion u_0^2
50 x0=0.;
51 y0=0.;
52 a=2.;
53 b=4.;
54 c=1.;
55 func box=((abs(x-x0)<=a)&(abs(y-y0)<=b));
56 func meshsize =50. -(50. -50.^ -5)* box;
57 plot(Th,wait =1);
58 Th=adaptmesh(Th ,meshsize );
59 plot(Th,wait =1);
60 Th=adaptmesh(Th ,meshsize );
61 plot(Th,wait =1);
62 uold=c*((abs(x-x0)<=a)&( abs(y-y0)<=b));
63 };
64
65
66 // Definicion del problema variacional discreto
67 problem convdiff(u,v)=
68 // (u^{n+1},v)/dt + (grad u^{n+1},grad v)
69 int2d(Th)(u*v/dt+dx(u)*dx(v)+dy(u)*dy(v))
70 // (u^n(xq|u^n|^{q1},y),v)/dt
71 - int2d(Th)(
72 convect ([q*abs(uold )^(q-1.),0.],-dt,uold)*v/dt);
73
74 // Fichero de exportacion de las normas
75 ofstream normas("normas_u0"+u0+"_q"+100*q+".dat");
A.2. Cdigo de FreeFem++ 65
76
77 // Resolucion del problema
78 real cpustart=clock ();
79 // Dibujo y normas de la condicion inicial
80 plot(uold ,value=1,dim=2,fill=1,boundary=0,
81 cmm="u0: a="+a+", b="+b+", c="+c+", (x0 ,y0)="
82 +x0+","+y0+")");
83 plot(uold ,value=1,dim=vdim ,fill=1,boundary=0,
84 cmm="q="+q+", t=0");
85 mass=int2d(Th)(uold);
86 unorm1=int2d(Th)(abs(uold ));
87 unorm2 =(int2d(Th)(uold*uold ))^(0.5);
88 unormInf=max(abs(uold [].max),abs(uold []. min));
89 gradnorm1=int2d(Th)(abs(dx(uold ))+ abs(dy(uold )));
90 gradnorm2 =( int2d(Th)(dx(uold)*dx(uold)+
91 dy(uold)*dy(uold )))^(0.5);
92 uaux1=dx(uold);
93 uaux2=dy(uold);
94 gradnormInf=max(max(abs(uaux1 [].max),abs(uaux1 [].min)),
95 max(abs(uaux2 [].max),abs(uaux2 []. min )));
96 normas << 0 << " " << unorm1 << " " << unorm2 << " "
97 << unormInf << " " << gradnorm1 << " " << gradnorm2
98 << " " << gradnormInf << " " << endl;
99 // Iteracion temporal
100 f or ( i nt m=1;m<=M;m++) {
101 // Calculo de la solucion y dibujo en el instante dado
102 t=m*dt;
103 convdiff;
104 cout << "t=" << t << endl;
105 plot(u,value=1,dim=vdim ,fill=1,boundary=0,
106 cmm="q="+q+", t="+t);
107 // Calculo y exportacion de las normas
108 unorm1=int2d(Th)(abs(u));
109 unorm2 =(int2d(Th)(u*u))^(0.5);
110 unormInf=max(abs(u[].max),abs(u[]. min ));
111 gradnorm1=int2d(Th)(abs(dx(u))+ abs(dy(u)));
112 gradnorm2 =( int2d(Th)(dx(u)*dx(u)+dy(u)*dy(u)))^(0.5);
113 uaux1=dx(u);
114 uaux2=dy(u);
115 gradnormInf=max(max(abs(uaux1 [].max),abs(uaux1 [].min)),
116 max(abs(uaux2 [].max),abs(uaux2 []. min )));
117 normas << m*dt << " " << unorm1 << " " << unorm2 << " "
118 << unormInf << " " << gradnorm1 << " "
119 << gradnorm2 << " " << gradnormInf << " " << endl;
120 // Adaptacion de la malla y remuestreo para la siguiente
121 // iteracion
122 Th=adaptmesh(Th ,u,err =0.1);
123 u=u;
124 uold=u;
125 };
126 // Tiempo computacional empleado
66 Apndice A. Cdigo empleado
127 real cpuend=clock ();
128 cout << " Tiempo CPU empleado = " << cpuend -cpustart << endl;
Bibliografa
[1] Aguirre, J., Escobedo, M., and Zuazua, E. Self-similar solutions of a convection-
diusion equation and related elliptic problems. Communications in Partial Dieren-
tial Equations 15, 2 (1990), 139157.
[2] Alberty, J., Carstensen, C., and Funken, S. Remarks around 50 lines of
matlab: Short nite element implementation. Numerical Algorithms 20 (1999), 117
137.
[3] Angrand, F., Dervieux, A., Desideri, J. A., and Glowinski, R., Eds. Nu-
merical methods for the Euler equations of uid dynamics. No. 21 in Proceedings in
Applied Mathematics. SIAM, 1985.
[4] Buckley, S. E., and Leverett, M. C. Mechanism of uid displacements in sands.
Petroleum Transactions, AIME 146 (1942), 107116.
[5] Buse, F. H. Euler equations in geophysics and astrophysics. Physica D: Nonlinear
Phenomena 237, 14-17 (August 2008), 21012110.
[6] Carpio, A. Large time behavior in convection-diusion equations. Annali della
Scuola Normale Superiore di Pisa - Classe di Scienze 23 (4), 3 (1996), 551574.
[7] Castro, C., Palacios, F., and Zuazua, E. An alternating descent method for
the optimal control of the inviscid burgers equation in the presence of shocks. Mat-
hematical Models and Methods in Applied Sciences 18, 3 (2008), 369416.
[8] Chen, G.-Q. G. Euler equations and related hyperbolic conservation laws. The
Handbook of Dierential Equations 2 (2005), 1104.
[9] Chen, G.-Q. G. Multidimensional conservation laws: Overview, problems, and pers-
pective. Nonlinear Conservation Laws and Applications 153, 1 (2011), 2372.
[10] Cole, J. D. On a quasilinear parabolic equation occurring in aerodynamics. Quarterly
of Applied Mathematics 9 (1951), 225236.
[11] Crandall, M. G., and Liggett, T. M. Generation of semi-groups of nonlinear
transformations on general banach spaces. American Journal of Mathematics 93, 2
(April 1971), 265298.
[12] Escobedo, M., Vazquez, J. L., and Zuazua, E. A diusion-convection equation
in several space dimensions. Indiana University Mathematics Journal 42, 4 (1993),
14131440.
[13] Escobedo, M., and Zuazua, E. Comportement asymptotique des solutions dune
quation de convection-diusion. Comptes rendus de lAcadmie des sciences 309
(1989), 329334.
68 Bibliografa
[14] Escobedo, M., and Zuazua, E. Large time behavior for convection-diusion equa-
tions in R
n
. Journal of Functional Analysis 100, 1 (August 1991), 119161.
[15] Evans, L. C. Partial dierential equations, second ed., vol. 19 of Graduate Studies
in Mathematics. American Mathematical Society, 2002.
[16] Glimm, J. Solutions in the large for nonlinear hyperbolic systems of equations. Com-
munications on Pure Applied Mathematics 18, 4 (November 1965), 697715.
[17] Glowinski, R. Numerical Methods for Fluids (Part 3), vol. IX of Handbook of nu-
merical analysis. North Holland, 2003.
[18] Godlewski, E., and Raviart, P.-A. Hyperbolic systems of conservation laws. No. 3
in Mathematiques & Applications. Ellipses, 1991.
[19] Godlewski, E., and Raviart, P.-A. The linearized stability of solutions of nonli-
near hyperbolic systems of conservation laws: A general numerical approach. Mathe-
matics and Computers in Simulation 50, 1-4 (November 1999), 7795.
[20] Godunov, S. K. A dierence scheme for numerical solution of discontinuous solution
of hydrodynamic equations. Matematicheskii Sbornik 47, 3 (1959), 271306.
[21] Hartman, P. Ordinary Dierential Equations, second ed., vol. 38 of Classics in
Applied Mathematics. SIAM, 2002.
[22] Hecht, F. FreeFem++, third ed. Laboratoire Jacques-Louis Lions.
[23] Hopf, E. The partial dierential equation u
t
+ uu
x
= u
xx
. Communications on
Pure and Applied Mathematics 3, 3 (September 1950), 201230.
[24] Hubbard, H. H., Ed. Aeroacoustics of Flight Vehicles - Theory and Practice (Volume
1, Noise Sources), vol. 1 of NASA Reference Publication. NASA, August 1991.
[25] Jameson, A. Transonic airfoil calculations using the euler equations. Proceedings
of IMA Conference on Numerical Methods in Aeronautical Fluid Dynamics (March
1981), 289308.
[26] Johnson, C. Numerical solution of partial dierential equations by the nite element
method. Cambridge University Press, 1987.
[27] Karimi-Fard, M., and Firoozabadi, A. Numerical simulation of water injection
in fractured media using the discrete-fracture model and the galerkin method. SPE
Reservoir Evaluation & Engineering 6, 2 (April 2003), 117126.
[28] Kru zkov, S. N. First order quasilinear equations in several independent variables.
Mathematics of the USSR-Sbornik 10, 2 (1970), 217243.
[29] Lam, S. H. Notes on classical sonic boom theory.
http://www.princeton.edu/mae/SHL/SonicBoom.pdf, March 2001.
Bibliografa 69
[30] Lax, P. D. Hyperbolic systems of conservation laws and the mathematical theory of
shock waves, vol. 11 of CBMS-NSF Regional Conference Series in Appiled Mathema-
tics. SIAM, 1973.
[31] LeVeque, R. J. Numerical Methods for Conservation Laws, second ed. Birkhuser
Verlag, 1992.
[32] Myong, R. S., and Roe, P. L. Shock waves and rarefaction waves in magne-
tohydrodynamics. part 1. a model system. Journal of Plasma Physics 58, 3 (1997),
485519.
[33] Ohwada, T. Cole-hopf transformation as numerical tool for the burgers equation.
Applied and Computational Mathematics 8, 1 (2009), 107113.
[34] Pelosi, G. The nite-element method, part i: R. l. courant [historical corner]. IEEE
Antennas and Propagation Magazine 49, 2 (April 2007), 180182.
[35] Pironneau, O. On the transport-diusion algorithm and its applications to the
navier-stokes equations. Numerische mathematik 38 (1982), 309332.
[36] Quarteroni, A., and Valli, A. Numerical Approximation of Partial Dieren-
tial Equations, second ed., vol. 23 of Springer Series in Computational Mathematics.
Springer-Verlag, 1996.
[37] Serre, D. Systems of conservation laws 1: hyperbolicity, entropies, shock waves,
third ed. Cambridge University Press, 2003.
[38] Skamarock, W. C., and Klemp, J. B. A time-split nonhydrostatic atmospheric
model for weather research and forecasting applications. Journal of Computational
Physics 227, 7 (March 2008), 34653485.
[39] Songsheng, D., and Jianing, P. Application of convection-diusion equation to
the analyses of contamination between batches in multi-products pipeline transport.
Applied Mathematics and Mechanics 19, 8 (August 1998), 757764.
[40] Sun, D., Lv, J., and Waller, S. T. In-depth analysis of trac congestion using
computational uid dynamics (cfd) modeling method. Journal of Modern Transpor-
tation 19, 1 (March 2011), 5867.
[41] van den Doel, K., and Ascher, U. M. The chaotic nature of faster gradient
descent methods. March 2010.

S-ar putea să vă placă și