Continuous and Discrete Homotopy Operators: A Theoretical Approach Made Concrete

advertisement
Continuous and Discrete
Homotopy Operators:
A Theoretical Approach
Made Concrete
Willy Hereman
Department of Mathematical and Computer Sciences
Colorado School of Mines
Golden, Colorado, U.S.A.
whereman@mines.edu
http://www.mines.edu/fs home/whereman/
Department of Pure Mathematics and Computer Algebra
University of Ghent, Belgium
Tuesday, June 28, 2005, 11:00
Acknowledgements
Collaborators: Mark Hickman, Bernard Deconinck
Michael Colagrosso
several undergraduate and graduate students
Research supported in part by NSF
under Grant CCR-9901929
This presentation was made in TeXpower
Outline
Part I: Continuous Case
•
Calculus-based formulas for the continuous
homotopy operator (in multi-dimensions)
•
Symbolic integration by parts and inversion of the
total divergence operator
•
Application: symbolic computation of
conservation laws of nonlinear PDEs in
multi-dimensions
Part II: Discrete Case
•
Calculus-based formula for the discrete homotopy
operator
•
Symbolic summation by parts and inversion of the
forward difference operator
•
Application: symbolic computation of
conservation laws of nonlinear differentialdifference equation (DDEs) in (1 + 1) dimensions
Motivation of the Research
Computation of Conservation Laws
Continuous Case
•
System of PDEs
ut = F(u, ux , u2x , · · · )
•
Conservation law in (1 + 1) dimensions
Dt ρ + Dx J = 0 (on PDE)
conserved density ρ and flux J
•
Conservation law in (3 + 1) dimensions
Dt ρ + ∇ · J = Dt ρ + Dx J1 + Dy J2 + Dz J3 = 0 (on PDE)
conserved density ρ and flux J = (J1 , J2 , J3 )
•
Example: Shallow water wave (SWW) equations
1
ut + (u·∇)u + 2 Ω × u + ∇(θh) − h∇θ = 0
2
θt + u·(∇θ) = 0
ht + ∇·(uh) = 0
In components:
1
ut + uux + vuy − 2 Ωv + hθx + θhx = 0
2
1
vt + uvx + vvy + 2 Ωu + hθy + θhy = 0
2
θt + uθx + vθy = 0
ht + hux + uhx + hvy + vhy = 0
•
ρ(1)
First few densities-flux pairs:

=h
J(1)
=

ρ(2)
= hθ
J(2)
=

ρ(3) = hθ2
J(3) = 

ρ(4) = (u2 + v 2 )h + h2 θ
J(4) = 
uh
vh
uhθ
vhθ




uhθ2

vhθ2

u3 h + uv 2 h + 2uh2 θ

v 3 h + u2 vh + 2vh2 θ

ρ(5) = vx θ − uy θ + 2Ωθ


2 θ +v 2 θ −hθθ +h θ 2
12Ωuθ−4uu
θ+6uv
θ+2vv
θ+u
y
x
y
y
y
y
y
1
(5)

