Proceedings of the 9th International Conference "Distributed Computing and Grid Technologies in Science and Education" (GRID'2021), Dubna, Russia, July 5-9, 2021 OPENMP COMPUTING OF A REFERENCE SOLUTION FOR COUPLED LORENZ SYSTEM ON [0,400] I. G. Hristov1,a, R. D. Hristova1, S. N. Dimova1, P. R. Armyanov1, N. G. Shegunov1, I. V. Puzynin2, T. P. Puzynina2, Z. A. Sharipov2, Z. K. Tukhliev2 1 Sofia University “St. Kliment Ohridski”, FMI, Sofia, Bulgaria 2 Joint Institute for Nuclear Research, MLIT, Dubna, Russia E-mails: a ivanh@fmi.uni-sofia.bg Obtaining a long term reference trajectory on the chaotic attractor for the coupled Lorenz system is a difficult task, due to the sensitive dependence on the initial conditions. Using the standard double- precision floating point arithmetic, we cannot obtain a reference solution longer than 2.5 time units. Combining OpenMP parallel technology together with GMP library (GNU multiple precision library), we parallelize the Taylor series algorithm for the coupled Lorenz system and obtain a reference solution in the rather long time interval - [0,400]. We performed two large computations, each using one CPU-node (32 cores), based on two Intel® Haswell processors. First computation was with 2158 decimal digits of precision and 2480-th order method, and second computation was for verification - with 2254 decimal digits of precision and 2580-th order method. The needed time for the second (larger) computation was 6.3 days. The parallel speedup when using these 32 cores is 23.1 with parallel efficiency 72.1 %. Keywords: Variable step-size Taylor series method, Clean numerical simulation, Multiple precision, OpenMP parallel technology, Coupled Lorenz system Ivan Hristov, Radoslava Hristova, Stefka Dimova, Petar Armyanov, Nikolay Shegunov, Igor Puzynin, Taisiya Puzynina, Zarif Sharipov, Zafar Tukhliev Copyright © 2021 for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0). 153 Proceedings of the 9th International Conference "Distributed Computing and Grid Technologies in Science and Education" (GRID'2021), Dubna, Russia, July 5-9, 2021 1. Introduction To compute a reliable long term trajectory for a chaotic dynamic system, we need a multiple precision floating point arithmetic library in order to deal with the sensitive dependence on the initial conditions. This is not enough, we also need a numerical method that steps efficiently at the level of the high precision, i.e. we need a method that allows arbitrary high order of accuracy. In this paper we use a numerical procedure called “Clean numerical simulation” to obtain verified long term trajectories for chaotic dynamical systems [1]. The procedure is based on the multiple precision Taylor series method [2]. In the case of very long time of integration, the computational problem can become pretty large and we need a parallelization of the algorithm. Although in our recent work [3] we reported a general MPI+OpenMP parallelization for the classical Lorenz system, pure OpenMP parallelization has its own importance and deserves special attention. In this paper we combine OpenMP parallel technology together with GMP library [4] to parallelize the Taylor series method and compute a reliable trajectory on the chaotic attractor for the more difficult coupled Lorenz system. The work can be regarded as a continuation and improvement of the results in our previous work [5]. 2. The model problem – coupled Lorenz system We consider as a model problem the coupled Lorenz system from [6]: 𝑑𝑥 𝑑𝑦 𝑑𝑧 = 𝑎 (𝑦 − 𝑥), = 𝑟𝑠 𝑥 − 𝑦 – 𝑥𝑧 − 𝜀𝑠𝑋𝑌, = 𝑥𝑦 − 𝑏𝑧 𝑑𝑡 𝑑𝑡 𝑑𝑡 (1) 𝑑𝑋 𝑑𝑌 𝑑𝑍 = 𝑐𝑎 (𝑌 − 𝑋), = 𝑐(𝑟𝑓 𝑋 − 𝑌 – 𝑋𝑍) + 𝜀𝑓 𝑋𝑦, = 𝑋𝑌 − 𝑏𝑍 𝑑𝑡 𝑑𝑡 𝑑𝑡 where a = 10, b = 8/3, c = 10, rs = 28, rf = 45, 𝜀𝑠 = 10-2, 𝜀𝑓 = 10. The first three and last three equations are called slow and fast dynamics respectively. The first three equations (without the last term in the second equation) exactly represent the classical Lorenz system. For the above parameters the system has a chaotic attractor, which means a sensitive dependence on the initial conditions. This dependence is described by the relation 𝛿(𝑡) ~ 𝛿(0)𝑒 𝜆𝑡 , where λ is the maximum Lyapunov exponent and 𝛿(𝑡) is the distance between two adjacent trajectories. Solving the above relation with respect to t, we obtain 1 𝑡𝑜𝑙 the following relation for the predictability horizon (the Lyapunov time T): 𝑇~ 𝑙𝑛 ( ). Here tol is 𝜆 𝜀 our tolerance and ε is the round-off unit (precision). For the coupled Lorenz system λ = 11.5. If we use the standard double precision (ε = 2-53) and tolerance tol = 10-3, then T ~ 2.5. This means that with the general double-precision arithmetic we cannot obtain a reliable solution longer than 2.5 time units. Let us mention that for the classical Lorenz system λ = 0.905 and hence the coupled Lorenz system is much harder to simulate. 3. Taylor series algorithm for coupled Lorenz system Let us denote the normalized i-th derivatives (the derivatives divided by i!) at point t with xi, yi, zi, Xi, Yi, Zi. Then the N-th order Taylor series method with step-size 𝝉 for system (1) is [2]: 𝑥(𝑡 + 𝜏) ≈ 𝑥0 + ∑𝑁 𝑖 𝑖=1 𝑥𝑖 𝜏 , 𝑦(𝑡 + 𝜏) ≈ 𝑦0 + ∑𝑁 𝑖 𝑖=1 𝑦𝑖 𝜏 , 𝑧(𝑡 + 𝜏) ≈ 𝑧0 + ∑𝑁 𝑖=1 𝑧𝑖 𝜏 𝑖 𝑋(𝑡 + 𝜏) ≈ 𝑋0 + ∑𝑁 𝑖 𝑖=1 𝑋𝑖 𝜏 , 𝑌(𝑡 + 𝜏) ≈ 𝑌0 + ∑𝑁 𝑖 𝑖=1 𝑌𝑖 𝜏 , 𝑍(𝑡 + 𝜏) ≈ 𝑍0 + ∑𝑁 𝑖=1 𝑍𝑖 𝜏 𝑖 The normalized derivatives are computed with the so called automatic differentiation [2]. If we apply the Leibniz rule for the derivatives of the product of two functions to system (1), we obtain the following procedure for computing them. For i = 0, … , N – 1 we compute: 154 Proceedings of the 9th International Conference "Distributed Computing and Grid Technologies in Science and Education" (GRID'2021), Dubna, Russia, July 5-9, 2021 1 1 𝑥𝑖+1 = 𝑎(𝑦𝑖 − 𝑥𝑖 ), 𝑦𝑖+1 = (𝑟𝑠 𝑥𝑖 − 𝑦𝑖 − ∑𝑖𝑗=0 𝑥𝑖−𝑗 𝑧𝑗 − 𝜀𝑠 ∑𝑖𝑗=0 𝑋𝑖−𝑗 𝑌𝑗 ), 𝑖+1 𝑖+1 1 𝑧𝑖+1 = (∑𝑖𝑗=0 𝑥𝑖−𝑗 𝑦𝑗 − 𝑏𝑧𝑖 ) 𝑖+1 (2) 1 1 𝑋𝑖+1 = 𝑖+1 𝑐𝑎(𝑌𝑖 − 𝑋𝑖 ), 𝑌𝑖+1 = 𝑖+1 (𝑐(𝑟𝑓 𝑋𝑖 − 𝑌𝑖 − ∑𝑖𝑗=0 𝑋𝑖−𝑗 𝑍𝑗 ) + 𝜀𝑓 ∑𝑖𝑗=0 𝑋𝑖−𝑗 𝑦𝑗 ), 1 𝑍𝑖+1 = 𝑖+1 𝑐(∑𝑖𝑗=0 𝑋𝑖−𝑗 𝑌𝑗 − 𝑏𝑍𝑖 ) These are the formulas for the automatic differentiation. After computing the normalized derivatives (the Taylor coefficients) up to the N-th order, we evaluate the Taylor polynomials by Horner’s rule. The pseudocode for the Taylor series algorithm for coupled Lorenz system is straightforward: while (time < T) { for (i = 0; i