Simulation of partially coherent light propagation using parallel computing devices

Tiago E. C. Magalhães, J. Rebordão
{"title":"Simulation of partially coherent light propagation using parallel computing devices","authors":"Tiago E. C. Magalhães, J. Rebordão","doi":"10.1117/12.2272339","DOIUrl":null,"url":null,"abstract":"Light acquires or loses coherence and coherence is one of the few optical observables. Spectra can be derived from coherence functions and understanding any interferometric experiment is also relying upon coherence functions. Beyond the two limiting cases (full coherence or incoherence) the coherence of light is always partial and it changes with propagation. We have implemented a code to compute the propagation of partially coherent light from the source plane to the observation plane using parallel computing devices (PCDs). In this paper, we restrict the propagation in free space only. To this end, we used the Open Computing Language (OpenCL) and the open-source toolkit PyOpenCL, which gives access to OpenCL parallel computation through Python. To test our code, we chose two coherence source models: an incoherent source and a Gaussian Schell-model source. In the former case, we divided into two different source shapes: circular and rectangular. The results were compared to the theoretical values. Our implemented code allows one to choose between the PyOpenCL implementation and a standard one, i.e using the CPU only. To test the computation time for each implementation (PyOpenCL and standard), we used several computer systems with different CPUs and GPUs. We used powers of two for the dimensions of the cross-spectral density matrix (e.g. 324, 644) and a significant speed increase is observed in the PyOpenCL implementation when compared to the standard one. This can be an important tool for studying new source models.","PeriodicalId":150522,"journal":{"name":"Applications of Optics and Photonics","volume":"1 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2017-08-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Applications of Optics and Photonics","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1117/12.2272339","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 1

Abstract

Light acquires or loses coherence and coherence is one of the few optical observables. Spectra can be derived from coherence functions and understanding any interferometric experiment is also relying upon coherence functions. Beyond the two limiting cases (full coherence or incoherence) the coherence of light is always partial and it changes with propagation. We have implemented a code to compute the propagation of partially coherent light from the source plane to the observation plane using parallel computing devices (PCDs). In this paper, we restrict the propagation in free space only. To this end, we used the Open Computing Language (OpenCL) and the open-source toolkit PyOpenCL, which gives access to OpenCL parallel computation through Python. To test our code, we chose two coherence source models: an incoherent source and a Gaussian Schell-model source. In the former case, we divided into two different source shapes: circular and rectangular. The results were compared to the theoretical values. Our implemented code allows one to choose between the PyOpenCL implementation and a standard one, i.e using the CPU only. To test the computation time for each implementation (PyOpenCL and standard), we used several computer systems with different CPUs and GPUs. We used powers of two for the dimensions of the cross-spectral density matrix (e.g. 324, 644) and a significant speed increase is observed in the PyOpenCL implementation when compared to the standard one. This can be an important tool for studying new source models.
用并行计算装置模拟部分相干光的传播
光获得或失去相干性,相干性是为数不多的光学可观测物之一。光谱可以由相干函数导出,理解任何干涉实验也依赖于相干函数。在这两种极限情况(完全相干或非相干)之外,光的相干性总是部分的,并且随传播而变化。我们实现了一个代码来计算部分相干光从源平面到观测平面的传播使用并行计算设备(PCDs)。在本文中,我们只限制在自由空间中的传播。为此,我们使用了开放计算语言(OpenCL)和开源工具包PyOpenCL,它允许通过Python访问OpenCL并行计算。为了测试我们的代码,我们选择了两个相干源模型:一个非相干源和一个高斯谢尔模型源。在前一种情况下,我们分为两种不同的源形状:圆形和矩形。结果与理论值进行了比较。我们实现的代码允许在PyOpenCL实现和标准实现之间进行选择,即仅使用CPU。为了测试每个实现(PyOpenCL和标准)的计算时间,我们使用了几个具有不同cpu和gpu的计算机系统。我们对交叉谱密度矩阵的维度使用了2的幂(例如324,644),并且与标准实现相比,PyOpenCL实现的速度显著提高。这是研究新源模型的重要工具。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信