J =6
12Ωvθ+4vvx θ−6vuy θ−2uux θ−u2 θx −v 2 θx +hθθx −hx θ2
Discrete Case
•
System of DDEs
u̇n = F(· · · , un−1 , un , un+1 , · · · )
•
Conservation law in (1 + 1) dimensions
Dt ρn + ∆Jn = 0 (on DDE)
conserved density ρn and flux Jn
•
Example: Toda lattice
u̇n = vn−1 − vn
v̇n = vn (un − un+1 )
•
First few density-flux pairs:
(0)
J n = un
(1)
Jn = vn−1
ρn = 21 u2n + vn
(2)
Jn = un vn−1
(3)
ρn = 31 u3n
(3)
Jn = un−1 un vn−1
ρn = ln(vn )
(0)
(1)
ρn = u n
+ un (vn−1 + vn )
(2)
2
+ vn−1
.
COMPUTER DEMO
PART I: CONTINUOUS CASE
Review Vector Calculus
•
In multivariate calculus: all scalar fields f
including the components Fi of vector fields
F = (F1 , F2 , F3 ) are functions of (x, y, z)
•
Definition: F is conservative if F = ∇f
•
Definition: F is irrotational or curl free if
∇×F=0
•
Theorem (gradient test): F = ∇f iff ∇ × F = 0
PART I: CONTINUOUS CASE
Review Vector Calculus
•
In multivariate calculus: all scalar fields f
including the components Fi of vector fields
F = (F1 , F2 , F3 ) are functions of (x, y, z)
•
Definition: F is conservative if F = ∇f
•
Definition: F is irrotational or curl free if
∇×F=0
•
Theorem (gradient test): F = ∇f iff ∇ × F = 0
The curl annihilates gradients!
•
Definition: F is incompressible or divergence free
if ∇ · F = 0
•
Theorem (curl test): F = ∇ × G iff ∇ · F = 0
•
Definition: F is incompressible or divergence free
if ∇ · F = 0
•
Theorem (curl test): F = ∇ × G iff ∇ · F = 0
The divergence annihilates curls!
•
Definition: F is incompressible or divergence free
if ∇ · F = 0
•
Theorem (curl test): F = ∇ × G iff ∇ · F = 0
The divergence annihilates curls!
•
Question: How can one verify that f = ∇ · F ?
•
Definition: F is incompressible or divergence free
if ∇ · F = 0
•
Theorem (curl test): F = ∇ × G iff ∇ · F = 0
The divergence annihilates curls!
•
Question: How can one verify that f = ∇ · F ?
No theorem from vector calculus!
Problem Statement
Continuous case in 1D:
Example: For u(x) and v(x)
f = 3ux v 2 sin u − u3x sin u − 6vvx cos u + 2ux u2x cos u + 8vx v2x
Z
Find F =
f dx so, f = Dx F
Result (by hand):
F = 4 vx2 + u2x cos u − 3 v 2 cos u
Problem Statement
Continuous case in 1D:
Example: For u(x) and v(x)
f = 3ux v 2 sin u − u3x sin u − 6vvx cos u + 2ux u2x cos u + 8vx v2x
Z
Find F =
f dx so, f = Dx F
Result (by hand):
F = 4 vx2 + u2x cos u − 3 v 2 cos u
Mathematica cannot compute this integral!
Continuous case in 2D or 3D:
Example: For u(x, y) and v(x, y)
f = ux vy − u2x vy − uy vx + uxy vx
Find F = Div−1 f so, f = Div F
Result (by hand):
F = (uvy − ux vy , −uvx + ux vx )
Continuous case in 2D or 3D:
Example: For u(x, y) and v(x, y)
f = ux vy − u2x vy − uy vx + uxy vx
Find F = Div−1 f so, f = Div F
Result (by hand):
F = (uvy − ux vy , −uvx + ux vx )
Mathematica cannot do this!
Continuous case in 2D or 3D:
Example: For u(x, y) and v(x, y)
f = ux vy − u2x vy − uy vx + uxy vx
Find F = Div−1 f so, f = Div F
Result (by hand):
F = (uvy − ux vy , −uvx + ux vx )
Mathematica cannot do this!
Can this be done without integration by parts?
Continuous case in 2D or 3D:
Example: For u(x, y) and v(x, y)
f = ux vy − u2x vy − uy vx + uxy vx
Find F = Div−1 f so, f = Div F
Result (by hand):
F = (uvy − ux vy , −uvx + ux vx )
Mathematica cannot do this!
Can this be done without integration by parts?
Can the problem be reduced to a single integral in one
variable?
Discrete case in 1D:
Example:
2
fn = −un un+1 vn −vn2 +un+1 un+2 vn+1 +vn+1
+un+3 vn+2 −un+1 vn
Find Fn = ∆−1 fn so, fn = ∆Fn = Fn+1 − Fn
Result (by hand):
Fn = vn2 + un un+1 vn + un+1 vn + un+2 vn+1
Discrete case in 1D:
Example:
2
fn = −un un+1 vn −vn2 +un+1 un+2 vn+1 +vn+1
+un+3 vn+2 −un+1 vn
Find Fn = ∆−1 fn so, fn = ∆Fn = Fn+1 − Fn
Result (by hand):
Fn = vn2 + un un+1 vn + un+1 vn + un+2 vn+1
Mathematica cannot do this!
Discrete case in 1D:
Example:
2
fn = −un un+1 vn −vn2 +un+1 un+2 vn+1 +vn+1
+un+3 vn+2 −un+1 vn
Find Fn = ∆−1 fn so, fn = ∆Fn = Fn+1 − Fn
Result (by hand):
Fn = vn2 + un un+1 vn + un+1 vn + un+2 vn+1
Mathematica cannot do this!
How can this be done algorithmically?
Discrete case in 1D:
Example:
2
fn = −un un+1 vn −vn2 +un+1 un+2 vn+1 +vn+1
+un+3 vn+2 −un+1 vn
Find Fn = ∆−1 fn so, fn = ∆Fn = Fn+1 − Fn
Result (by hand):
Fn = vn2 + un un+1 vn + un+1 vn + un+2 vn+1
Mathematica cannot do this!
How can this be done algorithmically?
Can this be done in the same way as the continuous
case?
Calculus of Variations and Differential Geometry
•
In differential geometry: f and Fi depend on
arbitrary functions u(x, y, z), v(x, y, z), etc. and
their mixed derivatives (up to a fixed order) with
respect to the independent variables (x, y, z)
Such functions are called differential functions
•
•
Definition: f is exact iff f = Dx F
Theorem (exactness test): f = Dx F iff
(0)
Lu(x) (f )
≡0
•
Definition: f is a divergence if f = DivF
•
Theorem (divergence test): f = DivF iff
(0)
Lu(x) (f ) ≡ 0
The Euler operator annihilates divergences!
Formulas for Euler operators (variational derivatives):
(0)
Lu(x)
∞
X
∂
=
(−Dx )
∂u
kx
k=0
k
∂
∂
2 ∂
3 ∂
=
− Dx
− Dx
+ ···
+ Dx
∂u
∂ux
∂u2x
∂u3x
(0,0)
Lu(x,y)
=
∞
∞
X
X
kx =0 ky =0
kx
(−Dx ) (−Dy )
ky
∂
∂ukx x ky y
∂
∂
∂
=
− Dx
− Dy
∂u
∂ux
∂uy
∂
2 ∂
2 ∂
3 ∂
+ Dx
+ D x Dy
+ Dy
− Dx
− ···
∂u2x
∂uxy
∂u2y
∂u3x
(0,0,0)
Lu(x,y,z)
=
∞
∞
∞
X
X
X
kx =0 ky =0 kz =0
kx
ky
(−Dx ) (−Dy ) (−Dz )
kz
∂
∂ukx x ky y kz z
∂
∂
∂
∂
=
− Dx
− Dy
− Dz
∂u
∂ux
∂uy
∂uz
2 ∂
2 ∂
2 ∂
+ Dx
+ Dy
+ Dz
∂u2x
∂u2y
∂u2z
∂
∂
∂
+Dx Dy
+ Dx Dz
+ Dy Dz
−· · ·
∂uxy
∂uxz
∂uyz
Application: Testing Exactness
Consider, for example,
f = 3ux v 2 sin u − u3x sin u − 6vvx cos u + 2ux u2x cos u + 8vx v2x
•
f is exact
•
After integration by parts (done by hand):
Z
F = f dx = 4 vx2 + u2x cos u − 3 v 2 cos u
•
Exactness test with Euler operator:
For example, for component u (of order 2):
(0)
Lu(x) (f )
∂f
∂f
2 ∂f
=
− Dx
+ Dx
∂u
∂ux
∂u2x
= 3ux v 2 cos u − u3x cos u + 6v vx sin u − 2ux u2x sin u
−Dx [3v 2 sin u − 3u2x sin u + 2u2x cos u] + D2x [2ux cos u]
= 3ux v 2 cos u − u3x cos u + 6v vx sin u − 2ux u2x sin u
−[3ux v 2 cos u + 6v vx sin u − 3u3x cos u − 6u u2x sin u
−2ux u2x sin u + 2u3x cos u]
+[−2u3x cos u − 6ux u2x sin u + 2u3x cos u]
≡ 0
Higher Euler Operators
•
In 1D (with variable x):
(i)
Lu(x)
=
∞ X
k
k=i
i
(−Dx )
k−i
∂
∂ukx
Examples for component u(x):
(1)
Lu(x)
(2)
Lu(x)
(3)
Lu(x)
∂
∂
2 ∂
3 ∂
=
− 2Dx
+ 3Dx
− 4Dx
+ ···
∂ux
∂u2x
∂u3x
∂u4x
∂
∂
2 ∂
3 ∂
=
− 3Dx
+ 6Dx
− 10Dx
+ ···
∂u2x
∂u3x
∂u4x
∂u5x
∂
∂
2 ∂
3 ∂
=
− 4Dx
+ 10Dx
− 20Dx
+ ···
∂u3x
∂u4x
∂u5x
∂u6x
•
In 2D (with variables x and y):
∞ X
∞ X
kx ky
∂
(ix ,iy )
kx −ix
ky −iy
Lu(x,y)=
(−Dx )
(−Dy )
∂u
i
i
x
y
kx x k y y
k =i k =i
x
x y
y
Examples for component u(x, y):
∂
∂
∂
2 ∂
− 2Dx
− Dy
+ 3Dx
+ ···
∂ux
∂u2x
∂uxy
∂u3x
∂
∂
∂
(0,1)
2 ∂
Lu(x,y) =
− 2Dy
− Dx
+ 3Dy
+ ···
∂uy
∂u2y
∂uyx
∂u3y
∂
∂
∂
∂
(1,1)
2
Lu(x,y) =
− 2Dx
− 2Dy
+ 3Dx
+ ···
∂uxy
∂u2xy
∂ux2y
∂u3xy
∂
∂
∂
∂
(2,1)
2
Lu(x,y) =
− 3Dx
− 2Dy
+ 6Dx
+ ···
∂u2xy
∂u3xy
∂u2x2y
∂u4xy
(1,0)
Lu(x,y) =
•
In 3D (with variables x, y, and z):
∞
∞
∞ X
X
X
kx ky k z
(ix ,iy ,iz )
Lu(x,y,z) =
ix iy iz
k =i k =i k =i
x
x
y
(−Dx )
•
Theorem: f =
i = 0, 1, . . . , r−1
y
z
kx −ix
Dxr F
z
(−Dy )
iff
ky −iy
(−Dz )
(i)
Lu(x) (f )
kz −iz
≡ 0 for
∂
∂ukx x ky y kz z
Integration by Parts with Homotopy Operator
•
Theorem (integration with homotopy operator):
• In 1D: If f is exact then
F = D−1
x f =
Z
f dx = Hu(x) (f )
• In 2D: If f is a divergence then
F = Div
−1
f =
(x)
(y)
(Hu(x,y) (f ), Hu(x,y) (f ))
• In 3D: If f is a divergence then
(x)
(y)
(z)
F = Div−1 f = (Hu(x,y,z) (f ), Hu(x,y,z) (f ), Hu(x,y,z) (f ))
Continuous Homotopy Operators
•
In 1D (with variable x):
Z
Hu(x) (f ) =
0
N
1X
dλ
Iuj (f )[λu]
λ
j=1
where uj is jth component of u and integrand
Iuj (f ) =
∞
X
(i+1)
Dix uj Luj (x) (f )
i=0
N is the number of dependent variables and
Iuj (f )[λu] means that in Iuj (f ) one replaces
u(x) → λu(x), ux (x) → λux (x), etc.
Example: u(x) = (u1 (x), u2 (x)) = (u(x), v(x)):
1
Z
dλ
Iu (f ) + Iv (f ) [λu]
λ
Hu(x) (f ) =
0
where
Iu (f ) =
∞
X
(i+1)
(i+1)
v Lv(x) (f )
Dix u Lu(x) (f )
i=0
and
Iv (f ) =
∞
X
i=0
Dix
•
In 2D (with variables x and y):
(x)
Hu(x,y) (f )
Z
=
N
1X
0 j=1
Iu(x)
(f )[λu]
j
dλ
λ
with
Iu(x)
(f ) =
j
∞ X
∞
X
ix =0 iy =0
1 + ix
1 + ix + iy
Analogous formulas for
!
ix iy
Dx Dy
(y)
Hu(x,y) (f )
(1+ix ,iy )
uj Luj (x,y) (f )
and
(y)
Iuj (f )
•
In 3D (with variables x, y, and z):
(x)
Hu(x,y,z) (f )
Z
=
N
1X
0 j=1
Iu(x)
(f )[λu]
j
dλ
λ
with
Iu(x)
(f ) =
j
∞
X
∞ X
∞
X
ix =0 iy =0 iz =0
1 + ix
1 + ix + iy + iz
!
ix iy iz
Dx Dy Dz
(1+ix ,iy ,ix )
uj Luj (x,y,z) (f )
Analogous formulas for y and z-operators
Application of Homotopy Operator in 1D
Example:
f = 3ux v 2 sin u − u3x sin u − 6vvx cos u + 2ux u2x cos u + 8vx v2x
•
Compute
(1)
(2)
Iu (f ) = uLu(x) (f ) + Dx uLu(x) (f )
∂f
∂f
∂f
= u
− 2uDx
+ Dx u
∂ux
∂u2x
∂u2x
= 3uv 2 sin u − uu2x sin u + 2u2x cos u
•
Similarly,
Iv (f ) =
(1)
vLv(x) (f )
(2)
vLv(x) (f )
+ Dx
∂f
∂f
∂f
= v
− 2vDx
+ Dx v
∂vx
∂v2x
∂v2x
•
= −6v 2 cos u + 8vx2
Finally,
Z
F = Hu(x) (f ) =
0
Z
=
0
1
1
dλ
Iu (f ) + Iv (f ) [λu]
λ
3λ2 uv 2 sin(λu) − λ2 uu2x sin(λu) + 2λu2x cos(λu)
−6λv 2 cos(λu) + 8λvx2 dλ
= 4vx2 + u2x cos u − 3v 2 cos u
Application of Homotopy Operator in 2D
Example: f = ux vy − u2x vy − uy vx + uxy vx
Recall (done by hand): F̃ = (uvy − ux vy , −uvx + ux vx )
•
Compute
1
(1,1)
(2,0)
Iu(x) (f ) =
+ Dx uLu(x,y) (f ) + Dy uLu(x,y) (f )
!2
∂f
∂f
∂f
= u
− 2Dx
− Dy
∂ux
∂u2x
∂uxy
!
∂f
1
∂f
+ Dx u
+ Dy u
∂u2x
2
∂uxy
(1,0)
uLu(x,y) (f )
1
1
= uvy + uy vx − ux vy + uvxy
2
2
•
Similarly,
Iv(x) (f )
•
=
(1,0)
vLv(x,y) (f )
∂f
=v
= −uy v + uxy v
∂vx
Hence,
Z 1
dλ
(x)
(x)
(x)
F1 = Hu(x,y) (f ) =
Iu (f ) + Iv (f ) [λu]
λ
0
Z 1 1
1
= λ uvy + uy vx − ux vy + uvxy − uy v + uxy v dλ
2
2
0
1
1
1
1
1
1
= uvy + uy vx − ux vy + uvxy − uy v + uxy v
2
4
2
4
2
2
•
Analogously,
Z 1
dλ
(y)
(y)
(y)
Iu (f ) + Iv (f ) [λu]
F2 = Hu(x,y) (f ) =
λ
0
!
Z 1 1
1
=
λ −uvx − uv2x + ux vx + λ (ux v − u2x v) dλ
2
2
0
1
1
1
1
1
= − uvx − uv2x + ux vx + ux v − u2x v
2
4
4
2
2
•
So,

