{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/pywolf-a-pyopencl-implementation-for","title":"PyWolf: A PyOpenCL implementation for simulating the propagation of partially coherent light","arxiv_id":"2203.02734","date":"2022-03-05","proceeding":null,"authors":["Tiago E. C. Magalhães","José M. Rebordão"],"abstract":"We present PyWolf, an open-source software capable of performing numerical simulations of partially coherent light propagation from two-dimensional light sources. PyWolf computes the evolution of a user-defined cross-spectral density function in the Fresnel and far field approximations, which enables the retrieval of second-order optical quantities of interest such as the spectral degree of coherence and spectral density for a given frequency. The open-source tool kit PyOpenCL is used to increase the computation speed. We present examples of propagation of different source models and optical systems to validate our implementation. Performance results for the computation speed when using parallel computation through PyOpenCL is shown. Source models and propagation systems can be easily added to PyWolf, which has a graphical user interface built with PyQt5. This software can be of great utility for partially coherent light simulation problems that are difficult to treat analytically.","url_abs":"https://arxiv.org/abs/2203.02734v1","url_pdf":"https://arxiv.org/pdf/2203.02734v1.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"links_only","authors_date_abstract":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license), from the Kaggle arXiv metadata snapshot of 2026-09-12"},"code_links":[{"paper_slug":"pywolf-a-pyopencl-implementation-for","repo_url":"https://github.com/tiagoecmagalhaes/pywolf","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"none","reach":null}],"tasks":[],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":null,"mcp":null,"developers":"https://syntology.ai/developers"},"arxiv_metadata":null,"syntology_extracted_results":null}