'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos...

77
Universidad del País Vasco - Euskal Herriko Unibertsitatea Facultad de Ciencia y Tecnología Máster de Modelización Matemática, Estadística y Computación Proyecto de Fin de Máster Aspectos matemáticos y numéricos de algunas leyes de conservación escalares: aplicación al control Defendido por Alejandro Pozo Pazos Supervisado por Enrique Zuazua Iriondo

Transcript of 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos...

Page 1: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

Universidad del País Vasco - Euskal Herriko Unibertsitatea

Facultad de Ciencia y Tecnología

Máster de Modelización Matemática,Estadística y Computación

Proyecto de Fin de Máster

Aspectos matemáticos y numéricosde algunas leyes de conservaciónescalares: aplicación al control

Defendido por

Alejandro Pozo Pazos

Supervisado por

Enrique Zuazua Iriondo

Page 2: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter
Page 3: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

Agradecimientos

Me gustaría dar las gracias a todos aquellos que de uno u otro modo han contribuidoa que pudiera completar esta memoria. Ante todo, quiero darle las gracias al Basque Centerfor Applied Mathematics, por darme la oportunidad y las facilidades para realizar el mástery, 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, porinsistirme en ir a Benasque, donde encontré el ambiente de trabajo adecuado para poderredactar gran parte de este documento.

Quiero darles las gracias a Mehmet Ersoy y a Chiara Simeoni por sus explicacionesy su disponibilidad para resolver mis dudas. Tampoco quiero olvidarme de mis compañerosde BCAM, de mis amigos y de mi familia, quienes han hecho más llevadero el tiempo quehe 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 final del túnel que, por momentos,era incapaz de ver.

Este trabajo ha recibido el apoyo de la beca “Ecuaciones en Derivadas Parciales:Análisis, Control y Numérico”, con referencia PI2010-4, y la beca de formación de inves-tigadores de referencia BFI-2010-339, financiadas ambas por el Gobierno Vasco / EuskoJaurlaritza.

Page 4: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter
Page 5: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

Aspectos matemáticos y numéricos de algunas leyes de conservaciónescalares: aplicación al control

Resumen: En este trabajo recogemos los resultados básicos sobre leyes de conservaciónescalares y varios métodos numéricos para simularlas computacionalmente. Basándonosen dichas herramientas, analizamos dos ejemplos de leyes de conservación. Por un lado,estudiamos un problema de control sobre la condición inicial para la ecuación de Burgerscon el objetivo de alcanzar una determinada solución en un instante prefijado. Por otro,mediante el método de características-Galerkin, tratamos de simular algunos de los re-sultados analíticos existentes referentes al comportamiento asintótico de una ecuación deconvección-difusión no lineal.

Palabras clave: ley de conservación escalar, método de características-Galerkin, ecuaciónde Burgers, ecuación de convección-difusión, comportamiento asintótico.

Zenbait kontserbazio-legetako aspektu matematikoak eta numerikoak:kontrolerako aplikazioa

Laburpena: Lan honetan kontserbazio-legeei buruzko funtsezko emaitzak eta hauekkonputazionalki 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 bateansoluzio finko bat lortzeko helburuarekin. Bestetik, karakteristikak-Galerkin metodoa erabi-liz, konbekzio-difusio ekuazio ez lineal baten jokabide asintotikoari buruz dauden zenbaitemaitza 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 somenumerical methods for their computational simulation. Based on those tools, we analyzetwo examples of conservation laws. On the one hand, we study a control problem on theinitial condition for the Burgers equation, with the aim of achieving a fixed solution in agiven time. On the other, by using the characteristics-Galerkin method, we try to simulatesome of the existing analytical results referring to the asymptotic behavior of a non linearconvection-diffusion equation.

Keywords: scalar conservation law, characteristics-Galerkin method, Burgers equation,convection-diffusion equation, asymptotic behavior.

Page 6: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter
Page 7: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

Índice general

1. Introducción 1

2. Leyes de conservación escalares: herramientas analíticas 5

2.1. Soluciones clásicas y curvas características . . . . . . . . . . . . . . . . . . . 5

2.2. Soluciones débiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2.3. Soluciones entrópicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2.4. El problema de Riemann . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

3. Métodos numéricos 13

3.1. Esquemas conservativos: volúmenes finitos . . . . . . . . . . . . . . . . . . . 13

3.1.1. Motivación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

3.1.2. Conservatividad discreta . . . . . . . . . . . . . . . . . . . . . . . . . 15

3.1.3. Ejemplos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

3.2. Elementos finitos: características-Galerkin . . . . . . . . . . . . . . . . . . . 19

3.2.1. FEM: conceptos básicos . . . . . . . . . . . . . . . . . . . . . . . . . 19

3.2.2. Método Galerkin de las características . . . . . . . . . . . . . . . . . 23

4. Aplicaciones: Problema de control unidimensional 25

4.1. Ecuación de Burgers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

4.2. Problema de control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

4.2.1. Planteamiento formal . . . . . . . . . . . . . . . . . . . . . . . . . . 28

4.2.2. Optimización . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

4.2.3. Aproximaciones numéricas . . . . . . . . . . . . . . . . . . . . . . . . 30

4.2.4. Implementación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

4.3. Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

Page 8: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

vi Índice general

5. Aplicaciones: Comportamiento asintótico multi-dimensional 39

5.1. Ley de conservación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

5.2. Resultados analíticos existentes . . . . . . . . . . . . . . . . . . . . . . . . . 41

5.3. Aproximaciones numéricas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

5.4. Implementación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

5.5. Experimentos y resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

6. Conclusiones y trabajo futuro 55

A. Código empleado 57

A.1. Código de Matlab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

A.2. Código de FreeFem++ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

Bibliografía 67

Page 9: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

Capítulo 1

Introducción

Las leyes de conservación forman una parte muy importante de las ecuaciones enderivadas parciales, puesto que, como su nombre indica, incluyen aquellas ecuaciones quemodelan las leyes de conservación que surgen en la física. Se trata de leyes físicas segúnlas cuales ciertas magnitudes de un sistema se mantienen constantes a lo largo del tiempo.Ejemplos clásicos son la ley de conservación de la energía, la del momento, la de la masa...aunque cada vez surgen más modelos en otras muchas áreas (cf. [9]).

Matemáticamente, una ley de conservación puede expresarse de la siguiente forma.Sea u : Ω × [0,∞) −→ RM una función vectorial, que expresa el estado de un sistema encada punto x = (x1, ..., xN ) ∈ Ω ⊆ RN y en cada instante t ∈ [0,∞). Entonces, el sistemade ecuaciones es:

∂u

∂t+ div(Q(u)) = 0 (1.1)

donde Q : RN −→ RN es el flujo de u y la divergencia es en las variables espaciales.Todavía es posible formularlo de una manera más general, permitiendo fuerzas externas enel sistema (con términos no nulos en la parte derecha de la ecuación), pero por simplicidadnosotros supondremos que estamos en un sistema aislado.

Una representación 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) sobrecualquier 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 puedeinterpretarse como el balance entre la cantidad indicada por u y el flujo de este en lafrontera del dominio (de haber considerado fuerzas externas, también aparecerían en esebalance).

En cualquier caso, el objetivo de este trabajo es el de simular computacionalmentediversas situaciones que puedan darse con una clase concreta de leyes de conservación: lasescalares. Así pues, en las anteriores definiciones tomaremos M = 1, de manera que elsistema contará con una única ecuación.

Muchas situaciones reales dan lugar a la conservación de ciertas cantidades, porlo que se pueden modelar con este tipo de ecuaciones. Sin embargo, tras la aparienciasimple de (1.1) se esconden varias dificultades (sobre todo, como veremos en este trabajo,

Page 10: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

2 Capítulo 1. Introducción

la aparición de ondas de choque) con las que habrá que tener un especial cuidado a la horade desarrollar métodos numéricos para aproximar las soluciones. Por ello, es importanteconocer al máximo la estructura matemáticas de estas, a fin de poder usarlas para mejorarlas simulaciones.

Dada la relevancia del tema, hay numerosos resultados sobre la resolución analíticade las leyes de conservación; no solo sobre la existencia o unicidad de soluciones, sino tam-bién sobre las propiedades que estas puedan tener. En este trabajo recordamos brevementeun importante teorema de S. N. Kruzkov (cf. [28]), en el que se prueba la existencia yunicidad de las soluciones entrópicas (con sentido físico). Sin embargo, la trascendencia delcitado artículo fue más allá, debido a las técnicas empleadas en la demostración, que sehan reutilizado posteriormente en numerosas investigaciones.

En ese sentido, también cabe mencionar los resultados de Glimm (cf. [16]) sobre eldesarrollo de esquemas numéricos y la existencia y unicidad de soluciones globales y deMichael G. Crandall y T. M. Ligget (cf. [11]) sobre generación de semi-grupos. Pero, comodecíamos, la teoría sobre leyes de conservación no hubiera tenido tal envergadura de nohaber sido por el trasfondo que tiene, no solo en la física, sino también en diferentes áreasde la ingeniería como la dinámica de fluidos, la química, la aerodinámica...

De entre todos los modelos, cabe destacar las ecuaciones de Euler sobre la dinámicade gases, que han sido de las más recurridas a la hora de desarrollar métodos numéricos (cf.[3], [8]). Estas son una simplificación de las ecuaciones de Navier-Stokes, fundamentalesen la dinámica de fluidos, en las que no se tiene en cuenta la viscosidad (asunción quenormalmente puede hacerse con los gases), lo cual hace que tomen la forma (1.1). Lasecuaciones de Euler se emplean mucho, por ejemplo, en aerodinámica (por ejemplo, [25]),para reproducir el flujo de aire en torno a un avión u otro vehículo cualquiera, con el finde conseguir las mejores prestaciones en aspectos como la resistencia o la sustentación.

También aparecen leyes de conservación en la meteorología y la astrofísica (cf. [38],[5]), aunque a distinta escala. Los frentes de calor o las ramas de una galaxia con forma deespiral no son más que discontinuidades (siempre teniendo en cuenta la escala) en la presiónatmosférica o en la densidad de materia. Otros modelos representan el plasma en una fusiónnuclear (mediante las ecuaciones de la magnetohidrodinámica [32]), la densidad de tráficoen una carretera [40] o el flujo de múltiples fases en materiales porosos (por ejemplo, enla recuperación de petróleo mediante el bombeo de agua [27]). Un caso particular de esteúltimo problema es la ecuación de Buckley-Leverette [4], que modela la saturación de aguaen la arena o en una roca y, a diferencia de los sistemas presentados hasta ahora, se tratade única ecuación escalar.

A lo largo de este trabajo presentaremos otros dos ejemplos, también escalares, deleyes de conservación: la ecuación de Burgers y una ecuación de convección-difusión. En elcapítulo 4, plantearemos un problema de control sobre la condición inicial de la primeraecuación mencionada, de manera que haya que modificar esta para que la solución tengauna determinada forma en un instante de tiempo prefijado. En cuanto a la segunda, quetrataremos en el capítulo 5, nuestro objetivo es el de capturar numéricamente algunas de

Page 11: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

3

las propiedades del comportamiento asintótico que M. Escobedo y E. Zuazua presentaronen [13] y en [14].

En ambos casos, será importante que consigamos imitar las propiedades matemáti-cas que aparecen en la resolución analítica. Para ello, introduciremos los resultados básicosen el capítulo 2 sobre las leyes de conservación escalares y expondremos algunos de losmétodos numéricos existentes para la simulación de estas en el capítulo 3. Por último,analizaremos los dos problemas mencionados, para los que también resumiremos algunosde los resultados existentes que trataremos de mimetizar computacionalmente.

Page 12: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter
Page 13: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

Capítulo 2

Leyes de conservación escalares:herramientas analíticas

Esta sección está dedicada a la introducción a las leyes de conservación escalares. Enella mostraremos los principales resultados respecto a estas y que usaremos más adelanteen las aplicaciones. Nos vamos a centrar, sobre todo, en el caso unidimensional, aunque losresultados pueden extenderse, como así haremos en alguno de ellos, a dimensiones mayores.Para este capítulo 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 conservaciónescalares unidimensionales:

ut + F (u)x = 0, en R× (0,∞)

u = u0, en R× t = 0(2.1)

En él, las funciones F : R −→ R y u0 : R −→ R vienen dadas y u : R × [0,∞) −→ es lafunción incógnita.

2.1. Soluciones clásicas y curvas características

Una solución clásica del PVI es una solución de clase C1 para t > 0, continua parat ≥ 0 y que satisface (2.1) punto a punto. En particular, si u0 ∈ C1, la solución clásica estambién de clase C1 para t ≥ 0. Para evitar fenómenos relacionados con la velocidad depropagación infinita, supondremos que u0 está acotada en R. Consideremos también queel flujo F es de clase C∞ y denotemos f(u) = F ′(u).

Definición 2.1. Sea u ∈ C1 una solución de (2.1). Definimos las curvas características(o, simplemente, las características) en R× [0, T ] como las curvas t 7→ (X(t), t) dadas porla ecuación diferencial

dX(t)

dt= f(u(X(t), t)) (2.2)

La particularidad de las curvas características es que la solución u es constante a lolargo de ellas:

d

dtu(X(t), t) =

dX

dtux(X, t) + ut(X, t) = (ut + f(u)ux)(X, t) = 0

Page 14: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

6 Capítulo 2. Leyes de conservación escalares: herramientas analíticas

donde la última igualdad no es más que la aplicación de la ley de conservación. Así pues,u es constante a lo largo de cada X, tomando el valor u0(x0) con x0 el punto inicial (ent = 0) de la curva. Deducimos, además, que las curvas son rectas dadas por:

X(t) = x0 + t f(u0(x0)) (2.3)

Encontrar una solución clásica u para (2.1) se reducirá a resolver la ecuación algebraicax = x0+t f(u0(x0)) para cada (x, t) ∈ R×[0, T ] y tomar u(x, t) = u0(x0). Si u0 es continua,es sencillo probar la existencia de solución usando el teorema del valor medio, pero no sepuede garantizar la unicidad. La siguiente proposición concreta esto.

Proposición 2.1. Sea u0 ∈ C1(R) acotada y de derivada acotada. Sea

T ∗ =

+∞, si f u0 es creciente− 1

ınf(f u0)′ , en otro caso

Entonces, (2.1) tiene una única solución de clase C1 en R× [0, T ∗) y no puede extendersemás allá de T ∗.

Dem. Puede verse una demostración en [37].

Sin embargo, lo que más nos interesa es el hecho de que para la ley de conservaciónpuede existir un instante T ∗ en el que la solución clásica explota, en el sentido de quela solución puede dejar de ser continua, acotada... Por lo tanto, tendremos que relajar dealguna manera nuestras suposiciones iniciales si queremos encontrar soluciones de (2.1)para cualquier instante.

2.2. Soluciones débiles

En la forma en la que tenemos planteado el PVI, no tiene sentido que intentemosbuscar soluciones u que no sean diferenciables. Tendremos que transformarlo para que po-damos evitar la restricción de regularidad que habíamos impuesto en el apartado anterior.

La idea consiste en multiplicar la ecuación en (2.1) por una función regularv : R −→ [0,∞) de soporte compacto —v ∈ D(R× [0,∞)), que recibe el nombre de funcióntest— e integrar por partes, transfiriendo así las derivadas a v. De esa manera obtenemos:∫ ∞

0

∫ ∞−∞

uvt + F (u)vx dxdt+

∫ ∞−∞

u0 v|t=0 dx = 0 (2.4)

Definición 2.2. Diremos que u ∈ L∞(R × (0,∞)) es una solución débil de (2.1) si paratoda función test v ∈ D(R× [0,∞)) se cumple (2.4).

Se puede comprobar fácilmente que la definición de solución débil es una extensiónde la de solución clásica; toda solución clásica es, de hecho, solución débil. El recíproco,

Page 15: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

2.3. Soluciones entrópicas 7

en cambio, no siempre es cierto. Como ya hemos comentado, el concepto de solución débilincluye funciones que no son continuas.

A pesar de la relajación de las condiciones que debe verificar una solución, de (2.4)podemos deducir varias propiedades que cumplen las soluciones débiles. La primera de ellas,la condición de Rankine-Hugoniot, nos permitirá ubicar las discontinuidades que puedantener.

Proposición 2.2. (Condición de Rankine-Hugoniot) Sea ω ⊂ R× (0,∞) un abiertosobre el que u es regular a cada lado de una curva Γ contenida en ella, que denotamos porω− y ω+. Sean u±(x, t) el límite de u(y, s) cuando (y, s) tiende a (x, t) ∈ Γ y permaneceen ω±. Denotaremos por [[h]](x, t) = h+(x, t)− h−(x, t) el salto sobre Γ de una función hcontinua a trozos. Entonces, u es solución de (2.4) si y solo si satisface la ecuación puntoa punto en ω+ y en ω− y cumple la condición de salto [[u]]nt + [[F (u)]]nx = 0 a lo largode Γ, siendo n el vector unitario normal a Γ en (x,t).