F=
1
uvy
2
+ 14 uy vx − 21 ux vy + 14 uvxy − 12 uy v + 12 uxy v
− 12 uvx − 14 uv2x + 14 ux vx + 12 ux v − 12 u2x v


Let K = F̃−F then


1
1
1
1
1
1
uv
−
u
v
−
u
v
−
uv
+
u
v
−
uxy v
y
y x
x y
xy
y
2
4
2
4
2
2

K=
− 12 uvx + 14 uv2x + 34 ux vx − 12 ux v + 12 u2x v
then ∇ · K = 0
•
Also, K = (Dy θ, −Dx θ) with θ = 12 uv − 14 uvx − 12 ux v
(curl in 2D)
Application: Computation of Conservation Laws
•
System of PDEs
ut = F(u, ux , u2x , · · · )
•
Conservation law in (1 + 1) dimensions
Dt ρ + Dx J = 0 (on PDE)
conserved density ρ and flux J
•
Conservation law in (3 + 1) dimensions
Dt ρ + ∇ · J = Dt ρ + Dx J1 + Dy J2 + Dz J3 = 0 (on PDE)
conserved density ρ and flux J = (J1 , J2 , J3 )
•
Example: Shallow water wave (SWW) equations
1
ut + (u·∇)u + 2 Ω × u + ∇(θh) − h∇θ = 0
2
θt + u·(∇θ) = 0
ht + ∇·(uh) = 0
In components:
1
ut + uux + vuy − 2 Ωv + hθx + θhx = 0
2
1
vt + uvx + vvy + 2 Ωu + hθy + θhy = 0
2
θt + uθx + vθy = 0
ht + hux + uhx + hvy + vhy = 0
•
ρ(1)
First few densities-flux pairs:

=h
J(1)
=

ρ(2)
= hθ
J(2)
=

ρ(3) = hθ2
J(3) = 

ρ(4) = (u2 + v 2 )h + h2 θ
J(4) = 
uh
vh
uhθ
vhθ




uhθ2

vhθ2

u3 h + uv 2 h + 2uh2 θ

v 3 h + u2 vh + 2vh2 θ

ρ(5) = vx θ − uy θ + 2Ωθ


2 θ +v 2 θ −hθθ +h θ 2
12Ωuθ−4uu
θ+6uv
θ+2vv
θ+u
y
x
y
y
y
y
y
1
(5)

J =6
12Ωvθ+4vvx θ−6vuy θ−2uux θ−u2 θx −v 2 θx +hθθx −hx θ2
Computation of Conservation Laws for SWW
•
Step 1: Construct the form of the density
The SWW equations are invariant under the
scaling symmetries
(x, y, t, u, v, θ, h, Ω) → (λ−1 x, λ−1 y, λ−2 t, λu, λv, λθ, λh, λ2 Ω)
and
(x, y, t, u, v, θ, h, Ω) → (λ−1 x, λ−1 y, λ−2 t, λu, λv, λ2 θ, λ0 h, λ2 Ω)
Construct a candidate density, for example,
ρ = c1 Ωθ + c2 uy θ + c3 vy θ + c4 ux θ + c5 vx θ
which is scaling invariant under both symmetries
•
Step 2: Determine the constants ci
Compute E = −Dt ρ and remove time derivatives
∂ρ
∂ρ
∂ρ
∂ρ
∂ρ
E = −(
θt )
utx +
uty +
vtx +
vty +
∂ux
∂uy
∂vx
∂vy
∂θ
= c4 θ(uux + vuy − 2Ωv + 12 hθx + θhx )x
+ c2 θ(uux + vuy − 2Ωv + 12 hθx + θhx )y
+ c5 θ(uvx + vvy + 2Ωu + 12 hθy + θhy )x
+ c3 θ(uvx + vvy + 2Ωu + 12 hθy + θhy )y
+ (c1 Ω + c2 uy + c3 vy + c4 ux + c5 vx )(uθx + vθy )
Require that
(0,0)
(0,0)
(0,0)
(0,0)
Lu(x,y) (E) = Lv(x,y) (E) = Lθ(x,y) (E) = Lh(x,y) (E) ≡ 0
•
Solution: c1 = 2, c2 = −1, c3 = c4 = 0, c5 = 1 gives
ρ = 2Ωθ − uy θ + vx θ
•
Step 3: Compute the flux J
E = θ(ux vx + uv2x + vx vy + vvxy + 2Ωux
+ 12 θx hy − ux uy − uuxy − uy vy − u2y v
+2Ωvy − 12 θy hx )
+2Ωuθx + 2Ωvθy − uuy θx
−uy vθy + uvx θx + vvx θy
Apply the 2D homotopy operator:
(x)
(y)
J = (J1 , J2 ) = Div−1 E = (Hu(x,y) (E), Hu(x,y) (E))
Compute
Iu(x) (E)
=
(1,0)
uLu(x,y) (E)
+ Dx
(2,0)
uLu(x,y) (E)
1
(1,1)
+ Dy uLu(x,y) (E)
2

