Python會話中,幾乎所有Lumerical腳本語言都可以當(dāng)作方法使用,lumapi中定義的方法和Lumerical腳本命令具有相同的名稱,在創(chuàng)建會話后可以直接調(diào)用。例如上一節(jié)提到過的添加矩形:
fdtd.addrect()??#addrect加上括號成為Python方法
定義在lumapi中的方法,都可以使用help( )函數(shù)獲取幫助文檔,例如,如果想知道addfdtd( )的使用方法,只需在終端運行:
fdtd?=?lumapi.FDTD()help(fdtd.addfdtd)
就會得到下面圖1所示的信息。
在.lsf腳本中使用的運算符不能在Python中重載,下面這些代數(shù)、邏輯符號無法被直接訪問[1],所以在編程過程中需要注意Python運算符的用法:
在編程時需要注意兩種語言的區(qū)別,類似的差異還有很多,例如Lumerical中使用'?'運算符后面加變量,就可以輸出該變量的值,但是在Python中,要使用print( )函數(shù)完成這一操作。
Lumerical和Python的數(shù)據(jù)類型在相關(guān)的操作、方法和訪問方式上也會有所不同,有關(guān)如何在環(huán)境之間傳遞數(shù)據(jù)類型的摘要,請參閱[2]和[3]中的詳細敘述,有關(guān)Lumerical數(shù)據(jù)類型和訪問的信息,請參閱[4]中的詳細敘述,內(nèi)置Python類的詳細手冊也可以在[5]中找到,本文不再贅述。Lumerical腳本語言在許多方面與Python有相近之處,有些用法又近似于matlab,了解三者之間的共性和差異,才能更好地運用這些工具。下一節(jié)將介紹Lumerical和Python在lumapi接口上的數(shù)據(jù)傳遞。
參考:
[1]https://optics.ansys.com/hc/en-us/articles/360041579954
[2]https://optics.ansys.com/hc/en-us/articles/360043683873
[3]https://optics.ansys.com/hc/en-us/articles/360043683073
[4]https://optics.ansys.com/hc/en-us/articles/360034409554
[5]https://docs.python.org/3/library/stdtypes.html