Community研究與資料分析github.com

材料專案工作流程

根據研究目標規劃並執行專案特定的 ML、VASP 與 HPC 材料計算,包括選取、回復、監控與產生可用結果。適用於計算材料專案規劃或主動計算;AiiDA 為選用。

材料專案工作流程 是什麼?

這個技能「材料專案工作流程」旨在將一個計算材料科學的研究目標轉化為結構化的、可操作的計算工作流程。它明確聚焦於 ML 勢能面篩選、VASP DFT 計算與 HPC 工作排程,並強調自動化與研究者的關鍵決策點之間取得平衡。該技能會根據提示的具體範圍動態縮放工作量:針對小規模編輯,它會檢查相關設定並重複使用現有工具;對於較大的專案,它則會引導建立專屬的 `WORKFLOW.md` 檔案。支援的平台包括 Claude Code 與 Codex(透過組態資料夾),並利用一份可選的 `DEFAULT.md` 來捕捉使用者的偏好。其核心原則是保持資料產品的可追溯性,在可行時自動從中斷中恢復(包括 HPC 逾時),並在無法恢復時診斷問題。DFT 輸入的準備有嚴格的閘道控管:只有在新路徑或新站點上才會要求進行人工審查一份代表性草稿,之後在相同方法下的後續任務則可自動執行。該技能會強制執行嚴格的收斂標準(預設 fmax = 0.01 eV/Å),並明確禁止在未經研究者確認的情況下進行粗 ML 篩選。它會維護一個精簡的 `STATUS.md` 來追蹤待辦事項、異常、進行中的工作與里程碑,並提供用於處理 VASP 恢復、CI-NEB 計算、Wannier 模型與拓撲不變量的專門參考資料。

相容平台✓Claude Code✓Codex CLI~Cursor
npx skills add https://github.com/ma455173220/materials-project-workflow-skill/tree/HEAD/skills/materials-project-workflow

Installed? Explore more 研究與資料分析 skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

在你喜歡的 AI 中提問

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

說明文件

材料專案工作流程 是做什麼的?

從研究目標和專案的實際檔案、結果、任務與指令開始。當下一步行動明確且在研究者確認的範圍內時,就直接執行。否則,提出一條簡短的路徑:每個階段要回答什麼、哪些結果能推進進度,以及在何處研究者必須選擇科學上的替代方案。僅詢問下一步的問題,並不代表自動核准未經選擇的科學設定或額外的計算。使用使用者的提示語言與專案慣例。不要讓入職訪談成為執行小任務的先決條件。

根據請求來調整工作量。對於小規模編輯,檢查受影響的設定與當前記錄,重複使用既有工具,並執行與該變更有關的檢查。只有在有新證據或行動要求時,才重新讀取未變更的材料或重複執行已驗證的備份/已接受結果評估。為具體的重複性需求建立輔助工具,而不是為每次參數變更都建立。遵循現有的專案契約;此技能不要求新的稽核框架或重複的授權文件。

如果存在,請讀取研究者儲存的預設值:位於代理程式組態資料夾中的 materials-project-workflow/DEFAULT.md(對於 Codex 為 $CODEX_HOME,通常是 ~/.codex;對於 Claude Code 為 ~/.claude)。此預設值代表該使用者的偏好,而非專案權威;僅在技能有明確說明時,它才能代替研究者的決定,而且專案可以覆蓋它。當研究者首次接觸一個沒有儲存預設值的實質專案時,邀請他們描述其慣用工作流程,建議改進,僅儲存他們為未來專案選擇的路徑;對於一次性任務則繼續進行,無需此設定。個人預設範例展示了 2D 吸附的儲存預設值可能包含的內容;僅在研究者的預設值或專案選擇了這些設定時才套用它們。對於新專案,使用可選大綱在簡短的專案 WORKFLOW.md 中記錄所選階段、候選物數量、工具、有意義的輸入設定、備份目的地/保留策略與審查點;僅在選定階段需要未知功能時才詢問。後續專案確認差異,而非重複已確立的偏好。

