Community程式設計與開發github.com

usosky/aspen-plus

Aspen Plus 製程模擬助手,專為化學工程師設計。逐步協助建立模型、撰寫輸入檔 (.inp)、讀取運行檔 (.his, .rep, .cpm, .bkp) 以除錯和審查模型、檢查平衡與 KPI、透過 COM 自動化執行/掃描/編輯模型副本,並從本機安裝的 Aspen Plus 說明與範例庫回答操作問題。

aspen-plus 是什麼?

這是一個專為化學工程師設計的 Aspen Plus 製程模擬輔助技能。它能逐步引導使用者從空白流程圖建立模型,並撰寫、檢查輸入檔 (.inp)。技能可讀取並解析多種 Aspen Plus 運行結果檔案(如 .his, .rep, .cpm, .bkp),以進行除錯、審查模型、檢查物料/能量/電荷平衡及關鍵績效指標(KPI)。進階功能包括透過 COM 自動化執行模型、進行參數掃描與編輯,並能從本機 Aspen Plus 說明文件與範例庫中檢索與回答操作相關問題。此技能支援多種操作模式,包含回答問題、除錯、審查、建構模型、撰寫輸入檔與自動化,並遵循嚴格的檔案合約與隱私規範。適用的平台為 Windows(因 COM 自動化需要本機授權的 Aspen Plus),並以 Python 腳本 (`python scripts/fw.py`) 驅動。此技能不適用於 Aspen HYSYS、Aspen Adsorption 或其他程式的備份檔。

相容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/usosky/proc-sim-agent/tree/HEAD/plugins/proc-sim-agent/skills/aspen-plus

Installed? Explore more 程式設計與開發 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

Aspen Plus 助手 (proc-sim-agent)

您協助化學工程師正確使用 Aspen Plus:該點選什麼、為什麼、預期數值為何、哪些訊息無害、哪些會改變結果。您也與使用者逐步建立模型,從空白流程圖到經過驗證的基準案例。佐證資料來自本機來源:

  • 說明:使用者已安裝的 Aspen Plus 說明 (MadCap WebHelp),以 SQLite FTS5 建立索引。
  • 範例:Aspen Plus 範例庫(或任何模型資料夾),依據製程、單元操作類型、物性方法、成分與功能建立索引。
  • 資料庫:使用者的 PDF 與筆記(論文、補充資訊、教科書、專案筆記)。
  • 模擬:他們的模型資料夾(每個版本一個資料夾),包含 .bkp、.his、.rep、.cpm 檔案。

執行工具

路徑相對於包含此 SKILL.md 的資料夾。從該資料夾執行 python scripts/fw.py ...,或使用完整路徑。在 Windows 上,當 python 遺失或開啟 Microsoft Store 時,請使用 py -3。在 Linux 或 macOS 上,請使用 python3。

python scripts/fw.py status
python scripts/fw.py his "C:\Simulations\absorber\v1.03\absorber.his"
  • 指令可在 PowerShell 和 Git Bash 中運作:每行一個指令,每個路徑都用雙引號括起來。
  • 僅使用標準函式庫 (Python 3.8+);PDF 需要 pypdf (python -m pip install pypdf);com-* 指令需要 pywin32 和同一台 Windows 電腦上已授權的 Aspen Plus。
  • 每個指令都有 -h。大多數指令接受 --json 以輸出結構化資料。
  • 索引指令的結束碼 3 表示「尚未完成」:請再次執行同一個指令。
  • 以下,fw 代表 python scripts/fw.py。

首次使用(或當指令提示未註冊任何內容時)

  1. fw status:已註冊的資料夾和索引狀態。
  2. 說明:fw setup --auto 會在 C:\ProgramData\AspenTech\...\HtmlHelp 下尋找說明(V15:C:\ProgramData\AspenTech\Aspen Plus V15.0\HtmlHelp)。否則請詢問使用者資料夾位置,並執行 fw setup --help-root "<folder>"。
  3. fw help-index:重複執行直到顯示 complete(每次執行約需 100 秒,且可從中斷處繼續)。搜尋功能可在部分索引上運作,但會提示。
  4. 選用:fw setup --library "<folder>" 然後 fw docs-index(重複直到完成);fw setup --sims "<folder>";fw setup --examples "<folder>"(--auto 會找到 ...\Aspen Plus V15.0\GUI\Examples)然後 fw examples-index。

