如何在VirtualLab Fusion中使用可編程光源及示例(高斯光束)
摘要
為光學仿真提供最大的功能多樣化是我們的最基本目標之一。在本文檔中,我們將展示如何在VirtualLab Fusion中使用可編程光源:一種對自定義基本光源模型空間相關性的定義方法,其可用于如完全相干光源,單色光源的建模;或者是一個更復雜的單模形式(可能是一個部分空間相干或者復色的)。盡管高斯光是一種已經包含在VirtualLab Fusion中的光源模型,但我們在此處仍然使用其用為一個簡單的編程示例。
1. 如何查找可編程光源:目錄
2. 如何查找可編程光源:光學系統
3. 編寫代碼
? 右邊的面板顯示了可用的獨立參數列表。
? Wavelength 讀取光源配置對話框中Spectral Parameters標簽內的單一波長或頻譜。
? RefractiveIndex 讀取嵌入材料對于指定波長的的復數折射率。嵌入材料可在Basic Parameters標簽下定義
? Distance 可由配置對話框中讀取另一個參數,此次是從Basic Parameters標簽:到輸入平面的距離。這是一個重要的參數,例如,在點源的情況下,光源場不能在出射點精確定義。
? Jx和Jy 是瓊斯偏振矢量的復值分量。如果我們將代碼中定義的函數表示為U(x, y),那么最終從光源平面發出的場分量是Ex = Jx U(x, y)和Ey = Jy U(x, y)
? x和y 表征二維光源平面。分別是平面上掃描的坐標。
? 主函數中代碼的返回值必須是一個關于每個x和y點的復合值。所有這些值組成了函數U(x, y)。
? 使用代碼片段主體將部分代碼分組到子函數中。
4. 輸出
? 輸出是一個復值函數表征最終電場分量U(x, y)的空間分量。
? 麥克斯韋方程的一個結論是,在均勻介質中,六個電磁分量中的定義兩個就足夠了,其余四個可以從方程中得到。不失一般性地,VirtualLab選擇Ex和E y兩個獨立分量。在可編程光源中,它們定義為Ex = J x U(x, y)和Ey = Jy U(x, y)。
? 因此,自定義光源的輸出是一個電磁場,其空間部分由代碼定義,并按照光譜參數選項卡的光譜疊加組成。
? 被定義的場可以用作光學系統中的獨立光源,也可以保存在目錄中,也可以在更復雜光源中作為基本模式。
5. 采樣
? 代碼對光源場函數是解析地定義,使編程函數的精度僅受雙精度的限制。
? 用戶必須確保足夠好的采樣以保證其編寫的函數能被分辨。
? 編輯采樣標簽以達成該采樣目的。
? 請注意:采樣可依據所定義的全局參數的實際值定義。
編程一個高斯光束
1. 高斯光束
當電場分量正交與給定的主傳輸方向,該電磁場可描述為一個基本的高斯光束。其束腰可由形式的數學表達式為:
2. 如何查找可編程光源:目錄
3. 如何查找可編程光源:光學系統
4. 可編程光源:全局參數
? 一旦打開編輯對話框,可轉到全局參數選項卡。
? 在此處,添加和編輯兩個全局參數:
- double WaistRadiusX = 1 mm (0mm, 1 m):高斯光束的半徑,在x方向束腰。
- double WaistRadiusY = 1 mm (0 mm, 1 m):高斯光束的半徑,在y方向的束腰。
5. 可編程光源:代碼段幫助
? 可選:您可以使用Snippet Help編寫指令、說明以及與代碼片段關聯的一些元數據。
? 此選項非常有助于跟蹤您可編程元件的進展。
? 這對于其他用戶后期處理可編程元件尤其有用。
6. 可編程光源:編寫代碼
7. 可編程光源:調整采樣和窗口
8. 可編程光源:使用你的代碼段
9. 測試代碼!
10. 文件和技術信息
更多資料:
- Customizable Help for Programmable Elements
- Programmable Light Source, Function, Interface and Medium
- Programming Radially & Azimuthally Polarized Sources
工程師必備
- 項目客服
- 培訓客服
- 平臺客服
TOP




















