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