CD-6167.pdf

Anuncio
AGRADECIMIENTOS
A Sergio González, por la oportunidad de trabajar en su proyecto, por la paciencia, el incentivo diario y la confianza entregada. Por el privilegio de ser parte de su
equipo.
A Juan Carlos De los Reyes, por su motivación y permanente ayuda durante el
desarrollo de este proyecto. Por la oportunidad de trabajar en el Centro de Modelización Matemática.
A Pedro Merino y Luis Miguel Torres, quienes han contribuido enormemente en
mi formación.
A Miguel Yangari, por su ayuda con la búsqueda de textos bibliográficos.
DEDICATORIA
A Enrique, Bibiana y Daniela. En especial, a mi hermano David y a quien se convirtió en el
Conde de Monte Cristo.
Índice general
1. Introducción
1
2. Resultados preliminares
3
2.1. Diferenciabilidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
2.2. Operadores en coordenadas polares . . . . . . . . . . . . . . . . . . .
5
3. Estudio del flujo de un fluido de Bingham en una tubería
9
3.1. Leyes constitutivas de un fluido visco-plástico . . . . . . . . . . . . .
9
3.2. Flujo en la sección transversal de una tubería . . . . . . . . . . . . . .
11
3.3. Regularización . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
15
4. Algoritmo de Newton semi suave
19
4.1. Discretización en coordenadas polares . . . . . . . . . . . . . . . . . .
19
4.2. Aproximación por diferencias finitas . . . . . . . . . . . . . . . . . . .
21
4.2.1. Operador Laplaciano . . . . . . . . . . . . . . . . . . . . . . . .
21
4.2.2. Gradiente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
28
4.2.3. Divergencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
29
4.3. Método de Newton semi suave (Semismooth Newton Method) . . .
32
4.4. Aproximación del paso de Newton . . . . . . . . . . . . . . . . . . . .
33
4.4.1. Resultados numéricos del problema de Bingham en coordenadas polares . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
35
5. Método de Schwarz aplicado al algoritmo de Newton semi suave
39
5.1. Métodos de descomposición de dominio . . . . . . . . . . . . . . . . .
39
5.2. Método de Schwarz . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
41
5.2.1. Forma multiplicativa del método de Schwarz . . . . . . . . . .
45
VI
5.2.2. Forma aditiva del método de Schwarz . . . . . . . . . . . . . .
47
5.3. Método de Schwarz aplicado al problema de Bingham . . . . . . . .
49
5.4. Generalización a varios subdominios . . . . . . . . . . . . . . . . . . .
66
5.4.1. Detalles de implementación . . . . . . . . . . . . . . . . . . . .
72
5.4.2. Resultados numéricos de la paralelización del fluido de Bingham en varios subdominios . . . . . . . . . . . . . . . . . . . .
75
5.5. Resultados de convergencia . . . . . . . . . . . . . . . . . . . . . . . .
80
6. Conclusiones
83
Bibliografía
85
VII
Capítulo 1
Introducción
El estudio de los fluidos visco-plásticos ha cobrado gran importancia debido a la
gran cantidad de materiales que presentan este comportamiento y su presencia en
distintos procesos industriales.
En el campo de la mécanica de fluidos han surgido problemas en los que los algoritmos numéricos y las técnicas computacionales tradicionales resultan en un alto
costo computacional. Existe una verdadera necesidad y oportunidad en el análisis
numérico para plantear propuestas que permitan mejorar la simulación numérica
de problemas que involucren fluidos visco-plásticos. La industria, a través de sus
procesos de producción, ha generado y propuestos nuevos retos y problemas. (Ver
[24], [14] y [3]).
La investigación generada en la industria involucra simulaciones a gran escala.
Las técnicas de descomposición por multidominios constituyen una importante herramienta en la aproximación de estos problemas. Por este motivo, en este proyecto
de titulación se plantea el uso del método de descomposición de dominios de Schwarz para plantear un esquema paralelizado del algoritmo de Newton semi-suave
para la resolución del flujo de un fluido de Bingham.
En este trabajo de titulación revisaremos algunos conceptos y teoremas de mecánica de fluidos para la mejor comprensión del problema a tratar. Presentaremos las
leyes constitutivas de Bingham y el modelo matemático que describe el movimiento de este fluido. La geometría en la que se trabaja es una tubería cilíndrica. Por lo
tanto, para una precisa simulación numérica, se plantea el modelo en coordenadas
polares.
Revisaremos también el método de Newton semi-suave, (Semismooth Newton
Method) que se propone en [8] para simular el flujo laminar y estacionario de un
fluido de Bingham en la sección transversal de una tubería.
Este proyecto de titulación consiste en el planteamiento de un esquema parale1
lizado del algoritmo de Newton semi-suave para el flujo laminar y estacionario de
un fluido de Bingham. En concreto, se propone dividir el problema de Bingham en
una familia de subproblemas que se resuelven simultáneamente utilizando el algoritmo de Newton semi-suave. Para abordar el tema de la paralelización se propone
el método de descomposición de dominios de Schwarz [25]. Esta técnica permite
elaborar algoritmos paralelizados que se potencian gracias al uso de computadoras
con multiprocesadores.
Finalmente, presentaremos los resultados numéricos de la aplicación del método de Schwarz para el problema de Bingham. En estos experimentos numéricos
detallaremos el tiempo de ejecución del programa y compararemos el esquema paralelizado en el que se usa la técnica de descomposición de dominio con el esquema
sin paralelizar, es decir, si resolvemos el problema en un dominio general. Además,
presentaremos experimentos numéricos para analizar la convergencia del algoritmo.
2
Capítulo 2
Resultados preliminares
2.1. Diferenciabilidad
D EFINICIÓN 2.1. (Espacios de Banach). Se dice espacio de Banach a ( X, k · k) un es-
pacio normado completo.
D EFINICIÓN 2.2. (Lipschitz continuidad). Sean X e Y dos espacios normados y F :
X → Y se dice Lipschitz continua si existe una constante positiva L tal que
k F( x1 ) − F( x2 )kY ≤ Lk x1 − x2 kX
(2.1)
para todo x1 , x2 ∈ X .
D EFINICIÓN 2.3. (Derivada de Gâteaux). Sean X un espacio normado, U un abierto
no vacío de X y F : U ⊂ X → R una función. Fijado un vector no nulo h ∈ X y
u0 ∈ U ; si
F(u0 + th) − F(u0 )
(2.2)
DF(u0 ) = lı́m
t →0
t
existe y es lineal, se dice que F es Gâteaux diferenciable en la dirección h y en el
punto u0 ∈ U .
D EFINICIÓN 2.4. (Derivada de Fréchet). Sean X y Y dos espacios normados, A ⊂ X
un conjunto abierto, F : A ⊂ X → V una función. Se dice que F es diferenciable en
u0 en el sentido de Fréchet, si existe una aplicación lineal y continua L : X → R tal
que
F ( u0 + h ) + F ( u0 ) − L ( h )
lı́m
=0
(2.3)
khk
h →0
3
P ROPOSICIÓN 2.1. Sea F : U ⊆ X → R una función diferenciable en el sentido de
Fréchet en u0 . Entonces, F es diferenciable en el sentido de Gâteaux en ese punto.
Demostración. Ver [1].
D EFINICIÓN 2.5. (Derivada de Newton) Sean X y Y dos espacios de Banach. Adi-
cionalmente, sea D ⊂ X un conjunto abierto no vacío y f : D → Y una función
dada. f se denomina Newton diferenciable en D si existe una familia de funciones
G : D → L(X, Y ) tal que
1
k f ( x + h) − f ( x ) − G f ( x + h)hkY = 0,
h →0 k h k X
lı́m
(2.4)
para todo x ∈ D. Llamamos a G f derivada de Newton de f en D
A continuación introduciremos el concepto de función semismooth. Esta discusión
es esencial para el análisis del método de Newton semisuave (Semismooth Newton
Method) que se tratará en los capítulos posteriores.
Sea D ⊂ R n un conjunto abierto no vacío y f : D ⊂ R n → R m . Se dice que f es
una función semismooth si
| f ( x + h) − f ( x ) − Vh| = o(khk),
h→0
(2.5)
para x ∈ D. Aquí, V sirve como una derivada de Newton en el sentido de la definición 2.5.
La noción de Newton diferenciabilidad implica un concepto más general de función semismooth.
Por lo tanto, la noción de función semismooth introducida por la derivada de
Newton implica las siguientes caracterizaciones:
P ROPOSICIÓN 2.2. Sea F : V → R m definida en el conjunto abierto V ⊂ R n . Luego,
para x ∈ V las siguientes afirmaciones son equivalentes:
• f es semismooth en x
• f es Lipschitz continua en una vecindad de x, f ′ ( x, .) existe, y
sup
M∈∂ f ( x +s)
k Ms − ( x, s)k = o(ksk) cuando s → 0
4
(2.6)
• f es Lipschitz continua en una vecindad de x, f ′ ( x, .) existe, y
sup
M∈∂ f ( x +s)
k f ( x + s) − f ( x ) − Msk = o(ksk) as s → 0
(2.7)
Demostración. Ver [27] Prop. 2.7
−
→
E JEMPLO 1. Sea e ∈ R n un vector cuyas componentes son unos y g > 0 una cons-
tante. La función máx : R n −→ R n , ~y 7→ máx( g~e, ~y) es Newton diferenciable (ver
[17, Lem.3]). La derivada de Newton de esta función está dada por la matriz diagonal Gm definida de la siguiente manera:
→
( Gm ( −
y )ii ) =