∂E
∂E

= u
− 2Dx
− Dy
∂ux
∂u2x
!
∂E
1
∂E
+ Dx u
+ Dy u
∂u2x
2
∂uxy
1 2
= uvx θ + 2Ωuθ + u θy − uuy θ
2
!
∂E 
∂uxy
Similarly, compute
1 2
= vvy θ + v θy + uvx θ
2
1 2
(x)
θ hy + 2Ωuθ − uuy θ + uvx θ
Iθ (E) =
2
1
(x)
Ih (E) = − θθy h
2
Iv(x) (E)
Next,
J1 =
=
(x)
Hu(x,y) (E)
Z 1
Iu(x) (E)
0
Z
=
0
1
dλ
(x)
(x)
(x)
+ Iv (E) + Iθ (E) + Ih (E) [λu]
λ
1 2
2
4λΩuθ + λ 3uvx θ + u θy − 2uuy θ + vvy θ
2
!
1 2
1 2
1
+ v θy + θ hy − θθy h
dλ
2
2
2
2
1
1 2
= 2Ωuθ− uuy θ+ uvx θ+ vvy θ+ u θy
3
3
6
1 2
1
1
+ v θy − hθθy + hy θ2
6
6
6
Analogously,
J2 =
(y)
Hu(x,y) (E)
2
1
1 2
1 2
= 2Ωvθ + vvx θ − vuy θ − uux θ − u θx − v θx
3
3
6
6
1
1
+ hθθx − hx θ2
6
6
Hence,


