ZERNIPAX: A Fast and Accurate Zernike Polynomial Calculator in Python

Fuente: arXiv
Guardado en:
Detalles Bibliográficos
Autores principales: Elmacioglu, Yigit Gunsur, Conlin, Rory, Dudt, Daniel W., Panici, Dario, Kolemen, Egemen
Formato: Preprint
Publicado: 2024
Materias:
Acceso en línea:
Etiquetas: Agregar Etiqueta
Sin Etiquetas, Sea el primero en etiquetar este registro!
_version_ 1866918215089651712
author Elmacioglu, Yigit Gunsur
Conlin, Rory
Dudt, Daniel W.
Panici, Dario
Kolemen, Egemen
author_facet Elmacioglu, Yigit Gunsur
Conlin, Rory
Dudt, Daniel W.
Panici, Dario
Kolemen, Egemen
contents Zernike polynomials serve as an orthogonal basis on the unit disc, and have proven to be effective in optics simulations, astrophysics, and more recently in plasma simulations. Unlike Bessel functions, Zernike polynomials are inherently finite and smooth at the disc center (r=0), ensuring continuous differentiability along the axis. This property makes them particularly suitable for simulations, requiring no additional handling at the origin. We developed ZERNIPAX, an open-source Python package capable of utilizing CPU/GPUs, leveraging Google's JAX package and available on GitHub as well as the Python software repository 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 performing more accurately for high-mode numbers.
format Preprint
id arxiv_https___arxiv_org_abs_2409_19156
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle ZERNIPAX: A Fast and Accurate Zernike Polynomial Calculator in Python
Elmacioglu, Yigit Gunsur
Conlin, Rory
Dudt, Daniel W.
Panici, Dario
Kolemen, Egemen
Performance
Zernike polynomials serve as an orthogonal basis on the unit disc, and have proven to be effective in optics simulations, astrophysics, and more recently in plasma simulations. Unlike Bessel functions, Zernike polynomials are inherently finite and smooth at the disc center (r=0), ensuring continuous differentiability along the axis. This property makes them particularly suitable for simulations, requiring no additional handling at the origin. We developed ZERNIPAX, an open-source Python package capable of utilizing CPU/GPUs, leveraging Google's JAX package and available on GitHub as well as the Python software repository 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 performing more accurately for high-mode numbers.
title ZERNIPAX: A Fast and Accurate Zernike Polynomial Calculator in Python
topic Performance
url https://arxiv.org/abs/2409.19156