1 Introduction

Mathematical models of dynamical systems describe the evolution of systems in terms of equation of motion and initial values. Few examples of dynamical systems are found in mechanics for physics, population dynamics in biology, and chemical kinetics in chemistry. Thus theory also has an increasing number of applications in social sciences as in mathematical economy and finance. The concept of a dynamical system has its origin in Newtonian mechanics. Like the other natural sciences and engineering disciplines, the mathematical model of a dynamical system is expressed either in the form of a differential equation for continuous case or a difference equation for discrete case, which form the mathematical model. The differential equation or the difference equation mathematically expresses the present states of the system in terms of the past ones for a constant set of inputs and fixed parameters of the system. Once the system is solved through successive integration or iteration, given an initial point, it is possible to determine all its future positions or states, a collection of points which comprise a trajectory or orbit. Previously, modeling was mainly restricted to linear systems for which analytical treatment is tractable. Recently, due to the advent of powerful computers and with improved computational techniques, it is now also possible to tackle, to some extent, nonlinear systems. After all, nonlinearity is a phenomenon that is exhibited by most of the systems in nature and has gained increasing popularity during the last few decades.

Fractional calculus is a field of applied mathematics that deals with derivatives and integrals of arbitrary orders and have applications in various fields of science and engineering including fluid mechanics [1, 2], viscoelasticity [3], material science [4], quantum mechanics [5], bioengineering [6], medicine [7], biological models [8, 9], cardiac tissues [10], etc. The attribute of fractional-order systems for which they have gained popularity in the investigation of dynamical systems is that they allow a greater flexibility in the model. An integer-order differential operator is a local operator, whereas a fractional-order differential operator is nonlocal in the sense that it takes into account the fact that the future state not only depends upon the present state but also upon all the history of its previous states. For this realistic property, the fractional-order systems are becoming popular. Thus fractional calculus is considered as a superset of integer-order calculus. Sabatier et al. [11] have stated that fractional calculus has the potential to accomplish what integer-order calculus cannot.

Chaotic systems are class of nonlinear deterministic systems which have aperiodic long-term behavior, which exhibits sensitive dependence on initial conditions. Aperiodic long-term behavior means that there are trajectories which do not settle down to fixed points, periodic orbits, or quasi-periodic orbits as time tends to infinity. Deterministic means that the system has no random or noisy inputs or parameters. This irregular behavior arises from the system’s nonlinearity, rather than from noisy driving forces. Sensitivity means that a small change in the initial state will lead to progressively larger changes in later system states, i.e., the concept of chaos has been used to explain how systems subject to known laws of physics may be predictable in the short term but are apparently random on a longer time scale.

The most important achievement in the research of chaos is that chaotic systems can be made to synchronize with each other. The word synchronization means that the trajectories of two systems will converge and they will remain in step with each other. Thus it appears to be structurally stable. These ideas have motivated the authors to construct a real mathematical model for synchronization of two fractional-order chaotic systems, namely the Ravinovich–Fabrikant and Lotka–Volterra systems. The pioneering work of Pecore and Corrall [12] introduced a method about synchronization between the drive (master) and response (slave) systems of two identical or nonidentical systems with different initial conditions, which has attracted a great deal of interest in various fields due to its important applications in ecological system [13], physical system [14], chemical system [15], modeling brain activity, system identification, pattern recognition phenomena, secure communications [16], etc.

In the recent years, various synchronization schemes, such as linear and nonlinear feedback synchronization [17], time delay feedback approach [18], adaptive control [19], adaptive feedback control [20], tracking control [21], active control [22], back-stepping design method [23], sliding-mode control [24], and so on, have been successfully applied to chaos synchronization. The concept of synchronization has been extended to the scope such as chaos control and synchronization [25, 26], generalized synchronization [27], complete synchronization [28], lag synchronization [29], adaptive synchronization [30], phase synchronization [31, 32], anti-phase synchronization [3134], projective synchronization [35], etc.

The important feature of the study of synchronization is that where the difference of states of chaotic systems converge to zero for large time. Such a phenomenon is known as complete synchronization. Mathematically, the synchronization is achieved when lim t→∞x 1(t)−x 2(t)∥=0, where x 1(t) and x 2(t) are the state vectors of the drive and response systems, respectively.