112Ωuθ−4uuy θ+6uvx θ+2vvy θ+u2 θy +v 2 θy −hθθy +hy θ2
J=
6 12Ωvθ+4vvx θ−6vuy θ−2uux θ−u2 θx −v 2 θx +hθθx −hx θ2
PART II: DISCRETE CASE
•
Definitions:
D is the up-shift (forward or right-shift) operator
DFn = Fn+1 = Fn |n→n+1
D−1 the down-shift (backward or left-shift) operator
D−1 Fn = Fn−1 = Fn |n→n−1
∆ = D − I is the forward difference operator
∆Fn = (D − I)Fn = Fn+1 − Fn
•
Problem to be solved: Given fn
Find Fn = ∆−1 fn so that fn = ∆Fn = Fn+1 − Fn
Analogy Continuous & Discrete Cases
Zeroth & Higher Euler Operators
Continuous Case
(0)
Lu(x)
∞
X
k ∂
=
(−Dx )
∂uk x
k=0
Discrete Case
(0)
Lun
=
∞
X
k=0
D
−k
∂
∂un+k
∞
∂ X −k
=
D
∂un k=0
(i)
Lu(x) =
∞ X
k
k=i
∞
k X
∂
∂
(i)
k−i
−k
(−Dx )
Lun =
D
i
∂uk x
i
∂u
n+k
k=0
∞
∂ X k −k
=
D
∂un k=i i
Analogy Continuous & Discrete Cases
Homotopy Operators & Integrands
Continuous Case
Discrete Case
Z 1X
Z 1X
N
N
dλ
dλ
Hu(x) (f ) =
Iuj (f )[λu] Hun (f )=
Iuj,n (f )[λun ]
λ
λ
0 j=1
0 j=1
∞
X
(i+1)
Iuj (f )=
Dix uj Luj (x) (f )
i=0
Iuj,n (f ) =
∞
X
i=0
∆i uj,n L(i+1)
uj,n (f )
Euler Operators Side by Side
Continuous Case
L(0)
u
=
L(1)
=
u
L(2)
=
u
L(3)
=
u
(for component u)
∂
∂
2 ∂
3 ∂
− Dx
+ Dx
− Dx
+ ···
∂u
∂ux
∂u2x
∂u3x
∂
∂
2 ∂
3 ∂
− 2Dx
+ 3Dx
− 4Dx
+ ···
∂ux
∂u2x
∂u3x
∂u4x
∂
∂
2 ∂
3 ∂
− 3Dx
+ 6Dx
− 10Dx
+ ···
∂u2x
∂u3x
∂u4x
∂u5x
∂
∂
2 ∂
3 ∂
− 4Dx
+ 10Dx
− 20Dx
+ ···
∂u3x
∂u4x
∂u5x
∂u6x
Discrete Case
L(0)
un
=
L(1)
un =
L(2)
un =
L(3)
un =
(for component un )
∂
(I + D−1 + D−2 + D−3 + · · · )
∂un
∂
(D−1 + 2D−2 + 3D−3 + 4D−4 + · · · )
∂un
∂
(D−2 + 3D−3 + 6D−4 + 10D−5 + · · · )
∂un
∂
(D−3 + 4D−4 + 10D−5 + 20D−6 + · · · )
∂un
Homotopy Operators Side by Side
Continuous Case
(for components u and v)
Z 1
dλ
Hu(x) (f ) =
I1 (f ) + I2 (f ) [λu]
λ
0
with
I1 (f ) =
∞
X
Dix uL(i+1)
(f )
u
i=0
and
I2 (f ) =
∞
X
i=0
Dix vL(i+1)
(f )
v
Discrete Case
(for components un and vn )
Z
1
Hun (f ) =
0
dλ
I1,n (f ) + I2,n (f ) [λun ]
λ
with
I1,n (f ) =
∞
X
∆i un L(i+1)
un (f )
i=0
and
I2,n (f ) =
∞
X
i=0
∆i vn L(i+1)
(f )
vn
Parallelism of Definitions & Theorems
Continuous Case (PDE) Semi-discrete Case (DDE)
ut = F(u, ux , u2x , · · · )
u̇n = F(· · · , un−1 , un , un+1 , · · · )
Dt ρ + Dx J = 0
Dt ρ n + ∆ J n = 0
•
Definition: fn is exact iff fn = ∆Fn = Fn+1 − Fn
•
Theorem (exactness test): fn = ∆Fn iff Lun (fn ) ≡ 0
•
Theorem: fn = ∆r Fn iff Lun (fn ) ≡ 0 for
i = 0, 1, . . . , r−1
•
Theorem (summation with homotopy operator):
(0)
(i)
If fn is exact then Fn = ∆−1 fn = Hun (fn )
Testing Exactness
Consider, for example,
2
fn = −un un+1 vn −vn2 +un+1 un+2 vn+1 +vn+1
+un+3 vn+2 −un+1 vn
•
fn is exact
•
After summation by parts (done by hand):
Fn = vn2 + un un+1 vn + un+1 vn + un+2 vn+1
Testing Exactness
Consider, for example,
2
fn = −un un+1 vn −vn2 +un+1 un+2 vn+1 +vn+1
+un+3 vn+2 −un+1 vn
•
fn is exact
•
After summation by parts (done by hand):
Fn = vn2 + un un+1 vn + un+1 vn + un+2 vn+1
Mathematica cannot do this!
•
Exactness test with Euler operator:
For component un (highest shift 3):
L(0)
un (fn )
∂
=
[I + D−1 + D−2 + D−3 ](fn )
∂un
= [−un+1 vn ] + [−un−1 vn−1 +un+1 vn −vn−1 ]
+
[un−1 vn−1 ]+[vn−1 ]
≡ 0
Similarly,
(0)
Lvn (fn )
≡0
Application of Discrete Homotopy Operator
Example:
2
fn=−un un+1 vn −vn2 +un+1 un+2 vn+1 +vn+1
+un+3 vn+2 −un+1 vn
Compute
(2)
2
(3)
un L(1)
(f
)
+
∆
u
L
(f
)
+
∆
u
L
n un n
n un (fn )
un n
∂ −1
= un
D + 2D−2 + 3D−3 (fn )
∂un
∂
+ ∆ un
D−2 + 3D−3 (fn )
∂un
∂
2
+ ∆ un
D−3 (fn )
∂un
= 2un un+1 vn + un+1 vn + un+2 vn+1
Iun (fn ) =
(2)
Ivn (fn ) = vn L(1)
(f
)
+
∆
v
L
n
n vn (fn )
vn
∂
∂ −2
−1
−2
= vn
D + 2D
(fn ) + ∆ vn
D (fn )
∂vn
∂vn
= un un+1 vn + 2vn2 + un+1 vn + un+2 vn+1
Finally,
Z 1
dλ
Fn =
Iun (fn ) + Ivn (fn ) [λun ]
λ
0
Z 1
=
2λvn2 + 3λ2 un un+1 vn + 2λun+1 vn + 2λun+2 vn+1 dλ
0
= vn2
+ un un+1 vn + un+1 vn + un+2 vn+1
Application: Computation of Conservation Laws
•
System of DDEs
u̇n = F(· · · , un−1 , un , un+1 , · · · )
•
Conservation law in (1 + 1) dimensions
Dt ρn + ∆Jn = 0 (on DDE)
conserved density ρn and flux Jn
•
Example: Toda lattice
u̇n = vn−1 − vn
v̇n = vn (un − un+1 )
•
First few density-flux pairs:
(0)
J n = un
(1)
Jn = vn−1
ρn = 21 u2n + vn
(2)
Jn = un vn−1
(3)
ρn = 31 u3n
(3)
Jn = un−1 un vn−1
ρn = ln(vn )
(0)
(1)
ρn = u n
+ un (vn−1 + vn )
(2)
2
+ vn−1
Computation Conservation Laws for Toda Lattice
Step 1: Construct the form of the density
The Toda lattice is invariant under scaling symmetry
(t, un , vn ) → (λ−1 t, λun , λ2 vn )
Construct a candidate density, for example,
ρn = c1 u3n + c2 un vn−1 + c3 un vn
which is scaling invariant under the symmetry
Step 2: Determine the constants ci
Compute En = Dt ρn and remove time derivatives
En = (3c1 − c2 )u2n vn−1 + (c3 − 3c1 )u2n vn + (c3 − c2 )vn−1 vn
2
+c2 un−1 un vn−1 + c2 vn−1
− c3 un un+1 vn − c3 vn2
Compute Ẽn = DEn to remove negative shift n − 1
Require that
(0)
Lun (Ẽn )
=
(0)
Lvn (Ẽn )
≡0
Solution: c1 = 13 , c2 = c3 = 1 gives
1 3
ρn = un + un (vn−1 + vn )
3
Step 3: Compute the flux Jn
2
Ẽn = DEn = un un+1 vn + vn2 − un+1 un+2 vn+1 − vn+1
Apply the homotopy operator
Jn = ∆−1 (−Ẽn ) = Hun (−Ẽn )
Compute
Iun (−Ẽn ) = 2un un+1 vn
and
Ivn (−Ẽn ) = un un+1 vn + 2vn2
Next, compute
Z
J˜n =
1
0
Z
=
dλ
Iun (−Ẽn ) + Ivn (−Ẽn ) [λun ]
λ
1
(3λ2 un un+1 vn + 2λvn2 ) dλ
0
= un un+1 vn + vn2
Finally, backward shift Jn = D−1 (J˜n ) given
2
Jn = un−1 un vn−1 + vn−1
Implementation in Mathematica & Software
Codes are available via the Internet
URL: http://www.mines.edu/fs home/whereman/
and via anonymous FTP from mines.edu in directory
pub/papers/math cs dept/software/
Publications
1. W. Hereman, M. Colagrosso, R. Sayers, A.
Ringler, B. Deconinck, M. Nivala, and M. S.
Hickman, Continuous and Discrete Homotopy
Operators and the Computation of Conservation
Laws. In: Differential Equations with Symbolic
Computation, Eds.: D. Wang and Z. Zheng,
Birkhäuser Verlag, Basel (2005), Chapter 15, pp.
249-285.
2. W. Hereman, J.A. Sanders, J. Sayers, and J.P.
Wang, Symbolic computation of polynomial
conserved densities, generalized symmetries, and
recursion operators for nonlinear
differential-difference equations, CRM Proceedings
and Lecture Series 39, Eds.: P. Winternitz and D.
Gomez-Ullate, American Mathematical Society,
Providence, Rhode Island (2004), pp. 267-282.
3. W. Hereman, Symbolic computation of
conservation laws of nonlinear partial differential
equations in multi-dimensions, Int. J. Quan.
Chem. (2005) in press.
Download