Symbolic Computation of Conserved Densities and Fluxes for Nonlinear Systems of Differential-Difference

advertisement
Symbolic Computation of
Conserved Densities and Fluxes for
Nonlinear Systems of Differential-Difference
Equations
by
Holly Eklund
c 2003 Holly Eklund,
Copyright
All rights reserved.
ii
A thesis submitted to the Faculty and the Board of Trustees of the Colorado
School of Mines in partial fulfillment of the requirements for the degree of Masters of
Science (Mathematical and Computer Sciences).
Golden, Colorado
Date
Signed:
Holly Eklund
Approved:
Dr. Willy Hereman
Mathematical and Computer
Sciences
Thesis Advisor
Golden, Colorado
Date
Dr. Graeme Fairweather
Head Department
Mathematical and Computer
Sciences
iii
ABSTRACT
Two algorithms are presented to find conserved densities and fluxes of nonlinear systems of differential-difference equations. Both algorithms utilize the scaling
properties of lattice equations to reduce the problem to a calculus and linear algebra
problem. The two algorithms are illustrated for the Kac-van Moerbeke, Toda, and
Ablowitz-Ladik lattices. The first method leads to a three step algorithm which utilizes the dilation invariance of the conservation laws to construct the form of the density. For this method, the discrete Euler operator or discrete variational derivative is
an advantageous tool. The algorithm is implemented in Mathematica. The package is
called DDEDensityFlux.m. The key applications are to analyze the discretizations
of the Korteweg-de Vries (KdV), and modified Korteweg-de Vries (mKdV) lattices.
A combination of the KdV and mKdV lattices is also considered. The second method
leads to a five step algorithm that is primarily useful in determining fluxes. Both of
the algorithms presented could be used to investigate the integrability of semi-discrete
lattices.
iv
TABLE OF CONTENTS
ABSTRACT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
iv
LIST OF TABLES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
vii
ACKNOWLEDGMENTS . . . . . . . . . . . . . . . . . . . . . . . . . . . viii
Chapter 1
INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . .
1
Chapter 2
DIFFERENTIAL-DIFFERENCE EQUATIONS . . . .
6
2.1
2.2
2.3
2.4
2.5
2.6
2.7
Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . .
Conservation laws . . . . . . . . . . . . . . . . . . . . . . .
Example: The Kac-van Moerbeke lattice . . . . . . . . . .
Dilation Invariance: The concept behind our algorithms . .
Density-flux pairs . . . . . . . . . . . . . . . . . . . . . . .
Tool 1: Equivalence criterion . . . . . . . . . . . . . . . . .
Tool 2: The discrete Euler operator (variational derivative)
Chapter 3
3.1
3.2
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
6
9
11
13
15
19
20
THE FIRST MATHEMATICAL METHOD AND ALGORITHM . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
IMPLEMENTATION AND SOFTWARE . . . . . . . .
Existing software . . . . . . . . . . .
The new code DDEDensityFlux.m . .
Using the software: A sample session
Options for the user . . . . . . . . .
Implementation issues . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
29
29
31
32
36
38
COMPUTATION OF CONSERVATION LAWS . . . .
42
The Kac-van Moerbeke lattice . . . . . . . . . . . . . . . . . . . . . .
The Toda lattice . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
The Ablowitz-Ladik lattice . . . . . . . . . . . . . . . . . . . . . . . .
42
48
55
v
.
.
.
.
.
25
25
.
.
.
.
.
Chapter 5
5.1
5.2
5.3
.
.
.
.
.
.
.
The method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Steps of the algorithm . . . . . . . . . . . . . . . . . . . . . . . . . .
Chapter 4
4.1
4.2
4.3
4.4
4.5
.
.
.
.
.
.
.
5.3.1
5.3.2
5.3.3
Chapter 6
6.1
6.2
6.3
6.4
The
The
The
The
55
56
59
A SECOND METHOD TO DETERMINE DENSITIES
AND FLUXES . . . . . . . . . . . . . . . . . . . . . . . . . 67
.
.
.
.
67
71
73
75
. . . . . . . . . . . . . . . . . . . . . . .
81
Discretization of the combined KdV-mKdV equation . . . . . . . . .
Discretization of the Korteweg-de Vries equation . . . . . . . . . . . .
Discretization of the modified Korteweg-de Vries equation . . . . . .
81
91
96
Chapter 7
7.1
7.2
7.3
Introducing a first weighted parameter (α) . . . . . . . . . . .
Introducing a second weighted parameter (β) . . . . . . . . .
Introducing Shifts . . . . . . . . . . . . . . . . . . . . . . . . .
Chapter 8
second algorithm . . . . .
Kac-van Moerbeke lattice
Toda lattice . . . . . . .
Ablowitz-Ladik lattice . .
APPLICATIONS
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
CONCLUSION . . . . . . . . . . . . . . . . . . . . . . . . . 101
REFERENCES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Appendix A DATA FILES . . . . . . . . . . . . . . . . . . . . . . . . . . 107
vi
LIST OF TABLES
5.1
Ranks of terms in density candidate (R=3) for the KvM lattice . . .
44
5.2
Ranks of terms in density candidate (R=3) for the Toda lattice . . .
50
5.3
Ranks of terms in density candidate (R= 12 ) for the AL lattice . . . .
57
5.4
Ranks of terms in density candidate (R= 21 ) for the AL lattice . . . .
61
7.1
Ranks of terms in density candidate (R= 21 ) for the combined equation
83
7.2
Ranks of terms in density candidate (R= 43 ) for the combined equation
84
7.3
Ranks of terms in density candidate (R=1) for the combined equation
85
7.4
Ranks of terms in density candidate (R= 21 ) for the combined equation
87
7.5
Ranks of terms in density candidate (R= 85 ) for the combined equation
88
7.6
Ranks of terms in density candidate (R= 43 ) for the combined equation
90
7.7
Ranks of terms in density candidate (R=1) for the KdV discretization
92
7.8
Ranks of terms in density candidate (R=1) for the KdV discretization
94
7.9
Ranks of terms in density candidate (R= 21 ) for the mKdV discretization 97
7.10 Ranks of terms in density candidate (R=1) for the mKdV discretization 98
7.11 Ranks of terms in density candidate (R= 12 ) for the mKdV discretization 99
vii
ACKNOWLEDGMENTS
I greatly appreciate the help of Dr. Willy Hereman, my thesis advisor for his
clear explanations, helpful input, and patience throughout.
Without the support of the National Science Foundation Computer Science, Engineering and Mathematics Scholarships program, and the National Science Foundation research award CCR-9901929, this research would not have been possible.
Many thanks go to my thesis committee members, Dr. Barbara Moskal and Dr.
Paul Martin for all of their comments and suggestions.
Finally, my sincere gratitude goes to my fiancé Jeffrey Bellman and my family
for their support and encouragement throughout.
viii
1
Chapter 1
INTRODUCTION
Differential-difference equations (DDEs) have been the focus of many nonlinear
studies since the original work of Fermi, Pasta, and Ulam in the nineteen sixties
[9]. Nonlinear DDEs describe many interesting physical phenomena including vibrations of particles in lattices and currents in electrical networks, Langmuir waves,
and interactions between competing populations. Also, DDEs play an important role
in queuing problems and discretizations in solid state physics and quantum fields.
Lastly, they are used in numerical simulations of nonlinear PDEs [1].
Recently, there has been a renewed interest in DDEs (see e.g. [40] for a review of
the literature). DDEs are semi-discretized as the single space variable is discretized,
and time is kept continuous. This is in contrast to their fully discretized counterparts,
called difference equations, in which there currently is also a great deal of interest
(see e.g. [7, 21, 27, 28]).
In this thesis we focus on one aspect of the integrability of DDEs, namely the computation of polynomial conserved densities and associated fluxes via direct methods
which can be implemented in computer algebra systems. The first few conservation
laws of a DDE may have a physical meaning, for instance conserved momentum and
energy. Additional ones may facilitate the study of both quantitative and qualitative
properties of solutions [23]. Also, the existence of a sequence of conserved densities
predicts integrability of DDEs [13]. However, the absence of conserved densities does
not preclude integrability. The integrable DDEs could indeed be disguised with a co-
2
ordinate transformation so that the transformed equation no longer admits conserved
densities of polynomial type.
The main result of this thesis is two-fold. First, I added several new aspects to the
previously existing method used in condens.m [10], InvariantsSymmetries.m [12]
and diffdens.m [11]. Second, I implemented the new components in Mathematica.
The new package DDEDensityFlux.m is much more reliable than previous versions,
and it calculates conservation laws for new, more complicated systems of DDEs.
In this thesis, I describe two novel methods [20] to construct families of conserved
densities and apply them to specific examples.
(1) The first method relies heavily on the notion of dilation invariance. It is
shown in this thesis that conservation laws for DDEs are dilation invariant. We utilize this fact and construct the form of the density, ρn . Then, we may either use a
“shifting” technique or the discrete Euler operator to find the unknown constants.
Using the “shifting” technique to determine the constants, gives the flux, Jn , automatically. Using the discrete Euler operator to find the unknown constants simplifies
the calculation of the flux, Jn , but does not determine it directly. The first method
leads to the first algorithm which was implemented in Mathematica as DDEDensityFlux.m.
(2) The second method, suggested by Hickman [20], is more theoretical and is
primarily useful in determining fluxes. It leads to a five step algorithm that uses
repeated decomposition of the identity operator I to find pieces in and outside the
image (Im) of the operator ∆ = D − I, where D is the up-shift operator. First,
we determine the furthest negative shifted variable in expression E (i.e. Dt ρn after
replacement from the system). The expression E is then split into two parts, A(j) and
A(j+1) , where A(j) contains all terms that are independent of the lowest shifted variable
3
and A(j+1) has terms dependent on the lowest shifted variable. We then down-shift
A(j) and add D−1 A(j) to A(j+1) . This process is repeated until D−1 A(j) + A(j+1) = 0.
The constraint determines the unknown coefficients leading to the final form of the
density, ρn , and the flux, Jn .
The techniques described in this thesis are applicable to complicated nonlinear
systems of DDEs. Yet, to keep the ideas transparent and avoid lengthy computation
(which are best performed with Maple, Mathematica, or muPAD) we use the Kac-van
Moerbeke (KvM), Toda, and Ablowitz-Ladik (AL) lattices to illustrate our methods.
Like the algorithms and Mathematica codes (for densities and generalized symmetries)
in [14, 15, 17, 19], the methods in the present paper are restricted to polynomial
densities and fluxes.
There is a vast body of work on DDEs, including investigations of integrability
criteria via the computation of densities, generalized and master symmetries, recursion operators, etc. For nonlinear DDEs several solution methods and integrability
tests are applicable. The solution methods include symmetry reduction [29], and
an extension of the spectral transform method [26]. Adaptations of the singularity confinement approach [33], the Wahlquist-Estabrook method [8], and the master
symmetry technique [6] allow one to test integrability of DDEs. The most comprehensive integrability study of DDEs was done by Levi and colleagues [26, 30], Yamilov
[46, 47] and co-workers [4, 5, 6, 36, 37, 38]. Their papers provide a classification of
semi-discrete equations possessing infinitely many local conservation laws. Using the
formal symmetry approach, they derive the necessary and sufficient conditions for the
existence of local conservation laws, and provide an algorithm to construct them.
In contrast to these algorithms, in this thesis we present new direct algorithms
that allow one to compute conserved densities and fluxes of DDEs. Our algorithms are
4
fairly straightforward. They only rely on algebra, calculus, and a tool from variational
calculus. Therefore, they can be implemented in computer algebra languages. The
first algorithm is implemented in Mathematica as DDEDensityFlux.m.
DDEDensityFlux.m is based on previously existing methods used in condens.m, InvariantsSymmetries.m, and diffdens.m. The program condens.m
automatically carries out the lengthy symbolic computations for the construction of
conserved densities [13]. The package InvariantsSymmetries.m is a straightforward
algorithm for the symbolic computation of generalized (higher-order) symmetries of
nonlinear evolution equations and lattice equations [15, 16]. The code diffdens.m
calculates conserved densities for several well-known lattice equations [17, 14].
The thesis is organized as follows.
Chapter 2 covers preliminary material about conservation laws of DDEs. Here
we utilize equivalence criteria to simplify our calculations. An analogy to a result
for PDEs, the discrete Euler operator (or variational derivative) is introduced as a
valuable tool to test conserved densities. We prove the necessary and sufficient condition for a function of a discrete variable (and its shifts) to be the total difference of
another function of discrete variables. A few simple examples illustrate the concepts.
Chapter 3 describes the first algorithm for determining densities and fluxes. The
first algorithm is organized into three steps.
In Chapter 4, we address existing related algorithms. In addition, we explain how
to use the developed software called DDEDensityFlux.m. Chapter 4 also includes
a description of how the computation of the fluxes and the discrete Euler operator
were implemented.
The KvM, Toda, and AL lattices are used as examples to illustrate the three
step algorithm in Chapter 5. The importance of introducing shifts in the density
5
(specifically for complicated examples) is demonstrated for the AL lattice. The chapter concludes with applications of the Euler operator to find densities and fluxes of
the KvM, Toda, and AL lattices.
In Chapter 6 we focus on the computation of the associated fluxes. We illustrate
how the second method could be used to compute densities as well as fluxes.
We revisit the KvM, Toda, and AL lattices to illustrate the method.
We show some additional applications of the first algorithm in Chapter 7. Here
we use our methods to compute densities and fluxes for discretizations of the Kortewegde Vries (KdV) and modified Korteweg-de Vries (mKdV) equations, as well as a
combined equation.
We draw some conclusions in Chapter 8.
In summary, the original contribution of this thesis is two-fold: improved algorithms to determine conserved densities and fluxes of DDEs, and their implementation
in Mathematica. We offer the scientific community a symbolic package called DDEDensityFlux.m that carries out the tedious calculations of conserved densities and
fluxes of nonlinear DDEs. The software and data files are available from various
sources.
6
Chapter 2
DIFFERENTIAL-DIFFERENCE EQUATIONS
In this chapter we review preliminary material [20] about densities and fluxes of
nonlinear DDEs. We also show a few simple examples.
2.1
Definitions
Definition 2.1 Differential-difference equations (DDEs) are equations that are continuous in time and discretized in space. They are of the following form:
u̇n = f (un−l , un−l+1 , . . . , un , . . . , un+m−1 , un+m )
(2.1)
with
∂f
∂f
∂ un−l ∂ un+m 6= 0,
where n is an arbitrary integer. In general, f is a nonlinear vector-valued function of
a finite number of dynamical variables, each un is a vector-valued function of t, and
u̇n is the usual time derivative of un (t).
The index n may lie in Z, or the un+k may be periodic, un+k = un+k+N . The
integer l is the furthest negative shift, and m is the furthest positive shift of any
variable in (2.1). If l = m = 0 then the equation is local and reduces to a system of
ordinary differential equations.
7
There are two notations for DDEs. The index n, may be omitted identifying
un ≡ u0 , un±p ≡ u±p , etc. However, for clarity we commit to including the index n.
Definition 2.2 The up-shift operator D is defined by
D un+k = un+k+1 .
(2.2)
Definition 2.3 Its inverse, the down-shift operator, is given by
D−1 un+k = un+k−1 .
(2.3)
Thus we have un+k = Dk un . The action of D and D−1 is extended to functions by
acting on their arguments. For example,
D g(un−p , un−p+1 , . . . , un+q ) = g(D un−p , D un−p+1 , . . . , D un+q )
= g(un−p+1 , un−p+2 , . . . , un+q+1 ).
In particular, we have
D ∂ u∂ g(un−p , un−p+1 , . . . , un+q ) = ∂ u ∂
g(un−p+1 , un−p+2 , . . . , un+q+1 ).
n+k
n+k+1
In order to standardize notation, we consider p and q to be positive integers. Identify
p with the furthest negative shift of any variable in the system, and q with the furthest
positive shift of any variable in the system. Moreover, for equations of type (2.1), the
shift operator commutes with the time derivative
D ddt un
= D f (un−l , un−l+1 , . . . , un , . . . , un+m−1 , un+m )
= f (un−l+1 , un−l+2 , . . . , un+1 , . . . , un+m , un+m+1 )
8
= ddt un+1
= ddt (D un ) .
Definition 2.4 Next, we define the (forward) difference operator, ∆ = D − I, by
∆ un+k = (D − I) un+k = un+k+1 − un+k ,
where I is the identity operator.
This operator takes the role of a spatial derivative on the shifted variables as many
examples of DDEs arise from the discretizations of a PDE in (1 + 1) variables [35].
The difference operator extends to functions and we have
∆ g(un−p , un−p+1 , . . . , un+q ) = (D − I) [g(un−p , un−p+1 , . . . , un+q )]
= D [g(un−p , un−p+1 , . . . , un+q )] − I [g(un−p , un−p+1 , . . . , un+q )]
= g(un−p+1 , un−p+2 , . . . , un+q+1 ) − g(un−p , un−p+1 , . . . , un+q ).
Definition 2.5 For any function g = g(un−p , un−p+1 , . . . , un+q ), the total time derivative Dt g is computed as
∂g
∂ g )u̇
Dt g(un−p , un−p+1 , . . . , un+q ) = ( ∂ u
n−p + · · · + (
∂ u )u̇n + · · ·
n−p
n
g
+( ∂ ∂
u )u̇n+q
n+q
=
=
=
∂ g )D−p u̇ + · · · + ( ∂ g )D0 u̇ + · · · + ( ∂ g )Dq u̇
(∂ u
n
n
n
∂u
∂u
n−p
(
q
X
k=−p
q
X
(
k=−p
n
n+q
∂g
k
∂ un+k D )u̇n
∂g
k
∂ un+k D )f (un−l , un−l+1 , . . . , un+m−1 , un+m )
(2.4)
9
on solutions of (2.1).
A simple calculation shows that the shift operator D commutes with Dt . Note that
we consider only autonomous functions and systems, i.e f and g do not explicitly
depend on t. Hence, ∂∂ ft = 0 and ∂∂ gt = 0.
2.2
Conservation laws
Definition 2.6 A function ρn = ρn (un−p , un−p+1 , . . . , un+q ) is a (conserved) density
of (2.1) if there exists a function Jn = Jn (un−r , un−r+1 , . . . , un+s ), called the (associated) flux, such that
Dt ρn + ∆ Jn = 0
or equivalently,
Dt ρn = −∆ Jn
= −(D − I)Jn
= [Jn − Jn+1 ]
is satisfied on the solutions of (2.1). (2.5) is called a local conservation law.
Any shift of a density, Dk ρn , is trivially a density since
Dt Dk ρn + ∆ Dk Jn = Dk (Dt ρn + ∆ Jn ) = Dt 0 = 0.
The associated flux is Dk Jn .
(2.5)
10
Constants of motion for (2.1) are easily obtained from densities and their shifts.
Indeed, for any density ρn with corresponding flux Jn , consider
q
X
Ω=
Dk ρn .
(2.6)
k=−p
The total time derivative of Ω is
Dt Ω =
=
−
−
q
X
∆Dk Jn
k=−p
q X
Dk+1 − Dk Jn
k=−p
=
− Dq+1 − D−p Jn .
Applying appropriate boundary conditions, for example,
lim un = 0, lim un+p = 0,
n→∞
n→∞
(2.7)
one gets the conservation law

Dt 

∞
X
Dk ρn  = − lim Dq+1 Jn + lim D−p Jn = 0.
q→∞
k=−∞
p→∞
For a periodic chain, where uk = uk+N , after summing over a period, one obtains
Dt
N
X
!
k
D ρn = −DN +1 Jn + D0 Jn = −Jn + Jn = 0.
k=0
In either case, Ω is a constant of motion of (2.1) since Ω does not change with time.
11
Definition 2.7 A density which is a total difference,
ρn = ∆ Fn ,
(2.8)
(so that Dt ρn = ∆ Dt Fn and therefore Jn = −Dt Fn is an associated flux), is called
trivial.
These densities lead to trivial conservation laws since
Ω=
q
X
Dk ∆ Fn = Dq+1 Fn − D−p Fn
k=−p
holds identically, not just on solutions of (2.1).
2.3
Example: The Kac-van Moerbeke lattice
Example 2.1
Consider the semi-discrete KvM lattice
u̇n = un (un+1 − un−1 ),
(2.9)
where as usual, u̇n = dun /dt. Note that (2.9) is equivalent to the notationally simpler
u̇0 = u0 (u1 − u−1 ).
However, as previously mentioned, for the sake of illustration we shall commit to the
first standard notation. Eq. (2.9) is often referred to as a Volterra lattice [45, 47],
although it is a special case of the two-component Volterra system [22, 36].
12
It arises in the study of Langmuir oscillations in plasmas, population dynamics,
quantum field theory, polymer science, and appears in the context of matrix factorization (see references in [40]).
Eq. (2.9) appears in the literature in other forms, including
Ṙn = 21 (e−Rn−1 − e−Rn+1 ),
(2.10)
2
2
ẇn = wn (wn+1
− wn−1
),
(2.11)
and
which relate to (2.9) by simple transformations [40]. However, (2.9) most conveniently
illustrates this algorithm.
It has the following pairs of conserved densities and fluxes [17] of rank ≤ 3:
ρ(1)
= un ,
n
ρ(2)
=
n
1
u 2
2 n
Jn(1) = −un−1 un ,
(2.12)
+ un un+1 ,
(2.13)
Jn(2) = −un−1 un 2 − un−1 un un+1 ,
(2.14)
ρ(3)
=
n
(2.15)
1
u 3
3 n
+ un un+1 (un + un+1 + un+2 ),
Jn(3) = −(un−1 un 3 + 2un−1 un 2 un+1 + un−1 un un+1 2 + un−1 un un+1 un+2 ). (2.16)
Then clearly (2.5) holds since
(1)
(1)
(1)
Dt ρ(1)
n = u̇n = un (un+1 − un−1 ) = [Jn − Jn+1 ] = −∆ Jn
and
Dt ρ(2)
= un u̇n + u̇n un+1 + un u̇n+1
n
13
= un 2 (un+1 − un−1 ) + un un+1 (un+1 − un−1 ) + un un+1 (un+2 − un )
(2)
= [Jn(2) − Jn+1 ]
= −∆ Jn(2) .
This holds for all density flux pairs of (2.1).
2.4
Dilation Invariance: The concept behind our algorithms
Many definitions and key ideas are given here. These concepts will be used
repeatedly throughout this thesis.
Definition 2.8 Key to our methods is the concept of dilation symmetry or (scaling)
(t, u, v) → (λa t, λb u, λc v),
(2.17)
where λ is an arbitrary parameter.
Note that a, b, and c could be fractions. If a 6= 0, without loss of generality we may
d
set w( dt
) = 1. Therefore, a = 1 and u corresponds to b derivatives with respect to t.
We denote this by u ∼
v∼
dc
.
dtc
db
,
dtb
and v corresponds to c derivatives with respect to t, or
The terms on the right hand side of (2.9) both have rank R = 2, since each
of these (monomial) terms is quadratic [24].
Recall the KvM lattice given by (2.9). The equation is invariant under a dilation
(scaling) symmetry. Indeed, (2.9) is invariant under (t, un ) → (λ−1 t, λun ). Therefore,
un corresponds to one derivative with respect to t. We denote this un ∼ d/dt. We
d
say the weight of un is one. By choice, we set w(t) = −1 or w( dt
) = −1.
Definition 2.9 The weight, w, of a variable is equal to the number of derivatives
with respect to t the variable carries.
14
Weights of dependent variables and parameters are non-negative, rational, and independent of n. Note that weights may be fractions. The weight of each term in a
single equation is equal to the weights of the other terms in the same equation. It
is always legitimate to consider w(un ) 6= 0 and w(vn ) 6= 0, since zero weights would
lead to a trivial case.
Definition 2.10 The rank of a monomial is defined as the total weight of the monomial. Once an equation is made scaling invariant, all the terms (monomials) in a
particular equation have the same rank. This property is called uniformity in rank.
A system is uniform in rank if every equation is uniform in rank. Note that the ranks
of the various equations may differ from each other. By definition, (2.9) is uniform
in rank and the rank is 2. Conservation laws are also uniform in rank. This property
will be addressed in further detail shortly.
Definition 2.11 An equation is scaling invariant iff weights can be assigned to each
term in the equation so that the total weights of all the terms are equal.
A system of DDEs is scaling invariant is every equation is scaling invariant. If a
system is scaling invariant, there is a consistent system of equations for the unknown
weights. So, we may assign the appropriate resulting weights to the variables. Note
that different equations in the vector equation (2.1) may have different ranks.
For more complicated DDEs, it is also convenient to consider the case when
d
) = 0, i.e. a = 0. Using this extra scale lets us to group terms in ρn according to
w( dt
d
w( dt
) = 0. This allows for much simpler calculations because for any given density
that is uniform in rank under Scale 1, we may separate it into pieces which are uniform
in rank under Scale 0. We now give the formal definitions of the two scales.
15
Definition 2.12 When computing the weights in a system of DDEs, one may choose
d
w( dt
) = 1, and calculate the weights of the variables accordingly. We will call this
d
) = 1.
Scale 1. In other words, Scale 1 corresponds to the choice w( dt
Definition 2.13 When computing the weights in a system of DDEs, one may choose
d
) = 0, and calculate the weights of the variables accordingly. We will call this
w( dt
d
Scale 0. In other words, Scale 0 corresponds to the choice w( dt
) = 0.
For systems that are not scaling invariant, we use the following trick: We introduce
one (or more) auxiliary parameter(s), and treat them as dependent variables with an
appropriate scaling. When introducing the parameter(s), it is vital to assume that no
parameter equals 0. Setting parameters zero would make some terms vanish and this
would alter the problem entirely. By introducing auxiliary parameters and assigning
weights to them, we can make each term in a single equation of the same weight
as the other terms. This process creates a modified, but scaling invariant system of
DDEs. Furthermore, by extending the action of the dilation symmetry to the space
of independent and dependent variables and parameters, we are able to apply our
first algorithm to any polynomial system of DDEs. However, this comes at a great
cost because by introducing such auxiliary parameter(s), the resulting ρn and Jn are
no longer linearly independent.
2.5
Density-flux pairs
Example 2.2
Recall the density flux pair in (2.15) and (2.16), namely:
ρ(3)
=
n
1
u 3
3 n
+ un un+1 (un + un+1 + un+2 ),
(2.18)
Jn(3) = −(un−1 un 3 + 2un−1 un 2 un+1 + un−1 un un+1 2 + un−1 un un+1 un+2 ). (2.19)
16
We can verify that (2.18) and (2.19) indeed obey
(3)
(3)
Dt ρ(3)
n = [Jn − Jn+1 ]
since
Dt
( 13 un 3 + un un+1 (un + un+1 + un+2 ))
=
un 2 u˙n + 2un u˙n un+1 + un 2 un+1
˙ + u˙n un+1 2 + 2un un+1 un+1
˙ + u̇n un+1 un+2
+un u̇n+1 un+2 + un un+1 un+2
˙
=
−un−1 un 3 − 2un−1 un 2 un+1 + un un+1 3 − un−1 un un+1 2 + 2un un+1 2 un+2
−un−1 un un+1 un+2 + un un+1 un+2 2 + un un+1 un+2 un+3
=
−(un−1 un 3 + 2un−1 un 2 un+1 + un−1 un un+1 2 + un−1 un un+1 un+2 )
+(un un+1 3 + 2un un+1 2 un+2 + un un+1 un+2 2 + un un+1 un+2 un+3 )
=
(3)
[Jn(3) − Jn+1 ].
In general, for any conservation law Dt ρn + ∆Jn = 0,
rank(Jn(3) ) = w(Dt ) + rank(ρ(3)
n )
= 1 + rank(ρ(3)
n ).
The reason for the uniformity in rank of the conservation law is obvious: In computing
Dt ρn we use the scaling invariant DDE to replace all time derivatives. In doing so,
the conservation law “inherits” the scaling symmetry of the given DDE. Therefore,
ρn , Jn , and the terms in the conservation law must all be uniform in rank. So, we
will use the fact that (2.5) is uniform in rank when computing conserved densities
17
and fluxes. Indeed, in Step 2 of our first algorithm we will build a candidate ρn as a
linear combination of monomials of a given rank (say R).
Example 2.3
Now consider the Toda lattice [18, 41]
ÿn = exp (yn−1 − yn ) − exp (yn − yn+1 ).
(2.20)
In (2.20), yn is the displacement from equilibrium of the nth particle with unit mass
under an exponential decaying interaction force between nearest neighbors.
With the change of variables,
un = ẏn ,
vn = exp (yn − yn+1 ),
lattice (2.20) can be written in algebraic form
u̇n = vn−1 − vn ,
v̇n = vn (un − un+1 ).
We can compute a couple of conservation laws for (2.21) by hand. Indeed,
u̇n = Dt ρn = vn−1 − vn = [Jn − Jn+1 ]
with Jn = vn−1 . We denote this first pair by
ρ(1)
n = un ,
Jn(1) = vn−1 .
(2.21)
18
After some work, we obtain a second pair:
2
1
ρ(2)
n = 2 un + vn ,
Jn(2) = un vn−1 .
Key to our method is the observation that (2.5) and (2.21), together with the
above densities and fluxes, are invariant under the dilation symmetry
(t, un , vn ) → (λ−1 t, λun , λ2 vn ),
(2.22)
where λ is an arbitrary parameter. The result of this dimensional analysis can be
stated as follows: un corresponds to one derivative with respect to t; for short, un ∼
Similarly, vn ∼
d2
.
dt2
d
.
dt
Scaling invariance, which is a special Lie-point symmetry, is an
intrinsic property of many integrable nonlinear DDEs.
For scaling invariant systems such as (2.9) and (2.21), it suffices to consider the
dilation symmetry on the space of independent and dependent variables.
Certainly, we may verify
(2)
(2)
Dt ρ(2)
n = [Jn − Jn+1 ],
since
Dt [ 12 un 2 + vn ] = un u˙n + v˙n
= un (vn−1 − vn ) + vn (un − un+1 )
= un vn−1 − un+1 vn
= [Jn(2) − Jn+1 (2) ].
19
2.6
Tool 1: Equivalence criterion
Definition 2.14 Two densities ρn , ρ̃n are called equivalent if ρn − ρ̃n ∈ Im ∆,
i.e. ρn − ρ̃n = ∆Fn for some Fn .
Equivalent densities, denoted as ρn ∼ ρ̃n , yield the same conservation law. Note that
(2.8) expresses that ρn ∼ 0.
It is easy to verify that compositions of D and D−1 define an equivalence relation
on monomials. The equivalence criterion will be used in Step 3 of our first algorithm.
Definition 2.15 In the algorithms in this thesis, we will use the following equivalence
criterion: if two monomials, m1 and m2 , are equivalent, m1 ≡ m2 , then m1 − m2 =
∆Mn for some polynomial Mn that depends on un and its shifts.
For example, m1 = un−2 un ≡ un−1 un+1 = m2 since
un−2 un − un−1 un+1 = ∆Mn
= Mn+1 − Mn
= −un−1 un+1 − (−un−2 un ),
(2.23)
with Mn = −un−2 un .
Definition 2.16 We call the main representative of an equivalence class, the monomial of that class with n as lowest label on u (or v).
For example, un un+2 is the main representative of the class with elements un−2 un ,
un−1 un+1 , un+1 un+3 , etc. We use lexicographical ordering to resolve conflicts. That
is, un vn+2 (not un−2 vn ) is the main representative in the class with elements un−3 vn−1 ,
un+2 vn+4 , etc.
20
Simply stated, all shifted monomials are equivalent. For example, un−1 vn+1 ≡
un+2 vn+4 ≡ un−3 vn−1 , with un vn+2 as the main representative. This equivalence
relation holds for any function of the dependent variables, but for the construction of
conserved densities we will apply it only to monomials.
2.7
Tool 2: The discrete Euler operator (variational derivative)
Completely integrable PDEs and DDEs exhibit unique analytic properties. For
instance, most completely integrable differential equations have infinitely many symmetries and conserved densities. For PDEs, in the computation of ρn and Jn , one has
to determine whether or not E = Dt ρn can be written as −Dx Jn . To verify whether
or not Jn exists, one can use a tool from variational calculus. It is well-known that a
(continuous) function g(u(x), u0 (x), u00 (x), ..., un (x)) can be integrated with respect to
x if and only if (iff) the variational derivative, Lu , of g vanishes. Formally, g = Dx h
for some function h(u(x), u0 (x), u00 (x), ..., um (x)) iff Lu (g) = 0. Here, Dx refers to
total differentiation with respect to x and Lu is the continuous Euler operator (variational derivative). In particular, a function is a conserved density of a PDE iff its
time-derivative is in the kernel (Ker) of the Euler operator (see e.g. [13]).
We now present a discrete analog of this important result. One can test for
complete integrability by examining conservation laws of DDEs. Namely, E = Dt ρn =
−∆Jn , where ρn is the density and Jn is the flux. If E = Dt ρn is a total difference,
then E = Dt ρn can be written as [Jn −Jn+1 ], and if E = Dt ρn is not a total difference,
then the nonzero terms must vanish identically. The discrete Euler operator (discrete
variational derivative) is one tool to test if a discrete expression is a total difference.
To verify whether or not E is a total difference we will now introduce the discrete
analog of the Euler operator, denoted Lun .
21
Definition 2.17 The discrete Euler operator or discrete variational derivative, Lu ,
is identified with the following equation:
q
X
Lun (g) =
k=−p
∂g
D−k ∂ u
n+k
∂ g + Dp−1 ∂ g
0 ∂g
−q ∂ g
= Dp ∂ u
∂ un−p+1 + . . . + D ∂ un + . . . + D ∂ un+q .(2.24)
n−p
Note that we can rewrite the Euler operator as

Lun (g) = ∂∂u 
n
q
X

D−k g  ,
(2.25)
k=−p
and that
q
X
Dk ∆ = Dq+1 − D−p .
k=−p
If we know that ρn is a density, then E = Dt ρn is a total difference because E =
Dt ρn = −∆Jn , where Jn is the flux associated with ρn . In summary, if Lun (E) = 0,
then E = Dt ρn equals −∆Jn for some Jn , and vice versa. So, the Euler operator is
most useful in our first algorithm. It will be utilized in Step 3 of our first algorithm.
Example 2.4
Recall the semi-discrete KvM lattice identified by (2.9) . It is well known that
ρ(3)
=
n
1
3
un 3 + un un+1 (un + un+1 + un+2 ),
(2.26)
Jn(3) = −(un−1 un 3 + 2un−1 un 2 un+1 + un−1 un un+1 2 + un−1 un un+1 un+2 ) (2.27)
are a density-flux pair for (2.9). If we replace the correct numerical constants by
22
arbitrary constants, then
3
2
2
ρ(3)
n = c1 un + c2 un un+1 + c3 un un+1 + c4 un un+1 un+2
(2.28)
is the form of the density candidate. We compute
Dt ρ(3)
= 3c1 un 2 u̇n + c2 un 2 u̇n+1 + 2c2 un un+1 u̇n + 2c3 un un+1 u̇n+1
n
+c3 un+1 2 u̇n + c4 un un+1 u̇n+2 + c4 un un+2 u̇n+1 + c4 un+1 un+2 u̇n .(2.29)
After replacing the time derivatives (using (2.9)) we get
E = Dt ρ(3)
= 3c1 un 3 un+1 − 3c1 un−1 un 3 + c2 un 2 un+1 un+2 − c2 un 3 un+1
n
+2c2 un 2 un+1 2 − 2c2 un−1 un 2 un+1 + 2c3 un un+1 2 un+2 − 2c3 un 2 un+1 2
+c3 un un+1 3 − c3 un−1 un un+1 2 + c4 un un+1 un+2 un+3 + c4 un un+1 un+2 2
+c4 un 2 un+1 un+2 − c4 un−1 un un+1 un+2 .
(2.30)
Applying the discrete Euler operator to E gives
Lun (E) =
q
X
k=−p
D−k ∂ ∂u E
n+k
= Dp ∂ ∂u E + Dp−1 ∂ u∂ E + . . . + D0 ∂∂ uE + . . . + D−q ∂ ∂u E
n−p
n−p+1
n
n+q
= (9c1 un 2 un+1 − 3c2 un 2 un+1 − 9c1 un−1 un 2 + 2c2 un un+1 un+2
−2c4 un un+1 un+2 + 4c2 un u2n+1 − 4c3 un u2n+1 − 4c2 un−1 un un+1
+2c3 un+1 2 un+2 + c3 un+1 3 − c3 un−1 un+1 2 + c4 un+1 un+2 un+3
+c4 un+1 un+2 2 − c4 un−1 un+1 un+2 ) + D−1 (3c1 un 3 − c2 un 3 + c2 un 2 un+2
−c4 un 2 un+2 + 4c2 un 2 un+1 − 4c3 un 2 un+1 − 2c2 un−1 un 2 + 4c3 un un+1 un+2
23
+3c3 un un+1 2 − 2c3 un−1 un un+1 + c4 un un+2 un+3 + c4 un un+2 2
−c4 un−1 un un+2 ) + D−2 (c2 un 2 un+1 − c4 un 2 un+1 + 2c3 un un+1 2
+c4 un un+1 un+3 + 2c4 un un+1 un+2 − c4 un−1 un un+1 ) + D−3 (c4 un un+1 un+2 )
+D(−3c1 un 3 − 2c2 un 2 un+1 − c3 un un+1 2 − c4 un un+1 un+2 )
= 9c1 un 2 un+1 − 3c2 un 2 un+1 − 9c1 un−1 un 2 + 2c2 un un+1 un+2
−2c4 un un+1 un+2 + 4c2 un un+1 2 − 4c3 un un+1 2 − 4c2 un−1 un un+1
+2c3 un+1 2 un+2 + c3 un+1 3 − c3 un−1 un+1 2 + c4 un+1 un+2 un+3 + c4 un+1 un+2 2
−c4 un−1 un+1 un+2 + 3c1 un−1 3 − c2 un−1 3 + c2 un−1 2 un+1 − c4 un−1 2 un+1
+4c2 un−1 2 un − 4c3 un−1 2 un − 2c2 un−2 un−1 2 + 4c3 un−1 un un+1 + 3c3 un−1 un 2
−2c3 un−2 un−1 un + c4 un−1 un+1 un+2 + c4 un−1 un+1 2 − c4 un−2 un−1 un+1
+c2 un−2 2 un−1 − c4 un−2 2 un−1 + 2c3 un−2 un−1 2 + c4 un−2 un−1 un+1
+2c4 un−2 un−1 un − c4 un−3 un−2 un−1 + c4 un−3 un−2 un−1 − 3c1 un+1 3
−2c2 un+1 2 un+2 − c3 un+1 un+2 2 − c4 un+1 un+2 un+3 .
Grouping like terms gives
Lun (E) = (9c1 − 3c2 )un 2 un+1 + (−9c1 + 3c3 )un−1 un 2 + (2c2 − 2c4 )un un+1 un+2
+(4c2 − 4c3 )un un+1 2 + (−4c2 + 4c3 )un−1 un un+1 + (2c3 − 2c2 )un+1 2 un+2
+(−3c1 + c3 )un+1 3 + (−c3 + c4 )un−1 un+1 2 + (c4 − c4 )un+1 un+2 un+3
+(c4 − c3 )un+1 un+2 2 + (−c4 + c4 )un−1 un+1 un+2 + (3c1 − c2 )un−1 3
+(c2 − c4 )un−1 2 un+1 + (4c2 − 4c3 )un−1 2 un + (−2c2 + 2c3 )un−2 un−1 2
+(−2c3 + 2c4 )un−2 un−1 un + (−c4 + c4 )un−2 un−1 un+1
+(c2 − c4 )un−2 2 un−1 + (−c4 + c4 )un−3 un−2 un−1 .
(2.31)
24
So, ρn will be a true density if E = Dt ρn is a total difference. Hence, Lun (E) = 0,
which leads to the system
−3c1 + c3 = 0,
c3 − c4 = 0,
3c1 − c2 = 0,
c2 − c4 = 0,
c2 − c3 = 0.
(2.32)
Solving this linear system gives 3c1 = c2 = c3 = c4 . If we let c1 = 31 , then c2 = c3 = c4 = 1.
So, application of the discrete variational derivative to E = Dt ρn and setting
the resulting expression equal to zero provides the linear system of ci . Hence, once
the form of ρn is known, we have reduced the problem of determining the constants
to simple calculus and linear algebra.
25
Chapter 3
THE FIRST MATHEMATICAL METHOD AND ALGORITHM
3.1
The method
The first algorithm requires solving the “total-difference” condition for the un-
known density (ρn ) and then constructing the associated flux (Jn ). It can be described
in three basic steps. First, it is necessary to determine the weights of the variables
according to both Scale 1 and Scale 0. More formal definitions for Scale 1 and Scale
0 were discussed in Chapter 2. Then, we must construct the form of the density
candidate. Finally, we determine the unknown coefficients in the density and the associated flux. Computation of the unknown coefficients can be done in two different
ways. One may choose to compute the coefficients by using a “shifting” routine. Or,
one may choose to compute the coefficients by employing the discrete Euler operator.
3.2
Steps of the algorithm
Step 1: Determine the weights of the variables according to both Scales
As mentioned previously in Chapter 2, (2.1) is either scaling invariant or can
be made scaling invariant by introducing auxiliary weighted parameters. Therefore,
every monomial in (2.1) has the same rank R. So, we get two different systems for the
weights of the dependent variables. In Chapter 2, we used one scale, Scale 1, where
d
) = 1. One can also consider the
t is replaced by λ−1 t. This scale corresponds to w( dt
26
d
) = 0.
case where t is left unscaled, i.e. t is replaced by λ0 t. Hence, w(t) = 0 or w( dt
We call this Scale 0. The multiple-scale approach was suggested by Sanders [34]. We
may then solve the two systems for the weights of the dependent variables.
Step 2: Construct the form of the density
This step involves finding the building blocks (monomials) of a polynomial density with a prescribed rank R.
Recall that all terms in the density must have the same rank R. Since we may
introduce parameters with weights, the fact that the density is a sum of monomials
of uniform rank does not necessarily imply that the density must be uniform in rank
with respect to the dependent variables.
Let V be the list of all the variables with positive weights, including the parameters with weight. The following procedure is used to determine the form of the
density of rank R:
• Form the set G of all monomials of rank R or less by taking all appropriate
combinations of different powers of the variables in V.
• For each monomial in G, introduce the appropriate number of derivatives with
respect to t so that all the monomials exactly have weight R. Gather in set H
all the terms that result from computing the various derivatives.
• Identify the monomials that belong to the same equivalence classes and replace
them by the main representatives. Call the resulting simplified set I, which
consists of the building blocks of the density with desired rank R.
• Linear combinations of the elements in I with constant coefficients, ci , gives
the form of polynomial density of rank R.
27
Using the linear combinations, construct a table of the terms in ρn based on Scale 1,
d
where w( dt
) = 1. Adjacent to the terms, record the rank of each term according to
Scale 1 and also Scale 0. We may now group the terms by rank according to Scale
0. The new ρn candidate is a linear combination of any one of these groups of terms
with constants ci for i = 1, 2, ...n. Note that for simple examples, using the multiple
scale technique may not eliminate terms.
Step 3: Determine the unknown coefficients
The following “shifting” procedure simultaneously determines the constants, ci ,
and the form of the flux Jn :
• Compute Dt ρn and use (2.1) to remove all t derivatives. Once we have replaced
from (2.1) we represent Dt ρn as E.
• Prior to replacement from (2.1), ρn depends on un , un+1 , . . . , un+q−1 , un+q , so
ρn (un , un+1 , . . . , un+q−1 , un+q ),
(3.1)
where q is a positive integer as before, and q is furthest positive shift of any
variable in ρn . However, after replacement from (2.1), Dt ρn = E depends on
un−p̃ , un−p̃+1 , . . . , un+q̃−1 , un+q̃ , thus
E(un−p̃ , un−p̃+1 , . . . , un+q̃−1 , un+q̃ ),
(3.2)
where p̃ and q̃ are positive integers as before, and p̃ is the furthest negative shift
of any variable in E, and q̃ is furthest positive shift of any variable in E. For
simplicity of notation, we will replace p̃ → p and q̃ → q. So, p always refers to
the furthest negative shift of any variable and q represents the furthest positive
shift of any variable.
28
• Use the equivalence criterion to modify E. The goal is to introduce the main
representatives and to identify the terms that match the pattern [Jn − Jn+1 ]. In
order to do so, we may add and subtract up-shifted or down-shifted monomials
repeatedly to E until all main representatives are introduced. For example, if
E = c1 un−1 un vn−1 , then we may add and subtract up-shifted or down-shifted
monomials to get E = c1 un un+1 vn + [c1 un−1 un vn−1 − c1 un un+1 vn ]. Clever grouping ensures that E matches the pattern [Jn − Jn+1 ], where the flux is the first
piece in the pattern [Jn − Jn+1 ].
Definition 3.1 If there are terms in E that do not match the pattern [Jn −
Jn+1 ], then these terms form the obstruction. They must vanish identically (i.e.
the coefficients for any combination of the components of un and their shifts
must be zero).
• We know from (2.5) that E = Dt ρn = −∆Jn = [Jn − Jn+1 ]. Setting the
obstruction equal to zero leads to a linear system S in the unknowns, ci .
• If S has parameters, careful analysis leads to conditions on these parameters
guaranteeing the existence of densities. See [13] for a description of this compatibility analysis. Note that if we artificially introduced parameters to ensure
scaling invariance, then there may be freedom in many of the constant coefficients in ρn . We set such arbitrary coefficients equal to 1 one at a time when
determining the density.
The first algorithm is implemented in Mathematica as DDEDensityFlux.m.
A description of how the code was developed based on previous work is described in
Chapter 4. We also explain how the software is used, and various implementation
issues that were encountered.
29
Chapter 4
IMPLEMENTATION AND SOFTWARE
As noted previously, the methods used in the new code DDEDensityFlux.m
are based on some existing methods. These methods were already incorporated in
condens.m, diffdens.m, and InvariantsSymmetries.m which were implemented in
Mathematica.
4.1
Existing software
An algorithm for the symbolic computation of polynomial conserved densities
for systems of nonlinear evolution equations is presented in [13]. The algorithm is
implemented in Mathematica and is called condens.m [10]. The code is tested on
several well-known partial differential equations from soliton theory. For systems with
parameters, condens.m can be used to determine the conditions on these parameters
so that a sequence of conserved densities might exist. As with DDEs, the existence
of a large number of conservation laws is a predictor for integrability of the system.
A straightforward algorithm for the symbolic computation of generalized (higherorder) symmetries of nonlinear evolution equations and lattice equations is presented
in [15] and [16]. The scaling properties of the evolution or lattice equations are used
to determine the polynomial form of the generalized symmetries. The coefficients
of the symmetry can be found by solving a linear system. The method applies to
polynomial systems of PDEs of first-order in time and arbitrary order in one space
variable. Likewise, lattices must be of first order in time but may involve arbitrary
30
shifts in the discretized space variable.
The algorithm InvariantsSymmetries.m [12] is implemented in Mathematica
and can be used to test the integrability of both nonlinear evolution equations and
semi-discrete lattice equations. With InvariantsSymmetries.m, generalized symmetries are obtained for several well-known systems of evolution and lattice equations
in [15] and [16]. For PDEs and lattices with parameters, the code allows one to determine the conditions on these parameters so that a sequence of generalized symmetries
exists. The existence of a sequence of such symmetries is a predictor for integrability.
The software package InvariantsSymmetries.m was used by Sakovich (Institute of Physics, National Academy of Sciences, Minsk, Belarus) and Tsuchida (Dept.
of Physics, University of Tokyo, Tokyo, Japan) in the investigation of the integrability
of coupled nonlinear Schrödinger equations.
The new algorithm DDEDensityFlux.m is based on diffdens.m [11] described
in [17] and [14]. The code diffdens.m computes conserved densities of nonlinear
differential-difference equations.
The code diffdens.m for conservation laws of DDEs was successfully used by
Tsuchida, Ujino and Wadati in a study of integrable semi-discretizations of the coupled modified Korteweg- de Vries equations [42, 43] and the study of integrable semidiscretizations of the coupled nonlinear Schrödinger equations [44].
Although condens.m, InvariantsSymmetries.m, and diffdens.m are precursors to the new algorithm DDEDensityFlux.m, there are many notable improvements to the new code. The additions included in DDEDensityFlux.m make
the software much more reliable and able to calculate conservation laws for a much
broader class of DDEs.
31
4.2
The new code DDEDensityFlux.m
New to DDEDensityFlux.m is the implementation of the direct computation
of the flux. This is a great improvement to the package because now the software is
completely self-testing. In fact, the code automatically verifies (2.5).
The implementation of the discrete Euler operator to solve for the unknown
constants is also new. The previous method of solving for such constants involved
a “shifting” technique that is also described in this thesis. Utilizing the discrete
Euler operator gives a much more mathematical calculation of conserved densities.
However, as mentioned earlier, the discrete Euler operator does not solve for the flux
directly.
In addition, earlier versions of this package only consider a single-scale approach.
The multi-scale approach is an improvement since now we can simplify the density
candidate by separating it into pieces that are uniform in rank according to Scale 0.
Therefore, we can calculate densities and fluxes for much more complicated systems
of DDEs.
This version of the software includes implementation of a new way to form the
density including shifts on the dependent variable. Computation of some conservation laws is greatly simplified by introducing shifts on the dependent variable when
building up the density candidate. The new code allows for two different choices to
determine the shifted dependent variables. The two ways to consider the shifts are
explained more in detail in Introducing Shifts in Chapter 5.
Finally, DDEDensityFlux.m has an improved linear systems analyzer. New
to the code is the simplification of the linear system before it is analyzed. In other
words, it eliminates any duplicate results for the ci and uses any ci equal to zero when
analyzing the rest of the equations in the linear system. So, the new code may now
32
handle more complicated linear systems for the unknown constants, ci .
So, the ideas used in condens.m, InvariantsSymmetries.m, and diffdens.m
are utilized in our new software package DDEDensityFlux.m. Although some of
the algorithm was previously developed and implemented in diffdens.m, the new
version of DDEDensityFlux.m includes many important improvements. These
improvements not only make the DDEDensityFlux.m more reliable than previous
versions, but they also make it possible to compute conservation laws for much more
complicated DDEs. Some of these more complex systems are investigated in Chapter
7 of this thesis.
DDEDensityFlux.m is written and implemented in Mathematica. The program DDEDensityFlux.m and all data files are available via anonymous FTP from
mines.edu. The login name is anonymous and the password is your email address. The
files are in the subdirectory pub/papers/math cs dept/software/DDEDensityFlux.m.
The software is also available from the scientific section of Hereman’s homepage with
URL: http://www.mines.edu/fs home/whereman/.
DDEDensityFlux.m automatically carries out the tedious calculations needed
to determine conserved densities and fluxes for nonlinear systems of DDEs. The code
is completely menu driven which makes it very easy to use. We now proceed with an
example of how the software is used.
4.3
Using the software: A sample session
Consider the example for determining ρn and Jn of the KvM lattice of rank R=3.
In[1]:= << DDEDensityFlux.m
Reads in the code << DDEDensityFlux.m, and produces the following menu:
*** MENU INTERFACE *** (page:
1)
33
------------------------------------------------------------1) Kac-van Moerbeke Equation (d kdv.m)
2) Modified KdV Equation (with parameter) (d mkdv.m)
3) Modified (quadratic) Volterra Equation (d molvol.m)
4) Ablowitz-Ladik Discretization of NLS Equation (d ablnl1.m)
5) Toda Lattice (d toda.m)
6) Standard Discretization of NLS Equation (d stdnls.m)
7) Herbst/Taha Discretization of KdV Equation (d diskdv.m)
8) Herbst/Taha Discretization of mKdV Equation (d dimkdv.m)
9) Herbst/Taha Discretization
of combined KdV-mKdV Equation (d herbs1.m)
10) Self-Dual Network Equations (d dual.m)
nn) Next Page
tt) Your System
qq) Exit Program
------------------------------------------------------------Taking option nn shows the remaining data cases
*** MENU INTERFACE *** (page:
2)
------------------------------------------------------------11) Parameterized Toda Lattice (d ptoda.m)
12) Generalized Toda Lattice-1 (d gtoda1.m)
13) Generalized Toda Lattice-2 (d gtoda2.m)
14) Henon System (d henon.m)
nn) Next Page
34
tt) Your System
qq) Exit Program
------------------------------------------------------------Selecting choice 1 in the menu, the code continues with
****************************************************************
WELCOME TO THE MATHEMATICA PROGRAM
by UNAL GOKTAS, WILLY HEREMAN, AND HOLLY EKLUND
FOR THE COMPUTATION OF CONSERVED DENSITIES AND FLUXES.
Version 3 released on January 10, 2003
Copyright 1998-2003
****************************************************************
Working with the data file for the
Kac-van Moerbeke (or Volterra) Equation.
Equation 1 of the system with 1 equation(s):
(u1,n )0 = u1,n (−(u1,−1+n ) + u1,1+n )
Note that u1,n is representative of un . If there were a u2,n , it would represent of vn ,
and u3,n would represent wn , etc.
LINEAR SYSTEM FOR THE WEIGHTS CORRESPONDING TO w(d/dt)=0:
{zeroweightu[1]==2 zeroweightu[2]}
SOLUTION OF THE SCALING EQUATIONS for w(d/dt)=0:
{zeroweightu[1] → 0}
LINEAR SYSTEM FOR THE WEIGHTS CORRESPONDING TO w(d/dt)=1:
35
{2 weightu[1]==1+weightu[1]}
SOLUTION OF THE SCALING EQUATIONS for w(d/dt)=1:
{weightu[1] → 1}
Program determines the weights of the variables (and parameters)
corresponding to w(d/dt)=1.
For the given system:
* weight of u[1] and all its shifts is 1.
The rank of the rho should be an integer multiple of the lowest
weight of the DEPENDENT variable(s).
Fractional weights are
allowed.
ENTER YOUR CHOICE: 1
Enter the rank of rho:
3
This produces the following density-flux pair:
****************************************************************
This is the density, rho:
1
3
(u1,n )3 + (u1,n )2 (u1,1+n ) + (u1,n )(u1,1+n 2 ) + (u1,n )(u1,1+n )(u1,2+n )
The density has no free coefficients.
Saving the density in an output file.
****************************************************************
36
The corresponding flux J is:
−(u1,−1+n )(u1,n 3 ) − 2(u1,−1+n )(u1,n 2 )(u1,1+n ) −
(u1,−1+n )(u1,n )(u1,1+n 2 ) − (u1,−1+n )(u1,n )(u1,1+n )(u1,2+n )
The flux has no free coefficients.
****************************************************************
Apart from having access to Mathematica, users need to have the program and
the data files ready in the same directory. One may create a data file similar to those
given in the Appendix, and import it by choosing the tt option.
4.4
Options for the user
Our software package leaves a great deal of flexibility to the user. In the data
file, like those in the Appendix, the user must assign True or False values to force
flags. Depending on the posed problem and the desired result, the user may opt from
the following choices:
• Scale Options
forcesinglescale = True, and forcemultiplescale = False:
The software only uses Scale 1 when determining ρn and Jn .
forcesinglescale = False, and forcemultiplescale = True:
The software uses Scale 1 and Scale 0 when determining ρn and Jn .
forcesinglescale = False, and forcemultiplescale = False:
37
The software decides whether to use only Scale 1 when determining ρn and Jn ,
or both Scale 1 and Scale 0 depending on necessity.
• Density Form Options
forceshiftsinrho = True:
The software includes extra shifts when computing the form of ρn .
forceshiftsinrho = False:
The software does not use additional shifts when computing the form of ρn .
• Shifting Options
forcemaximumshiftrhsdde = True, and forcemaximumshiftpowers = False:
The software builds up the form of ρn with shifts depending on the furthest
shift on any variable occurring in the DDE system. This is explained in more
detail as the first method in Introducing Shifts in Chapter 5.
forcemaximumshiftrhsdde = False, and forcemaximumshiftpowers = True:
The software builds up the form of ρn with shifts depending on the highest
power on any of the monomials. This is explained in more detail as the second
method in Introducing Shifts in Chapter 5.
forcemaximumshiftrhsdde = False, and forcemaximumshiftpowers = False:
The software sets the highest possible shift on any monomial to be 1 by default.
• Option for Determining Obstruction and System of Constants
forcediscreteeuler = True, forceshifting = False:
38
The software applies the discrete Euler operator to determine the obstruction
and linear system for the constants, ci . This will be illustrated for the KvM,
Toda, and AL lattices in Chapter 5.
forceshifting = True, forcediscreteeuler = False:
The software uses the “shifting” technique to compute the obstruction and
linear system for the constants, ci . This will also be illustrated for the KvM,
Toda, and AL lattices in Chapter 5.
• Options for Simplifying System of Constants
forcestripparameters = True:
The software automatically removes powers of the non-zero parameters. For
example, it removes coefficients like α, β 3 , but not (α2 − β) or (α + β)4 .
forceextrasimplifications = True:
The software applies any ci = 0 to the remaining equations in the system.
Thus, we have produced a flexible Mathematica package DDEDensityFlux.m to
compute conserved densities and fluxes for DDEs where the user may pick and choose
from the above options.
4.5
Implementation issues
Recall that our algorithm is a simple three step algorithm to compute conserved
densities and fluxes for DDEs. New to our algorithm is the computation of fluxes and
the implementation of the discrete Euler operator option. The calculation of fluxes
for DDEs is implemented in the following manner:
39
1. The software takes E and forms a list of the terms,
(i.e. {c[7]u[1][-3+n,t]u[1][n,t]u[2][-3+n,t],. . . }).
It considers each term separately.
2. It then separates each term into lists according to the dependent variables,
(i.e.{u[1][-3+n,t]u[1][n,t]}, {u[2][-3+n,t]}).
3. The software considers the furthest negative shift in the first dependent variable,
(i.e. -3).
Note that this value could be zero or it could be positive.
4. It lists the terms and their shifts appropriately depending on the furthest negative shift,
(i.e. {c[7]u[1][-3+n,t]u[1][n,t]u[2][-3+n,t], c[7]u[1][-2+n,t]u[1][1+n,t]u[2][-2+n,t],
c[7]u[1][-1+n,t]u[1][2+n,t]u[2][-1+n,t], c[7]u[1][n,t]u[1][3+n,t]u[2][n,t]}.
Note that for a zero shift, only the term itself would appear in this list. Note
that for a positive shift, the list of terms would be shifted in the opposite (down)
direction.
5. The software lists terms that go in the obstruction. These are the main representatives of the previous list,
(i.e. c[7]u[1][n,t]u[1][3+n,t]u[2][n,t]).
6. The rest of the terms listed go into the flux list, or Jn list,
(i.e. {c[7]u[1][-3+n,t]u[1][n,t]u[2][-3+n,t], c[7]u[1][-2+n,t]u[1][1+n,t]u[2][-2+n,t],
c[7]u[1][-1+n,t]u[1][2+n,t]u[2][-1+n,t]}).
40
7. Then, the software considers the next term in E. It repeats the above process
and adds the appropriate parts to the obstruction or appends the appropriate
part to the Jn list.
8. Finally, the software takes the Jn list and adds each term together to determine
the flux, Jn . The terms in the obstruction list must vanish. So, this will
determine the system for the constants.
The calculation of the fluxes is key. Computing densities as well as fluxes allows for
automated verification of (2.5). This makes our software completely self-testing.
As previously mentioned, the discrete Euler operator, or the discrete variational
derivative, may be chosen by the user as a method to determine the linear system for
the constants. It is implemented in the following way:
1. The software considers each dependent variable separately,
(i.e. u[1][n,t] first, u[2][n,t] second, etc.).
2. It takes the partial derivative of E with respect to the positive shifted terms.
3. The software then applies the appropriate number of down-shifts.
4. It computes the partial derivative of E with respect to the negative shifted
terms.
5. The software applies the appropriate number of up-shifts to this result.
6. It takes the partial derivative of E with respect to the non-shifted terms.
7. Then, the software adds the above results.
8. The software groups the unknown coefficients of like monomials,
(i.e. c1 un un+1 + c3 un un+1 → (c1 + c3 )un un+1 ) .
41
9. The coefficients of these monomials are set equal to zero, leading to a subsystem
for the constants.
10. The process is repeated for each dependent variable.
11. The subsystems are joined to produce the global system for the constants.
To illustrate our first algorithm we proceed with a few simple examples in Chapter 5. As previously noted, once we have computed the E in Step 3, there is an
alternative way to compute the obstruction and form a linear system S in the unknowns, ci . Instead of using the “shifting” procedure, one can use the Euler operator
(or variational derivative). The advantage to utilizing the Euler operator is that it
computes the obstruction directly, and gives us the linear system to determine the
unknowns, ci . However, the Euler operator does not calculate the flux simultaneously
as the “shifting” procedure does. Instead, once the unknowns (ci ) are determined,
we replace them in the density candidate from Step 2, and computation of the Jn is
greatly simplified. Examples illustrating use of the Euler operator follow each leading
example.
42
Chapter 5
COMPUTATION OF CONSERVATION LAWS
We will use the first algorithm to compute densities and fluxes for three examples.
First, we will return to the KvM lattice. Next, we will return to the Toda lattice.
Finally, we will examine completely new DDE. This third example is a parameterized
system known as the Ablowitz-Ladik lattice. Application of the Euler operator follows
each of these leading examples.
5.1
The Kac-van Moerbeke lattice
Example 5.1 (The Kac-van Moerbeke lattice)
Again consider the KvM lattice [25, 31, 32] given by
u̇n = un (un+1 − un−1 ).
(5.1)
The KvM lattice most conveniently illustrates the first algorithm. Recall that it is
invariant under the dilation symmetry
(t, un ) → (λ−1 t, λun ).
Hence, un corresponds to one derivative with respect to t, i.e. un ∼
(5.2)
d
.
dt
43
Step 1: Determine the weights of the variables according to both Scales
d
Scale 1: When w( dt
) = 1, all terms in (5.1) have the same rank if
w(un ) + 1 = 2w(un ).
Thus, w(un ) = 1, which agrees with the dilation symmetry (5.2).
d
) = 0, the terms in (5.1) have the same rank when
Scale 0: When w( dt
w(un ) + 0 = 2 w(un ), thus, w(un ) = 0 which is the trivial case. So, as expected, we
will see that Scale 0 for this simple case will not improve the algorithm.
Step 2: Construct the form of the density
Let us find the form of density with rank R=3 of (5.1). Forming all monomials
of un with rank 3 or less yields the list G = {un 3 , un 2 , un }. Introducing the necessary
t-derivatives, leads to
H = {un 3 , un 2 un+1 , un−1 un 2 , un un+1 2 , un−1 un un+1 , un un+1 un+2 , un−2 un−1 un , un−1 2 un }.
Using un−2 un−1 un ≡ un−1 un un+1 ≡ un un+1 un+2 , un−1 un 2 ≡ un un+1 2 and
un−1 2 un ≡ un 2 un+1 , we obtain the list
I = {un 3 , un 2 un+1 , un un+1 2 , un un+1 un+2 }.
Recall from (2.28) that linear combination of the terms in I with constant coefficients,
ci , gives
3
2
2
ρ(3)
n = c1 un . + c2 un un+1 + c3 un un+1 + c4 un un+1 un+2
(5.3)
In Table 5.1, the terms are listed in the first column. The rank of the term according
to Scale 0 is listed in the second column. The rank of the term according to Scale 1
44
is listed in the third column.
Term
c 1 un 3
c2 un 2 un+1
c3 un un+1 2
c4 un un+1 un+2
Scale 0 Scale 1
0
3
0
3
0
3
0
3
Table 5.1. Ranks of terms in density candidate (R=3) for the KvM lattice
All terms have the same rank (0) according to Scale 0. Therefore, we are unable
to split up the ρn candidate into different choices according to Scale 0. We can see
that for this example, the process of considering various scales was trivial since all of
the terms should be included. In more complicated cases, the use of Scale 0 will be
beneficial. We merely demonstrated the process here for clarity.
Step 3: Determine the unknown coefficients
If we take the derivative of ρn in (5.3) with respect to time we get
Dt ρ(3)
= 3c1 un 2 u̇n + c2 un 2 u̇n+1 + 2c2 un un+1 u̇n + 2c3 un un+1 u̇n+1
n
+c3 un+1 2 u̇n + c4 un un+1 u̇n+2 + c4 un un+2 u̇n+1 + c4 un+1 un+2 u̇n , (5.4)
where
u̇n = un un+1 − un−1 un ,
u̇n+1 = un+1 un+2 − un+1 un ,
u̇n+2 = un+2 un+3 − un+2 un+1 .
(5.5)
45
The goal is to introduce the main representatives. Using substitution of (5.5) into
(5.4) and using the equivalence criterion
un−1 un 2 ≡ un un+1 ,
un−1 un un+1 ≡ un−2 un−1 un ≡ un un+1 un+2 ,
(5.6)
we get
E = Dt ρ(3)
= 3c1 un 3 un+1 − 3c1 un−1 un 3 + c2 un 2 un+1 un+2 − c2 un 3 un+1
n
+2c2 un 2 un+1 2 − 2c2 un−1 un 2 un+1 + 2c3 un un+1 2 un+2 − 2c3 un 2 un+1 2
+c3 un un+1 3 − c3 un−1 un un+1 2 + c4 un un+1 un+2 un+3 + c4 un un+1 un+2 2
+c4 un 2 un+1 un+2 − c4 un−1 un un+1 un+2 .
(5.7)
After shifting and regrouping we obtain
Dt ρn = (3c1 − c2 )un 3 un+1 + (c3 − 3c1 )un un+1 3 + 2(c2 − c3 )un 2 un+1 2
+2(c3 − c2 )un un+1 2 un+2 + (c2 − c4 )un 2 un+1 un+2 + (c4 − c3 )un un+1 un+2 2
+[(−3c1 un−1 un 3 − 2c2 un−1 un 2 un+1 − c3 un−1 un un+1 2 − c4 un−1 un un+1 un+2 )
−(−3c1 un un+1 3 − 2c3 un un+1 2 un+2 − c3 un un+1 un+2 2
−c4 un un+1 un+2 un+3 )].
(5.8)
The monomials outside the square brackets in (5.8) must vanish. This yields
S = {3c1 − c2 = 0, 3c1 − c3 = 0, c2 − c3 = 0, c2 − c4 = 0, c3 − c4 = 0}.
Choosing c1 = 31 , one has c2 = c3 = c4 = 1.
(5.9)
46
The flux is determined by the first part of the square brackets. So,
Jn = −(3c1 un−1 un 3 + 2c2 un−1 un 2 un+1 + c3 un−1 un un+1 2 + c4 un−1 un un+1 un+2 ).(5.10)
Therefore, replacing the values for the constants in (5.3) gives
ρn =
1
3
un 3 + un un+1 (un + un+1 + un+2 ).
(5.11)
Replacing the values for the constants in (5.10) results in
Jn = −(un−1 un 3 + 2un−1 un 2 un+1 + un−1 un un+1 2 + un−1 un un+1 un+2 ). (5.12)
Analogously, for (5.1) we computed the densities of rank ≤ 5 :
ρ(1)
= un ,
n
(5.13)
ρ(2)
=
n
1
u 2
2 n
+ un un+1 ,
(5.14)
ρ(3)
=
n
1
u 3
3 n
+ un un+1 (un + un+1 + un+2 ),
(5.15)
ρ(4)
=
n
1
u 4
4 n
+ un 3 un+1 + 32 un 2 un+1 2 + un un+1 2 (un+1 + un+2 )
+un un+1 un+2 (un + un+1 + un+2 + un+3 ),
ρ(5)
=
n
1
u 5
5 n
(5.16)
+ un un+1 (un 3 + un+1 3 ) + 2un 2 un+1 2 (un + un+1 )
+un un+1 un+2 (un 2 + un un+2 + un+1 un+3 ) + 3un un+1 2 un+2
(un + un+1 + un+2 ) + un un+1 un+2 2 (un+2 + un+3 )
+un un+1 un+2 un+3 (un + un+1 + un+2 + un+3 + un+4 ).
(5.17)
We now return to the application of the discrete Euler operator to the KvM lattice,
previously discussed in Chapter 2.
47
Example 5.2 (The Kac-van Moerbeke lattice revisited)
To reiterate, there is an alternative way to form the linear system of ci using the
variational derivative (or Euler operator) which becomes effective in Step 3 of our
first algorithm. We have already computed Dt ρ(3)
n for the KvM lattice (5.1) in Step
3 of our first algorithm. Recall from Chapter 2, that after replacement from (5.1),
Dt ρ(3)
n reduced to
E = Dt ρ(3)
= 3c1 un 3 un+1 − 3c1 un−1 un 3 + c2 un 2 un+1 un+2 − c2 un 3 un+1
n
+2c2 un 2 un+1 2 − 2c2 un−1 un 2 un+1 + 2c3 un un+1 2 un+2 − 2c3 un 2 un+1 2
+c3 un un+1 3 − c3 un−1 un un+1 2 + c4 un un+1 un+2 un+3 + c4 un un+1 un+2 2
+c4 un 2 un+1 un+2 − c4 un−1 un un+1 un+2 .
(5.18)
. Applying the Euler operator or variational derivative to (5.18) gives
−3c1 + c3 = 0,
c3 − c4 = 0,
3c1 − c2 = 0,
c2 − c4 = 0,
c2 − c3 = 0.
(5.19)
Hence, if c1 = 31 , then c2 = c3 = c4 = 1. Inserting the values for the constants into
(5.3) gives
ρn =
1
3
un 3 + un un+1 (un + un+1 + un+2 ).
(5.20)
48
The computation of Jn of rank R=4 will be simplified since we already determined
the constants. In order to compute Jn we take the total derivative of ρn , replace
t-derivatives using (5.1), and group terms with un−1 together and terms with un
together. This results in
Dt ρn = (−un−1 un 3 − 2un−1 un 2 un+1 − un−1 un un+1 2 − un−1 un un+1 un+2 )
−(−un un+1 3 − 2un un+1 2 un+2 − un un+1 un+2 2
−un un+1 un+2 un+3 ).
(5.21)
By (2.5) it is evident that Jn matches the first part of the pattern in (5.21). Therefore,
Jn = −(un−1 un 3 + 2un−1 un 2 un+1 + un−1 un un+1 2 + un−1 un un+1 un+2 ).
5.2
(5.22)
The Toda lattice
Example 5.3 (The Toda lattice)
The Toda lattice illustrates how our first algorithm works for multi-component DDEs.
Recall
u̇n = vn−1 − vn ,
v̇n = vn (un − un+1 ).
(5.23)
As mentioned in Chapter 2, it is invariant under
(t, un , vn ) → (λ−1 t, λun , λ2 vn ).
(5.24)
49
Step 1: Determine the weights of the variables according to both Scales
Requiring uniformity in rank for each equation in (5.23) allows one to compute
the weights of the dependent variables.
d
) = 1, then
Scale 1: If w( dt
w(un ) + 1 = w(vn ),
w(vn ) + 1 = w(un ) + w(vn ).
So, w(un ) = 1, w(vn ) = 2, which is consistent with (5.24).
d
Scale 0: When w( dt
) = 0, then w(un ) = 0 and w(vn ) = 0 which is again trivial.
Step 2: Construct the form of the density
As an example, let us compute the form of the density of rank R=3. we first list
all monomials in un and vn of rank 3 or less: G = {un 3 , un 2 , un vn , un , vn }. Next, for
each monomial in G, we introduce enough t-derivatives, so that each term exactly has
weight 3. Thus, using (5.23),
d0
(un 3 ) = un 3 ,
dt0
d0
(un vn ) = un vn ,
dt0
d
(un 2 ) = 2un u̇n = 2un vn−1 − 2un vn ,
dt
d
(vn ) = v̇n = un vn − un+1 vn ,
dt
d2
d
d
(u̇n ) = (vn−1 − vn ) = un−1 vn−1 − un vn−1 − un vn + un+1 vn .
2 (un ) =
dt
dt
dt
Gathering any resulting terms gives set H = {un 3 , un vn−1 , un vn , un−1 vn−1 , un+1 vn }.
Next, we identify members that belong to the same equivalence classes and replace
them by the main representatives. For example, since un vn−1 ≡ un+1 vn both are re-
50
placed by un vn−1 . Doing so, H is replaced by I = {un 3 , un vn−1 , un vn }, which contains
the building blocks of the density. Linear combination of the monomials in I with
constant coefficients, ci , gives the form of the density:
ρn = c1 un 3 + c2 un vn−1 + c3 un vn .
(5.25)
As before, listing the various ranks of the monomials gives Table 5.2.
Term
c1 un 3
c2 un vn−1
c3 un v n
Scale 0 Scale 1
0
3
0
3
0
3
Table 5.2. Ranks of terms in density candidate (R=3) for the Toda lattice
So, again Scale 0 does not allow any simplification. All terms must be included
when building up ρn .
Step 3: Determine the unknown coefficients
Now we determine the coefficients c1 through c3 by requiring that (2.5) holds.
During this step we also compute the unknown flux Jn using the “shifting” procedure.
Taking the total derivative of (5.25), and replacing all u̇n+p from (5.23) gives
E = Dt ρn = 3c1 un 2 vn−1 − c2 un 2 vn−1 + c3 un 2 vn − 3c1 un 2 vn
+c3 vn−1 vn − c2 vn−1 vn + c2 un−1 un vn−1 + c2 vn−1 2
−c3 un un+1 vn − c3 vn 2 .
(5.26)
51
After shifting and regrouping we get,
Dt ρn
=
(3c1 − c2 )un 2 vn−1 + (c3 − 3c1 )un 2 vn
+(c3 − c2 )vn vn+1 + [(c3 − c2 )vn−1 vn − (c3 − c2 )vn vn+1 ]
+c2 un un+1 vn + [c2 un−1 un vn−1 − c2 un un+1 vn ]
+c2 vn 2 + [c2 vn−1 2 − c2 vn 2 ] − c3 un un+1 vn − c3 vn 2 .
(5.27)
Next, we group the terms outside of the square brackets and move the pairs inside
the square brackets to the bottom. We rearrange the latter terms so that they match
the pattern [Jn − Jn+1 ]. Hence,
Dt ρn
=
(3c1 − c2 )un 2 vn−1 + (c3 − 3c1 )un 2 vn
+(c3 − c2 )vn vn+1 + (c2 − c3 )un un+1 vn + (c2 − c3 )vn 2
+[{(c3 − c2 )vn−1 vn + c2 un−1 un vn−1 + c2 vn−1 2 }
−{(c3 − c2 )vn vn+1 + c2 un un+1 vn + c2 vn 2 }].
(5.28)
The terms outside the square brackets must all vanish, yielding
S = {3c1 − c2 = 0, 3c1 − c3 = 0, c2 − c3 = 0}.
(5.29)
The solution is 3c1 = c2 = c3 . Since densities can only be determined up to a multiplicative constant, we choose c1 = 31 , c2 = c3 = 1.
The terms inside the square brackets determine that
Jn = (c3 − c2 )vn−1 vn + c2 un−1 un vn−1 + c2 vn−1 2 .
(5.30)
52
Substituting the values for the constants into (5.25) and (5.30) gives
ρn = 31 un 3 + un (vn−1 + vn )
(5.31)
and
Jn = un−1 un vn−1 + vn−1 2 .
(5.32)
Analogously, we computed conserved densities of rank ≤ 5 for (5.23). They are:
ρ(1)
= un ,
n
(5.33)
ρ(2)
=
n
1
u 2
2 n
+ vn ,
(5.34)
ρ(3)
=
n
1
u 3
3 n
+ un (vn−1 + vn ),
(5.35)
ρ(4)
=
n
1
u 4
4 n
+ un 2 (vn−1 + vn ) + un un+1 vn + 21 vn 2 + vn vn+1 ,
(5.36)
ρ(5)
=
n
1
u 5
5 n
+ un 3 (vn−1 + vn ) + un un+1 vn (un + un+1 )
+un vn−1 (vn−2 + vn−1 + vn ) + un vn (vn−1 + vn + vn+1 ).
(5.37)
Ignoring irrelevant shifts in n, these densities agree with the results in [18].
Example 5.4 (The Toda lattice revisited)
Instead of using the “shifting” method, we alternatively proceed by using the Euler
operator (or variational derivative) as was done previously for (5.1). However, the
Toda lattice is a two component system so we must use the variational derivative
for each component separately. First, we consider the un component, then the vn
component. By applying the Euler operator for un to (5.26) we get the following:
Lun (E) =
q
X
k=−p
D−k ∂ ∂u E
n+k
53
= Dp ∂ ∂u E + Dp−1 ∂ u∂ E + . . . + D0 ∂∂ uE + . . . + D−q ∂ ∂u E ,
n−p
n−p+1
n
n+q
where p is the furthest negative shift on any un term and q is the furthest positive
shift on any un term. Here, p = 1 and q = 1 . So,
Lun (E) = 6c1 un vn−1 − 2c2 un vn−1 + 2c3 un vn − 6c1 un vn − c3 un+1 vn
−c3 un−1 vn−1 + c2 un+1 vn .
Grouping like terms gives
Lun (E) = (6c1 − 2c2 )un vn−1 + (2c3 − 6c1 )un vn + (c2 − c3 )un−1 vn−1
+(c3 − c2 )un+1 vn .
(5.38)
As before, we require Lun (E) ≡ 0. This produces the following linear system:
3c1 − c2 = 0,
3c1 − c3 = 0,
c2 − c3 = 0.
Then, by applying the Euler operator for vn to (5.26) we get:
Lvn (E) =
q
X
k=−p
D−k ∂∂v E
n+k
= Dp ∂∂v E + Dp−1 ∂ v∂ E + . . . + D0 ∂∂ vE + . . . + D−q ∂∂v E ,
n−p
n−p+1
n
n+q
(5.39)
54
This time, p = 1 and q = 0, hence
Lvn (E) = c3 un 2 − 3c1 un 2 + c3 vn−1 − c2 vn−1 − c3 un un+1 − 2c3 vn + 3c1 un+1 2
−c2 un+1 2 + c3 vn+1 − c2 vn+1 + c2 un un+1 + 2c2 vn .
Grouping terms gives
Lvn (E) = (c3 − 3c1 )un 2 + (c3 − c2 )vn−1 + (−c3 + c2 )un un+1 + (−2c3 + 2c2 )vn
+(3c1 − c2 )un+1 2 + (c3 − c2 )vn+1 .
(5.40)
Setting Lvn (E) ≡ 0 results again in (5.39), which coincides with S in (5.29). Solving
this system gives 3c1 = c2 = c3 .
If we set c1 =
1
3
then c2 = c3 = 1. Substituting these values into (5.25) gives
ρn = 31 un 3 + un (vn−1 + vn ).
(5.41)
Again, now that we know the constants, computation of the Jn is greatly simplified.
Taking the total derivative of ρn , replacing from (2.21), and grouping terms gives
Dt ρn = (un−1 un vn−1 + vn−1 2 ) − (un un+1 vn + vn 2 )
= [Jn − Jn+1 ].
(5.42)
So,
Jn = un−1 un vn−1 + vn−1 2 .
Next, we will examine a completely new parameterized DDE.
(5.43)
55
5.3
The Ablowitz-Ladik lattice
Example 5.5 (The Ablowitz-Ladik lattice)
In [2, 3], Ablowitz and Ladik studied properties of the following integrable
discretizations of the Nonlinear Schrödinger (NLS) equation:
i u̇n = un+1 − 2un + un−1 ± u∗n un (un+1 + un−1 ),
(5.44)
where u∗n is the complex conjugate of un . We continue with the + sign; the other case
is analogous. Instead of splitting un into its real and imaginary parts, we treat un
and vn = u∗n as independent variables and augment (5.44) with its complex conjugate
equation. Absorbing i in the scale on t, we get
u̇n = un+1 − 2un + un−1 + un vn (un+1 + un−1 ),
v̇n = −(vn+1 − 2vn + vn−1 ) − un vn (vn+1 + vn−1 ).
(5.45)
Since vn = u∗n , we have w(vn ) = w(un ).
5.3.1
Introducing a first weighted parameter (α)
Neither of the equations in (5.45) is uniform in rank. To circumvent this problem
we introduce an auxiliary parameter α with weight, and replace (5.45) by
u̇n = α(un+1 − 2un + un−1 ) + un vn (un+1 + un−1 ),
v̇n = −α(vn+1 − 2vn + vn−1 ) − un vn (vn+1 + vn−1 ).
(5.46)
56
Step 1: Determine the weights of the variables according to both Scales
d
Scale 1: Uniformity in rank requires that for w( dt
) = 1,
w(un ) + 1 = w(α) + w(un ) = 2w(un ) + w(vn ),
w(vn ) + 1 = w(α) + w(vn ) = 2w(vn ) + w(un ),
which yields w(vn ) = 1 − w(un ), w(α) = 1, or, un 2 ∼ vn 2 ∼ α ∼
(5.47)
d
.
dt
d
Scale 0: However, since w( dt
) = 0, makes w(vn ) = −w(un ), and requires that w(α) =
d
) = 1.
0, the candidate expression for ρn could not depend on α as it does when w( dt
5.3.2
Introducing a second weighted parameter (β)
Therefore, we must introduce yet another parameter β when using multiple
scales. This transforms (5.46) into
u̇n = α(βun+1 − 2βun + βun−1 ) + un vn (βun+1 + βun−1 ),
v̇n = −α(βvn+1 − 2βvn + βvn−1 ) − un vn (βvn+1 + βvn−1 ).
(5.48)
The computations now proceed as in the previous examples. So,
d
) + w(un ) = w(α) + w(β) + w(un ) = 2w(un ) + w(β) + w(vn ),
dt
d
w( ) + w(vn ) = w(α) + w(β) + w(vn ) = 2w(vn ) + w(β) + w(un ). (5.49)
dt
w(
d
Scale 1: For Scale 1, where w( dt
) = 1,
w(α) + w(β) = w(un ) + w(β) + w(vn ) = 1,
w(α) + w(β) = w(vn ) + w(β) + w(un ) = 1.
(5.50)
57
Therefore, w(α) = 1−w(β) and w(un ) = 1−w(β)−w(vn ). There is too much freedom
in these weight values. In order to proceed, we pick w(vn ) =
implies w(un ) =
1
4
1
4
and w(β) = 12 . This
and w(α) = 12 .
d
) = 0,
Scale 0: For Scale 0, where w( dt
w(α) + w(β) = w(un ) + w(β) + w(vn ) = 0,
w(α) + w(β) = w(vn ) + w(β) + w(un ) = 0.
(5.51)
So, w(α) = −w(β) and w(un ) = −w(β) − w(vn ).
Step 2: Construct the form of the density
Let us find the form of density with rank R= 21 of (5.48). Forming all monomials
of un with rank R= 12 or less yields the list G = {un 2 , un vn , vn 2 , un , vn }. In this case,
we cannot introduce any t-derivatives. Therefore, H = {un 2 , un vn , vn 2 } = I each of
rank R= 21 . So, I = H = {un 2 , un vn , vn 2 }. A linear combination of the terms in I
with constant coefficients, ci , gives
ρn = c 1 u n 2 + c 2 u n v n + c 3 v n 2 .
(5.52)
Table 5.3 lists the terms without shifts in the density in the first column, and their
respective ranks according to both Scale 0 and Scale 1 in the columns that follow.
Term
c 1 un 2
c 2 un v n
c3 vn 2
Scale 0
Scale 1
1
−2w(β) − 2w(vn )
2
1
−w(β)
2
1
2w(vn )
2
Table 5.3. Ranks of terms in density candidate (R= 12 ) for the AL lattice
58
So, there are three different choices, where each of the monomials are uniform in rank
according to Scale 0.
• Choice 1 is a scalar multiple of the term of rank −w(β) .
• Choice 2 is a scalar multiple of the term of rank −2w(β) − 2w(vn ) .
• Choice 3 is a scalar multiple of the term of rank −2w(vn ) .
Considering each of these choices separately simplifies the computations since we may
now address each case separately.
Step 3: Determine the unknown coefficients
Choice 1 gives ρn = c1 un vn . So,
Dt ρn = c1 un v̇n + c1 u̇n vn .
Again, replacing the u̇n from the (5.48) and performing the necessary shifts gives
c1 = 0. However, we could have considered Choice 2, or Choice 3. Choice 2 gives
ρn = c1 un 2 . So,
Dt ρn = 2c1 un u̇n .
Replacing the u̇n from (5.48) and performing the necessary shifts gives c1 = 0. Finally,
Choice 3 gives ρn = c1 vn 2 . So,
Dt ρn = 2c1 vn v̇n .
This again gives that c1 = 0. Therefore, we get only trivial densities resulting from
any of these Choices.
59
Note, however, that if we were to consider a higher rank, namely rank R = 32 ,
we would get the result that
ρn = c1 un vn−1 + c2 un vn+1 .
(5.53)
This comes at a great cost however. Considering higher rank equations means the
inclusion of many more terms, and the calculations become much more tedious.
5.3.3
Introducing Shifts
A better method for calculating densities and fluxes of (5.48) is to consider the
shifts of the variables in the list V and G in Step 2 of the first algorithm. One may
introduce shifts in two different ways.
• The first method of introducing the necessary shifts is implemented in the following manner: One examines the right hand side of (2.1) and determines the
highest shift, r, on any variable in the system. Note that this shift, r, could
either be in the positive or negative direction. Then, the set V includes all
shifted monomials up to n + r. Consider the following hypothetical example:
u̇n = vn−1 − vn+1 ,
v̇n = vn−3 un+2 − vn−4 un+1 .
(5.54)
Then the furthest shifted variable in (5.54) is vn−4 . Therefore, r = 4. So, for
this example, when constructing ρn of rank 2,
V = {un , un+1 , un+2 , un+3 , un+4 , vn }.
60
Therefore, taking all appropriate combinations gives
G = {un 2 , un un+1 , un un+2 , un un+3 , un un+4 , un , vn }.
• The second method of introducing the necessary shifts is more effective. We will
use this method when calculating densities. It works in the following way: To
construct ρn of rank R, with w(un ) = w, we begin by computing power, p =
R
.
w
Then, when building set G, we not only include upn , but also un un+1 . . . un+p−1 .
For (5.54), and ρn of rank R=2, we have p =
2
1
= 2. Therefore, for this artificial
example,
G = {un 2 , un un+1 , un , vn }.
Returning to (5.48), and using the second method for shifts,
G = {un 2 , un vn , vn 2 , un , vn , un un+1 , un−1 vn , vn vn+1 , vn−1 vn , un vn−1 , un vn+1 ,
un+1 vn , un−1 vn , un+1 vn+1 , un−1 vn−1 }.
We would not introduce any t-derivatives since we are looking for a density of rank
R= 21 . So,
H = {un 2 , un vn , vn 2 , un , vn , un un+1 , un−1 vn , vn vn+1 , vn−1 vn , un vn−1 , un vn+1 ,
un+1 vn , un−1 vn , un+1 vn+1 , un−1 vn−1 }.
61
Clearly,
un un+1 ≡ un−1 un ,
vn vn+1 ≡ vn−1 vn ,
un+1 vn ≡ un vn−1 ,
un−1 vn ≡ un vn+1 ,
un vn ≡ un+1 vn+1 ≡ un−1 vn−1 .
Therefore, I = {un 2 , un un+1 , vn 2 , vn vn+1 , un vn , un vn−1 , un vn+1 }, and
ρn = c1 un 2 + c2 un un+1 + c3 vn 2 + c4 vn vn+1 + c5 un vn + c6 un vn−1 + c7 un vn+1 . (5.55)
We list the ranks of the various terms with shifts according to Scale 0 and Scale 1 in
Table 5.4.
Term
c 1 un 2
c2 un un+1
c3 vn 2
c4 vn vn+1
c 5 un v n
c6 un vn−1
c7 un vn+1
Scale 0
Scale 1
1
−2w(β) − 2w(vn )
2
1
−2w(β) − 2w(vn )
2
1
2w(vn )
2
1
2w(vn )
2
1
−w(β)
2
1
−w(β)
2
1
−w(β)
2
Table 5.4. Ranks of terms in density candidate (R= 12 ) for the AL lattice
Again there are three different choices according to Scale 0.
62
• Choice 1 is a linear combination of the 3 terms of rank −w(β) .
• Choice 2 is a linear combination of the 2 terms of rank −2w(β) − 2w(vn ) .
• Choice 3 is a linear combination of the 2 terms of rank 2w(vn ).
Choice 2 and Choice 3 do not result in any densities or fluxes. Choice 1 is a linear
combination of the last three terms. We will continue with this density candidate of
rank equal to −w(β) according to Scale 0,
ρn = c1 un vn−1 + c2 un vn + c3 un vn+1 .
(5.56)
Taking the necessary derivatives gives,
E = Dt ρn = β(−αc1 un vn−2 + αc1 un−1 vn−1 − αc2 un vn−1 + αc1 un+1 vn−1
−c1 un−1 un vn−2 vn−1 + αc2 un−1 vn − αc1 un vn − αc3 un vn + αc2 un+1 vn
−c2 un 2 vn−1 vn + c1 un un+1 vn−1 vn + c2 un−1 un vn 2 + c2 un un+1 vn 2
+αc3 un−1 vn+1 − αc2 un vn+1 + αc3 un+1 vn+1 + c3 un−1 un vn vn+1
−c2 un 2 vn vn+1 − αc3 un vn+2 − c3 un un+1 vn+1 vn+2 ).
(5.57)
After shifting and regrouping we get
Dt ρn = β(−c2 un 2 vn vn+1 − c2 un 2 vn−1 vn + c2 un un+1 vn 2 + c2 un un+1 vn+1 2
+[(−c1 un−1 un vn−2 vn−1 − c1 αun vn−2 + c1 αun−1 vn−1 − c2 αun vn−1
+c2 αun−1 vn + c2 un−1 un vn 2 − c3 αun vn + c3 αun−1 vn+1 + c3 un−1 un vn vn+1 )
−(−c1 un un+1 vn−1 vn − c1 αun+1 vn−1 + c1 αun vn − c2 αun+1 vn
+c2 αun vn+1 + c2 un un+1 vn+1 2 − c3 αun+1 vn+1 + c3 αun vn+2
63
+c3 un un+1 vn+1 vn+2 )]).
(5.58)
Since the terms outside the square brackets must vanish, we can therefore only determine that c2 = 0. Substituting values for the constants into (5.56) gives
ρn = c1 un vn−1 + c3 un vn+1 .
(5.59)
Clearly then, there is freedom in the constant coefficients here. Setting c1 = 1,
ρn = un vn−1 + c3 un vn+1 .
(5.60)
So, the part of the density with coefficient c3 is
ρn = un vn+1 ,
(5.61)
and the part of the density without a free coefficient is
ρn = un vn−1 .
(5.62)
We know Jn must match the first part of the square brackets in (5.58). Substituting
c2 = 0 gives
Jn = β(−c1 un−1 un vn−2 vn−1 − c1 αun vn−2 + c1 αun−1 vn−1 − c3 αun vn + c3 αun−1 vn+1
+c3 un−1 un vn vn+1 ).
(5.63)
64
In addition we list some conserved densities of (5.45), which correspond with those
in [2]:
ρ(1)
= c1 ( 21 un 2 vn−1 2 + un un+1 vn−1 vn + un vn−2 )
n
+ c2 ( 21 un 2 vn+1 2 + un un+1 vn+1 vn+2 + un vn+2 ),
(5.64)
= c1 [ 31 un 3 vn−1 3 + un un+1 vn−1 vn (un vn−1 + un+1 vn + un+2 vn+1 )
ρ(2)
n
+ un vn−1 (un vn−2 + un+1 vn−1 ) + un vn (un+1 vn−2 + un+2 vn−1 ) + un vn−3 ]
+ c2 [ 31 un 3 vn+1 3 + un un+1 vn+1 vn+2 (un vn+1 + un+1 vn+2 + un+2 vn+3 )
+ un vn+2 (un vn+1 + un+1 vn+2 ) + un vn+3 (un+1 vn+1 + un+2 vn+2 )
+un vn+3 ].
(5.65)
If defined on an infinite interval, as shown in [2], scheme (5.44) admits infinitely many
independent conserved densities. Although it is a constant of motion, we cannot derive
the Hamiltonian of (5.44),
H = −i
X
[u∗n (un−1 + un+1 ) − 2 ln(1 + un u∗n )],
(5.66)
n
since it has a logarithmic term [1].
Example 5.6 (The Ablowitz-Ladik lattice revisited)
For (5.57) in Step 3 we use the Euler operator to determine the constants ci .
Considering the terms involving un ,
Lun (E) =
q
X
k=−p
D−k ∂ ∂u E
n+k
= Dp ∂ ∂u E + Dp−1 ∂ u∂ E + . . . + D0 ∂∂ uE + . . . + D−q ∂ ∂u E ,
n−p
n−p+1
n
n+q
65
where p is the furthest shift in the negative direction and q is the furthest shift in the
positive direction. So, p = 1 and q = 1, and
Lun (E) = βc2 un−1 vn−1 2 − 2βc2 un vn−1 vn + βc2 un−1 vn 2 + βc2 un+1 vn 2
−2βc2 un vn vn+1 + βc2 un+1 vn+1 2 .
As before, we demand that Lun (E) ≡ 0. Therefore, c2 = 0
Then, by applying the Euler operator to (5.57), for the terms involving vn we
get
Lvn (E) =
q
X
k=−p
D−k ∂ ∂u E
n+k
= Dp ∂ ∂u E + Dp−1 ∂ u∂ E + . . . + D0 ∂∂ uE + . . . + D−q ∂ ∂u E ,
n−p
n−p+1
n
n+q
where p is the furthest negative shift on any vn and q is the furthest positive shift on
vn . With p = 2 and q = 2, we get
Lvn (E) = −βc2 un−1 2 vn−1 − βc2 un 2 vn−1 + 2βc2 un−1 un vn + 2βc2 un un+1 vn
−βc2 un 2 vn+1 − βc2 un+1 2 vn+1 .
Since Lvn (E) must vanish identically, c2 = 0. Note that the result is consistent with
the previous investigation, and
ρn = c1 un vn−1 + c3 un vn+1 .
(5.67)
66
To compute Jn , we can take the total derivative of ρn given in (5.67), replace from
(5.48) and group terms. Hence,
Dt ρn = β(−c1 un−1 un vn−2 vn−1 − c1 αun vn−2 + c1 αun−1 vn−1 − c3 αun vn
+c3 αun−1 vn+1 + c3 un−1 un vn vn+1 ) − (−c1 un un+1 vn−1 vn
−c1 αun+1 vn−1 + c1 αun vn − c3 αun+1 vn+1 + c3 αun vn+2
+c3 un un+1 vn+1 vn+2 ).
(5.68)
Since Jn must match the first part of the pattern in (5.68),
Jn = β(−c1 un−1 un vn−2 vn−1 − c1 αun vn−2 + c1 αun−1 vn−1 − c3 αun vn + c3 αun−1 vn+1
+c3 un−1 un vn vn+1 ),
which is identical to (5.63).
(5.69)
67
Chapter 6
A SECOND METHOD TO DETERMINE DENSITIES AND FLUXES
We know that the densities ρn and fluxes Jn are related by (2.5). In principle,
to compute Jn = −∆−1 Dt ρn , one needs to invert the operator ∆ = D − I.
Working with the formal inverse,
∆−1 = D−1 + D−2 + D−3 + . . . ,
(6.1)
would be impractical. Instead, we present a five step algorithm which circumvents
the above infinite formal series.
Assume that ρn is a valid density. The idea is to recast Dt ρn into the form
−∆Jn , leading to the desired flux Jn . As suggested by Hickman [20], this can be done
as follows. Using
I = (D − I + I) D−1 = ∆ D−1 + D−1 ,
(6.2)
one writes
Dt ρn = E = ∆ D−1 E + D−1 E = −∆Jn ,
where the form −D−1 E will become part of Jn and D−1 E is the obstruction.
6.1
The second algorithm
Step 1: Determine the lowest shift
Starting from a valid density ρn , we first compute Dt ρn . Then, we replace all
68
time derivatives, and finally use the equivalence relation to obtain the expression E.
By examining the subscripts of the shifted terms of E, we determine the lowest
shift (p). Note that p is the furthest negative shift on any variable in the system. As
before, p is positive.
Step 2: Splitting E
The expression E is split into
E = A(0) + A(1) ,
(6.3)
where A(0) has all terms independent of the lowest shifted variable un−p that appears
in E, and A(1) has the terms dependent on the lowest shifted variable un−p .
Using (6.2) we write
E = ∆ D−1 A(0) + D−1 A(0) + A(1) .
Now, if D−1 A(0) + A(1) = 0, we are finished and Jn = − D−1 A(0) .
Step 3: Computing D−1 A(0)
D−1 A(0) comes from a single down-shift on A(0) .
Step 4: Computing D−1 A(0) + A(1)
Combining the result from the previous step with A(1) gives D−1 A(0) + A(1) . If
rearranging and grouping terms leads to D−1 A(0) + A(1) = 0, then the algorithm
terminates and Jn = −D−1 A(0) .
Step 5: Repeat as necessary
If D−1 A(0) + A(1) 6= 0, then we again split into
D−1 A(0) + A(1) = A(2) + A(3) ,
(6.4)
69
where A(2) has terms independent of un−p , and A(3) has terms dependent on un−p .
Applying (6.2) to A(2) we get
E = ∆ D−1 A(0) + ∆ D−1 A(2) + D−1 A(2) + A(3) .
If D−1 A(2) + A(3) = 0 then the algorithm terminates, and the flux is
Jn = − D−1 A(0) + A(2) . If not, we repeat the process. This procedure must
eventually terminate since ρn is a valid density.
More importantly, the above procedure may be applied to the problem of computing densities.
Without loss of generality, we can assume that ρn = ρn (un , un+1 , . . . , un+q ). For
(2.1), we have
E =
q
X
∂ ρn
k=0
k
∂ un+k D f (un−l , . . . , un+m )
q
X ∂ρ
∂ ρn f (u , . . . , u
k
n
= ∂
n−l
n+m ) +
un
∂ un+k D f (un−l , . . . , un+m ).
k=1
Applying (6.2) to the second term of this equation we obtain
q
∂ ρn f + ∆ D−1 + D−1 X ∂ ρn Dk f
E = ∂
un
∂ un+k
!
k=1
∂ ρn f + (∆ + I)
= ∂
un
q
X
∂ D−1 ρn
k=1
!
k−1
∂ un+k−1 D
f
q−1
q−1
∂ ρn f + ∆ X ∂ D−1 ρn Dk f + X ∂ D−1 ρn Dk f
= ∂
un
∂ un+k
∂ un+k
k=0
=
−1
∂
∂ u n ρn + D ρn
f +∆
k=0
q−1
X
q−1
k=0
k=1
∂ D−1 ρn Dk f + X ∂ D−1 ρn Dk f
∂ un+k
∂ un+k
with f = f (un−l , . . . , un+m ). Next, we repeat this procedure by applying (6.2) to the
70
last term. After a further q − 2 applications, we get
E =
−1
−2
∂
∂ u n ρn + D ρn + D ρn
+
q−2
X
k=1
= ·· ·
=  ∂∂u
n
q
X

f + ∆
q−1
X
k=0
q−2

∂ D−1 ρn Dk f + X ∂ D−2 ρn Dk f 
∂ un+k
∂ un+k
k=0
∂ D−2 ρn Dk f
∂ un+k


D−j ρn  f + ∆
j=0
q q−j
X
X ∂ D−j ρ
n

j=1 k=0

= Lun (ρn ) f + ∆
q q−j
X
X ∂ D−j ρ
n

j=1 k=0

k 
∂ un+k D f

k 
∂ un+k D f
by (2.25).
If Lun (ρn ) f = 0 then ρn is a trivial density. For ρn to be a non-trivial density,
we require
Lun (ρn ) f = ∆ h
(6.5)
for some h with h 6= 0. In this case the associated flux is
J = −h−
q q−j
X
X ∂ D−j ρ
n
j=1 k=0
k
∂ un+k D f.
We could apply the discrete Euler operator to Lun (ρn ) f to determine conditions such
that (6.5) holds. However, we can also repeat the above strategy by splitting this
expression into a part, A(0) , that does not depend on the lowest shifted variable and
the remaining terms. We then apply (6.2) repeatedly to A(0) (removing the total
difference terms generated by (6.2) from A(0) ) until we obtain a term that involves
both the lowest and highest shifted variables. By noting that a necessary condition
71
for g = g(un−p , . . . , un+q ) to be total difference is
∂2
∂ un−p ∂ un+q g = 0,
(6.6)
we then obtain conditions for (6.5) to hold. This procedure must be repeated until all
the terms in Lun (ρn ) f have been rewritten as a total difference. Next, we illustrate
this second algorithm for the same leading examples.
6.2
The Kac-van Moerbeke lattice
Example 6.1 (The Kac-van Moerbeke lattice revisited once more)
Step 1: Determine the lowest shift
From (5.18), we know
E = Dt ρn = 3c1 un 3 un+1 − 3c1 un−1 un 3 + c2 un 2 un+1 un+2 − c2 un 3 un+1
+2c2 un 2 un+1 2 − 2c2 un−1 un 2 un+1 + 2c3 un un+1 2 un+2 − 2c3 un 2 un+1 2
+c3 un un+1 3 − c3 un−1 un un+1 2 + c4 un un+1 un+2 un+3 + c4 un un+1 un+2 2
+c4 un 2 un+1 un+2 − c4 un−1 un un+1 un+2 .
Therefore, it is clear that the lowest shift is p = 1.
Step 2: Splitting Dt ρn
We may split the result into two pieces as follows:
Dt ρn = A(0) + A(1)
= (3c1 un 3 un+1 + c2 un 2 un+1 un+2 − c2 un 3 un+1 + 2c2 un 2 un+1 2 + 2c3 un un+1 2 un+2
−2c3 un 2 un+1 2 + c3 un un+1 3 + c4 un un+1 un+2 un+3 + c4 un un+1 un+2 2
72
−c4 un 2 un+1 un+2 ) + (−3c1 un−1 un 3 − 2c2 un−1 un 2 un+1 − c3 un−1 un un+1 2
−c4 un−1 un un+1 un+2 ),
(6.7)
where A(0) has terms independent of un−1 , and A(1) has terms dependent on un−1 .
Step 3: Computing D−1 A(0)
Taking one down-shift on A(0) gives
D−1 A(0) = D−1 (3c1 un 3 un+1 + c2 un 2 un+1 un+2 − c2 un 3 un+1 + 2c2 un 2 un+1 2
+2c3 un un+1 2 un+2 − 2c3 un 2 un+1 2 + c3 un un+1 3 + c4 un un+1 un+2 un+3
+c4 un un+1 un+2 2 − c4 un 2 un+1 un+2 )
= 3c1 un−1 3 un + c2 un−1 2 un un+1 − c2 un−1 3 un + 2c2 un−1 2 un 2
+2c3 un−1 un 2 un+1 − 2c3 un−1 2 un 2 + c3 un−1 un 3 + c4 un−1 un un+1 un+2
+c4 un−1 un un+1 2 − c4 un−1 2 un un+1 .
(6.8)
Step 4: Computing D−1 A(0) + A(1)
So,
D−1 A(0) + A(1) = (3c1 un−1 3 un + c2 un−1 2 un un+1 − c2 un−1 3 un + 2c2 un−1 2 un 2
2c3 un−1 un 2 un+1 − 2c3 un−1 2 un 2 + c3 un−1 un 3
+c4 un−1 un un+1 un+2 + c4 un−1 un un+1 2 − c4 un−1 2 un un+1 )
+(−3c1 un−1 un 3 − 2c2 un−1 un 2 un+1 − c3 un−1 un un+1 2
−c4 un−1 un un+1 un+2 ).
(6.9)
From (6.9) we can see that all monomials depend on un−1 . Rearranging the terms
73
produces
D−1 A(0) + A(1) = (−3c1 + c3 )un−1 un 3 + (−2c2 + 2c3 )un−1 un 2 un+1
+(c4 − c3 )un−1 un un+1 2 + (3c1 − c2 )un−1 3 un
+(c2 − c4 )un−1 2 un un+1 + (2c2 − 2c3 )un−1 2 un 2 .
(6.10)
It is easily seen that (6.10) equals 0 if 3c1 = c2 = c3 = c4 . Therefore, Step 5 is
unnecessary and we do not have to repeat Step 3 and Step 4. Substitution of c1 = 31 ,
c2 = c3 = c4 = 1 into (5.3) gives
1
ρn = un 3 + un 2 un+1 + un un+1 2 + un un+1 un+2 .
3
(6.11)
Since Jn = −D−1 A(0) ,
Jn = −(un−1 un 3 + 2un−1 un 2 un+1 + un−1 un un+1 2 + un−1 un un+1 un+2 ).
6.3
The Toda lattice
Example 6.2 (The Toda lattice revisited once more)
Step 1: Determine the lowest shift
From (5.26), we know
E = Dt ρn = 3c1 un 2 vn−1 − c2 un 2 vn−1 + c3 un 2 vn − 3c1 un 2 vn
+c3 vn−1 vn − c2 vn−1 vn + c2 un−1 un vn−1 + c2 vn−1 2
−c3 un un+1 vn − c3 vn 2 .
(6.12)
74
So, the lowest shift is p = 1.
Step 2: Splitting Dt ρn
Splitting the result gives
Dt ρn = A(0) + A(1)
= (c3 un 2 vn − 3c1 un 2 vn − c3 un un+1 vn − c3 vn 2 ) + (3c1 un 2 vn−1
−c2 un 2 vn−1 + c3 vn−1 vn − c2 vn−1 vn + c2 un−1 un vn−1 + c2 vn−1 2 ), (6.13)
where A(0) has terms independent of un−1 and vn−1 and A(1) has terms dependent on
un−1 or vn−1 .
Step 3: Computing D−1 A(0)
Applying a single down-shift to A(0) gives
D−1 A(0) = c3 un−1 2 vn−1 − 3c1 un−1 2 vn−1 − c3 un−1 un vn−1 − c3 vn−1 2 .
(6.14)
Step 4: Computing D−1 A(0) + A(1)
Therefore,
D−1 A(0) + A(1) = 3c1 un 2 vn−1 − c2 un 2 vn−1 + c3 vn−1 vn − c2 vn−1 vn + c2 un−1 un vn−1
+c2 vn−1 2 + c3 un−1 2 vn−1 − 3c1 un−1 2 vn−1 − c3 un−1 un vn−1
−c3 vn−1 2 .
(6.15)
From (6.15), it is evident that all monomials depend on un−1 or vn−1 . Grouping terms
gives
D−1 A(0) + A(1) = (3c1 − c2 )un 2 vn−1 + (c3 − c2 )vn−1 vn + (c2 − c3 )un−1 un vn−1
75
+(c2 − c3 )vn−1 2 + (c3 − 3c1 )un−1 2 vn−1 .
(6.16)
So, D−1 A(0) + A(1) = 0 if 3c1 = c2 = c3 . Again, the algorithm terminates here and
Step 5 is unnecessary. Substituting c1 = 31 , c2 = c3 = 1 back into (5.26) gives
1
ρn = un 3 + un vn−1 + un vn .
3
(6.17)
Jn = un−1 un vn−1 + vn−1 2 .
(6.18)
Therefore, Jn = −D−1 A(0) ,
6.4
The Ablowitz-Ladik lattice
Example 6.3 (The Ablowitz-Ladik lattice revisited once more)
Step 1: Determine the lowest shift
From (5.57), we know
E = Dt ρn = β(−αc1 un vn−2 + αc1 un−1 vn−1 − αc2 un vn−1 + αc1 un+1 vn−1
−c1 un−1 un vn−2 vn−1 + αc2 un−1 vn − αc1 un vn − αc3 un vn
+αc2 un+1 vn − c2 un 2 vn−1 vn + c1 un un+1 vn−1 vn + c2 un−1 un vn 2
+c2 un un+1 vn 2 + αc3 un−1 vn+1 − αc2 un vn+1 + αc3 un+1 vn+1
+c3 un−1 un vn vn+1 − c2 un 2 vn vn+1 − αc3 un vn+2 −c3 un un+1 vn+1 vn+2 ),
with the lowest shift p = 2.
76
Step 2: Splitting Dt ρn
We may split the above result into
Dt ρn = A(0) + A(1)
= β[(αc1 un−1 vn−1 − αc2 un vn−1 + αc1 un+1 vn−1 + αc2 un−1 vn − αc1 un vn
−αc3 un vn + αc2 un+1 vn − c2 un 2 vn−1 vn + c1 un un+1 vn−1 vn + c2 un−1 un vn 2
+c2 un un+1 vn 2 + αc3 un−1 vn+1 − αc2 un vn+1 + αc3 un+1 vn+1
+c3 un−1 un vn vn+1 − c2 un 2 vn vn+1 − αc3 un vn+2 − c3 un un+1 vn+1 vn+2 )
+(−αc1 un vn−2 − c1 un−1 un vn−2 vn−1 )],
(6.19)
where A(0) has terms independent of un−2 and vn−2 , and A(1) has terms dependent
on un−2 or vn−2 .
Step 3: Computing D−1 A(0)
One down-shift on A(0) gives
D−1 A(0) = β[αc1 un−2 vn−2 − αc2 un−1 vn−2 + αc1 un vn−2 + αc2 un−2 vn−1
−αc1 un−1 vn−1 − αc3 un−1 vn−1 + αc2 un vn−1 − c2 un−1 2 vn−2 vn−1
+c1 un−1 un vn−2 vn−1 + c2 un−2 un−1 vn−1 2 + c2 un−1 un vn−1 2
+αc3 un−2 vn − αc2 un−1 vn + αc3 un vn + c3 un−2 un−1 vn−1 vn
−c2 un−1 2 vn−1 vn − αc3 un−1 vn+1 − c3 un−1 un vn vn+1 ].
(6.20)
Step 4: Computing D−1 A(0) + A(1)
Therefore,
D−1 A(0) + A(1) = β[(αc1 un−2 vn−2 − αc2 un−1 vn−2 + αc1 un vn−2 + αc2 un−2 vn−1
77
−αc1 un−1 vn−1 − αc3 un−1 vn−1 + αc2 un vn−1 − c2 un−1 2 vn−2 vn−1
+c1 un−1 un vn−2 vn−1 + c2 un−2 un−1 vn−1 2 + c2 un−1 un vn−1 2
+αc3 un−2 vn − αc2 un−1 vn + αc3 un vn + c3 un−2 un−1 vn−1 vn
−c2 un−1 2 vn−1 vn − αc3 un−1 vn+1 − c3 un−1 un vn vn+1 )
+(−αc1 un vn−2 − c1 un−1 un vn−2 vn−1 )].
(6.21)
It is evident that not all monomials of (6.21) depend on un−2 or vn−2 . So, we must
repeat Step 2 through Step 3 and split (6.21) into A(2) + A(3) , where A(2) has terms
independent of un−2 and vn−2 and A(3) has terms dependent on un−2 or vn−2 .
Step 2 repeated: Splitting D−1 A(0) + A(1)
D−1 A(0) + A(1) = A(2) + A(3)
(6.22)
= β[(−αc1 un−1 vn−1 − αc3 un−1 vn−1 + αc2 un vn−1
+c2 un−1 un vn−1 2 − αc2 un−1 vn + αc3 un vn − c2 un−1 2 vn−1 vn
−αc3 un−1 vn+1 − c3 un−1 un vn vn+1 ) + (αc1 un−2 vn−2
−αc2 un−1 vn−2 + αc1 un vn−2 + αc2 un−2 vn−1
−c2 un−1 2 vn−2 vn−1 + c1 un−1 un vn−2 vn−1 + c2 un−2 un−1 vn−1 2
+αc3 un−2 vn + c3 un−2 un−1 vn−1 vn − αc1 un vn−2
−c1 un−1 un vn−2 vn−1 )].
(6.23)
Step 3 repeated: Computing D−1 A(2)
D−1 A(2) = β[−αc1 un−2 vn−2 − αc3 un−2 vn−2 + αc2 un−1 vn−2 + c2 un−2 un−1 vn−2 2
78
−αc2 un−2 vn−1 + αc3 un−1 vn−1 − c2 un−2 2 vn−2 vn−1 − αc3 un−2 vn
−c3 un−2 un−1 vn−1 vn ].
(6.24)
Step 4 repeated: Computing D−1 A(2) + A(3)
D−1 A(2) + A(3) = β[(−αc1 un−2 vn−2 − αc3 un−2 vn−2 + αc2 un−1 vn−2
+c2 un−2 un−1 vn−2 2 − αc2 un−2 vn−1 + αc3 un−1 vn−1
−c2 un−2 2 vn−2 vn−1 − αc3 un−2 vn − c3 un−2 un−1 vn−1 vn )
+(αc1 un−2 vn−2 − αc2 un−1 vn−2 + αc1 un vn−2 + αc2 un−2 vn−1
−c2 un−1 2 vn−2 vn−1 + c1 un−1 un vn−2 vn−1 + c2 un−2 un−1 vn−1 2
+αc3 un−2 vn + c3 un−2 un−1 vn−1 vn − αc1 un vn−2
−c1 un−1 un vn−2 vn−1 )].
(6.25)
Notice again that not all monomials (6.25) depend on un−2 or vn−2 . Therefore,
we must repeat Step 2 through Step 4.
Step 2 repeated, second time: Splitting D−1 A(2) + A(3)
D−1 A(2) + A(3) = A(4) + A(5) = β[(−αc1 un−2 vn−2 − αc3 un−2 vn−2 + αc2 un−1 vn−2
+c2 un−2 un−1 vn−2 2 − αc2 un−2 vn−1 − c2 un−2 2 vn−2 vn−1
−αc3 un−2 vn − c3 un−2 un−1 vn−1 vn + αc1 un−2 vn−2 − αc2 un−1 vn−2
+αc1 un vn−2 + αc2 un−2 vn−1 − c2 un−1 2 vn−2 vn−1
+c1 un−1 un vn−2 vn−1 + c2 un−2 un−1 vn−1 2 + αc3 un−2 vn
+c3 un−2 un−1 vn−1 vn − αc1 un vn−2 − c1 un−1 un vn−2 vn−1 )
+(αc3 un−1 vn−1 )],
(6.26)
79
where A(4) has terms independent of un−2 and vn−2 , and A(5) has terms dependent
on un−2 or vn−2 .
Step 3 repeated, second time: Computing D−1 A(4)
D−1 A(4) = αc3 un−2 vn−2 .
(6.27)
Step 4 repeated, second time: Computing D−1 A(4) + A(5)
D−1 A(4) + A(5) = β[(αc3 un−2 vn−2 ) + (−αc1 un−2 vn−2 − αc3 un−2 vn−2
+αc2 un−1 vn−2 + c2 un−2 un−1 vn−2 2 − αc2 un−2 vn−1
−c2 un−2 2 vn−2 vn−1 − αc3 un−2 vn − c3 un−2 un−1 vn−1 vn
+αc1 un−2 vn−2 − αc2 un−1 vn−2 + αc1 un vn−2
+αc2 un−2 vn−1 − c2 un−1 2 vn−2 vn−1 + c1 un−1 un vn−2 vn−1
+c2 un−2 un−1 vn−1 2 + αc3 un−2 vn + c3 un−2 un−1 vn−1 vn
−αc1 un vn−2 − c1 un−1 un vn−2 vn−1 )].
(6.28)
By examination, all terms of (6.28) depend on un−2 or vn−2 . Simple algebra on (6.28)
results in
D−1 A(4) + A(5) = β[c2 un−2 vn−1 vn−2 2 − c2 un−1 2 vn−2 vn−1 + c2 un−2 un−1 vn−1 2
−c2 un−2 2 vn−2 vn−1 ].
(6.29)
So, D−1 A(4) + A(5) = 0 if c2 = 0. Therefore, substituting c2 = 0 into (5.56) gives
ρn = c1 un vn−1 + c3 un vn+1 .
(6.30)
80
and
Jn = −D−1 (A(0) + A(2) + A(4) )
= β(−c1 αun vn−2 + c1 αun−1 vn−1 − c1 un−1 un vn−2 vn−1 − c3 αun vn
+c3 un−1 vn+1 + c3 αun−1 un vn vn+1 ).
The density-flux pair (5.67) and (6.31) agree with (5.59) and (5.63).
(6.31)
81
Chapter 7
APPLICATIONS
In this chapter we consider complicated DDEs for which the computation of densities and fluxes would be nearly impossible by hand. All the results were computed
with the software DDEDensityFlux.m.
7.1
Discretization of the combined KdV-mKdV equation
Example 7.1 (Discretization of the combined KdV-mKdV equation)
Consider the DDE described in [39],
1
1 1
(
u
−
u
+
u
−
un−2 )
n+2
n+1
n−1
h3 2
2
α
+ [un+1 2 − un−1 2 + un (un+1 − un−1 ) + un+1 un+2 − un−2 un−1 ]
2h
β
+ [un+1 2 (un+2 + un ) − un−1 2 (un−2 + un )]].
(7.1)
2h
u̇n = −(1 + αh2 un + βh2 un 2 )[
It is an integrable discretization of a combined KdV-mKdV equation,
ut + 6αuux + 6βu2 ux + u3x = 0.
(7.2)
Discretizations of the KdV and mKdV equations are special cases. Set h = 1 (scaling).
We quickly verify that (7.1) is not uniformity in rank. Therefore, we must introduce
82
auxiliary parameters γ and δ with weights. Eq. (7.1) is replaced by
1
1
u˙n = −(γ + αun + βun 2 )[δ( un+2 − un+1 + un−1 − un−2 )
2
2
α
2
2
+ [un+1 − un−1 + un (un+1 − un−1 ) + un+1 un+2 − un−2 un−1 ]
2
β
+ [un+1 2 (un+2 + un ) − un−1 2 (un−2 + un )]].
2
(7.3)
Step 1: Determine the weights of the variables according to both Scales
d
) = 1 leads to
Scale 1: Uniformity in rank and w( dt
1
w(δ) = w(γ) = ,
2
1
w(un ) =
− w(α),
2
1
w(β) = − + 2w(α).
2
d
) = 0, all terms have the same rank if
Scale 0: When w( dt
w(δ) = w(γ) = 0,
w(β) = 2w(un ),
w(un ) = −w(α).
Therefore, in addition to considering Scale 1 and Scale 0, we must also consider
two separate cases for the w(β).
83
Case 1: w(β) = 0
Step 2.1: Construct the form of the density
After replacement from (7.3) and using the equivalence criterion, we find
I = {αun , un 2 , un un+1 , un un+2 },
(7.4)
where all monomials are of rank R= 21 . In Table 7.1, we list the monomials in I in the
first column, the ranks of the monomials according to Scale 0 in the second column,
and the ranks of the monomials according to Scale 1 in the third column.
Term
c1 αun
..
.
c4 un un+2
Scale 0 Scale 1
1
0
2
..
..
.
.
1
0
2
Table 7.1. Ranks of terms in density candidate (R= 12 ) for the combined equation
Considering the two separate scale scenarios does not simplify the calculation.
Step 3.1: Determine the unknown coefficients
Because there are only 3 monomials involved, the software quickly determines
that c1 = 1, c2 = 0, and c3 = β. So,
ρn = αun + βun un+1 .
(7.5)
84
Step 2.2: Construct the form of the density
Similarly, if we list all monomials of rank R= 43 , then
I = {α2 un , γun , δun , αun 2 , un 3 , αun un+1 , un 2 un+1 , un un+1 2 , αun un+2 , un 2 un+2 ,
un un+1 un+2 , un un+2 2 }.
(7.6)
Listing the terms and their respective weights as before gives Table 7.2.
Term
c 1 α 2 un
..
.
c12 un un+2 2
Scale 0 Scale 1
3
0
4
..
..
.
.
3
0
4
Table 7.2. Ranks of terms in density candidate (R= 43 ) for the combined equation
Considering the two separate Scale scenarios clearly does not simplify this calculation.
Therefore, all monomials in I are used to construct the density.
Step 3.2: Determine the unknown coefficients
Now, ρn is the sum of 12 terms with coefficients c1 through c12 . The software
computes the solution:
α2 − βδ(c2 + c3 )
,
α2 β
= c5 = c7 = c8 = c9 = c10 = c11 = c12 = 0,
c1 =
c4
c6 = 1.
Setting δ = γ = 1,
ρn =
α
(αun + βun un+1 ).
β
(7.7)
85
Step 2.3: Construct the form of the density
We find that after replacement from (7.3),
I = {α3 un , αγun , αδun , α2 un 2 , γun 2 , δun 2 , . . . , un un+2 un+3 2 , un un+3 2 }, (7.8)
where all monomials are of rank R=1. We list the monomials in I in the first column
of Table 7.3. We list the ranks of the monomials according to Scale 0 in the second
column, and the ranks of the monomials according to Scale 1 in the third column.
Term
c 1 α 3 un
..
.
c45 un un+3 2
Scale 0 Scale 1
0
1
..
..
.
.
0
1
Table 7.3. Ranks of terms in density candidate (R=1) for the combined equation
Again, considering the two separate scale scenarios does not simplify this calculation.
So, all 45 monomials in I are linearly combined to construct the density.
Step 3.3: Determine the unknown coefficients
We get the following solution:
α2 (−1 + βc9 ) + βδ(1 − β(c2 + c3 ) + c10 + c11 )
,
α2 β 2
α2 − 2βδ(c5 + c6 )
=
,
2α2 β
= c8 = c13 = c16 = c20 = c21 = c23 = c25 = c26 = c28 = c32 = . . . = c45 = 0,
c1 =
c4
c7
c12 = c14 = c22 = 1,
86
β
,
2
δ(−1 + c18 + c19 )
= −
,
α2
δ(c30 + c31 )
= −
.
α2
c15 =
c17
c29
Setting δ = γ = 1 gives
α3
α
α
α2 2
α3
α
u
+
c
u
+
c
u
+
c
u
+
un + α2 c9 un un+1
u
+
n
9 n
10 n
11 n
n
β2
β
β
β
β
2β
1
+c10 un un+1 + c11 un un+1 + αun 2 un+1 + αun un+1 2 + βun 2 un+1 2 + un un+2
2
2
(7.9)
+αun un+1 un+2 + βun un+1 un+2 .
ρn = −
So, the part of the density with coefficient c9 = 1 is
α
ρn = α2 ( un + un un+1 ).
β
(7.10)
The part of the density with coefficient c10 or c11 is
ρn =
α
un + un un+1 ,
β
(7.11)
and the part of the density without a free coefficient is
α3
α
α2 2
1
u
+
u
+
un + αun 2 un+1 + αun un+1 2 + βun 2 un+1 2 + un un+2
n
n
2
β
β
2β
2
2
+αun un+1 un+2 + βun un+1 un+2 .
ρn = −
87
Case 2: w(β) 6= 0
Step 2.4: Construct the form of the density
Let w(α) = 83 . Again, if we replace from (7.3) and use the equivalence criterion,
we find
I = {αun , βun 2 , βun un+1 , βun un+2 , βun un+3 , un 4 , un 3 un+1 , un 2 un+1 2 , un un+1 3 ,
un 3 un+2 , un 2 un+1 un+2 , un un+1 2 un+2 , un 2 un+2 2 , un un+1 un+2 2 , un un+2 3 , un 3 un+3 ,
un 2 un+1 un+3 , un un+1 2 un+3 , un 2 un+2 un+3 , un un+1 un+2 un+3 , un un+2 2 un+3 ,
un 2 un+3 2 , un un+1 un+3 2 , un un+2 un+3 2 , un un+3 3 },
(7.12)
where each monomial is of rank R= 21 . In the table, we list the terms with their ranks
based on both scales.
Term
c1 αun
..
.
Scale 0
0
..
.
Scale 1
c5 βun un+3
c 6 un 4
..
.
0
−4w(α)
..
.
1
2
1
2
c25 un un+3 3
−4w(α)
1
2
1
2
..
.
..
.
Table 7.4. Ranks of terms in density candidate (R= 21 ) for the combined equation
There are two different choices according to Scale 0.
• Choice 1 is a linear combination of the 5 terms of rank 0 .
• Choice 2 is a linear combination of the 20 terms of rank −4w(α).
88
Considering each of these choices separately simplifies the computations somewhat,
since we may now address each case separately.
Step 3.4: Determine the unknown coefficients
There is freedom here in the constant coefficients. For Choice 1, the software
does not produce any non-trivial densities. For Choice 2, c1 = 0, c3 = 1, and c2 =
c4 = c5 = 0. So, setting δ = γ = 1 gives
ρn = αun + βun un+1 .
(7.13)
Step 2.5: Construct the form of the density
For rank R= 85 , we have
I = {un 5 , un 4 un+1 , un 3 un+1 2 , . . . , γun , δun , αun 2 , . . . , β 2 un }.
(7.14)
Therefore, we obtain Table 7.5.
Term
c1 un 5
..
.
c70 un un+4 4
c71 γun
..
.
Scale 0 Scale 1
5
−5w(α)
8
..
..
.
.
5
−5w(α)
8
5
−w(α)
8
..
..
.
.
c92 βun un+4 2
c93 β 2 un
−w(α)
3w(α)
5
8
5
8
Table 7.5. Ranks of terms in density candidate (R= 58 ) for the combined equation
So, there are three choices to consider:
89
• Choice 1 is a linear combination of the 70 terms of rank −5w(α) .
• Choice 2 is a linear combination of the 3 terms of rank −w(α) .
• Choice 3 is a linear combination of the 20 terms of rank 3w(α) .
Considering each of these choices separately simplifies the computations.
Step 3.5: Determine the unknown coefficients
Again, there is freedom in the constant coefficients. Choice 1 and Choice 3 do not
2
result in any non-trivial densities. For Choice 2, c1 = αβδ −c2 , c3 = c4 = c6 = . . . = c22 = 0,
and c5 = 1. After setting δ = γ = 1, we obtain
α
ρn = α( un + un un+1 ).
β
(7.15)
Step 2.6: Construct the form of the density
For rank R= 43
I = {un 6 , un 5 un+1 , un 4 un+1 2 , . . . , γun 2 , δun 2 , αun 3 , . . . ,
αβun , β 2 un 2 , β 2 un un+1 }.
Again, we may list the terms and their respective ranks in Table 7.6.
The table implies the following three different choices:
• Choice 1 is a linear combination of the 252 terms of rank −6w(α) .
• Choice 2 is a linear combination of the 89 terms of rank −2w(α).
• Choice 3 is a linear combination of the 3 terms of rank 2w(α) .
Considering each of these choices separately simplifies the computations.
(7.16)
90
Term
c1 un 6
..
.
c252 un un+5 5
c253 γun 2
..
.
Scale 0 Scale 1
3
−6w(α)
4
..
..
.
.
3
−6w(α)
4
3
−2w(α)
4
..
..
.
.
c341 βun un+5 3
c342 αβun
c343 β 2 un 2
c344 β 2 un un+1
−2w(α)
2w(α)
2w(α)
2w(α)
3
4
3
4
3
4
3
4
Table 7.6. Ranks of terms in density candidate (R= 43 ) for the combined equation
Step 3.6: Determine the unknown coefficients
Once again, there is freedom in the constant coefficients. For Choice 1 there are
252 terms in the density candidate, ρn , and the code cannot complete the computation
in a reasonable amount of time. For Choice 2, setting δ = γ = 1 gives
ρn =
1
α2 2 α2
un + un un+1 − un un+1 + αun 2 un+1 + αun un+1 2 + βun 2 un+1 2
2β
β
2
+un un+2 + αun un+1 un+2 + βun un+1 2 un+2 .
(7.17)
For Choice 3, the code determines that c1 = 1, c2 = c4 = c5 = c6 = c7 = 0, and
c3 = 1. Setting δ = γ = 1 gives
α
ρn = β 2 ( un + un un+1 ).
β
(7.18)
91
7.2
Discretization of the Korteweg-de Vries equation
Example 7.2 (Discretization of the Korteweg-de Vries equation)
We now consider conserved densities for (7.3), when β = 0.
1
1
u̇n = −(γ + αun )[δ( un+2 − un+1 + un−1 − un−2
2
2
α 2
+ [un+1 − u2n−1 + un (un+1 + un−1 ) + un+1 un+2 − un−2 un−1 ]]. (7.19)
2
The above equation is a completely integrable discretization of the KdV equation
ut + 6αuux + uxxx = 0.
Step 1: Determine the weights of the variables according to both Scales
d
Scale 1: When w( dt
) = 1, all terms in (7.19) have the same rank if
w(δ) + w(γ) = 1,
w(α) + w(δ) + w(un ) = 1,
w(α) + w(γ) + w(un ) = 1,
2 w(α) + 2 w(un ) = 1.
Simple algebra determines that w(δ) = w(γ) = 21 , and w(α) =
1
2
− w(un ).
d
Scale 0: Similarly, when w( dt
) = 0, all terms in (7.19) have the same rank if
w(δ) + w(γ) = 0,
w(α) + w(δ) + w(un ) = 0,
w(α) + w(γ) + w(un ) = 0,
92
2 w(α) + 2 w(un ) = 0.
This implies that w(δ) = w(γ) = 0, and w(α) = −w(un ). So, in addition to considering Scale 1 and Scale 0, we must also consider two individual cases for the w(α).
Case 1: w(α) = 0
Step 2.1: Construct the form of the density
As an example, let us compute the form of the density of rank R=1 considering that w(un ) =
1
.
2
For this case, use (7.19) to eliminate u˙n terms, and use the
equivalence criterion to find
I = {γun , δun , un 2 , un un+1 },
(7.20)
where all monomials are of rank R=1. When w(α) = 0 we can list the terms in the
first column of Table 7.7, and their respective ranks according to Scale 0 and Scale 1
in the second and third columns.
Term
c1 γun
..
.
c4 un un+1
Scale 0 Scale 1
0
1
..
..
.
.
0
1
Table 7.7. Ranks of terms in density candidate (R=1) for the KdV discretization
Considering the two separate scale scenarios does not simplify this calculation.
However, because there are only 4 monomials involved, the software would still produce results.
93
Step 3.1: Determine the unknown coefficients
Set δ = γ = 1. There is freedom in the constant coefficients. So, the part of the
density with constant coefficient c1 or c2 is
ρn = u n .
(7.21)
and
ρn = c1 un + c2 un + un 2 + 2un un+1 .
(7.22)
and the part of the density without a free coefficient is
ρn = un 2 + 2un un+1 .
(7.23)
Case 2: w(α) 6= 0
Step 2.2: Construct the form of the density
Choosing w(un ) =
1
4
implies w(α) = 14 . Now,
I = {αγun , αδun , α2 un 2 , α2 un un+1 , α2 un un+2 , α2 un un+3 , α3 un , γun 2 , δun 2 , αun 3 ,
γun un+1 , δun un+1 , αun 2 un+1 , αun un+1 2 , γun un+2 , δun un+2 , αun 2 un+2 ,
αun un+1 un+2 , αun un+2 2 , γun un+3 , δun un+3 , αun 2 un+3 , αun un+1 un+3 ,
αun un+2 un+3 , αun un+3 2 , un 4 , un 3 un+1 , un 2 un+1 2 , un un+1 3 , un 3 un+2 ,
un 2 un+1 un+2 , un un+1 2 un+2 , un 2 un+2 2 , un un+1 un+2 2 , un un+2 3 , un 3 un+3 ,
un 2 un+1 un+3 , un un+1 2 un+3 , un 2 un+2 un+3 , un un+1 un+2 un+3 , un un+2 2 un+3 ,
un 2 un+3 2 , un un+1 un+3 2 , un un+2 un+3 2 , un un+3 3 },
where all monomials are of rank R=1. When w(α) 6= 0 we get Table 7.8.
(7.24)
94
Term
c1 αγun
..
.
Scale 0
0
..
.
Scale 1
1
..
.
c6 α2 un un+3
c 7 α 3 un
c8 γun 2
..
.
0
−2w(un )
2w(un )
..
.
1
1
1
..
.
c25 αun un+3 2
c26 un 4
..
.
2w(un )
4w(un )
..
.
1
1
..
.
c45 un un+3 3
4w(un )
1
Table 7.8. Ranks of terms in density candidate (R=1) for the KdV discretization
Therefore, there are four different choices according to Scale 0.
• Choice 1 is a linear combination of the 6 terms of rank 0.
• Choice 2 is a scalar multiple of the 1 term of rank −2w(un ).
• Choice 3 is a linear combination of the 18 terms of rank 2w(un ).
• Choice 4 is a linear combination of the 20 terms of rank 4w(un ).
Considering each of these choices separately greatly simplifies calculations.
Step 3.2: Determine the unknown coefficients
Again, there is freedom in the constant coefficients. ForChoice 1, ρn has 6 terms.
The computation for δ = γ = 1 leads to
ρn = αun
(7.25)
95
if c1 = 1 and c2 = . . . = c6 = 0 or if c2 = 1 and c1 = c3 = . . . = c6 = 0. There is also
a third solution of the linear system, namely c3 = 1, c4 = 2, and c5 = c6 = 0. Setting
δ = γ = 1 then leads to
ρn = αc1 un + αc2 un + α2 un 2 + 2α2 un un+1 .
(7.26)
The part of the density without a free coefficient is
ρn = α2 un 2 + 2α2 un un+1 .
(7.27)
Choice 2 gives c1 = 0 and ρn = α3 un . Choice 3 gives c3 = 1, c5 = 2c1 +2c2 −c4 , c6 = c7 =
c11 = 3, c9 = 3−c8 , c10 = c12 = c15 = c16 = c17 = c18 = 0, and c14 = −c13 . Set δ = γ = 1.
Then,
ρn = c1 un 2 + c2 un 2 + αun 3 + 2c1 un un+1 + 2c2 un un+1 + 3αun 2 un+1 + 3αun un+1 2
+3un un+2 + 3αun un+1 un+2 .
(7.28)
So, the part of the density with constant coefficient c1 or c2 eventually leads to
ρn = un 2 + 2un un+1 .
(7.29)
The part of the density without a free coefficient is
ρn = αun 3 + 3αun 2 un+1 + 3αun un+1 2 + 3un un+2 + 3αun un+1 un+2 .
Choice 4 does not result in any nonzero densities.
(7.30)
96
7.3
Discretization of the modified Korteweg-de Vries equation
Example 7.3 (Discretization of the modified Korteweg-de Vries equation)
Similarly, we computed conserved densities for (7.3) from [39], where α = 0.
1
1
u̇n = −(γ + βun 2 )[δ( un+2 − un+1 + un−1 − un−2 )
2
2
β 2
+ [un+1 (un+2 + un ) − un−1 2 (un−2 + un )]],
2
(7.31)
(7.31) is a completely integrable discretization of the modified KdV equation
ut + 6βu2 ux + uxxx = 0.
Step 1: Determine the weights of the variables according to both Scales
d
Scale 1: When w( dt
) = 1, all terms in (7.31) have the same rank if
w(δ) + w(γ) = 1,
w(β) + w(δ) + 2w(un ) = 1,
w(β) + w(γ) + 2w(un ) = 1,
2w(β) + 4w(un ) = 1.
Simple algebra determines that w(δ) = w(γ) = 21 , and w(β) =
d
Scale 0: Similarly, when w( dt
) = 0, (7.31) is uniform in rank if
w(δ) + w(γ) = 0,
w(β) + w(δ) + 2w(un ) = 0,
1
2
− 2w(un ).
97
w(β) + w(γ) + 2w(un ) = 0,
2w(β) + 4w(un ) = 0.
This implies that w(δ) = w(γ) = 0, and w(β) = −2w(un ). Therefore, in addition to
considering Scale 1 and Scale 0, we must consider two cases for the w(β). Case 1:
w(β) = 0
Step 2.1: Construct the form of the density
As an example, let us compute the density of rank R= 21 with choice w(un ) = 14 .
So, based on Scale 1, w(β) = 0. For this case,
I = {un 2 , un un+1 }.
(7.32)
All monomials are of rank R= 12 . When w(β) = 0, we form Table 7.9.
Term
c 1 un 2
c2 un un+1
Scale 0 Scale 1
1
0
2
1
0
2
Table 7.9. Ranks of terms in density candidate (R= 12 ) for the mKdV discretization
Considering the two separate scales is irrelevant.
Step 3.1: Determine the unknown coefficients
There are only 2 terms in ρn . The software computes that c1 = 0 and c2 = 1,
and therefore
ρn = un un+1 .
(7.33)
98
Step 2.2: Construct the form of the density
As an example, we compute the density of rank R=1 using w(un ) =
1
4
to make
w(β) = 0. Here,
I = {γun 2 , δun 2 , un 4 , . . . , un un+2 un+3 2 , un un+3 3 }.
(7.34)
All monomials in I are of rank R=1. When w(β) = 0 we form Table 7.10 as before.
Working with two separate scales does not help.
Term
c1 γun 2
..
.
c28 un un+3 3
Scale 0 Scale 1
0
1
..
..
.
.
0
1
Table 7.10. Ranks of terms in density candidate (R=1) for the mKdV discretization
Step 3.2: Determine the unknown coefficients
For the 28 constant in ρn , the software produces c1 = −c2 , c3 = c6 = c8 = c11 = c12 =
c14 = . . . = c16 = c19 = . . . = c28 = 0, c7 = 1, c9 = β2 −c10 , c13 = 2, and c17 = −c18 . Setting
δ = γ = 1 gives
ρn = c4 un un+1 + c5 un un+1 + un 2 un+1 2 +
2un un+2
+ 2un u2n+1 un+2 .
β
So, the part of the density with coefficient c4 or c5 is
ρn = un un+1 .
(7.35)
99
The part of the density without arbitrary coefficients is
ρn = un 2 un+1 2 +
2un un+2
+ 2un un+1 2 un+2 .
β
Case 2: w(β) 6= 0
Step 2.3: Construct the form of the density
For w(β) 6= 0, the user may pick w(un ) =
1
8
making w(β) = 41 . Here,
I = {βun 2 , βun un+1 , βun un+2 , βun un+3 , un 4 , un 3 un+1 , un 2 un+1 2 , un un+1 3 , un 3 un+2 ,
un 2 un+1 un+2 , un un+1 2 un+2 , un 2 un+2 2 , un un+1 un+2 2 , un un+2 3 , un 3 un+3 ,
un 2 un+1 un+3 , un un+1 2 un+3 , un 2 un+2 un+3 , un un+1 un+2 un+3 , un un+2 2 un+3 ,
un 2 un+3 2 , un un+1 un+3 2 , un un+2 un+3 2 , un un+3 3 }.
(7.36)
All monomials in I are of rank R= 21 . When w(β) 6= 0 we list the terms and their
respective ranks in Table 7.11.
Term
c1 βun 2
..
.
Scale 0
0
..
.
Scale 1
1
..
.
c4 , βun un+3
c 5 un 4
..
.
0
4w(un )
..
.
1
1
..
.
c24 un un+3 3
4w(un )
1
Table 7.11. Ranks of terms in density candidate (R= 12 ) for the mKdV discretization
There are two different choices based on Scale 0.
100
• Choice 1 is a linear combination of the 4 terms of rank 0.
• Choice 2 is a linear combination of the 20 terms of rank 4w(un ).
Step 3.3: Determine the unknown coefficients
Choice 1 gives c1 = c3 = c4 = 0 and c2 = 1. After setting δ = γ = 1 we obtain
ρn = βun un+1 .
Choice 2 results in only trivial densities.
(7.37)
101
Chapter 8
CONCLUSION
The two methods discussed in this thesis allow one to find polynomial-type conserved densities and fluxes for nonlinear systems of DDEs. These algorithms rely
heavily on the dilation invariance of the given DDEs. Both methods are illustrated
for the KvM, Toda, and AL lattices. In addition, our key applications are discretizations of the KdV equation, the mKdV equation and a combination of the two.
It is conjectured that nonlinear DDEs with a large (in principle, infinite) number
of conserved densities are completely integrable. Hence, our program can be used to
test the integrability of such DDE systems.
The first algorithm leaves many options to the user. Depending on the posed
problem and desired result, proper selection from these options could simplify calculations. One option is that the user may choose to compute the densities either
using a “shifting” technique or utilizing the discrete Euler operator. Both of these
techniques are implemented.
The second method can be used in two different ways. If the density ρn is
known, one can find the associated flux by splitting Dt ρn into a piece that lies in the
image of the operator ∆ and a piece that does not. Alternatively, sophisticated use
of splitting technique also allows one to simultaneously find densities and fluxes at
increased computational effort. This method is of more theoretical value and was not
implemented.
We offer the scientific community a new symbolic Mathematica package called
102
DDEDensityFlux.m to carry out the tedious calculations of conserved densities
and fluxes for lattice equations. It is effective for systems of DDEs with parameters.
In fact, for such DDEs our program gives conditions on the parameters so that the
system will admit conserved densities of a given rank.
This new package is much more reliable than earlier versions, since it now computes the flux as well as the density. The addition of the flux computation makes the
software completely self-testing. Also, DDEDensityFlux.m now successfully computes conservation laws for much more complex DDEs that were previously unattainable.
In the future, we hope to improve the speed of our algorithm, particularly for
more complicated systems. Furthermore, we hope to extend these algorithms to
calculate non-polynomial conserved densities and fluxes.
103
REFERENCES
[1] M.J. Ablowitz and B.M. Herbst, SIAM J. Appl. Math. 50 (1990) 339.
[2] M.J. Ablowitz and J.F. Ladik, J. Math. Phys. 17 (1976) 1011.
[3] M.J. Ablowitz and J.F. Ladik, Stud. Appl. Math. 55 (1976) 213.
[4] V. E. Adler, S. I. Svinolupov, and R. I. Yamilov, Phys. Lett. A 254 (1999) 24.
[5] I. Yu. Cherdantsev and R. I. Yamilov, Physica D 87 (1995) 140.
[6] I. Cherdantsev and R. Yamilov, in: Symmetries and Integrability of Difference
Equations, CRM Proceedings and Lecture Notes 9, eds.: D. Levi, L. Vinet, and
P. Winternitz (AMS, Providence, Rhode Island, 1996) 51.
[7] P. A. Clarkson and F. W. Nijhoff, eds., Symmetries and Integrability of Difference
Equations, Meeting SIDE II, Canterbury, Kent, 1996, London Mathematical
Society Lecture Notes Series 255 (Cambridge University Press, Cambridge, U.K.,
1999).
[8] B. Deconinck, Phys. Lett. A 223 (1996) 45.
[9] E. Fermi, J. Pasta, and S. Ulam, Collected papers of Enrico Fermi II (University
of Chicago Press, Chicago, Illinois, 1965) 978.
[10] Ü. Göktaş and W. Hereman, condens.m. Available via anonymous FTP from
mines.edu. Login: anonymous. Password: email address or name. Change subdirectory to pub/papers/math cs dept/software/condens. There is a hot link to
the FTP site via the Internet URL: http://www.mines.edu/fs home/whereman/.
104
[11] Ü. Göktaş and W. Hereman, diffdens.m Available via anonymous FTP from
mines.edu. Login: anonymous. Password: email address or name. Change subdirectory to pub/papers/math cs dept/software/condens. There is a hot link to
the FTP site via Internet URL: http://www.mines.edu/fs home/whereman/.
[12] Ü. Göktaş and W. Hereman, InvariantsSymmetries.m:
MathSource (Item:
Available from
0208-932, Applications/Mathematics) via FTP: math-
source.wolfram.com. There is a hot link to the FTP site via Internet URL:
http://www.mathsource.com/cgi-bin/MathSource/Applications/0208-932.
[13] Ü. Göktaş and W. Hereman, J. Symb. Comp. 24 (1997) 591.
[14] Ü. Göktaş and W. Hereman, Physica D 123 (1998) 425.
[15] Ü. Göktaş and W. Hereman, Adv. Comp. Math. 11 (1999) 55.
[16] Ü. Göktaş and W. Hereman, Baltzer Journals (2003).
[17] Ü. Göktaş, W. Hereman, and G. Erdmann, Phys. Lett. A 236 (1997) 30.
[18] M. Hénon, Phys. Rev. B 9 (1974) 1921.
[19] W. Hereman, Ü. Göktaş, M. Colagrosso, and A. Miller, Comp. Phys. Comm.
115 (1998) 428.
[20] M. Hickman and W. Hereman, Computation of Densities and Fluxes of Nonlinear
Differential-Difference Equations, Proc. Roy. Soc. London A (2003), in press.
[21] J. Hietarinta, F. W. Nijhoff, and J. Satsuma, eds., Symmetries and Integrability
of Difference Equations, Special Issue dedicated to the SIDE IV Meeting, Tokyo,
Japan, 2000, J. Phys. A: Math. Gen. 34 (2001) 10337.
105
[22] R. Hirota and J. Satsuma, J. Phys. Soc. Jpn. 40 (1976) 891.
[23] E. G. B. Hohler and K. Olaussen, Int. J. Mod. Phys. A11 (1996) 1831.
[24] M. Ito, A REDUCE program for finding symmetries of nonlinear evolution equations with uniform rank, Comp. Phys. Comm. 42 (1986) 351-357.
[25] M. Kac and P. van Moerbeke, Adv. Math. 16 (1975) 160.
[26] D. Levi and O. Ragnisco, Lett. Nuovo Cimento 22 (1978)691.
[27] D. Levi and O. Ragnisco, eds., SIDE III—Symmetries and Integrability of Difference Equations, Meeting SIDE III, Sabaudia, Italy, 1998, CRM Proceedings and
Lecture Notes 25 (American Mathematical Society, Providence, Rhode Island,
2000).
[28] D. Levi, L. Vinet, and P. Winternitz, eds., Symmetries and Integrability of Difference Equations, Meeting SIDE I, Esterel, Québec, Canada, 1994, CRM Proceedings and Lecture Notes 9 (American Mathematical Society, Providence, Rhode
Island, 1996).
[29] D. Levi and P. Winternitz, J. Math. Phys. 34 (1993) 3713.
[30] D. Levi and R. I. Yamilov, J. Math. Phys. 38 (1997) 6648.
[31] S. Manakov, Sov. Phys. JETP 40 (1975) 269.
[32] J. Moser, Adv. Math. 16 (1975) 197.
[33] A. Ramani, B. Grammaticos, and K. M. Tamizhmani, J. Phys. A: Math. Gen.
25 (1992) L883.
[34] J. Sanders and W. Hereman. Private communication (2002).
106
[35] A. B. Shabat and R. I. Yamilov, Phys. Lett. A 130 (1988) 271.
[36] A. B. Shabat and R. I. Yamilov, Leningrad Math. J. 2 (1991) 377.
[37] A. B. Shabat and R. I. Yamilov, Phys. Lett. A 227 (1997) 15.
[38] S. I. Svinolupov and R. I. Yamilov, Phys. Lett. A 160 (1991) 548.
[39] T.R. Taha, Maths. Comput. in Simul. 35 (1993) 509.
[40] G. Teschl, Jacobi Operators and Completely Integrable Nonlinear Lattices, AMS
Mathematical Surveys and Monographs 72 (American Mathematical Society,
Providence, Rhode Island 2000).
[41] M. Toda, Theory of Nonlinear Lattices, 2nd enlarged edition (Springer Verlag,
Berlin, 1989).
[42] T. Tsuchida, H. Ujino and M. Wadati, J. Math. Phys. 39 (1998) 4785.
[43] T. Tsuchida and M. Wadati, J. Phys. Soc. Jpn. 67 (1998) 1175.
[44] T. Tsuchida, H. Ujino and M. Wadati, J. Phys. A: Math. Gen. 32 (1999) 2239.
[45] V. Volterra, Leçons sur la théorie mathématique de la lutte pour la vie,
(Gauthier-Villars, Paris, France, 1931).
[46] R. I. Yamilov, in: Proc. 8th Int. Workshop on Nonlinear Evolution Equations and
Dynamical Systems, NEEDS’92, Dubna, U.S.S.R., 1992, eds.: V. Makhankov, I.
Puzynin, and O. Pashaev, (World Scientific, Singapore, 1993) 423.
[47] R. I. Yamilov, J. Phys. A: Math. Gen. 27 (1994) 6839.
107
Appendix A
DATA FILES
Samples of existing data files are given in the following pages. One may create
a new data file, though the format must be similar to those shown here. Specifically,
a new data file must include all lines not ‘commented out’ by (* *). We recommend
that existing data files be copied and modified.
Two data files are included here, one for the Kac-van Moerbeke (KvM) lattice,
and the other for the Ablowitz-Ladik (AL) lattice. Softcopy forms of the data files
are available from the same location as the DDEDensityFlux.m code itself.
108
(? Data file for KvM lattice, d volter.m ?)
u[1][n_]’[t]:= u[1][n][t]*(u[1][n+1][t]-u[1][n-1][t]);
noeqs = 1;
name = "Volterra (Kac-Van Moerbeke) Equation";
parameters = {};
weightpars = {};
formrho = 0;
(* FORCING OPTIONS *)
(* If forcesinglescale=True, only scale1 with w(d/dt)=1 is used to
*)
(* construct the form of rho. The density is not split into pieces. *)
(* If forcemultiplescale=True, rho is constructed based on scale1,
*)
(* but split into pieces according to scale0 with w(d/dt) = 0.
*)
(* NOTE: If both are false, the code uses scale0 when appropriate.
*)
forcesinglescale
= False;
forcemultiplescale = False;
(* If forceshiftsinrho=True, the code will generate the form of rho *)
(* based on {u_n, u_{n+1}, ..., u_{n+maximumshift}}.
*)
109
(* To compute the maximumshift there are two options (see below).
*)
(* If forceshiftsinrho=False, no shifts on the dependent variable
*)
(* u_n will be used to generate the form of rho.
*)
forceshiftsinrho = False;
(* If forcemaximumshiftrhsdde=True, then the maximumshift is based
*)
(* on the maximum of the shifts occuring in the rhs of the DDEs.
*)
(* If forcemaximumshiftpowers=True, then maximumshift = p-1 where
*)
(* p = (rhorank/weightu[1]), that is the highest power in rho.
*)
(* Rho will be generated from the list {u_n, u_{n+1},...,u_{n+p-1}}.*)
(* If u_n^p is the highest-power term in rho, then e.g. the term
*)
(* u_n u_{n+1} u_{n+2} ... u_{n+p-1} will occur in the form of rho. *)
(* For example, if p=4 then maximumshift = p-1 =3. The terms in rho *)
(* are based on {u_n, u_{n+1}, u_{n+2}}. So, rho has terms like
*)
(* u_n^4, u_n^2 u_{n+3}^2, ..., u_n u_{n+1} u_{n+2} u_{n+3}.
*)
(* NOTE: forcemaximumshiftrhsdde and forcemaximumshiftpowers must
*)
(* opposite Boolean values.
*)
forcemaximumshiftrhsdde = False;
forcemaximumshiftpowers = False;
(* If forcediscreteeuler=True, then the linear system for the c[i]
*)
(* is computed via the Discrete Variational Derivative (Euler)
*)
110
(* Operator.
If forceshifting=True, then the original shifting
*)
(* algorithm is used to compute the linear system for the c[i] and
*)
(* the fluxes J_n.
*)
forcediscreteeuler = True;
forceshifting
= False;
(* If forcestripparameters=True, then power of the nonzero
*)
(* parameters, are removed in the factored form of the linear
*)
(* system for the c[i].
*)
(* Example: aa, bb^3, aa*bb, ... are removed during simplification, *)
(* but not factors like (aa^2-bb), (aa+bb)^4, etc.
*)
forcestripparameters = True;
(* If forceextrasimplifications=True, then while generating the
*)
(* linear system, equations of type c[i] == 0 are automatically
*)
(* applied to the rest of the system for the c[i].
*)
forceextrasimplifications = True;
(* d_volter.m *)
111
(? Data file for AL lattice, d ablnls.m ?)
u[1][n_]’[t]:= aa*(u[1][n+1][t]-2*u[1][n][t]+u[1][n-1][t]) +
u[1][n][t]*u[2][n][t]*(u[1][n+1][t]+u[1][n-1][t]);
u[2][n_]’[t]:= -aa*(u[2][n+1][t]-2*u[2][n][t]+u[2][n-1][t]) u[1][n][t]*u[2][n][t]*(u[2][n+1][t]+u[2][n-1][t]);
noeqs = 2;
name = "NLS Equation (Ablowitz-Ladik Discretization)";
parameters = {};
weightpars = {aa};
(* weightu[1] = weightu[2]; *)
formrho = 0;
(* FORCING OPTIONS *)
(* If forcesinglescale=True, only scale1 with w(d/dt)=1 is used to
*)
(* construct the form of rho. The density is not split into pieces. *)
(* If forcemultiplescale=True, rho is constructed based on scale1,
*)
(* but split into pieces according to scale0 with w(d/dt) = 0.
*)
(* NOTE: If both are false, the code uses scale0 when appropriate.
*)
112
forcesinglescale
= False;
forcemultiplescale = False;
(* If forceshiftsinrho=True, the code will generate the form of rho *)
(* based on {u_n, u_{n+1}, ..., u_{n+maximumshift}}.
*)
(* To compute the maximumshift there are two options (see below).
*)
(* If forceshiftsinrho=False, no shifts on the dependent variable
*)
(* u_n will be used to generate the form of rho.
*)
forceshiftsinrho = False;
(* If forcemaximumshiftrhsdde=True, then the maximumshift is based
*)
(* on the maximum of the shifts occuring in the rhs of the DDEs.
*)
(* If forcemaximumshiftpowers=True, then maximumshift = p-1 where
*)
(* p = (rhorank/weightu[1]), that is the highest power in rho.
*)
(* Rho will be generated from the list {u_n, u_{n+1},...,u_{n+p-1}}.*)
(* If u_n^p is the highest-power term in rho, then e.g. the term
*)
(* u_n u_{n+1} u_{n+2} ... u_{n+p-1} will occur in the form of rho. *)
(* For example, if p=4 then maximumshift = p-1 =3. The terms in rho *)
(* are based on {u_n, u_{n+1}, u_{n+2}}. So, rho has terms like
*)
(* u_n^4, u_n^2 u_{n+3}^2, ..., u_n u_{n+1} u_{n+2} u_{n+3}.
*)
(* NOTE: forcemaximumshiftrhsdde and forcemaximumshiftpowers must
*)
(* opposite Boolean values.
*)
113
forcemaximumshiftrhsdde = False;
forcemaximumshiftpowers = False;
(* If forcediscreteeuler=True, then the linear system for the c[i]
*)
(* is computed via the Euler Operator.
*)
(* If forceshifting=True, then the original shifting algorithm is
*)
(* used to compute the linear system for the c[i] and the fluxe J_n *)
forcediscreteeuler = True;
forceshifting
= False;
(* If forcestripparameters=True, then power of the nonzero
*)
(* parameters are removed in the factored form of the linear system *)
(* for the c[i].
*)
(* Example: aa, bb^3, aa*bb, ... are removed during simplification, *)
(* but not factors like (aa^2-bb), (aa+bb)^4, etc.
*)
forcestripparameters = True;
(* If forceextrasimplifications=True, then while generating the
*)
(* linear system, equations of type c[i] == 0 are automatically
*)
(* applied to the rest of the system for the c[i].
*)
forceextrasimplifications = True;
(* d_ablnls.m *)
Download