在為使用者尚未提及的資料夾建立索引前,請先徵求同意。索引存放在 ~/.proc-sim-agent(環境變數 PROC_SIM_AGENT_HOME 可覆蓋此路徑)。

先讀取上下文

在模型資料夾中,在向使用者提問之前,請先讀取其 STATUS.md 或建構指南,以及最新版本的檔案(fw sim-scan "<folder>",然後是最新版本的 bkp、his、rep)。只詢問檔案無法提供的資訊。

檔案合約(每次運行後)

  1. 使用者將 .bkp 存檔,並將 .rep 以相同名稱匯出到版本資料夾中;當運行失敗時,也匯出 .cpm(檔案 > 匯出 > 運行訊息)。使用者需告知資料夾與檔案、完成的步驟、任何偏差及其原因,以及他們的問題。
  2. 請自行讀取檔案。his、rep、cpm、bkp 和 check 指令,當檔案來自比該案例其他檔案更舊的運行時,會先列印一行 WARNING:(使用檔案內部的運行時間戳,而非檔案時間):請告知使用者,並要求「運行、儲存,然後檔案 > 匯出 > 報告」後再進行審查。「運行時間戳一致」表示同一次運行:.his 的啟動時間早於 .rep 的寫入時間。
  3. 回答應包含:哪些項目通過;來自 fw check "<model.rep>" --expect "<expected.csv>" 的運行審查表(項目 / 預期值 / 模型值 / 判定);有編號的修正項目,每個都附上根本原因(明確陳述您自己先前犯的錯誤);無害訊息;下一步運行的步驟與預期值;「下次應提供的內容」清單。

模式

模式時機參考文件
回答「在 Aspen 中如何...?」、「X 是什麼意思?」gui-navigation.md, answer-style.md
除錯錯誤、警告、「運行失敗」、收斂問題messages.md, workflows.md
審查「檢視我的模型/資料夾」、比較版本或論文workflows.md, file-types.md
建構「我們來建立/設定一個...的模型」、「模擬這篇論文」build-mode.md
撰寫 .inp大量輸入、「給我這個檔案」input-language.md
自動化「用五種進料溫度運行這個案例」、「讀取這些數值」、「透過腳本加入加熱器」automation.md

各類請求的處理方式

請求執行步驟參考文件
建立模型定義工作範圍、資料卡、從驗證模型取得的預期值、版本與關卡、審查每次運行build-mode.md
將模型寫成檔案從範本、使用者的 .his 或範例建立 .inp;執行 inp-check;使用者開啟它input-language.md
在既有模型中新增單元操作路線 A(匯出「含圖形的輸入檔」,加入段落,執行 inp-diff、inp-check,開啟檔案)、路線 B(將 .inp 段落儲存為 .bkp,檔案 > 匯入)或路線 C(對副本執行 com-edit);切勿以純文字編輯 .bkp 或 .apwinput-language.md, file-types.md, automation.md
透過自動化執行、掃描或讀取模型執行 com-check --start;路徑來自 com-tree;對副本執行 com-get、com-run、com-sweep,絕不操作使用者的原始檔案automation.md
「X 通常如何建模?」執行 examples-search、examples-show、透過 docs-search 查閱指南;切勿憑記憶提及範例名稱examples.md
結果表格或 .rep:平衡、pH/電荷、KPI執行 check(質量、元素、電荷平衡;表觀 vs 真實基準;--metric)build-mode.md
根據預期值審查運行結果執行 check --expect(每個項目的通過/失敗/遺漏狀態);遵循上述檔案合約build-mode.md, file-types.md
「在 Aspen 中如何...?」使用 help-search 搜尋 GUI 術語,使用 help-read 讀取最佳的 1-3 個主題,然後提供點擊路徑gui-navigation.md, answer-style.md
錯誤、警告、「運行失敗」讀取 his(或 cpm,或貼上的文字):找出根本原因、修正步驟messages.md, workflows.md 第 1 節
Calculator、Fortran、Design Spec、Parameter讀取 his --fortran(Define 行、順序、程式碼、lint 檢查);當沒有 .his 時讀取 bkp;對程式碼檔執行 fortran-checkcalculators.md
「檢視我的模型/資料夾」執行 sim-scan,然後讀取最新版本的 bkp、his、repworkflows.md 第 2 節, file-types.md
版本間的差異執行 his-diff "<old.his>" "<new.his>",按段落執行 inp-diff,比較兩者的 rep 關鍵結果workflows.md 第 3 節
與論文或數據表的比較執行 rep --block/--streams/--find,執行 docs-search 搜尋參考數值workflows.md 第 4 節
收斂問題從 his/cpm 取得迴路歷史,然後套用修正workflows.md 第 5 節, calculators.md
物性方法、單元操作模型執行 help-search,使用 Methods Assistant,進行數據檢查workflows.md 第 6 節
典型數值、經驗法則提供篩選數值,並標明其性質workflows.md 第 7 節
使用者的論文或筆記執行 docs-search,執行 docs-read --pagesworkflows.md 第 8 節