The general Lotka–Volterra model is the starting point of wide classes of models in ecology, biology, economics, physics, and chemistry. Lotka [36] and Volterra [37] have presented for the first time the differential equations of predator–prey type. Since then more complicated but realistic predator–prey systems have been used by ecologists and mathematicians. In 1988, Samardzija and Greller [38] proposed a model of two-predator one-prey generalization of the Lotka–Volterra equations. The proposed three-dimensional system exhibits chaotic behavior, takes an explosive route to chaos, and in various regions of parameter space evolves on a fractal torus. The Ravinovich–Fabrikant system models the stochasticity arising from the modulation instability in a nonequilibrium dissipative medium. The Ravinovich–Fabrikant equations are a set of three coupled ordinary differential equations exhibiting chaotic behavior for certain values of the parameters. This system is described by Mikhail Ravinovich and Anatoly Fabrikant in 1979. Danca and Chen [39] noticed that the Ravinovich–Fabrikant system is difficult to analyze due to the presence of quadratic and cubic terms. In this system different attractors can be obtained for the same parameters by using different step sizes in the integration. The historical importance of these two models and physical relevance of the study of synchronization between standard-order chaotic systems have motivated the authors to construct a real mathematical model to investigate the time required for synchronization between these two chaotic systems with fractional-order derivatives.

In this article, the authors have used the active control method for synchronization between the generalized Lotka–Volterra model and Ravinovich–Fabrikant model. Using Adams–Boshforth–Moulton method, computer simulations are carried out for different order fractional time derivatives and also for standard one which are displayed graphically to demonstrate the efficiency of the proposed approach.

2 Preliminaries definitions, theorem, and numerical method

2.1 Fractional calculus

Fractional calculus is a generalization of integration and differentiation to a noninteger-order integro-differential operator \({}_{a}D_{t}^{q}\) is defined by