1
0,
si yi ≥ 0,
para 1 ≤ i ≤ n,
si yi < 0.
→
Tenemos que Gm ∈ L(R n ) y | Gm −
y | está acotado para todo y ∈ R n , luego, es posible
mostrar que
−
→
−
→ −
→
→
→
→
| máx(0, −
y + h ) − máx(0, −
y ) − Gm ( −
y + h ) h | = 0 si khk∞ < mı́n |yi | : yi 6= 0,
→
→
lo que implica que Gm es la derivada de Newton de −
y −→ máx(0, −
y ).
2.2. Operadores en coordenadas polares
En este trabajo se plantea un esquema paralelizado del algoritmo de Newton
semi-suave para el flujo laminar y estacionario de un fluido de Bingham en la sección transversal de una tubería circular. Por lo tanto, debido a la geometría escogida,
en el Capítulo 4 trataremos con distintos operadores que requieren ser transformados a coordenadas polares. En esta sección presentamos el desarrollo para transformar los operadores involucrados a coordenadas polares.
Sean Ω ⊂ R2 un conjunto abierto y u : Ω → R tal que u ∈ C2 (Ω). Si tenemos que
( x, y) 7→ u( x, y) y hacemos uso de la transformación clásica a coordenadas polares
entonces
x = r cos θ, y = r sin θ,
(2.8)
donde
r ∈ [0, ∞),
θ ∈ [0, 2π ).
(2.9)
u( x, y) → u( x (r, θ ), y(r, θ )).
(2.10)
y
Por lo tanto,
En los capítulos posteriores trabajaremos con los operadores: Laplaciano (∆), Gra5
diente (∇) y Divergencia (div) en coordenadas polares. A continuación mostramos
el desarrollo para transformar los operadores de coordenadas rectangulares a polares.
• Laplaciano
En coordenadas rectangulares tenemos que
∆u =
∂2 u( x, y) ∂2 u( x, y)
+
.
∂x2
∂y2
(2.11)
Para transformar ∆ a coordenadas polares, debemos expresar las segundas deriva∂2 u ( x,y)
∂2 u ( x,y)
das parciales ∂x2 y ∂y2 en función de r y θ. En principio, como x e y son
funciones de r y θ, de (2.8) tenemos
∂x (r, θ )
∂r
∂x (r, θ )
∂θ
∂y(r, θ )
∂r
∂y(r, θ )
∂θ
∂2 x (r, θ )
∂r2
2
∂ x (r, θ )
∂θ 2
2
∂ y(r, θ )
∂r2
∂2 y(r, θ )
∂θ 2
= cos θ,
= −r sen θ,
= sin θ,
= r cos θ,
= − sin θ,
= −r cos θ,
= cos θ,
= −r sin θ.
Ahora, derivamos parcialmente u( x (r, θ ), y(r, θ )) respecto de r y, del desarrollo
previo, obtenemos:
∂u ∂x ∂u ∂y
∂u( x (r, θ ), y(r, θ ))
=
+
∂r
∂x ∂r
∂y ∂r
∂u
∂u
=
cos θ +
sin θ,
∂x
∂y
La segunda derivada parcial de u( x (r, θ ), y(r, θ )) respecto de r corresponde a:
∂2 u
=
∂r2
2
∂ ∂u ∂y ∂x
∂ ∂u ∂x ∂y ∂u ∂2 x ∂u ∂2 y
∂2 u ∂x
∂ u ∂y
+
+
+
+
+
∂x ∂y ∂r ∂r
∂y ∂x ∂r ∂r
∂x ∂r2
∂y ∂r2
∂x2 ∂r
∂y2 ∂r
∂2 u
∂ ∂u
∂2 u
cos θ sin θ + 2 sin2 θ.
= 2 cos2 θ + 2
∂x
∂x ∂y
∂y
(2.12)
Análogamente, calculamos la primera y segunda derivada parcial de u( x (r, θ ), y(r, θ ))
respecto de θ:
∂u ∂x ∂u ∂y
∂u( x (r, θ ), y(r, θ ))
=
+
,
∂θ
∂x ∂θ
∂y ∂θ
6
∂2 u
=
∂θ 2
2
∂ ∂u ∂y ∂x
∂ ∂u ∂x ∂y ∂u ∂2 x ∂u ∂2 y
∂ u ∂y
∂2 u ∂x
+
+
+
+
+
∂x ∂θ 2
∂y ∂θ 2
∂x2 ∂θ ∂x ∂y ∂θ ∂θ
∂y2 ∂θ ∂y ∂x ∂θ ∂θ
∂u
∂ ∂u
∂u
∂2 u
∂2 u
= 2 r2 sin2 θ − 2
r sin θ.
cos θ sin θ + 2 r2 cos2 θ − r cos θ −
∂x ∂y
∂x
∂y
∂x
∂y
(2.13)
Si reescribimos (2.12) y (2.13) tenemos:
∂2 u
∂2 u
∂
∂2 u
2
2
cos
+
sin
=
−2
2
2
2
∂x
∂x
∂y
∂r
∂u
∂y
cos θ sin θ
(2.14)
y
∂2 u 2
∂2 u
∂
∂2 u 2
2
2
r
sin
+
r
cos
=
+2
2
2
2
∂x
∂y
∂θ
∂x
∂u
∂u
r cos θ + r sin θ.
∂x
∂y
(2.15)
Para determinar las derivadas parciales respecto de r y θ, sumamos (2.14) y (2.15) y
obtenemos la siguiente igualdad
∂u
∂y
cos θ sin θ +
1 ∂2 u
∂2 u
∂2 u 1 ∂u
∂2 u
2
2
2
2
+
(
cos
θ
+
sin
θ
)
+
(
cos
θ
+
sin
θ
)
=
+
.
r ∂r
∂x2
∂y2
∂r2
r2 ∂θ 2
Por lo tanto
∂2 u ∂2 u
∂2 u 1 ∂u
1 ∂2 u
+
=
+
+
,
∂x2
∂y2
∂r2
r ∂r
r2 ∂θ 2
es decir:
∂2 u 1 ∂u
1 ∂2 u
+
.
+
r ∂r
∂r2
r2 ∂θ 2
Por la regla de candena, podemos escribir (2.16) de la siguiente manera
∆u =
∆u =
1 ∂ ∂u
1 ∂2
(r ) + 2 2 .
r ∂r ∂r
r ∂θ
(2.16)
(2.17)
Las igualdades (2.16) y (2.17) se conocen como las versiones no coservativa y conservativa, respectivamente, del operador Laplaciano.
Para los operadores Divergencia y Gradiente se procede de manera análoga y se
obtienen los siguientes resultados:
• Divergencia
Forma no conservativa:
divu =
∂(u1 ) ∂u2
+
.
∂x
∂y
7
(2.18)
Forma conservativa:
divu =
1 ∂(ru1 ) 1 ∂u2
+
.
r ∂r
r ∂θ
(2.19)
∂u ∂r
1 ∂u
r ∂θ
(2.20)
• Gradiente
∇u =
8
Capítulo 3
Estudio del flujo de un fluido de
Bingham en una tubería
Un fluido de Bingham es un fluido visco-plástico que se caracteriza por poseer
un umbral de plasticidad o yield stress: si la fuerza que se impone sobre el fluido
excede este umbral o punto crítico, entonces el material inicia su movimiento con
deformación continua. Por lo tanto, si la fuerza o stress es menor al yield stress el
material se comporta como un sólido rígido. El estudio de fluidos de tipo viscoplástico ha cobrado gran importancia debido a su uso en innumerables procesos
industriales tales como producción de comida (salsas y pastas), encementación de
pozos petrolíferos (ver [24]), diseño de sistemas de suspensión para automóviles,
lubricación, producción de cerámicas, entre otros (ver [3], [14]).
En este capítulo se analizan las leyes constitutivas de un fluido visco-plástico
que es tratado desde la perspectiva de medio continuo. La idea de medio continuo
es una abstracción, no se requiere estudiar la materia desde una perspectiva molecular. Se considera una porción de materia formada por entidades pequeñas pero, de
dimensión finita y que interactúan con sus semejantes de acuerdo a ciertas leyes. En
este contexto, un fluido visco-plástico obedece las tres leyes básicas de conservación
de la mécanica de un medio continuo y, además, leyes constitutivas particulares que
se mencionan en la siguiente sección.
3.1. Leyes constitutivas de un fluido visco-plástico
Un fluido visco-plástico obedece a las tres leyes de conservación que constituyen los principios básicos de la mécanica clásica de un medio continuo, éstas son:
conservación de masa, conservación de momentum y conservación de la energía.
Sea D una región en un espacio n-dimensional, n = 2, 3 ocupada por un fluido.
9
Sea x ∈ D un punto, consideremos que una partícula del fluido pasa por x en el
tiempo t, con x = ( x, y, z). Sea y(x, t) la velocidad de la partícula del fluido. Para
cada tiempo fijo y es un campo vectorial en D. El fluido tiene densidad de masa
ρ(x, t), es decir, la masa por unidad de volumen del material en la posición x en el
tiempo t.
D EFINICIÓN 3.1. (Conservación de masa.) El principio de conservación de masa en
forma diferencial establece que:
∂ρ
+ div (ρy) = 0
∂t
(3.1)
esta ecuación es conocida como ecuación de continuidad. Ver [4]
D EFINICIÓN 3.2. (Conservación de momentum.) En un fluido en movimiento, se pro-
duce un gradiente de velocidad y una transferencia de momento por velocidad de
área y su forma diferencial es (ver [4]):
ρ
∂y
= −∇ p + ρ f
∂t
(3.2)
Tensor de deformación o strain tensor E . El tensor de deformación mide la deformación del material cuando está en movimiento. Si el tensor de deformación es
igual a cero, significa que le movimiento del material es sin deformación, es decir,
rígido. Por el contrario, si el movimiento del material es con deformación, la tasa de
deformación está dada por la magnitud de E . (Ver [8]).
Tensor de estrés σ. El tensor de estrés describe las fuerzas internas en un material elástico debido a su deformación. Consideremos una región V del fluido con
superficie S. Si asumimos que sobre un elemento de superficie dS, el fluido (visto
desde la perspectiva de un medio continuo) fuera de V transmite una fuerza sobre
el fluido contenido en V, esta fuerza se denomina fuerza de superficie y se denota
−
→
−
→
por σ n dS. Las componentes σ n representan la tracción transmitida desde fuera hacia el interior de V. Estos vectores de tracción son conocidos como los vectores de
−
→
−
→
estrés. Sea σij la j-ésima componente de σi y σi n la i-ésima componente de σ n . Del
principio de equilibrio local de las fuerzas de estrés (stress) podemos escribir:
−
→
→
σi n = σij −
n j,
(3.3)
donde σij son las componentes del tensor de segundo orden σTot denominado tensor
de estrés de Cauchy. Por lo tanto, podemos reescribir la ecuación (3.3) de la siguiente
manera:
−
→
→
σ n = σTot · −
n.
(3.4)
10
Ecuación de Cauchy del movimiento. (Ver [4]). La ecuación de Cauchy relaciona la
definición de balance de momento en un volumen regular con el concepto de tensor
de estrés.
∂y
ρ
= ρf + ∇ · σ
(3.5)
∂t
Incomprensibilidad. (Ver [20]). Del principio de conservación de la energía sabemos
que la tasa de incremento de masa en D es igual a la tasa a la cual la masa cruza la
frontera ∂D.
Z
Z
d
→
ρdV = −
ρy · −
n dS,
(3.6)
dt D
∂D
→
donde y es el campo de velocidad del fluido y −
n es el vector normal a D. Integrando
por partes, obtenemos la siguiente expresión.
∂ρ
+ div(ρy) = 0.
∂t
(3.7)
Si ρ es constante en el tiempo, la ecuación de la continuidad (3.7) implica que
div y = 0.
(3.8)
3.2. Flujo en la sección transversal de una tubería
El problema del flujo de un fluido de Bingham estacionario y laminar en la sección transversal de una tubería debido a una diferencia de presión ha sido tratado
en trabajos como [23] y [20]. En este último trabajo, se analiza el flujo de un fluido visco-plástico desarrollando el tensor de estrés de Cauchy, σTot , y el tensor de
deformación E como se muestra a continuación.
σTot = − p · I + σ
(3.9)
Eij
(3.10)
σij = g q
1
2 kE k
+ 2µEij
donde g corresponde al umbral de plasticidad o yield stress y µ es la viscosidad del
fluido. Si E = 0, tenemos que el material se mueve como un sólido rígido pues,
no existe deformación. Sin embargo, cuando E = 0, el tensor de estrés de Cauchy
(3.9) está indeterminado. A pesar de esto, podemos obtener información de (3.10)
analizando si E 6= 0.
11
Si E 6= 0, obtenemos:
1
k σ k2 =
2
de donde concluimos que
q
1
2 kσ k
g + 2µ
r
1
kE k
2
!2
(3.11)
≥ g.
De (3.10) tenemos que:
E=


1 
g 
1− q
σ
2µ
1
k
σ
k
2
(3.12)
q
Por otro lado, si kE k = 0, concluimos que 12 kσk < g. Para resumir, las leyes
constitutivas de un fluido de Bingham se pueden escribir de la siguiente manera
(ver [20, Ch.VI] y [8]):
q

 12 kσk < g
q

 12 kσk ≥ g
ssi E = 0
ssi E =
1
2µ
g
1 − √1
2 kσk
σ
(3.13)
q
Es así que, si el estrés aplicado al material, cuya magnitud está dada por 12 kσk
no excede el umbral de estrés g, el fluido se mueve como sólido rígido. Si el estrés
aplicado es mayor a g, el material se comporta como un fluido.
Ahora, las ecuaciones que describen el movimiento de fluidos incompresibles
son:
∂y
= Div σTot + f ,
(3.14)
∂t
div y = 0,
(3.15)
En este trabajo nos interesa el flujo estacionario de un fluido. Por lo tanto, podemos
reescribir las ecuaciones de la siguiente manera:
Div σTot + f = 0.
(3.16)
Finalmente, el sistema que modela el flujo de un fluido de Bingham en una geometría en R d sigue de la siguiente manera: hallar y : Ω ⊂ R d → R d y p : Ω ⊂ R d → R
12
tal que


div y = 0,






σ Tot = − p · I + σ,



√

σ = 2µε(y ) + 2g ε(y) ,
kε(y)k

kσk ≤ g,





Div σ − ∇ p + f = 0,





y = 0,
si ε(y ) 6= 0,
(3.17)
si ε(y ) = 0,
en Ω,
sobre Γ.
Consideremos ahora una tubería cuyo rayo generador es paralelo al eje x3 en el
sistema de ejes x1 x2 x3 . Sea Ω ⊂ R2 el dominio que representa la sección transversal
de una tubería como se muestra a continuación.
xz2
xx1
րΩ
x3y
Estudiaremos el flujo entre x3 = 0 y x3 = L, donde L corresponde a una longitud
dada. En las secciones transversales x3 = 0 y x3 = L imponemos lo siguiente:
p( x3 )| x3 =0 = 0,
p( x3 )| x3 = L = −cL,
(3.18)
donde c es un escalar positivo que representa la caída de presión por longitud.
Estamos interesados en los campos de velocidades y y de presiones p que satisfacen: la condición de incompresibilidad (3.14), las leyes constitutivas de un fluido
de Bingham (3.13), la condición de adhesión dada por:
y = 0 sobre
Γ
y las condiciones (3.18). Si asumimos que el flujo es laminar el problema tiene solución única (ver [20]). Consideramos que el fluido se mueve debido a un efecto
de caída de presión en la tubería y no actúan fuerzas de cuerpo sobre el material,
13
por lo tanto, f = 0 y el campo de velocidad se reduce a (0, 0, y), De la condición de
incompresibilidad tenemos que el tensor de velocidades es:

0


ε=
 0

 ∂y
∂x1
0
0
∂y
∂x2
∂y
∂x1
∂y
∂x2
0







(3.19)
Luego, la ecuación (3.14) toma la forma:
∂p
=
0
∂x1
∂p
=
0
∂x2
∂p
∂σ31 ∂σ32
=
+
∂x3
∂x1
∂x2
(3.20)
p = −cx3 .
(3.21)
Este sistema implica que:
Por lo tanto, buscamos un campo escalar y = y( x1 , x2 ) en Ω tal que satisfaga:
∂σ31 ∂σ32
= −c,
+
∂x1
∂x2
ε3i
σ3i = g
1 + 2µ ε 3i , para
2
(ε13 +ε223 ) 2
y=0
en
Ω
i = 1, 2 en
sobre
Ω
(3.22)
Γ
El sistema anterior corresponde a la forma diferencial de las ecuaciones del flujo del
fluido de Bingham. Si reemplazamos (3.19) en (3.22) tenemos lo siguiente:
σ31
1 ∂y
1 ∂y
2 ∂x 1
=g
+ 2µ
2 2 ! 12
2 ∂x 1
1 ∂y
1 ∂y
+
2 ∂x 1
2 ∂x 2
∂y
∂y
∂x 1
=g
1 +µ
!
2
∂x 1
∂y 2
∂y 2
+
∂x 1
∂x 2
∂y
∂y
= g ∂x 1 + µ
.
|∇y|
∂x 1
14
(3.23)
Procedemos de la misma manera con σ32 y obtenemos:
σ32
∂y
∂y
.
= g ∂x 2 + µ
|∇y|
∂x 2
(3.24)
De (3.23) y (3.24) podemos escribir la primera ecuación de (3.22) de la siguente manera:
-div(σ31 , σ32 ) − c

∂y
∂y
∂y
∂y 

= −div  g ∂x 1 + µ
, g ∂x 2 + µ
−c
|∇y|
∂x 1 |∇y|
∂x 2

= -div
g
|∇y|
= -div
∂y ∂y
,
∂x 1 ∂x 2
+µ
∂y ∂y
,
∂x 1 ∂x 2
−c
(3.25)
g
∇ y + µ∇ y − c
|∇y|
= −µ∆y − div
g
∇y − c
|∇y|
Finalmente, para el flujo laminar y estacionario de un fluido de Bingham en la
sección transversal de una tubería, el tensor de velocidades E corresponde a ∇y y
tensor de estrés está dado por q. El modelo se escribe como se muestra a continuación.



−µ∆y − div q = f , en Ω,




q = g ∇y ,
si ∇y 6= 0
|∇y|
(3.26)


|q| ≤ g
si ∇y = 0




y = 0,
en Γ.
3.3. Regularización
Para aproximar numéricamente el campo vectorial de la velocidad y del flujo, es
necesario determinar las regiones en las que el material se mueve como sólido rígido
(∇y = 0) y las regiones en las que el movimiento del material presenta deformación
continua (∇y 6= 0). Las zonas donde el material se comporta como un sólido y como
un fluido se denominan zonas inactivas y activas, respectivamente, y se definen de
la siguiente manera:
A := { x ∈ Ω : |∇y| 6= 0}
(3.27)
15
y
I := Ω\A.
(3.28)
Determinar las zonas activas (∇y 6= 0) e inactivas (∇y = 0) no es posible de
forma directa en (3.26). En efecto, el tensor de estrés q, cuando ∇y = 0, no está
determinado. Este hecho sugiere un tratamiento especial para el término no diferenciable |∇y|. Una forma de analizar este problema es a través de un proceso de
regularización. En [8] se propone la regularización de Huber. Este proceso consiste
en una regularización local, es decir, se aproxima la función |∇y| por una función
continuamente diferenciable y se realiza un suavizamiento local en la vecindad donde existen problemas. Así, se supera el problema de la no diferenciabilidad de una
función al reemplazarla por una versión continuamente diferenciable de la misma.
Para ejemplificar lo mencionado anteriormente revisemos la regularización de
Huber para el valor absoluto. Consideremos la función diferenciable ψγ (w) definida
por:

 g|w| − g2 , si |w| ≥ g
2γ
γ
ψγ ( w ) : = γ
(3.29)
g
 | w |2 ,
si
|
w
|
<
2
γ
para γ >> 1.
Figura 3.1: Regularización de Huber para |.|
En la figura 3.1 observamos que en x = 0 resolvemos el problema de la no
diferenciabilidad del valor absoluto con una aproximación diferenciable.
Revisemos el proceso de regularización local para la norma euclidiana k · k. Consideremos la siguiente función continuamente diferenciable ψ : R2 → R definida
por:

 gkwk − g2 , si kwk ≥ g
2γ
γ
(3.30)
ψγ ( w ) : = γ
g
 k w k2 ,
si
k
w
k
<
2
γ
Esta función es una regularización local de la norma euclidiana. En la siguiente
16
figura observamos como ψ suaviza la curva de k · k. Si tomamos γ lo suficientemente
grande, ψ aproxima k · k.
Figura 3.2: Regularización de Huber de la norma euclidiana.
Como se mencionó previamente, nuestro objetivo consiste en usar una regularización local para determinar las zonas activas e inactivas y determinar el tensor de
estrés q cuando ∇y = 0. Podemos revisar el proceso de regularización de Huber
para el modelo de Bingham de la siguiente manera.
Si consideramos ∇y 6= 0, podemos verificar que
máx (0, |∇y|) q = |∇y| g
= g∇y.
∇y
|∇y|
(3.31)
Sin embargo, las zonas inactivas se mantienen indeterminadas, es decir, nuestra mayor dificultad recae cuando ∇y = 0. En este caso, para determinar q, consideremos
una versión regularizada de (3.31).
máx
g
, |∇yγ | qγ = g∇y
γ
(3.32)
donde γ >> 1 corresponde al parámetro de regularización.
Es así, que proponemos tomar un parámetro de regularización γ >> 1 de tal
forma que el tensor de estrés quede definido de la siguiente manera:
qγ =

g
∇y
,
|∇yγ |
γ∇y ,
γ
17
g
|∇yγ | ≥ γ ,
g
|∇yγ | < γ .
(3.33)
Esta técnica nos conduce a la obtención del tensor de estrés regularizado. Gracias a (3.33) podemos determinar las regiones activas e inactivas del material. De
esta manera tenemos una forma explícita de q para poder obtener la solución numérica del flujo. Podemos entender (3.33), desde la perspectiva de las zonas activas e
inactivas como:
qγ =
donde