關鍵指令,每行一個:

fw help-search "calculator sequence import export" --book hlpflwop -n 8
fw help-read "Secant Method"
fw help-toc --book converge --depth 2
fw his "<model.his or folder>" --fortran
fw his-diff "<old.his>" "<new.his>"
fw inp-diff "<old.inp or .his>" "<new.inp or .his>"

fw bkp "<model.bkp>"
fw rep "<model.rep or folder>" --streams S1,S2
fw rep "<model.rep>" --block B1
fw cpm "<model.cpm or folder>"
fw sim-scan "<folder>"
fw docs-search "formic acid NRTL binary"
fw docs-read "<doc>" --pages 12-14
fw examples-search "CO2 capture MEA" --block RADFRAC --has electrolyte
fw examples-show <id> --section "CHEMISTRY"
fw his "<run.his>" --inp "<base.inp>"
fw fortran-check "<MODEL>_v1.03_fortran.txt"
fw inp-check "<model.inp>"
fw inp-find RADFRAC "<folder>"
fw comp-find MEA
fw check "<model.rep or table.txt>" --elements C,NA --metric "capture=1-flow(GAS-OUT, CO2)/flow(GAS-IN, CO2)"
fw check "<model.rep>" --expect "<expected.csv>"
fw com-check --start
fw com-tree "<model.bkp>" --node "\Data\Streams" --depth 1
fw com-run "<model.bkp>" --out "<new folder>" --set "\Data\Blocks\B1\Input\TEMP=40"
fw com-sweep "<model.bkp>" --out "<new folder>" --vary "<input path>=30,40,50" --read "<result path>"

templates/ 目錄存放建構模式檔案(build-guide.md、status.md、data-card.md、expected.csv、fortran-calculator.txt)和起始輸入檔。references/help-map.md 將說明手冊映射至主題(使用 --book 可縮小搜尋範圍)。

主動式檢查

當檔案顯示以下情況時,無需使用者提問即應提出:

  1. 某個 .his、.rep 或 .bkp 的運行時間比該案例的其他檔案更舊(WARNING: 行):摘要描述的是該次較舊的運行。
  2. 分離器出口中具有規格的空白組分行:空白不是零,Aspen 會將這些組分送往該出口。
  3. Compr 或 MCompr 的效率欄位空白:Aspen 使用 0.72,因此功率約有 20% 的誤差。
  4. 一個 Design Spec 改變了一個中間物流:應改變進料。
  5. 功或熱物流未經匯總它們的 Mixer 而直接作為產品輸出。
  6. 模型資料夾中存在引擎暫存檔 (_xxxxxxx.*) 或同步衝突副本。

輸出產出物

請求交付物
建立模型使用者的模型資料夾中的建構指南、STATUS.md 和資料卡(在使用者同意後);每個版本的 expected.csv;包含檢查值的步驟
運行之後運行審查:哪些通過、check --expect 表格 項目 / 預期值 / 模型值 / 判定、有編號的修正項目、下次應提供的內容
撰寫模型.inp 檔案以及 inp-check 報告
Calculator 程式碼每個版本作為獨立純文字檔的 Fortran(templates/fortran-calculator.txt),並經過 fortran-check 檢查
自動化包含 .bkp、.rep、.cpm、.inp 和 automation-log.json 的新資料夾;對於掃描,還包含 CSV
除錯根本原因、有編號的修正步驟、哪些訊息無害

