HARVEY MUDD COLLEGE MATHEMATICS CLINIC Shallow Water Waves Midyear Report: Fall 2003 Prepared for Los Alamos National Laboratory Clinic Team: Kevin Andrew Christian Bruun Lindsay Crowl John Goldis Faculty Advisor (HMC): Professor Alfonso Castro Liaison (Los Alamos): Dr. Darryl Holm Consultant (Claremont Graduate University): Professor Ellis Cumberbatch Abstract Los Alamos National Laboratory is currently researching various properties of nonlinear shallow water wave equations. With the help of the clinic’s liaison, Dr. Darryl Holm, the team is analyzing the distinct behavior of the Camassa-Holm equation. This research investigation will include both a theoretical and a numerical analysis of soliton-like shallow water waves called peakons. For the numerical investigation, the team has created a numerical integrator for the third order, nonlinear Camassa-Holm equation. The theoretical results will be compared to numerical simulations that visualize various aspects of wave behavior in both one and two dimensional cases. Table of contents Acknowledgments iii CHAPTER 1 Introduction 1.1 Purpose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 2 CHAPTER 2 Goals and Objectives 2.1 Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 4 CHAPTER 3 Project Background 3.1 Los Alamos National Laboratory 3.2 Physical Background . . . . . . . 3.3 The Camassa-Holm Equation . . 3.4 Previous Research . . . . . . . . . . . . 5 5 5 5 6 . . . . . . 7 7 8 9 10 11 12 CHAPTER 5 Numerical Progress 5.1 Original Simulations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2 Camassa-Holm Simulations . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 14 18 CHAPTER 6 Future Investigations 6.1 Theoretical . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2 Numerical . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 21 21 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CHAPTER 4 Theoretical Progress 4.1 Nonlinear Wave Equations . . . . . . . . . . . . . . . . 4.2 Non-linear wave Comparison to Camassa-Holm . . . . 4.3 Conservation Laws . . . . . . . . . . . . . . . . . . . . 4.4 Verification of Traveling Wave Solutions . . . . . . . . 4.5 Integrable Nonlinear Equations: The Inverse Scattering 4.6 Fourier Series . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Transform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table of contents i 6.3 Visits and Deliverables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.4 Time line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 22 APPENDIX A MATLAB Code for Camassa-Holm A.1 M file for CH execution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.2 Additional functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 23 24 APPENDIX B MATLAB code from scratch B.1 M file for simulator execution . . . . . . . . . . . . . . . . . . . . . . . . . . B.2 Additional functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 26 28 List of figures 3.1 Shallow Water Wave Assumptions . . . . . . . . . . . . . . . . . . . . . . . . 5.1 Notice how the wave at each time step is just a translation of the original wave. 5.2 Here, the points near the boundaries of the domain are more bunched together than those in the middle. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3 Fitting the function y(x) = cos(3π/2) with polynomials of degree 4 and 8. . 5.4 Fitting a non-periodic, non differentiable function with polynomials of degree 4 and 64. The high degree of precision is needed due to the behavior at y(0). 5.5 The picture above shows a single peakon at time t = 0. The initial condition is modeled by u(x,0) = exp(-abs(x)) . . . . . . . . . . . . . . . . . . . . . . 5.6 The picture above shows the peakon at a later time t = t1. The peakon retains its original shape for the entire simulation. . . . . . . . . . . . . . . . ii 6 15 16 16 17 19 19 Acknowledgments The Los Alamos clinic team would like to thank Dr. Darryl Holm for his constant guidance and motivation and Los Alamos National Laboratory for their support of the project. We would also like to thank our advisor, Professor Castro for his enthusiasm and knowledge for our research, as well as Professor Ellis Cumberbatch, Barbara, and Professor Raugh for their assistance throughout the project. iii CHAPTER 1 Introduction The focus of this clinic is to study the Camassa-Holm equation and describe physical phenomena that are not fully explained by the Korteweg-de Vries equation in one dimension. During the course of this investigation, the team seeks to make a meaningful contribution to science and expects to produce a publishable article on the research undertaken over the course of this year. The exploration of water waves has led to many of the innovations in differential equations and modeling theory that we take for granted today. Much of what we know about general wave theory and solving differential equations was originally motivated by water waves, and a good deal of the theory that goes into understanding water waves is directly applicable to other areas of mathematics and the applied sciences. This is due in part to the fact that water waves are easily observed, and thus interactions and wave features can be understood simply by observing water waves. Phenomena seen in nature can then lead to interesting new areas of mathematics and new ways of understanding physical conditions. In particular, the observation that water waves can exhibit solitary traveling waves has lead to new ways of modeling waves and a greater understanding of their underlying mathematics. In 1838, J. Scott Russell noticed that a solitary wave (that is, a single wave) created by a barge being dragged along a canal traveled for several miles without dispersing [3]. The discovery of a coherent solitary wave, a soliton as it later came to be known, fascinated Russell, and he spent years experimenting with solitons and attempting to model them mathematically. While he was able to reproduce the soliton wave phenomenon experimentally, he was unable to devise an equation to model them or to reconcile them with contemporary fluid mechanics. It wasn’t until 1895 that solitons were predicted mathematically. Korteweg and de Vries formulated the equation ut + uux + δ 2 uxxx = 0, which is now known as the Korteweg-de Vries (KdV) equation [3]. They showed that this equation has permanent wave solutions, and in particular, has soliton solutions. In 1960, Gardner and Morikawa re-derived the Korteweg-de Vries equation in the context of hydromagnetic waves, again noting the soliton solutions [1]. However, the Korteweg-de Vries equation still remained somewhat intractable to more general solutions, due to the overall difficulty in solving a nonlinear equation (here, the term uux ) with dispersion terms (δ 2 uxxx ). In 1968, Gardner, Greene, Kruskal, and Miura 1 Purpose 2 derived an entire class of solutions to the KdV equation [1]. They used the fact that the KdV equation implies a set of conserved quantities to derive a transformation and an eigenvalue problem that solves KdV. This method for solving the Korteweg-de Vries equation, now known as the inverse scattering transform (IST) method, was later shown to solve an entire class of nonlinear equations with scattering, many of which had been intractable using other analytic methods. This method could solve not only the KdV equation, but also the nonlinear Schrödinger equation, the sine-Gordon equation, and other such equations, again showing how innovations in water wave theory illuminate mathematics in other areas. Similarly, our investigation of the Camassa-Holm equation (CH) is motivated by yet another phenomenon exhibited by soliton water waves. Under the Korteweg-de Vries equation, solitons exhibit superposition; KdV solitons are interesting in that they remain unchanged even after nonlinear collisions. However, soliton waves have been observed in nature that violate this principle. In particular, some soliton collisions exhibit reconnections, in which wavefronts will interact by recombining into new wavefronts, instead of simply passing through each other. This has been most clearly shown in satellite photos of large-scale solitons, in which two solitons colliding at an angle will produce two new, reconnected waves. While the Korteweg-de Vries equation doesn’t predict these reconnection properties, they are described by the Camassa-Holm equation, developed by Roberto Camassa and Darryl Holm in 1993. Thus, we look at the CamassaHolm equation in order to better understand solitons and these reconnection properties. 1.1 Purpose In this project, we are examining the Camassa-Holm equation to improve our understanding of solitons in general. Our motivation for this research is to determine what conditions lead to reconnection properties in solitons, and to find what factors cause these reconnections. In particular, we plan to model the Camassa-Holm equation numerically, and then find conditions under which we can see reconnections. In addition to this main goal, we plan to investigate a few related areas of study. Our first goal is to create a numerical model of the Camassa-Holm equation in which we can observe stable soliton behavior and model soliton collisions. This will require extensive understanding of numerical modeling, partial differential equations, and the Camassa-Holm equation in particular. We will also need to analyze and minimize errors in calculation in order to view all the phenomena predicted by the equation. The CH equation exhibits peakon solutions, which are not continuously differentiable functions and thus inherently difficult to model numerically without losing some accuracy. While peakons, which have the general form u(x, t) = ce−|x−ct| , are continuous, there is an obvious discontinuity in the derivative. Two derivatives of the peakon solution will generate a delta function at the singularity. The Camassa-Holm equation includes both second and third derivative terms, so solutions of this form will be difficult to model numerically. However, peakons are the dominant traveling wave solution for the CH Purpose 3 equation, and so any numerical model of any use would have to correctly resolve solutions of this form. While attempting to model the Camassa-Holm equation, we also wish to understand how this equation is handled numerically. Our numerical model does these calculations using Fourier transforms, so we would like to see how Fourier expansions are handled by the Camassa-Holm equation, and possibly simplify or improve upon calculations through the analysis of this process. Analysis along these lines may lead to some improvements in our calculation methods, or may give us new ways of modeling the equation. This paper will outline what progress we have made thus far in this project. It will give some mathematical background for the techniques and equations used, describe the simulation methods we are currently using, and explain what we are currently working on and what we plan to do in the next phase of this research. CHAPTER 2 Goals and Objectives The team seeks to better understand shallow water wave behavior such as wave interactions and reconnections on both linear channels and planar surfaces. Specifically, the team will analyze overall multi-wave interactions in one dimension and wave reconnections in two dimensions. The Camassa-Holm equation is relatively new in the scientific world and therefore this analysis can be recognized as significant research. 2.1 Objectives This project is composed of a theoretical analysis and a numerical investigation. • Theoretical: The team seeks to gather and understand existing literature on the properties of solutions to the Camassa-Holm equation, and to develop conjectures based on these properties, and to attempt to prove them. • Numerical: The main objective here is to design computer algorithms for simulations of the Camassa-Holm equation in order to confirm theoretical and experimental results and develop new conjectures. 4 CHAPTER 3 Project Background With the help of Dr. Darryl Holm and Los Alamos National Laboratory, the clinic team is currently investigating the Camassa-Holm equation for shallow water waves. This project requires an understanding of partial differential equations, fluid dynamics, and integration methods. 3.1 Los Alamos National Laboratory Los Alamos National Laboratory, located in the mountains of northern New Mexico, has chosen to sponsor a clinic at Harvey Mudd College. With the help and guidance of the project’s liaison, Dr. Darryl Holm, the team will investigate the dynamics of shallow water waves. Los Alamos is a vast research center that encompasses many research interests. This project is specific to the Mathematical Modeling and Analysis section of LANL’s theoretical division, which specializes in the study of non-linear fluid flow and seeks to utilize partial differential equations and mathematical modeling to capture the influence of small perturbations on large time and space scales. 3.2 Physical Background Solitons are isolated, pulse-like waves that travel long distances with constant velocity and exhibit non-linear collisions pass through one another without altering their wave shape. Solitons were first discovered by John Scott Russell of Scotland in 1834 who observed them passing through a narrow river channel [8]. Solitons as water waves are also observable in the ocean in satellite photographs of, for example, the China Sea. This project focuses on the behavior that shallow water waves exhibit. In particular, the team seeks to understand the wave reconnection phenomena that occurs in shallow water on a planar surface. This reconnection behavior is observable in nature, however it is not yet well understood what conditions lead to reconnections since they are not described by the equation that has been used to model them, the Korteweg-de Vries equation. In 1993 Dr. Darryl Holm and Dr. Robert Camassa developed the CamassaHolm equation, which does exhibit reconnections in numerical simulations [13]. 3.3 The Camassa-Holm Equation The Camassa-Holm equation in one dimension, 5 Previous Research 6 15 u(x,t) = height of surface 10 Inviscid Incompressible Fluid of Uniform Density 5 0 Flat Bottom −5 −5 0 5 10 15 20 25 Figure 3.1. Shallow Water Wave Assumptions ut − uxxt + κux = 2ux uxx + uuxxx − 3uux (3.1) describes the behavior of shallow water waves where u is the height of the water’s surface. In two dimensions the Camassa-Holm equation becomes [15], [13], d (u − 4u) = −(u · ∇ − divu)(u − 4u) − ∇(u · u − u · 4u), dt (3.2) which consists of convection, stretching, and expansion terms. This third order, nonlinear CH equation arises from Euler’s equations for an incompressible, irrotational fluid contained between a fixed flat bottom and a free surface determined by the function u (See Figure 3.1). The incompressibility property simply assumes that mass is conserved and the irrotational property assumes that the fluid is non-viscous. Therefore, both the divergence and the curl of the fluid must be zero and these restrictions provide the basis for water wave equations. In addition, we assume that the density of water is uniform and that the width of the channel is much smaller than its length. Therefore we can track the surface height in one dimension, the x direction. 3.4 Previous Research The two dimensional Camassa-Holm equation, (??) exhibits radial peakon solutions, which have been numerically simulated in a paper by Holm, Putkaradze, and Stechmann [13]. The interaction dynamics of these radial peakons in two dimensions display the linear-like peakon-peakon collisions in the one dimensional model as well as the reconnection behavior the clinic team wishes to emulate on a planar surface. CHAPTER 4 Theoretical Progress During the course of the semester, the clinic team has compiled an extensive collection of literature on nonlinear partial differential equations, the method of characteristics, dispersion relations, Hamiltonian systems, types of PDES (elliptical, hyperbolic, etc.), methods for analytically determining traveling wave solutions, as well as Fourier transforms and spectral methods. In order to analyze the Camassa-Holm equation, the team investigated similar well-known, non-linear wave equations. In parallel with the numerical component of this research, the team has also investigated various issues that arose during numerical simulations, such as the higher mode problem that involves aliasing errors. 4.1 Nonlinear Wave Equations In order to study and characterize a new nonlinear wave equation, one must first understand well-known examples of wave equations. We first analyze the generic wave equation in one dimension, utt = c2 uxx . This equation has traveling wave solutions of the form u = F (x − ct) + G(x + ct) and can be solved numerically using the Fourier transform (see section 4.6). The fundamental equation for fluid flow is Burgers equation, ut + uux = Duxx which involves a relation between wave steeping (uux ) and diffusion (ut = Duxx ) terms. This equation is a combination of transport and diffusion in its linearized form and combination advection and diffusion in its nonlinear form. In addition if the term D is set to zero, shock wave solutions are formed [14]. Shock waves are interesting to examine for the purpose of this project since they develop a discontinuity over time. The classic solitary wave equation of Korteweg and deVries (i.e. the KdV equation), ut − 6uux + uxxx = 0 models the height of the wave surface in shallow water for one dimensional fluid flow. This equation will be compared to the Camassa-Holm equation in more detail since it models water waves under the same conditions as Camassa-Holm. The shallow water wave equations assume that the wavelength is long compared to the water depth. The KdV equation is known for its soliton solutions that behave somewhat like linear waves when two solitons collide. When two solitons, governed by the KdV equation, collide 7 Non-linear wave Comparison to Camassa-Holm 8 they interact nonlinearly, however after a significant amount of time has elapsed since the interaction, the individual waves take on their original shape and speed prior to the interaction and behave as if they were linear. The Benjamin-Bona-Mahoney (BBM) equation, 1 3 ut + co ux + uux + co h20 uxxx = 0 2 6 is a perturbation of the CH equation [2] that is not completely integrable. This equation is analyzed since, like Camassa-Holm, it has third order derivatives and is therefore more difficult to integrate numerically. 4.2 Non-linear wave Comparison to Camassa-Holm Shallow water wave dynamics is a balance between non-linear geodesic flow and linear dispersion. The general form of the Camassa-Holm (CH) equation is ut − uxxt + κux = 2ux uxx + uuxxx − 3uux . In comparison to the previous equations, CH includes Burger’s wave steepening term, uuxx , and therefore its solutions may exhibit a steeping slope under some circumstances. The Camassa-Holm equation is more accurate than both the KdV and the BBM equations since CH includes additional small amplitude (asymptotic) expansion terms than were neglected in the former equations [5]. The team focuses on investigating the non-dispersive CH equation by setting κ = 0. Although the dispersive term is uxx in Burger’s equation, the dispersion term for CH is ux , which would ordinarily represent transport. In the new shallow water wave equation, κ represents a constant that is related to the critical shallow water wave speed and the system’s boundary conditions [4]. Nonlinear equations behave according to their highest derivatives, which for CH is the uuxxx term. The Camassa-Holm equation is a third order, nonlinear equation that exhibits traveling wave solutions of a specific structure, namely the peakon. 4.2.1 Dirac Delta Distribution R∞ The Dirac delta function defined as, ∞ f (x)δxdx = f (0) is not technically a function, but rather a distribution, (i.e. generalized function). It is zero for all points on the real line except for one point where its value is infinite. For this reason, the Dirac delta distribution simplifies convulsion integrals, which appear in transform methods such as the Fourier transform. Generalized functions, such as the Dirac delta distribution and its derivatives are helpful in dealing with functions that are not analytic 1 , such as the traveling wave 1 An analytic function is a function whose derivative is defined at every point in the domain Conservation Laws 9 solution to the CH equation, u(x) = ce−|x−ct| . Since there is a jump in the derivative at x = ct, the Dirac delta distribution is necessary to interpret the second derivative. A function is distinct from a distribution in that a function must be defined at all points, whereas a distribution need only be defined within an interval below a function. In this respect one can avoid the problem of defining a derivative at x = ct when the function is viewed as a distribution. The well understood theory behind these generalized functions, or distributions, allows us to equate them and their derivatives. 4.2.2 Green’s Functions In addition to the Dirac delta distribution, it is also helpful to understand Green’s functions. The Green’s function for a problem is the response or effect of a system that is caused by a point source [23]. It measures the extent to which the values of a function u(x, t) at a specific time affect the output at a different time. It is also known as the impulse response. Green’s functions are specifically helpful when solving inhomogeneous differential equations with boundary conditions and when dealing with convulsion integrals that appear when taking the transform of an equation. 4.3 Conservation Laws Like the KdV equation, Camassa-Holm is a completely integrable partial differential equation [4]. This means that it has an infinite number of conservation laws that arise from its norm. The norm of a function is a metric that conserves a certain quantity and obeys certain laws. The CH equation is governed by H1 norm Z ||φ(x)||H1 = (φ(x))2 + (φx (x))2 . (4.1) This norm represents a kinetic energy metric that is distinct from the L2 norm (also known as the Euclidean norm), Z ||φ(x)||L2 = |φ(x)|2 which governs the Korteweg deVries equation. An interesting thing to note about the Camassa Holm norm is that by taking the variational derivative of the H1 norm yields the Helmholtz operator [13], δ||u||2H1 = (1 + ∇2 )u. δu Verification of Traveling Wave Solutions 4.4 10 Verification of Traveling Wave Solutions The next step is to verify traveling wave peakon solutions to the Camassa-Holm equation that have been derived in previous research (see [4], [10]). First one assumes that CH has traveling wave solutions of the form u(x, t) = f (x − ct). Provided that a solution exists, it will describe a traveling wave moving at the shallow water wave speed, c [2]. In order to further condense the equation, first note that (u2 )x = 2uux (uux )x = ux ux x + u2x (u2x )x = 2ux uxx One can now simplify the steady state CH equation but substituting in the above terms and integrating once with respect to x as follows, ut − uxxt = 2ux uxx + uuxxx − 3uux = ( 12 (u2x )x + (uuxx )x − 23 (u2 )x ) (1 − ∇2 )ut (x − ct) = ( 21 u2x + uuxx − 32 u2 ) By careful observation, note that u(x − ct) = ex−ct is a solution to the problem if (1 − ∇)ut (x − ct) = 0. However, the boundary conditions force u(x) and its derivatives to approach zero at spatial infinity in both directions. Therefore, the traveling wave solution becomes u(x − ct) = e−|x−ct| and (1 − ∇)ut (x − ct) becomes the Dirac delta function, δ(x − ct). This solution exists since it is a bounded function on the real line. Now we check that the Helmholtz operator acting on u(x, t) = e−|x| is in fact the delta function. We solve for the Helmholtz operator on u(x). (1 − ∇2 )u(x − ct) = δ(x − ct) The Fourier transform of this equation is (1 + k 2 )û(k − ct) = 1, therefore 1 1 + k2 and finally we take the inverse transform of û and obtain, û(k − ct) = ce−|x−ct| . This is a real solution for the Camassa-Holm equation. If the water wave is a peakon that travels at speed c, which a proportional to its height. Integrable Nonlinear Equations: The Inverse Scattering Transform 11 In comparison√to soliton solutions for the KdV equation, which have the form u(x, t) = 3csech2 ( 2c (x − ct)), peakons solutions have the form u(x, t) = ce−|x−ct| . Both solutions are classified as pulse disturbances and can be modeled as a periodic wave train in numerical simulations. Solitons travel at velocities proportional to their height and so do peakons. The distinctions between their interactions will be discussed further once the team runs experimental numerical simulations for both equations. 4.5 Integrable Nonlinear Equations: The Inverse Scattering Transform Another technique for deriving solutions to the Camassa-Holm equation, and nonlinear dispersive differential equations in general, is with the inverse scattering transform (IST) method. While there is no general, analytic method for solving nonlinear equations of this form, scattering problems (of a suitable form) can be converted into a linear integral equation via IST, and then solved using standard methods. Consider the Korteweg-de Vries equation K(u) = ut − 6uux + uxxx = 0 (4.2) the setting that originally gave rise to this method. In 1976, Miura conjectured that KdV + ∂F = 0), had an infinite number of conservation laws (that is, equations of the form ∂T ∂t ∂x and after examining a few of these, derived an alternate, yet completely new, form of the KdV equation, the modified Korteweg-de Vries equation (mKdV) [1], given by M (v) = vt − 6v 2 vx + vxxx = 0. (4.3) Miura showed that, for solutions v of (4.3), the transformation u = −(v 2 + vx ) (4.4) where u is a solution of (4.2). This leads to the transformation from the modified Korteweg-de Vries equation to the usual Korteweg-de Vries equation, given by ∂ M (v). (4.5) K(u) = − 2v + ∂x This transformation lead to a number of results about the KdV equation, including a proof of Miura’s conjecture of an infinite number of conservation laws for KdV. To show this, notice that the Korteweg-de Vries equation is Galilean invariant (that is, it is the same in any inertial frame), and so if we take the transformation [1] x0 = x + 6 t, ε2 (4.6) t0 = t u(x, t) = u0 (x0 , t0 ) − (4.7) 1 ε2 (4.8) Fourier Series 12 KdV remains invariant. If we then let v(x, t) = −εw(x0 , t0 ) + 1 ε (4.9) we then have the following equation for mKdV ∂ (3w2 + 2ε2 w3 + wx0 x0 ) = 0. (4.10) ∂x0 R∞ Under the equation (4.10), the quantity −∞ w dx0 is conserved, as we can see from invariance of KdV. Then from Miura’s transformation (4.4), equations (4.9) and (4.10) give the equation [1] u0 = 2w + εwx0 − ε2 w2 . (4.11) wt0 + Equation (4.11) can be solved for w as a function of u0 , giving the equations [1] ε2 u0x0 x0 u0 ε 0 02 2 2 + ··· (4.12) +u w = w0 + εw1 + ε w + · · · = − ux0 + 2 4 4 2 This allows us to compute an infinite number of conserved quantities for u0 , and so there are an infinite number of conservation laws for KdV. In particular, Gardner, Kruskal, and Miura showed that there are an infinite number of nontrivial conservation laws (that is, they aren’t simply derivatives of other conservation laws). The transformation (4.4) also gives us the Inverse Scattering Transform method. If we use the transformation v = ΨΨx , then equation (4.4) gives a simpler differential equation [1] Ψxx + (λ + u)Ψ = 0, (4.13) which implies a linearization of the KdV equation. Assume that there is a solution of the form Ψt = AΨ + BΨx (4.14) with A and B scalar functions in x and t, independent of Ψ. Then if let u satisfy KdV (4.2), and choose A = ux , B = 4λ − 2u, (4.15) the eigenvalues are constant. Solutions of (4.13) then solve the Korteweg-de Vries equation, providing a solvable (though somewhat complicated) method of finding general solutions. Ablowitz, Kaup, Newell, and Segur developed techniques by which this procedure would solve KdV. 4.6 Fourier Series For a function u(x), the Fourier transformed equation is given by [16] Z ∞ (F u) (ξ) = û(ξ) = u(x)eiξx dx. −∞ Fourier Series 13 This gives an equation û(x) in the transformed domain that has some nice properties for working with derivatives. The first derivative of u is given by [16] (F ux ) (ξ) = (−iξ) û(ξ), and, more generally, the k th derivative of u is given by (F ux ) (ξ) = (−iξ)k û(ξ). Differentiation in Fourier transform space is then simply multiplication. This makes it particularly useful for computer calculations, since this can be done algorithmically. However, equations of this form are still somewhat difficult to work with, so it is common to instead use the Fourier series expansion. Since the set of functions {sin(mx), cos(nx)} form an orthogonal set, we can write the function u(x) as a sum of these terms [16] ∞ a0 X + (an cos(nx) + bn sin(nx)) , u(x) = 2 n=0 where the coefficients an and bn are given by the inner product for the orthonormal sine and cosine functions Z 1 π u(x) cos(nx) dx, n = 0, 1, 2, . . . an = π −π Z 1 π bn = u(x) sin(nx) dx, n = 0, 1, 2, . . . π −π Calculating derivatives in this form is exactly analogous to that for the Fourier space transform, and so this provides a simple way for calculating derivatives in the space variable. CHAPTER 5 Numerical Progress The numerical analysis has progressed down two parallel channels. Part of our time and energy has been spent creating code drawn from several readily available sources, and this has led to some early results. We have spent the rest of our energy writing simulations from scratch. While this effort has not yet produced a similar level of results as the other, it should eventually lead to a deeper understanding of the code and equations involved. Therefore, the two different approaches should act as counterparts to one another, and having both will create an error-check for the data we get. 5.1 Original Simulations This section deals with the simulation created (mostly) from scratch. It currently does not give results as robust as the other simulation, but should produce a different view of the problem at hand, and so the two techniques will help balance each other. 5.1.1 Current Results This simulation currently is only verified for ut = Aux , for some constant A. Therefore, only simple traveling waves can be simulated (see Figure 5.1). The traveling waves are simple in that equations of the form ut = Aux take the input wave and translate it as a whole, instead of breaking it up into its component solitons (i.e. every wave is a soliton), to one side or the other. 5.1.2 Flexibility The code for this section is intentionally left very wide open for user-defined options. These options currently include choice of integration and graphing styles, time range and step size, and will eventually include space domain and perhaps some other option not currently relevant. It is also very easy to adjust the governing wave equation, for eventual comparison of Camassa-Holm with other existing wave equations (such as B-B-M, and K-dV). 5.1.3 Integration Methods The integration choices currently are a 4th-order Runge-Kutta scheme, a forward Euler method (used mainly as a cursory check on the wave behavior), and two built-in 14 Original Simulations 15 Figure 5.1. Notice how the wave at each time step is just a translation of the original wave. MATLAB functions – ode45 and ode113. ode45 is based on the 4th-order Runge-Kutta method, and ode113 is based on the Adams-Bashford-Moulton integration method. Both of these increase the stability of the integration (compared to the other methods shown here) by interpolating more points than exist in the data before computing. 5.1.4 Bounded Simulations Another method used is to model the waves not as periodic, but instead bounded. Here we use polynomial interpolation of the data instead of trigonometric (Fourier analysis). This, like Fourier analysis, is an elegant method of interpolation, since it is quite easy to differentiate a polynomial. For this to work, however, we can no longer use linearlyspaced data points, but instead we use Chebyshev points, whose density is greater at the edges of the domain than it is towards the center. This is done by taking a linearlyspaced domain (here, it will just be from -1 to 1) x1 , and then letting x = cos(πx1 ). This is shown in figure 2. In this technique, however, we must specify a degree for the interpolation, the highest degree polynomial present. This varies with the function, as shown in Figure 5.2 (the small circles represent the original data). In Figure 5.1, the cosine curve is quite accurately modeled using a polynomial in- Original Simulations 16 Chebyshev points 1 0.8 0.6 0.4 0.2 0 −0.2 −0.4 −0.6 −0.8 −1 −1 −0.8 −0.6 −0.4 −0.2 0 x 0.2 0.4 0.6 0.8 1 Figure 5.2. Here, the points near the boundaries of the domain are more bunched together than those in the middle. Polynomial fit of degrees 4 (red), 8(magenta) 1 0.5 y 0 −0.5 −1 −1.5 −1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1 x Figure 5.3. Fitting the function y(x) = cos(3π/2) with polynomials of degree 4 and 8. Original Simulations 17 Polynomial fit of degree 4(red), 64(green) 1.2 1 0.8 y 0.6 0.4 0.2 0 −0.2 −1 −0.8 −0.6 −0.4 −0.2 0 x 0.2 0.4 0.6 0.8 1 Figure 5.4. Fitting a non-periodic, non differentiable function with polynomials of degree 4 and 64. The high degree of precision is needed due to the behavior at y(0). terpolation of order 8, whereas the second figure only becomes close to accurate with 64th-order interpolation, mainly due to the derivative jump at x = 0. However, one should notice that now we can accurately interpolate non-periodic data, and easily interpolate non-Gaussian data (such as the peakons for the Camassa-Holm equation), which we cannot do well using Fourier analysis. 5.1.5 Past and Current Obstacles The flexibility that makes this code easy to use (by allowing the user to change the behavior of the simulation) and stable (allowing the user to make these changes without rewriting the code itself) also creates elegance and efficiency problems. Too many choices can create very ugly code that is highly dependent on the current condition of the program, and so very difficult to update and correct, yet too few require the user to edit the code manually, which can also lead to ugly code, and could wreck certain other previously independent sections. Also, currently the integration and graph choices are presented to the user in a menu to ensure that input is handled as expected, but this means that we cannot call this function from another and let it run independently. This does not currently pose a threat, but it does loom on the horizon. The built-in integration methods (ode45, ode113) do a great job of ensuring stability on a very large timescale, but this done is at the cost of time-efficiency when calculating higher-order derivatives. Currently, there is no known solution to this problem, but it should come soon. Camassa-Holm Simulations 18 The bounded simulation is still very much in its baby stages (there is no simulation yet), but shows much promise as another avenue for analysis. There do exist some very real problems with it, however. The user (or program) must know and specify the correct degree of the polynomial for the fit. Too low of an order will create an incorrect interpolation and too high can create problems near the borders, and potential efficiency concerns. 5.2 Camassa-Holm Simulations The purpose of these simulations is to better understand the physical properties of waves governed by the Camassa-Holm equation. Since the equation is non linear and specifically has a nonlinear dispersive term, it becomes difficult to model the equation. All our simulations are done in MATLAB and we will now continue to describe our current approach to modeling the CH equation. The method the team is using to simulate the Camassa-Holm equation in one dimension is a combination of a 4th order Runge-Kutta method and Spectral Analysis. After an initial condition is supplied, a Runge-Kutta time step is executed. During this time step the initial condition is first Fourier transformed, after which the code finds the needed spacial derivatives in Fourier space. We use FFT transforms because our initial condition in the Camassa-Holm equation has a discontinuity in its derivative. Calculating the x derivative in MATLAB for such functions is easier to do in Fourier space. In order to use FFTs, however; one must assume that the initial condition is periodic, otherwise the method will not work. After calculating the derivatives, they are reassembled to form the original equation. The result is inverse Fourier transformed and plotted. With each time step the initial condition gets transformed and with proper parameters a video can be generated of a traveling wave solution. A few important details are missing from the above description. 5.2.1 Isolating the Time Derivative First, in order to isolate the ut term it is necessary to rewrite the Camassa-Holm equation as the Helmholtz operator, 1 − 42 , multiplied by ut . Then, before the inverse Fourier transform is applied, the equation is divided by (1 + k 2 ), which is the Helmholtz operator transformed in Fourier space. 5.2.2 Aliasing It is also important to take a large amount of samples, a value of 2048 is recommended but 1024 will work. If too few samples are used the solution will exhibit aliasing and samples above the Nyquist frequency will get cycled back to a frequency of f s − S where S is the sampling frequency and fs is that sample’s frequency. When a solution exhibits aliasing the aliased frequencies can consider with the original ones and cause significant error in the amplitude of a sample. Camassa-Holm Simulations 19 dt = .002 Single Peakon for Camassa−Holm 1.2 1 u(x,t) 0.8 0.6 0.4 0.2 0 −0.2 0 10 20 30 40 50 60 70 x Figure 5.5. The picture above shows a single peakon at time t = 0. The initial condition is modeled by u(x,0) = exp(-abs(x)) dt = .002 Single Peakon for Camassa−Holm at t = .5 1.2 1 0.8 u(x,t) 0.6 0.4 0.2 0 −0.2 0 10 20 30 40 50 60 70 x Figure 5.6. The picture above shows the peakon at a later time t = t1. The peakon retains its original shape for the entire simulation. Camassa-Holm Simulations 5.2.3 20 Viscosity Using FFTs and IFFTs will always introduce unwanted noise in the solution as some data is always discarded. Since we are running our simulation for a significant number of time steps this noise accumulates in the form of unwanted high frequencies that cause distortion in the solution. To eliminate this problem we introduce a dampening factor in the form of viscosity. The damping term is modeled by the following equation: if |k| < 5 ∗ N/16 0 2(4|k|/N − 1) if 5N/16 < |k| < 3N/8 V (k) = if |k| > 3N/8 where = 0.01 for our simulations. Here is the modified equation with the dampening term. ut − uxxt = 2 ∗ V (k) ∗ ux ∗ uxx + u ∗ uxxx − 3 ∗ u ∗ ux As a side note it is also possible to use Adam’s method in place of Runge-Kutta. Adam’s method has the advantage that it does not keep track of old terms and hence will run more efficiently. It also has no set time step...?explain better?... 5.2.4 Past and Current Obstacles Initially we ran into a lot of problems finding a stable method and even after finding one it took some time to figure out how it worked. We were also unsure as to how MATLAB implemented its version of FFT and IFFT and were getting runtime errors in our simulation because of it. Recently we ran into a problem of aliasing in our solution, which was quickly solved by increasing the number of samples used in the FFT. After the aliasing issue was resolved we started observing high frequencies in our solution which were not supposed to be there. Reading the Fringer-Holm paper [10] gave us the idea to use viscosity to correct for the high frequencies. Currently we are still experiencing some error in the solution and are in the process of debugging the code to come up with an alternative. CHAPTER 6 Future Investigations To achieve its objectives, the clinic team will continue to study the Camassa-Holm and KdV equations for wave motion and interaction. The team will improve upon its design and implement variational integrators in MATLAB and eventually continue onto two dimension shallow water wave simulations. 6.1 Theoretical Next semester, the team will collect relevant literature in order to further develop a deeper understanding of the subject matter. We will then become more familiar with methods for solving non-linear PDEs, such as the inverse scattering transform and the isospetral method. We will further investigate existance and uniqueness of solutions to the Camassa Holm equation and examine how it depends on initial conditions. In addition we may examine concept such as lax-pair represenatives, Hamilitonian structures, invariant manifolds, the Green Naghdi equations (for the derivation of CH), lattice dynamics, or the three wave interaction. The team will focus on the three mode problem in order to analyze aliasing errors that occur at higher modes. In addition, the team will examine the interaction behavior for multi-peakon collisions in one dimension and compare this behavior to that of CamassaHolm. Although it is obvious why peakon solutions are stable for the Camassa-Holm equation, it would be interesting to investigate why peakon solutions arise from continuously differentiable initial conditions. This phenomena is apparent in previous simulations of the Camassa-Holm equation [10] and can be explained by the slope steeping phenomena [5] but is an extremely non-intuitive result. In the future, the team will study why discontinuities in the derivative should develop over time. 6.2 Numerical Currently, we are unsure as to the source of the problem. After reviewing the FringerHolm paper [10] to verify that our general approach was correct the team tried debugging the code, and looked to various sources on the Internet for help. Our next step will be to ask a faculty advisor to look over our code, and hopefully that will resolve our issues. Another option is to try finding literature with examples on using a 4th order RungeKutta method with non-linear partial differential equations. 21 Visits and Deliverables 6.3 22 Visits and Deliverables After getting through some background material the team will make another visit to Los Alamos National Laboratory in the spring to discuss progress with Dr. Holm. Dr. Holm will, if possible, visit Harvey Mudd once again in February. Throughout the year the clinic group will continue to conduct research and report on significant results to Dr. Holm on a weekly basis. During the second semester the team plans to do further analysis and comparison of the KdV and Camassa-Holm equations. Upon completion of the project the team hopes to produce a publishable paper that includes images from MATLAB visualizations and a thorough analysis of the Camassa-Holm equation. Throughout the year the clinic group will continue research and report on significant results and will give a formal presentation in February. 6.4 Time line Sept 20-21 Sept 23rd Sept 24th Oct 3rd Oct 10th Oct 10th Oct 19th Oct 20th Oct 13-31 Nov Nov 16th Dec 5th Dec 12th February February 17th March April 16th April 23rd April 30th May 4th Marathon Weekend Practice Presentation Professor Castro Returns Work Statement Due Final Version of Work Statement Project Budget Submitted Visit Los Alamos to work on presentation technique Visit Los Alamos Labs Work Statement Preparation and Submission Begin Numerical Implementation Dr. Holm visits HMC Midterm Report Draft Midterm Report Submitted Dr. Holm visits HMC Formal Presentation at Harvey Mudd Second visit to LANL (Tentative) Poster Draft with Visualizations Poster and Final Draft Due Final Report/Article Draft Projects Day APPENDIX A MATLAB Code for Camassa-Holm A.1 M file for CH execution L=200; N = 1024; % Domain length % Number of grid points tfin=6.0; dt = 0.002; % Final time % Time step (if run becomes unstable, reduce dt) dx = L/N; xg = (0:dx:L-dx); x = [xg’ ; L]; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Initial conditions and plotting window %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ug = exp(-abs(xg-20)); t = 0; vg = fftshift(fft(ug))/N; % initial time % FFT(initial condition) M = [(-N/2):(-1) 0:(N/2-1)]; k = 2*pi*M/L; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% timestep loop %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% for t = dt:dt:.5 [vg,tj] = fstep(vg,0,dt); % pseudo-spectrol + Runge-Kutta method ug = real(ifft(fftshift(vg))*N); 23 Additional functions 24 figure(1); clf; plot(x,[ug’ ; ug(1)],’b’); pause(0.001) end A.2 Additional functions % Runge-Kutta time step function (rkZn,rktn) = fstep(rkZ,rkt,rkDt) k1 k2 k3 k4 = = = = rkDt*deriv(rkZ,rkt); rkDt*deriv(rkZ+0.5*k1,rkt+0.5*rkDt); rkDt*deriv(rkZ+0.5*k2,rkt+0.5*rkDt); rkDt*deriv(rkZ+ k3,rkt+ rkDt); rktn = rkt + rkDt; rkZn = rkZ + (k1 + 2*k2 + 2*k3 + k4)/6; function rkP = deriv(rkZ,rkt) N = length(rkZ) L=200; M = [(-N/2):(-1) 0:(N/2-1)]; k = 2*pi*M/L; % wavenumbers damp = getdamp(k,N); % get the dampening term fourier space derivatives dx = real(ifft(fftshift($i*k.*rkZ))*N$); dxx = real(ifft(fftshift(($-k.^2).*rkZ*0))*N$); dxxx = real(ifft(fftshift($-i*(k.^3).*rkZ))*N$); fx = ($2*dx.*dxx + rkZ.*dxxx -3*rkZ.*dx$); gx = fft(fftshift(fx))/N; % assemble the CH eqn % fft again to deal Additional functions 25 % with Helmholtz operator hx = real(ifft(fftshift($gx./(1+k.^2)))*N$); % divide by Helmholtz and ifft rkP = fftshift(fft(hx))/N; % function to calculate dampening equation function dfact = getdamp(k,N) for (r=1:length(k)) if (abs(k(r)) < 5*N/16) damp(r) = 0; elseif (abs(k(r)) > 3*N/8) damp(r) = .01; else damp(r) = 2*.01*(4*abs(k(r))/N - 1); end end dfact = damp; APPENDIX B MATLAB code from scratch B.1 M file for simulator execution function u = simulator(u0, tmax, dt) % % % % % % % function result = simulator(u0, xmin, xmax, N2, tmax, dt, is, gs) This function takes initial conditions u0 (column vector), and outputs the action of that through time as governed by the u_t function. Result returns the matrix u. Right now we deal with one time (t) and one space (x) variable. We also assume x to be bounded below by -1 and above by (1 - dx), and that u0 is periodic such that u0(-1) = u0(1), if we knew this value. % Give the user menus of options for [gs, is] = userInput; % Here, we need to determine the proper value for dx, dt from the input % parameters and set some other constants. xmin = -1; xmax = 1; N = length(u0); dx = (xmax - xmin)/N; x = [xmin : dx : xmax-dx]; t = [0 : dt : tmax]; T = length(t); % Global variables. %global UT; % Increments each time we go in u_t, final value should be T. %UT = 0; global tfinal; % tmax. tfinal = tmax; % Calculate future timesteps u = zeros(N, T); w = waitbar(0,’Integration progress’); %Displays progress. 26 M file for simulator execution 27 switch (is) case 1 % 4th-order Runge-Kutta u(:, 1) = u0’; for j = 2:T u(:,j) = rk4(u(:,j-1), dx, t(j-1), dt); end case 2 % ode45 [t, u] = ode45(@u_t, t, u0); case 3 % ode113 [t, u] = ode113(@u_t, t, u0); case 4 % Forward Euler, solitons only due to normalization. for j = 2:T uprime = u_t(t(j-1), u(j-1,:)); % size(uprime) % size(u(j-1,:)) u(j,:) = u(j-1,:) + uprime*dt; % Now we normalize to eliminate the growth of this approximation. u(j,:) = u(j,:)/max(u(j,:)); end end % Close the waitbar. close(w); % Pad the end of the space dimension so the output looks nicer. u(:,N+1) = u(:,1); % Here, we pick a graph style based on ’choice’, the user input, and graph. clf; switch (gs) case 1 % Surface Plot surf([xmin:dx:xmax], t, u’); view([0, 90]); shading interp; xlabel(’x’); ylabel(’t’); axis([-1 1 0 tmax]); case 2 % Waterfall Plot Additional functions 28 waterfall([xmin:dx:xmax], t, u); view([0, 90]); shading interp; xlabel(’x’); ylabel(’t’); axis([-1 1 0 tmax]); case 3 % Movie % First, we find the min, max y values, and fix the graph on these. umin = min(min(u)); umax = min(max(u)); % Here, we get the frames of the movie, then play it. for j = 1:T plot([-1:dx:1], u(:,j)); axis([-1 1 umin 3]); F(j) = getframe; end movie(F); end B.2 B.2.1 Additional functions Time Derivative function f = u_t(t, u) % Takes input time (t), and vector of space data points (u), and returns the % time derivative of u at time t, u_t. global tfinal; % Increment waitbar waitbar(t/tfinal); % if (mod(t,100) == 0) % t % end N = length(u); uhat = fft(u); Additional functions 29 M = [0:(N/2-1) (-N/2):(-1)]’; k = M*pi; u_x = real(ifft(i*k.*uhat)); %u_xx = real(ifft(-(k.^2).*uhat)); %u_xxx = real(ifft(-i*(k.^3).*uhat)); % % % f Define u_t This has sin(x), cos(x) as solitons (f = -u_x: move right, f = u_x: move left) = -u_x; % K-dV: sech^2 solitons. %f = -u.*u_x - u_xxx; B.2.2 Explicit Runge-Kutta Method function y_next = rk4(y, dx, t, dt) % Executes Runge-Kutta 4th order approximation where, % x_next = x + h/6 (f1 + 2f2 + 2f3 + f4). f1 f2 f3 f4 = = = = u_t(t, y); u_t(t + dt/2, y + (dx/2)*f1); u_t(t + dt/2, y + (dx/2)*f2); u_t(t + dt, y + dx*f3); y_next = y + (dx/6)*(f1 + 2*f2 + 2*f3 + f4); B.2.3 User Input function [gs, is] = userInput(); % Gets the different user-controlled data, returns the results. Hopefully % will eventually add a u0 part. Right now, the N (may replace with dt) % term is meaningless. May replace T with dt. % % % % % % x-data xmin = 1; xmax = -1; N = 0; while ((xmin >= xmax) || (N < 1)) Additional functions % % % % % % % % % % % % 30 xmin = input(’xmin? ’); xmax = input(’xmax? ’); N = input(’N? ’); end % t-data tmax = 0; T = 0; while ((tmax <= 0) || (T < 1)) tmax = input(’tmax? ’); T = input(’T? ’); end % graph style gs = 0; while ((gs < 1) || (gs > 3)) gs = input(’\nChoose a graph style\n 1 - Surface Plot\n ... 2 - Waterfall Plot\n 3 - Movie\n’); end % integration style is = 0; while ((is < 1) || (is > 4)) is = input(’\nChoose an integration method\n 1 - 4th-order Runge-Kutta\n ... 2 - ode45(R-K)\n 3 - ode113(A-B-M)\n 4 - Forward Euler\n’); end Bibliography [1] Mark J. Ablowitz and Harvey Segur. Solitons and the inverse scattering transform, volume 4 of SIAM Studies in Applied Mathematics. Society for Industrial and Applied Mathematics (SIAM), Philadelphia, Pa., 1981. [2] Mark S. Alber, Roberto Camassa, Darryl D. Holm, and Jerrold E. Marsden. The geometry of peaked solitons and billiard solutions of a class of integrable PDEs. Lett. Math. Phys., 32(2):137–151, 1994. [3] J. Billingham and A. C. King. Wave motion. Cambridge Texts in Applied Mathematics. Cambridge University Press, Cambridge, 2000. [4] Roberto Camassa. Characteristics and the initial value problem of completely integrable shallow water equation. Discrete and Continuous Dynamical Systems, 3(1):115–139, 2003. [5] Roberto Camassa and Darryl D. Holm. An integrable shallow water equation with peaked solitons. Phys. Rev. Lett., 71(11):1661–1664, 1993. [6] A. J. Chorin and J. E. Marsden. A mathematical introduction to fluid mechanics, volume 4 of Texts in Applied Mathematics. Springer-Verlag, New York, second edition, 1990. [7] Susan Jane Colley. Vector calculus. Prentice Hall Inc., Upper Saddle River, NJ, second edition, 2002. [8] P. G. Drazin. Solitons, volume 85 of London Mathematical Society Lecture Note Series. Cambridge University Press, Cambridge, 1983. [9] M. C. Ferreira, R. A. Kraenkel, and A. I. Zenchuk. Soliton-cuspon interaction for the Camassa-Holm equation. J. Phys. A, 32(49):8665–8670, 1999. [10] Oliver B. Fringer and Darryl D. Holm. Integrable vs. nonintegrable geodesic soliton behavior. Phys. D, 150(3-4):237–263, 2001. [11] Richard Haberman. Elementary applied partial differential equations. Prentice Hall Inc., Englewood Cliffs, NJ, third edition, 1998. With Fourier series and boundary value problems. 31 Bibliography 32 [12] Darryl D. Holm and Peter Lynch. Stepwise precession of the resonant swinging spring. SIAM J. Appl. Dyn. Syst., 1(1):44–64 (electronic), 2002. [13] Darryl D. Holm, Vakhtang Putkaradze, and Samuel N. Stechman. Rotating concentric circular peakons. preprint, 2003. [14] Roger Knobel. An introduction to the mathematical theory of waves, volume 3 of Student Mathematical Library. American Mathematical Society, Providence, RI, 2000. IAS/Park City Mathematical Subseries, 3. [15] H.-P. Kruse, J. Scheurle, and W. Du. A two-dimensional version of the camassa holm equation. pages 120–127, 2001. [16] J. David Logan. Applied partial differential equations. Undergraduate Texts in Mathematics. Springer-Verlag, New York, 1998. [17] James H. McClellan, Ronald W. Schafer, and Mark A. Yoder. DSP first. Prentice Hall Inc., Upper Saddle River, NJ, 1998. A multimedia approach. [18] Yu. A. Melnikov. Green’s functions in applied mechanics, volume 27 of Topics in Engineering. Computational Mechanics Publications, Southampton, 1995. [19] G. F. Roach. Green’s Functions. Cambridge University Press, Cambridge, second edition, 1982. [20] Lloyd N. Trefethen. Spectral methods in MATLAB. Software, Environments, and Tools. Society for Industrial and Applied Mathematics (SIAM), Philadelphia, PA, 2000. [21] Robert Weinstock. Calculus of variations with applications to physics and engineering. McGraw-Hill Book Company Inc., New York-Toronto-London, 1952. [22] G. B. Whitham. Linear and nonlinear waves. Wiley-Interscience [John Wiley & Sons], New York, 1974. Pure and Applied Mathematics. [23] Daniel Zwillinger, Steven G. Krantz, and Kenneth H. Rosen, editors. CRC standard mathematical tables and formulae. CRC Press, Boca Raton, FL, 30th edition, 1996.