g
∇y
,
|∇yγ |
γ∇y ,
γ
c.t.p en
Aγ ,
c.t.p en
Iγ
Aγ = { x ∈ Ω : |∇yγ | ≥
(3.34)
g
}
γ
(3.35)
y
Iγ = Ω\Aγ .
(3.36)
De (3.33) y (3.32) podemos reescribir el tensor de estrés regularizado como sigue
qγ = g
γ∇yγ
máx( g, γ|∇yγ |)
c.t.p en
Ω.
Luego, la ecuación previa es equivalente a:
máx( g, γ|∇yγ ( x )|)qγ ( x ) − gγ∇yγ ( x ) = 0
c.t.p en
Ω,
para todo
γ>0
(3.37)
Una vez obtenido qγ , de (3.37), podemos escribir el sistema (3.26) en su versión
regularizada de la siguiente manera:




−µ∆yγ − div qγ = f ,
máx( g, γ|∇yγ ( x )|)qγ ( x ) − gγ∇yγ ( x ) = 0,



y = 0,
en Ω,
c.t.p en Ω,
(3.38)
en ∂Ω.
La metodología propuesta en esta sección, que describe el proceso y la técnica de
regularización local para obtener la versión regularizada (3.33) se presenta en [8].
18
Capítulo 4
Algoritmo de Newton semi suave
En este capítulo, plantearemos el modelo del flujo de Bingham en coordenadas
polares para obtener una simulación más precisa en la geometría deseada, es decir, en la sección transversal de una tubería cilíndrica. Para nuestros propósitos de
simulación, proponemos una discretización en diferencias finitas (en coordenadas
polares) para el dominio circular. Además, revisaremos el método de Newton semi
suave (Semismooth Newton method, SSN-method) para la resolución del problema de
Bingham en una tubería. El objetivo principal de este trabajo es desarrollar un esquema paralelizado del algoritmo SSN y su implementación. Por lo tanto, revisaremos
nociones y conceptos básicos sobre el método de Newton, así como el algoritmo
planteado en [8] para la resolución numérica del fluido de Bingham.
4.1. Discretización en coordenadas polares
Como vimos en capítulos anteriores, el problema regularizado del flujo de un
fluido de Bingham está dado por:




−µ∆yγ ( x ) − div qγ ( x ) = fγ ,
máx( g, γ|∇yγ ( x )|)qγ ( x ) − gγ∇yγ ( x ) = 0,



y = 0,
in Ω,
a.e. Ω,
(4.1)
in Γ.
El dominio en el que se desea resolver el sistema (4.1) corresponde a la sección
transversal de una tubería cilíndrica. Sin embargo, (4.1) está dado en el sistema ortonormal de ejes 0x1 x2 x3 (coordenadas rectangulares). En esta sección se propone
plantear el sistema de ecuaciones en coordenadas polares para así obtener la solución en la tubería cilíndrica. Además, para la discretización espacial, se propone un
esquema en diferencias finitas (para coordenas polares). Por lo tanto, es necesario
19
transformar el sistema de optimalidad a coordenadas polares, esto incluye los operadores y las funciones involucrados.
Tenemos:




−µ∆yγ − div qγ = f,
in Ω,
máx( g, γ|∇yγ |)qγ − gγ∇yγ = 0,



y = 0,
Sean:
r ∈ [0, ∞), θ ∈ [0, 2π );
x = r cos θ,
a.e. Ω,
(4.2)
in Γ.
y = r sin θ,
(4.3)
los operadores que se requieren transformar son los siguientes:
• Laplaciano
∆=
∆=
1 ∂ ∂
1 ∂2
(r ) + 2 2
r ∂r ∂r
r ∂θ
∂2
1 ∂2
1 ∂
+
+
r ∂r r2 ∂θ 2
∂r2
forma conservativa,
(4.4)
forma no conservativa.
(4.5)
• Gradiente
∇=
∂ ∂r
.
1 ∂
r ∂θ
(4.6)
• Divergencia
divu =
1 ∂(ru) 1 ∂v
+
r ∂r
r ∂θ
forma conservativa,
r∂u 1 ∂v
1
u+
+
divu =
r
∂r
r ∂θ
forma no conservativa.
(4.7)
(4.8)
Para verificar estas igualdades hacemos referencia al Capítulo 2 y a [15].
Una vez transformados los operadores, es necesario expresar la dependencia que
tienen el campo de velocidades y, el tensor de estrés q y f de r y θ, pues, con el
cambio de coordenadas, x e y son ahora funciones de r y θ.
De (4.3) podemos escribir:
yγ ( x, y) → yγ ( x (r, θ ), y(r, θ )) → uγ (r, θ )
(4.9)
qγ ( x, y) → qγ ( x (r, θ ), y(r, θ )) → wγ (r, θ ).
(4.10)
20
fγ ( x, y) → fγ ( x (r, θ ), y(r, θ )) → hγ (r, θ ).
(4.11)
Luego, el sistema de optimalidad tranformado es el siguiente:

∂u γ (r,θ )

1 ∂


−µ r ∂r (r ∂r ) +
2
1 ∂ u γ (r,θ )
2
r
∂θ 2
−
1 ∂(rw)
r ∂r
+ 1r ∂w
∂θ = hγ ,
máx( g, γ|∇uγ (r, θ )|)wγ (r, θ ) − gγ∇uγ (r, θ ) = 0,



y = 0,
in Ω,
a.e. Ω,
(4.12)
in Γ.
4.2. Aproximación por diferencias finitas
4.2.1. Operador Laplaciano
Consideremos el dominio Ω ⊂ R2 . Buscaremos una solución para el problema
(4.12) utilizando un esquema en diferencias finitas.
Consideremos el caso [0, R] × Ω = [0, 2π ).
En la Figura previa podemos ver una malla de nodos en el plano r − θ. Como
nuestro objetivo es resolver el sistema (4.12) en coordenadas polares, la configuración de los nodos cambia de la siguiente manera: los nodos ubicados en las filas de
la malla r − θ se disponen a lo largo de los rayos de la malla circular o, las columnas
de nodos de la malla r − θ se ubican en los anillos de la malla circular. Luego, los
21
nodos en el rayo θ = 0 coinciden con los nodos en el rayo θ = 2π. Este cambio de
coordenadas advierte una complicación: el origen se encuentra dentro del dominio
de discretización.
Como el origen está dentro del dominio de interés y 0 ≤ θ < 2π se tiene condiciones de frontera periódicas en la dirección de θ. Sin embargo, en la dirección radial
r el origen requiere un trato especial. En [22] se da un tratamiento numérico de las
coordenadas polares evitando la colocación de un nodo de la cuadrícula en el polo.
Para ello se utiliza una grilla escalonada de la siguiente manera:
1
ri = (i − )∆r,
2
con:
∆r =
i = 1, 2, · · · , m.
R
,
m − 21
(4.13)
(4.14)
donde
∆r
, rm = R.
2
Es así que se evita tener un nodo en r = 0. Luego,
r1 =
θ = j∆θ,
j = 1, 2, · · · , n.
∆θ =
(4.15)
2π
n
Para la discretización del operador Laplaciano se tienen dos esquemas en forma
conservativa y no conservativa. Matemáticamente, las derivadas originales (4.4) y
(4.5) son las mismas. Sin embargo, en su forma discreta existen diferencias.
Para un mayor entendimiento sobre la diferencia de los dos esquemas, en general, revisemos la siguiente derivada:
∂ρu
.
∂x
Al discretizarla obtenemos:
(ρu)i − (ρu)i −1
∂ρu
≈
.
∂x
h
(4.16)
Ahora, en su forma no conservativa, la derivada corresponde a:
ρ
∂u
∂ρ
+u .
∂x
∂x
22
(4.17)
Usando la misma aproximación numérica tenemos:
ρ
∂u
∂ρ
u − ui − 1
ρ − ρi −1
+ u ≈ ρi i
+ ui i
∂x
∂x
h
h
(4.18)
Por lo tanto, la forma no conservativa es diferente a la conservativa y su nombre se debe a la siguiente justificación: si sumamos los términos correspondientes
a cada uno de los nodos sobre la grilla, sólo los términos de los nodos extremos
deben permanecer para balancear la ecuación. Tomemos una grilla unidimensional
de 4 puntos, por lo tanto, 0 ≤ i ≤ 3. Si sumamos todos los términos en su forma
conservativa tendríamos:
(ρu)1 − (ρu)0 (ρu)2 − (ρu)1 (ρu)3 − (ρu)2
+
+
h
h
h
es decir, se mantienen sólo los términos correspondientes a los nodos i = 0 e i = 3.
Los otros términos se cancelan. Por otro lado, al realizar la suma con los términos en
la forma no conservativa obtenemos
ρ1
u1 − u0
ρ − ρ0
u − u1
ρ − ρ1
u − u2
ρ − ρ2
+ u1 1
+ ρ2 2
+ u2 2
+ ρ3 3
+ u3 3
. (4.19)
h
h
h
h
h
h
En este caso, ningún término se cancela, es decir, cada vez que se añade un término
la suma aumenta. Desde el punto de vista de las ecuaciones de la conservación que
se mencionan en el Capítulo 3, la forma conservativa de los operadores balancea la
ecuación, es decir, el flujo que sale es igual al que ingresa, por lo tanto, al sumar los
términos, se cancelan todos excepto los correspondientes a los nodos en la frontera.
Una vez mencionada la diferencia surge la pregunta sobre qué esquema usar.
En [19, Ch.12] se menciona que para los problemas que involucren choques (shocks)
en la solución se prefiere la forma conservativa. Choque, en un fluido, corresponde
a cambios discontinuos en las propiedades del fluido así como: velocidad, presión
o temperatura. En [18] se presentan varios trabajos en los que para problemas de
flujos que involucran discontinuidades en sus dominios espaciales es mejor usar
un esquema numérico en su forma conservativa. Sin embargo, hay que tomar en
cuenta otras consideraciones. En algunas aplicaciones en ingeniería se prefiere el
esquema no conservativo, aún si se resuelven problemas con choques o shocks. En [5]
se trabajó con las ecuaciones de flujo transónico y se obtuvieron mejores resultados
con el esquema no conservativo.
Tomando en cuenta las consideraciones mencionadas previamente, en el desarrollo de este proyecto de titulación se llevaron a cabo varios experimentos numéricos. Los operadores Laplaciando y Divergencia admiten ambas formulaciones, conservativa y no conservativa. Por lo tanto, para estos operadores se probaron, ambos
23
esquemas y sus combinaciones. Sin embargo, la mejor aproximación numérica, al
compararla con la solución exacta, se alcanzó si se elige, para el operador Laplaciano, la formulación no conservativa, en i = 1 y la conservativa para los otros
nodos de la grilla. En el caso de la Divergencia, la mejor aproximación se alcanzó
usando el esquema no conservativo.
Se conoce que la solución exacta u para el flujo de un fluido de Bingham en la
sección transversal de una tubería está dada por (ver c.f. [13]) :
ū( x ) =
 √ 2 2 h q
i
R − x1 + x2
f
2 + x2 − 2g


R
+
x

2
1
2µ
2


2g h 

f
 R− f
R+
2µ
2
2g
f
− 2g
i
si
2g
f
≤
si 0 ≤
q
q
x12 + x22 ≤ R
x12 + x22 ≤
2g
f
La sección transversal de la tubería está dada por el disco definido por:
Ω := { x = ( x1 , x2 ) ∈ R2 : x12 + x22 < R2 , R > 0.}
(4.20)
El valor máximo de la solución exacta es: máx u = 1,6.
En la siguiente tabla mostramos el error de aproximación en la norma H01 usando
los diferentes esquemas.
Esquema
1
2
formulación
conservativa
conservativa
operador
Laplaciano
Laplaciano
3
no conservativa
no conservativa
4
operador
Divergencia
Divergencia
Laplaciano
formulación
conservativa
no conservativa
conservativa
Laplaciano
conservativa
Divergencia
Cuadro 4.1: Esquemas
Esquema
1
2
3
4
→
ku − −
u k H1
0
0.651
3.9 ×10− 4
13.7531
13.6503
→
máx −
u
1.92
1.63
0.3602
0.3564
Cuadro 4.2: Error de aproximación
24
Divergencia
De los experimentos numéricos mostrados previamente, vemos que los esquemas 3 y 4, cuando se usa la formulación no conservativa del Laplaciano, el error de
aproximación en la norma H01 es de aproximadamente 13,7. Por lo tanto, descartamos este esquema de discretización para el operador Laplaciano. Sin embargo, si
combinamos los esquemas de discretización, para el Laplaciano, de la siguiente manera: la formulación no conservativa, en i = 1 y la conservativa para los otros nodos
de la grilla, obtuvimos:
Esquema
5
formulación
no conservativa en i = 1, conservativa para
los otros nodos de la grilla
operador
Laplaciano
Cuadro 4.3: Esquema para el Laplaciano
Esquema
6
7
8
9
formulación
conservativa
no conservativa
conservativa en i = 1, no conservativa para
los otros nodos de la grilla
no conservativa en i = 1, conservativa para
los otros nodos de la grilla
Cuadro 4.4: Esquema para la Divergencia
Esquemas
5-6
5-7
5-8
5-9
→
ku − −
u k H1
0
0.6458
3.9 ×10− 4
4.97 ×10− 4
0.8903
→
máx −
u
1.9161
1.629
1.59
1.9248
Cuadro 4.5: Error de aproximación
25
operador
Divergencia
Divergencia
Divergencia
Divergencia
De estos experimentos encontramos que las mejores aproximaciones son las entregadas por los esquemas 5 − 7 y 5 − 8. Finalmente, el esquema 5 − 8 es el que mejor
→
aproxima la velocidad máxima, máx −
u respecto de máx u = 1,6.
En resumen, para el Laplaciano, la forma conservativa del esquema en diferencias finitas es la que se usa para los nodos que corresponden a los índices: i =
2, · · · , m − 1. Para i = 1, se usa el esquema que corresponde a la forma no conservativa. Por lo tanto, para la aproximación del Laplaciano ∆u se utiliza la estrella
de 5 puntos y el esquema final es el siguiente:
u0j − 2u1j + u2j
1 u1,j−1 − 2u1j + u1,j+1
1 u2j − u0j
+
+
r1 2∆r
(∆r2 )
(∆θ )2
r12
(4.21)
para i = 1, j = 1, · · · , n,
1 ri − 21 ui −1,j − (ri − 12 + ri + 21 )ui,j + ri + 21 ui +1,j
1 ui,j−1 − 2ui,j + ui,j+1
+
ri
(∆r )2
(∆θ )2
ri2
(4.22)
para i = 2, · · · , m − 1, j = 1, · · · , n.
Los coeficientes u0,j corresponden a la aproximación de la solución en el nodo
fantasma r = 0, pues, con la grilla escalonada, evitamos tener un nodo en ese polo. Por lo tanto, estos coeficientes son igual a cero y, el esquema simplificado es el
siguiente:
−2u1j + u2j
1 u2j
1 u1,j−1 − 2u1j + u1,j+1
+
+ 2
(4.23)
2
(∆r )
r1 2∆r r1
(∆θ )2
para i = 1, j = 1, · · · , n.
Y
1 ri − 21 ui −1,j − (ri − 12 + ri + 21 )ui,j + ri + 21 ui +1,j
1 ui,j−1 − 2ui,j + ui,j+1
+
ri
(∆r )2
(∆θ )2
ri2
(4.24)
para i = 2, · · · , m − 1, j = 1, · · · , n.
Al fijar los coeficientes u0,j = 0 se asegura que la matriz resultante sea diagonal
dominante.
Tomaremos n = m como pasos de discretización tanto para ∆R y ∆θ para que la
grilla escalonada tenga el mismo número de nodos en los rayos y los anillos de la
malla circular.
El operador laplaciano se aproxima por la siguiente matriz por bloques:
−µ∆ ≈ Ah
26
(4.25)
donde