Dem. La demostración 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 condiciónde 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 débiles es lapérdida de unicidad de soluciones. Dado que el interés de las leyes de conservación es lade modelar situaciones físicas reales, tendremos que imponer otras restricciones a fin deexcluir aquellas soluciones que carezcan de ese sentido físico.

2.3. Soluciones entrópicas

La definición de curva característica nos ofrecía una manera de calcular una fórmula(generalmente implícita) para las soluciones de la ley de conservación (2.1). Como decíamosinicialmente, esta teoría puede extenderse al caso multidimensional:

ut + F (u)x = 0, en RN × (0,∞)

u = u0, en RN × t = 0(2.6)

La solución u, suponiendo la regularidad suficiente, es constante a lo largo de estas, quevienen dadas por:

y(s) = (f(u0(x0))s+ x0, s), ∀s ≥ 0 (2.7)

Page 16: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

8 Capítulo 2. Leyes de conservación escalares: herramientas analíticas

La proposición 2.1 prueba que existe la posibilidad de que dos curvas característicasacaben cruzándose, provocando una discontinuidad en la solución al avanzar en el tiempo.En cambio, es de esperar que si estamos en un punto en RN × (0,∞) y retrocedemos en eltiempo a lo largo de una curva característica, 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 distintosvalores límite a izquierda y a derecha, ul y ur respectivamente. Si una característica decada lado va a parar a un punto de Γ, por (2.7) deducimos que

F ′(ul) > σ > F ′(ur) (2.8)

Estas desigualdades forman la condición de entropía. Puede verse como el análogo al prin-cipio de la termodinámica, que afirma que la entropía física no puede disminuir a medidaque 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 ecuación de Burgers que analizaremosen el capítulo 4), entonces esta condición se reduce a ur > ul.

Aprovechamos ahora para introducir el concepto de onda de choque. El estudio ycontrol de este tipo de curvas es una de las mayores prioridades a la hora de analizar leyesde conservación escalares.

Definición 2.3. Una curva de discontinuidad para u se denomina onda de choque sicumple las condiciones de Rankine-Hugoniot (2.5) y de entropía (2.8).

Volviendo al tema que nos ocupa, recordemos que estábamos buscando solucionesdébiles de (2.1) que tengan un sentido desde el punto de vista de la física. Para ello hemosdefinido la condición de entropía. Y es precisamente esta desigualdad la que nos garantiza,además, la unicidad de solución. En la literatura que vamos mencionando en este capítulopueden encontrarse diversas aproximaciones para la demostración de este hecho; nosotrosnos quedaremos con el teorema probado por Kruzkov.

La idea básica de Kruzkov consiste en suponer que u es el límite de una sucesiónfunciones uε que son solución de una generalización de las leyes de conservación, dadapor

ut + F (u)x = εuxx (2.9)

donde ε << 1 es un coeficiente no negativo relativo a la difusión. El problema de Cauchycorrespondiente a la ecuación anterior tiene una única solución que, además, satisface elprincipio del máximo. Si suponemos que uε → u en casi todo punto cuando ε → 0 (paralo cual solamente son necesarias hipótesis muy generales), tenemos el siguiente lema:

Lema 2.1. Supongamos que u0 ∈ Cb(R). Si uε(x, t)→ u(x, t) en casi todo Q = R× (0, T ],siendo uε solución de (2.9), entonces u es solución de (2.1).

Este nuevo punto de vista nos ofrece una generalización de la condición de entropíaque presentábamos anteriormente. Se trata de una teoría más general, que concierne a

Page 17: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

2.4. El problema de Riemann 9

sistemas de conservación hiperbólicos, pero que aplicaremos únicamente a ecuaciones es-calares. Esta, además de permitirnos reconocer la solución que tiene sentido físico de entretodas las soluciones débiles, nos garantizará la unicidad, además de la existencia.

Definición 2.4. Definimos un par entropía/flujo de entropía como una pareja (E,G)

de funciones regulares definidas en el espacio de estados de u para las que cada soluciónclásica de ut + F (u)x = 0 también satisface E(u)t +G(u)x = 0. En el caso de las leyes deconservación escalares, son aquellas que verifican G′ = fE.

La definición anterior, nos va a permitir enunciar la condición de entropía másgeneral que mencionábamos.

Proposición 2.3. (Condición de entropía) Bajo las mismas hipótesis que en el lema2.1, la solución u de (2.1) satisface la siguiente desigualdad para todo par de entropía/flujode entropía (E,G) con E continua y convexa:∫∫

Q(E(u)ϕt + F (u)ϕx) dxdt+

∫RE(u0(x))ϕ(x, 0)dx ≥ 0 (2.10)

para toda ϕ ∈ D(R× (−∞, T )) y ϕ ≥ 0.

Así, diremos que una solución débil u es una solución entrópica (o admisible) sisatisface la condición de entropía (2.10) para toda entropía continua y convexa E con flujoG. Puede comprobarse que, en efecto, la condición (2.8) no es más que un caso particularde este nuevo enunciado.

Tenemos ya las suficientes herramientas para enunciar el siguiente teorema, que,como habíamos anunciado inicialmente, nos garantiza la existencia y unicidad de la soluciónentrópica.

Teorema 2.1. (Teorema de Kruzkov) Para cada función u0 medible y acotada en R,existe una única solución entrópica de (2.1) en L∞(Q) ∩ C([0, T );L1

loc(R)) y que tambiénsatisface el principio del máximo: ‖u‖L∞(Q) = ‖u0‖L∞(R).

Las demostraciones de esta sección, tanto del teorema de Kruzkov como de losenunciados anteriores, pueden encontrarse en [37].

2.4. El problema de Riemann

Ahora que ya tenemos los principales resultados referentes a las leyes de conserva-ción escalares, vamos a presentar un ejemplo muy habitual a la hora de estudiarlas. Este,denominado problema de Riemann, consiste en tomar como condición inicial:

u0(x) =

ul si x < 0

ur si x > 0(2.11)

Page 18: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

10 Capítulo 2. Leyes de conservación escalares: herramientas analíticas

donde ul, ur ∈ R con ul 6= ur. También consideraremos que F es uniformemente convexay C2(R), de manera que podemos escribir g = (F ′)−1.

En función de la relación entre los dos parámetros ul y ur, es sencillo comprobarque la única solución entrópica viene dada por una de las dos siguientes soluciones:

Si ul > ur, la única solución entrópica de (2.1)-(2.11) viene dada por:

u(x, t) =

ul si xt < σ

ur si xt > σ(x ∈ R, t > 0) (2.12)

donde σ = F (ul)−F (ur)ul−ur , que determina la velocidad de desplazamiento de la onda de

choque.

En cambio, si ul < ur, la única solución entrópica de (2.1)-(2.11) viene dada por:

u(x, t) =

ul si xt < F ′(ul)

g(xt ) si F ′(ul) < xt < F ′(ur)

ur si xt > F ′(ur)

(x ∈ R, t > 0) (2.13)

En este caso, la discontinuidad inicial desaparece, dando lugar a una curva denomi-nada onda de rarefacción en el intervalo (F ′(ul), F

′(ur)).

Evidentemente, en los intervalos en que son constantes, cumplen la ley de conser-vación en su forma variacional. Para la onda de rarefacción, basta comprobar qué sucedepara soluciones del tipo u(x, t) = v

(xt

):

0 = ut + F (u)x

= ut + F ′(u)ux

= −v′(xt

) xt2

+ F ′(v(xt

))v′(xt

) 1

t

= v′(xt

) 1

t

[F ′(v

(xt

))− x

t

] (2.14)

luego, asumiendo que v′ no se anula, tenemos que F ′(v(xt )) = xt , de donde, efectivamente,

obtenemos que u(x, t) = g(xt ) es solución de la ecuación y, además, los límites en ambospuntos del salto por la derecha e izquierda coinciden. En cuanto a la condición de entropía,nos remitimos a [15] para un análisis más profundo, puesto que requiere una serie deresultados de Lax y Oleinik que quedan fuera de nuestras necesidades. Recordemos quehabíamos optado por la teoría de Kruzkov para probar la existencia y unicidad de solucionesentrópicas, pero estos dos autores siguieron otro camino relacionado con las ecuaciones deHamilton-Jacobi y la fórmula de Hopf-Lax.

En las imágenes 2.1 y 2.2 podemos ver dibujadas las curvas características paraambas soluciones. En el primer caso podemos ver cómo, a lo largo de la recta x = σt, sevan juntando las rectas características, produciéndose una discontinuidad que se desplaza

Page 19: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

2.4. El problema de Riemann 11

Figura 2.1: Caso ul > ur .

En rojo, la onda de choque de velocidadσ = (F (ul)− F (ur)/(ul − ur)).

Figura 2.2: Caso ul < ur .

En verde, la onda de rarefacciónu(x, t) = g(x/t).

con velocidad σ. En el otro, la discontinuidad inicial desaparece, dando lugar a la onda derarefacción.

Este tipo de problemas suelen ser los primeros que se estudian a la hora de trabajarcon leyes de conservación, sobre todo en una dimensión, pues dentro de su aparente sim-plicidad, recogen los principales resultados y propiedades que hemos visto en este capítulo.En el ejemplo de control sobre la aplicación de Burgers que realizamos en el capítulo 4será, en efecto, la principal situación a la que nos enfrentemos.

Page 20: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter
Page 21: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

Capítulo 3

Métodos numéricos

Ahora que ya disponemos de la base analítica suficiente para la interpretación delas leyes de conservación escalares, vamos a presentar varios métodos numéricos que nospermitirán simular computacionalmente las soluciones de dichas ecuaciones. Como comen-tábamos inicialmente, la bibliografía acerca de la aproximación numérica de estas es muyextensa, ya que se trata de un tema de gran importancia en el mundo de la ingeniería.En esta sección describiremos algunas de esas técnicas, que usaremos más adelante en lasaplicaciones que mostremos en los siguientes capítulos.

Empezaremos con una breve introducción al método de volúmenes finitos, que nosservirá para las simulaciones del capítulo 4. Para ello utilizaremos como fuente los libros deGodlewski [18] y de LeVeque [31]. Después, presentaremos el método de elementos finitosy haremos hincapié en una variante, basada en las curvas características, que emplearemosdespués en el capítulo 5. Como referencia usaremos, principalmente, los libros de Johnson[26], de Glowinski [17] y de Quarteroni y Valli [36].

3.1. Esquemas conservativos: volúmenes finitos

El método de volumenes finitos es un método numérico que permite la resoluciónde leyes de conservación haciendo uso de dicha conservación en las distintas celdas en lasque podemos dividir el dominio. Aunque en apariencia es similar al método de diferenciasfinitas, su origen es completamente distinto y es, precisamente, el uso de las propiedadesde este tipo de ecuaciones lo que permite que la simulación de soluciones no regulares seamás precisa. Dado que emplearemos el método de volúmenes finitos para la simulación dela ecuación de Burgers, que es unidimensional, nos centraremos únicamente en el desarrollode este en una única variable espacial.

Así pues, primero daremos una motivación al uso de este método y después presen-taremos algunos de los métodos concretos que usaremos en el capítulo 4.

3.1.1. Motivación

A la hora de tratar con la simulación de leyes de conservación, lo primero a lo queuno piensa en recurrir es al método de diferencias finitas, sobre todo en una única dimen-

Page 22: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

14 Capítulo 3. Métodos numéricos

sión espacial. Sin embargo, cuando las ecuaciones son no lineales, estos esquemas pierdenprecisión. Aunque una linealización del problema permitiría obtener algunos resultados deconvergencia para el mencionado método, sigue habiendo un segundo inconveniente queya no podremos superar: las soluciones discontinuas (que, como ya hemos visto, no soninusuales). El uso de diferencias finitas para la simulación de estas puede llegar a ser tre-mendamente ineficaz, dando lugar a aproximaciones que distan mucho de ser correctas.Por lo tanto, necesitaremos imponer algún requerimiento que garantice que el método queusemos converja correctamente; es decir, que no aparezcan distorsiones (en forma de oscila-ciones, por ejemplo) y que no converja a funciones que no son solución del correspondienteproblema.

Consideremos un mallado de R×[0,∞) con un ancho espacial ∆x y un paso temporal∆t (consideraremos que son constantes, aunque también podría suponerse que el malladono es uniforme e, incluso, sin estructura), sobre el que definimos los puntos (xj , tn) =

(j∆x, n∆t) con j ∈ Z y n = 0, 1, 2, ... También será útil definir xj+1/2 = xj + ∆x/2. Porunj denotaremos el valor de la solución exacta u en el punto (xj , tn), mientras que usaremosUnj para denotar la aproximación. Por último, definiremos la media de u(x, tn) en una celdaen torno a xj :

unj :=1

∆x

∫ xj+ 1

2

xj− 1

2

u(x, tn) dx (3.1)

que también utilizaremos, puesto que la forma integral de las leyes de conservación describela evolución en el tiempo de integrales como esa. Del mismo modo, podremos considerarla condición inicial bien como una simple evaluación de u0 en los nodos (U0

j = u0j ) o como

una media (U0j = u0

j ).

Con esa notación, la imposición que mencionábamos es que el esquema esté en ladenominada forma conservativa:

Un+1j = Unj −

∆t

∆x

[G(Unj−p, U

nj−p+1, ..., U

nj+q

)−G

(Unj−p−1, U

nj−p, ..., U

nj+q−1

)](3.2)

donde G es una función con p + q + 1 argumentos llamada función de flujo numérico. Elcaso más sencillo, que será el que empleemos nosotros, se reduce a tomar p = 0 y q = 1,de modo que

Un+1j = Unj −

∆t

∆x

[G(Unj , U

nj+1

)−G

(Unj−1, U

nj

)](3.3)

Definición 3.1. Diremos que el esquema 3.3 es consistente con la ley de conservaciónoriginal si la función de flujo numérico G coincide con F en el caso de que el flujo seaconstante.

Esta condición tiene sentido en tanto en cuanto podemos ver Unj como una aproxima-ción de unj definida en (3.1). Sabemos que una solución débil u(x, t) satisface la formulaciónintegral de la ley de conservación:∫ x

j+ 12

xj− 1

2

u(x, tn+1) dx =

∫ xj+ 1

2

xj− 1

2

u(x, tn+1) dx

−[∫ tn+1

tn

F (u(xj+ 12, t)) dt−

∫ tn+1

tn

F (u(xj− 12, t)) dt

] (3.4)

Page 23: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

3.1. Esquemas conservativos: volúmenes finitos 15

Dividiendo por ∆x y usando (3.1), obtenemos:

un+1j = unj −

1

∆x

[∫ tn+1

tn

F (u(xj+ 12, t)) dt−

∫ tn+1

tn

F (u(xj− 12, t)) dt

](3.5)

y si comparamos la fórmula anterior con (3.3), podemos ver que el flujo numéricoG(Unj , U

nj+1) actúa como una media del flujo en torno a xj+1/2 durante el intervalo de

tiempo [tn, tn+1]; es decir:

G(Unj , Unj+1) ≈ 1

∆t

∫ tn+1

tn

F (u(xj+ 12, t)) dt (3.6)

3.1.2. Conservatividad discreta

El principio básico de una ley de conservación es que la cantidad total de una variableconservada solamente cambia en función del flujo en la frontera, tal como veíamos en (1.2).En el caso unidimensional, dicha formulación integral puede escribirse de la siguiente forma:∫ b

au(x, t2) dx =

∫ b

au(x, t1) dx−

[∫ t2

t1

F (u(b, t)) dx−∫ t2

t1

F (u(a, t)) dx

](3.7)

para cualquier a, b ∈ R y t1, t2 ≥ 0. En particular, si u es constante fuera de un intervalofinito en el intervalo temporal [t1, t2], por ejemplo, u = u−∞ si x ≤ a y u = u+∞ si x ≥ b,entonces obtenemos:∫ b

au(x, t2) dx =

∫ b

au(x, t1) dx− (t2 − t1) [F (u+∞)− F (u−∞)] (3.8)

y si u−∞ = u+∞ (esto es, si la solución tiene soporte compacto, en cuyo caso u±∞ = 0),entonces, los términos de flujo se anulan entre sí y concluimos que

∫ ba u(x, t) dx es constante

en el tiempo siempre que la solución sea constante en los extremos a y b.

A continuación vamos a comprobar que los esquemas en forma conservativa tambiéncumplen una propiedad análoga. Por comodidad, denotaremos

