## Parallelizing the code of the Fokker-Planck equation solution by stochastic approach in Julia programming language

### Anna Wawrzynczak

DOI: http://dx.doi.org/10.15439/2018F253

Citation: Communication Papers of the 2018 Federated Conference on Computer Science and Information Systems, M. Ganzha, L. Maciaszek, M. Paprzycki (eds). ACSIS, Vol. 17, pages 115â€“120 (2018)

Abstract. Presenting a reliable physical simulation requires very often use of the supercomputers and models run for many days or weeks. The numerical computing is divided into two groups. One uses highly efficient low-level languages like Fortran, C, and C++. The second applies high-level languages like Python or Matlab, being usually quite slow in HPC applications. This paper presents the application of the relatively new programming language Julia, advertised as the as``a high-level, high-performance dynamic programming language for numerical computing''. We employ Julia is to solve the Fokker-Planck equation by the stochastic approach with the use of the corresponding set of ordinary differential equations. We propose the method of parallelizing the algorithm with use of the distributed arrays. We test the speedup and efficiency of the given code with use of the cluster set at the {\'S}wierk Computing Centre and show that Julia is capable of achieving a good performance.

### References

- Rei, L., Carvalho, S., Alves, M., Brito, J., A look at dynamic languages, Tech. report, 2007, Faculty of Engineering University of Porto.
- The Julia Language https://julialang.org/
- Bezanson J. et. al., Julia: A Fresh Approach to Numerical Computing, SIAM Review, vol. 59, 1 (2017) 65-98
- GitHub https://github.com/JuliaLang/julia
- The Jupyter Project, http://jupyter.org/
- J. Bezanson, Abstraction in Technical Computing, Ph.D. thesis, Massachusetts Institute of Technology, MA, 2015.
- Bezanson J., S. Karpinski, V. B. Shah, and A. Edelman, Julia: A Fast Dynamic Language for Technical Computing, preprint, https://arxiv.org/abs/1209.5145 [cs.PL], 2012.
- Lattner C., Adve V., LLVM: A compilation framework for lifelong program analysis & transformation. In: Proceedings of the international symposium on Code generation and optimization: feedback-directed and runtime optimization. IEEE Computer Society, 2004, 75
- Distributed Arrays Packadge https://github.com/JuliaParallel/DistributedArrays.jl
- Risken,H., The Fokkerâ€“Planck Equation Method of Solution and Applications, SpringerVerlag,Berlin,Heidelberg, 1989
- Moraal H , Cosmic-Ray Modulation Equations, Space Science Reviews,2013, vol.176, 299â€“319 http://dx.doi.org/10.1007/s11214-011-9819-3
- Parker E. The passage of energetic charged particles through interplanetary space, Planetary and Space Science, 1965, vol.13, 9-49
- Wawrzynczak A., Alania M.V., Numerical Solution of the Time and Rigidity Dependent Three Dimensional Second Order Partial Differential Equation, Lecture Notes in Computer Science, 2010, vol.6067, pp. 105â€“114, http://dx.doi.org/10.1007/978âˆ’3âˆ’642âˆ’14390âˆ’81_2
- Wawrzynczak A, Modzelewska R and Gil A, Stochastic approach to the numerical solution of the non-stationary Parkerâ€™s transport equation, Journal of Physics: Conference Series, 2015, vol. 574, 012078,http://dx.doi.org/10.1088/1742-6596/574/1/012078
- Wawrzynczak A, Modzelewska R and Gil A, The algorithms for forward and backward solution of the Fokker-Planck equation in the heliospheric transport of cosmic rays, Lecture Notes in Computer Science,2018, vol. 10777, 14â€“23, http://dx.doi.org/10.1007/978-3-319-78024-5-2
- Gardiner C.W., Handbook of stochastic methods. For physics, chemistry and the natural sciences, Springer Series in Synergetics, 2009
- Kloeden P E, Platen E, Schurz H , Numerical solution of SDE through computer experiments, Springerâ€“Verlag Berlin Heidelberg, 1992
- Alania M. V., Stochastic Variations of Galactic Cosmic Rays, Acta Physica Pol. B, 2002, vol.33(4), 1149â€“1166
- Cluster Manager Packadge https://github.com/JuliaParallel/ClusterManagers.jl
- Amdahl, G.M., Validity of the single-processor approach to achieving large scale computing capabilities, in: Proc. Am. Federation of Information Processing Societies Conf., AFIPS Press, (1967) 483-485.