Ah =
µ
(∆r )2
D1 R1
0
··· ···
0

 L1 D2 R2
0
···
0

..

..
..
..
..
.
.
.
.
 0
.
 .
 . ...
Lk−1 Dk
Rk
0
 .

..
..
 0 · · · · · · ...
.
.

0 ··· ···
0 Lm−2 Dm−1












con k = 1, · · · , m − 1. Usaremos el índice k para determinar la posición de las submatrices en Ah . El índice i se reserva para la discretización nodal.
Luego:
D1 R1 0 · · · · · · 0
corresponde al esquema (4.23). Cada bloque tiene la siguiente forma:










D1 = 









4
−2 1 +
(∆θ )2
4
(∆θ )2
0
4
(
∆θ
)2
4
−2 1 +
(∆θ )2
..
.
4
(∆θ )2
0
..
..
.
..
.
0
4
(∆θ )2
4
(∆θ )2
···
0

0 ···

.
 0 .. · · ·
R1 = 
 ..
.
 . · · · ..
0 ··· ···
2
.
4
−2 1 +
(∆θ )2
4
(∆θ )2
0
..
.
..
.
2
Es decir, R1 = 2I.
Para k = 2, · · · , m − 1 usamos el esquema (4.24)
27
4
(∆θ )2
..
.
···
0



.













0





4


2
(∆θ )


4
−2 1 +
,
2
(∆θ )




1
 −2 
1 + 2


1

i−
∆θ


2




1

2

1


i−
∆θ

2


Dk = 

0




.

.

.








1

2

1
i−
∆θ
2





1

1
2
i−


−2 1 + 
∆θ

1
i−
.
.
1
2
∆θ


2 

1
i−
1
2
.
.
.
∆θ
i−
···
∆θ
2



Rk = 



i
(i − 21 )




=



0
..
.
··· ···
0
i −1
(i − 21 )
0 ···
..
. ···
.
· · · ..
0
..
.
··· ···
0
.
.


−2 1 + 

1
i−
1
i−
2
0
..
.
..
.
i
(i − 21 )
0
..
.
..
.
i
(i − 21 )
1
2
∆θ
2
∆θ
2
0

0 ···
..
. ···
.
· · · ..
i−
.
.
.
1
2
∆θ
1
0

.
.
1
2
0
2
1
0
Lk−1
···
0
2

1
∆θ
2


2 

1

i−


−2 1 + 
1
2
1
1
i−
2
∆θ



2 




















































4.2.2. Gradiente
El esquema de discretización para el gradiente (4.6), usando diferencias centradas, es el siguiente:
ui +1,j − ui −1,j
∂u
≈
(4.26)
∂r
2∆r
para i = 1, · · · , m − 1, j = 1, · · · , n.
1 ui,j+1 − ui,j−1
1 ∂u
≈
r ∂θ
ri
2∆θ
(4.27)
para i = 1, · · · , m − 1, j = 1, · · · , n.
El gradiente está aproximado por la siguiente matriz por bloques:
∇h :=
∂1h
1 h
r ∂2
i
!
∈ R m× m
donde denotaremos a las aproximaciones de ∂1h por ∇h,1 y 1r ∂2h por ∇h,2 . De esta
forma tenemos:
28
∇
h,1
1
≈
2∆r


 −I




I
0m × m
0m × m
..
.
..
.
..
.
I
− I 0m × m





donde I corresponde a la matriz identidad y 0m×m corresponde a la matriz nula.
∇
h,2
1
≈
∆r∆θ
donde:


H
H





..
.
H







0
1
0 · · · −1


 −1 0
1 ··· 0 


.. 

.. ..
..
.
.
.
H= 0
. 

 .
 .

0 −1 0
1 
 .
1
0 · · · −1 0
4.2.3. Divergencia
De igual manera que para el operador Laplaciano, para la Divergencia existen
dos esquemas, el conservativo y el no conservativo. Una vez más nos encontramos
con la pregunta acerca de qué esquema usar. Se realizaron varios experimentos numéricos usando ambos esquemas y sus combinaciones, numéricamente, los experimentos que mejor aproximaron la solución fueron aquellos realizados usando una
combinación de los dos esquemas. La aproximación por diferencias finitas para la
divergencia, div w, se realizó utilizando el esquema conservativo (4.7) en los índices
que corresponden a i = 1 y j = 1, · · · , n. Para los índices i = 2, · · · , m, j = 1, · · · , n
se usó el esquema no conservativo (4.8),
#
#
1 ∂(rw)
1 ri + 21 wi + 21 ,j − ri − 12 wi − 21 ,j ≈
r ∂r
r1
2∆r
29
(4.28)
para i = 1, j = 1, · · · , n
wij wi +1,j − wi −1,j
1
r∂w w ∂w
≈
+
w+
= +
r
∂r
r
∂r
ri
2∆r
(4.29)
para i = 2, · · · , m, j = 1, · · · , n
1 ∂w
1 wi,j+1 − wi,j−1
≈
r ∂θ
ri
2∆θ
(4.30)
para i = 1, · · · , m, j = 1, · · · , n
El operador divergencia está aproximado por la siguiente matriz por bloques:
divw ≈ ((∂1h ), (∂2h )) = Qh
(4.31)
donde denotaremos a las aproximaciones de ∂1h por Qh,1 y ∂2h por Qh,2 .

Qh,1
0
E

 B C
1 

=
 −C B
∆r 
..

.

···
0
..
.
..
.
−C








C 
B
luego:
0 E 0 ···
corresponde al esquema (4.28) , donde:
E=
(∆r )2
·I
4
e I ∈ R m×m es la matriz identidad.
2
 (2i − 1)



B=





2
(2i − 1)

..
.
2
(2i − 1)
30









 1
 2



C=



1
2

..
.
1
2








De (4.6), (4.7) y (4.8) podemos concluir que Qh,2 corresponde a la matriz que aproxih,2
ma 1r ∂u
∂θ , es decir, ∇ .
Una vez que tenemos las versiones discretas de los operadores en coordenadas polares podemos escribir la versión discreta de la primera ecuación del sistema
(4.12).
Ah~u + Qh w
~ − ~h = 0, .
(4.32)
Para la segunda ecuación del sistema tenemos:
máx( g~e, γξ (∇h ~u)) ⋆ w
~ − gγ∇h w
~ = 0 para γ > 0,
(4.33)
Se denota por ⋆ al producto de Hadamard de vectores, i.e.
~v ⋆~z = (v1 z1 , · · · , vm zm )⊤
(4.34)
y ~e ∈ R2m corresponde al vector de componentes iguales a 1. Para calcular |∇uγ | en
términos de ~u, definimos la siguiente función ([8]).
ξ : R2m → R2m
por:
(ξ ( p))k = (ξ ( p))k+m = |( pk , pk+m )⊤ | para p ∈ R2m , k = 1, · · · , m,
donde (ξ (∇h~y ))k representa la aproximación del valor de |∇uγ | en cada nodo de la
malla.
Como vimos anteriormente, la versión discreta del gradiente es:
∇h :=
∂1h
∂2h
!
31
∈ R2m×m .
Finalmente, obtenemos el sistema de optimalidad (4.12) discretizado (ver [8]):


h
h ~ − ~h = 0,


 A ~u + Q w
máx( g~e, γξ (∇h~u)) ⋆ w
~ − gγ∇h w
~ =0




for γ > 0.
(4.35)
En [8] se obtuvo el sistema de optimalidad para el flujo estacionario de un fluido de Bingham. Sin embargo, en este trabajo el dominio corresponde al cuadrado
unitario y, para la discretización espacial, se usa el método de elementos finitos.
4.3. Método de Newton semi suave (Semismooth Newton Method)
Sea F : R n −→ R n . Estamos interesados en un sistema de la forma:
F( x ) = 0.
(4.36)
Si suponemos que F es Fréchet diferenciable, el sistema F( x ) = 0 es un sistema
smooth (ver [16]). Por lo tanto, un método tipo Newton puede ser utilizado para
resolverlo.
Sin embargo, si tenemos una función F : R n → R n , que no es diferenciable
en el sentido de Fréchet y estamos interesados en resolver un sistema de la forma
F( x ) = 0, es posible definir una noción más débil de diferenciabilidad de F de tal
manera que sea posible plantear un esquema iterativo tipo Newton. (Ver [6]).
En el Capítulo 2 revisamos la definición de Newton diferenciabilidad. Gracias a
esta noción más débil de diferenciabilidad podemos aplicar un método tipo Newton
para resolver sistemas de la forma (4.36). Es decir, cuando F no es diferenciable en
el sentido de Fréchet (por lo tanto, F es un sistema nonsmooth). (Ver [6] y [16]).
Podemos plantear (4.35) como un sistema de la forma (4.36). La función máx :
−→ R n , definida en R n , es Newton diferenciable en R n , (ver [17, Lem.3]). La
derivada de Newton de esta función está dada por la matriz diagonal Gm definida
de la siguiente manera:
Rn
→
(Gmax (−
y )ii ) =

1
0,
si yi ≥ 0,
si yi < 0.
para
1 ≤ i ≤ n,
(4.37)
En el Capítulo 2 se muestra que Gm es, en efecto, la derivada de Newton de la
32
función máx.
La noción de Newton diferenciabilidad permite plantear un esquema tipo Newton como el método de Newton semi-suave (Semismooth Newton Method).
T EOREMA 4.1. (ver [6]) Sea x una solución de (4.36), con F Newton diferenciable en
una vecindad abierta V que contiene a x. Si
kG( x )−1 kL(Z,X) ≤ C,
(4.38)
donde G es la derivada de Newton de F, para alguna constante C > 0 y para todo
x ∈ V , entonces la iteración de Newton
x k+1 = x k − G ( x k )−1 F ( x k )
(4.39)
converge superlinealmente a x.
Demostración. Ver [6] Th. 5.4
Algoritmo SSN
A continuación mostramos el algoritmo de Newton semi-suave Semismooth Newton method:
Algorithm 1 Algoritmo de Newton semi suave
1:
2:
3:
4:
5:
6:
Elegir un punto inicial x0 y fijar k = 0. Si f ( xk ) = 0, parar.
Calcular G ( xk )
Calcular sk tal que:
G ( x k ) s k = − f ( x k ).
Actualizar xk+1 = xk + sk , y k = k + 1.
Volver al paso 2.
Como se mencionó previamente, la función máx es Newton diferenciable si está
definida de R n en R n para cualquier n ∈ N. Por lo tanto, se puede obtener la derivada de Newton del sistema discreto (4.35) . Así, se propone el algoritmo tipo Newton
(método de Newton semi-suave) para su resolución.
4.4. Aproximación del paso de Newton
El problema a resolverse es el siguiente:
33
F(~u , w
~ ) :=
Ah~u + Qh w
~ − ~h
máx( g~e, γξ (∇h~u)) ⋆ w
~ − gγ∇h~u
!
=0
(4.40)
De los resultados de c.f. [27] sabemos que el operador máx y la función ξ son semismooth de R m → R m y de los resultados de c.f [27] (Th. 2.10 y Th. 2.11) sabemos
que la composición de funciones semismooth es semismooth. Ahora, como estamos
trabajando con el sistema de optimalidad discretizado, tenemos la función:
max :
R m −→ R m
~u 7−→ máx( g~e, ~u)
(4.41)
que es Newton diferenciable en R m (ver [17, Lem.3]), ~e ∈ R m es un vector cuyas
componentes son unos y g > 0 es una constante . La derivada de Newton para esta
función está definida por la matriz diagonal Gm ∈ R m×m :
(Gm (~u )ii ) :=

1
si ui > g,
0,
(4.42)
si ui ≤ g.
Por lo tanto, la matriz Jacobiana de F es la siguiente R3m×3m (ver [8])
G (~u, w
~ ) :=
Ah
Qh
γ(χA D (~
w ) Ph (∇h~u) − gI )∇h D (mh )
!
donde mh := max ( g~e, γξ (∇h~u)) ∈ R2n , y χA = D (th ) ∈ R2m×2m con
( t h )i : =

1,
0,
g
si ξ (∇h~u)i ≥ γ ,
caso contrario .
Ph ∈ R2m×2m es la matriz Jacobiana de ξ, luego, tenemos que:


Ph (~p )
:= 
∂ξ i
∂p j
∂ξ i+l
∂p j
∂ξ i
∂p j+l
∂ξ i
∂p j
.
Consecuentemente, el paso de Newton de (4.40) es (ver [8]):
G (~
uk , w
~k)
δu
δw
!
34
= − F(~
uk , w
~ k ),
,
i.e.
Ah
Qh
γ(χA D (~
wk ) Ph (∇h~uk ) − gI )∇h D (mhk )
!
δu
δw
!
=
!
− Ah u~k − Qh w
~ k + fh
.
− D (mhk )~uk + γg∇h~uk
(4.43)
con mhk := máx( g~e, γξ (∇h~uk )) ∈ R2m y χAk+1 = D (thk ) ∈ R2m×2m .
La obtención del paso de Newton que se muestra en esta sección corresponde al
trabajo realizado en [8] para la simulación numérica de un fluido de Bingham.
Algoritmo de Newton semi-suave para el modelo del flujo de un fluido de Bingham
A continuación presentamos el algoritmo de Newton semi-suave (SSN) para resolver el sistema (4.40).
Algorithm 2 Algoritmo de Newton semi suave (ver [8])
Inicializar (~
u0 , w
~ 0)
Fijar k = 0
Determinar χAk+1 .
Calcular G (~
uk , w
~ k ).
Calcular F(~
uk, w
~ k ). δu~k
.
6: Calcularδ =
δw~ k
7: Actualizar u~
~k + δu y w~k+1 := w
~ k + δw
k+1 : = u
8: parar, o actualizar k := k + 1 e ir al paso 2.
1:
2:
3:
4:
5:
4.4.1. Resultados numéricos del problema de Bingham en coordenadas polares
En este ejemplo se considera el flujo de un fluido de Bingham en la sección transversal de una tubería dada por el disco definido por:
Ω := { x = ( x1 , x2 ) ∈ R2 : x12 + x22 < R2 , R > 0.}
35
(4.44)
Se conoce que la solución exacta para este problema está dada por (ver c.f. [13]) :
ū( x ) =
 √ 2 2 h q
i
R − x1 + x2
f
2 + x2 − 2g


x
R
+

2
1
2µ
2


2g h 

f
 R− f
R+
2µ
2
2g
f
− 2g
i
si
2g
f
≤
si 0 ≤
q
q
x12 + x22 ≤ R
x12 + x22 ≤
2g
f
Para resolver el sistema previo se utilizó una malla circular como la que se muestra
en la siguiente figura,
Figura 4.1: Malla circular
se consideraron los siguientes parámetros: ∆r = 0,0050 y ∆θ = 0,0314.
A continuación presentamos la solución exacta y la solución dada por el algoritmo SSN con los siguientes parámetros: R = 1, µ = 1, g = 1, ∆r = 0,0050, ∆θ =
0,0314, f = 10.
36
Figura 4.2: Solución exacta del flujo de un fluido de Bingham en la sección transversal de una tubería, max u=1.6000
Figura 4.3: Solución del flujo de un fluido de Bingham en la sección transversal de
una tubería con el algoritmo SSN, max u=1.5962
37
∆r
∆θ
0.0168
0.0101
0.0067
0.0050
0.0040
0.1047
0.0628
0.0419
0.0314
0.0251
→
ku − −
u k H1
0
0.0033
0.0011
4.9718e-04
2.7616e-04
1.7531e-04
Cuadro 4.6: Comparación del error
38
Capítulo 5
Método de Schwarz aplicado al
algoritmo de Newton semi suave
En este capítulo introduciremos la teoría sobre los métodos de descomposición
de dominio. En particular, nos centraremos en el método de Schwarz. Esta técnica,
en combinación con el método de Newton Semi-suave, será utilizada para resolver
el sistema

 Ah~u + Qh w