預設情況下,直接將所有 ML 候選物優化至 fmax = 0.01 eV/Å,然後選擇結構,每個結構使用 3000 個累積最佳化步驟,除非研究者選擇了其他的力收斂標準或步驟限制。從一開始就將實際執行器設定為此限制,並在收斂時提前完成,不規劃短步執行。無論使用何種 ML 工具(來自儲存預設值或專案選擇),請遵循其手冊來執行,並將力收斂標準和步驟限制明確寫入每個複製的執行器中;工具自身的預設值不能取代它們。此技能(而非工具手冊)設定力收斂標準、步驟上限(提高上限需要研究者同意)、候選物選擇、審查、監控、記錄與 STATUS;使用排程的後續追蹤,而非手冊中的會期間輪詢,但本地啟動檢查除外。工具自有的傳送至 DFT 清單僅為提案;套用專案約定的候選物數量與多樣性規則,並記錄任何差異。在剩餘配額內自動恢復真正的中斷(包括執行時間逾時),無需導入 DFT 重新啟動審查閘道:使用工具的重啟功能(如果存在);如果沒有,則從單一結構的最後儲存結構繼續,僅使用其剩餘步驟。如果重啟失敗,或批次無法承載每個結構的剩餘步驟,則進行診斷並回報,而不是設法繞過。不要自動添加粗略的 ML 篩選;可以為特定專案選擇其他路徑。對於本地 ML,使用受限資源使用保持桌面回應性。根據實際硬體、當前負載以及互動或專用使用情況選擇本地資源;重複使用已驗證的機器設定檔,考慮其他專案,並在提高輸送量之前確認有效的工人/執行緒設定與記憶體餘裕。資源壓力應觸發自動節流,而非降低科學設定。

將對於新路徑和站點的首次 HPC 輸入準備作為研究者審查點。解釋所提出的方法、測試/最佳化序列、資源、每任務執行時間與最大重啟次數,並附上簡短理由;區分已約定的選擇與提案。對目標(如塊體最佳化)的協議或提供 HPC 路徑/腳本,並不代表自動核准未經選擇的方法、額外的測試、帳戶或預算。在排程整個系列或提交任務之前,準備一個實際的代表性草稿供人工審查:結構、INCAR、KPOINTS、POTCAR 身分與生成方法、可執行檔、適配的站點腳本、資源與工作範圍。可以使用專案授權的讀取和 POTCAR 生成來使該草稿可審查。優先使用研究者從該 HPC 站點取得的成功腳本;否則,適配該站點的官方範例。保持專案一致的輸入順序與格式,以便 diff 能顯示出有意義的變更。一旦審查通過,相同方法下的相關結構和中間體無需逐任務審查,即使它們的幾何形狀和 POTCAR 組成不同。對於真正新的計算類型或不相關的路徑,審查一個實際範例。已審查的首次輸入不是科學結果或無限的執行授權。研究者的儲存預設值可以僅透過命名工具、站點/帳戶以及每次篩選的成本上限來豁免 HPC ML 篩選的此審查;缺少全部三者則審查適用,且專案可以收緊但不能放寬這些條件(未經研究者同意)。在此類豁免下,在任何篩選的最壞情況成本(每個結構達到步驟上限,包括重啟)可能超過限制之前進行詢問。根據工具的實測輸送量和步驟統計資料設定執行時間,並保留餘裕;在此範圍內的逾時應被重啟,而非規劃為短步執行。在執行記錄中記錄預估和實際成本(核心小時或該站點的單位)。