$$ {}_{a}D_{t}^{q} = \left \{ \begin{array}{l@{\quad }l} \frac{d^{q}}{dt^{q}}, & R(q) > 0, \\ \noalign{\vspace*{4pt}} 1, & R(q) = 0, \\ \noalign{\vspace*{4pt}} \int_{a}^{t} (d\tau)^{ - q} & R(q) < 0, \\ \end{array} \right . $$
(1)

where q is the fractional order which may be a complex number, R(q) denotes the real part of q,a is the fixed lower terminal, and t is the moving upper terminal (a<t).

There are some definitions for fractional derivative. The commonly used is the Riemann–Liouville definition:

$$ {}_{a}D_{t}^{q}x(t) = \frac{d^{n}}{dt^{n}}j_{t}^{n - q}x(t),\quad q > 0, $$
(2)

n=⌈q⌉, i.e., n is the first integer which is not less than \(q,j_{t}^{r}\) is the rth-order Riemann–Liouville integral operator, which is described as follows:

$$ j_{t}^{r}\varphi(t) = \frac{1}{\varGamma (r)}\int _{0}^{t} (t - \tau)^{r - 1}\varphi(\tau) \,d \tau, $$
(3)

where 0<r≤1, and Γ(.) represents the gamma function.

In our work we use the following definition:

$$ D_{t}^{q}x(t) = j_{t}^{n - q}x^{(n)}(t), \quad q > 0, $$
(4)

where n=⌈q⌉, and the operator \(D_{t}^{q}\) is the Caputo differential operator of order q.

The important reason of choosing Caputo derivatives for solving initial-value fractional-order differential equations is that the Riemann–Liouville initial-value problems require homogeneous initial conditions, though the Caputo initial-value problem holds for both homogeneous and non-homogeneous conditions. Another important difference between the Riemann–Liouville definition and Caputo definition is that the Caputo derivative of a constant is zero, whereas in the cases of a finite value of the lower terminal at the Riemann–Liouville fractional derivative of constant is not equal to zero: \({}D_{t}^{q}C = C\tfrac{t^{ - q}}{\varGamma (1 + q)}\). For this reason, the Caputo derivative is better than the Riemann–Liouville derivative.

2.2 Numerical approximation method

Numerical methods used for solving ODEs have to be modified for solving fractional differential equations (FDEs). We only derive the predictor–corrector scheme for drive–response systems. This scheme is the generalization of Adams–Bashforth–Moulton one [40, 41]. We interpret the approximate solution of nonlinear fractional-order differential equations by means of this algorithm in the following way.

The considered differential equation,

(5)

is equivalent to the Volterra integral equation

$$ y(t) = \sum_{k = 0}^{[q] - 1} y_{0}^{(k)} \frac{t^{k}}{k!} + \frac{1}{\varGamma (q)}\int _{0}^{t} (t - s)^{q - 1} f\bigl(s,y(s)\bigr) \,ds. $$
(6)

Set h=T/N,t n =nh,n=0,1,…,NZ +.

Then (6) can be discredized as follows:

(7)
$$ \mbox{\small\selectfont $ q_{j,n + 1} = \left \{ \begin{array}{l@{\quad }l} n^{q + 1} - (n - q)(n + 1)^{q}& \mbox{if}\ j = 0, \\ \noalign{\vspace*{4pt}} (n - j + 2)^{q + 1} + (n - j)^{q + 1}\\ \noalign{\vspace*{4pt}} \quad {} - 2(n - j + 1)^{q + 1} & \mbox{if}\ 0\leq j\leq n, \\ 1 & \mbox{if}\ j = n + 1, \\ \end{array} \right . $} $$
(8)

where the predicted value y h (t n+1) is determined by

(9)
(10)

The error estimate is

(11)

2.3 Synchronization between different fractional-order chaotic systems

Let us consider the two different fractional-order chaotic systems

(12)
(13)

where 0<q≤1 is the fractional-order time derivative, x,yR n are the state vectors, F(x),G(y)∈R n are the nonlinear terms of systems (12) and (13) and are smooth functions. A, B are constant matrices. For synchronization of the above two different systems, system (12) represents the master (drive) system, and system (13) represents the slave (response) system.

Now introducing the active control parameter uR n in system (13), we get

$$ \frac{d^{q}y}{dt^{q}} = By + G(y) + u. $$
(14)

The purpose of chaos synchronization is how to design the active controller u, which is able to synchronize the states of both the master and the slave systems. If we define the error vector as e=yx, the error dynamical system becomes

$$ \frac{d^{q}e}{dt^{q}} = Be + (B - A)x + G(y) - F(x) + u. $$
(15)

2.4 Theorem

The following autonomous system (Matignon [42])

$$D^{q}x = Ax,\qquad x(0) = x_{0}, $$

where 0<q<1,xR n,AR n×n, is asymptotically stable iff |arg(spec(A))|>/2. In this case, each component of the states decays toward 0 like t q. Also, this system is stable iff |arg(spec(A))|≥/2, and those critical eigenvalues that satisfy |arg(spec(A))|=/2 have geometric multiplicity one.

2.5 The Ravinovich–Fabrikant chaotic system

The Ravinovich–Fabrikant chaotic system [43] is given by

(16)

The Ravinovich–Fabrikant time fractional-order chaotic system is given by

(17)

For the parameters α=1.1, γ=0.87, both systems (16) and (17) remain chaotic. During synchronization, the initial condition is taken as [−1,0,0.5]. The chaotic attractors of system (16) are described in Fig. 1. The phase portraits in xyz space and xy, yz, zx planes are shown in Figs. 1(a)–(d), respectively. At q i =0.99 (i=1,2,3), the chaotic attractors of system (17) are described in Fig. 2, where phase portraits in xyz space and xy, yz, zx planes are shown in Figs. 2(a)–(d), respectively.

Fig. 1
figure 1

Phase portraits of the Ravinovich–Fabrikant system in xyz space and xy, yz, xz planes

Fig. 2
figure 2

Phase portraits of the Ravinovich–Fabrikant system in xyz space and xy, yz, xz planes

2.6 The Lotka–Volterra chaotic system

The Lotka–Volterra chaotic system [37, 44] is given by

(18)

The fractional-order Lotka–Volterra chaotic system is given by

(19)

where parameters a,b,c,d>0,a represents the natural growth rate of the prey in the absence of predators, b represents the effect of predation on the prey, c represents the natural death rate of the predator in the absence of prey, d represents the efficiency and propagation rate of the predator in the presence of prey, and e,p,s are positive constants.

During synchronization the parameters are taken as a=1, b=1, c=1, d=1, e=2, s=2.7, p=3, and the initial condition is taken as [1, 1.4, 1]. The chaotic attractors of system (18) with phase portraits are described in Fig. 3. At q i =0.99 (i=1,2,3), the chaotic attractors of system (19) with different phase portraits are described in Fig. 4.

Fig. 3
figure 3

Phase portraits of Lotka–Volterra system in xyz space and xy, yz, xz planes

Fig. 4
figure 4

Phase portraits of Lotka–Volterra system in xyz space and xy, yz, xz planes

2.7 Synchronization between Ravinovich–Fabrikant chaotic system and Lotka–Volterra chaotic system via active control method

In this section the synchronization behavior between two different fractional-order and standard-order Ravinovich–Fabrikant and Lotka–Volterra is made. We consider that the Ravinovich–Fabrikant system drives the Lotka–Volterra system. Therefore, we define the Ravinovich–Fabrikant as a master system and Lotka–Volterra as a slave system as follows.

The master system described through Eq. (17) is

$$ \left \{ \begin{array}{l} \frac{d^{q_{1}}x_{1}}{dt^{q_{1}}} = y_{1}(z_{1} - 1 + x_{1}^{2}) + \gamma x_{1}, \\ \noalign{\vspace*{4pt}} \frac{d^{q_{2}}y_{1}}{dt^{q_{2}}} = x_{1}(3z_{1} + 1 - x_{1}^{2}) + \gamma y_{1}, \\ \noalign{\vspace*{4pt}} \frac{d^{q_{3}}z_{1}}{dt^{q_{3}}} = - 2z_{1}(\alpha + x_{1}y_{1}). \\ \end{array} \right . $$
(20)

The slave system described through Eq. (19) is

$$ \left \{ \begin{array}{l} \frac{d^{q_{1}}x_{2}}{dt^{q_{1}}} = ax_{2} - bx_{2}y_{2} + ex_{2}^{2} - sz_{2}x_{2}^{2} + u_{1}(t), \\ \noalign{\vspace*{4pt}} \frac{d^{q_{2}}y_{2}}{dt^{q_{2}}} = - cy_{2} + dx_{2}y_{2} + u_{2}(t), \\ \noalign{\vspace*{4pt}} \frac{d^{q_{3}}z_{2}}{dt^{q_{3}}} = - pz_{2} + sz_{2}x_{2}^{2} + u_{3}(t), \\ \end{array} \right . $$
(21)

where three active control functions u 1(t), u 2(t), and u 3(t) are introduced in Eq. (21). Our goal is to investigate the synchronization of systems (20) and (21). We define the error states e 1=x 2x 1, e 2=y 2y 1, e 3=z 2z 1. The corresponding error dynamics can be obtained by subtraction of Eq. (20) from (21) as

$$ \left \{ \begin{array}{l} \frac{d^{q_{1}}e_{1}}{dt^{q_{1}}} = ae_{1} - (a + \gamma)x_{1} - by_{2}x_{2}\\ \noalign{\vspace*{4pt}} \quad {} + (e - sz_{2})x_{2}^{2}\\ \noalign{\vspace*{4pt}} \quad {} - (z_{1} - 1 + x_{1}^{2})y_{1} + u_{1}(t), \\ \noalign{\vspace*{4pt}} \frac{d^{q_{2}}e_{2}}{dt^{q_{2}}} = - ce_{2} - (c + \gamma)y_{1} + dx_{2}y_{2}\\ \noalign{\vspace*{4pt}} \quad {} - (3z_{1} + 1)x_{1} + x_{1}^{3} + u_{2}(t), \\ \noalign{\vspace*{4pt}} \frac{d^{q_{3}}e_{3}}{dt^{q_{3}}} = - pe_{3} + (2\alpha - p)z_{1} + sz_{2}x_{2}^{2}\\ \noalign{\vspace*{4pt}} \quad {} + 2x_{1}y_{1}z_{1} + u_{3}(t). \\ \end{array} \right . $$
(22)

Then we define the active control inputs u 1(t), u 2(t), and u 3(t) as

$$ \left \{ \begin{array}{l} u_{1}(t) = v_{1}(t) + (a + \gamma)x_{1} + by_{2}x_{2}\\ \noalign{\vspace*{4pt}} \quad {} - (e - sz_{2})x_{2}^{2} + (z_{1} - 1 + x_{1}^{2})y_{1}, \\ \noalign{\vspace*{4pt}} u_{2}(t) = v_{2}(t) + (c + \gamma)y_{1} - dx_{2}y_{2}\\ \noalign{\vspace*{4pt}} \quad {} + (3z_{1} + 1)x_{1} - x_{1}^{3}, \\ \noalign{\vspace*{4pt}} u_{3}(t) = v_{3}(t) - (2\alpha - p)z_{1} - sz_{2}x_{2}^{2}\\ \noalign{\vspace*{4pt}} \quad {} - 2x_{1}y_{1}z_{1}, \\ \end{array} \right . $$
(23)

which leads to

$$ \left \{ \begin{array}{l} \frac{d^{q_{1}}e_{1}}{dt^{q_{1}}} = ae_{1} + v_{1}(t), \\ \noalign{\vspace*{4pt}} \frac{d^{q_{2}}e_{2}}{dt^{q_{2}}} = ce_{2} + v_{2}(t), \\ \noalign{\vspace*{4pt}} \frac{d^{q_{3}}e_{3}}{dt^{q_{3}}} = - pe_{3} + v_{3}(t). \\ \end{array} \right . $$
(24)

The synchronization error system (24) is a linear system with active control inputs v 1(t),v 2(t), and v 3(t). Next, design an appropriate feedback control which stabilizes the system so that e 1,e 2,e 3 converge to zero as time t tends to infinity, which implies that Ravinovich–Fabrikant and Lotka–Volterra systems are synchronized with feedback control. There are many possible choices for the control inputs v 1(t),v 2(t), and v 3(t). We choose

$$ \left [ \begin{array}{c} v_{1}(t) \\ v_{2}(t) \\ v_{3}(t) \\ \end{array} \right ] = C\left [ \begin{array}{c} e_{1} \\ e_{2} \\ e_{3} \\ \end{array} \right ], $$
(25)

where C is a 3×3 constant matrix. In order to make the closed-loop system stable, the matrix C should be selected in such a way that the feedback system has eigenvalues λ i of C satisfying the control |arg(λ i )|>0.5πq, i=1,2,3. There is no a unique choice for such a matrix C. A good choice can be as follows:

$$ C = \left ( \begin{array}{c@{\quad }c@{\quad }c} - a - 1 & 0 & 0 \\ 0 & c - 1 & 0 \\ 0 & 0 & p - 1 \\ \end{array} \right ). $$
(26)

Finally, the error system is changed to

$$ \left \{ \begin{array}{l} \frac{d^{q_{1}}e_{1}}{dt^{q_{1}}} = - e_{1}, \\ \noalign{\vspace*{4pt}} \frac{d^{q_{2}}e_{2}}{dt^{q_{2}}} = - e_{2}, \\ \noalign{\vspace*{4pt}} \frac{d^{q_{3}}e_{3}}{dt^{q_{3}}} = - e_{3}. \\ \end{array} \right . $$
(27)

All the three eigenvalues of the system are −1; hence the condition that all q i ≤1 is satisfied, and we finally obtain the required synchronization.

2.8 Simulation and results

In numerical simulations, the parameters of the Ravinovich–Fabrikant system are taken as α=1.1, γ=0.87. Parameters of the Lotka–Volterra system are taken as a 1=1, b 1=1, c 1=1, d 1=1, e=2, p=3, s=2.9851. Time step size is 0.005. The initial values of the master system and the slave system are taken [−1,0,0.5] and [1,1.4,1], respectively. Thus, the initial errors are [2,1.4,0.5].

Figures 5 and 6 demonstrate that the systems are synchronized after small duration of time for both the integer-order time derivative q i =1 (i=1,2,3) and fractional-order time derivatives q i =0.99 (i=1,2,3). It is seen from the figure that the time of synchronization is less for integer order.

Fig. 5
figure 5figure 5

State trajectories of drive system (20) and response system (21) for the integer order of derivative q i =1 (i=1,2,3): (a) between x 1 and x 2, (b) between y 1 and y 2, (c) between z 1 and z 2, (d) the evolution of the error functions e 1(t), e 2(t), and e 3(t), (e) phase space representation of the synchronization of the master–slave chaotic systems at standard-order derivative

Fig. 6
figure 6figure 6

State trajectories of drive system (20) and response system (21) for the fractional order q i =0.99 (i=1,2,3): (a) between x 1 and x 2, (b) between y 1 and y 2, (c) between z 1 and z 2, (d) the evolution of the error functions e 1(t), e 2(t), and e 3(t), (e) phase space representation of the synchronization of the master–slave chaotic system at fractional-order derivatives q i =0.99 (i=1,2,3)

3 Conclusion

The present article deals with the synchronization between two different chaotic systems with standard- and fractional-order derivatives using active control method based on the stability analysis. The authors have presented a nonlinear control technique to achieve perfect control of two chaotic systems along a desired trajectory. The most important part of this analysis is the proper design of the control function so that the error states decay to zero for large time which helps one to find the required time for synchronization. This clearly shows the reliability and potential of the method for synchronization of a pair of chaotic systems for standard- and fractional-order derivatives.