~ − ~h = 0,
máx( g~e, γξ (∇h~u)) ⋆ w
~ − gγ∇h w
~ =0
for γ > 0.
(5.1)
5.1. Métodos de descomposición de dominio
Las técnicas de decomposición de dominio para ecuaciones diferenciales parciales se basan en una idea general, que consiste en reformular la ecuación diferencial
parcial, o una aproximación de la misma, en problemas acoplados más pequeños sobre subdomnios que forman una partición del dominio original. Dado un dominio
computacional Ω, se lo divide en subdominios Ωl , l = 1, · · · , K, que pueden o no estar solapados, es decir, cada subdominio puede o no cubrir parte de los subdominios
vecinos. Con la reformulación del problema se obtiene una familia de subproblemas
de tamaño reducido que están acoplados unos a otros gracias a los valores que toma
la solución en las fronteras de los subdominios. Por lo tanto, en lugar de resolver el
problema original se resuelven pequeños problemas sobre los nuevos subdominios
un determinado número de veces.
En esta sección introduciremos los fundamentos matemáticos de los métodos
de descomposición de dominio. En general, se particiona el dominio computacional en subdominios y se introduce una ecuación para la interfaz entre subdominios.
39
El problema de la interfaz se define en términos del operador de Steklov-Poincaré.
En [25, Ch.1 Sec. 1.1] se encuentran los detalles y las referencias para un completo
desarrollo matemático de este operador. Para el entendimiento de los métodos de
descomposición de dominio y, en especial, para la interfaz introducida entre subdominios, exhibimos el concepto de transmisión de condiciones en las fronteras de los
subdominios (Ver [25]). Nos valdremos del problema de Poisson para mostrarlo:

−∆u = f en Ω,
u = 0 sobre ∂Ω.
(5.2)
Aquí, Ω es un dominio d-dimensional (d = 2, 3) y con frontera ∂Ω Lipschitz continua y f es una función de L2 (Ω). Asumamos que Ω es particionado en dos subdominios no solapados Ω1 y Ω2 , donde la frontera entre subdominios Γ := Ω1 ∩ Ω2 .
El problema de Poisson (5.2) puede ser reformulado para la partición de Ω en dos
subdominios de la siguiente manera:



−∆u1 = f en Ω1 ,





u1 = 0 sobre ∂Ω1 ∩ Ω2 ,





u1 = u2 sobre Γ,
∂u2
∂u


= 1 sobre Γ,


∂n
∂n




u2 = 0 sobre ∂Ω2 ∩ ∂Ω,




−∆u = f en Ω .
2
(5.3)
2
Las igualdades 3 y 4 del sistema (5.3) corresponden a las ecuaciones de transmisión de condiciones para u1 y u2 sobre la frontera Γ. El problema (5.3) tiene sentido
mientras la solución del problema (5.2) sea C(Ω ).
Consideremos los dos problemas de Dirichlet siguientes para escribir el problema (5.3).
Sea λ el valor desconocido de u en la frontera Γ y



−∆wi = f

wi = 0



 wi = λ
en Ωi ,
sobre ∂Ωi ∩ ∂Ω
sobre
(5.4)
Γ,
para i = 1, 2. Podemos formular la solución de (5.4) de la siguiente manera
wi = u0i + ui∗
40
(5.5)
donde u0i y ui∗ son las soluciones de los problemas:


0


−∆ui = 0
y
u0i



 u0
i
=0
en Ωi ,
sobre ∂Ωi ∩ ∂Ω
(5.6)
= λ sobre Γ,


∗


−∆ui = f
en Ωi ,
ui∗ = 0 sobre ∂Ωi ∩ ∂Ω



u∗ = 0 sobre Γ.
i
(5.7)
Para cada i = 1, 2. Para que los problemas (5.3) y (5.4) sean iguales se debe cumplir
que
∂w1
∂w2
wi = ui para i = 1, 2. si y solo si
=
sobre Γ.
(5.8)
∂n
∂n
Por lo tanto, para que el problema original se pueda particionar en subproblemas,
se debe cumplir la condición (5.8). Para su demostración se introduce la ecuación de
interfaz de Steklov-Poincaré. Para más detalles ver [25, Ch.1 Sec. 1.1].
5.2. Método de Schwarz
Uno de los primeros métodos sobre descomposición de dominios para la resolución de ecuaciones diferenciales parciales es el método alternante de Schwarz que
fue introducido en 1869. En su forma clásica, el método consiste en resolver problemas elípticos con valores en la frontera en un dominio que resulta de la unión de
dos dominios que no necesariamente tienen la misma forma. Se resuelve el mismo
problema alternativamente en cada subdominio (ver [2]).
41
Consideremos el problema de Poisson (5.2) y el dominio original propuesto por
Schwarz:
Ω1
←− Γ2
−→ Γ1
Ω2
Dominio original propuesto por Schwarz.
El método de Schwarz se inicializa con una primera solución u02 para el dominio
Ω2 . De esta solución se requieren los valores en la frontera Γ1 . Luego, iterativamente,
para k = 1, 2, 3 · · · , se resuelve el siguiente problema:

k+1



−∆u1 = f en Ω1 ,
u1k+1 = u2k sobre Γ1 ,



uk+1 = 0 sobre ∂Ω1 \ Γ1 .
1
(5.9)
Una vez que se obtiene la solución u1k+1 se resuelve:

k+1



−∆u2 = f en Ω2 ,
u2k+1 = u1k+1 sobre Γ2 ,



uk+1 = 0 sobre ∂Ω2 \ Γ2 .
2
(5.10)
El método alternante de Schwarz se usa en general en dominios que, al ser discretizados, sus mallas no coinciden en la región solapada como sucede en el dominio
planteado por Schwarz y cuya discretización se muestra en la siguiente figura:
42
Figura 5.1: Dominio de Schwarz discretizado [2]
Consideremos una discretización por diferencias finitas para los problemas (5.9)
y (5.10).

k+1


 A1 u1 = f 1 en Ω1 ,

1
= u2k sobre Γ1 ,
uΓk+
1



 uk+1
= 0 sobre ∂Ω1 \ Γ1 ,
∂Ω1 \Γ1



A uk+1 = f en Ω2 ,

 2 2
1
uΓk+
= u1k+1 sobre Γ2 ,
2



 uk+1
= 0 sobre ∂Ω2 \ Γ2 .
(5.11)
(5.12)
∂Ω2 \Γ2
Los coeficientes ui asociados a la versión discreta de la solución se los denota de
la siguiente manera:


uΩi


ui =  u∂Ωi \Γ 
uΓ i
Notemos que los coeficientes u∂Ωi \Γ son conocidos, pues, están dados por las
condiciones de Dirichlet homogéneas. La forma discreta del operador −∆ está dada
por la matriz Ai restringida a cada subdominio i = 1, 2. Esta matriz está compuesta
por tres submatrices:
Ai = AΩi A∂Ωi \Γ AΓi .
Ai es una matriz cuadrada. La submatriz AΩi corresponde a la matriz de los nodos al interior del dominio i. A∂Ωi \Γ representa el acoplamiento entre los nodos al
43
interior del subdominio i y los nodos en la frontera ∂Ωi . AΓi corresponde al acoplamiento de los nodos al interior del dominio y los nodos en la frontera artificial
Γi . Si el dominio corresponde al cuadrado unitario y se usa una aproximación por
diferencias finitas centradas, la matriz Ai posee una columna por cada nodo en el
dominio. Si un nodo se encuentra al interior de Ωi , su aproximación por diferencias
finitas está en la matriz Ai . Si el nodo pertenece a la interfaz, su aproximación está
en la submatriz AΓi . Este esquema de aproximación por diferencias finitas está dado
por el stencil o estrella de 5 puntas.
Usando esta descomposición podemos reescribir los sistemas (5.11) y (5.12) de la
siguiente manera (ver [2]):




uk+1


 Ω1


 +1


AΩ1 A∂Ω1 \Γ AΓ1  uk∂Ω

1 \Γ


k+1
uΓ1



1


= u2k sobre Γ1 ,
uΓk+

1



 uk+1
= 0 sobre ∂Ω1 \ Γ1 ,
∂Ω1 \Γ1


k+1


uΩ

2




 k+1



u
A
A
A
Γ2
Ω2

∂Ω2 \Γ

 ∂Ω2 \Γ
1
uΓk+
2



1


= u1k+1 sobre Γ2 ,
uΓk+

2



 uk+1
= 0 sobre ∂Ω2 \ Γ2 .
∂Ω \Γ
2



 = f 1 en Ω1 ,




 = f 2 en Ω2 ,

2
El método alternante de Schwarz propone interpolar los valores al interior del
dominio Ω j (j = 1, 2) para hallar los valores en la frontera Γi (i = 1, 2), es decir, para
determinar los coeficiente uΓi (i = 1, 2). La interpolación es un proceso para estimar
valores que se encuentran entre puntos conocidos. En este caso, los puntos conocidos corresponden a los valores resultantes (en los nodos del primer subdominio) al
término de la solución del primer subproblema (5.11). Los valores obtenidos de la
interpolación constituyen una solución inicial para los nodos en la frontera artificial.
En esta sección introduciremos un operador de interpolación lineal, que constituye
el caso más general de interpolación. Cuando se tienen dos puntos conocidos, éstos
se pueden unir mediante una línea recta. Es decir, se utiliza la ecuación de la recta
para estimar diferentes puntos entre los puntos conocidos. Con el proceso de interpolación se logra aproximar el valor de una función en un valor desconocido de su
dominio. Para la interpolación lineal se utiliza un polinomio de primer grado.
Sea IΩ j −→Γi el operador discreto que interpola los valores de los nodos desde
44
interior de Ω j en la frontera Γi . El algoritmo de Schwarz se escribe de la siguiente
manera:
Algorithm 3 Algoritmo alternante de Schwarz
Elegir w01 ←− 0.
for k = 0, · · · do
Resolver para u1k+1 :
4:
A1 u1k+1 = f 1 en Ω1 ,
1
5:
uΓk+
= w1k sobre Γ1 ,
1
1:
2:
3:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
k+1
= 0 sobre ∂Ω1 \ Γ1 .
u∂Ω
\Γ
1
1
w2k+1 ←− IΩ1 −→Γ2 uΩ1 .
Resolver para u2k+1
A2 u2k+1 = f 2 en Ω2 ,
1
uΓk+
= w2k+1 sobre Γ2 ,
2
k+1
= 0 sobre ∂Ω2 \ Γ2 .
u∂Ω
\Γ
2
2
w1k+1 ←− IΩ2 −→Γ1 uΩ2 .
if kw1k+1 − w1k k ≤ tolΓ1 y kw2k+1 − w2k k ≤ tolΓ2 then
parar
end if
if ku1k+1 − u1k k ≤ tolΓ1 y ku2k+1 − u2k k ≤ tolΓ2 then
parar
end if
end for
Una vez que el algoritmo termina, el vector u1k+1 contiene la aproximación discreta de la solución para Ω1 . A su vez, u2k+1 contiene la solución para el subdominio
Ω2 . Para la región solapada se pueden usar cualquiera de las dos soluciones, pues,
ambas convergen a la misma solución en la región solapada si la malla es lo suficientemente fina.
En [2] se presenta la convergencia numérica del método alternante de Schwarz.
Se resuelven los subproblemas (5.11) y (5.12) usando los métodos de Gauss-Seidel
y Jacobi. Además, se muestra el comportamiento del algoritmo cuando la malla es
refinada pero, la zona solapada se mantiene constante.
5.2.1. Forma multiplicativa del método de Schwarz
En la sección previa mostramos el método alternante tal como Schwarz lo introdujo por primera vez en 1869 y en el que se considera el caso general, cuando,
al discretizar los dos subdominios de Ω, la discretización no coincide en la región
solapada. (Ver Figura 5.1).
45
En general, el método de Schwarz consiste en descomponer el domino Ω en dos
subdominios solapados Ω1 y Ω2 tales que Ω = Ω1 ∪ Ω2 como se muestra en la
siguiente figura:
−→ Γ1
←− Γ2
Ω1
Ω1,2
Ω2
Figura 5.2: Dominio solapado.
donde Γ1 = ∂Ω1 ∩ Ω2 , Γ2 = ∂Ω2 ∩ Ω1 y Ω1,2 := Ω1 ∩ Ω2 .
El método de Schwarz, en su forma multiplicativa para el problema de Poisson,
consiste en resolver sucesivamente los siguientes problemas:
Sea u0 una función de inicialización definida en Ω. Para facilitar el estudio del método multiplicativo podemos fijar en cero los valores de u0 en ∂Ω. Sea û02 := u0 |Ω2 ,
para k ≥ 0, índice de iteraciones del método de Schwarz, definimos dos sucesiones
û1k+1 y û2k+1 resolviendo respectivamente:

k+1



−∆û1 = f en Ω1 ,
y
û1k+1 = û2k sobre Γ1 ,



ûk+1 = 0 sobre ∂Ω1 ∩ ∂Ω
1


−∆û2k+1 = f en Ω2 ,




ûk+1 = ûk+1 sobre Γ ,
2
2
1
k+1


û2 = 0 sobre ∂Ω2 ∩ ∂Ω.




(5.13)
(5.14)
En la región solapada, Ω1,2 , los valores de los nodos están dados tanto por la solución de û1k+1 como de û2k+1 . Al término de la resolución del método, ambas soluciones convergen a los mismos valores.
A continuación, presentamos el algoritmo del método de Schwarz en su forma
46
multiplicativa.
Algorithm 4 Algoritmo multiplicativo de Schwarz
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
Resolver (5.2) en Ω0
û02 ←− IΩ0 −→Γ2 uΩ0 .
Elegir w01 ←− û02
for k = 0, · · · do
Resolver para u1k+1 :
A1 û1k+1 = f 1 en Ω1 ,
1
ûkΓ+
= w1k sobre Γ1 ,
1
+1
ûk∂Ω
= 0 sobre ∂Ω1 \ Γ1 .
\Γ
1
1
w2k+1 ←− û1k+1
Resolver para u2k+1
A2 û2k+1 = f 2 en Ω2 ,
1
= w2k+1 sobre Γ2 ,
ûkΓ+
2
k+1
û∂Ω
= 0 sobre ∂Ω2 \ Γ2 .
\Γ
2
2
w1k+1 ←− û2k+1
if kw1k+1 − w1k k ≤ tolΓ1 y kw2k+1 − w2k k ≤ tolΓ2 then
parar
end if
if kû1k+1 − û1k k ≤ tolΓ1 y kû2k+1 − û2k k ≤ tolΓ2 then
parar
end if
end for
En este contexto, el operador discreto de interpolación, interpola los valores obtenidos de una solución inicial, en una malla gruesa, y nos entrega los valores en
los nodos de frontera de la malla refinada, donde vamos a resolver el problema. A
diferencia del caso alternante, en donde el proceso de interpolación se lleva a cabo
una vez resuelto el problema en el primer subdominio y se comienza con valores en
la frontera iguales a cero.
5.2.2. Forma aditiva del método de Schwarz
En la sección anterior revisamos una discretización general de Ω. Sin embargo,
si el dominio de interés es particionado en dos subdominios de tal manera que la
malla en la zona solapada coincide tanto en el primer como en el segundo dominio,
47
entonces, se puede optimizar el algoritmo de Schwarz para aprovechar la información en los nodos del dominio compartido y resolver los subproblemas (5.13) y (5.14)
paralelamente. Es decir, si tomamos una solución inicial del problema restringida a
los dos subdominios, esta define dos sucesiones para cada subproblema. Como los
nodos coinciden en la zona solapada, se toman los valores de las sucesiones en los
nodos que corresponden a las fronteras Γ1 y Γ2 para resolver cada subproblema al
mismo tiempo.
Si tomamos Û10 := u0 |Ω1 y Û20 := u0 |Ω2 se pueden resolver los dos subproblemas
independientemente de la siguiente manera:

k+1


−∆Û1 = f en Ω1

Û1k+1 = Û2k sobre Γ1



Û k+1 = 0 sobre ∂Ω1 ∩ ∂Ω
(5.15)
1
y

k+1



−∆Û2 = f en Ω2
Û2k+1 = Û1k sobre Γ2



Û k+1 = 0 sobre ∂Ω1 ∩ ∂Ω
2
(5.16)
La aproximación (5.15) y (5.16) corresponde a la forma aditiva del método de
Schwarz. Estas dos nuevas formulaciones fueron planteadas en [9] y [21].
Una vez que el algoritmo termina, Û1k+1 contiene la aproximación discreta de la
solución para Ω1 y Û2k+1 contiene la solución para el subdominio Ω2 . En este caso se
obtienen las soluciones en los nodos de Ω1,2 en ambos vectores Û1k+1 y Û2k+1 , pues,
se resuelven los dos subproblemas de manera simultánea. Ambas soluciones convergen a los mismos valores en los nodos de Ω1,2 . Para determinar la solución final,
una alternativa consiste particionar Ω1,2 por la mitad. La solución de los nodos pertenecientes a la primera mitad de Ω1,2 estará dada por los componentes del vector
Û1k+1 en aquellos nodos. El valor de los nodos en la segunda mitad de Ω1,2 estará
dado por la solución de Û2k+1 en aquellos puntos.
A continuación presentamos el algoritmo de Schwarz en su forma aditiva.
48
Algorithm 5 Algoritmo aditivo de Schwarz
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
Resolver en (5.2) en Ω0 ,
Û20 ←− IΩ0 −→Γ2 uΩ0 .
Û10 ←− IΩ0 −→Γ1 uΩ0 .
Elegir w0i ←− Ûi0 para i = 1, 2
for k = 0, · · · do
for i = 1, 2 do
Resolver para Uik+1 :
Ai Ûik+1 = f i en Ωi ,
1
ÛΓk+
= wik sobre Γi ,
i
k+1
= 0 sobre ∂Ωi \ Γi .
Û∂Ω
\Γ
i
i
wik+1 ←− Ûik+1
if kwik+1 − wik k ≤ tolΓi then
parar
end if
if kÛik+1 − Ûik k ≤ tolΓi then
parar
end if
end for
end for
5.3. Método de Schwarz aplicado al problema de Bingham
Los métodos de descomposición de dominio se introdujeron como técnicas para
la resolución de ecuaciones diferenciales parciales en base a una descomposición del
dominio espacial del problema en varios subdominios [21]. En las secciones previas
hemos introducido el método de Schwarz para un operador lineal y elíptico a través del problema de Poisson. Sin embargo, nuestro objetivo es aplicar esta técnica
al problema de Bingham que se discutió en el Capítulo 3, que constituye un sistema
quasilineal. Se han propuesto distintos algoritmos de descomposición de dominio
para la resolución de problemas quasilineales. En [26] se considera una función en
un espacio de Banach reflexivo que se supone que es Gateaux diferenciable y se demuestra la convergencia para un método de descomposición de dominio aplicado a
este problema. Nos valdremos de los resultados presentados en [11] y [10], en donde se adapta la teoría de descomposición de dominio a funcionales non-smooth y con
restricciones de variación total para extender la aplicación del método de Schwarz
49
al problema de Bingham.
El objetivo principal de este trabajo es desarrollar un esquema paralelizado para
la resolución del problema de Bingham. Si analizamos la familia de subproblemas de
la forma aditiva y multiplicativa del método podemos concluir que el método multiplicativo no se presta para la resolución del problema en paralelo. Supongamos
que estamos trabajando en un dominio como el de la Figura 5.2, en cada iteración
del método se requiere resolver el problema en uno de los subdominios y utilizar
esta solución para fijar las condiciones en la frontera artificial del segundo subdominio. Por lo tanto, se resuelve el problema secuencialmente y no paralelamente. Es
por esta razón que hemos elegido el método de Schwarz en su forma aditiva para
construir un esquema paralelizado que nos permita utilizar el algoritmo de Newton
semi suave y resolver el problema de Bingham.
Recordemos que el problema (4.35) está planteado en coordenadas polares de tal
manera que podamos resolverlo en la sección transversal de una tubería cilíndrica.
En este caso, si particionamos el dominio en dos subdominios solapados como se
muestra en la Figura 5.2, vemos que la malla en la zona solapada coincide para los
dos subdominios.
Figura 5.2: Zona solapada Ω1,2 .
Por lo tanto, para nuestros propósitos, la forma alternante del método no es aplicable pues, resultaría innecesario interpolar los valores de cada subdominio en cada
iteración.
Mostraremos la aplicación del método resolviendo el problema en dos subdominios (Figura (5.4) ).
50
Figura 5.3: dominio original
Figura 5.4: subdominios Ω1 y Ω2 .
Sin embargo, como hemos visto en las secciones previas, el problema se resuelve
en dos subdominios solapados como se muestra en la Figura 5.5
51
Figura 5.5: Subdominios solapados
Sea N la cantidad de nodos en el dominio completo (Figura 5.5) y K = 2 el número de subdominios en los que se particiona Ω. Para cada subdominio Ωl , con
l = 1, 2, denotaremos por M a la cantidad de nodos por subdominio solapado, es
decir, cada subdominio, sin ser solpadado, tendría N
K nodos. En nuestro caso vamos
a aplicar el método de descomposición de dominio con solapamiento. Por lo tanto,
los subdominios Ω1 y Ω2 comparten una determinada cantidad de nodos que se
encuentran en la región Ω1,2 . Es así que M = N
K + t, donde t es el número de nodos que el primer subdominio comparte con el segundo subdominio. Finalmente, el
dominio compartido Ω1,2 tiene 2t nodos.
En la aplicación que vamos a desarrollar a continuación la formulación del problema corresponde a:

k+1
k+1


−µ∆Û1 − div W1 = h

máx( g, γ|∇Û1k+1 |)W1k+1 − gγ ∇Û1k+1 = 0



Û k+1 = Û k
1
2


−µ∆Û2k+1 − div W2k+1 = h




máx( g, γ|∇Û k+1 |)W k+1 − g ∇Û k+1 = 0
γ
2
2
2
k+1
k

Û2 = Û1



 k+1
Û2 = 0
en Ω1 ,
c.t.p Ω1 ,
(5.17)
en Γ1 ,
en Ω2 ,
c.t.p Ω2 ,
en Γ2 ,
(5.18)
en ∂Ω2 \ Γ2 .
El problema (5.17), que corresponde al primer subdominio, sólo posee condiciones en la interfaz Γ1 , a diferencia del segundo problema (5.18) que posee condiciones
52
en la frontera exterior ∂Ω y en la frontera Γ2 .
Como vimos en el capítulo anterior, la versión discreta del sistema que vamos a
resolver corresponde a (4.35). Por lo tanto, si aplicamos la forma aditiva del método
de Schwarz al sistema discreto obtendríamos los siguientes subproblemas:

−
→
−
→
→ k+1

h−

+ Q1h W1 k+1 = h 1k+1
en Ω1 ,

 A1 U1
−
→
−
→
−
→
−
→
máx( g e , γξ (∇1h U1 k+1 )) ⋆ W1 k+1 − gγ∇1h U1 k+1 = 0 paraγ > 0


−
→ k+1 −
→

U
= U2 k
en Γ1 ,
1
 −
−
→
−
→
→

en Ω2 ,
A2h U2 k+1 + Q2h W2 k+1 = h 2k+1



−
→
−
→
−
→

−
→
máx( g e , γξ (∇h U k+1 )) ⋆ W k+1 − gγ∇h U k+1 = 0 paraγ > 0
2
2 2
2 2
−
→
−
→

U2 k+1 = U1 k
en Γ2 ,



→ k+1
−
=0
en ∂Ω.
U2
(5.19)
(5.20)
Con el fin de determinar las condiciones de frontera en Γ1 y Γ2 , es necesario
interpolar estos valores desde un dominio inicial Ω0 (Figura 5.6) y a partir de una
0
solución inicial uΩh0 (Figura 5.7).
1
0.8
0.6
0.4
0.2
0
−0.2
−0.4
−0.6
−0.8
−1
−1
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
Figura 5.6: Dominio inicial Ω0 .
53
1
1.8
1.6
1.4
1.2
1
0.8
0.6
0.4
0.2
0
1
0.8
0.6
1
0.4
0.8
0.2
0.6
0.4
0
0.2
−0.2
0
−0.4
−0.2
−0.4
−0.6
−0.6
−0.8
−0.8
−1
−1
0
Figura 5.7: Solución inicial uΩh0 en el dominio Ω0 .
Ω el operador discreto que interpola los valores desde los nodos
Sea IΩ0 →Ω := IΩ
0
en el interior del dominio Ω0 a los nodos en el dominio Ω. En el proceso de interpolación se estiman los valores que se encuentran entre los puntos conocidos de la
malla del dominio Ω0 . El valor interpolado en cada nodo de la malla más refinada,
es decir Ω, proviene de una interpolación lineal de los valores en los nodos vecinos
de la grilla en cada dirección.
La forma más sencilla de interpolación es la lineal, este método consiste en unir
dos puntos adyacentes conocidos mediante un polinomio de primer grado. Con la
ecuación de la recta que pasa por los dos puntos conocidos se puede calcular el
valor de y para cualquier x. Como nuestro ejemplo corresponde a una malla en dos
dimensiones, hemos realizado una interpolación bilineal, la interpolación bilineal es
una extensión de la interpolación lineal para interpolar funciones de dos variables
en una malla de dos dimensiones. La idea principal es realizar una interpolación
lineal en una dirección, y después en la otra.
Para calcular el valor de la variable independiente y, que se encuentra entre dos
valores conocidos x1 y x2 , usando interpolación lineal tenemos que el valor buscado
es:
( x − x1 )
( y − y1 ) + y1 .
y=
( x2 − x1 ) 2
Si lo hacemos en la otra dirección, es decir, si calculamos el valor de la variable x,
54
tenemos que:
x=
( y − y1 )
( x − x1 ) + x1 .
( y2 − y1 ) 2
MATLAB puede realizar interpolaciones mediante varias técnicas programadas. Hemos utilizado un método programado de MATLAB para realizar el proceso de interpolación a través de la función interp2. Este comando interpola los valores entre
puntos de datos conocidos. Encuentra los valores de una función en dos dimensiones entre datos de puntos intermedios.
Zi = interp2 (X, Y, Z, Xi , Yi ) devuelve la matriz Zi que contiene los valores interpolados correspondientes a la malla determinada por Xi y Yi . interp2 determina la
interpolación de la función de dos dimensiones especificada por las matrices X, Y y
Z.
0
La solución uΩh con la que se inicializa el método de Schwarz proviene de la
siguiente interpolación:
0
Ω
(u0Ωh0 ).
(5.21)
uΩh = IΩ
0
0
La interpolación de la solución uΩh0 corresponde a la siguiente figura:
1.8
1.6
1.4
1.2
1
0.8
0.6
0.4
0.2
0
1
0.8
0.6
1
0.4
0.8
0.2
0.6
0.4
0
0.2
−0.2
0
−0.4
−0.2
−0.4
−0.6
−0.6
−0.8
−0.8
−1
−1
0
Figura 5.8: Solución uΩh proveniente de la interpolación.
En la primera iteración del método, los valores en las fronteras Γ1 y Γ2 correspon0
den a los valores que la solución interpolada uΩh toma en aquellos nodos, es decir,
−
→0
−
→
U 1 := u0h |Ω1 y U 02 := u0h |Ω2 .
55
Una vez que se obtienen los valores en los nodos de las frontera Γ1 y Γ2 , el siguiente paso consiste en determinar las matrices Ah , Qh y ∇h restringidas a cada
subdominio.
Usamos el comando spy de MATLAB para trazar el patrón de la matriz Ah . En
un solo dominio, la matriz Ah se ve de la siguiente manera:
Figura 5.9: matriz para un solo dominio
Sin embargo, a los subdominios solapados Ω1 = Ω1 ∪ Γ1 y Ω2 = Ω2 ∪ Γ2 ∪ ∂Ω les
corresponden las matrices A1h y A2h respectivamente. Estas matrices corresponden
a submatrices de la matriz Ah . En la Figura 5.10 se visualizan las porciones de la
matriz Ah que corresponden a las submatrices A1h y A2h .
56
Figura 5.10: matrices para dominios solpados
Las matrices A1h y A2h tienen entradas comunes en los nodos que corresponden a
la región solapada Ω1,2 .
Ahora,

AhΩ1


A1h =  · · · 
AhΓ1

donde AhΩ1 es la matriz con nodos pertenecientes al subdominio Ω1 solapado
sin la frontera, mientras que AhΓ1 es la matriz de los nodos en la interfaz Γ1 . Para la
matriz A2h del segundo dominio se tiene:


AhΓ2


 ··· 


h 
A2h = 
A
 Ω2 


 ··· 
Ah∂Ω
donde los coeficientes de AhΓ2 corresponden a los nodos de la frontera Γ2 . AhΩ2 es
la matriz con los coeficientes de los nodos que se encuentran interior del dominio
Ω2 y Ah∂Ω es la matriz de los nodos en la frontera externa del dominio original. De
la Figura 5.10 podemos ver que las matrices A1h y A2h son tridiagonales, representaremos cada diagonal por una línea punteada. Gráficamente, si introducimos las
condiciones de frontera, estas matrices se visualizarían de la siguiente manera:
57







h
A1 = 





..
..


I


.

.. .. ..
 .. ... ...
.
.
.




.. .. ..

.. .. ..

.
.
.
.
.
.

h

 , A2 = 
.. .. ..
.. .. ..


.
.
.
.
.
.




.. .. ..
.. .. .. 
.
.
.

.
.
. 
I
I
.
.












donde I ∈ R m×m es la matriz identidad con entradas correspondientes a los m
nodos que se encuentran en las fronteras Γ1 , Γ2 y ∂Ω. Como el primer subdominio
posee una sola frontera con el segundo subdominio, a A1h se le añade únicamente la
matriz I ∈ R m×m en la parte inferior. Por el contrario, como el segundo subdominio
posee dos fronteras, la interfaz con Ω1 y la frontera del dominio general, a A2h se le
añaden dos submatrices I ∈ R m×m en la parte superior e inferior.
Como se indicó previamente, en el primer subdominio existen condiciones de
frontera en la interfaz Γ1 entre subdominios, estas condiciones de frontera se añaden
al lado derecho de cada uno de los subsistemas:

h11
 .. 
 . 



 h
 1s 
= k 

 Û2
s +1 

 .. 
 . 
Û2kM

−
→ k+1
h1

−
→ k+1
h2
Û1k1
..
.




 Û1km

 h2
m +1


..
=
.

 h
 2s − m

 0s − m +1

..

.

0M
(5.22)



















(5.23)
donde s = M − m es la cantidad de nodos por subdominio solapado menos los
nodos de frontera. Como las fronteras Γ1 y Γ2 corresponden a un anillo de la malla
58
circular entonces poseen m nodos cada una. Cabe notar que el lado derecho del
−
→
segundo sistema h 2k+1 contiene un vector (m × 1) de ceros que corresponde a la
solución en la frontera ∂Ω del dominio general.
Para determinar las particiones que corresponden a cada subdominio en las versiones discretas del gradiente ∇ih y la divergencia Qih , con i = 1, 2, el tratamiento
que se da a las matrices es similar al propuesto para el laplaciano Ahµ .
En el dominio original, las particiones de la divergencia, Qih , para i = 1, 2 correspondientes a cada subdominio se visualizan de la siguiente manera:
Figura 5.11: Particiones de Qh .
59
donde
Q1h =