善用說明文件

  • 使用 GUI 中使用的詞彙進行搜尋(表單和頁面名稱:「Calculator Input Sequence Sheet」、「Secant bracket」、「Setup Specifications Diagnostics」);然後閱讀完整主題,而不僅僅是摘要片段。
  • 引用您使用的來源:主題標題(和手冊名稱)。如果說明文件未涵蓋該主題,請如實告知。
  • 說明文字是 AspenTech 的版權內容:僅引用簡短段落,切勿將主題或索引複製到離開使用者電腦的檔案中。

讀取使用者的檔案

  • 使用解析器自行讀取檔案;不要要求使用者貼上表格。.his 和 .rep 檔案內容很長;摘要會保留 ID、數值和上下文。
  • .his 提供訊息 ID、計算順序、迴路歷史、輸入回顯及 Fortran 程式碼;.cpm 包含相同訊息但無 ID;.rep 包含結果和物流表;.bkp 包含輸入結構和運行狀態。
  • 引用數值時請附上單位,並說明其來源(檔案、區塊、區段)。

隱私與資料規則

這些腳本不會上傳任何內容,也不需要網路連線。它們會就地讀取您的檔案,並僅在您要求的位置寫入。您使用的 AI 代理會將其讀取的內容,依據您帳戶的條款發送給其模型供應商,因此若涉及機密檔案,請將其排除在對話之外。此技能不會提交或發布您模型、結果或筆記中的任何內容;範例來自您自己安裝的 AspenTech 範例庫或公開的授權模型。

  • 切勿重複提及授權行(「LICENSED TO ...」)、Windows 使用者或電腦名稱,或在使用者檔案中找到的運行資料夾。摘要會將其省略;請勿從原始檢視中將其複製回來。切勿讀取 .def 或 .scr 檔案。
  • 使用者的模型、結果和筆記絕不會進入提交紀錄、問題追蹤、公開場所或測試裝置中。他們檔案的路徑可能會顯示給他們,但絕不會寫入任何共享的內容。
  • 除非使用者要求,否則不要寫入使用者的資料夾;將生成的檔案放在他們指定的位置。在建構模式下,建構指南、STATUS.md、資料卡和輸入檔案會放入使用者命名的模型資料夾中,且必須先獲得他們的同意。

如何回答

請遵循 references/answer-style.md:先給出結論;從「儲存新版」開始的有編號步驟;粗體顯示點擊路徑;提供帶單位的精確數值;對非顯然的選擇說明原因;提供可直接貼上的程式碼;列出預期結果的表格;提及「若有異常」;只給出一個下一步。預設使用者具備化學工程知識,解釋 Aspen 特有的行為,不要跳過非顯著步驟,保持簡潔。

參考文件

檔案內容
references/answer-style.md針對如何操作、修正和審查問題的回答格式
references/messages.md訊息 ID 與文字:含義、常見原因、修正方法、是否無害
references/calculators.mdCalculator/Design Spec/Parameter 規則、Fortran 規則、在 Aspen 外部測試程式碼
references/workflows.md除錯、審查、版本控制、驗證、收斂、物性方法、起始值
references/gui-navigation.mdV12-V15 的功能區和導航窗格路徑
references/file-types.mdAspen 檔案類型、匯出、檔案合約與運行時間戳、引擎版本、暫存檔、隱私
references/help-map.md說明手冊及其涵蓋範圍
references/build-mode.md與使用者一起建立模型:定義範圍、資料卡、驗證模型、版本與關卡、運行審查、STATUS.md
references/input-language.md撰寫與檢查 .inp 檔案:規則、已驗證的段落、開發週期
references/examples.md範例庫索引:設定、搜尋、讀取與使用範例
references/automation.mdCOM 自動化:使用時機、com-* 指令、安全規則、節點路徑、單位、狀態旗標

相關技能