F!wz{i6\h 為您的
光學(xué)仿真提供最大的多功能性是我們的宗旨之一。在本文檔中,我們將向您展示如何編寫自定義表面:即如何定義高度函數(shù)h(x,y)。該
函數(shù)是在
參數(shù)化平面上用x,y坐標(biāo)來(lái)表示3D表面。我們可以使用這些表面來(lái)配置
系統(tǒng)中的光學(xué)組件。在
VirtualLab的默認(rèn)模板中,我們提供最基本的錐形表面; 但在本
教程中,我們使用球面作為簡(jiǎn)單的
編程示例。
^}B,0yUu' mpMAhm: $R1I(sJ 可編程界面所在位置:目錄
p2{7+m +ovK~K$A @2)nhW/z6 提示:您可以在界面目錄中保存自定義界面“customized interface”(作為用戶自定義“User Defined”)供以后使用。
4]ni-u0* m(6d3P 可編程界面所在位置:組件
A>1$?A8Q q`b6if" ;54NQB3L vjlN@
" '#Au~5 編寫代碼
?YLq
iAA _y_}/ 7MLLx#U •右側(cè)面板顯示了可用的獨(dú)立參數(shù)列表。
aQtd6L+ J •x和y表示獨(dú)立變量,即平面上的2D坐標(biāo)。
+*:mKx@Nw •由孔直徑X“ApertureDiameterX”和孔直徑Y(jié)“ApertureDiameterY”(兩者都在界面的常規(guī)配置對(duì)話框中確定)來(lái)定義x和y的間隔。
MQ-u9=ys •主函數(shù)中的代碼必須每x,y點(diǎn)返回一個(gè)雙
精度“double”類型的值。該值表示該點(diǎn)的高度。所有這些高度值的集合定義了3D表面。
MK=oGzK •使用Snippet Body將支持函數(shù)中的部分代碼分組。
At4\D+J{Vs og5VB \7r0]& _ O
{1" I 提示:全局參數(shù)(Global Parameters),代碼段幫助(Snippet Help),高級(jí)設(shè)置選項(xiàng)卡(Advanced Settings tabs)和界面的其他方面與VirtualLab中的其他可編程元素具有等效功能。
pOc2V t?4H9~iH 表面梯度的定義
LV^^Bd8Ct %
/VCjuV ` 3qf}=Z` •精確計(jì)算界面的梯度是光學(xué)仿真的基礎(chǔ)。
alaL/p{O •VirtualLab中的可編程界面允許兩種不同的梯度定義模式:數(shù)值模式,具有可調(diào)精度(由
軟件自動(dòng)執(zhí)行)或解析模式(由用戶另外編程)。
K)7T]z` ZH_$Q$9 ,,gMUpL7_8 用戶自定義的表面梯度
X8$Mzeq ,X4+i8Yc s)a-ky(