..
Q1h,1 Q1h,2
..
.

 .. .. ..
.
.
 .

.. .. ..

.
.
.

Q1h = 
.. .. ..

.
.
.


.. .. ..

.
.
.

0
,
. ·
..
·
·
.
·
..
.
·






·


..
. · 

.. 
. 
·

0
y
Q2h =
Q2h,1 Q2h,2
,


0
0
 .

..
 .. ... ...

.
·
·




..
.. .. ..


.
.
.
.
·
·


Q2h = 
,
.. .. ..
..


.
.
.
.
·
·



.. 
.. .. ..


.
.
.
.
·


.. ..
.
.
·
donde 0 ∈ R m×m .
En estas matrices se añaden m filas de ceros (en las partes inferior, Ω1 , y superior,
Ω2 , respectivamente ) que corresponden a los nodos en la frontera. En este caso, a
diferencia del tratamiento de las matrices Aihµ , para i = 1, 2, no existen condiciones
en la frontera del tensor de estrés.
Las particiones del gradiente, ∇ih , para i = 1, 2 correspondientes a cada subdominio, se visualizan de la siguiente manera:
60
Figura 5.12: Particiones de D h .
donde
D1h =
D1h,1
D1h,2
61
!
,

















h
D1 = 
















..
..

.
..




..
..

.
.


..
..

.
.

..
.. 
.
. 


0 






..

.


..

. ·


..

. ·
·


..

. ·
·


..
. · 
·
0
.
.
y
D2h =
D2h,1
D2h,2
!
,

0

 ..
..
 .

.




..
..


.
.




..
..
.
.




..
.. 

.
.




..


.






h

D2 = 







 0




..
.

 ·


..


.
·
·




..


.
·
·




..


.
·
·


..
.
·

