ZERNIPAX: A Fast and Accurate Zernike Polynomial Calculator in Python

Yigit Gunsur Elmacioglu,Rory Conlin,Daniel W. Dudt,Dario Panici,Egemen Kolemen
2024-09-28
Abstract:Zernike Polynomials serve as an orthogonal basis on the unit disc, and have been proven to be effective in optics simulations, astrophysics, and more recently in plasma simulations. Unlike Bessel functions, they maintain finite values at the disc center, ensuring inherent analyticity along the axis. We developed ZERNIPAX, an open-source Python package capable of utilizing CPU/GPUs, leveraging Google's JAX package and available on <a class="link-external link-https" href="https://github.com/PlasmaControl/FastZernike.git" rel="external noopener nofollow">this https URL</a> as well as PyPI. Our implementation of the recursion relation between Jacobi polynomials significantly improves computation time compared to alternative methods by use of parallel computing while still preserving accuracy for mode numbers n>100.
Performance
What problem does this paper attempt to address?