對於 DFT,在首次輸入審查時確認每個階段的每任務執行時間與每個結構的最大重啟次數。初始任務不計為重啟;在該階段中每次後續的繼續或修正執行(即使在更改目錄或最佳化器之後)都計為一次重啟。在現有執行記錄中記錄使用情況。在這些限制內,診斷後再進行自動繼續。如果最後允許的重啟結束而未通過該階段,在 STATUS.md 中回報診斷,並在再次提交任務之前取得人工審查和明確的延期。收斂的階段正常推進;僅僅達到計數次數不會停止一個其他方面健康的正在執行的任務。遵守任何已約定的額外專案預算。

在所選路徑內執行常規的提交、監控、階段移交與有限度的恢復,無需為每次例行變更暫停。保持一個提交/重試擁有者,並在呼叫排程器之前記錄唯一的嘗試身分以及輸入/腳本的摘要。如果提交結果未知,則將該嘗試隔離:根據執行記錄、佇列、會計記錄與輸出進行比對;squeue 中不存在或 sacct 延遲並不證明沒有任務被接受。在結果被正面確認之前,不要自動重新提交;如果情況仍然不明,則應詢問。對於 VASP 幾何最佳化(粗略或精細,非 CI-NEB 或 IDM),使用研究者預設或專案選擇的最佳化器,否則使用原生 CG(IBRION=2)。關於標籤、驗證、切換與其他失敗,請閱讀最佳化器與恢復指南;在進行有根據的修正前檢查電子與離子趨勢,而非盲目重啟。保留每次嘗試的輸入、輸出與來源。如果一個執行中的任務被確認為 NaN、致命損壞或明顯失控並消耗資源,則保留證據並取消該特定任務;在重新提交前進行診斷。當物理模型、科學目標、最終比較協定、站點/帳戶或約定的執行限制發生變化時,或當材料歧義仍然存在時,進行詢問。僅比較在專案共同能量影響設定下獲得的最終能量。

對於反應路徑與過渡態,請閱讀 CI-NEB/IDM 指南。僅對研究者選擇的路徑執行獨立的頻率驗證執行。IDM 的方向尋找頻率計算是已核准 IDM 恢復的一部分,並非對每個 CI-NEB 結果的自動驗證。

對於 Wannier 緊束縛模型與 Wilson 迴圈,請閱讀 Wannier 指南;對於來自對稱性本徵值(宇稱判據、不可約表示、對稱性指標)的不變量,請閱讀對稱性本徵值指南。

在進行活躍的本地 ML 或 HPC 工作期間,維護一個可在一個畫面內讀取的專案根目錄 STATUS.md:待辦事項、未解決的異常、目前進行中的工作/下一個里程碑,以及一些簡短的近期事件。空的動作/異常部分僅包含「無」;連結詳細的任務、證據與較舊的歷史記錄。使用狀態、監控與目錄指南。首次建立或採用此頁面時,告知研究者它正在使用中,提供可點擊的檔案連結,並簡要說明它追蹤的內容以及是否需要他們採取行動。在每個有意義的工作流程步驟結束時,檢查當前證據,並在結果、需要採取的動作、異常或下一步發生變化時更新 STATUS.md;在報告步驟完成或移交之前執行此操作。未改變的檢查無需重寫檔案。使用連結的指南進行活躍工作排程與存取;保持常規的未改變進展保持安靜,並在工作協調完畢後結束後續追蹤。保持採用的結果能立即被找到,原始證據可追溯,且約定的備份是最新的。請勿在雲端同步的資料夾(如 OneDrive)內建立檔案系統連結;在 HPC 上,使用帶有相鄰 FINAL_CHOICE.md 的 final_choice 符號連結是可以的。

當交給研究者一個 POSCAR/CONTCAR 檔案檢視時,如果其物種行帶有 POTCAR 標籤或雜湊(例如 Ti_sv/0a1b2c3d4,VESTA 無法讀取此類格式),則在其上執行 scripts/clean_poscar_species.py,並指向 _vesta.vasp 副本;原始檔案保持不變。

此技能獨立運作。在適當時使用已驗證的本地/專案工具;AiiDA 是可選的溯源層,絕非先決條件或可讀取檔案的替代品。

相關技能