概要
DeePTB は、単一の事前学習済み予測器ではなく、深層学習を用いた電子構造モデルを構築するための統合 Python パッケージです。ドキュメントに記載された対象範囲には、タイトバインディングモデル、Kohn–Sham ハミルトニアン、密度行列が含まれます。材料モデリングのワークフローでは、電子構造計算や後続の解析に使う、学習済みの電子表現を提供します。README では、小規模系で学習したモデルをより大きな構造に適用すること、構造の摂動を扱うこと、分子動力学と連携して有限温度シミュレーションを行うことが説明されています。
このパッケージには、主に2つのモデリングコンポーネントがあります。DeePTB-SK は局所原子環境を用いて、ニューラルネットワークによる補正により Slater–Koster タイトバインディングパラメータ化を調整します。基底関数系と交換相関汎関数の選択を設定でき、スピン軌道相互作用にも対応します。DeePTB-E3 は E3 等変ネットワークを用いて量子演算子を表現します。これには、完全な原子軌道線形結合(LCAO)基底における DFT ハミルトニアン、密度行列、重なり行列が含まれます。ドキュメントに記載されたアーキテクチャには、局所化された等変メッセージパッシングと、高次軌道向けの SO(2) 畳み込みが含まれます。
付属のバンド計算例では、モデルチェックポイント、structure.vasp ファイル、band.json 設定を入力として使用し、指定した出力ディレクトリに結果を書き込みます。生成されたハミルトニアンは、NEGF 量子輸送向けの別個の関連パッケージである DPNEGF に渡すこともできます。出典の抜粋には、完全な学習データスキーマの説明や、特定の材料に対する精度の実証はありません。運用上の制約として、互換性のある PyTorch および torch-scatter のバイナリが必要です。また、オプションの Julia/Pardiso バックエンドは Linux のみで、Windows では WSL2 の利用が提案されています。README は本番利用前のインストールテストを推奨しており、記載された互換性テストでは公開済みパッケージのインストールは対象外だったとしています。
主な機能
- DeePTB-SK は、局所環境に依存する Slater–Koster タイトバインディングモデルを提供します。ニューラルネットワーク補正を行い、基底関数系と交換相関汎関数の選択を設定できます。
- DeePTB-SK は、強いスピン軌道相互作用の影響がある系に対応します。
- DeePTB-E3 は、E3 等変ニューラルネットワークを用いて、完全な LCAO 基底で DFT ハミルトニアン、密度行列、重なり行列を表現します。
- DeePTB-E3 は、局所化された等変メッセージパッシングと SO(2) 畳み込みを取り入れ、高次 LCAO 軌道を扱います。
- 生成されたハミルトニアンは、NEGF 量子輸送計算向けの別個の関連パッケージ DPNEGF と連携できます。
- オプションの Julia/Pardiso バックエンドは、設定ファイル、モデルチェックポイント、原子構造を用いたバンド構造計算に対応します。
用途
- 評価案:代表的な摂動構造について、DeePTB-SK の電子構造予測を参照計算と比較します。関連する場合はスピン軌道相互作用も含めます。
- 評価案:適切な LCAO 参照基底を持つ材料について、DeePTB-E3 のハミルトニアン、密度行列、または重なり行列の表現を評価します。
- 評価案:小規模系の学習例から、より大きな構造や有限温度研究に関係する分子動力学構造へ適用した場合の転移性を評価します。
- 評価案:生成されたハミルトニアンを DPNEGF に渡し、選択した量子輸送問題に適するかを評価します。
使い方
- 公式ドキュメントを読み、必要なタイトバインディングモデルまたは量子演算子表現に応じて DeePTB-SK か DeePTB-E3 を選択します。データを準備する前に、関連する基底関数系の選択肢とチュートリアルの入力を確認してください。
- リポジトリのインストールの項を参照します。ドキュメントに記載された Python、Git、UV の要件と、該当する場合は GPU ドライバーの要件を確認してください。単独で使用する場合は、推奨されているソースインストール方法を優先してください。
- ドキュメントに記載された環境設定と有効化の手順に従います。本番利用前に付属のユニットテスト手順を実行し、失敗があれば、インストールが使用可能だと決めつけずに原因を調べてください。
- ドキュメントを参照して、選択したワークフローに必要な準備をします。例示されている Pardiso によるバンド計算では、モデルチェックポイント、band.json 設定、structure.vasp 入力、出力ディレクトリを特定し、バックエンドが Linux のみに対応する点を確認してください。
- 対象材料の参照電子構造計算と比較して結果を評価します。輸送計算が必要な場合は、DPNEGFを別途参照してください。成果を報告する際は、README にあるコンポーネント別の引用案内に従ってください。