2025年3月号
特集 主役登場
固体電子系の実時間量子ダイナミクスシミュレーションとハイパフォーマンス・コンピューティング
篠原 康
NTT物性科学基礎研究所
主任研究員
大学院入学後から現在まで、光による電子ダイナミクスのシミュレーションを軸に研究してきました。本稿の執筆を機に振り返ったところ、研究対象や共同研究、成果発信方法は変わっても、シミュレーション内容自体はほとんど変わっておらず驚きました。キャリアの初期には全く重視していなかった、技術や経験の特殊性こそが私の研究キャリアを大きく支えてくれたことを実感しています。
技術や個別の経験は、論文では割愛されることが多く、記録に残りにくいものです。本稿では、私が取り組んできたハイパフォーマンス・コンピューティングの計算技術の内情を紹介し、研究内容に興味を持っていただくきっかけとなればと思います。
量子ダイナミクスのシミュレーションは、基本的に時間依存シュレーディンガー方程式(TDSE: Time-Dependent Schrödinger Equation)iψ=ĥ(t)ψを数値的に解きます。電子の量子ダイナミクスでは、波動関数ψは空間座標と時間を引数に持ちます。ほかの科学技術計算と同様、TDSEの連続変数は何らかのかたちで離散化され、それを基に計算コードが記述されます。この離散化により、波動関数ψは時間依存のM次元列ベクトルに、ハミルトニアンĥはM×M行列になります。この離散化の妥当性を議論する際には科学的知識が重要ですが、いったん離散化されたTDSEが得られれば、その後は微分方程式をどれだけ精度良く高速に解けるかという単純(ながら難しい)タスクに集中することになります。TDSEを解く計算コストの大部分は、ハミルトニアンと波動関数の行列ベクトル積に由来し、これを繰り返し実行して時間発展を行います。
計算コストを具体的に見積もってみます。私がよく用いていた第一原理計算手法の1つである時間依存密度汎関数理論(TDDFT: Time-Dependent Density-Functional Theory)では、粒子数Nの分だけ単一電子に対するTDSEを解く必要があります。TDSEの離散化に空間のグリッド化を採用すると、素行列となるハミルトニアンの行列ベクトル積の計算コストはベクトル次元Mに比例するので、TDDFTの計算コストはLMNに比例します。大学院時代のシミュレーションでは(L,M,N)=(40000,163,243)の規模で、複素数演算の回数はおよそ1013回です。この計算を共同利用研究施設のスーパーコンピュータを使用して512コアで並列計算を行い、約20時間で実行しました。私が当時開発したコードとその技術の一部がSALMONプロジェクト(https://salmon-tddft.jp/jp/index.html、筑波大学の矢花一浩教授を中心とするメンバが開発)に受け継がれています。
並列計算はタスクを複数CPUに分担し速度向上を図る技術で、専用コードの開発が必要です。私たちのケースでは、波動関数ψiのiのインデックスでタスクを分割しました。一般に並列計算コードを開発する際には、タスクの分割法に応じた、計算効率、データ通信コスト、メモリ使用量、そして実機での計算可能性を検討する必要があります。クラスタ計算機やスーパーコンピュータを用いた大規模な並列計算は、ハイパフォーマンス・コンピューティング(HPC)と呼ばれる分野で、盛んに研究されています。数理モデルと問題規模によって並列化の方針はある程度決まりますが、多くの場合、個別事例の経験に基づく技術が重要な役割を果たします。こうした技術が参入障壁となることで、私がTDDFTによる量子ダイナミクスシミュレーションで研究の第一線にとどまることができていると考えています。
最後に、TD-qHF(quasi Hartree−Fock)法との関係についても簡単に説明します。TD-qHF法の元となったTD-HF法はTDDFTと類似の方程式を解きますが、ハミルトニアンを波動関数に演算する個所がMN2に代わり、全コストはLMN2に比例します。著しく大きな計算コストに打ち勝つため、スーパーコンピュータ「富岳」級の環境を念頭に、並列アルゴリズムの開発とコード実装に取り組んできました。このコードはまだ開発途中ですが、培った技術をTD-qHFに適用することで「解ききった」結果を出せました。TD-qHFは高度で先端的な理論というわけではありませんが、蓄積された技術を用いて精度よく解ききった点が、科学技術の中で重要な意義を持つと私は考えています。
引き続きこれまで培った固体電子系の実時間量子ダイナミクスシミュレーションを駆使して、高速光デバイスの新原理探求に勤しんでいきたいと思います。