62
donde 0 ∈ R m×m .
Análogamente al caso de la divergencia, se añaden m filas de ceros en las partes
inferior y superior de las matrices que corresponden a los nodos en las fronteras de
los subdominios Ω1 y Ω2 respectivamente.
Una vez que las matrices correspondientes a las versiones discretas del laplaciano, la divergencia y el gradiente se hayan particionado para cada subdominio, se
resuelven los subproblemas (5.19) y (5.20) con el algoritmo de Newton semi-suave
(SSN) (Algoritmo 2).
La solución entregada por el algoritmo, en cada subproblema, corresponde a los
nodos en cada subdominio solapado, es decir, en los M = N
K + t nodos. Como cada
subdominio comparte t nodos con el subdominio adyacente, y estamos resolviendo
los subproblemas paralelamente, esto significa que encontramos la solución, en los
t nodos compartidos, dos veces, al resolver el primer subproblema y el segundo
subproblema independientemente. Para obtener la solución en el dominio general,
se eliminan las soluciones encontradas en los t nodos del dominio Ω1,2 , es decir, se
eliminan las soluciones encontradas dos veces al resolver cada subproblema. Por lo
tanto, al eliminar las t soluciones, en cada subdominio, obtenemos los valores en los
N
K nodos.
La forma aditiva del método de Schwarz es la que se utilizará para resolver el
problema (4.35) en el dominio de la Figura (5.3) con N = 3540 nodos que se distribuyen en una malla circular discretizada en m − 1 = 59 anillos con m = 60 nodos
por anillo más un nodo en el origen. Es decir, la malla posee 59 anillos con diferentes
radios, t = 360.
Finalmente, cada solución se visualiza de la siguiente manera:
63
1
1.6
0.8
1.4
0.6
1.2
0.4
1
0.2
0.8
0.6
0
0.4
−0.2
0.2
−0.4
0
1
−0.6
1
0.5
−0.8
0.5
0
0
−1
−1
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
−0.5
−0.5
−1
−1
Figura 5.13: Primer subdominio.
Figura 5.14: Solución del problema
(5.19).
1.4
1
1.2
0.8
1
0.6
0.4
0.8
0.2
0.6
0
0.4
−0.2
−0.4
0.2
−0.6
0
1
−0.8
−1
−1
1
0.5
−0.5
0
0.5
1
0.5
0
0
−0.5
Figura 5.15: Segundo subdominio.
−0.5
−1
−1
Figura 5.16: Solución del problema
(5.20).
La solución en el dominio original se presenta en la Figura 5.17.
64
1.6
1.4
1.2
1
0.8
0.6
0.4
0.2
0
1
0.5
0
1
0.5
−0.5
0
−1
−0.5
−1
Figura 5.17: Solución en el dominio completo (Figura 5.4).
Al inicio de la sección determinamos que la forma aditiva del método es la más
conveniente para nuestros propósitos, ya que nos permite resolver el problema en
paralelo. Sin embargo, es conveniente comentar sobre la convergencia del método
pues, la forma aditiva del método, en términos de convergencia, es más lenta que
la forma multiplicativa. A continuación mostramos una tabla para ejemplificar lo
mencionado anteriormente. El ejemplo se realizó en una malla con 3541 nodos de
discretización y variando la cantidad de nodos en la zona solapada o dominio compartido (Ω1,2 ) entre los dos subdominios. La convergencia fue determinada cuando
el error inicial, en la norma infinito, alcanzó una tolerancia igual a 10−5 .
65
No. de nodos en Ω1,2
240
360
480
600
1200
% del dominio total Ω
7%
10 %
13 %
17 %
33 %
Método aditivo
30
23
18
15
9
Método multiplicativo
16
12
10
9
6
Cuadro 5.1: Iteraciones del método de Schwarz.
No. de nodos en Ω1,2
240
360
480
600
1200
% del dominio total Ω
7%
10 %
13 %
17 %
33 %
Método aditivo
10.49 s
9.63 s
7.8 s
6.7 s
5.9 s
Método multiplicativo
13.63 s
11.05 s
9.72 s
9.26 s
10.63 s
Cuadro 5.2: Tiempo en segundos.
A pesar de que el método multiplicativo converge en un número menor de iteraciones, el método aditivo es más rápido cuando comparamos los tiempos de ejecución.
5.4. Generalización a varios subdominios
En el ejemplo anterior se resolvió el problema de Bingham en dos subdominios,
sin embargo, podemos generalizar el problema (4.35) a múltiples subdominios. Sea
Ω el dominio original del problema. La generalización consiste en dividirlo en subdominios solapados Ωl , l = 1, · · · , K tales que
Ω=
K
[
Ωl
l =1
donde K es el número total de subdominios. En la Figura 5.18 podemos ver un ejemplo del dominio original particionado en más de dos subdominios.
66
Figura 5.18: Dominio general particionado en 4 subdominios.
A continuación mostramos el algoritmo de Schwarz aplicado al problema de
Bingham en varios subdominios.
Algorithm 6 Algoritmo de Schwarz aplicado al problema de Bingham
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
~ 0 ).
Calcular los valores iniciales (u~0 , w
Interpolar la solución inicial.
Fijar s=1, (iteraciones de Schwarz.)
Extracción de los valores de frontera u~sk para cada l-subdominio.
for l = 1 : D do,
donde D es el número de subdominios.
fijar k = 0 (SSN-iterations).
Inicializar (u~sl,k , w~sl,k )
Calcular G (u~s , w
~ k ).
l,k
Calcular F(u~sl,k , w
~ k ).
Calcular δ.
~ := u~s + δu y ws~ := w~s + δw
Actualizar usl,k
+1
l,k
l,k+1
l,k
parar, o fijar k := k + 1 y volver al paso 8.
end for.
Reunir la solución de los subdominios.
fijar s = s + 1 e ir al paso 4.
67
En este caso se formula la siguiente familia de subproblemas:
Para l = 1 el subproblema a resolverse sigue de la siguiente manera:

−
→
−
→
→ k+1

h−

+ Q1h W1 k+1 = h 1k+1

 A1 U1
−
→
−
→
−
→
→
máx( g−
e , γξ (∇1h U1 k+1 )) ⋆ W1 k+1 − gγ∇h U1 k+1 = 0


→
−
→ k+1 −

U
= U2 k
1
en Ω1 ,
paraγ > 0,
(5.24)
en Γ1 .
En este caso, el subdominio Ω1 posee únicamente condiciones en la frontera Γ1 =
∂Ω1 ∩ Ω2 (Figura 5.19).
Figura 5.19: Ω1 solapado.
Para 1 < l < K los subproblemas a resolverse son:
 −
−
→
−
→
→

en Ωl ,
Ahl Ul k+1 + Qhl Wl k+1 = h lk+1



−
→
−
→
−
→

−
→
máx( g e , γξ (∇h U k+1 )) ⋆ W k+1 − gγ∇h U k+1 = 0 paraγ > 0
l
l
l l
−
→
−
→
k
+
1
k
U

= U l −1
en Γl,1 ,
l



−
→
−
→
 k+1
Ul
= U kl+1
en Γl,2 ,
(5.25)
Los subproblemas formulados anteriormente poseen dos fronteras, pues, en ca68
da subdominio Ωl , con 1 < l < K, existe una interfaz entre dicho dominio y su
dominio consecutivo y antecesor. En el ejemplo de la Figura 5.18 los dominios Ω2 y
Ω3 poseen dos fronteras cada uno, el dominio Ω2 presenta una interfaz con el dominio Ω1 denominada Γ2,1 y una interfaz Γ2,2 con el dominio Ω3 . (Ver Figuras 5.20
y 5.21).
Para cualquier dominio Ωl , 1 < l < K, las interfaces están dadas por Γl,1 =
∂Ωl ∩ Ωl −1 y Γl,2 = ∂Ωl ∩ Ωl +1.
Figura 5.20: Ω2 solapado.
Figura 5.21: Ω3 solapado.
69
Finalmente, para l = K tenemos:
 −
−
→ k+1
−→
→

AhK UK k+1 + QhK WK k+1 = h K
en ΩK ,



−→k+1
−
→ k+1
−
→ k+1

→
máx( g−
h
h
= 0 paraγ > 0
− gγ∇ UK
e , γξ (∇K UK )) ⋆ WK
−
→
−−→


UK k + 1 = UK − 1 k
en ΓK ,



−
→
 k+1
=0
en ∂Ω.
UK
(5.26)
Este problema es ligeramente diferente, existe la interfaz ΓK entre ΩK y ΩK −1 y
la frontera externa del dominio general ∂Ω.
Figura 5.22: Ω4 solapado.
Para resolver la familia de subproblemas (5.24), (5.25) y (5.26) el procedimiento
de particionamiento de matrices es análogo al realizado para dos subdominios.
Para la matriz Ahl se toman las filas correspondientes a los nodos dentro de los
subdominios Ωl \ Γl . En las entradas correspondientes a los nodos de las fronteras
Γl o Γl,i , con i = 1, 2 se fija el valor de 1 en cada entrada.
En las matrices Qhl y ∇hl se procede de manera similar al escoger las filas que corresponden a los nodos dentro del subdominio l sin la frontera, sin embargo, en los
nodos fronterizos se fija el valor de 0, pues, las condiciones de frontera se imponen
70
en la versión discreta del laplaciano, Ahl , como se indicó previamente.
Si resolvemos la familia de subproblemas (5.24), (5.25) y (5.26) para K = 4 en el
dominio de la Figura 5.18) con el algoritmo 6 obtenemos:
1.8
1.6
1.6
1.4
1.4
1.2
1.2
1
1
0.8
0.8
0.6
0.6
0.4
0.4
0.2
0.2
0
1
0
1
1
0.5
1
0.5
0.5
0
0.5
0
0
−0.5
0
−0.5
−0.5
−1
−0.5
−1
−1
Figura 5.23: Primer subdominio.
−1
Figura 5.24: Segundo subdominio.
1.4
0.9
1.2
0.8
0.7
1
0.6
0.8
0.5
0.4
0.6
0.3
0.4
0.2
0.2
0.1
0
1
0
1
1
0.5
1
0.5
0.5
0
0.5
0
0
0
−0.5
−0.5
−0.5
−1
−0.5
−1
−1
−1
Figura 5.25: Tercer subdominio.
Figura 5.26: Cuarto subdominio.
y la solución en el dominio general se visualiza de la siguiente manera:
71
1.8
1.6
1.4
1.2
1
0.8
0.6
0.4
0.2
0
1
1
0.5
0.5
0
0
−0.5
−0.5
−1
−1
Figura 5.27: Solución en el dominio completo (Figura 5.18).
5.4.1. Detalles de implementación
Hemos reformulado el problema general en base a una descomposición del dominio espacial en subdominios. Resolvemos cada subproblema, restringido a cada
subdominio, en pararelo. Para ejecutar el código en paralelo usamos el comando
parfor de MATLAB.
parfor nos permite ejecutar un lazo de iteraciones o loop, en paralelo. Este comando paraleliza una declaración, o una parte de un código que se escribe en paralelo,
ejecutándolo en varios procesadores y/o workers. Revisemos la sintaxis del lazo parfor:
parfor variable = valor inicial: valor final
2: declaraciones · · ·
3: end.
1:
El toolbox para computación en paralelo de MATLAB, que incluye el coman72
do parfor, ejecuta códigos, programas y aplicaciones en distintos workers (motores
computacionales de MATLAB) que se ejecutan localmente. Es decir, permite al usuario ejecutar un trabajo en paralelo usando diferentes labs o workers con copias de
MATLAB adicionales que asisten a la copia original o cliente. Si la computadora de
cálculo tiene múltiples procesadores, los labs los activarán. Por lo tanto, sin cambiar
el código, se puede ejecutar una misma aplicación en un cluster de computadora.
Esta herramienta computacional de MATLAB permite resolver problemas usando procesadores multi-núcleo o clusters de computadoras. Además, este toolbox paraleliza aplicaciones de MATLAB sin necesidad de programación MPI (Message
Passing Interface). MPI es una especificación para programación de paso de mensajes, proporciona librerías que son empleadas en programas para comunicar datos
entre procesos. Permite desarrollar códigos y programas que pueden ser migrados
a diferentes computadores en paralelo.
MATLAB Distributed Computing Server, DCS, permite computación en paralela
en clusters, así, las tareas se distribuyen a distintos labs. DCS constituye una especificación similar al paradigma de memoria distribuida MPI. MATLAB usa una versión de MPI denominada MPICH2. Sin embargo, el usuario no necesita programar
explícitamente el paso de mensajes mediante MPI.
Para iniciar la computación en paralelo de MATLAB se requiere ejecutar una
sesión en paralelo. Para ello, al iniciar matlabpool a través de la declaración open
matlabpool se permite trabajar en sesiones interactivas con una configuración dada
por el usuario. Una vez iniciado el ambiente en paralelo, es posible usar el lazo
parfor. Este lazo es la versión para computación en paralelo del comando tradicional
for. Por lo tanto, dentro del toolbox en paralelo, simplemente se usa parfor en lugar
de for. Es importante notar que la variable del lazo puede ser únicamente un vector
con enteros positivos consecutivos.
parfor i = 1 : 100
2: código · · ·
3: end
1:
En este caso, la variable i corresponde a un vector de enteros consecutivos del 1 al
100. Además, el código dentro del lazo parfor es la porción de código que se ejecutará
en paralelo. Se debe tomar en cuenta que, al usar parfor, todas las iteraciones del lazo
deben ser independientes unas de otras. Esto se debe a que el lazo no ejecuta las
iteraciones consecutivamente sino, en otro orden decidido por MATLAB. De esta
manera, no se puede trabajar con variables que se modifiquen dentro del proceso
pues, no se pueden modificar dentro de todos los procesadores y al mismo tiempo.
Es importante notar también que el código dentro del lazo no puede depender de la
variable de conteo.
73
El lazo parfor puede ser usado únicamente en un nivel, es decir, no puede existir
un parfor dentro de otro lazo parfor. Sin embargo, el lazo tradicional for sí puede estar
incluido en la porción del código. Revisaremos un ejemplo sencilllo del uso del lazo
parfor.
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
matlabpool open
x=zeros(100,5);
parfor i = 1 : 100
y=zeros(1,5);
for j=1:5
y(j)= i;
end
y
x(i,:)=y;
end
matlabpool close;
A continuación revisemos un ejemplo del uso incorrecto del lazo:
1:
2:
3:
4:
5:
6:
7:
matlabpool open
parfor i = 1 : 50
x= 1;
···
end
x
matlabpool close;
En este caso, el código no se ejecutará, pues, estamos usando fuera del lazo parfor la
variable x, que se modifica dentro del lazo. Incluso si es una constante, el código no
se ejecuta.
Si revisamos nuevamente nuestro problema (4.35), al paralelizarlo usando parfor,
el pseudocódigo seguiría de la siguiente manera:
~0 , w
~ 0 ).
1: Calcular los valores iniciales (u
8:
Interpolar la solución inicial.
Fijar s=1, (iteraciones de Schwarz.)
Extracción de los valores de frontera u~sk para cada l-subdominio.
parfor l = 1 : D, ( D es el número de subdominios y además, el número de
workers )
fijar k = 0 (SSN-iterations).
Inicializar (u~sl,k , w~sl,k )
Calcular G (u~s , w
~ k ).
9:
Calcular F(u~sl,k , w
~ k ).
2:
3:
4:
5:
6:
7:
l,k
74
10:
11:
12:
13:
14:
15:
Calcular δ.
~ := u~s + δu y ws~ := w~s + δw
Actualizar usl,k
+1
l,k
l,k+1
l,k
parar, o fijar k := k + 1 y volver al paso 7.
end
Reunir la solución de los subdominios.
fijar s = s + 1 e ir al paso 4.
El lazo parfor nos permite ejecutar las iteraciones en paralelo. Por lo tanto, paraleliza la porción de código que incluye las declaraciones para resolver el problema
de Bingham en cada subdominio simultáneamente. Es decir, ejecutándolo en varios
procesadores o workers. De esta manera, cada uno de los subproblemas, restringido
a cada subdominio, se resuelve, simultáneamente, en un procesador diferente.
5.4.2. Resultados numéricos de la paralelización del fluido de Bingham en varios subdominios
A continuación se presentan tres experimentos numéricos que muestran el comportamiento del algoritmo paralelizado. Se muestra el porcentaje de reducción en el
tiempo respecto al tiempo de resolución del problema sin descomposición de dominio.
E JEMPLO 2. Este ejemplo se realizó con 40400 nodos y el tiempo de ejecución del
algoritmo, para un solo dominio, fue de 58,49 segundos.
75
No.
subdominios
2
4
20
50
No. nodos por
subdominio solapado
24120
14070
3015
1206
It.
Schwarz
Segundos
5
5
5
5
39.014
13.44
5.81
3.15
% de reducción respecto
1 dom.
33.3
77.02
90.1
90.61
Cuadro 5.3: Comportamiento del algoritmo paralelizado para el ejemplo (2)
E JEMPLO 3. Este ejemplo se realizó con 160800 nodos y el tiempo de ejecución del
algoritmo, para un solo dominio, fue de 260,16 segundos.
No.
subdominios
20
50
80
100
No. nodos por
subdominio solapado
10426
4010
2807
2406
No. It.
Schwarz
5
5
5
5
Segundos
18.36
8.35
6.81
6.10
% reducción
respecto
1
dom.
92.94
96.79
97.38
97.66
Cuadro 5.4: Comportamiento del algoritmo paralelizado para el ejemplo (3)
E JEMPLO 4. Este ejemplo se realizó con 361200 nodos y el tiempo de ejecución del
algoritmo, para un solo dominio, fue de 1814,35 segundos.
No.
subdominios
30
60
100
No. nodos por
subdominio solapado
15626
8414
4808
No. It.
Schwarz
5
5
5
Segundos
34.52
26.90
11.33
% de reducción respecto
1 dom.
98.10
98.52
99.38
Cuadro 5.5: Comportamiento del algoritmo paralelizado para el ejemplo (4)
76
Figura 5.28: Problema resuelto con 40400 nodos en 50 subdominios.
Figura 5.29: Problema resuelto con 40400 nodos en un dominio.
77
Figura 5.30: Problema resuelto con 160800 nodos en 100 subdominios.
Figura 5.31: Problema resuelto con 160800 nodos en un dominio.
78
Figura 5.32: Problema resuelto con 361200 nodos en 100 subdominios.
Figura 5.33: Problema resuelto con 361200 nodos en un dominio.
79
Experimento
Velocidad máxima
Figura 5.28
Figura 5.30
Figura 5.32
1.6180
1.6166
1.6144
Velocidad máxima -solución
exacta
1.6
1.6
1.6
Cuadro 5.6: Comparación con la solución exacta
5.5. Resultados de convergencia
En esta sección discutiremos el comportamiento del algoritmo en términos de
convergencia y comentaremos resultados generales del método de Schwarz. Si tenemos un dominio como el que se muestra en la Figura 5.34, para operadores lineales
y elípticos se espera: (Ver [2])
Figura 5.34: Tamaño del dominio, solapamiento y elementos. Ver [2]
• el número de iteraciones crezca a medida de 1/H,
• si δ es proporcional a H, el número de iteraciones está acotado y no depende
de h, es decir, si se fijan los subdominios, el número de iteraciones requerido
es independiente del grado de refinamiento de la discretización,
• la tasa de convergencia no es independiente de H, es decir, depende de las
dimensiones de la región solapada, si δ crece la tasa de convergencia mejora.
80
Cabe recalcar que la familia de sistemas (5.24), (5.25) y (5.26) que estamos resolviendo es no lineal y los resultados de convergencia presentados anteriormente no
necesariamente se cumplen, sin embargo, a continuación mostramos varios experimentos numéricos sobre el comportamiento del método aplicado al problema de
Bingham y en concreto al ejemplo con N = 3540. En la siguiente tabla se muestran
dos escenarios, se fija el número de subdominios variando la cantidad de nodos en
las zonas solapadas y en el segundo escenario se mantiene constante la cantidad de
nodos en las zonas solapadas y se varía el número de subdominios.
No. de subdominios
4 (885 nodos x
5 (708 nodos x
6 (590 nodos x
sub.)
sub.)
sub.)
No. de nodos en las
zonas solapadas
240
99
103
194
300
47
57
79
840
36
38
46
960
26
35
41
1080
24
31
36
1200
22
28
-
Cuadro 5.7: Iteraciones de Schwarz
Si el número de nodos en las regiones solapadas aumenta, el número de iteraciones de Schwarz se reduce manteniendo fija la cantidad de subdominios, sin embargo, si se mantiene la cantidad de nodos fija en las zonas solapadas pero se varía el
número de dominios, las iteraciones de Schwarz aumentan.
A continuación presentamos el siguiente experimento, se particiona el dominio
del Ejemplo con N = 3540 en 4, 5 y 6 subdominios, en lugar de mantener fija la
cantidad de nodos en la zona solapada, esta se mantiene proporcional a la cantidad
de nodos por subdominio.
No. de subdominios
% de nodos en las zonas
solapadas
4
5
6
50
38
70
113
60
35
56
83
70
28
50
68
80
25
39
59
Cuadro 5.8: Iteraciones de Schwarz
81
En el siguiente experimento se muestra el comportamiento del método variando
el número de nodos en el dominio general, es decir, se trabajará con tres discretizaciones diferentes y el mismo número de subdominios, en este caso, 10 subdominios.
El dominio del ejemplo con N = 3540 se discretizará en un número fijo de subdominios y se mantendrá, proporcional al número de nodos por subdominio, la cantidad
de nodos en la región solapada.
Discretización
% solapamiento
50
60
80
3541
It. Schwarz
191
135
110
6321
It. Schwarz
186
149
115
9901
It. Schwarz
190
154
106
Cuadro 5.9: Iteraciones de Schwarz
Si el paso de discretización varía, pero, se mantiene constante la proporción de
nodos en la zona solapada y el número de subdominios, vemos que el número de
iteraciones no mejora significativamente.
82
Capítulo 6
Conclusiones
El objetivo principal de este trabajo consistió en plantear un esquema paralelizado para simular el flujo de un fluido de Bingham en la sección de una tubería
cilíndrica. Para lograr este objetivo, a su vez, se trataron dos temas: la geometría
en la que se resolvió el problema (sección transversal de una tubería) y el planteamiento de la técnica de descomposición de dominio. El sistema a resolver se había
planteado en trabajos como [8] en el sistema ortonormal de ejes 0x1 x2 x3 . Por lo tanto,
para obtener la simulación en una tubería, se transformó el sistema de ecuaciones
que modelan el flujo de Bingham bidimensional a coordenadas polares. Una vez
transformado el sistema, para la discretización espacial, se propuso un esquema en
difrencias finitas centradas para coordenadas polares.
El segundo reto de este trabajo consistió en plantear la técnica de descomposición
de dominio de Schwarz para el problema de Bingham en coordenadas polares. A
través de esta técnica, se descompuso el dominio espacial del problema y se generó
una familia de subproblemas restringidos a los nuevos subdominios. Con esto, se
logró replantear el problema, de un tamaño determinado, en varios subproblemas
cuyo tamaño fue menor que el problema original.
En la literatura, ([2] y [25]), se encuentra la técnica de Schwarz en sus formas aditiva y multiplicativa. Se plantearon las dos versiones para analizar su aplicación al
problema de Bingham. Sin embargo, la forma multiplicativa del método no permite
la construcción de un esquema paralelizado, pues, se resuelven los subproblemas
generados de manera secuencial. La forma aditiva del método resultó ideal para
resolver los subproblemas de manera independiente y, por lo tanto, en paralelo.
Se realizaron experimentos numéricos para analizar la convergencia del algoritmo de Schwarz. En los experimentos numéricos, se encontró que si el número de
nodos en las regiones solapadas aumenta, el número de iteraciones de Schwarz se
reduce manteniendo fija la cantidad de subdominios, sin embargo, si se mantiene la
83
cantidad de nodos fija en las zonas solapadas pero, se varía el número de dominios,
las iteraciones de Schwarz aumentan.Por lo tanto, concluimos experimentalmente
que la convergencia del método depende del tamaño de la región solapada, es decir,
de la proporción de nodos que los subdominios comparten.
En los experimentos en los que se fijó inicialmente el número de iteraciones de
Schwarz, se comparó el tiempo del algoritmo paralelizado con el tiempo de resolución del problema sin paralelizar, es decir, en un solo dominio. Fijando el número
de iteraciones de Schwarz se obtuvo aproximadamente el 90 % de reducción en el
tiempo de ejecución en la resolución del problema de Bingham.
84
Bibliografía
[1] Ben Andrews y Christopher Hopper. The ricci flow in riemannian geometry.
Lect. Notes Math, 2011.
[2] Petter Bjorstad y William Gropp. Domain decomposition: parallel multilevel methods for elliptic partial differential equations. Cambridge University Press, 2004.
[3] Daniel Bonn y Morton M Denn. Yield stress fluids slowly yield to analysis.
Science, 324(5933):1401–1402, 2009.
[4] Alexandre Joel Chorin, Jerrold E Marsden, y Jerrold E Marsden. A mathematical
introduction to fluid mechanics, volume 3. Springer, 1990.
[5] JD Cole y EM Murman. Calculation of plane steady transonic flows. AIAA
Journal, 9(1):114–121, 1971.
[6] Juan Carlos De los Reyes. Numerical PDE-Constrained Optimization. Springer,
2015.
[7] Juan Carlos De Los Reyes y Sergio González-Andrade. Numerical simulation
of thermally convective viscoplastic fluids by semismooth second order type
methods. Journal of Non-Newtonian Fluid Mechanics, 193:43–48, 2013.
[8] Juan Carlos De Los Reyes y Sergio González. Path following methods for
steady laminar bingham flow in cylindrical pipes. ESAIM: Mathematical Modelling and Numerical Analysis, 43:81–117, 1 2009.
[9] Maksymilian Dryja. An additive schwarz algorithm for two-and threedimensional finite element elliptic problems. Tony Chan, Roland Glowinski, Jacques P eriaux, and Olof Widlund, editors, Domain Decomposition Methods, Philadelphia, PA, 1989.
[10] Massimo Fornasier, Andreas Langer, y Carola-Bibiane Schönlieb. A convergent
overlapping domain decomposition method for total variation minimization.
Numerische Mathematik, 116(4):645–685, 2010.
85
[11] Massimo Fornasier y Carola-Bibiane Schönlieb. Subspace correction methods
for total variation and l1-minimization. SIAM Journal on Numerical Analysis,
47(5):3397–3428, 2009.
[12] Martin Fuchs y Gregory Seregin. Regularity results for the quasi–static bingham variational inequality in dimensions two and three. Mathematische Zeitschrift, 227(3):525–541, 1998.
[13] Roland Glowinski. Numerical methods for nonlinear variational problems, volume 4. Springer, 1984.
[14] Faramarz Gordaninejad. Proceedings of the 10th International Conference on Electrorheological Fluids and Magnetorheological Suspensions: Lake Tahoe, USA, 18-22
June, 2006. World Scientific Publishing Company Incorporated, 2007.
[15] Bertil Gustafsson. Fundamentals of Scientific Computing, volume 8. Springer,
2011.
[16] Michael Hintermüller.
Semismooth newton methods and applications.
Oberwolfach-Seminar, 2010.
[17] Michael Hintermüller, Kazufumi Ito, y Karl Kunisch. The primal-dual active
set strategy as a semismooth newton method. SIAM Journal on Optimization,
13(3):865–888, 2002.
[18] Richard W Johnson. Handbook of fluid dynamics. Crc Press, 1998.
[19] Randall J LeVeque y Randall J Le Veque. Numerical methods for conservation laws,
volume 132. Springer, 1992.
[20] G Duvaut JL Lions. Inequalities in mechanics and physics. Springer, 1976.
[21] Pierre-Louis Lions. On the schwarz alternating method. i. In First international
symposium on domain decomposition methods for partial differential equations, págs.
1–42. Paris, France, 1988.
[22] Kamran Mohseni y Tim Colonius. Numerical treatment of polar coordinate
singularities. Journal of Computational Physics, 157(2):787–795, 2000.
[23] PP Mosolov y VP Miasnikov. Variational methods in the theory of the fluidity of a viscous-plastic medium. Journal of Applied Mathematics and Mechanics,
29(3):545–577, 1965.
[24] MA Moyers-Gonzalez y IA Frigaard. Numerical solution of duct flows of multiple visco-plastic fluids. Journal of non-newtonian fluid mechanics, 122(1):227–
241, 2004.
86
[25] Alfio Quarteroni y Alberto Valli. Domain decomposition methods for partial differential equations. Number CMCS-BOOK-2009-019. Oxford University Press,
1999.
[26] Xue-Cheng Tai y Jinchao Xu. Global and uniform convergence of subspace
correction methods for some convex optimization problems. Mathematics of
Computation, 71(237):105–124, 2002.
[27] Michael Ulbrich. Nonsmooth Newton-like methods for variational inequalities and
constrained optimization problems in function spaces. PhD thesis, Habilitation thesis, Fakultät für Mathematik, Technische Universität München, 2002.
[28] Michael Ulbrich. Semismooth Newton methods for variational inequalities and constrained optimization problems in function spaces. SIAM, 2011.
87
Descargar