G(Un; j) := G(Unj−p, Unj−p+1, ..., U

nj+q) (3.9)

el flujo numérico definido entorno al nodo j. Ahora, tomamos J y K enteros arbitrarios(con J < K) y sumamos (3.2) sobre j:

∆x

K∑j=J

Un+1j = ∆x

K∑j=J

Unj −∆t

K∑j=J

[G (Un; j)−G (Un; j − 1)] (3.10)

En el último sumando se anulan muchos términos entre sí, quedando únicamente el flujonumérico en los extremos, por lo que obtenemos el equivalente discreto a (3.7):

∆x

K∑j=J

Un+1j = ∆x

K∑j=J

Unj −∆t [G (Un;K)−G (Un; J − 1)] (3.11)

Page 24: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

16 Capítulo 3. Métodos numéricos

En particular, si u0 es constante fuera de un intervalo finito, también lo será Un,ya que los métodos numéricos explícitos siempre tienen un dominio de dependencia finito.Por tanto, para J y K lo suficientemente alejados, por la consistencia del flujo numéricotenemos:

∆xK∑j=J

Un+1j = ∆x

K∑j=J

Unj −∆t [F (u+∞)− F (u−∞)] (3.12)

y aplicándolo de manera recursiva, para N > n llegamos a:

∆xK∑j=J

UNj = ∆xK∑j=J

Unj − (tN − tn) [F (u+∞)− F (u−∞)] (3.13)

que es el equivalente discreto de (3.8).

Finalmente, si como datos iniciales tomamos U0j = u0

j y n suficientemente pequeñopara que la solución sea constante en un entorno de xJ−1/2 y xK+1/2, entonces:

∆xK∑j=J

Unj =

∫ xK+ 1

2

xJ− 1

2

u(x, tn) dx (3.14)

De hecho, si tomamos la función a trozos definida por:

Uk(x, t) = Unj , para (x, t) ∈ [xj− 12, xj+ 1

2)× [tn, tn+1) (3.15)

tendremos que ∫ xK+ 1

2

xJ− 1

2

Uk(x, tn) dx =

∫ xK+ 1

2

xJ− 1

2

u(x, tn) dx, (3.16)

razón por la cual decimos que el método de volúmenes finitos es conservativo.

3.1.3. Ejemplos

Dado que para crear esquemas de volúmenes finitos no hay mayor requerimiento queel que estén en forma conservativa, lo primero que a uno se le ocurre es intentar discretizar lacorrespondiente ecuación mediante alguno de los método de diferencias finitas ya existentesy reordenarlo, de manera que cumplan dicha condición. Así, tenemos dos ejemplos claros:

Los esquemas upwind, que según el lado que se elija son de una de las dos siguientesformas:

Un+1j = Unj −

∆t

∆x

[F(Unj)− F

(Unj−1

)](3.17)

Un+1j = Unj −

∆t

∆x

[F(Unj+1

)− F

(Unj)]

(3.18)

Están, 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.

Page 25: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

3.1. Esquemas conservativos: volúmenes finitos 17

Lo mismo sucede con el esquema de Lax-Friedrichs. El método de diferencias finitastendría la forma:

Un+1j =

1

2

(Unj−1 + Unj+1

)− ∆t

2∆x

[F(Unj+1

)− F

(Unj−1

)](3.19)

Para expresarlo en forma conservativa, se reordena y se toma:

GLF (v, w) =∆t

2∆x(v − w) +

1

2[F (v) + F (w)] (3.20)

Para poder usar el método upwind correctamente, es necesario que no haya alter-nancia de signo en los autovalores de la matriz del sistema que hay que resolver. Esteimpedimento se puede salvar usando el método de Lax-Friedrichs. Sin embargo, tiene ladesventaja de que, en general, es mucho más disipativo que el upwind, por lo que con élse obtienen soluciones menos precisas. Nos interesará, por tanto, conseguir un método queaúne la capacidad que tiene el upwind de recoger la información que ofrecen las curvascaracterísticas y la flexibilidad que permite el de Lax-Friedrichs.

En 1959, Godunov propuso un método [20] que combinaba ambas características,consistente en resolver problemas de Riemann a medida que se avanza en el tiempo. Lasolución de este tipo de problemas es sencilla de calcular, da cuantiosa información sobrela estructura de características y, sobre todo, conduce a métodos conservativos. Podemosdividir el método de Godunov en tres pasos para cada iteración n = 0, 1, 2, ...:

1. A partir de la solución numérica Un, definimos una función constante a trozosun(x, tn) que vale Unj en la celda xj−1/2 < x < xj+1/2.

2. Con un(x, tn) como condición inicial, resolvemos la correspondiente secuencia deproblemas de Riemman, obteniendo un(x, t) para tn ≤ t ≤ tn+1 (he ahí la diferenciacon la función Uk(x, tn) de (3.15), que era constante en ese intervalo temporal). Dichointervalo deberá ser lo suficientemente pequeño para que las curvas características deuna celda no se encuentren con las de las adyacentes (ver fig. 3.1).

3. Calcular Un+1 haciendo la media de un(x, t) en tn+1:

Un+1j =

1

∆x

∫ xj+ 1

2

xj− 1

2

un(x, tn+1) dx (3.21)

En la práctica, el último paso puede simplificarse aplicando la forma integral (3.4)de la ley de conservación, que un también cumple ya que suponemos que es una solucióndébil exacta. Así, teniendo en cuenta que un(x, tn) = Unj en la celda (xj−1/2, xj+1/2), sereduce a:

Un+1j = unj −

∆t

∆x

[G(Unj , U

nj+1)−G(Unj−1, U

nj )]

(3.22)

siendo la función de flujo numérico:

G(Unj , Unj+1) =

1

∆t

∫ tn+1

tn

F (un(xj+ 12, t)) dt (3.23)

Page 26: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

18 Capítulo 3. Métodos numéricos

Figura 3.1: Características de problemas de Riemann con la condición inicial u(x, tn).

Puesto que un es constante en xj+1/2 (ya que la solución del problema de Riemann esautosemejante y constante en las rectas (x−xj+1/2)/t), la integral anterior será simplementeel valor del flujo F para dicha constante, que denotaremos por u∗(Unj , U

nj+1):

Un+1j = unj −

∆t

∆x

[F (u∗(Unj , U

nj+1))− F (u∗(Unj−1, U

nj ))]

(3.24)

De hecho, en el caso de las leyes de conservación escalares puede saberse exactamenteese valor. Sin entrar en grandes detalles (puede verse el desarrollo completo en [18]), diremosque basta con considerar que las soluciones del paso 2 vienen dadas en la forma (2.12),independientemente de la relación entre ul y ur, de manera que:

u∗(ul, ur) =

ul si σ > 0

ur si σ < 0(3.25)

y:

G(ul, ur) =

F (ul) si σ ≥ 0

F (ur) si σ < 0(3.26)

Estas siempre son soluciones débiles, pero no siempre son soluciones entrópicas. El flujonumérico así definido no importará en la mayoría de los casos, pues a pesar de ser solucionesdel problema de Riemann no entrópicas, no siempre la solución numérica será no entrópica.Pero si F ′(ul) < 0 < F ′(ur), puede darse esa situación. Sin embargo, bastará con modificarligeramente el flujo numérico para obtener soluciones numéricas entrópicas en todos loscasos:

GG(v, w) =

mınv≤u≤w

F (u) si v ≤ w

maxw≤u≤v

F (u) si v > w(3.27)

La desventaja que tiene el método de Godunov es el coste numérico que implica suuso, pues es necesario resolver un problema de Riemann para cada nodo del mallado. Laidea de los dos siguientes esquemas es similar a la de Godunov, pero utilizan una soluciónaproximada para dichos problemas. En [18] podemos encontrar cómo se deducen.

Page 27: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

3.2. Elementos finitos: características-Galerkin 19

El método de Murman-Roe toma como función de flujo numérico:

GR(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)

v−w si v 6= w

F ′(v) si v = w(3.29)

Y que también puede escribirse de la siguiente forma:

