計算物理の歴史
数式・アルゴリズム・計算機が科学を拡張してきた道筋
計算物理は、自然現象を支配する数式を計算機上で解き、理論と実験の間に第三の検証空間を作ってきた学問である。歴史をたどると、物理の問いが計算手法を生み、計算機の進歩が新しい問いを可能にし、その循環が科学のスケールを押し広げてきたことが見えてくる。
参考ドキュメント
- 理化学研究所 スーパーコンピュータ京 2012年9月28日から共用開始
https://www.riken.jp/pr/news/2012/20120927/index.html - 理化学研究所 スーパーコンピュータ富岳 2021年3月に共用開始
https://www.riken.jp/pr/news/2021/20210309_2/ - 海洋研究開発機構(JAMSTEC) 地球シミュレータは2002年3月に運用開始
https://www.jamstec.go.jp/es/jp/JAMSTEC運用20周年/
1. 計算物理とは何か
計算物理とは、解析解が得られない、あるいは得られても実用的に扱えない物理法則を、数値近似によって具体的な予測へ落とし込む営みである。対象は古典力学から量子多体系、流体、電磁場、宇宙論まで広いが、共通するのは「モデル化された方程式を、誤差を管理しながら計算で解く」という姿勢である。
理論物理が数式の構造と一般性を追求し、実験物理が測定で自然を直接確かめるのに対し、計算物理は「仮定したモデルが、観測可能量を再現できるか」を大量の計算で突き詰める。とくに多自由度・非線形・多階層の問題では、計算は単なる近似ではなく、現象の理解そのものを形成する道具になってきた。
2. 計算物理を形作る三つの要素
計算物理の発展は、次の三要素の相互作用として整理できる。
2.1 物理モデル
物理モデルは、支配方程式と境界条件・初期条件、そして必要なら有効理論の近似からなる。例えば流体ならナビエ–ストークス方程式、電磁場ならマクスウェル方程式、量子ならシュレディンガー方程式や密度汎関数理論の自己無撞着方程式、格子ゲージ理論なら格子上の作用と測定量である。
モデル化では、どの自由度を残し、どの効果を平均化するかが結果を決める。計算が高精度でも、モデルの仮定が不適切なら観測量を再現しないため、計算物理の歴史は「計算精度」だけでなく「モデルの洗練」の歴史でもある。
2.2 離散化と近似
連続変数で書かれた方程式を計算機で扱うには、空間・時間・確率を離散化する必要がある。最も基本的な例として、1次元の微分を有限差分で近似すると
のように格子点上の値だけで微分を置き換えられる。ここで生じる誤差は打ち切り誤差であり、一般に
時間積分も同様で、例えば陽的オイラー法では
のように次の時刻を計算する。陽的法は簡単だが安定性条件が厳しいことが多い。拡散方程式
のような条件を満たさないと発散しやすい。移流や波動では、CFL条件として
の形が現れ、格子と時間刻みの選択が物理現象の再現可能性を左右する。
2.3 アルゴリズムと計算資源
離散化した結果は、巨大な連立一次方程式、固有値問題、確率過程のサンプリング、あるいは多体相互作用の高速計算として現れる。ここで効くのがアルゴリズムである。例えばポアソン方程式や弾性問題では疎行列が現れ、反復法が本質的になる。粒子系では
計算機の進歩は、真空管からトランジスタ、ベクトル計算機、並列クラスタ、GPU、そして超並列の国家級スーパーコンピュータへと続き、計算物理が扱える自由度を指数関数的に増やしてきた。だが同時に、並列化・メモリ階層・通信の制約がアルゴリズム選択を規定し、計算物理は計算機科学と深く結びついてきた。
3. 1940年代以前:数値計算の基礎が育った時代
電子計算機以前でも、物理には数値計算が不可欠であった。天体力学では摂動論の級数計算が行われ、測地や航海、砲弾軌道などの問題では数表と手計算による反復が実務と研究の両方を支えていた。オイラー法やルンゲ–クッタ法のような常微分方程式の数値積分法、有限差分の考え方は、電子計算機の登場前から数学・天文学・工学の中で培われてきた。
この段階の特徴は、計算が「人間が実行できる範囲」に制約されていた点である。したがって、モデルは計算可能性に合わせて単純化されやすく、現象の本質をどこまで残せるかが常に問題になっていた。この制約が、後の計算機時代に「より現実的なモデルへ進む」強い動機となった。
4. 1940〜1950年代:電子計算機とシミュレーションという発想の成立
4.1 モンテカルロ法の登場
1940年代後半、乱数を用いて積分や輸送現象を評価するモンテカルロ法が提案され、確率的手法が計算物理の中核になり始めた。乱数サンプル
は
のように推定でき、誤差は概ね
4.2 数値天気予報という象徴的成功
1950年には、気象の支配方程式の簡約形を数値積分し、実データに基づく予報を計算機で行う試みが実施された。これは「方程式を解けば未来が出る」という理想を、計算機によって現実の手順へ近づけた出来事である。ここで重要だったのは、方程式の離散化だけでなく、境界条件の扱い、安定性条件、初期値の誤差が予報に与える影響といった、計算物理の基本問題が一気に顕在化した点である。
4.3 衝撃波と数値流体の基礎
同時期、衝撃波を含む流体現象を数値計算するための人工粘性という考え方が整備され、数値的に不連続を扱う基礎が築かれた。連続体方程式は本来滑らかな解を仮定するが、衝撃波では勾配が極端に大きくなり、単純差分は振動や発散を起こしやすい。そこで数値粘性を導入し、エネルギー散逸を模擬して安定に解を追跡するという考え方が、後の衝撃捕獲法や高分解能スキームへつながる。
4.4 反復解法の重要性が見えた時代
1952年には共役勾配法が提案され、大規模な連立一次方程式を反復で解く道筋が明確になった。多くの物理問題は離散化すると疎行列
を解く形になる。直接法は安定だがメモリと計算量が重く、反復法は前処理や条件数に敏感だが、巨大問題で不可欠になる。共役勾配法のようなクリロフ部分空間法は、その後の計算物理の標準道具として定着した。
4.5 FPU問題と非線形現象の計算実験
1950年代前半には、非線形連成振動系を計算機で追跡する試みが行われ、予想に反して熱化せず再帰する振る舞いが観測された。これは非線形系が直感と異なる時間発展を示すこと、そして計算が新しい現象発見の手段になることを強烈に示した。ここからカオス、ソリトン、統計力学の基礎仮定の再検討が加速し、計算物理が「実験の代替」ではなく「新しい観測装置」になりうることが明確になった。
5. 1960年代:アルゴリズムの飛躍と、複雑系の入り口
5.1 カオスと感度の理解
1963年、単純な常微分方程式系でも初期値に対して指数関数的に敏感な挙動が現れることが示され、決定論的でも長期予測が困難になりうることが広く理解された。数値計算では丸め誤差や初期値のわずかな違いが増幅されるため、計算結果の解釈に「再現性とは何か」という問いが生じる。これは気象・乱流・天体力学で本質的であり、計算物理が誤差と不確かさを正面から扱う契機になった。
5.2 FFTとスペクトル的視点
1965年、離散フーリエ変換を高速に計算するFFTが広く知られ、波動・乱流・信号処理・量子系の計算が劇的に変わった。例えば周期境界条件のもとでポアソン方程式を解くとき、フーリエ空間では微分が代数演算に変わり、解が高速に得られる。FFTは単なる高速化ではなく、物理をモード分解して理解する視点を計算機上で日常化した点に意義がある。
5.3 密度汎関数理論の確立と物質計算の起点
1964年のホーエンベルグ–コーンの定理と、1965年のコーン–シャム方程式により、電子密度を基本変数とする第一原理計算の枠組みが確立した。コーン–シャム形式では、相互作用電子系を一体の有効ポテンシャル中の非相互作用系へ写像し、
を自己無撞着に解く。ここで
が密度であり、交換相関汎関数
5.4 電磁場の時間領域計算とFDTD
1966年のYee格子に基づくFDTDは、マクスウェル方程式を時刻更新で直接進める枠組みを与えた。電場と磁場を空間的にずらして配置し、時間も半ステップずらすことで、カール方程式を安定に更新できる。FDTDは、周波数領域では扱いにくい過渡応答や複雑媒質・散乱問題を、計算機のメモリ上の格子に写像して解く道を開き、光学からマイクロ波まで広い応用を持つ。
6. 1970年代:大規模化と、格子・メッシュという言語の成熟
6.1 多重格子法と楕円型問題の高速解法
1970年代には多重格子法が発展し、拡散やポアソン型の楕円方程式を高速に解く一般戦略が整備された。誤差には高周波成分と低周波成分があり、単純な反復は高周波を減らしても低周波が残りやすい。多重格子は粗い格子に移して低周波誤差を高周波に変換し、再び滑らかにするという往復で収束を加速する。これは「方程式をただ解く」から「誤差の構造を設計する」段階への転換である。
6.2 格子ゲージ理論と計算による場の理論
1974年、ゲージ理論をユークリッド格子上に定式化し、強結合極限など計算可能な領域から閉じ込めを議論する枠組みが示された。連続の場の理論は紫外発散や非摂動性に悩まされるが、格子は自然なカットオフを与え、非摂動計算を可能にする。ここから格子QCDへ発展し、計算物理が素粒子理論の中心手段になる流れが確立した。
6.3 CFDの発展と乱流への接近
流体計算では、差分法・有限体積法・有限要素法が整理され、乱流の直接数値計算や大渦シミュレーションへ向かう土台が固まった。乱流は多スケールであり、レイノルズ数が上がるほど必要な格子点数が急増するため、モデル化と計算資源の両面で挑戦的である。1970年代以降、乱流統計の理解は理論だけでなく、計算が支える領域になっていった。
7. 1980年代:第一原理動力学・高速多体計算・サンプリングの革新
7.1 Car–Parrinello法と第一原理分子動力学
1985年、密度汎関数理論と分子動力学を結合する枠組みが提示され、経験ポテンシャルに依存しない動力学が可能になった。原子核座標
7.2 高速多重極法と長距離相互作用
1987年、高速多重極法が提案され、クーロン力や重力のような長距離相互作用を
7.3 ハイブリッドモンテカルロと格子場の大規模サンプリング
1987年、格子場の数値シミュレーションに有効なハイブリッドモンテカルロ法が提案され、特にフェルミオンを含む理論での効率を大きく改善した。確率分布
8. 1990年代:並列計算の標準化と、計算物理の大規模産業化
8.1 MPIによる分散メモリ並列の共通言語
1990年代半ば、MPIが整備され、異なる計算機・異なる研究分野でも共通に使えるメッセージパッシングの枠組みが確立した。並列化では、計算領域を分割し、境界でデータを交換することが基本になる。例えば格子上のPDEなら領域分割、粒子法なら空間分割や負荷分散が要点となり、通信と計算の重なりが性能を左右する。MPIの普及により、計算物理コードが個別機のための工芸品から、移植可能な研究基盤へと変わっていった。
8.2 OpenMPによる共有メモリ並列の普及
同時期、共有メモリ計算機ではOpenMPが普及し、ループ並列やタスク並列を比較的少ない記述で導入できるようになった。これにより、研究者がアルゴリズム開発に集中しつつ、計算機の多コア化を利用できる環境が整った。分散メモリのMPIと共有メモリのOpenMPを組み合わせるハイブリッド並列は、後の大規模機で標準的な構成となった。
9. 2000年代:ペタスケールと国家級シミュレーション
9.1 地球シミュレータと気候・地球科学
2002年に運用開始した地球シミュレータは、気候モデルや地球科学計算の大規模化を象徴する存在であった。気候系は大気・海洋・氷床・陸面・生態系などが結合し、多数の時間・空間スケールを含むため、計算資源が増えるほどモデルの表現力が上がる。地球シミュレータの時代に、計算は政策・防災・環境評価とも結びつき、計算物理が社会的意思決定の一部に入り込む流れが強まった。
9.2 GPUとヘテロ計算の萌芽
2000年代後半からGPUが科学計算に使われ始め、並列度の高い計算が大きく加速された。GPUはSIMD的な実行に向く一方、メモリアクセスや分岐に癖があり、アルゴリズムの再設計が必要になる。これにより「計算機に合わせて数値法を組む」側面が強まり、計算物理がハードウェア特性を強く意識する時代に入った。
10. 2010年代:第一原理計算の標準化と、超並列時代の確立
10.1 スーパーコンピュータ京と大規模並列の普及
2010年代初頭、スーパーコンピュータ京が整備され、大規模並列計算が幅広い分野へ普及した。大規模化は単に格子点数を増やすだけでなく、入出力、ジョブ運用、再現性、可搬性といった要素を含む。計算物理コードは、数値法の正しさに加えて、超並列下でのスケーラビリティを持つことが要求されるようになった。
10.2 ソフトウェア基盤の拡大
この時代、第一原理計算、分子動力学、CFD、電磁場計算などで、コミュニティコードが広く使われ、再現性と共有が進んだ。逆に言えば、コードが巨大化し、利用者が内部の数値法を完全には把握できない状況も生まれた。計算物理を学ぶ側には、ブラックボックス利用を避け、離散化・収束・誤差・物理量定義を自分で追える力がより重要になった。
11. 2020年代:富岳、そして計算の役割の再定義
11.1 スーパーコンピュータ富岳と多目的超並列
2020年代初頭、スーパーコンピュータ富岳が試行的利用と共用を経て運用され、世界規模の計算課題に投入された。計算物理の観点では、単一分野での極限性能だけでなく、データ解析やAI、可視化、ワークフロー全体を含む科学計算の統合が強く意識されるようになった。計算は、方程式を解く段階から、観測データと結合して仮説を更新する段階へ移りつつある。
11.2 MPI標準の更新と、並列の持続性
MPIは2020年代にも改訂が続き、2025年にはMPI 5.0が承認されている。計算機が多様化するほど、並列プログラミングの共通基盤は重要になる。計算物理の大規模コードは寿命が長く、ハードウェア更新のたびに全面刷新できないため、標準化は科学の継続性を支える役割を担う。
12. 年表
| 年代 | 出来事 | 計算物理にとっての意味 |
|---|---|---|
| 1949 | モンテカルロ法の提案 | 高次元問題を確率サンプリングで扱う道を開いた |
| 1950 | 数値天気予報の初期実証 | PDEの離散化・安定性・境界条件が一体の課題として現れた |
| 1952 | 共役勾配法 | 疎行列反復解法が巨大問題の基本戦略になった |
| 1953–55 | FPU計算実験 | 計算が現象発見の手段になりうることを示した |
| 1963 | 決定論的カオスの明確化 | 予測可能性と誤差増幅が計算解釈の核心になった |
| 1964–65 | DFTの基礎確立 | 物質の第一原理予測が現実的な研究手段になった |
| 1965 | FFT | 多くの場の問題・信号・スペクトル解析の計算を刷新した |
| 1966 | FDTD(Yee格子) | 電磁場の時間領域計算が実用的になった |
| 1970年代 | 多重格子法の発展 | 楕円型問題を高速に解く設計思想が確立した |
| 1974 | 格子ゲージ理論 | 非摂動場の理論を計算で扱う道を開いた |
| 1985 | Car–Parrinello法 | 第一原理分子動力学が物質科学に浸透した |
| 1987 | 高速多重極法 | 長距離相互作用の計算量の壁を突破した |
| 1987 | ハイブリッドモンテカルロ | 格子場の大規模サンプリングが現実的になった |
| 1990年代 | MPI | 分散メモリ並列の共通基盤が整った |
| 1997 | OpenMP | 共有メモリ並列が広く普及した |
| 2002 | 地球シミュレータ運用開始 | 地球科学計算が国家級計算の中心になった |
| 2012 | 京の共用開始 | 大規模並列が幅広い分野の研究基盤になった |
| 2021 | 富岳の共用開始 | 多目的超並列とデータ・AI融合が進んだ |
| 2025 | MPI 5.0承認 | 長寿命コードを支える標準化が継続している |
13. 分野別に見た計算物理の広がり
13.1 物質・材料
物質系では、DFTを中心に、電子構造から結晶構造、欠陥、磁性、輸送、光応答までが計算対象になった。電子状態は固有値問題、自己無撞着反復、k点積分、擬ポテンシャルや基底関数の選択など、多段の数値要素から構成される。ここでは「数値設定が物理量を変えてしまう」危険が常につきまとうため、収束性と近似の意味を理解することが学習の中心になる。
分子動力学は、経験ポテンシャルから第一原理、さらに機械学習ポテンシャルへと多様化し、時間・空間スケールの拡張を続けている。結晶の熱伝導や相変態のように、原子スケールの運動がマクロ物性へつながる問題では、計算は現象の橋渡しとして重要になっている。
13.2 流体・気候・地球科学
流体は非線形で多スケールであり、数値安定性と格子分解能が本質となる。乱流では、格子で解像できないスケールをどう扱うかが問題で、モデル化は避けられない。気候モデルではさらに、放射、雲微物理、海洋混合、陸面過程などが結合し、物理パラメタリゼーションの設計が支配的になる。
この分野では、計算結果が観測データと比較され、長期統計として評価されることが多い。したがって、単発のシミュレーションだけでなく、アンサンブル計算や不確かさの評価が重要になり、計算資源の大規模化が直接的に科学成果へ結びつく。
13.3 電磁場・光
電磁場計算は、周波数領域の境界値問題と、時間領域の初期値問題の両方を含む。FDTDは過渡応答や広帯域の散乱に強く、有限要素法は複雑境界や材料分散の扱いで強みがある。ナノフォトニクスでは、サブ波長構造の高精度メッシュが必要となり、メモリ帯域とスケーリングが支配要因になる。
この分野では、数値分散や数値反射といった離散化由来の人工効果が物理解釈を壊しやすい。したがって、格子配置、吸収境界条件、時間刻みの設計などを理屈で理解することが重要である。
13.4 素粒子・原子核
格子QCDは、非摂動の強い相互作用を第一原理で評価する数少ない道であり、巨大な計算資源を必要とする。ここではサンプリングの自己相関、臨界減速、フェルミオン行列の解法が核心となり、HMCや多段ソルバ、前処理などが発展してきた。計算物理が数学・統計・計算機科学と不可分であることが最も鮮明に現れる分野の一つである。
14. 歴史から学ぶための見方
計算物理の歴史を学ぶ意義は、個別手法の暗記ではなく、なぜその手法が必要になったのかを理解する点にある。多くの場合、古い方法が捨てられたのではなく、適用範囲が整理され、より大規模・より高精度・より複雑なモデルへ進むために新手法が加わってきた。
学習の入口としては、まず常微分方程式の時間積分と、線形代数の連立方程式解法を確実にし、次に偏微分方程式の離散化と安定性へ進むのがよい。確率論と統計はモンテカルロとデータ同化に直結し、フーリエ解析はFFTとスペクトル法につながる。これらは互いに独立ではなく、実際の計算では同時に現れるため、歴史の中でどう統合されてきたかを意識すると理解が速い。
15. まとめと展望
計算物理は、乱数によるサンプリング、格子とメッシュによる場の離散化、巨大線形代数、そして超並列計算という複数の柱を積み上げて発展してきた学問である。今後は、ヘテロ計算の深化、観測データとの結合、AIによる近似表現の導入が進む一方で、誤差とモデル仮定をどこまで物理的に説明できるかが、ますます重要になる。
参考文献
Metropolis, N. and Ulam, S., The Monte Carlo Method (1949).
https://www.tandfonline.com/doi/abs/10.1080/01621459.1949.10483310Metropolis, N. et al., Equation of State Calculations by Fast Computing Machines (1953).
https://pubs.aip.org/aip/jcp/article/21/6/1087/202680/Equation-of-State-Calculations-by-Fast-ComputingCharney, J. G., Fjørtoft, R., von Neumann, J., Numerical Integration of the Barotropic Vorticity Equation (1950).
https://maths.ucd.ie/~plynch/eniac/CFvN-1950.pdfHestenes, M. R., Stiefel, E., Methods of Conjugate Gradients for Solving Linear Systems (1952).
https://www.stat.uchicago.edu/~lekheng/courses/302/classics/hestenes-stiefel.pdfLorenz, E. N., Deterministic Nonperiodic Flow (1963).
https://cdanfort.w3.uvm.edu/research/lorenz-1963.pdfHohenberg, P. and Kohn, W., Inhomogeneous Electron Gas (1964).
https://link.aps.org/doi/10.1103/PhysRev.136.B864Kohn, W. and Sham, L. J., Self-Consistent Equations Including Exchange and Correlation Effects (1965).
https://link.aps.org/doi/10.1103/PhysRev.140.A1133Cooley, J. W. and Tukey, J. W., An Algorithm for the Machine Calculation of Complex Fourier Series (1965).
https://www.ams.org/mcom/1965-19-090/S0025-5718-1965-0178586-1/Yee, K. S., Finite-Difference Time-Domain scheme(1966に対応する古典的枠組みとして広く引用される)
https://en.wikipedia.org/wiki/Finite-difference_time-domain_methodWilson, K. G., Confinement of Quarks (1974).
https://link.aps.org/doi/10.1103/PhysRevD.10.2445Car, R. and Parrinello, M., Unified Approach for Molecular Dynamics and Density-Functional Theory (1985).
https://link.aps.org/doi/10.1103/PhysRevLett.55.2471Greengard, L. and Rokhlin, V., A fast algorithm for particle simulations (1987).
https://www.sciencedirect.com/science/article/pii/0021999187901409Duane, S. et al., Hybrid Monte Carlo (1987).
https://www.sciencedirect.com/science/article/pii/037026938791197XOpenMP Architecture Review Board, OpenMP Fortran Application Program Interface Version 1.0 (1997).
https://www.openmp.org/wp-content/uploads/fspec10.pdfMessage Passing Interface Forum, MPI Documents(MPI 5.0は2025年6月5日に承認)
https://www.mpi-forum.org/docs/