Content uploaded by Michele Ducceschi
Author content
All content in this area was uploaded by Michele Ducceschi on Oct 21, 2022
Content may be subject to copyright.
Journal of Computational Physics 472 (2023) 111697
Contents lists available at ScienceDirect
Journal of Computational Physics
www.elsevier.com/locate/jcp
Explicit exactly energy-conserving methods for Hamiltonian
systems
Stefan Bilbao a,∗, Michele Ducceschi b, Fabiana Zama c
aAcoustics and Audio Group, University of Edinburgh, 12 Nicolson Square, Edinburgh, EH8 9DF, United Kingdom
bDepartment of Industrial Engineering, University of Bologna, Bologna, Italy
cDepartment of Mathematics, University of Bologna, Bologna, Italy
a r t i c l e i n f o a b s t r a c t
Article history:
Received 29 June 2022
Received in revise d form 12 October 2022
Accepted 12 October 2022
Avail abl e online xxxx
Keywords:
Hamiltonian systems
Geometric numerical integration
Energy-conserving methods
Explicit methods
Finite difference methods
For Hamiltonian systems, simulation algorithms that exactly conserve numerical energy or
pseudo-energy have seen extensive investigation. Most available methods either require
the iterative solution of nonlinear algebraic equations at each time step, or are explicit,
but where the exact conservation property depends on the exact evaluation of an
integral in continuous time. Under further restrictions, namely that the potential energy
contribution to the Hamiltonian is non-negative, newer techniques based on invariant
energy quadratisation allow for exact numerical energy conservation and yield linearly
implicit updates, requiring only the solution of a linear system at each time step. In this
article, it is shown that, for a general class of Hamiltonian systems, and under the non-
negativity condition on potential energy, it is possible to arrive at a fully explicit method
that exactly conserves numerical energy. Furthermore, such methods are unconditionally
stable, and are of comparable computational cost to the very simplest integration methods
(such as Störmer-Verlet). A variant of this scheme leading to a conditionally-stable method
is also presented, and follows from a splitting of the potential energy. Various numerical
results are presented, in the case of the classic test problem of Fermi, Pasta and Ulam
and for nonlinear systems of partial differential equations, including those describing high
amplitude vibration of strings and plates.
©2022 Elsevier Inc. All rights reserved.
1. Introduction
The design of exact energy conserving numerical methods for nonlinear Hamiltonian systems goes back at least as far
as the work of LaBudde and Greenspan, for the single particle subject to a central potential [1], Marciniak [2]for the N-
body problem, Strauss and Vazquez [3]for the nonlinear Klein-Gordon equation, and Greenspan for the nonlinear harmonic
oscillator [4], and was greatly generalized by Simo et al. [5]in their work on energy- and momentum-conserving algorithms.
The concept of energy conservation in time stepping schemes goes back much further in the case of linear systems—see
the discussion and references in [5], particularly with regard to the energy conservation of the Crank-Nicholson method for
linear systems. An exact numerical conservation of a “pseudo-energy” (henceforth simply “energy” or “numerical energy”
in this article) of a numerical scheme for a conservative system may be contrasted with schemes that conserve energy
approximately—see, e.g., early work by Hughes et al. [6]. The same point of view is taken with other geometrical numerical
*Corresponding author.
E-mail address: sbilbao@ed.ac.uk (S. Bilbao).
https://doi.org/10.1016/j.jcp.2022.111697
0021-9991/©2022 Elsevier Inc. All rights reserved.
S. Bilbao, M. Ducceschi and F. Zama Journal of Computational Physics 472 (2023) 111697
integration techniques, such as, e.g., symplectic methods, where energy is conserved approximately, following the result from
Zhong and Marsden [7] that, under some restrictions, exact energy conservation and symplecticity for Hamiltonian systems
cannot be obtained simultaneously [8]. Various studies examine the degree to which energy is conserved for symplectic and
non-symplectic methods [9,10]. In this paper, we focus on exact conservation of numerical energy rather than approximate
conservation, and we will not consider momentum conservation. Part of the reason for the focus here on exact numerical
energy conservation is the possibility of determining conditions for numerical stability as has been pointed out earlier—see
[5] and Remark 8 in [11].
Most exact numerical energy-conserving algorithms presented to date are implicit [3,2,5,12], requiring the solution of
a nonlinear system of algebraic equations at each time step, normally through an iterative method (such as, e.g., Newton-
Raphson). This is obviously a computational bottleneck, and a fully explicit formulation is preferable. Note, however, that for
linear systems, explicit and exact energy-conserving methods are available—see, e.g., [13]. Exact explicit and conservative
integrators have also been designed on a case-by-case basis—normally new ad hoc stability considerations appear in a
problem-dependent way regarding the choice of the time step. See [14]for a treatment of the three-body problem, and [15]
for the Kepler problem.
In a recent article by Marazzato et al. [11], an explicit Hamiltonian integrator is presented that preserves a numerical
energy exactly, for general nonlinear systems. Two features are worth noting: a) the conserved quantity is defined through
a continuous time integration, and thus must itself be approximated, leading effectively to approximate (non-exact) energy
conservation in a discrete time implementation—with fine enough approximation, numerical energy conservation to machine
precision may be achieved; and b) when the energy of the model system is non-negative, as it commonly is in practice,
the numerical energy does not inherit this property, and thus conditions for numerical stability do not immediately follow.
Other exactly conservative methods, also reliant on the exact evaluation of a continuous integration have been proposed
previously [16,17].
In the context of gradient flows for diffusive systems, recent progress has been made in developing energy-stable meth-
ods through a variable transformation representing the energy, generally a nonlinear function of the state, as a quadratic
form—such methods are referred to as invariant energy quadratisation (IEQ) approaches [18,19]. The main result is that it is
possible to arrive at updating equations for a time-stepping method that are linearly implicit—so that the update depends
only on the solution of a linear system, rather than the solution of a system of nonlinear algebraic equations. This allows
for the sidestepping of the many difficulties associated with iterative solvers, and reduced computational cost. Alongside
the more recently introduced scalar auxiliary variable (SAV) approaches [20], such techniques have been applied to a wide
variety of problems [21]. More recently, IEQ/SAV approaches have been applied to Hamiltonian systems, as in the case
of diagonally-implicit Runge Kutta methods [22]. For an interesting overview of the relationship between quadratisation
techniques and linearly implicit schemes, see the recent article by Sato et al. [23].
A linearly implicit method will require the solution of a linear system at each time step, and will most likely constitute
the computational bottleneck in a simulation as a whole. As will be shown here, using IEQ and SAV approaches, it is
possible to arrive at energy-stable (indeed exactly lossless in machine arithmetic) numerical designs that are fully explicit.
The explicit character of the update derives from the availability of a closed form inverse for the linearly implicit system
that arises, and furthermore the ability to solve an N×Nlinear system in O(N)operations, through the Sherman-Morrison
inversion theorem [24]. This property is fully general, and not dependent on the particular form of the Hamiltonian, except
through the additional non-negativity requirement on the potential energy. As a result, computer execution time for exactly
energy conserving methods for Hamiltonian systems is very nearly on par with that of the simplest explicit numerical
schemes, such as, e.g., Störmer-Verlet integration. This design addresses the two points a) and b) above with reference to
the scheme presented in [11].
In Section 2, a restricted class of Hamiltonian systems is introduced. Under the constraint that the potential energy
is non-negative, quadratisation techniques can be used to arrive at a simplified system of three equations in momentum,
position, and a single scalar auxiliary variable derived from the potential energy. A further generalised form is also discussed,
where a quadratic term is extracted or split from the expression for the potential energy before quadratisation, leading to
a distinct starting point for numerical designs. Time stepping methods are introduced in Section 3, including first the
rudimentary Störmer-Verlet method, the energy-conserving method presented in [11], and then an exact energy-conserving
and unconditionally stable method obtained using IES/SAV approaches, and allowing an explicit update. A variation of this
last scheme to the case of a split potential energy is also exactly energy-conserving, and leads to a distinct conditionally-
stable method. In Section 4, three examples are presented: the Fermi-Pasta-Ulam ODE system, and two PDE systems then
reduced, by semi-discretisation, to Hamiltonian ODE systems: the nonlinear vibration of a string, and the high-amplitude
vibration of a thin plate. Various numerical results are presented, illustrating convergence rates, exact numerical energy
conservation to machine precision, and relative computation times. Some concluding remarks appear in Section 5.
Preliminary results have been presented recently at the 2022 European Nonlinear Dynamics Conference [25].
2. Hamiltonian systems
Consider a system of particles, with Ngeneralised coordinates q =[q1, ..., qN]and momenta p =[p1, ..., pN]. Here,
indicates a transposition operation, so pand qare N×1 column vectors. Both are functions of time t≥0, so p =p(t)
and q =q(t). Suppose also that an associated Hamiltonian H(p, q)is defined by
2
S. Bilbao, M. Ducceschi and F. Zama Journal of Computational Physics 472 (2023) 111697
H(p,q)=1
2pM−1p+V(q)(1)
for some constant symmetric positive definite N×Nmatrix Mreferred to as the mass matrix. V(q)is the potential energy
for the system of particles. Hand Vare scalar functions of time t, through their dependence on pand q.
The system dynamics follow from Hamilton’s equations:
˙
q=∇
pH˙
p=−∇
qH,(2)
where dots indicate differentiation with respect to time t, and ∇pand ∇qare gradients with respect to pand q, respectively.
For the particular form of Hamiltonian given in (1), Hamilton’s equations become
˙
q=M−1p˙
p=−∇
qV.(3)
Through time differentiation of the first of (3), and substitution of the second, a second order system of ordinary differential
equations in qresults:
M¨
q=−∇
qV.(4)
Such a second order form serves as the starting point for many numerical methods, including the classic Störmer-Verlet
method. See Section 3.1. In the first order representation (3), initial conditions are required for qand p, so q(0) =q(0)and
p(0) =p(0), for given Nvectors q(0)and p(0). For the second order form (4), one may set ˙
q(0) =M−1p(0).
The defining feature of a Hamiltonian system is that, given initial conditions p(0)and q(0), the energy H(t)is constant
for all t≥0:
˙
H=0→H(t)=H(0)=constant ∀t≥0,(5)
where H(0) =H(p(0), q(0)), evaluated from (1)using initial conditions q(0)and p(0).
2.1. Comments
The system and Hamiltonian in (1)are not the most general possible. A few remarks are offered here:
•The mass matrix Mis assumed constant—a common assumption [5]. In many cases of interest, it is furthermore diag-
onal, but we will consider the more general form here, and indicate cases in which a diagonal form of Mwill have an
impact on computational performance.
•The Hamiltonian in (1)is separable, so that H(p, q) =T(p) +V(q), for kinetic energy Tand potential energy V. In
some cases of interest [8], the mass matrix Mmay be of the form M =M(q), disturbing this splitting, but these cases
will not be considered here.
•Following from the points above, the Hamiltonian is quadratic in p, meaning that the associated dynamical system is
linear in p.
•The individual displacements qiand momenta pi, i =1, ..., N, are assumed scalar here, and represent either displace-
ments/momenta in a signal coordinate direction, or individual components of more general vector displacements/mo-
menta. Both cases will be seen in the numerical examples in Section 4.
•Loss is easily introduced into system (3), rendering the system no longer Hamiltonian but dissipative. For example,
considering linear loss, one may write:
˙
q=M−1p˙
p=−∇
qV−MRp ,(6)
for a positive semi-definite N×Nmatrix R. In this case, the conservation law (5)may be generalized as
˙
H=−pRp ≤0→H(t)≤H(0)∀t≥0,(7)
where His as defined in (1).
2.2. Non-negativity of the potential energy
As a further constraint, assume that
V(q)≥0∀q∈RN.(8)
This constraint is a natural one in many applications, but not all—for example, the gravitational potential used in the
calculations of planetary orbits is not of this form [26]. This further implies, from (1), that
H≥0∀p,q∈RN.(9)
3
S. Bilbao, M. Ducceschi and F. Zama Journal of Computational Physics 472 (2023) 111697
Furthermore, as M >0, from (5), one has the following bound on p(t)in terms of the initial conditions:
p(t)≤2λmax(M)H(0)∀t≥0,(10)
where λmax(M)is the maximal eigenvalue of M, and ·indicates a Euclidean norm. If V(q)is radially unbounded [27], so
that V(q) →+∞as q →+∞, then a further bound follows for q.
The non-negativity property of Vis essential to invariant energy quadratisation methods—indeed, it can be generalized
to the case of Vbounded from below, so that V(q) ≥c, for any constant c[20], but the non-negativity condition (8)above
will be used here for simplicity.
2.3. Potential energy quadratisation
Under the non-negativity condition on V, from (8), one may define
V=1
2ψ2.(11)
Hamilton’s equations become
˙
q=M−1p˙
p=−ψ∇qψ. (12)
Furthermore, using the chain rule,
˙
ψ=(∇qψ)˙
q.(13)
Finally, introducing
g∇qψ=1
√2V∇qV,(14)
a system of three equations results:
˙
q=M−1p˙
p=−ψg˙
ψ=g˙
q.(15)
An auxiliary initial condition ψ(0)may be set as ψ(0) =2V(q(0))in terms of the given initial condition q(0) =q(0).
The key feature of system (15)is that, if gis assumed known at at any given time instant, the resulting equations are
linear in p, qand ψ. Though in the present case, gdoes indeed have a dependence on q, in the numerical setting, gcan
be evaluated directly using previously computed values of the solution, and thus the update becomes a matter of solving a
linear system. This is the essence of the “linearly implicit” property of schemes arising from energy quadratisation. As will
be shown subsequently here, under the appropriate numerical design, the linear system is of a particularly simple form with
a known easily-computed inverse leading, effectively, to an explicit update. Such a property is independent of the particular
form of the potential energy V(q), provided the non-negativity constraint (8)is satisfied.
2.4. Potential energy splitting
In some cases, the expression for the potential energy naturally takes the form
V(q)=1
2qKq +V(q), (16)
where Kis a symmetric positive semi-definite N×Nmatrix, and where V≥0. The first term could represent the stored
energy of the system due to linear mechanisms, and Vthat due to additional nonlinear effects. Now, using
V=1
2ψ2,(17)
one arrives at a system of equations generalizing (15):
˙
q=M−1p˙
p=−Kq −ψg˙
ψ=g˙
q.(18)
Though equivalent to (15), in a numerical setting, such a splitting allows for a larger family of numerical designs, treating
the linear and nonlinear parts of the problem separately. See Section 3.4.
4
S. Bilbao, M. Ducceschi and F. Zama Journal of Computational Physics 472 (2023) 111697
2.5. Potential energy gauge and regularisation
A well-known technique in IEQ/SAV approaches is the introduction of a constant shift of the global energy (see e.g.
[20,28])—Hamilton’s equations (3)are unchanged (i.e. gauge invariant), but some numerical schemes, such as IEQ/SAV-based
approaches are affected [29]. This amounts to the replacement
V→V+(19)
for a suitably chosen shift constant ≥0. Under the non-negativity constraint (8), V+is thus bounded away from
zero, regularizing the calculation of gas defined in (14). The regularization approach applies equally to the case of a split
potential, under the replacement V→V+.
3. Numerical methods
In this section, we assume time discretization using a constant time step k, such that solutions are computed at times
tn=nk, n =0, 1, .... A discrete-time vector unrepresents an approximation to a continuous time vector u(t)at times t=tn.
3.1. Störmer-Verlet integration
The most basic approach to the integration of the Hamiltonian system as defined in Section 2is through direct approxi-
mation of the second order form in (4), using centred differences, as:
qn+1=2qn−qn−1−k2M−1∇qV|q=qn.(20)
This discretisation is referred to as Störmer-Verlet, and was known to Newton—see [30] and the references therein. It is a
fully explicit two-step scheme—in order to advance the solution to time step n +1, a direct evaluation of the gradient of
the potential energy Vat time step nis required. The values of the state qnat n =0 and n =1may be initialised, using the
initial conditions q(0)and p(0), as
q0=q(0)q1=q(0)+kM−1p(0)−k2
2M−1∇qV|q=q(0)(21)
to second order in k, using a Tayl or series approximation.
Störmer-Verlet is second-order accurate in the time step k, time-reversible, and symplectic, but not energy-conserving
except in an approximate sense [30]. It can exhibit numerical instability depending on both the choice of time step and the
size of the initial conditions. Such instabilities will be mentioned in Section 4.
3.2. Explicit approximately energy-conserving method
Consider the following scheme approximating (3), proposed by Marazzato et al. ([11], Eq. (6)):
qn+1=qn+kM−1pn+1
2pn+3
2=pn−1
2−2
(n+1)k
ˆ
nk
∇qV(˜
qn(t))dt .(22)
This is a time interleaved scheme, with pn+1
2and qndefined at alternating multiples of k/2. The first of (22)is a standard
interleaved approximation to the first of (3). The second of (22)relies on a continuous integration of ∇qVover the time
interval t∈[nk, (n +1)k], and over the known free-flight trajectory ˜
qn(t)defined by
˜
qn(t)=qn+(t−nk)M−1pn+1
2.(23)
The scheme (22)may be rewritten as a three-step method in qnalone as
qn+2=qn+1+qn−qn−1−2kM−1
(n+1)k
ˆ
nk
∇qV|q(¯
qn(t))dt (24)
and may be initialised, to second order in k, as
q0=q(0)q1=q(0)+kM−1p(0)−k2
2M−1∇V|q=q(0)q2=q(0)+2kM−1p(0)−2k2M−1∇V|q=q(0)(25)
5
S. Bilbao, M. Ducceschi and F. Zama Journal of Computational Physics 472 (2023) 111697
Other conservative schemes proposed also rely on such a continuous integration [16]. Except for particular functional
forms of the potential energy V(q), this integral is not available in closed form and must be approximated. However, once
the integral is evaluated, the scheme (22)is fully explicit.
The scheme (22) has an associated numerical energy that is exactly conserved [11]:
Hn=1
2pn+1
2M−1pn−1
2+V(qn)=constant .(26)
There are two important points to mention here:
•Scheme (22)is exactly conservative, but depends on a continuous integration over a free-flight trajectory as given in
(23)in order to achieve this property. Thus the exact conservation property is approached in the limit of increasing
accuracy in the approximation of the continuous integration. It is also important to point out here that a fine-grained
approximation of the continuous integration will require multiple evaluations of the gradient ∇qVwhich, depending on
the functional form of V, represents an additional cost that grows with the desired accuracy of the approximation.
•When V≥0, the numerical energy (26)does not inherit the non-negativity property of the model system, and thus
cannot be used in order to bound solution growth, as pointed out in Remark 8 of [11].
Under the additional non-negativity constraint (8)on V, it is possible to demonstrate a method that conserves a pseudo-
energy that does not depend on a continuous integration, and that furthermore inherits the non-negativity property of the
Hamiltonian of the model system, allowing for useful bounds on solution size. Furthermore, through the exploitation of
matrix structure, it will be shown that such a method is fully explicit. Additionally, only one function evaluation ∇qVis
required per time step.
3.3. Explicit exactly energy-conserving method
Returning now to the form (15)of Hamilton’s equations obtained under quadratisation of the potential energy, and the
introduction of the new variable ψas in (11), consider the following scheme, written in terms of the interleaved time series
pn+1
2and qn, and the scalar time series ψn+1
2:
qn+1=qn+kM−1pn+1
2(27a)
pn+1
2=pn−1
2−k
2gnψn+1
2+ψn−1
2(27b)
ψn+1
2=ψn−1
2+1
2gnqn+1−qn−1.(27c)
Here, gnis defined as
gn=∇
qψ|q=qn=1
√2V(qn)∇qV|q=qn.(28)
All difference approximations are centred, and the scheme as a whole is thus reversible and second-order accurate.
The system (27)may be manipulated into an explicit update form in the following way. Beginning from (27a), one may
write:
qn+1(27a)
=2qn−qn−1+kM−1pn+1
2−pn−1
2(29)
(27b)
=2qn−qn−1−k2
2M−1gnψn+1
2+ψn−1
2
(27c)
=2qn−qn−1−k2M−1gnψn−1
2−k2
4M−1gn(gn)qn+1−qn−1.
Finally, the update has the form
Anqn+1=bn,(30)
where
An=I+αn(βn)bn=2qn−2kαnψn−1
2−I−αn(βn)qn−1.(31)
Here, Iis the N×Nidentity matrix, and the vectors αnand βnare defined in terms of gnby αn=k
2M−1gnand βn=k
2gn.
Thus, given qn, qn−1and ψn−1
2, both Anand bnmay be explicitly constructed. Notice that the matrix Anis positive definite
by construction, due to the positive definiteness of M, and thus the update (30)always has a unique solution. Once the
6
S. Bilbao, M. Ducceschi and F. Zama Journal of Computational Physics 472 (2023) 111697
update in (30) has been performed, ψn+1
2may be computed from (27c) explicitly, using qn−1, qn+1and ψn−1
2. Scheme
(30)requires initial values for q0and q1, which may be set in the same way as for Störmer-Verlet, as in (21), and also ψ
1
2
which may be set to second order in kin terms of the initial displacement q(0)and momentum p(0)as
ψ
1
2=2V(q(0))+k
22V(q(0))∇qV|q=q(0)M−1p(0)(32)
+k2
8p(0)M−1∇q
1
√2V∇qV|q=q(0)M−1p(0)−k2
8√2V∇qVM−1∇qV|q=q(0).
Though the solution of (30) apparently requires an N×Nlinear system solution, in fact, the inverse is available in closed
form, and allows for an explicit solution in O(N)operations. Anis a rank-1 perturbation of the identity, and thus Sherman
Morrison inversion [24] yields:
An−1=I−αn(βn)
1+(βn)αn.(33)
Computational cost is thus on par with the other methods presented here. Notice in particular, though, that the solution of a
linear system involving M−1is required in order to compute αn, performed once per time step. This requirement of a linear
system solution is common to all the methods in this section; the computational cost of performing this operation, which
may indeed be the bottleneck, is not considered here. In many cases, though, Mis diagonal, or even a simple multiple of
the identity, and thus its inversion is trivial.
Exact conservation of a numerical energy follows directly from scheme (27). Left-multiplying (27b)by
1
2pn+1
2+
pn−1
2
M−1gives:
1
2pn+1
2+pn−1
2
M−1pn+1
2−pn−1
2+k
4pn+1
2+pn−1
2
M−1gnψn+1
2+ψn−1
2(27b)
=0 (34)
1
2pn+1
2+pn−1
2
M−1pn+1
2−pn−1
2+1
4qn+1−qn−1gnψn+1
2+ψn−1
2(27a)
=0
1
2pn+1
2+pn−1
2
M−1pn+1
2−pn−1
2+1
2ψn+1
2−ψn−1
2ψn+1
2+ψn−1
2(27c)
=0.
This may be identified as
Hn+1
2=Hn−1
2=constant ,(35)
where the numerical energy Hn+1
2is
Hn+1
2=1
2pn+1
2
M−1pn+1
2+1
2ψn+1
22
≥0.(36)
It is worth comparing this expression, for which non-negativity is ensured, with the expression (26)for the scheme in
Section 3.2. In this case, the kinetic energy term is exact, whereas the potential energy term is approximate but non-
negative. In (26), the potential energy term can be recovered exactly in the limit of increasing quadrature accuracy, but the
kinetic energy term is approximate and also unsigned. In the scheme (27)presented here, the momentum pn+1
2may be
bounded in terms of the energy H, for all time steps n, as
pn+1
2≤2λmax(M)H,(37)
which is identical to the bound (10)for the model system. The scheme (27)is thus unconditionally numerically stable.
A known issue here is that the numerical energy may not correspond exactly to the energy for the physical system. This
issue has been approached recently by various authors [31,32]; but here, we are interested in the non-negativity property
of the numerical conserved energy, and its utility as a means of ensuring numerically stable behaviour.
3.4. Split potential form
Consider now the split form of the potential energy V, as described in Section 2.4, where a positive semi-definite
quadratic form has been separated from Vto leave a residual energy contribution V≥0, from which an auxiliary variable
7
S. Bilbao, M. Ducceschi and F. Zama Journal of Computational Physics 472 (2023) 111697
ψmay be defined as in (17). Consider the following scheme, now modified with respect to (27)through the addition of a
linear term in (38b)below:
qn+1=qn+kM−1pn+1
2(38a)
pn+1
2=pn−1
2−kKqn−k
2gnψn+1
2+ψn−1
2(38b)
ψn+1
2=ψn−1
2+1
2gnqn+1−qn−1,(38c)
where now,
gn=∇
qψ|q=qn=1
√2V(qn)∇qV|q=qn.(39)
An explicit update follows as in the case of the non-split form in (30), with Anas given in (31), but with bnnow defined as
bn=2I−k2M−1Kqn−2kαnψn−1
2−I−αn(βn)qn−1.(40)
An expression for a conserved numerical energy follows as before, now taking the form:
Hn+1
2=1
2pn+1
2
M−1pn+1
2+1
2(qn+1)Kqn+1
2ψn+1
22
=constant .(41)
Because the second term is of indefinite sign, the numerical energy is not necessarily non-negative. Because it is a quadratic
form, however, it may be bounded, using (38a), as:
1
2(qn+1)Kqn≥−1
8(qn+1−qn)K(qn+1−qn)=−k2
8pn+1
2
M−1KM−1pn+1
2.(42)
It then follows that
Hn+1
2≥1
2pn+1
2M−1−k2
4M−1KM−1pn+1
2.(43)
Given that M >0, M−1may be factored into unique upper and lower triangular factors as M−1=M−T
2M−1
2, a condition for
non-negativity of His
k≤2
λmax M−1
2KM−T
2.(44)
The scheme is now conditionally stable, with the stability condition (44) corresponding to that for a linear system when
V=0.
3.5. Remarks
•Linear Conditions: One of the interesting features of the non-split form (27)is that, even if the potential Vis quadratic
in q, implying a linear system, the scheme is not linear. If, however, the split form (38)is used, then under linear
conditions, V=0, and scheme (38)reduces exactly to Störmer-Verlet (20). Note that under linear conditions, Störmer-
Verlet does indeed possess an exactly conserved numerical energy, as given in (41)with ψn+1
2=0.
•Generalized Splitting: The non-split form (27) and the split form (38)may be combined to yield a large family of
conservative schemes in an obvious way. If
V(q)=1
2qKq +Vnonlinear(q), (45)
where Vnonlinear ≥0 and consists of higher order terms in q, then any splitting of the form
V(q)=1
2qK0q+V(q)V(q)=Vnonlinear +1
2qKq,(46)
with K =K0+K, K0≥0, K≥0will yield a conservative form. The resulting numerical scheme, with V=1
2ψ2will
inherit conservation of energy, which will be non-negative under a condition analogous to (44), but depending on K0.
8
S. Bilbao, M. Ducceschi and F. Zama Journal of Computational Physics 472 (2023) 111697
•Generalized Update for qn:Consider again the non-split scheme (27), which may be rewritten as
qn+1=qn+kM−1pn+1
2(47a)
pn+1
2=pn−1
2−k
2gnψn+1
2+ψn−1
2(47b)
ψn+1
2=ψn−1
2+k
2gnM−1pn+1
2+pn−1
2.(47c)
In this form, exact energy conservation follows from (47b) and (47c)only—it is independent of the values of gn, which
are derived solely from qn. Further opportunities for generalization are thus available—(47a) could be replaced by any
consistent update for qn+1, and the exact numerical energy conservation property remains undisturbed.
•Varia bl e Time Steps: Though the case of variable time steps will not be discussed here in detail (and was indeed inves-
tigated in [11]), an exact energy-conserving scheme follows immediately from the form given in (47)above. Consider
time instants tn, and tn+1/2, for integer n, where tn<tn+1/2<tn+1. From these, one may define two sequences of time
steps: kn=tn+1/2−tn−1/2and kn+1/2=tn+1−tn. Supposing that qnis a time series defined for t=tn, and similarly
pn+1
2and ψn+1
2are defined for t=tn+1
2, then a scheme follows as:
qn+1=qn+kn+1
2M−1pn+1
2(48a)
pn+1
2=pn−1
2−kn
2gnψn+1
2+ψn−1
2(48b)
ψn+1
2=ψn−1
2+kn
2gnM−1pn+1
2+pn−1
2.(48c)
It is direct to show that, regardless of the choices of tnand tn+1
2, the scheme (48) conserves the energy (36)exactly.
Thus such a generalisation is unconditionally stable, under the same reasoning as in the case of constant time steps.
•Regularisation: Regularisation through a potential energy shift, as described in Section 2.5, impacts on the calculation
of gin (28) and (39), through a replacement V→V+or V→V+, respectively.
•Loss: Following from the final comment in Section 2.1, the scheme presented here extends easily to include loss, as per
the extended system definition in (6). For the non-split form (27), (27b)can be adjusted as
pn+1
2=pn−1
2−k
2gnψn+1
2+ψn−1
2−k
2MR pn+1
2+pn−1
2(49)
The numerical energy conservation law (41)now becomes, using the same expression for total energy Hn+1
2,
Hn+1
2−Hn−1
2=−k
4pn+1
2+pn−1
2
Rpn+1
2+pn−1
2≤0→Hn+1
2≤Hn−1
2.(50)
From an implementation standpoint, the ability to make use of a fast inversion technique (Sherman-Morrison) is unaf-
fected by the addition of loss.
4. Examples
In this section, various Hamiltonian systems are simulated using schemes (27) and (38), beginning with the Fermi-Pasta-
Ulam ODE problem in Section 4.1, and then progressing to more complex ODE systems derived as semi-discretisations to
PDE systems. These include the coupled transverse-longitudinal vibration of a string at high amplitudes, in Section 4.2, and
the high amplitude vibration of a thin plate in Section 4.3.
In all cases, a useful measure of the exact energy conservation property is the relative energy deviation error,
Relative error =Hn+1
2−H1
2
H1
2
.(51)
In double precision floating point arithmetic, it is normally on the order of machine precision, or approximately 10−16 .
Depending on the state size of the system in question, however, larger deviations are possible.
9
S. Bilbao, M. Ducceschi and F. Zama Journal of Computational Physics 472 (2023) 111697
4.1. Fermi-Pasta-Ulam problem
As a simple example, consider the classic system of a linear arrangement masses connected by linear and nonlinear
springs, as proposed originally by Fermi, Pasta and Ulam [33], and later adapted as a test problem by various authors
[34,11], the form of which is followed here.
Consider a system of N=2Mmasses in a linear arrangement, which longitudinal displacements qiand momenta pi,
i =1, ..., 2M. The system Hamiltonian is defined by
H=1
2
2M
i=1
p2
i+Vwhere V=ω2
4
M
i=1
(q2i−q2i−1)2+
M
i=0
(q2i+1−q2i)4,(52)
where, in the expression above, q0=q2M+1=0. Thus each mass is connected, in an alternating arrangement, to a linear
spring, and a cubic nonlinear spring.
Vis clearly non-negative here, and thus, after consolidation of the displacements qiand piinto vectors pand qof size
N×1, the scheme as presented in (27) follows immediately, with M =IN, the N×Nidentity matrix, and with Vas given
in (52)above. This scheme is explicit, exactly conservative, and unconditionally stable.
A split form (16)of the Hamiltonian also follows, using
K=ω2
2IM⊗1−1
−11
V=
M
i=0
(q2i+1−q2i)4≥0,(53)
where here, ⊗indicates a Kronecker product. An exactly energy conserving method follows, as in (38), and is stable under
the condition (44), which reduces in this case to
k≤2
ω.(54)
4.1.1. Numerical results
We use the same settings as in [11], and choose ω=50, and M=3. Simulations are run here with a time step of
k =10−3s; the reference solution is computed using Störmer-Verlet, with a time step of k =2−20 10−6s. For initial con-
ditions, we set p(0)=0, and q(0)=[0, 0, 0, α, 0, 0], for different values of α, with numerical initialisation for the various
schemes given in the relevant sections. See Fig. 1, illustrating a comparison between time histories using the exactly conser-
vative schemes (27) and (38)with Störmer-Verlet (20), and the Hamiltonian scheme (22), using simple midpoint quadrature
rule (replicating the results in [11]). In all cases, the onset of errors is slightly faster for (27) and (22) than for the other
schemes, indicating a higher error (see also Fig. 3).
For the schemes (27) and (38), numerical energy, as defined by (36) and (41) respectively, is conserved to machine
precision. See Fig. 2, illustrating the relative deviation in energy, as defined in (51), for scheme (27)for the Fermi-Pasta-
Ulam system, under the conditions as described above, and for α=100. It is easily seen that the relative error is on the
order of machine roundoff error in double-precision floating point, or approximately 10−16. Furthermore, it is possible to
directly observe the quantisation of the relative energy to the lowest bits in the machine number representation.
As a basic test of convergence, consider the L2error defined, over a simulation duration n =0, ..., Nf, by
Error =
Nf
n=0
kqn−qref(t=nk)2,(55)
where qref are computed using Störmer-Verlet with a time step of k =2−20 10−6s. The error appears in Fig. 3, for the
exact energy conserving method in (27), the split potential method in (38), Störmer-Verlet and the Hamiltonian scheme
(22), over a range of time steps. In this case, the total simulation duration is 1 s, and three different values of the initial
condition amplitude αare chosen: α=10, 50, 100. No regularisation was employed in this case (see Section 2.5). In general,
the errors for Störmer-Verlet and the split scheme (38)track each other quite closely, with the non-split method (27), and
scheme (22)performing somewhat worse, and increasingly so at higher amplitudes of the initial condition. Second order
accuracy is easily observed in all cases. Stability for Störmer-Verlet and scheme (22)is dependent on the size of the initial
condition; the range of time steps over which Störmer-Verlet and (22)are unstable is indicated as a grey region in the
figure. Note that scheme (22)employs midpoint quadrature—it could well be that the accuracy and stability range improve
using better approximations to the continuous integration.
4.2. Nonlinear string vibration
As a second example, consider the motion of a taut string. For sufficiently large displacements, the linear wave equation
must be augmented by appropriate nonlinear terms to account for the amplitude-dependent physical phenomena observed
10
S. Bilbao, M. Ducceschi and F. Zama Journal of Computational Physics 472 (2023) 111697
Fig. 1. Time histories of q1, under the initial condition q4=α, and under different values of αas indicated. Results for schemes (27), (38)(20), and (22)
using midpoint quadrature are plotted against a reference solution. (For interpretation of the colours in the figures, the reader is referred to the web version
of this article.)
Fig. 2. Relative variation in numerical energy, as defined by (51), for scheme (27) for the Fermi-Pasta-Ulam system.
during motion. One may obtain a geometrically exact model by considering large strains, and applying Hooke’s law [35].
This model is written compactly as
ρA∂2
tu=∂x∂V
∂ζ ,ρA∂2
tv=∂x∂V
∂η.(56)
Here, u =u(x, t) :D ×R+
0→Rrepresents the transverse displacement, for a spatial domain D =[0, L], where Lis the
length of the unstretched string. Similarly, v =v(x, t)is the longitudinal displacement. In (56), ∂tand ∂xrepresent partial
differentiation with respect to time tand spatial coordinate x. Furthermore, we define ζ=∂xu, η=∂xv. The function
V=V(ζ, η) :R2→R+
0is a non-negative potential density, which may be given in two equivalent forms as
V(ζ, η)=⎧
⎪
⎪
⎪
⎨
⎪
⎪
⎪
⎩
EA
2ζ2+η2−(EA−T0)(1+η)2+ζ2−1−η,(a)
T0
2ζ2+η2+EA−T0
2(1+η)2+ζ2−12
.(b)
(57)
11
S. Bilbao, M. Ducceschi and F. Zama Journal of Computational Physics 472 (2023) 111697
Fig. 3. Error, as defined in (55), as a function of time step kfor the explicit Hamiltonian scheme (27), the split potential form (38), Störmer-Verl et (20), and
the Hamiltonian scheme (22)using a midpoint quadrature approximation, for the Fermi-Pasta-Ulam problem, where q(0)=[0, 0, 0, α, 0, 0], and for different
values of αas indicated. (For interpretation of the colours in the figures, the reader is referred to the web version of this article.)
Here, the various constants that appear are: ρ, the volume density in kg·m−3; E, Young’s modulus, in kg·s−2·m−1; A, the
area of the string cross section in m2; and T0, the applied tension in kg·m·s−2. It is easy to show that (57a) is the same as
(57b), and that V≥0 ∀ (ζ, η). In (57b), one may easily split Vinto a quadratic part, plus a non-negative nonlinear term,
provided that EA >T0(a condition that is generally satisfied, for instance by all strings of interest in musical acoustics):
ultimately, this allows for numerical solution using a split potential form as described in Section 3.4. Both forms have been
used in previous works: (57a) in e.g. [36,11]; (57b) in [37]. System (56)is Hamiltonian, with the total energy defined by
H=ˆ
D
ρA
2(∂tu)2+(∂tv)2+Vdx.(58)
Energy conservation holds under a suitable set of boundary conditions. Here, conditions of fixed type are considered, such
that u =v =0at x ={0, L}.
4.2.1. Semi-discrete form
The domain Dmay be divided into segments of length h, the grid spacing. Let Mbe the total number of segments,
yielding M−1grid points, not including the end points, where the solution is fixed to zero. The continuous functions u(x, t),
v(x, t)may then be approximated by grid functions ul(t), vl(t), at the grid point xl=lh, l =1, ..., M−1. Approximations to
∂xmay be given as difference operators, expressed here in terms of their action on a grid function ul(t):
D+ul=1
hul+1−ul,D−ul=1
hul−ul−1.(59)
From these, one may also define the second difference operator as D2=D+D−. Furthermore, let ζl=D−ul, ηl=D−vl.
A semi-discrete form for (56)is then obtained as
12
S. Bilbao, M. Ducceschi and F. Zama Journal of Computational Physics 472 (2023) 111697
ρA¨
ul=D+∂Vl
∂ζl,ρA¨
vl=D+∂Vl
∂ηl,(60)
where VlV(ζl, ηl). It is convenient to write system (60) compactly using the consolidated state vector q =[u, v]. In
this form, the difference operators are represented by matrices, such that D−becomes the M×(M−1)matrix D−given in
terms of its action on e.g. uas
D−u=1
h([u,0]−[0,u]). (61)
Then, define D+=−D
−, and D2=D+D−. In vector form, (60) becomes
ρA¨
q=1
hD+∇ζV
D+∇ηV,(62)
where ζ=D−u, η=D−v. This system conserves the semi-discrete energy of the form (1), with
M=ρAhI2M−2,V=h
M
l=1
Vl.(63)
Here I2M−2is the (2M−2) ×(2M−2)identity matrix. A proof is obtained immediately by noting that
˙
V=˙
ζ∇ζV+˙
η∇ηV=−˙
uD+∇ζV−˙
vD+∇ηV=−˙
qD+∇ζV
D+∇ηV.(64)
Thus, left-multiplying (62)by h˙
qyields (63). A split potential form is also available, via (57b). In this case,
K=−T0hD20
0D
2,V=h(EA−T0)
2
M
l=1(1+ηl)2+ζ2
l−12
(65)
4.2.2. Numerical methods
System (62)may be integrated in time in a number of ways. First, introduce the discrete time vector qn, approximating
q(t)at the time tn=kn. Furthermore, let Vn=V(ζn, ηn). An explicit time stepping scheme is obtained by application of
the Störmer-Verlet algorithm:
qn+1=2qn+1−qn−1+k2
ρAh D+∇ζnVn
D+∇ηnVn.(66)
While simple, this scheme does not conserve a positive discrete energy, and instabilities may occur at large displacements.
A stable scheme may be obtained by an energy-conserving discretisation of the gradient [38,39]:
qn+1=2qn+1−qn−1+k2
ρAD+gn
ζ
D+gn
η(67)
where the discrete gradients are defined as
(gn
ζ)l=V(ζn+1
l,ηn
l)−V(ζn−1
l,ηn
l)
ζn+1
l−ζn−1
l
,(gn
η)l=V(ζn
l,ηn+1
l)−V(ζn
l,ηn−1
l)
ηn+1
l−ηn−1
l
,(68)
with l =1, .., M. This scheme leads to discrete energy conservation, and unconditional stability, but it is fully implicit, and
will generally require the use of iterative root finding routines such as Newton-Raphson [39].
Finally, scheme (27)results from Hamiltonian (1)with definitions (63). The split-potential form (38)is also available, via
(65). In the latter case, a stability condition arises as per (44), such that
k≤ρA/T0h.(69)
This is the standard Courant-Friedrichs-Lewy stability condition for the one-dimensional linear wave equation [40].
13
S. Bilbao, M. Ducceschi and F. Zama Journal of Computational Physics 472 (2023) 111697
Fig. 4. Snapshots of the geometrically exac t nonlinear string, computed using scheme (38), with split potential form as per (65). Here, k =2.6 ·10−7, and
the grid spacing is chosen as h =1.05√E/ρk. The string’s initial normalised amplitude αis as indicated.
Fig. 5. Transverse displacement u(in green) for a string initialised with α=300, at x =0.5L. In black is the referen ce solution, computed using scheme
(66)with a time step k =1.04 ·10−7. In green are the wavefor ms computed using (38), and with time steps as indicated. The grid spacing is chosen as
h =1.05√E/ρk. (For interpretation of the colours in the figures, the reader is referred to the web version of this article.)
4.2.3. Numerical results
As a first example, let the string be initialised in its first linear mode of vibration in the transverse direction, that is
u(x,0)=α√Asin(πx/L), v(x,0)=0,(70)
and let the initial velocity be zero for both transverse and longitudinal motion. The amplitude parameter αis nondimen-
sional. The string parameters are taken from [41], for the C3 piano string, and are: ρ=7850 kg m−3; A =8.87 ·10−7
m2; L =1.259 m; E=2.02 ·1011 kg·s−2·m−1; T0=759 kg·m·s−2. Fig. 4shows snapshots of the computed solution using
scheme (38), and under various initial amplitudes α. In this case, a regularisation of the potential energy Vis employed
(see Section 2.5), with a shift of =108. Typical amplitude-dependent phenomena are visible: the frequency of vibration
increases with the initial amplitude, and the initial shape deforms progressively. In Fig. 5, the output waveform of scheme
(38)are checked against a reference solution obtained using the Störmer-Verlet algorithm (66), for the large input amplitude
α=300, indicating that the output of the two schemes converges to a common solution.
The relative energy error, as defined in (51), is shown in Fig. 6, showing conservation to near machine accuracy. The
larger range of variation here, compared with the case of the Fermi-Pasta-Ulam system is a result of the much larger state
size and the resulting accumulation of errors. Notice in particular that here, in contrast to the case of the Fermi-Pasta-Ulam
system, even though the energy variation is extremely small, there is now a clear correlation with the numerical solution.
Such an effect is highly dependent on finite wordlength effects in double precision floating point, including the precise
order of operations in the final update, and within the expression used to calculate the relative error (51), and is not well
understood.
Fig. 7presents the compute times for schemes (66), (67) and (38). The fully implicit, conservative scheme (67)is the
slowest, requiring a few iterations of the Newton-Raphson routine per time step. The proposed scheme (38) has compute
times of the same order of magnitude as the fully explicit Störmer-Verlet algorithm, and a few orders of magnitude smaller
than the fully implicit scheme. All simulations were run in Matlab, using a 2016 MacBook Pro with a 2.9 GHz Quad-Core
Intel Core i7 chip. Notice that for Störmer-Verlet and the explicit Hamiltonian scheme, compute time scales with 1/k2in the
limit of small k, as expected in this case, as the grid spacing hhas been chosen to scale directly with kas h =1.05√E/ρk.
14
S. Bilbao, M. Ducceschi and F. Zama Journal of Computational Physics 472 (2023) 111697
Fig. 6. Energy variati on of scheme (38)for the geometrically exact nonlinear string, using the split potential form as per (65). Here, the energy error is as
per (51). Here, the time step is k =2.4 ·10−7, and the grid spacing is chosen as h =1.05√E/ρk. The string is initialised with using α=300.
Fig. 7. Computation times, in s, for the geometrically exact nonlinear string, using the fully implicit scheme (67) (black), Störmer-Verlet (66)(blue) and the
proposed scheme (38) (green). The grid spacing for a given time step is chosen as h =1.05√E/ρk. For the fully implicit scheme, Newton-Raphson is run
with a toleran ce of 10−13, and the maximum number of iterations is limited to 20. (For interpretation of the colours in the figure, the reader is referred to
the web version of this article.)
In the limit of large k, computational cost reaches a plateau, due to the small problem size in this case (i.e., the number of
degrees of freedom becomes so small that computational cost can no longer be attributed to a single dominating factor).
4.3. Nonlinear plate vibration: the Föppl-von Kármán system
As a final example, consider the problem of the transverse vibration of a thin plate at high amplitudes. A commonly
used model is the so-called dynamic analogue of the Föppl-von Kármán equations (see, e.g., [42–44]), that have been used
extensively recently in studies of wave turbulence [45–47]. Time-stepping methods have been developed [48], including a
linearly-implicit energy-conserving method [49].
Though the dynamic Föppl-von Kármán equations can be written directly in Hamiltonian form, they are most commonly
presented as the following pair of coupled partial differential equations:
ρξ∂2
tq=−Qq+L(q,F)2
EξF=−L(q,q). (71)
Here, q(x, y, t)and F(x, y, t)are the transverse displacement of the plate and Airy stress function respectively; both are
functions of spatial coordinates (x, y) ∈D ⊂R2, and time t≥0. In this simple example, the spatial domain Dwill be taken
to be the square of side length Lm, so that D =[0, L]2. ∂tand represent partial differentiation with respect to time t
15
S. Bilbao, M. Ducceschi and F. Zama Journal of Computational Physics 472 (2023) 111697
and the 2D Laplacian operator, respectively. is thus the biharmonic operator. For simplicity, boundary conditions are
assumed to be of simply supported type over the boundary ∂Dof D, so that
q=q=0F=F=0over∂D.(72)
The various constants that appear in (71)are: ρ, the material density, in kg·m−3; ξ, the plate thickness, in m; E, Young’s
modulus, in kg·s−2·m−1; and the flexural rigidity Q=Eξ3/12(1 −ν2), where νis Poisson’s ratio for the plate material. L
is a bilinear operator, defined in terms of its action on two functions f(x, y)and g(x, y)as
L(f,g)=∂2
xf∂2
yg+∂2
yf∂2
xg−2∂x∂yf∂x∂yg,(73)
where ∂xand ∂yrepresent partial differentiation with respect to xand y, respectively. Notice that only the first of (71)is
dynamic; the pair of equations (71) could be rewritten as a single equation in displacement qalone, and would constitute
a second order in time cubic nonlinear PDE.
System (71)is Hamiltonian, with the total energy defined by
H=¨
D
ρξ
2(∂tq)2+Q
2(q)2+1
2Eξ(F)2dσ.(74)
This particular form of the energy holds under fixed edge boundary conditions (such as simply supported (72)), and must be
modified under other types of conditions, such as free-edge. Notice that the final two terms under the integral above, which
correspond to the potential energy, separate into a quadratic form in q, representing stored energy due to linear effects, and
a quadratic form in F, representing additional nonlinear effects; both terms are individually non-negative, signalling that in
numerical design, a splitting of the form described in Section 2.4 is available.
4.3.1. Semi-discrete form
For the square region D, of side length L, one may start by defining grid locations xl=lh, ym=mh, where l, m =
1, ..., M−1, for some integer Msuch that M=L/h, where his a grid spacing. The semi-discrete grid functions ql,m(t)and
Fl,m(t)thus represent approximations to q(x, y, t)and F(x, y, t)at x =xland y =ym, respectively.
Approximations to the spatial derivative operators ∂xand ∂ymay be written, in terms of their action on a grid function
ul,m(t)(such as ql,mor Fl,mas defined above), as
Dx±ul,m=∓1
hul,m−ul±1,mDy±ul,m=∓1
hul,m−ul,m±1.(75)
Under simply supported conditions, when grid points outside the range l, m =1, ..., M−1are referred to in the definitions
above, such values are assumed to be zero. These are the most basic forward and backward approximations to derivatives,
but are sufficient for the present purposes—more elaborate approximations (such as those of spectral type [50]) are available.
From the basic operations defined in (75), centred approximations to the Laplacian and biharmonic operator
follow as
D=Dx+Dx−+Dy+Dy−D =DD.(76)
It is important to note that this particular construction of the biharmonic approximation D, through a product of Lapla-
cian approximations Dunder fixed conditions ensures that the simply supported conditions (72)are satisfied.
A semi-discrete approximation to (71)then follows as
ρξ¨
ql,m=−QD
ql,m+(q,F)=02
EξD Fl,m=−(q,q). (77)
The operator (·, ·)approximates L(·, ·), as defined in (73). One useful centred approximation, operating on two grid func-
tions fl,mand gl,mis [49]:
( f,g)=Dx+Dx−fD
y+Dy−g+Dy+Dy−fD
x+Dx−g(78)
−1
2Dx+Dy+fD
x+Dy+g−1
2Dx+Dy−fD
x+Dy−g−1
2Dx−Dy+fD
x−Dy+g−1
2Dx−Dy−fD
x−Dy−g.
It is useful to represent the semi-discrete ODE system (77)in vector form, using (M−1)2×1vectors qand F. In this
representation, the operators Dx+and Dy+become (M−1)2×M(M−1)matrices Dx+and Dy+, and Dx−=−D
x+and
Dy−=−D
y+. The operators Dand D become (M−1)2×(M−1)2matrices Dand D respectively. One arrives at
the form
ρξ¨
q=−QDq+(q,F)=02
EξDF=−(q,q). (79)
16
S. Bilbao, M. Ducceschi and F. Zama Journal of Computational Physics 472 (2023) 111697
This second order in time ODE system serves as the starting point for methods such as Störmer-Verlet and other linearly-
implicit energy-conserving methods, as described below.
By introducing the momentum variable p =M˙
q, the first order system (3)equivalent to (79)results from a Hamiltonian
of the form of (1), with N=(M−1)2, and where
M=ρξh2I(M−1)2V=Qh
2
2Dq2+h2
2EξDF2.(80)
Here, I(M−1)2is the (M−1)2×(M−1)2identity matrix. A natural splitting of the potential energy Vas in (16) follows,
with
K=Qh
2D V=h2
2EξDF2.(81)
4.3.2. Numerical methods
Beginning from the second order system (79), one may introduce the discrete time vectors qnand Fn, representing
approximations to qand Fat t=nk, for integer n, and where kis the time step in s. Störmer-Verlet integration results
immediately in:
qn+1=2I(M−1)2−Qk
2
ρξDqn−qn−1+k2
ρξ(qn,Fn)2
EξDFn=−(qn,qn). (82)
The first of these updates is explicit, but relies on Fn, which must be obtained from the second equation through the
solution of a linear system involving the biharmonic operator D .
The Störmer-Verlet scheme above is not conservative, and is prone to numerical instability. A slight variant, however,
leads to a scheme with exact energy conservation:
qn+1=2I(M−1)2−Qk
2
ρξDqn−qn−1+k2
2ρξ(qn,Fn+1+Fn−1)1
EξD Fn+1+Fn=−(qn+1,qn).
(83)
Due to the bilinearity of the operator , this scheme is linearly implicit—at each time step, qn+1and Fn+1must be solved
simultaneously, using a linear system constructed anew at each time step; Störmer-Verlet, in contrast, requires only the
solution of a linear system in D, which is of a known form. Thus it may be expected that scheme (83), while energy-
conserving and provably numerically stable [49], is significantly slower to execute than the Störmer-Verlet scheme (82).
Finally, from the Hamiltonian form given in (3), with Vand Mas given in (80), as well as the splitting of the potential
energy as in (81), a time-interleaved scheme of the form (38)results. This scheme possesses a non-negative exactly con-
served numerical energy under the condition (44) which, in this case, reduces to a lower bound on the grid spacing hin
terms of the time step k:
h≥hmin =2√k(D/ρξ)
1
4.(84)
The scheme, like Störmer-Verlet, relies on a linear system solution involving the biharmonic operator D, but is otherwise
explicit.
4.3.3. Numerical examples
As an example, consider initialisation of the Föppl-von Kármán system (71)through its lowest linear mode shape:
q(x,y,0)=αξsin(πx/L)sin(πy/L)∂
tq|x,y,t=0=0,(85)
where the dimensionless parameter αcontrols the maximum amplitude of the initial condition relative to the plate thick-
ness ξ. Furthermore, the plate is assumed to be made of steel with E=2 ×1011 Pa, ρ=7850 kg·m−3, and ν=0.3, and to
be of thickness ξ=2mm and side length L =0.5m.
Using the scheme (38), with the grid spacing and time step chosen according to (84), typical amplitude-dependent be-
haviour is observed. See Fig. 8. At a low initial condition amplitude of α=0.01, behaviour is essentially linear. At amplitudes
near the plate thickness at α=2, the period of oscillation decreases, and spontaneous mode generation is observed, and for
large amplitudes, such as α=10, turbulent behaviour is observed. Under such stringent high-amplitude conditions (α=10),
scheme (38) remains stable, and results converge to those of the reference solution, computed using Störmer-Verlet with a
time step of k =2.5 ×10−6s. No regularisation (see Section 2.5) is used in this case. See Fig. 9. Under these conditions,
Störmer-Verlet is unstable for k >2 ×10−5s.
The simulation of the Föppl-von Kármán system is computationally intensive. Most interesting in this case is a com-
parison of computation times between Störmer-Verlet (82), the linearly-implicit energy-conserving method (83), and the
17
S. Bilbao, M. Ducceschi and F. Zama Journal of Computational Physics 472 (2023) 111697
Fig. 8. Snapshots of the time evolution of a Föppl-von Kármán plate, at times as indicated, and for different initial condition amplitudes α=0.01, α=2
and α=10. Results are computed using scheme (38), with a time step of k =5 ×10−6.
Fig. 9. The output waveform qo(t)drawn from a plate vibrating at high amplitude, with α=10. The reference solution, generated using Störmer-Verlet
with k =2.5 ×10−6s is shown in black; results are shown for scheme (38), in green, at different time steps k, as indicated. (For interpretation of the
colours in the figures, the reader is referred to the web version of this article.)
Fig. 10. Computation times, in s, for the Föppl-von Kármán plate, for a 1 s simulation duration, using the linearly implicit exact energy conserving method
(83), the explicit exact energy conserving method (38), and Störmer-Verlet (82). (For interpretation of the colours in the figure, the reader is referred to the
web version of this article.)
explicit energy-conserving scheme (38). Unavoidable in all cases is some form of linear system solution; for (82) and (38),
this will involve the biharmonic operator, which is constant over the course of a simulation, and thus amenable to factori-
sation techniques (e.g. Cholesky) to decrease solution times. For the linearly-implicit exact energy conserving method (83),
however, this is not the case—the linear system to be solved must be constructed anew at each time step. This is reflected
in timings, as shown in Fig. 10, for simulations of 1 second for different choices of time step k. Computation was performed
18
S. Bilbao, M. Ducceschi and F. Zama Journal of Computational Physics 472 (2023) 111697
Fig. 11. Relative numerical energy variation, as defined in (51), for scheme (38)for the Föppl-von Kármán plate, with a high initial condition of the form of
(85), with α=10. The time step is k =10−5s.
in Matlab on a Lenovo P50 with an Intel Xeon E3 v5. As can be seen, computation time for the explicit scheme (38)is far
lower than for scheme (83), and very nearly on par with Störmer-Verlet.
Finally, see Fig. 11, illustrating the relative energy variation for scheme (38)for the Föppl-von Kármán plate; as in the
case of nonlinear string vibration, the energy variation is of the order of 10−15, with some correlation with the numerical
solution visible—see Fig. 6for comparison.
5. Concluding remarks
The design of exactly energy-conserving methods for Hamiltonian systems has progressed from fully implicit designs
through, more recently, to explicit methods for which exact energy conservation can be attained through an approximation
to a continuous integral of the potential energy, or, more importantly, to linearly implicit designs based on invariant energy
quadratisation. The main novelty in this paper is to call attention to structure within such linearly implicit designs—structure
that can be exploited in order arrive at fully explicit methods. These exactly conservative methods are of roughly the same
computational cost as the most efficient non-conservative explicit methods—with the additional feature of a clear means of
ensuring numerical stability, either unconditionally, or, if a splitting of the potential energy is employed, under well-defined
conditions on the time step that are independent of the initial conditions. Accuracy is of second order, and is plainly evident
in the centred (but interleaved) discretisation approach, and borne out by simulation results (see Section 4.1). It is not clear
whether it is possible to extend this framework to obtain higher order accuracy—on the other hand, there is some flexibility
to explore more accurate approximation to at least part of the problem, with the explicit energy-conserving framework
presented here. See the remark “Generalized Update for qn” in Section 3.5. In the more general context of SAV schemes,
higher-order accurate schemes have been proposed recently [51].
These methods are not completely general, and require, additionally, a condition of non-negativity on the potential
energy, as per invariant energy quadratisation approaches. More generally, given that the dynamics of a system are inde-
pendent of shifts in the potential energy by a constant (i.e., a gauge), a more general condition is that the potential energy
is bounded from below. The useful technique of splitting of the potential energy introduced here is a further restriction. But
the restriction (8)mentioned above to non-negative expressions for potential energy V(or bounded from below) is slightly
more strict than necessary. More general is a restriction to expressions V(q)that are single-signed for all q—and even more
generally, bounded either from above or below. An important example here is the N-body problem, under a gravitational
potential, for which V(q) ≤0. In this case, one may set, instead of (11), V=−1
2ψ2, and the main development follows
as above, with this sign change, and an explicit exactly energy conserving method follows as before. In this case, however,
global bounds on solution size are not available, as the total energy itself is no longer necessarily non-negative. See the
comments in [26] regarding general dynamic stability for Hamiltonian systems.
Only briefly alluded to here, in Section 3.5, is the extension to the case of variable time steps—useful in modelling
systems with slow/fast dynamics, as discussed in [11]. The behaviour of such schemes remains unexplored. Another open
question is the need for regularization, as introduced in Section 2.5. In two of the three cases presented here, the Fermi-
Pasta-Ulam problem, and the Föppl-von Kármán system, good results were obtained without the use of such regularisation.
In the case of string vibration, however, such regularisation was necessary. It would be of great interest to know the origin
of this distinction. In their work on the Navier-Stokes equations, Lin et al. noted that the choice of the shift constant has an
influence on the behaviour of the global error [29], though no indication on the choice of such constant is given. In all cases,
however, regularisation has no impact on the explicit nature of the schemes proposed here, and only negligible impact on
computational cost. It is certainly clear that, if very large values of the gauge are required, there will be a tradeoff with
regard to numerical precision and roundoff errors in the resulting calculations.
As a final note, in all of the example problems described in Section 4, the potential energy function is a smooth function
of the coordinates q. This is not always the case, with collisions being a prime example. Though the methods presented
19
S. Bilbao, M. Ducceschi and F. Zama Journal of Computational Physics 472 (2023) 111697
here (and most others) do extend to this case, the ramifications of the order of differentiability of the potential function on
convergence rates remain unclear. For collisions, a comparison between fully-implicit methods and methods based on energy
quadratisation was offered in [52], showing comparable convergence curves, though only through an ad-hoc modification of
the gradient of the auxiliary variable ψ.
CRediT authorship contribution statement
Stefan Bilbao: Conceptualization, Formal analysis, Methodology, Software, Validation, Visualization, Writing – original
draft. Michele Ducceschi: Conceptualization, Formal analysis, Methodology, Software, Validation, Visualization, Writing –
original draft. Fabiana Zama: Writing – review & editing.
Declaration of competing interest
The authors declare the following financial interests/personal relationships which may be considered as potential com-
peting interests: Michele Ducceschi reports financial support was provided by European Research Council.
Data availability
No data was used for the research described in the article.
Acknowledgements
M. Ducceschi was supported by the European Research Council (ERC), under grant 2020-StG-950084-NEMUS. For the
purpose of open access, the first author has applied a creative commons attribution (CC BY) licence to any author accepted
manuscript version arising.
References
[1] R. LaBudde, D. Greenspan, Energy and momentum conserving methods of arbitrary order for the numerical integration of equations of motion I. Motion
of a single particle, Numer. Math. 25 (1976) 323–346.
[2] A. Marciniak, Energy conserving, arbitrary order numerical solutions of the N-body problem, Numer. Math. 45 (1984) 207–218.
[3] W. Strauss, L. Vazquez, Numerical solution of a nonlinear Klein-Gordon equation, J. Comput. Phys. 28 (1978) 271–278.
[4] D. Greenspan, Conservative numerical methods for ¨
x=f(x), J. Comput. Phys. 56 (1984) 28–41.
[5] J. Simo, N. Tarno w, K. Wong, Exact energy-momentum conserving algorithms for symplectic schemes for nonlinear dynamics, Comput. Methods Appl.
Mech. Eng. 100 (1992) 63–116.
[6] T. Hughes, T. Caughey, W. Liu, Finite-element methods for nonlinear elastodynamics which conserve energy, J. Appl. Mech. 45 (1978) 366–370.
[7] G. Zhong, J. Marsden, Lie-Poisson Hamilton-Jacobi theory and Lie-Poisson integrators, Phys. Lett. A 133 (1988) 134–139.
[8] E. Hairer, Long-time energy conservation of numerical integrators, in: L. Pardo, A. Pinkus, E. Suli, M. Todd (Eds.), Foundations of Computational Math-
ematics: Santander 2005, Cambridge University Press, Cambridge, UK, 2006, pp. 162–180.
[9] R. McLachlan, M. Perlmutter, Energy drift in reversible time integration, J. Phys. A, Math. Gen. 37 (2004) L593–L598.
[10] E. Faou, E. Hairer, T. Pham, Energy conservation with non-symplectic methods: examples and counter-examples, BIT Numer. Math. 44 (2004) 699–709.
[11] F. Marazzato, A. Ern, C. Mariotti, L. Monasse, An explicit pseudo-energy conserving time-integration scheme for Hamiltonian dynamics, Comput. Meth-
ods Appl. Mech. Eng. 347 (2019) 906–927.
[12] L. Vu-Quoc, S. Li, Invariant-conserving finite difference algorithms for the nonlinear Klein-Gordon equation, Comput. Methods Appl. Mech. Eng. 107
(1993) 341–391.
[13] J. Diaz, M. Grote, Energy conserving explicit local time stepping for second-order wave equations, SIAM J. Sci. Comput. 31 (2009) 1985–2014.
[14] Y. Chin, C. Qin, Explicit energy-conserving schemes for the three-body problem, J. Comput. Phys. 83 (1989) 485–493.
[15] B. Shadwick, J. Bowman, P. Morrison, Exactly conservative integrators, SIAM J. Appl. Math. 59 (1998) 1112–1133.
[16] G. Quispel, D. McLaren, A new class of energy-preserving numerical integration methods, J. Phys. A, Math. Theor. 41 (2008) 1–7.
[17] L. Brugnano, F. Iavernaro, D. Trigiante, A two-step, fourth-order method with energy preserving properties, Comput. Phys. Commun. 183 (2012)
1860–1868.
[18] X. Yang , D. Han, Linearly first- and second-order, unconditionally energy stable schemes for the phase field crystal model, J. Comput. Phys. 330 (2016)
1116–1134.
[19] X. Yan g, J. Zhao, Q. Wan g, Numerical approximations for the molecular beam epitaxial growth model based on the invariant energy quadratization
method, J. Comput. Phys. 333 (2017) 104–127.
[20] J. Shen, J. Xu, J. Yang , The scalar auxiliary variable (SAV) approach for gradient flows, J. Comput. Phys. 353 (2018) 407–416.
[21] Y. Gong, J. Zhao, Energy-stable Runge–Kutta schemes for gradient flow models using the energy quadratization approach, Appl. Math. Lett. 94 (2019)
224–231.
[22] H. Zhang, X. Qian, S. Song, Novel high-order energy-preserving diagonally implicit Runge–Kutta schemes for nonlinear Hamiltonian ODEs, Appl. Math.
Lett. 102 (2020) 1–9.
[23] S. Sato, Y. Miyatake, J. Butcher, High-order linearly implicit schemes conserving quadratic invariants, available at: arXiv:2203 .00944v1, 2021.
[24] J. Sherman, W. Morrison, Adjustment of an inverse matrix corresponding to a change in one element of a given matrix, Ann. Math. Stat. 21 (1950)
124–127.
[25] S. Bilbao, M. Ducceschi, Fast explicit algorithms for Hamiltonian numerical integration, in: Proceedings of the European Nonlinear Dynamics Conference,
Lyon, France, 2022.
[26] O. Gonzalez, J. Simo, On the stability of symplectic and energy-momentum algorithms for non-linear Hamiltonian systems with symmetry, Comput.
Methods Appl. Mech. Eng. 134 (1996) 197–222.
[27] W. Terrell, Stability and Stabilization, Princeton University Press, Princeton, NJ, 2009.
20
S. Bilbao, M. Ducceschi and F. Zama Journal of Computational Physics 472 (2023) 111697
[28] Z. Liu, X. Li, The exponential scalar auxiliary variable (e-sav) approach for phase field models and its explicit computing, SIAM J. Sci. Comput. 42 (2020)
B630–B655.
[29] L. Lin, Z. Yan g, S. Dong, Numerical approximation of incompressible Navier-Stokes equations based on an auxiliary energy variable, J. Comput. Phys.
388 (2019) 1–22.
[30] E. Hairer, C. Lubich, G. Wanner, Geometric numerical integration illustrated by the Störmer–Verlet method, Acta Numer. 12 (2003) 399–450.
[31] J. Zhao, A revisit of the energy quadratization method with a relaxation technique, Appl. Math. Lett. 120 (2021) 107331.
[32] M. Jiang, Z. Zhang, J. Zhao, Improving the accuracy and consistency of the scalar auxiliary variabl e (SAV) method with relaxation, J. Comput. Phys. 456
(2022) 110954.
[33] E. Fermi, J. Pasta, S. Ulam, Studies of nonlinear problems, Technical Report Los Alamos LA-1940, 1955.
[34] E. Hairer, C. Lubich, G. Wanner, Geometric Numerical Integration, Springer Series in Computational Mathematics, 2006.
[35] P. Morse, U. Ingard, Theoretical Acoustics, Princeton University Press, Princeton, NJ, USA, 1968.
[36] J. Chabassier, P. Joly, Energy preserving schemes for nonlinear Hamiltonian systems of wave equations: application to the vibrating piano string,
Comput. Methods Appl. Mech. Eng. 199 (2010) 2779–2795.
[37] M. Ducceschi, S. Bilbao, Simulation of the geometrically exact nonlinear string via energy quadratisation, J. Sound Vib. 534 (2022) 117021.
[38] T. Itoh, K. Abe, Hamiltonian-conserving discrete canonical equations based on variat ional difference quoti ents, J. Comput. Phys. 76 (1988) 85–102.
[39] M. Ducceschi, S. Bilbao, Non-iterative, conservative schemes for geometr ically exac t nonlinear string vibration, in: Proceedings of the International
Conference on Acoustics (ICA 2019), Aachen, Germany, 2019.
[40] R. Courant, K. Friedrichs, H. Lewy, On the partial differential equations of mathematical physics, Math. Ann. 100 (1928) 32–74 (in German).
[41] J. Chabassier, M. Duruflé, Physical parameters for piano modeling, Technical Report, 2012, available at: https://hal .inria .fr /hal -00688679v1 /document.
[42] T. von Kármán, Festigkeitsprobleme im Maschinenbau, in: Encyklopädie der Mathematischen Wissenschaften, vol. 4, 1910, pp. 311–385.
[43] A. Föppl, Vorlesungen über technische Mechanik, Druck und Verlag von B.G. Teubn er, Leipzig, 1907.
[44] A. Nayfeh, D. Mook, Nonlinear Oscillations, John Wiley and Sons, New York , NY, 1979.
[45] M. Ducceschi, O. Cadot, C. Touzé, S. Bilbao, Dynamics of the wave turbulence spectrum in vibrating plates: a numerical investigation using a conserva-
tive finite difference scheme, Phys. D: Nonlinear Phenom. 280–281 (2014) 73–85.
[46] N. Yoko yam a, M. Takao ka , Weak and strong wave turbulence spectra for elastic thin plate, Phys. Rev. Lett. 110 (2013) 105501.
[47] G. Düring, C. Josserand, S. Rica, Wave turbulence theory of elastic plates, Phys. D: Nonlinear Phenom. 347 (2017) 42–73.
[48] R. Kirby, Z. Yosibash, Solution of von Kármán dynamic non-linear plate equations using a pseudo-spectral method, Comput. Methods Appl. Mech. Eng.
193 (2004) 575–599.
[49] S. Bilbao, A family of conservative finite difference schemes for the dynamical von Kármán plate equations, Numer. Methods Partial Differ. Equ. 24
(2008) 193–216.
[50] R. Vichnevetsky, J. Bowles, Fourier Analysis of Numerical Approximations of Hyperbolic Equations, SIAM, Philadelphia, PA, 1982.
[51] Y. Gong, J. Zhao, Q. Wang, Arbitrarily high-order unconditionally energy stable SAV schemes for gradient flow models, Comput. Phys. Commun. 249
(2020) 107033.
[52] M. Ducceschi, S. Bilbao, S. Willemsen, S. Serafin, Linearly-implicit schemes for collisions in musical acoustics based on energy quadratisation, J. Acoust.
Soc. Am. 149 (2021) 3502–3516.
21