ZEMAX | 在 ZOS-API 中執(zhí)行系統(tǒng)分析的基本方法
本文討論了如何在 ZOS-API 中使用命令進行分析,以及如何有效提取分析結(jié)果。
OpticStudio 包含 ZOS-API 的大量幫助文檔,您可以在編程選項卡 (Programming tab) 查找:

通過這些文檔可以導航到 ZOSAPI.分析命名空間參考 (ZOSAPI.Analysis Namespace Reference) 找到所有分析命令的列舉情況。

盡管對于某些特定分析有其特有的分析方法,但是常規(guī)方法 New_Analysis() 可用于打開任何分析類型。此方法需要將分析的列舉字符作為輸入。在找到適當?shù)牧信e情況后,您可以使用以下內(nèi)容來進行分析:
my_analysis= TheSystem.Analyses.New_Analysis(ZOSAPI.Analysis.AnalysisIDM.ANALYSIS_ENUMERATOR_HERE);
打開后,通常有兩種方式進行分析設(shè)置的調(diào)整。首先,一些常用分析具有特定分析的設(shè)置界面。一個典型示例是 IAS_FftMtf 。所有分析設(shè)置接口都位于 ZOSAPI. 分析設(shè)置命名空間 (ZOSAPI.Analysis.Settings Namespace) 中。您還可以使用HasAnalysisSpecificSettings 屬性檢查是否您的分析具有設(shè)置界面:
my_analysis.HasAnalysisSpecificSettings
如果命令返回“ 0”,則說明分析沒有完備可用的設(shè)置接口。這意味著無法通過 API 進行分析設(shè)置,而必須通過第二個選項(即 IAS_ModifySettings 命令)進行更改,該命令直接修改用于分析的設(shè)置文件( .cfg 文件):

ModifySettings 命令與 ZPL 中的 MODIFYSETTINGS 關(guān)鍵字的工作方式非常相似。當您打開分析并調(diào)整設(shè)置后,您需要重新運行分析并查閱結(jié)果。您可以使用以下命令進行操作:
my_analysis.ApplyAndWaitForCompletion()
my_analysis.GetResults()
如果您需要使用 ModifySettings(),則還需要調(diào)用 LoadFrom()(完整示例請查閱 API 語法示例文件11)。對于由 GetResults() 方法返回的對象,分析函數(shù)可能具有以下一種或多種可用的結(jié)果類型:

使用 GetResults() 語法將返回一個列出了所有可能的公共成員函數(shù) (Public Member Functions) 的對象,但是僅與您分析相關(guān)的數(shù)據(jù)項會被填充。
對于支持文本輸出的分析類型,還可以使用 GetTextFile() 命令,以便用戶可以保存并手動分析其數(shù)據(jù)。
ZOS-API 語法幫助 (ZOS-API Syntax Help) 包含示例文件,這些文件演示了如何使用ZOS-API 對系統(tǒng)進行分析。
例如,示例代碼11和15使用 IAS_ModifySettings 修改分析的設(shè)置。
· 示例11修改了通用繪圖 (Universal Plot) 的設(shè)置。
· 示例15修改了實體模型 (Shaded Model) 的設(shè)置。
· 示例代碼10和24全面修改了設(shè)置。
· 示例10和24修改了探測器查看器 (Detector Viewer) 的設(shè)置。