1 Introduction

For the so-called near–Hamiltonian systems of the form

$$\begin{aligned} \dot{x}=H_y+\varepsilon f(x,y,\varepsilon ),\quad \dot{y}=-H_x+\varepsilon g(x,y,\varepsilon ), \qquad (x,y)\in \mathbb R^2 \end{aligned}$$
(1.1)

where \(\varepsilon >0\) is a small parameter, and the functions H, f and g are polynomials, or \( C^{\infty }\) smooth, or \(C^\omega \), there are plenty of papers concerning the problem on limit cycles which are bifurcated from the period annulus of system (1.1) with \(\varepsilon =0\). Here \(C^\omega \) denotes the class of analytic functions defined in a suitable open subset of \(\mathbb R^2\). This problem is closely related to the weaken Hilbert’s 16th problem introduced by Arnold [1] in 1977.

There are various methods to study the number of limit cycles of system (1.1). To our knowledge, among them the two important and widely used ones are the method of Melnikov function (see for instance, [3, 4, 8, 9, 1214, 17]) and the averaging method (see for instance, [2, 57, 15, 16, 18]. In the world of the people working in these two methods, ones want to know whether these two methods can produce the same number of limit cycles for the same system (1.1). As we know, the answer is yes only for the first order Melnikov function and the first order averaging function (Llibre, J.: Private communication). But for the higher order cases there is not a definite answer. It is only a folklore that the two methods can play the same role, that is, the kth order Melnikov function and the kth order averaging function have the same number of zeroes taking into account the multiplicity provided that the Melnikov functions and averaging functions of order less than k all identically vanish.

The main purpose of this paper is to give a positive answer to the folklore. Furthermore we establish a concrete relation between the kth order Melnikov function and the kth order averaging function for any \(k\in \mathbb N\). Consequently, we have proved that the two methods are equivalent for studying the number of limit cycles of system (1.1).

This paper is organized as follows. In the next section we will introduce the method of Menilkov function and the averaging method, which will be used in the statement of our main results and their proof. Section 3 will state our main results and present their proof.

2 The Melnikov Method and Averaging Method

For convenience to state our main results, we need to recall the method of Melnikov functions and the averaging method. In the next subsection we first state the method of Melnikov functions.

2.1 The Method of Melnikov Functions

We first recall the definition of Melnikov functions. To introduce the Melnikov functions of arbitrary order, one must assume that the unperturbed Hamiltonian system

$$\begin{aligned} \dot{x}=H_y,\quad \dot{y}=-H_x \end{aligned}$$
(2.1)

has a family of periodic orbits, denoted by \(L_h\), which are defined by the level curve \(H(x,y)=h\) for \(h\in J\) with J being an open interval. We first take a cross section, say l, which is transversal to all periodic orbits inside the period annulus. Such a cross section can be constructed as follows. For any given \(h_0\in J\) one can take a point \(A_0\in L_{h_0}\), then there exists a curve l passing through \(A_0\) and transversal to the periodic orbits of system (2.1). For example, one can take l to be the orbit of the gradient system

$$\begin{aligned} \dot{x}=H_x,\quad \dot{y}=H_y \end{aligned}$$

passing through \(A_0\). In this case l has the same regularity as that of system (1.1).

For all h near \(h_0\), the periodic orbit \(L_h\) intersects the curve l at a unique point A(h) such that \(H(A(h))=h\). Note that \(A(h_0)=A_0\). Thus, we get a function \(A(h):\, J\longrightarrow l\), which has the same regularity as that of system (1.1). Consequently we can write l as

$$\begin{aligned} l=\{A(h)|\ h\in J\}. \end{aligned}$$
(2.2)

Now we consider the positive orbit of (1.1) starting at A(h). Let \(B(h,\varepsilon )\) denote the first intersection point of the orbit with l. Then as we know, one has by (1.1)

$$\begin{aligned} H(B)-H(A)=\varepsilon \int _0^{\tilde{\tau }}(H_xf+H_yg)dt\equiv \varepsilon F(h,\varepsilon ), \end{aligned}$$
(2.3)

where \(\tilde{\tau }=\tilde{\tau }(h,\varepsilon )\) denotes the time of the orbit running from \(A=A(h)\) to \(B=B(h,\varepsilon )\) in the positive direction. Since system (1.1) is \(C^\infty \), we have for any integer \(k\ge 1\)

$$\begin{aligned} \varepsilon F(h,\varepsilon )=\sum _{i=1}^{k}\varepsilon ^iM_i(h)+O\big (\varepsilon ^{k+1}\big ). \end{aligned}$$
(2.4)

The function \(M_i\) in (2.4) is usually called the Melnikov function of order i. From (2.3) it follows easily that

$$\begin{aligned} M_1(h)=\oint _{L_h}gdx-fdy|_{\varepsilon =0},\ h\in J. \end{aligned}$$

The following result is well-known and it is easy prove using the Rolle Theorem (see, for example, [3, 14]).

Lemma 2.1

Assume that for some \(k\ge 1\) integer \(M_k(h)\not \equiv 0\), and \(M_j(h)\equiv 0\) for \(j=1,\ldots ,k-1\). If \(M_k\) has at most m zeros on J taking into account multiplicity, then for \(\varepsilon >0\) sufficiently small system (1.1) has at most m limit cycles bifurcated from the period annulus \(\{L_h|\ h\in J\}\).

2.2 The Averaging Method of Higher Order

In this subsection we recall the averaging method for studying limit cycle bifurcation.

Let \((x,y)=q(t,h)\) with \(0\le t<T(h)\) be the time–parameter representation of the periodic orbit \(L_h\) of system (1.1) with \(\varepsilon =0\) satisfying \(q(0,h)=A(h)\), where T(h) denotes the minimal positive period of the periodic orbit \(L_h\). The following result was proved in [10] and generalized to the perturbation of completely integrable systems in higher dimensional space in [11], which will be one of the key points in the proof of our main results.

Lemma 2.2

The change of variables of the form

$$\begin{aligned} (x,y)=q\left( \frac{T(h)}{2\pi }\theta ,h\right) \equiv G(\theta ,h), \ \ 0\le \theta <2\pi ,\ h\in J \end{aligned}$$
(2.5)

carries system (1.1) into

$$\begin{aligned} \begin{array}{l} \displaystyle \dot{\theta }=\frac{2\pi }{T(h)}\left( 1-\varepsilon \frac{\partial G}{\partial h}\wedge \left( f(G,\varepsilon ),g(G,\varepsilon )\right) \right) ,\\ \displaystyle \dot{h}=\varepsilon \left( H_y(G),-H_x(G)\right) \wedge \left( f(G,\varepsilon ),g(G,\varepsilon )\right) ,\end{array} \end{aligned}$$
(2.6)

where \(a\wedge b=a_1b_2-a_2b_1\).

The variables h and \(\theta \) in (2.5) can be considered as a kind of action-angle variables. However, they are different from the ones appeared in [1]. Here, we take h, the value of the function H, to be the action variable. A natural reason for this choice is that h is the variable of the Melnikov function \(M_i\) in (2.4). Further, the conclusion in Lemma 2.2 is valid for a general system of the form (1.1) whose unperturbed system is Hamiltonian. If a system is a perturbation of an integrable but not Hamiltonian system, one can multiply the perturbed system by an integrating factor of the unperturbed system such that the resulting system is of the form (1.1), and then Lemma 2.2 applies. In some special cases, one can introduce a transformation different from (2.5) in order to apply the averaging method, see [2]. However, as we will see, in order to obtain conclusions in Lemma 2.3 and Theorem 3.1 the transformation (2.5) is crucial.

Note that the functions in the right–hand side of Eq. (2.6) are \(2\pi \)–periodic in \(\theta \). From (2.6) one obtains the \(C^\infty \) smooth and \(2\pi \)–periodic equation of the form

$$\begin{aligned} \frac{dh}{d\theta }= \varepsilon R(\theta ,h,\varepsilon ). \end{aligned}$$
(2.7)

From [10] we know that for \(\varepsilon >0\) sufficiently small and for any \(h_0\in J\), the orbit of system (1.1) starting at \(A(h_0)\) is periodic if and only if the solution of Eq. (2.7) satisfying \(h(0)=h_0\) is \(2\pi \)-periodic. To deduce a more precise result, let \(h(\theta ,h_0,\varepsilon )\) denote the solution of Eq. (2.7) satisfying \(h(0,h_0,\varepsilon )=h_0\). Then the Poincaré map of Eq. (2.7) is \(P(h_0,\varepsilon )=h(2\pi ,h_0,\varepsilon )\). We can prove the following

Lemma 2.3

For any integer \(k\ge 1\), we have

$$\begin{aligned} P(h,\varepsilon )-h=\varepsilon F(h,\varepsilon )=\sum _{i=1}^k\varepsilon ^iM_i(h)+O(\varepsilon ^{k+1}) \end{aligned}$$
(2.8)

for \(h\in J\) and \(\varepsilon >0\) sufficiently small.

Proof

Let \((\overline{\theta }(t,h_0,\varepsilon ), \overline{h} (t,h_0,\varepsilon ))\) denote the solution of (2.6) satisfying \(\overline{\theta }(0,h_0,\varepsilon )=0\) and \( \overline{h} (0,h_0,\varepsilon )=h_0.\) The function \(\theta =\overline{\theta }(t,h_0,\varepsilon )\) has an inverse in t, we denote its inverse function as \(t=\delta (\theta ,h_0,\varepsilon )\). Let \(\tau (h_0,\varepsilon )=\delta (2\pi ,h_0,\varepsilon )\). Then \(\overline{\theta }(\tau ,h_0,\varepsilon )=2\pi \). By (2.6) it follows

$$\begin{aligned} \overline{\theta }(t,h_0,0)=\frac{2\pi }{T(h_0)}t,\,\,\overline{h} (t,h_0,0)=h_0. \end{aligned}$$

Hence, \(\tau (h_0,0)=T(h_0).\) Then a direct calculation shows that

$$\begin{aligned} h(\theta ,h_0,\varepsilon )=\overline{h}\left( \delta (\theta ,h_0,\varepsilon ),h_0,\varepsilon \right) . \end{aligned}$$
(2.9)

Now let \((x(t,h_0,\varepsilon ), y(t,h_0,\varepsilon ))\) denote the solution of system (1.1) satisfying

$$\begin{aligned} (x(0),y(0))=A(h_0)=q(0,h_0). \end{aligned}$$

Then by (2.5) we have

$$\begin{aligned} (x(t,h_0,\varepsilon ), y(t,h_0,\varepsilon ))=G\left( \overline{\theta }(t,h_0,\varepsilon ), \overline{h} (t,h_0,\varepsilon )\right) . \end{aligned}$$

In particular,

$$\begin{aligned} (x(\tau ,h_0,\varepsilon ), y(\tau ,h_0,\varepsilon ))=G(2\pi , h(2\pi ,h_0,\varepsilon ))=q(0, h(2\pi ,h_0,\varepsilon ))\in l. \end{aligned}$$
(2.10)

Now we come back to the definition of \(B(h,\varepsilon )\) and \(\tilde{\tau }\) in (2.3). Recall that \(B(h,\varepsilon )\) is the first return point on the cross section l that the orbit of system (1.1) starting at \(A(h)\in l\) runs in the positive direction, and that \(\tilde{\tau }=\tilde{\tau }(h,\varepsilon )\) is the time that the orbit runs from A(h) to \(B(h,\varepsilon )\). Since \(B(h,\varepsilon )\in l\), it follows from (2.2) that there exists an \(\tilde{h}=\tilde{h}(h_0,\varepsilon )\in J\) such that

$$\begin{aligned} B(h_0,\varepsilon )=A\left( \tilde{h}(h_0,\varepsilon )\right) =q\left( 0,\tilde{h}(h_0,\varepsilon )\right) \in l. \end{aligned}$$

Clearly we have \(\tilde{h}(h_0,0)=h_0\). Comparing the above equations with (2.10) gives immediately the following

$$\begin{aligned} \tau (h_0,\varepsilon )=\tilde{\tau }(h_0,\varepsilon ),\,\,\tilde{h}(h_0,\varepsilon )=h(2\pi ,h_0,\varepsilon ). \end{aligned}$$

Therefore,

$$\begin{aligned} B(h_0,\varepsilon )=A(P(h_0,\varepsilon )), \end{aligned}$$
(2.11)

where P is the Poincaré map of Eq. (2.7). Thus, by Eq. (2.11) and noting \(H(A(h))=h\) for all \(h \in J\), we have

$$\begin{aligned} H(B)-H(A)=H(A(P))-H(A(h))=P(h,\varepsilon )-h. \end{aligned}$$

Hence, formula (2.8) follows from the expressions (2.3) and (2.4).

We have completed the proof of the lemma. \(\square \)

This last lemma verifies that to seek the limit cycles of system (1.1) bifurcated from the period annulus, we only need to search for the \(2\pi \)–periodic solutions of Eq. (2.7). For this purpose we use the averaging method. The following result is known as the averaging theorem of higher order. See for instance, [2, 6, 7, 18].

Lemma 2.4

For any integer \(k\ge 1\), there exists a \(C^\infty \) smooth and \(2\pi \)–periodic change of variables of the form

$$\begin{aligned} \rho =h+\varepsilon \varphi _k(\theta ,h,\varepsilon ) \end{aligned}$$
(2.12)

which transforms the Eq. (2.7) into a \(C^\infty \) smooth and \(2\pi \)–periodic equation of the form

$$\begin{aligned} \frac{d\rho }{d\theta }=\sum _{i=1}^k\varepsilon ^i\overline{R}_i(\rho )+\varepsilon ^{k+1}\overline{R}_{k+1}(\theta ,\rho ,\varepsilon ), \end{aligned}$$
(2.13)

where

$$\begin{aligned} \overline{R}_1(\rho )=\frac{1}{2\pi }\int _0^{2\pi }R(\theta ,\rho ,0)d\theta . \end{aligned}$$

Moreover, if the following conditions hold:

  1. (1)

    For some integer \(k\ge 1\), \(\overline{R}_k(\rho )\not \equiv 0\), \(\overline{R}_j(\rho )\equiv 0\) for \(j=1,\ldots , k-1\);

  2. (2)

    \(\overline{R}_k(\rho )\) has at most m zeros on J taking into account multiplicity,

then for \(\varepsilon >0\) sufficiently small each of the Eqs. (2.7) and (2.13) has at most m \(2\pi \)–periodic solutions with initial values in J.

The function \(\overline{R}_k\) in (2.13) is called the kth order average function of (2.7). By Lemma 2.4 we see that one can apply averaging methods for any periodic system of the form (2.7). We say that Eq. (2.7) is in the standard form for applying the averaging methods. If a periodic system with a small parameter is not in the standard form, one cannot apply the method to it directly. However, if one can find a periodic change of variables which carries the perturbed system into the standard form, then the method can be applied to the resulting system. See [5] for some examples.

Note that the periodic equation obtained from system (1.1) via our action–angle variable change of coordinates has always the standard form (2.7). So even though there are other type of periodic differential systems than (2.7) for applying averaging methods, we need not take care of them when we prove the equivalence between the Melnikov method and averaging method applying to system (1.1).

Combining Lemmas 2.3 and 2.4 we get that under the two conditions in Lemma 2.4 system (1.1) for \(\varepsilon >0\) sufficiently small has at most m limit cycles bifurcated from the period annulus \(\{L_h|\ h\in J\}\). Thus, considering Lemma 2.1 we can establish a relation between the kth order average function \(\overline{R}_k(\rho )\) and the kth order Melnikov function \(M_k(h)\) for any \(k\in \mathbb N\), which will be presented in the next section.

3 Statement of Main Result and its Proof

Having the preparation in the last section we now can state our main result, which characterize the equivalence between the Melnikov method and the averaging method.

Theorem 3.1

For the kth order Melnikov functions \(M_k\) defined in (2.4) and the kth order averaging function \(\overline{R}_k\) defined in (2.13), \(k=1,2,\ldots \), we have

$$\begin{aligned} M_1(h)=2\pi \overline{R}_1(h), \end{aligned}$$

and for \(2\le l\in \mathbb N\)

$$\begin{aligned} M_l(h)=2\pi \overline{R}_l(h) \quad \ \mathrm{if } \ M_j(h)\equiv 0,\ j=1,\ldots , l-1. \end{aligned}$$

Proof

Let \(\rho (\theta ,\rho _0,\varepsilon )\) denote the solution of Eq. (2.13) satisfying \(\rho (0,\rho _0,\varepsilon )=\rho _0\). Then the Poincaré map of Eq. (2.13) is \(\overline{P}(\rho _0,\varepsilon )=\rho (2\pi ,\rho _0,\varepsilon )\).

By (2.12) we have easily

$$\begin{aligned} \rho _0=h_0+\varepsilon \varphi _k(0,h_0,\varepsilon ),\quad \ \overline{P}(\rho _0,\varepsilon )=P(h_0,\varepsilon )+\varepsilon \varphi _k (2\pi ,P(h_0,\varepsilon ),\varepsilon ), \end{aligned}$$

where P is the Poincaré map of Eq. (2.7). Note that since \(\varphi _k\) is \(2\pi \)–periodic in \(\theta \), we get from this last expression that

$$\begin{aligned} \overline{P}(\rho _0,\varepsilon )-\rho _0&=P(h_0,\varepsilon )-h_0 +\varepsilon \left( \varphi _k(0,P(h_0,\varepsilon ),\varepsilon ) -\varphi _k(0,h_0,\varepsilon )\right) \nonumber \\&=(1+O(\varepsilon ))(P(h_0,\varepsilon )-h_0), \end{aligned}$$
(3.1)

where we have used the fact that

$$\begin{aligned} \varphi _k(0,P(h_0,\varepsilon ),\varepsilon )-\varphi _k(0,h_0,\varepsilon )=\frac{\partial \varphi _k}{\partial h}(0,\overline{h},\varepsilon )\left( P(h_0,\varepsilon )-h_0\right) \end{aligned}$$

for some \(\overline{h}\) between \(h_0\) and \(P(h_0,\varepsilon )\), which follows from the well-known differential mean value theorem.

For any integer \(k\ge 1\), we have the Taylor expansions

$$\begin{aligned} P(h_0,\varepsilon )=h_0+\sum _{i=1}^k\varepsilon ^kP_i(h_0)+O(\varepsilon ^{k+1}), \end{aligned}$$
(3.2)

and

$$\begin{aligned} \overline{P}(\rho _0,\varepsilon )=\rho _0+\sum _{i=1}^k\varepsilon ^k\overline{P}_i(\rho _0)+O(\varepsilon ^{k+1}). \end{aligned}$$
(3.3)

From the Eqs. (3.1)–(3.3) and noting \(\rho _0=h_0+O(\varepsilon )\) we can obtain

$$\begin{aligned} \begin{array}{l} P_1(h_0)=\overline{P}_1(h_0), \\ P_l(h_0)=\overline{P}_l(h_0),\,\,\,\,\mathrm{if }\,\,\,l\ge 2\, \, \text{ and } \,\,P_j(h_0)\equiv 0,\,j=1,\ldots , l-1. \end{array} \end{aligned}$$
(3.4)

On the other hand, using the expression of Eq. (2.13) and the expansion of its solution \(\rho (\theta ,\rho _0,\varepsilon )\) with respect to \(\varepsilon \), one can prove easily

$$\begin{aligned} \begin{array}{l} \overline{P}_1(\rho _0)=2\pi \overline{R}_1(\rho _0), \\ \overline{P}_l(\rho _0)= 2\pi \overline{R}_l(\rho _0)\quad \,\mathrm{if }\,l\ge 2\, \text{ and } \overline{P}_j(\rho _0)\equiv 0,\ j=1,\ldots , l-1. \end{array} \end{aligned}$$
(3.5)

Note that by (2.8) and (3.2)

$$\begin{aligned} M_i(h)=P_i(h) \quad \text{ for } \text{ all } i\ge 1. \end{aligned}$$

Then the proof follows from (3.4) and (3.5).

We complete the proof of the theorem. \(\square \)

As we have seen, the conclusion in Theorem 3.1 is established through 4 main steps as follows.

Step 1 (Lemma 2.2) A suitable action-angle change of variables to transform the planar system into a periodic scalar system in the region filled with periodic orbits has been found. The action variable was chosen in a natural way to be the value of the Hamiltonian H.

Step 2 (Lemma 2.3) The coincidence of the Poincaré map of the planar system (constructed when considering a transversal section with the parametrization given by the value of H) with the Poincaré map of the periodic scalar equation has been established.

Step 3 (Lemma 2.4) Averaging method has been applied to the periodic scalar equation to produce the average equation of higher order and the average function of each order as well.

Step 4 A relationship of the Poincaré maps of the original scalar equation and its equation of averaging has been found. Together with step 2 this leads to the desired conclusion.

By Theorem 3.1, we see that to study the number of limit cycles of system (1.1) any results obtained by using averaging method of arbitrary order can also be obtained by using the method of Melnikov function of the same order, and vice versa . In this sense, we say that the two methods are equivalent to each other. For the case of the first order, the relation \(M_1(h)=2\pi \overline{R}_1(h)\) is trivial, and has been noticed in [1] using a different angle variable.

The general procedure for finding both the higher order Melnikov function and the higher order averaging function has been developed in [4] and [5], respectively.