GR(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 débiles no entró-picas.

El esquema de Engquist-Osher, en cambio, evita esta contrariedad tomando el si-guiente flujo numérico:

GEO(v, w) =1

2

[F (v) + F (w)−

∫ w

v|F ′(ξ)| dξ

](3.31)

Así pues, ya tenemos varios métodos de volúmenes finitos entre los que elegir pararealizar las simulaciones de la ecuación de Burgers en el capítulo siguiente. Para finalizar,podemos apuntar que, al igual que el de Godunov, también obtienen soluciones entrópicas,aunque será necesario imponer ciertas restricciones sobre el grosor de la malla y el tamañodel paso temporal. En [31] se ofrece un análisis más profundo de estos aspectos.

3.2. Elementos finitos: características-Galerkin

Una de las técnicas más usadas en la simulación en la ingeniería es el método delos elementos finitos (FEM). La idea original apareció publicada por primera vez en elapéndice de un artículo de Courant en 1943 (cf. [34]), hecho por el que se le conoce comoel padre de los elementos finitos. A finales de la década de los cincuenta, con la apariciónde los recursos computacionales necesarios, comenzó a usarse para la resolución numéricade ecuaciones en derivadas parciales en ingeniería estructural (ecuaciones de elasticidad,ecuaciones de láminas...). Fue a mediados de los sesenta cuando su uso se generalizó a otrasáreas, no solo de la ingeniería, sino de la ciencia en general, llegando a usarse en problemastan dispares como mecánica de fluidos o procesos de reacción-difusión.

3.2.1. FEM: conceptos básicos

Si bien cada problema debe ser tratado de manera particular, la línea que hay queseguir en todos ellos para aplicar el método de elementos finitos es siempre la misma. En

Page 28: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

20 Capítulo 3. Métodos numéricos

función de la dificultad del problema y de la precisión requerida se optará por unas variantesu otras del método, usando diferentes espacios de funciones, métodos adaptativos etc.; pero,en cualquier caso, dada una ecuación o sistema de ecuaciones en derivadas parciales, estatécnica consiste, principalmente, en completar los siguientes cuatro pasos:

1. A partir de las ecuaciones del problema, se plantea la formulación variacional de este,obteniendo una nueva afirmación que debe cumplirse para todas las funciones de undeterminado espacio V de dimensión infinita.

2. Se construyen los espacios de dimensión finita Vh sobre los que se calcularán lasaproximaciones.

3. Se discretiza y resuelve el problema variacional sobre Vh.

4. Se implementa el método en un ordenador.

A fin 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 laecuación de Poisson:

−∆u = f, en Ω

u = 0, en Γ(3.32)

donde Ω ⊂ R2 es un dominio abierto y acotado con frontera Γ. Denotaremos por V elespacio (de dimensión infinita) de funciones admisibles, que, por el momento, definiremosde la siguiente manera:

V := v | v es continua en Ω,∂v

∂x1y∂v

∂x2son

continuas a trozos en Ω y v = 0 en Γ(3.33)

La imposición de la condición v = 0 en Γ es clara. En cuanto a las otras dos, nospermitirán trabajar con derivadas parciales. Si ahora multiplicamos la ecuación en (3.32)por una función v ∈ V cualquiera e integramos sobre Ω, obtenemos la siguiente ecuación:

−∫

Ω∆u v dx =

∫Ωfv dx (3.34)

Sobre la integral de la izquierda podemos aplicar la siguiente fórmula de Green:∫Ω

∆u v dx =

∫Γv∂u

∂ndx−

∫Ω∇u∇v dx =

v|Γ=0

−∫

Ω∇u∇v dx (3.35)

de manera que llegamos a la formulación variacional que estábamos buscando:

Hallar u ∈ V tal que∫

Ω∇u∇v dx =

∫Ωfv dx, ∀v ∈ V (3.36)

Es sencillo comprobar que toda solución de (3.32) también es solución de (3.36). El inversotambién es cierto, siempre que u sea lo suficientemente regular.

Page 29: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

3.2. Elementos finitos: características-Galerkin 21

Ahora tenemos que construir un espacio Vh ⊂ V (esta inclusión no siempre es nece-saria, pero la consideraremos por simplicidad) de dimensión finita. Supondremos tambiénque Γ es una curva poligonal. Hacemos una triangulación de Ω, dividiéndolo en triángulosK1, ...,Km ∈ Th de manera que Ω =

⋃mj=1Kj sin solaparse y solo con uniones lado-lado o

vértice-vértice. En la siguiente figura tenemos un ejemplo de triangulación válida.

Figura 3.2: a

Por h entendemos la longitud del lado más largo de entre todos los triángulos enTh. Entonces, definimos Vh de la siguiente forma:

Vh := v | v es continua en Ω, v|K es lineal ∀K ∈ Th, v|Γ = 0 (3.37)

Claramente, Vh ⊂ V . Para determinar una función v ∈ Vh, basta con elegir los valores de ven los nodos interiores N1, ..., NM (en los exteriores vale siempre 0). Así, podemos definirla siguiente base para Vh:

ϕjMj=1 = ϕj ∈ VH | ϕj(Ni) = δij ∀i = 1, ...,M (3.38)

de tal modo que podemos expresar cualquier v ∈ Vh como:

v(x) =

M∑j=1

v(Nj)ϕj(x), ∀x ∈ Ω ∪ Γ (3.39)

La siguiente figura muestra una de estas funciones básicas:

Figura 3.3: a

Ya solamente nos queda formular el problema discreto acorde con los elementosfinitos que hemos definido. En este caso, la formulación variacional discreta para (3.36)

Page 30: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

22 Capítulo 3. Métodos numéricos

queda:

Hallar uh ∈ Vh tal que∫

Ω∇uh∇v dx =

∫Ωfv dx, ∀v ∈ Vh (3.40)

Dado que ahora las funciones son lineales y vienen determinadas por sus valores en losnodos de la triangulación, tal y como se expresa en (3.39), resolver el problema (3.40) esequivalente a resolver un sistema de ecuaciones lineal Aξ = b, donde:

A = (aij) es una matriz M ×M que se llama matriz de rigidez y está formada porlos elementos aij =

∫Ω∇ϕi∇ϕj dx, con i, j = 1, ...,M .

ξ = (ξi) es el vector de incógnitas, con los valores de uh en los M nodos interiores.

b = (bi) es el vector de masas, dado por bi =∫

Ω fϕi dx

Es sencillo comprobar que la matriz A es simétrica y definida positiva, por lo quees no singular y, en consecuencia, el sistema anterior tiene solución única. También puedeprobarse que la solución uh obtenida así es la mejor aproximación de u, en el sentido deque

‖∇u−∇uh‖ ≤ ‖∇u−∇v‖, ∀v ∈ Vh (3.41)

donde ‖w‖ := (∫

Ωw2dx)1/2. En particular, se cumple para la función interpolante uh ∈ Vh

(la que toma los valores exactos de u en los nodos). Las estimaciones del error cometidopueden concretarse más aún, pudiendo demostrarse que

‖∇u−∇uh‖ ≤ C1h (3.42)

y que‖u− uh‖ ≤ C2h

2 (3.43)

donde C1, C2 ∈ R son constantes positivas que dependen solamente de la triangulación.

Una vez especificados los tres primeros pasos del método de elementos finitos para elproblema (3.32), solamente quedaría implementarlo en un ordenador para su resolución. Sepueden usar los lenguajes de programación genéricos (Fortran, C++, Java...) o recurrir apaquetes específicos. En [2], por ejemplo, se ofrece un sencillo código en aproximadamente50 líneas. Si se desea un software más completo, una buena opción es FreeFem++, desarro-llado por Olivier Pironneau et al. [22]. Será este último el que usemos para las simulacionesen el capítulo 5.

Para finalizar, señalaremos que los resultados de convergencia (3.42) y (3.43) estánbasados en el denominado análisis a priori, según el cual un método numérico converge sies estable y consistente con el problema continuo. Sin embargo, en los últimos tiempos se hadado un gran empuje desarrollando un área con un enfoque distinto pero complementario:el análisis a posteriori, que dio lugar a los métodos adaptativos. La idea fundamentales la de, una vez realizado el cálculo de una solución, hallar una cota superior del erroren términos de una constante (que se puede estimar rápidamente) multiplicada por losresiduos del problema (que son fácilmente calculables). A diferencia del análisis a priori,

Page 31: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

3.2. Elementos finitos: características-Galerkin 23

el análisis a posteriori no necesita la consistencia del esquema con el problema continuopara la convergencia, sino que requiere que los residuos tiendan a disiparse. La adaptaciónde malla que realizamos en el algoritmo del capítulo 5 se basa en este tipo de análisis delerror.

3.2.2. Método Galerkin de las características

Como comentábamos en el apartado anterior, hay numerosas variantes del métodode elementos finitos. Si bien todos siguen el esquema general presentado, cada uno de ellosse acopla en cierta manera al problema que debe resolver. Nosotros nos vamos a centraren uno, descrito en [35], basado en una de las principales propiedades de las leyes deconservación: las curvas características. Veremos, además, que este esquema nos será muyútil en las simulaciones del capítulo 5.

En el capítulo 2 presentábamos este tipo de curvas, que en el caso de leyes deconservación escalares de la forma ut + divF (u) = 0 son aquellas dadas por la ecuacióndiferencial 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 ∈ RN . Geométricamente, X(t; s, x) indica la posición en el instante t deuna partícula que ha sido desplazada por el campo vectorial F ′ u desde la posición x queocupaba en el instante s.

En las condiciones del teorema de Picard-Lindelöf (cf. [21]), la existencia y unicidadde solución de (3.44) nos garantiza la igualdad

X(t; s,X(s; τ, x)) = X(t; τ, x), ∀t, s, τ ≥ 0 y x ∈ RN (3.45)

y, en particular, X(t; s,X(s; t, x)) = x, luego para t y s fijos, podemos definir la funciónx 7→ X(s; t, x) cuya inversa es y 7→ X(t; s, y). Entonces, definiendo u(y, t) := u(X(t; 0, y), t)

para y ∈ RN tenemos que:

du

dt(y, t) =

∂u

∂t(X(t; 0, y), t) +

N∑k=1

∂u

∂xk(X(t; 0, y), t)

dXk

dt(t; 0, y)

=

(∂u

∂t+ F ′(u) · ∇u

)(X(t; 0, y), t)

(3.46)

Como podemos observar, en (3.45) aparecen términos de la ecuación de convección-difusiónsimilares a los que estudiaremos en el capítulo 5, de ahí nuestro interés por este método.

Ahora solamente nos queda discretizar la derivada temporal. Para ello, podemosconsiderar que se trata, simplemente, de una ecuación diferencial ordinaria y aplicar unesquema de Euler regresivo:

du

dt(y, tn+1) ≈ u(y, tn+1)− u(y, tn)

∆t(3.47)

Page 32: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

24 Capítulo 3. Métodos numéricos

donde, tomando y = X(0; tn+1, x) y usando (3.45), queda:

du

dt(X(0; tn+1, x), tn+1) ≈ u(X(0; tn+1, x), tn+1)− u(X(0; tn+1, x), tn)

∆t

=u(x, tn+1)− u(X(tn; tn+1, x), tn)

∆t

(3.48)

Finalmente, sustituyendo en (3.46), obtenemos:(∂u

∂t+ F ′(u) · ∇u

)(x, tn+1) ≈ u(x, tn+1)− u(X(tn; tn+1, x), tn)

∆t(3.49)

Ahora bien, X es, en general, una solución no trivial de la ecuación diferencialordinaria (3.44), por lo que normalmente no conoceremos su expresión. Por ello, tambiéntendremos que obtener una aproximación de esta. Dado que se trata de una derivadatemporal y hemos semidiscretizado u en esa variable, podremos aproximar F ′ u en cadaiteración:

dX

dt(t; tn+1, x) = F ′(u(X(t; tn+1, x), t)) (3.50)

Por ejemplo, podemos decantarnos de nuevo por un esquema de Euler regresivo:

F ′(u(x, tn+1)) = F ′(u(X(tn+1; tn+1, x), tn+1)) ≈ X(tn+1; tn+1, x)−X(tn; tn+1, x)

∆t(3.51)

de donde, usando (3.45), definimos la aproximación:

X(tn; tn+1, x) ≈ Xn(x) := x−∆t F ′(u(x, tn+1)) (3.52)

Tenemos, por tanto, el esquema semidiscretizado siguiente:(∂u

∂t+ F ′(u) · ∇u

)(x, tn+1) ≈ u(x, tn+1)− u(x−∆t F ′(u(x, tn+1)), tn)

∆t(3.53)

El esquema anterior no es más que otra forma de aproximar la derivada convectiva(también denominada derivada sustancial o lagrangiana). Sin embargo, tiene la ventaja deque nos permite usar sobre él elementos finitos. Por ejemplo, para la ecuación de convecciónut + a · ∇u = 0 (con a ∈ RN es la velocidad de convección), eligiendo un espacio Vhapropiado, a partir de u0

h ∈ Vh tendremos que buscar un+1h ∈ Vh (con n = 0, 1, 2, ...) tal

que:1

∆t

∫Ωv(x) [un+1

h (x)− unh(x−∆t a)]dx = 0, ∀v ∈ Vh (3.54)

Para terminar, nos remitiremos al artículo de Pironneau [35], en el que se realizaun profundo análisis de convergencia del método Galerkin de las características para laecuación del transporte lineal, tanto sin difusión como con ella. Además, se da una cota delerror cometido, que es del orden ∆x+∆t+∆x2/∆t en el caso de tomar elementos finitos detipo P1. En [36] también podemos encontrar otro estudio del método, así como referenciasadicionales para su implementación en otros tipos de problemas, como las ecuaciones deNavier-Stokes incompresibles o problemas elípticos dominados por advección.

Page 33: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

Capítulo 4

Aplicaciones:Problema de control unidimensional

En el Capítulo 2 presentábamos los principales resultados sobre leyes de conserva-ción escalares. Después, en el Capítulo 3 establecíamos los métodos más generales para lasimulación computacional de estas. En los dos siguientes capítulos vamos a estudiar dosproblemas particulares, en los que podremos observar y usar las herramientas analíticas ynuméricas que hemos descrito anteriormente.

En esta primera aplicación, como ejemplo de problema de control unidimensional,consideraremos la ecuación de Burgers viscosa junto con una condición inicial u0 y unafunción objetivo u∗ dadas. Nuestra finalidad será la de modificar u0 de la manera másrápida posible para que en un tiempo prefijado, la solución de la ecuación sea u∗.

4.1. Ecuación de Burgers

La ecuación de Burgers es uno de los ejemplos más importantes entre las leyes deconservación. Aparece en numerosas situaciones de la mecánica de fluidos, pues se tratade una simplificación de las ecuaciones de Navier-Stokes, y también es una ecuación muyrecurrente en modelos de flujo de tráfico. En cualquier caso, se suele emplear para entendermejor el comportamiento del problema general y para probar sobre él métodos que poderaplicar después en situaciones más complejas.

Esta ley de conservación surge de considerar F (u) = u2

2 − νux. La forma general dela ecuación viene dada por

∂u

∂t+

∂x

(u2

2

)= ν

∂2u

∂x2(4.1)

donde podemos considerar u la velocidad del fluido y ν el coeficiente de viscosidad deeste. Se trata de la ecuación en derivadas parciales más simple que combina efectos depropagación no lineal y efectos de difusión. El caso particular en que ν = 0 también es degran interés, puesto que es el más claro ejemplo de ecuación en cuyas soluciones puedenaparecer ondas de choque (recordemos que la solución de este caso es, de hecho, el límitede (4.1) cuando ν → 0). Así pues, nosotros nos centraremos, sobre todo, en este último.

∂u

∂t+

∂x

(u2

2

)= 0 (4.2)

Page 34: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

26 Capítulo 4. Aplicaciones: Problema de control unidimensional

Dado que se trata de una ley de conservación escalar, podemos aplicar toda la teoríaque presentamos en el capítulo 2 en lo que respecta a curvas características y solucionesclásicas, débiles y entrópicas. Así, podemos destacar las siguientes:

Las curvas características vienen dadas por X(t;x0) = x0 + t u0(x0) donde x0 esel pie de la curva característica, cuando t = 0. Son rectas cuya pendiente la fija lacondición inicial u0.

Las soluciones clásicas son de la forma u(x, t) = u0(x0), con x = x0 + t u0(x0).

La condición de Rankine-Hugoniot implica que la velocidad de una curva de discon-tinuidad es la media de los valores a cada lado de esta (σ = (ul + ur)/2).

La condición de entropía requiere que si hay una discontinuidad que se propaga,entonces el valor de la izquierda ha de ser mayor al de la derecha (ul > ur).

Pero, además de ese enfoque hiperbólico de la ecuación, también es posible orientarlodesde el punto de vista que empleamos con el teorema de Kruzkov. Es decir, podemossuponer que nuestra ecuación es (4.1), cuya solución podremos obtener de otra manera queveremos a continuación, y después hacer tender la viscosidad a 0. Este método, denominadoenfoque de la viscosidad disipativa, es mucho más natural desde el punto de vista físico,puesto que la ecuación de Burgers es la idealización de modelos más complejos en los quecabe esperar que sí exista algo de viscosidad.

La manera de resolver (4.1) fue descubierta por E. Hopf [23] y J. D. Cole [10] demanera independiente y consiste en hacer un cambio de variable para obtener la ecuacióndel calor, cuya solución es conocida. Para realizar la susodicha transformación 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 ecuación de difusión lineal:ϕt − νϕxx = 0, x ∈ R, t > 0

ϕ(x, 0) = e−12ν

∫ x0 u0(ξ) dξ, x ∈ R

(4.4)

La solución a este problema es de sobra conocida (ver, por ejemplo, [15]) y viene dada por:

ϕ(x, t) =1

2√πνt

∫ ∞−∞

ϕ(y, 0)e−(y−x)2

4νt dy (4.5)

que, sustituyéndolo en (4.3), nos devuelve la solución de (4.1):

u(x, t) = −∫∞−∞(y − x)ϕ(y, 0)e− (y−x)2

4νt dy

t∫∞−∞ ϕ(y, 0)e−

(y−x)2

4νt dy(4.6)

Como veremos en la siguiente sección, esta forma de resolver (4.1) nos permitirá desarrollarotro método numérico para obtener soluciones aproximadas.

Page 35: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

4.2. Problema de control 27

4.2. Problema de control

En esta sección plantearemos formalmente el problema de optimización que quere-mos llevar a cabo, así como el procedimiento que realizaremos para solucionarlo. Se trata deun problema de gran actualidad en la ingeniería aeronáutica, pues es una representaciónsimplificada de cómo llegan a la superficie terrestre las ondas de sonido producidas poruna aeronave al traspasar la barrera del sonido (el denominado boom sónico). Al intentarsuperar la velocidad del sonido, se genera una explosión 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 supersónica cuando sobrevolaba el océano Atlántico.

Figura 4.1: Gráfico de la presión ejercida so-bre la superficie terrestre por el boom sónico.Los saltos en la línea roja implican sendas ex-plosiones.

Figura 4.2: Imagen de la explosiónproducida por un avión al superarla velocidad del sonido, en torno alos 343m/s.

En [24] se puede encontrar un amplio estudio sobre el mencionado problema, sobreel que se explican aspecto tanto teóricos como prácticos. En nuestro caso, trataremosuna simplificación de este. Partiendo de la ecuación de continuidad, se asume que hayequilibrio termodinámico, se desechan términos de orden alto y se hace un cambio devariables, obteniéndose la ya conocida ecuación de Burgers viscosa. En [29] puede verse elrazonamiento completo de esta simplificación.

Ahora que se ha iniciado una nueva carrera por conseguir aviones comerciales detipo supersónico, encontrar soluciones al problema mencionado es de gran interés. Nuestroplanteamiento consistirá en averiguar cómo modificar las condiciones iniciales (la geometríadel avión en una situación real) con el fin de conseguir una determinada solución en uninstante prefijado.

Page 36: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

28 Capítulo 4. Aplicaciones: Problema de control unidimensional

4.2.1. Planteamiento formal

Dadas una función ud ∈ L2(R) y un instante T , queremos encontrar una condicióninicial u0

∗ ∈ Uad que nos minimice el siguiente funcional de coste:

J(u0) =

∫R|u(x, T )− ud(x)|2 dx (4.7)

donde u(x, t) es la única solución entrópica de la ecuación de Burgers no viscosa:∂u∂t + ∂

∂x

(u2

2

)= 0, (x, t) ∈ R(0, T )

u(x, 0) = u0(x), x ∈ R(4.8)

Por Uad denotamos el conjunto de condiciones iniciales admisibles. En nuestro caso, con-sideraremos Uad = f ∈ L∞(R), supp(f) ⊂ K, ‖f‖∞ ≤ C, siendo K ⊂ R un intervaloacotado y C > 0 una constante. En [7] podemos encontrar análisis más profundo de esteproblema de minimización. En él se demuestra la existencia de minimizadores y se muestrancontraejemplos para la unicidad.

Ahora bien, en las aplicaciones prácticas (es decir, en los cálculos computaciona-les) uno no puede trabajar directamente con el problema continuo. Será necesario que lodiscreticemos para poder trabajar con él. Así pues, consideraremos el funcional:

J∆(u0∆) =

∆x

2

∞∑j=−∞

(UN+1j − Udj )2 (4.9)

donde u0∆ = U0

j es la condición inicial discretizada; Ud∆ = Udj , la discretización deud (por ejemplo, la obtenida mediante (3.1), udj = udj ); y UN+1 = UN+1

j la soluciónen t = T obtenida mediante un esquema conservativo como los que mencionaremos en lasiguiente sección. En el citado artículo también se puede encontrar una demostración parala existencia de solución del problema

mınu0

∆∈Uad,∆J∆(u0

∆) (4.10)

siendo Uad,∆ el conjunto de condiciones iniciales discretas admisibles (el equivalente discretoal conjunto Uad). Este será, por tanto, el problema de optimización que trataremos desolucionar.

4.2.2. Optimización

La manera más eficiente de aproximar los mínimos de un funcional son los algoritmosbasados en el gradiente. Estos están diseñados para alcanzar un mínimo (sin garantía deque sea local o global) de la función siguiendo la dirección negativa que determina elgradiente en cada punto. Intuitivamente, se basan en bajar de una montaña siguiendo lapendiente descendente. Matemáticamente, consisten en, dado un funcional F y un punto

Page 37: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

4.2. Problema de control 29

inicial x0, calcular sucesivamente xn+1 = xn−αn∇F (xn) (n ≥ 0), de manera que para αnsuficientemente pequeño, F (x0) ≥ F (x1) ≥ F (x2) ≥ ... Dependiendo del método escogido,la forma de aproximar el gradiente y de tomar un tamaño de paso u otro serán distintas.

En nuestro caso, tendremos que buscar una manera de aplicar un algoritmo de esetipo al funcional (4.7). Habitualmente, se suelen considerar dos posibles aproximaciones:el enfoque discreto, que consiste en discretizar primero y después calcular el gradientediscreto; o el enfoque continuo, en el que primero se obtiene el gradiente de manera analíticay después se discretiza. Existen otras opciones, como el método de descenso alternanteplanteado en [7], que a riesgo de aumentar el costo computacional de cada paso, obtienenmejores resultados con soluciones discontinuas en un menor número de iteraciones.

Así pues, el objetivo de este apartado será encontrar la manera de determinar elgradiente de J , para lo cual analizaremos la sensibilidad de este a los cambios en la condicióninicial u0. Solamente consideraremos el enfoque discreto y no tendremos en cuenta posiblesdiscontinuidades en las soluciones.

Sea u0 ∈ C10(R) una condición inicial con soporte compacto dada, para la cual la

ecuación (4.8) tiene solución clásica u en R× [0, T ] para cierto T > 0. Supongamos tambiénque puede extenderse a un intervalo de tiempo mayor, [0, T + τ ] con τ > 0. Por otro lado,sea δu0 ∈ C1

0(R) una posible variación de u0, que, dada la velocidad de propagación finita,solamente afectará a la solución en [0, T ]. Entonces, para un ε > 0 suficientemente pequeño,la solución uε correspondiente a la condición inicial:

uε,0(x) = u0(x) + εδu0(x) (4.11)

es también una solución clásica en R× (0, T ) y podemos escribir uε ∈ C1(R× (0, T )) como:

uε = u+ εδu+ o(ε) (4.12)

con respecto a la topología de C1 y siendo δu la solución de la ecuación linealizada:∂tδu+ ∂x(u δu) = 0, (x, t) ∈ R× (0, T )

δu(x, 0) = δu0(x), x ∈ R(4.13)

Antes de continuar, introduciremos el concepto de derivada de Gateaux, que gene-raliza la noción de derivada direccional.

Definición 4.1. Sean X e Y dos espacios de Banach y sea F : U → Y , con U ⊂ X

abierto, una función. Definimos la derivada de Gateaux de F en un punto x ∈ U en ladirección ϕ ∈ X como

dF (x, ϕ) := lımτ→0

F (x+ τϕ)− F (x)

τ(4.14)

Diremos que F es diferenciable Gateaux si el límite existe para todo ϕ ∈ X.

Así pues, sea δJ la derivada de Gateaux de J en u0 en la dirección δu0. Esta vendrádada por

δJ =

∫R

[u(x, T )− ud(x)

]δu(x, T ) dx (4.15)

Page 38: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

30 Capítulo 4. Aplicaciones: Problema de control unidimensional

donde δu resuelve el sistema (4.13). Esta expresión puede simplificarse haciendo uso delsistema adjunto de (4.8):

∂tp+ u∂xp = 0, (x, t) ∈ R× (0, T )

p(x, T ) = u(x, T )− ud(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 =

∫Rp(x, 0)δu0(x) dx (4.17)

Esto nos permite calcular de manera sencilla una dirección de descenso en el método delgradiente, sin más que tomar δu0(x) = −p(x, 0). Recordemos que, tal y como planteamosestos tipos de algoritmos, habremos alcanzado un mínimo si el gradiente es cero. En el casode J , si estamos en un mínimo, δJ será nulo y el integrando también si este no cambia designo, como sería si tomásemos δu0 como hemos mencionado.

No obstante, en la práctica esa dirección podría no resultar muy útil, pues aunquetomemos una u0 suave, nada nos garantiza que la solución vaya a seguir siendo clásicadurante el proceso iterativo. En ese sentido, es recomendable hacer un estudio más avanzadoen el que se tengan en cuenta los posibles choques que puedan aparecer. Nosotros noprofundizaremos en ello, remitiéndonos a [7] para un mayor detalle al respecto.

4.2.3. Aproximaciones numéricas

En el apartado anterior obteníamos una forma de calcular el gradiente de J de ma-nera analítica. Sin embargo, como comentábamos inicialmente, en la práctica trabajaremoscon J∆, por lo que también necesitamos aproximar el gradiente de esta de alguna manera.Nosotros utilizaremos el enfoque discreto, haciendo uso de algunos de los métodos conser-vativos que introdujimos en la sección 3.1.3. A pesar de que estos resultan poco eficacescuando la solución desarrolla alguna onda de choque, frente a otro tipo de métodos que síson capaces de capturar estas, nos centraremos únicamente en estos por un simple motivo:no siempre será sencillo detectar discontinuidades en una solución, bien porque no lo sean obien porque se trate de un problema de mayor complejidad (como es el caso en dimensionessuperiores).

Dentro de ese enfoque, también tendremos que diferenciar entre esquemas diferen-ciables y no diferenciables. Para las simulaciones realizadas en este trabajo hemos elegidotres esquemas: por un lado, el de Lax-Friedrichs (3.20) y el de Enquist-Osher (3.31), ambosdiferenciables, y por otro, el de Roe (3.28), que no es diferenciable y que para la ecuaciónde Burgers coincide con el de Godunov.

Si consideramos un método conservativo en la forma general (3.3) con una funciónde flujo numérico G diferenciable, entonces la linealización (4.13) es sencilla de aproximar

Page 39: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

4.2. Problema de control 31

numéricamente, sin más que tomar:δUn+1

j = δunj −∆t

∆x

[∂1G(Un; j) δUnj + ∂2G(Un; j) δUnj+1

−∂1G(Un; j − 1) δUnj−1 − ∂2G(Un; j − 1) δUnj]

= 0,

j ∈ Z, n = 0, ..., N

(4.18)

Esto nos permite también escribir el sistema adjunto discreto de la siguiente forma:Pnj = Pn+1j + ∆t

∆x

[∂1G(Un; j)(Pn+1

j+1 − Pn+1j ) + ∂2G(Un; j − 1)(Pn+1

j − Pn+1j−1 )

]PN+1j = P Tj , j ∈ Z, n = 0, ..., N

(4.19)De hecho, multiplicando (4.18) por Pn+1

j , sumando en j, usando (4.19) y tomandoP Tj = UN+1

j − Udj , obtenemos el equivalente discreto de (4.17):

δJ∆ = ∆x∑j∈Z

P 0j δU

0j (4.20)

lo cual nos permite, de manera análoga al caso continuo, tomar como dirección de descensoδU0

∆ = −P 0∆.

Así pues, ya tenemos la forma de aproximar numéricamente, tanto la solución de laecuación de Burgers (4.8), como el sistema linealizado (4.13) y el adjunto (4.16), ademásde la dirección de descenso para el método del gradiente.

En cuanto al esquema de Roe, no siendo diferenciable, no es posible calcular elgradiente de J∆. Sin embargo, es posible obtener una dirección de descenso alternativapara utilizar en el método del gradiente. En [19] se propone, por ejemplo, usar el siguienteesquema para la linealización:

δUn+1j = δUnj −

∆x

∆t(hnj+ 1

2

− hnj− 1

2

) (4.21)

donde

hnj+ 1

2

= h(Unj , Unj+1; δUnj , δU

nj+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 discretización del sistema adjunto queda de la siguiente forma:Pnj = Pn+1j + ∆t

∆x

[αnj (Pn+1

j+1 − Pn+1j ) + βnj (Pn+1

j − Pn+1j−1 )

]PN+1j = P Tj , j ∈ Z, n = 0, ..., N

(4.24)

donde

αnj =1

2

[A(Unj , U

nj+1) + |A(Unj , U

nj+1)|

](4.25)

βnj =1

2

[A(Unj , U

nj+1)− |A(Unj , U

nj+1)|

](4.26)

Page 40: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

32 Capítulo 4. Aplicaciones: Problema de control unidimensional

Mediante el esquema anterior se obtiene, nuevamente, la dirección de descenso δU0∆ = −P 0

∆,aunque recordemos que en este caso no estamos hallando el gradiente de J∆. Esta aproxi-mación con pseudogradientes es muy habitual en el diseño óptimo en la aeronáutica, en laque los esquemas usados suelen ser no diferenciables.

Para finalizar esta sección, introduciremos un esquema basado en la transformaciónde Cole-Hopf que presentamos al inicio de este capítulo. El inconveniente de esta, por elque la investigación por esta vía no ha sido muy productiva, es que la función ϕ(x, 0) puedehacerse enorme o tremendamente pequeña, por lo que muchos lenguajes de programaciónno podrían manejarla correctamente. Sin embargo, autores como Ohwada, del que hemostomado este método (cf. [33]), han desarrollado alternativas para poder emplear dichatransformación sin problemas de precisión.

En el caso citado se observa que, tomando los tamaños de paso temporal y espacialadecuados, se puede determinar el valor de la solución en cada nodo solamente con el valorde ϕ(x, 0) en un entorno de este. Sin entrar en grandes detalles, bastaría con tener encuenta el decaimiento exponencial en los términos de los integrandos. Así pues, solamentequedaría pendiente la aproximación de la condición inicial. Ohwada considera tres tipos deinterpolaciones polinómicas, de manera que las integrales pueden calcularse analíticamente.Nosotros consideraremos únicamente la de polinomios cúbicos a trozos, que con la notaciónhabitual queda:

u(xj + η, 0) ≈U0j+1 − 2U0

j + U0j−1

(∆x)2η3 +

U0j+1 − U0

j−1

2∆x+ U0

j , 0 < ±η < ∆x (4.27)

con la que se obtiene el siguiente esquema:

Un+1j = unj +

s1∆t+ s2∆t2 + s3∆t3 + s4∆t4

k0 + k1∆t+ k2∆t2 + k3∆t3 + k4∆t4(4.28)

dondes1 = −6abν + 12cν2, s2 = (−18ab2 + 6a2c)ν + 24bcν2,

s3 = −18ab3ν + 12b2cν2, −a4bc− 6(ab4 + a2b2c)ν

k0 = 6ν, k1 = 24bν, k2 = (36b2 + 6ac)ν,

k3 = a3c+ (24b3 + 12abc)ν, k4 = a3bc+ 6(b4 + ab2c)ν,

(4.29)

siendo

a = Unj , b =Unj+1 − Unj−1

2∆x, c =

Unj+1 − 2Unj + Unj−1

(∆x)2(4.30)

4.2.4. Implementación

Ahora que ya disponemos de las herramientas numéricas necesarias para resolver elproblema de optimización, vamos a detallar el algoritmo que emplearemos para calcular lasolución. En el apéndice A se incluye el código de Matlab completo empleado para obtenerlos resultados, mientras damos en el pseudocódigo (Burgers) de la página siguiente unesquema sencillo de los pasos a seguir.

Page 41: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

4.2. Problema de control 33

Pseudocódigo BurgersEntrada: Condición inicial u0, tiempo final T, función objetivo ud y parámetros de la dis-

cretización (paso temporal dt, intervalo espacial [a,b], grosor del mallado dx, esquemasnuméricos...) y del método del gradiente (paso inicial ep, aumento ap>1, disminuciónan<1, tolerancias...).

1: Inicialización:2: u0 ← u0(a,a+dx, ...,b−dx,b) // Discretización de la condición inicial3: uT ← ud(a,a+dx, ...,b−dx,b) // Discretización de la función objetivo4: solverburgers ← Esquema numérico para la ecuación de Burgers5: solveradj ← Esquema numérico para el adjunto6: Fin Inicialización7: u ← solverburgers(u0) // Solución de la ecuación de Burgers8: pT ← u(T,·)-uT9: p ← solveradj(pT,u) // Solución del adjunto

10: func ← 12dx∑

k[uT(k)−u(T,k)]2 // Valor del funcional11: gtv ← p(0,·) // Valor del gradiente del funcional12: resid ← (

∑kgtv(k)

2)12 // Residuos

13: iter ← 0 // Contador de iteraciones14: Mientras log(func) >tol y ep<epmin hacer15: iter ← iter+1

16: u0new ← u0−ep∗gtv17: u ← solverburgers(u0)18: funcn ← 1

2dx∑

k[uT(k)−u(T,k)]2

19: Si func>funcn entonces20: func ← funcn21: ep ← ep∗ap22: u0 ← u0new23: pT ← u(T,·)-uT24: p ← solveradj(pT,u)25: gtv ← p(0,·)26: Si no27: ep ← ep∗an28: Fin Si29: Fin Mientras30: Devolver u0Salida: Aproximación u0

∗ del óptimo (sin garantía de que sea global) del funcional J∆.

Page 42: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

34 Capítulo 4. Aplicaciones: Problema de control unidimensional

4.3. Resultados

A continuación, presentaremos los resultados obtenidos en las simulaciones. A fin depoder comparar los distintos métodos, trabajaremos con los mismos parámetros de la dis-cretización. 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 condición inicial y función ob-jetivo elegidas, tomaremos siempre funciones como las vistas en el problema de Riemannen el apartado 2.4:

Condición inicial −→ u0(x;u0l , u

0r , c

0) =

u0l si x < c0

u0r si x > c0

Función objetivo:

• Si udl > udr −→ ud(x;udl , udr , c

d) =

udl si x < cd

udr si x > cd

• Si udl < udr −→ ud(x;udl , udr) =

udl si x < udl

x si udl < x < udr

udr si x > udr

Recordemos que para la condición inicial u0, la única solución entrópica es una de las dosanteriores, dependiendo de los valores de u0

l y u0r (y teniendo en cuenta que t = 1). Además,

en el método del gradiente, como condiciones de paro usaremos el valor del funcional J∆

y un tamaño de paso mínimo αn = 10−16. En este partiremos siempre del paso α0 = 1 ylo modificaremos multiplicándolo por 1,2 o por 0,5 en función de que el cambio realizadoen la anterior iteración sea aceptable o no.

Primero, empezaremos considerando el caso en que se genera una onda de rarefac-ción, es decir, aquel en el que u0

l < u0r . Tomaremos, por ejemplo, u0

l = 0 y u0r = 1, con el

salto en c0 = 0,5. Nuestro objetivo será conseguir ud(x; 0,5, 2) en t = 1.

Figura 4.3: A la derecha, el valor de la aproximación de u en t = 1. A laizquierda, la condición inicial óptima obtenida. Criterio de paro: J∆ < 10−4.

Page 43: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

4.3. Resultados 35

Figura 4.4: A la derecha, el valor de la aproximación de u en t = 1. A laizquierda, la condición inicial óptima obtenida. Criterio de paro: J∆ < 10−4.

Como vemos, el esquema de Lax-Friedrichs es el que devuelve la solución más ines-table. De hecho, como podremos ver a continuación, es el que mayor número de iteracionesnecesita para conseguir una precisión aceptable. Los otros dos son mucho más rápidos yofrecen soluciones menos oscilantes, aunque el de Roe se queda estancado en un mínimolocal.

J∆ 10−3 10−4 10−5 10−6 10−7 10−8

Lax-Friedrichs 7 71 >10000Osher 4 5 8 24 197 >10000Roe 4 5 8 24 129 No se alcanza

Cuadro 4.1: Número de iteraciones necesarias para alcanzar el valor del funcional indicadoy evolución del logaritmo de este en las 1000 primeras iteraciones.

Page 44: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

36 Capítulo 4. Aplicaciones: Problema de control unidimensional

El segundo experimento que realizaremos será uno que tenga una onda de choque.Para ello, tomaremos u0

l = 2, u0r = 1 y c0 = 0. Vamos a tratar de conseguir alcanzar

ud(x; 1, 0,−1).

Figura 4.5: A la derecha, el valor de la aproximación de u en t = 1. A la izquierda,la condición inicial óptima obtenida. Criterio de paro: J∆ < 10−4, salvo para Lax-Friedrichs, que paramos en la iteración 5000.

De nuevo, nos encontramos con soluciones muy oscilantes, con un comportamientosimilar al caso de la onda de rarefacción. Cabe destacar que la discontinuidad hace quela precisión que se puede obtener por el método del gradiente ya no sea la misma queen el primer experimento, lo cual coincide con lo que habíamos predicho al presentar losesquemas numéricos.

Page 45: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

4.3. Resultados 37

J∆ 10−3 10−4 10−5 10−6 10−7

Lax-Friedrichs 10 >10000Osher 5 27 115 555 >10000Roe 7 30 No se alcanza

Cuadro 4.2: Número de iteraciones necesarias para alcanzar el valor del funcional indicadoy evolución del logaritmo de este en las 1000 primeras iteraciones.

Finalmente, realizaremos un último experimento, usando el esquema propuesto porOhwada para aproximar la solución de la ecuación de Burgers. Dado que no se conoceningún esquema análogo para resolver el sistema adjunto, haremos uso de uno de losconservativos que ya hemos empleado. En concreto, elegiremos el de Osher, por ser el quemejores resultados ha arrojado hasta ahora. Esto no nos garantiza que la dirección dedescenso escogida sea la óptima, pero también debería devolver soluciones aceptables.

Como parámetros usaremos ν = 10−5 y, siguiendo la sugerencia planteada en el pro-pio artículo [33], introduciremos en el algoritmo de cálculo una modificación que aumentelocalmente la viscosidad cuando exista el riesgo de que aparezcan oscilaciones en la solución.En cuanto a los problemas, volveremos a considerar los dos planteados anteriormente.

Figura 4.6: Solución para el problema de la onda de rarefacción. A la derecha, elvalor de la aproximación de u en t = 1. A la izquierda, la condición inicial óptimaobtenida. Criterio de paro: J∆ < 10−4.

Page 46: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

38 Capítulo 4. Aplicaciones: Problema de control unidimensional

Figura 4.7: Solución para el problema de la onda de choque. A la derecha, el valorde la aproximación de u en t = 1. A la izquierda, la condición inicial óptimaobtenida. Criterio de paro: J∆ < 10−4.

Como se muestra en la tabla siguiente, el número de iteraciones necesarias mejora,incluso, el del esquema de Osher. Sin embargo, esto se consigue a costa de emplear mástiempo en cada iteración, ya que el esquema de Ohwada es más lento. Además, el algoritmoalcanza un mínimo local en ambos casos. Por tanto, podría resultar interesante tratar deobtener un esquema para el sistema adjunto que garantizara una dirección de descensoadecuada.

J∆ 10−3 10−4 10−5

Experimento 1 4 8 No se alcanzaExperimento 2 5 15 No se alcanza

Page 47: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

Capítulo 5

Aplicaciones: Comportamientoasintótico multi-dimensional

En esta segunda aplicación de las leyes de conservación, vamos a considerar unaecuación escalar de convección-difusión con un término no lineal. Esta vendrá dada de lasiguiente forma:

ut −∆u = a · ∇(H(u)) en RN × (0,∞)

u(x, 0) = u0(x) en RN(5.1)

donde a ∈ RN es un vector constante, H ∈ C1(R) tal que H(0) = 0 y u0 ∈ L1(RN ).

Esta ecuación es un modelo para el efecto regularizador de la viscosidad en una ley deconservación hiperbólica. Aparece, por ejemplo, en el desplazamiento de un fluido a travésde un medio poroso cuando se tiene en cuenta la capilaridad (cf. [4]) o en la contaminaciónentre lotes en el transporte mediante tuberías al usar la técnica de producción discontinua(cf. [39]).

En esta ocasión, a diferencia del capítulo anterior, nos interesa el comportamientode la ecuación cuando el tiempo transcurrido es muy grande. Sobre este tema hay numerosabibliografía, entre las que podemos destacar [1], [6], [13] y [14].

A pesar de que los resultados son para dimensión N cualquiera, a la hora de realizarlas simulaciones, nosotros nos centraremos en un caso particular de estas, tomando N = 2,a = (1, 0) y H(u) = |u|q−1u, con q ∈ (1,∞). La razón de considerar el caso bidimensionales meramente práctico, puesto que nos interesa poder visualizar los resultados, mientrasque la elección de H responde al interés de estudiar una no linealidad homogénea y eldiferente comportamiento de la solución en función del exponente q. Cabe señalar tambiénque, salvo que se indique lo contrario, cuando nos refiramos a (5.1), estaremos considerandoH(u) = |u|q−1u.

Empezaremos comprobando que (5.1) se trata, en efecto, de una ley de conser-vación. Después enunciaremos y demostraremos resumidamente los principales resultadosque trataremos de capturar numéricamente. Finalmente, concretaremos el problema bi-dimensional descrito anteriormente, lo aproximaremos numéricamente y recogeremos losresultados obtenidos en las simulaciones.

Page 48: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

40 Capítulo 5. Aplicaciones: Comportamiento asintótico multi-dimensional

5.1. Ley de conservación

Lo primero que podemos observar en la ecuación es que se trata, efectivamente, deuna ley de conservación, ya que se conserva la masa de la solución a lo largo del tiempo.Podemos integrar la ecuación en RN con respecto a las variables espaciales:∫

RNut dx−

∫RN

∆u dx =

∫RN

∂x(|u|q−1u) dx (5.2)

Ahora bien:

En el primer sumando, podemos sacar la derivada fuera:∫RN

ut dx =d

dt

∫RN

u dx (5.3)

Los otros dos sumandos son nulos. Para probarlo, dado que la ecuación (5.1) genera unsemigrupo de contracciones en L1(RN ) (véase la proposición 5.1 más adelante), serásuficiente con verificarlo para un conjunto denso de funciones; por ejemplo, aquellasque son C∞ de soporte compacto. Una vez demostrado para estas, se extiende a todoW2,1(RN ) por densidad.

Ahora, en el caso de las mencionadas funciones test, se tiene:∫RN

∆u dx = lımR→∞

∫BR

∆u dx

= lımR→∞

[−∫BR

0 · ∇u dx+

∫∂BR

∇u · ~n dσ]

= 0

(5.4)

donde BR es una bola abierta de radio R centrada en el origen con frontera ∂BRy ~n es el vector normal a ∂BR. En la segunda igualdad hemos aplicado integraciónpor partes y la última igualdad es cierta ya que, siendo el soporte de las funcionescompacto, podemos encontrar un radio lo suficientemente grande para el que u seanula en el exterior de la correspondiente bola y, por tanto, su gradiente también.

Del mismo modo:∫RN

a · ∇(H(u)) dx = lımR→∞

∫BR

a · ∇(H(u)) dx

= lımR→∞

[−∫BR

H(u)(∇ · a) dx+

∫∂BR

aH(u) · ~n dσ]

= 0

(5.5)

donde hemos vuelto a aplicar integración por partes. La integral sobre la frontera dela bola también es nula, ya que H(0) = 0 y H ∈ C1(RN ), por lo que H es localmenteLipschitz y siempre podremos encontrar un radio suficientemente grande para que|H(u)| ≤ |u|, que se anulará en el exterior de la correspondiente bola.

Por lo tanto, tal y como habíamos enunciado, la solución conserva su masa a lolargo del tiempo:

d

dt

∫RN

u(x, t) dx = 0 (5.6)

Page 49: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

5.2. Resultados analíticos existentes 41

y, en concreto: ∫RN

u(x, t)dx =

∫RN

u0(x)dx, ∀t > 0 (5.7)

De aquí en adelante, denotaremos por M ∈ R esa masa constante.

De hecho, también podemos reescribir la ecuación en (5.1) para que adquiera la for-ma con la que definíamos las leyes de conservación en la introducción. Como ∆u = div(∇u),tenemos:

0 = ut −∆u− a · ∇(H(u))

= ut − div(∇u) + div(a ·H(u))

= ut + div(−∇u− a ·H(u))

(5.8)

que es, precisamente, la forma de ecuación que presentábamos en (1.1) conQ(u) = −∇u− a ·H(u).

En las simulaciones que realicemos será importante conseguir observar esta propie-dad de conservatividad, que es, de hecho, la más importante entre las que estudiaremos eneste trabajo, puesto que es la característica principal en las leyes de conservación.

5.2. Resultados analíticos existentes

Además de la conservación de la masa, la ecuación de convección-difusión (5.1)cumple otras propiedades, relacionadas con su comportamiento asintótico y la distribuciónde la masa a lo largo del tiempo. En este apartado, enunciaremos las más destacadas ydaremos una prueba esquemática de alguno de ellos, haciendo referencia en cada caso ala fuente original en la que encontrar las demostraciones completas. Por comodidad, enmuchos casos omitiremos la dependencia espacial de u e, incluso, la temporal, denotandosimplemente u(t) ≡ u(x, t) o u ≡ u(x, t).

Tal y como veremos más adelante, el decaimiento de la norma usual ‖ · ‖p (con1 ≤ p ≤ ∞) de la ecuación cuando t → ∞ puede ser estimado de manera general sindepender del valor de q. Sin embargo, podemos observar un comportamiento distinto enlas soluciones de (5.1) en función de este parámetro. En realidad, podemos distinguir trescasos:

El valor q = 1 + 1/N marca la frontera entre los distintos comportamientos. Paradicho valor, la ecuación admite soluciones autosemejantes de la forma

u(x, t) = t−N2 f

(x√t

)(5.9)

siendo f una función en L1(RN ). En [1, 13, 14] se demuestra que dicha función es laúnica solución de

−∆f − x · ∇f2− N

2f = a · ∇(|f |1/Nf), x ∈ RN (5.10)

Page 50: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

42 Capítulo 5. Aplicaciones: Comportamiento asintótico multi-dimensional

de manera que∫RN f(x)dx = M . Por tanto:

tN2

(1− 1

p

)‖u(x, t)−MG(x, t)‖p → 0 cuando t→ 0 (5.11)

donde G(x, t) = (4πt)−N/2e−|x|2/4t es el núcleo del calor.

Para q > 1 + 1/N , el sistema presenta un comportamiento denominado débilmenteno lineal. La tasa de decrecimiento de la solución es fuerte y también cumple (5.11),ya que cuando t→∞, como se prueba en [13, 14], esta se comporta como el núcleodel calor lineal.

El valor q < 1+1/N es el que depara mayores cambios, ya que la difusión desapareceen la dirección de la convección a cuando t → ∞. El comportamiento asintótico dela solución viene dado por las soluciones entrópicas autosemejantes de la siguienteecuación hiperbólico-parabólica:

ut −∆′u = ∂x1(|u|q−1u), x ∈ RN × (0,∞)

u(x, 0) = Mδ, x ∈ R2(5.12)

donde ∆′ es el laplaciano en todas las variables espaciales salvo x1. Estamos ante uncomportamiento fuertemente no lineal y, sin embargo, como veremos más adelante, sepuede obtener una estimación que indica que la velocidad de decaimientos es mayoren este caso. Esto puede encontrarse en [12].

En cualquier caso, como decíamos, independientemente del valor de q, existe unaestimación del decaimiento de las soluciones de la ecuación en Lp(RN ), para p ∈ [1,∞].Una proposición previa nos permitirá después probar un teorema al respecto.

Proposición 5.1. Supongamos que H ∈ C1(R) y H(0) = 0. Entonces, para todo datoinicial u0 ∈ L1(RN )∩L∞(RN ) existe una única solución u ∈ C([0,∞);L1(RN ))∩L∞(RN×(0,∞)). Esta solución verifica u ∈ C((0,∞);W2,p(RN )) ∩ C1((0,∞);Lp(RN )) para todop ∈ (1,∞).

Además, si u y v son soluciones de (5.1) correspondientes a datos iniciales u0, v0 ∈L1(RN ) ∩ L∞(RN ), se tiene

‖u(t)− v(t)‖1 ≤ ‖u0 − v0‖1, ∀t > 0 (5.13)

por lo que (5.1) genera un semigrupo de contracciones en L1(RN ).

De esta manera, además de la existencia y unicidad de solución, ya tenemos laprimera estimación del decaimiento para la norma ‖·‖1. La demostración puede encontrarseen [14]. El siguiente teorema, también probado detalladamente en el citado artículo, nosda la generalización del decaimiento para toda norma ‖ · ‖p con p ∈ [1,∞].

Teorema 5.1. Para todo p ∈ [1,∞], existe una constante positiva Cp = C(p,N) > 0 talque:

‖u(t)‖p ≤ Cp‖u0‖1t−N2

(1− 1p

), ∀t > 0 (5.14)

para toda solución de (5.1) con dato inicial u0 ∈ L1(RN )∩L∞(RN ), siendo ‖ · ‖p la normausual en Lp(RN ).

Page 51: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

5.2. Resultados analíticos existentes 43

Dem. Para el caso p = 1, basta tomar v(x, t) = v0(x) = 0 ∀(x, y) ∈ RN y C1 = 1 paraobtener la estimación correspondiente a la norma ‖ · ‖1.

Consideremos ahora el caso p ∈ (1,∞). Si multiplicamos la ecuación en (5.1) por|u|p−2u e integramos en RN , obtenemos:

1

p

d

dt

∫RN|u(t)|pdx+ (p− 1)

∫RN|∇u(t)|2|u(t)|p−2dx =

∫RN

∂x(Qp(u(t)))dx (5.15)

dondeQp(z) =

∫ z

0H ′(s)|s|p−2sds (5.16)

En la propia demostración de la proposición 5.1 se comprueba que la integral a la derechade la igualdad en (5.15) es nula, por lo que podemos deducir:

1

p

d

dt

∫RN|u(t)|pdx+

4(p− 1)

p2

∫RN|∇(|u(t)|p/2)|2dx = 0 (5.17)

Por otro lado, en [14] se prueba que para todo p > 1 existe una constanteC = C(p,N) > 0 tal que para todo v ∈ W2,p(RN ) ∩ L1(RN ) se tiene

‖v‖(N(p−1)+2)pN(p−1)

p ≤ C‖v‖2p

N(p−1)

1 ‖∇(|v|p/2)‖22 (5.18)

Combinando (5.17) y (5.18), obtenemos:

d

dt(‖u(t)‖pp) +

4(p− 1)

Cp

‖u(t)‖(N(p−1)+2)pN(p−1)

p

‖u(t)‖2p

N(p−1)

1

≤ 0 (5.19)

de donded

dt(‖u(t)‖pp) +

4(p− 1)

Cp‖u0‖

−2pN(p−1)

1 ‖u(t)‖N(p−1)+pN(p−1)

p ≤ 0 (5.20)

Finalmente, se puede comprobar que las soluciones no negativas de la desigualdaddiferencial

ϕ′(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 simplificando, llegamos a que

‖u(t)‖p ≤ ‖u0‖1(

8

NCp

)−N2

(1− 1p

)

t−N

2(1− 1

p) (5.23)

donde tomaremos Cp =(

8NCp

)−N2

(1− 1p

).

Nos queda probar el caso p = ∞, puesto que no nos vale tomar el límite en laanterior constante. Para ello consideremos la desigualdad (5.18) para p = 2 (que, por

Page 52: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

44 Capítulo 5. Aplicaciones: Comportamiento asintótico multi-dimensional

densidad, puede extenderse a todo v ∈ H1(RN ) ∩ L1(RN )) y la igualdad (5.17) parap = 2q. Entonces:

d

dt(‖u(t)‖2q2q) +

2(2q − 1)

Cq

‖u(t)‖2q(N+2)

N2q

‖u(t)‖4qN1

≤ 0 (5.24)

Multiplicando (5.1) por |u|q−2u, se llega fácilmente a que ‖u(t)‖q ≤ ‖u0‖q, ∀t > 0 y∀q ∈ [1,∞]. Usando eso en la expresión anterior y aplicando (5.22), se sigue que

‖u(t)‖2q ≤(

NCq

4(2q − 1)

)N4q

‖u0‖qt−N4q (5.25)

y, como q/(2q − 1) ≤ 1, deducimos que

‖u(t)‖2q ≤(NC

4

)N4q

‖u0‖qt−N4q (5.26)

Ahora bien, (5.1) es invariante con respecto a traslaciones en t, por lo que la expresiónanterior se puede generalizar a

‖u(t+ s)‖2q ≤(NC

4

)N4q

‖u(t)‖qs−N4q (5.27)

En particular, dado τ > 0, eligiendo s = τ2−(n+1) y q = 2n, obtenemos

‖u(t+ τ2−(n+1))‖2n+1 ≤(NC

)2−(n+2)N

2−N(n+1)2−(n+2)‖u(t)‖2n (5.28)

Finalmente, por iteración se concluye que

‖u(τ(2−1 + ...+ 2−n))‖2n+1 ≤ Cn‖u0‖1 (5.29)

con

Cn =

(NC

)N n−1∑j=0

2−(j+2)

(2−N2 )

n−1∑j=0

(j+1)2−(j+1)

(5.30)

Pero, como 2−1 + ...+ 2−n ≤ 1 y ‖u(t)‖∞ ≤ ‖u0‖∞ ∀t > 0, concluimos que

‖u(τ)‖2n+1 ≤ Cn‖u0‖1 (5.31)

Basta tomar el límite n→∞ para obtener:

‖u(τ)‖∞ ≤ C∞‖u0‖1τ−N2 (5.32)

con C∞ =(NC

4

)N2 .

Así pues, queda demostrado el teorema, con C1 = 1, Cp =(

8NCp

)−N2

(1− 1p

)para

p ∈ (1,∞) y C∞ =(NC

4

)N2 .

Page 53: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

5.3. Aproximaciones numéricas 45

El teorema anterior recoge el comportamiento asintótico de (5.1), independiente-mente del valor q del término de convección. Sin embargo, hay un caso particular en elque todavía puede obtenerse una mejor acotación del decaimiento. El siguiente teorema sedemuestra en [12] para funciones no negativas y en general en [6]:

Teorema 5.2. Dado cualquier dato inicial u0 ∈ L1(RN ), existe una constante positi-va que depende continuamente sobre ‖u0‖1 tal que la solución de la ecuación (5.1) cona = (1, 0, ..., 0) y H(u) = |u|q−1 (1 < q ≤ 2) verifica:

‖u(t)‖∞ ≤ C(‖u0‖1)t−N+1

2q , ∀t > 0 (5.33)

También es posible obtener una estimación para el decaimiento del gradiente dela solución de (5.1). La demostración del siguiente teorema, que nos proporciona dichoacotación, también puede encontrarse en [14].

Teorema 5.3. Para todo p ∈ [1,∞], existe una constante positiva Cp = C(p,N) > 0 talque:

‖∇u(t)‖p ≤ Cp‖u0‖1t−N2

(1− 1p

)− 12 , ∀t > 0 (5.34)

para toda solución de (5.1) con dato inicial u0 ∈ L1(RN )∩L∞(RN ), siendo ‖ · ‖p la normausual en Lp(RN ).

Como ya hemos dicho, en nuestras simulaciones intentaremos conseguir que numé-ricamente se observen las propiedades que hemos enunciado en esta sección.

5.3. Aproximaciones numéricas

Una vez planteados el problema y los resultados analíticos concernientes a este, va-mos a proceder a plantear el problema variacional que nos permitirá obtener las aproxima-ciones numéricas mediante elementos finitos. Como ya habíamos comentado inicialmente,consideraremos únicamente el caso bidimensional, con convección solamente en la direcciónde uno de los ejes y para H(u) = |u|q−1u; es decir:

ut −∆u = ∂x1(|u|q−1u) en R2 × (0,∞)

u(x1, x2, 0) = u0(x1, x2) en R2(5.35)

Es sencillo comprobar que el término de la convección puede expresarse tambiéncomo (q|u|q−1, 0) · ∇u, siempre que u sea lo suficientemente regular. Así pues, se trata deuna ecuación con términos similares a los que aparecían en (3.53), por lo que el método decaracterísticas-Galerkin puede sernos útil para simular la solución de (5.35).

Siguiendo los pasos descritos en la sección 3.2, primero multiplicaremos (5.35) poruna función test v ∈ H1

0(R2) e integraremos sobre R2. Por simplicidad, denotaremos por< u, v >Ω el producto escalar

∫Ω uv dx:

< ut, v >R2 − < ∆u, v >R2=< (q|u|q−1, 0) · ∇u, v >R2 (5.36)

Page 54: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

46 Capítulo 5. Aplicaciones: Comportamiento asintótico multi-dimensional

Ahora podemos reordenar la ecuación, de manera que podamos aplicar el métodode las características.

< ut + (−q|u|q−1, 0) · ∇u, v >R2 + < ∆u, v >R2= 0 (5.37)

El primer sumando será el que aproximemos usando las curvas características, mientrasque sobre el segundo aplicaremos directamente integración por partes para aproximar lasolución mediante elementos finitos:

< Dtu, v >R2 + < ∇u,∇v >R2= 0 (5.38)

donde Dtu := ut + (−q|u|q−1, 0) · ∇u es la derivada convectiva. Por lo tanto, el problemavariacional consistirá en encontrar u tal que para todo v ∈ H1

0(R2) se cumpla:< Dtu, v >R2 + < ∇u,∇v >R2= 0, ∀t > 0

u(x1, x2, 0) = u0(x1, x2)(5.39)

Para realizar la aproximación numérica, primero vamos a discretizar la ecuación enla variable tiempo. Si ∆t es el tamaño del paso temporal, denotaremos un := u(x1, x2, n∆t)

la aproximación de u en (x1, x2) ∈ R2 en el instante t = n∆t, siendo n = 0, 1, 2, ... Así,obtenemos la semidiscretización:

< Dtun, v >R2 + < ∇un,∇v >R2= 0 (5.40)

Siguiendo, tal y como habíamos comentado anteriormente, el método de las características-Galerkin, aproximaremos la derivada convectiva mediante las curvas características:

<un+1 − un(Xn)

∆t, v >R2 + < ∇un+1,∇v >R2= 0 (5.41)

dondeXn es la aproximación de la curva característica, que se define de la siguiente manera:dXdτ (τ ; t, x1, x2) = (−q|u(X(τ ; t, x1, x2), τ)|q−1, 0)

X(t; t, x1, x2) = (x1, x2)(5.42)

Por comodidad, denotaremos x = (x1, x2) y X = (X1, X2). En la sección 3.2.2 tomábamosla siguiente aproximación:

Xn(x) = (x1 − q|un+1(x)|q−1∆t, x2) (5.43)

Sin embargo, esta nos nos permitiría aprovechar el comando convect que ofreceFreeFem++. Es por ello por lo que intentaremos buscar una segunda aproximación. Porun lado, haciendo un desarrollo de Taylor y usando que X(tn+1; tn+1, x) = x tenemos:

un(X(tn; tn+1, x)) = un(x)−∆t2∑

k=1

∂un

∂xk(x)

∂Xk

∂t(tn+1; tn+1, x) +O(∆t2)

= un(x)−∆t (−q|un(x)|q−1, 0) · ∇un(x) +O(∆t2)

(5.44)

Page 55: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

5.4. Implementación 47

Por otro, si en el instante tn+1 consideramos un(x) fijo, obtenemos:

un(x1 + ∆t q|un(x)|q−1, x2) = un(x)−∆t (−q|un(x)|q−1, 0) · ∇un(x) +O(∆t2) (5.45)

Así pues, podemos tomar la aproximación:

un(Xn(x)) = un(x1 − q|un(x)|q−1∆t, x2) (5.46)

que es, precisamente, la que nos ofrece FreeFem++ con convect([q|u|q−1, 0],−∆t, un).

Por lo tanto, el esquema semidiscreto sobre el que aplicaremos el método de ele-mentos finitos será:

1∆t < un+1, v >R2 − 1

∆t < un(Xn), v >R2 + < ∇un+1,∇v >R2= 0

Xn(x1, x2) = (x1 − q|un(x1, x2)|q−1∆t, x2)(5.47)

con n = 0, 1, 2, ... y con u0(x) = u0(x).

Siguiendo los pasos mencionados en 3.2.1, ahora tenemos que definir el espacio defunciones Vh sobre el que tomaremos nuestras aproximaciones. Nosotros trabajaremos conelementos finitos P1 y P2, que por ser conformes verifican Vh ⊂ V = H1

0(R2). Sea Ωh unatriangulación del dominio espacial, siendo h la longitud del lado más largo de los triángulosde Ωh. Entonces, el problema variacional discreto consiste en determinar uh ∈ Vh tal quepara todo vh ∈ Vh:

1∆t < un+1

h , vh >Ωh − 1∆t < unh(Xn

h ), vh >Ωh + < ∇un+1h ,∇vh >Ωh= 0

Xnh (x1, x2) = (x1 − q|unh(x1, x2)|q−1∆t, x2)

(5.48)

5.4. Implementación

Una vez obtenidas todas las herramientas numéricas necesarias, solamente nos quedaimplementar el método en un ordenador. Como ya habíamos anunciado, para realizar estassimulaciones nos hemos decantado por el software de libre distribución FreeFem++, creadopor Olivier Pironneau et al. (cf. [22]). Se trata de un producto integrado con su propiolenguaje de programación de alto nivel, basado en el método de elementos finitos y que estremendamente versátil, de ahí nuestra elección.

En el apéndice A se incluye el código completo empleado para obtener los resultados.No obstante, en la siguiente página damos un resumen esquematizado de los pasos másimportantes realizados.

La ventaja de FreeFem++ es que ya tiene implementadas la mayoría de las opera-ciones que mencionamos. Por ejemplo, la generación de mallas se puede realizar automáti-camente, basándose en el algoritmo de Delaunay-Voronoi, sin más que indicar la cantidadde nodos en la frontera del dominio. Así mismo, también cuenta con numerosos tipos deelementos finitos triangulares y una función de adaptación de malla. En los experimentosaprovecharemos todas esas posibilidades, a fin de lograr la mayor eficiencia posible.

Page 56: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

48 Capítulo 5. Aplicaciones: Comportamiento asintótico multi-dimensional

Pseudocódigo Conv-DifEntrada: Condición inicial u0, exponente q y parámetros de la discretización (paso tem-

poral ∆t, tiempo final T , malla espacial, espacio de elementos finitos...).1: Inicialización:2: q ← q // Exponente de la no-linealidad3: dt ← ∆t // Paso temporal4: M ← parte_entera(T/∆t) // Número de pasos temporales5: Th ← generar_malla(no de nodos,dominio) // Malla inicial6: Vh ← generar_FE(malla,tipo FE) // Espacio de elementos finitos7: Fin Inicialización8: Th ← adaptar(Th,u0) // Adaptación manual de la malla9: uold ← u0 // Proyectar u0 sobre la malla Th

10: convdiff ← Problema variacional11: Para m=1 hasta m=M hacer12: t ← m∗dt // Tiempo13: u ← solucionar(convdiff,uold,dt) // Solución en dt con uold inicial14: Th ← adaptar(Th,u,error) // Adaptación de la malla con un error máximo15: mostrar(u) // Representar gráficamente u en t16: normas ← norma(u,[1, 2,∞]) // Calcular las normas 1, 2 e ∞ de u en t17: u ← remuestrear(u,Vh) // Remuestrear u en la nueva malla Th18: u ← uold // Condición inicial para el siguiente paso19: Fin Para20: Devolver u, normasSalida: Aproximación uh de la solución de la ecuación 5.35 y sus normas.

Page 57: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

5.5. Experimentos y resultados 49

5.5. Experimentos y resultados

A continuación resumiremos los distintos experimentos computacionales realizados,detallando la condición inicial escogida, así como los parámetros de la discretización. Res-pecto a lo primero, vamos a considerar dos funciones distintas:

1. Una función regular:

u10(x, y) = 2 exp

[−1

4

(x2 + y2

)]con (x, y) ∈ R2 (5.49)

2. Una función indicatriz:

u20(x, y) = χ[−2,2]×[−4,4](x, y) =

1, si (x, y) ∈ [−2, 2]× [−4, 4]

0, en otro caso(5.50)

Ambas funciones están en L1(R2) ∩ L∞(R2), por lo que estamos en las condicionesdel teorema 5.1. Es decir, que en ambos experimentos deberíamos obtener un decaimientode las normas de la solución de (5.35) según la afirmación de dicho teorema.

Otro parámetro que tenemos que escoger es el exponente de la no linealidad. Tal ycomo hemos visto en la sección 5.2, el comportamiento de la solución es diferente en funcióndel valor de q respecto de la dimensión del problema. En nuestro caso, estamos trabajandocon la ecuación bidimensional, el cambio lo marcará q = 3/2, por lo que optaremos portres valores de q representativos de las tres situaciones que se pueden plantear: q1 = 1,25

para el intervalo (1, 3/2); q2 = 3/2 y q3 = 2 para el intervalo (3/2,∞).

En cuanto a la discretización del problema, lo primero que podemos observar es quenecesitamos acotar tanto el dominio espacial como el intervalo temporal, a fin de podertrasladarlo al ordenador. Para lo segundo no hay mayor inconveniente, ya que nuestrométodo es iterativo, por lo que podemos ejecutarlo hasta el instante que deseemos. Afin de visualizar correctamente la evolución de las soluciones, optaremos por truncar enT = 100 o T = 1000, dependiendo de las necesidades. El tamaño del paso, salvo queindiquemos lo contrario, será ∆t = 0,1.

La acotación del dominio espacial, en cambio, es más delicada, puesto que gran par-te de los resultados analíticos se basan, precisamente, en el hecho de que el problema estáplanteado en todo R2. Sin embargo, teniendo en cuenta las condiciones iniciales elegidas yel comportamiento de estas descrito en 5.2, podemos elegir un rectángulo suficientemen-te grande en cuya frontera la solución será nula durante el periodo de tiempo escogido.Así, tomaremos distintos tamaños de rectángulos, dependiendo también del objetivo de lasimulación.

Por último, tal y como adelantábamos en la sección 5.3, recordemos que empleare-mos dos tipos de elementos finitos: P1 y P2.

Page 58: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

50 Capítulo 5. Aplicaciones: Comportamiento asintótico multi-dimensional

Lo primero que podemos observar en los experimentos (fig. 5.1) es el veloz decai-miento al que se ve sometido la función. Tanto u1

0 como u20 pierden rápidamente su cota

máxima inicial (2 y 1 respectivamente), para tender a cero rápidamente. Dado que se tratade una ley de conservación, esto se traduce en que el soporte (compacto) de ambas tambiénse expande en la misma proporción, pues la masa ha de repartirse.

Figura 5.1: Condición inicial u10 (superior izquierda) y aproximación de u en t = 5

para q = 1,25 (superior derecha), q = 1,5 (inferior izquierda) y q = 2. El dominioes [−20, 20]2 y el tipo de elementos finitos, P2.

Hay que señalar también el efecto regularizante de laplaciano de (5.35) (ver fig.(5.2)). En el caso de u1

0 apenas se nota, pues la propia función es regular. En el otro caso,en cambio, a pesar de la discontinuidad inicial, tras la primera iteración obtenemos ya unafunción suave que poco tiene que ver con los saltos que había inicialmente.

Figura 5.2: Aproximación de u con condición inicial u20 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 finitos, P2.

En ese sentido, otro hecho a destacar es la influencia del término de convección.Como mencionábamos en la sección 5.2, la solución tenía un comportamiento más similaral núcleo de Gauss si q > 3/2 y del tipo hiperbólico para q < 3/2. Esto podemos verloreflejado en las gráficas de (5.3), en las que en el primer caso la solución se estabiliza rápi-damente en torno a un punto, mientras que en el segundo caso el soporte se va desplazando

Page 59: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

5.5. Experimentos y resultados 51

progresivamente, siendo la difusión en el sentido del eje de las x marcado por la convección.

Figura 5.3: Aproximación de u con condición inicial u20 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 finitos, P1.

En cuanto a las normas de las soluciones y el decaimiento enunciado en el teorema5.1, en las siguientes gráficas podremos ver cómo las aproximaciones numéricas tambiéncapturan bien esa propiedad. Además, quedará patente que las discontinuidades de lacondición inicial no tienen por qué afectar a la solución del problema.

Por un lado, en la figura 5.4 vemos que la norma ‖ · ‖1 prácticamente se conserva,lo cual va en consonancia con el teorema. Además, puesto que se trata de una funciónno negativa, dicha norma coincide con la integral de la solución sobre el dominio espacial(recordemos, la magnitud conservada, como veíamos en (5.6)). Además, este resultado esindependiente del valor de q.

En las siguientes gráficas (ver fig. 5.5) podemos comprobar que la norma ‖ · ‖2igualmente se comporta como era de esperar, teniendo un decaimiento proporcional a t−

12 .

También mostramos el comportamiento de la norma ‖ · ‖∞ (fig. 5.6). Al igual que en loscasos anteriores, observamos que tras un breve intervalo de tiempo, la solución pasa a tenerun decaimiento según lo esperado por el teorema 5.1. No obstante, cabe indicar que el el

Page 60: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

52 Capítulo 5. Aplicaciones: Comportamiento asintótico multi-dimensional

caso particular de q < 3/2, la cota aún puede mejorarse, como veíamos en el teorema5.2. Sin embargo, no ha sido posible lograr un esquema que consiga capturar fielmente esecomportamiento.

Figura 5.4: Norma ‖ · ‖1 de u(·, t) para u10 (izquierda) y u2

0. El dominio es[−200, 600]× [−200, 200] y el tipo de elementos finitos, P2.

Figura 5.5: Norma ‖ · ‖2 de u(·, t) para u10 (izquierda) y u2

0. El dominio es[−200, 600]× [−200, 200] y el tipo de elementos finitos, P2.

Figura 5.6: Norma ‖ · ‖Inf de u(·, t) para u10 (izquierda) y u2

0. El dominio es[−200, 600]× [−200, 200] y el tipo de elementos finitos, P2.

Page 61: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

5.5. Experimentos y resultados 53

Finalmente, presentamos en la figura 5.7 la evolución de las normas del gradientede la solución aproximada. Como podemos apreciar, todas ellas se mantienen de acuerdoal teorema 5.3.

Figura 5.7: Normas del gradiente de u(·, t) para u10 (izquierda) y u2

0. El dominioes [−200, 600]× [−200, 200] y el tipo de elementos finitos, P2.

Page 62: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter
Page 63: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

Capítulo 6

Conclusiones y trabajo futuro

A lo largo de este trabajo hemos podido comprobar que las leyes de conservaciónaparecen en numerosas aplicaciones, sobre todo, de la física y la ingeniería. Por ello, suponeun gran reto conseguir mimetizar numéricamente las propiedades que estas puedan tenera nivel analítico, de cara a poder realizar simulaciones de fenómenos reales que permitanrealizar predicciones, estimaciones, ensayos...

Tal y como veíamos en el capítulo 2, uno de los grandes problemas al que uno debeenfrentarse a la hora de simular soluciones de este tipo de ecuaciones en derivadas parcialeses la aparición de ondas de choques. Diseñar esquemas numéricos que sean capaces deaproximar estas correctamente sin disparar el coste computacional resulta tremendamentecomplicado. Nosotros hemos presentado algunos de ellos en el capítulo 3, haciendo hincapiéen las ventajas e inconvenientes de cada uno de ellos.

En el caso de los esquemas para simular la ecuación de Burgers, hemos visto que notodos los descritos realizan una correcta aproximación en el entorno de las discontinuidades.Estas producen oscilaciones en varios de los casos, como en el de Lax-Friedrichs; otros, encambio, suavizan en cierto modo esos saltos a fin de no sufrir perturbaciones. En cualquiercaso, sería interesante generar algoritmos que fueran capaces de detectar las ondas dechoque para poder darles un tratamiento distinto al de los intervalos en los que la soluciónes continua. En el capítulo 4 ya hemos hecho mención a algunos artículos en los quese implementan ese tipo de alternativas para el caso unidimensional de la ecuación deBurgers. Sin embargo, todas ellas incrementan el coste computacional considerablementey no son fácilmente generalizables a dimensiones mayores. En ese sentido, podría resultarde gran interés desarrollar otras técnicas que agilizaran los métodos ya existentes, usando,por ejemplo, las ideas de [41] en el establecimiento del tamaño del paso en el método delgradiente o, como ya hemos mencionado anteriormente, creando un esquema basado en elde Ohwada para el sistema adjunto.

En cuanto a las simulaciones realizada en el capítulo 5, hemos podido visualizarlas propiedades asintóticas que posee la ecuación de convección-difusión tratada en el casobidimensional. La discretización empleada nos ha permitido aproximar fielmente muchos delos resultados teóricos, aunque no nos ha sido posible conseguir el decrecimiento adecuadopara la norma ‖ · ‖∞ en el caso q ∈ (1, 2]. Obtener un esquema numérico que capte esapropiedad y realizar un análisis del error cometido son dos opciones a considerar parafuturos trabajos.

En resumen, hemos realizado un recorrido por los aspectos básicos de las leyes de

Page 64: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

56 Capítulo 6. Conclusiones y trabajo futuro

conservación, resaltando lo importante que es, desde el punto de vista práctico, poder re-coger las características que presentan sus soluciones. Como ejemplo de dicha necesidad,hemos presentado dos ejemplos con los que comprender las dificultades que entrañan estetipo de ecuaciones en derivadas parciales, tanto desde la perspectiva de eficacia compu-tacional como de la precisión. En cualquier caso, se trata de problemas aún abiertos y conun gran peso en numerosas aplicaciones prácticas, por lo que todavía quedan muchos pasosque dar en trabajos futuros.

Page 65: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

Apéndice A

Código empleado

A.1. Código de Matlab

A continuación presentamos el código básico empleado para realizar en Matlab lassimulaciones correspondientes al capítulo 4. Primero incluimos el programa principal ydespués, los ficheros auxiliares con las diferentes funciones con los esquemas de resoluciónnumérica y las condiciones iniciales y finales.

Fichero A.1: Programa principal main.m1 % Programa principal para la resolucion del problema de2 % optimizacion de la ecuacion de Burgers.3

4 c lear a l l ; c lc ;5

6 % Parametros del problema7 T=1; % Tiempo final8 condini=’u0_riemann ’; % Condicion inicial9 salto =0.; % Punto de discontinuidad

10 ul=2.; % Valor a la izquierda del salto11 ur=1.; % Valor a la derecha del salto12 condobj=’ud_riemann ’; % Solucion objetivo13 saltod =-1.; % Punto de discontinuidad14 uld =1.; % Valor a la izquierda del salto15 urd =0.; % Valor a la derecha del salto16

17 % Parametros de la discretizacion18 N=159; % Numero de nodos espaciales19 dx=8./(N+1); % Grosor del mallado20 x=-4:dx:4; % Vector de nodos espaciales21 mu=0.1; % Cociente dt/dx22 dt=mu*dx; % Tamano de paso temporal23 Nt= f l oor (T/dt); % Numero de pasos temporales24 T=(Nt+1)*dt; % Nuevo tiempo final25 t=0:dt:T; % Vector de tiempos26

27 % Parametros del método del gradiente28 ep=1; % Paso inicial29 ap=1.2; % Aumento del paso

Page 66: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

58 Apéndice A. Código empleado

30 an=0.5; % Disminucion del paso31

32 % Especificacion de esquemas empleados33 solverburgers=’sol_osher ’;34 solveradj=’adj_osher ’;35

36 % Calculo de las condiciones inicial y objetivo37 u0= feva l (condini ,x,ul,ur,salto);38 uu0=u0;39 uT= feva l (condobj ,x,uld ,urd ,saltod );40

41 % Solucion de la ecuacion de Burgers y del sistema adjunto42 % con la condicion inicial dada43 u= feva l (solverburgers ,u0,dx,dt ,Nt ,N);44 pT=u(Nt+2,:)-uT;45 p= feva l (solveradj ,pT,u,mu,Nt,N);46

47 % Calculo del gradiente del funcional48 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 gradiente53 iter =0;54 aviobj = avifile(’burgers1.avi’,’fps’ ,20);55 f igure (5);56 plot (x,uT ,’b’,’LineWidth ’ ,2);57 hold on;58 plot (x,u(end,:),’r’,’LineWidth ’ ,2);59 hold off;60 ylim([ -1. ,2.5]);61 legend(’Objetivo ’,’Aproximación ’ ,1);62 frame = getframe(gca);63 aviobj = addframe(aviobj ,frame);64

65 while ( log (g(end))>-6 && ep >1.e-16 && iter <10000)66 iter=iter +1;67 u0new=u0 -ep*(gtv);68 u= feva l (solverburgers ,u0new ,dx ,dt ,Nt ,N);69 funcn =.5*dx*sum((uT-u(Nt +2 ,:)).^2);70 i f funcn <func71 f igure (5);72 plot (x,uT ,’b’,’LineWidth ’ ,2);73 hold on;74 plot (x,u(end,:),’r’,’LineWidth ’ ,2);75 hold off;76 ylim([ -1. ,2.5]);77 legend(’Objetivo ’,’Aproximación ’ ,1);78 frame = getframe(gca);79 aviobj = addframe(aviobj ,frame);80 func=funcn;

Page 67: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

A.1. Código de Matlab 59

81 ep=ep*ap;82 u0=u(1 ,:);83 pT=u(Nt+2,:)-uT;84 p = feva l (solveradj ,pT,u,mu,Nt,N);85 gtv = p(1 ,:);86 e l se87 ep=ep*an;88 end89 g=[g funcn ];90 disp ([’Iteración ’ num2str(iter) ...91 ’ - log(g)= ’ num2str( log (g(end)))]);92 end93 aviobj = c lose (aviobj)94

95 % Graficas de los resultados96 f igure (1);97 plot ( log (g),’b’,’LineWidth ’ ,2);98 f igure (2);99 plot (x,uu0 ,’b’,’LineWidth ’ ,2);

100 hold on;101 plot (x,u(1,:),’r’,’LineWidth ’ ,2);102 hold off;103 f igure (3);104 plot (x,uT ,’b’,’LineWidth ’ ,2);105 hold on;106 plot (x,u(Nt+2,:),’r’,’LineWidth ’ ,2);107 hold off;

Fichero A.2: Esquema de Lax-Friedrichs para la ecuación de Burgers (sol_laxfri.m)1 % Esquema de Lax−Friedrichs2 function 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 for k=1:Nt+19 for 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 end13 end14 return

Fichero A.3: Esquema de Enquist-Osher para la ecuación de Burgers (sol_osher.m)1 % Esquema de Osher2 function u = sol_osher(u0,dx ,dt ,Nt ,N)

Page 68: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

60 Apéndice A. Código 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 for k=1:Nt+19 for 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 end16 end17 return

Fichero A.4: Esquema de Murman-Roe para la ecuación de Burgers (sol_roe.m)1 % Esquema de Roe2 function 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 for k=1:Nt+19 for 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 end18 end19 return

Fichero A.5: Esquema de Ohwada para la ecuación de Burgers (sol_chB.m)1 % Esquema de Ohwada2 function 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);

Page 69: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

A.1. Código de Matlab 61

10 for n=1:Nt+111 nuloc=nu;12 for k=2:N+113 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 end18 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 end34 end35 return

Fichero A.6: Esquema de Lax-Friedrichs para el adjunto de la ecuación de Burgers(adj_laxfri.m)

1 % Adjunto de Lax−Friedrichs2 function 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 for k=Nt+2: -1:28 for j=2:N+19 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 end12 end13 return

Fichero A.7: Esquema de Enquist-Osher para el adjunto de la ecuación de Burgers(adj_osher.m)

1 % Adjunto de Osher2 function p = adj_osher(pT,u,mu ,Nt ,N)

Page 70: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

62 Apéndice A. Código 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 for k=Nt+2: -1:28 for j=2:N+19 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 e l se13 p(k-1,j)=p(k,j)...14 -mu*u(k-1,j)*(p(k,j-1)-p(k,j));15 end16 end17 end18 return

Fichero A.8: Esquema de Murman-Roe para el adjunto de la ecuación de Burgers(adj_roe.m)

1 % Adjunto de Roe2 function 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 for k=Nt+2: -1:28 for j=2:N+19 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 end17 end18 return

Fichero A.9: Condición inicial del problema de Riemann (u0_riemann.m)1 % Condicion inicial del problema de Riemann2 function u0=u0_riemann(x,ul ,ur ,c)3 u0=0*x;4 u0(x<c)=ul;5 u0(x>=c)=ur;6 return

Page 71: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

A.2. Código de FreeFem++ 63

Fichero A.10: Función objetivo (ud_riemann.m)1 % Funcion objetivo para el problema de Riemann2 function ud=ud_riemann(x,ul ,ur ,c)3 i f ul >ur4 ud=0*x;5 ud(x<c)=ul;6 ud(x>=c)=ur;7 e l se8 s=(ul+ur)/2;9 ud=x;

10 ud(x<ul)=ul;11 ud(x>ur)=ur;12 end13 return

A.2. Código de FreeFem++

A continuación presentamos el código básico empleado para realizar en FreeFem++las simulaciones correspondientes al capítulo 5. Se trata de un único fichero que almacenalas normas de la solución en un fichero .dat ubicado en el mismo directorio que el código.

Fichero A.11: Fichero principal conv-diff.edp1 // Opciones de visualizacion2 verbosity =0;3 int vdim =2; // Imagenes 2D (vdim=2) o 3D (vdim=3)4

5 // Parametros del problema6 real q=1.25;7 int 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 discretizacion11 // Dominio : rectangulo [L1−l1,L1+l1]x[L1−l1,L1+l1]12 real L1=800,L2=400,l1=L1/4, l2=L2/2;13 // Nodos por lado14 real n1=L1/2,n2=L2/2;15 // Tiempo final y tamano de paso16 real T=1000 , dt =0.1;17 // Contador de iteraciones y numero de pasos temporales18 int m, M=floor(T/dt);19 // Generacion de la malla20 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

Page 72: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

64 Apéndice A. Código empleado

25 real mass; // Magnitud conservada26 real unorm1 ,unorm2 ,unormInf; // Normas de u27 real gradnorm1 ,gradnorm2 ,gradnormInf; // Normas de grad(u)28 real t; // Tiempo29 Vh u,v,uold ,uaux1 ,uaux2; // Funciones sobre el mallado30

31 // Discretizacion de la condicion inicial y adaptacion de la32 // malla a esta33 i f (u0==1) 34 // Condicion u_0^135 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 e l se 49 // Condicion u_0^250 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 discreto67 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(x−q|u^n|^q−1,y),v)/dt71 - int2d(Th)(72 convect ([q*abs(uold )^(q-1.),0.],-dt,uold)*v/dt);73

74 // Fichero de exportacion de las normas75 ofstream normas("normas_u0"+u0+"_q"+100*q+".dat");

Page 73: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

A.2. Código de FreeFem++ 65

76

77 // Resolucion del problema78 real cpustart=clock ();79 // Dibujo y normas de la condicion inicial80 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 << " " << gradnorm298 << " " << gradnormInf << " " << endl;99 // Iteracion temporal

100 for ( int m=1;m<=M;m++) 101 // Calculo de la solucion y dibujo en el instante dado102 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 normas108 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 siguiente121 // iteracion122 Th=adaptmesh(Th ,u,err =0.1);123 u=u;124 uold=u;125 ;126 // Tiempo computacional empleado

Page 74: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

66 Apéndice A. Código empleado

127 real cpuend=clock ();128 cout << " Tiempo CPU empleado = " << cpuend -cpustart << endl;

Page 75: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

Bibliografía

[1] Aguirre, J., Escobedo, M., and Zuazua, E. Self-similar solutions of a convection-diffusion equation and related elliptic problems. Communications in Partial Differen-tial Equations 15, 2 (1990), 139–157.

[2] Alberty, J., Carstensen, C., and Funken, S. Remarks around 50 lines ofmatlab: Short finite 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 fluid dynamics. No. 21 in Proceedings inApplied Mathematics. SIAM, 1985.

[4] Buckley, S. E., and Leverett, M. C. Mechanism of fluid displacements in sands.Petroleum Transactions, AIME 146 (1942), 107–116.

[5] Buse, F. H. Euler equations in geophysics and astrophysics. Physica D: NonlinearPhenomena 237, 14-17 (August 2008), 2101–2110.

[6] Carpio, A. Large time behavior in convection-diffusion equations. Annali dellaScuola Normale Superiore di Pisa - Classe di Scienze 23 (4), 3 (1996), 551–574.

[7] Castro, C., Palacios, F., and Zuazua, E. An alternating descent method forthe optimal control of the inviscid burgers’ equation in the presence of shocks. Mat-hematical Models and Methods in Applied Sciences 18, 3 (2008), 369–416.

[8] Chen, G.-Q. G. Euler equations and related hyperbolic conservation laws. TheHandbook of Differential Equations 2 (2005), 1–104.

[9] Chen, G.-Q. G. Multidimensional conservation laws: Overview, problems, and pers-pective. Nonlinear Conservation Laws and Applications 153, 1 (2011), 23–72.

[10] Cole, J. D. On a quasilinear parabolic equation occurring in aerodynamics. Quarterlyof Applied Mathematics 9 (1951), 225–236.

[11] Crandall, M. G., and Liggett, T. M. Generation of semi-groups of nonlineartransformations on general banach spaces. American Journal of Mathematics 93, 2(April 1971), 265–298.

[12] Escobedo, M., Vazquez, J. L., and Zuazua, E. A diffusion-convection equationin several space dimensions. Indiana University Mathematics Journal 42, 4 (1993),1413–1440.

[13] Escobedo, M., and Zuazua, E. Comportement asymptotique des solutions d’uneéquation de convection-diffusion. Comptes rendus de l’Académie des sciences 309(1989), 329–334.

Page 76: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

68 Bibliografía

[14] Escobedo, M., and Zuazua, E. Large time behavior for convection-diffusion equa-tions in Rn. Journal of Functional Analysis 100, 1 (August 1991), 119–161.

[15] Evans, L. C. Partial differential equations, second ed., vol. 19 of Graduate Studiesin 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), 697–715.

[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. 3in 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), 77–95.

[20] Godunov, S. K. A difference scheme for numerical solution of discontinuous solutionof hydrodynamic equations. Matematicheskii Sbornik 47, 3 (1959), 271–306.

[21] Hartman, P. Ordinary Differential Equations, second ed., vol. 38 of Classics inApplied Mathematics. SIAM, 2002.

[22] Hecht, F. FreeFem++, third ed. Laboratoire Jacques-Louis Lions.

[23] Hopf, E. The partial differential equation ut + uux = µuxx. Communications onPure and Applied Mathematics 3, 3 (September 1950), 201–230.

[24] Hubbard, H. H., Ed. Aeroacoustics of Flight Vehicles - Theory and Practice (Volume1, Noise Sources), vol. 1 of NASA Reference Publication. NASA, August 1991.

[25] Jameson, A. Transonic airfoil calculations using the euler equations. Proceedingsof IMA Conference on Numerical Methods in Aeronautical Fluid Dynamics (March1981), 289–308.

[26] Johnson, C. Numerical solution of partial differential equations by the finite elementmethod. Cambridge University Press, 1987.

[27] Karimi-Fard, M., and Firoozabadi, A. Numerical simulation of water injectionin fractured media using the discrete-fracture model and the galerkin method. SPEReservoir Evaluation & Engineering 6, 2 (April 2003), 117–126.

[28] Kruzkov, S. N. First order quasilinear equations in several independent variables.Mathematics of the USSR-Sbornik 10, 2 (1970), 217–243.

[29] Lam, S. H. Notes on classical sonic boom theory.http://www.princeton.edu/∼mae/SHL/SonicBoom.pdf, March 2001.

Page 77: 'Aspectos matemáticos y numéricos de algunas leyes …€¦ · Agradecimientos Megustaríadarlasgraciasatodosaquellosquedeunouotromodohancontribuido aquepudieracompletarestamemoria.Antetodo,quierodarlelasgraciasalBasqueCenter

Bibliografía 69

[30] Lax, P. D. Hyperbolic systems of conservation laws and the mathematical theory ofshock 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. BirkhäuserVerlag, 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),485–519.

[33] Ohwada, T. Cole-hopf transformation as numerical tool for the burgers’ equation.Applied and Computational Mathematics 8, 1 (2009), 107–113.

[34] Pelosi, G. The finite-element method, part i: R. l. courant [historical corner]. IEEEAntennas and Propagation Magazine 49, 2 (April 2007), 180–182.

[35] Pironneau, O. On the transport-diffusion algorithm and its applications to thenavier-stokes equations. Numerische mathematik 38 (1982), 309–332.

[36] Quarteroni, A., and Valli, A. Numerical Approximation of Partial Differen-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 atmosphericmodel for weather research and forecasting applications. Journal of ComputationalPhysics 227, 7 (March 2008), 3465–3485.

[39] Songsheng, D., and Jianing, P. Application of convection-diffusion equation tothe analyses of contamination between batches in multi-products pipeline transport.Applied Mathematics and Mechanics 19, 8 (August 1998), 757–764.

[40] Sun, D., Lv, J., and Waller, S. T. In-depth analysis of traffic congestion usingcomputational fluid dynamics (cfd) modeling method. Journal of Modern Transpor-tation 19, 1 (March 2011), 58–67.

[41] van den Doel, K., and Ascher, U. M. The chaotic nature of faster gradientdescent methods. March 2010.