とらりもんHOME  Index  Search  Changes  Login

とらりもん - 数値解析とは Diff

  • Added parts are displayed like this.
  • Deleted parts are displayed like this.

筑波大学農林工学系 奈佐原(西田)顕郎

 数値解析とは、様々な現象を数学的なモデルで表現し、計算機を使って再現・予測することを言います。理論・実験と並んで、科学技術の研究における第3の手法とも言われます。数値実験、シミュレーションなどと呼ばれることもあります。

!!数値解析の例
数値解析の例は無数にあります。

* 例1: 局地気象モデル [[MM5|http://www.mmm.ucar.edu/mm5/mm5-home.html]]
* 例2: [[気象庁による、地球温暖化のシミュレーション|http://www.mri-jma.go.jp/Dep/cl/cl4/GW/GW-j.html]]
* 例3: 森林生態系シミュレーション [[Biome-BGC|http://ryuiki.envr.tsukuba.ac.jp/~nishida/MEMO/bgc.html]]
* 例4: 流域水循環シミュレーション [[VIC|http://www.hydro.washington.edu/Lettenmaier/Models/VIC/VIChome.html]]
* 例5: 流域水循環シミュレーション [[MIKE SHE|http://www.dhigroup.com/]]
* 例6: 土石流シミュレーター [[kanako|http://blogs.dion.ne.jp/violinist_kn/]]

!!数値解析の長所と短所
 数値解析の長所は、

* 様々な要素機能の組み合わとしてひとつのシステムの機能を検討できる。
* その結果、ある部分に何らかの変化が生じることの影響について、範囲と強度を検討できる。
* 現状から出発して、将来予測や過去の再現ができる。
* 実際の計測や観測が難しい現象も検討できる。

などです。逆に短所は、

* あくまで数学モデルから導かれるものなので、現実と一致するとは限らない。
* どんなに正しいモデルでも、初期条件や境界条件が正しくないとダメ。
* どんなに正しいモデルでも、パラメータが正しくないとダメ。
* 計算機上の実装には、いろんな制約が加わる(空間の非等方格子表現、桁落ちや精度落ち、離散化による誤差など)。

などです。

 たとえば、流域の水資源の数値解析を例にとって考えましょう。流域の水循環には、降雨、浸透、貯留、蒸発、流出、取水、かんがいなどのプロセスがあり、それらは気象や地形、地質、植生、人間活動などに強く結び付いており、個々のプロセス(たとえば「蒸発」)だけを観測などで明らかにしてもシステム全体のことはわかりません。しかし個々のプロセスを丹念に数式で表現して組み合わせれば、いちおう、流域の機能がひととおり再現できるのです。

 しかし、たとえば土壌への浸透について数学モデルができたとしても、現実の土壌がどのような浸透能(透水係数や空隙率)を持っているかということまでは計算機は面倒を見てくれないので、そこはユーザーが現場の情報を得て計算機に与えてやるわけです(そういうものをパラメータと呼びます)。ところが土壌の浸透能の面的計測は現実的には大変に骨の折れる仕事で難しいのです。

 仮にパラメータが完璧に決まったとしましょう。それでも、数値解析は、現在の状態から時々刻々の変化を計算して積み上げることで現象の変化を追跡するものですから、出発点だけは人間が与えてやらねばなりません。それを初期条件と言います。この例では、今この瞬間に土壌にどのくらい水分があるか、地下水はどのくらいあるか、川はどのくらいの速さで流れているか、ということです。それを知るのは大変なことだと想像がつくでしょう。今の状況がわかっても、これから先、どのくらい雨が降ってどのくらい日射があるか、という情報も必要です(そういうのを境界条件と言います)。

 仮にこれらの全てが揃ったとしても、それだけで数値解析の結果は正しいとは言えません。数値解析では連続的な時空間の上で数学モデルを厳密に解くかわりに、細かい時間・空間間隔の刻みで解こうとします。例えば流出量は連続的に変わるのに、計算機では1時間おきに計算したりします。それを離散化と言います。これが誤差の原因になります。

 そのようにもろもろの弱点はあっても、たとえば「上流の森林を伐採したとき河川の流量はどうなるか?」というような、政策的に重要なアセスメントに対して、有効な答えを出すことができるのは数値解析だけです。伐採によって蒸発量や積雪・融雪量が変化し、土壌水分が増加・減少するという複雑な相互作用も、数学モデルを計算機で丹念に解くことで再現できるのです。

!!数値解析に必要なもの
 数値解析に必要なのは、

* 計算機の知識・技能 ・・・ OS、プログラミング言語、アルゴリズム、データの可視化技術
* 数学の知識・思考力 ・・・ 微積分(微分方程式)、線形代数、ベクトル解析
* 対象に関する知識 ・・・・ 個々のプロセスとその仕組み
* 対象に関する情報(データ) ・・・ パラメータ、初期条件、境界条件

です。

 特に、数学、特に微分方程式は、数値解析の根幹です。極論すれば、数値解析とは、現象を微分方程式で表現し、それを与えられた初期条件・境界条件で解くことです。大きなシステムのモデルも、たくさんのプロセスを微分方程式で表現した上で組み合わせることが多いのです。

 この実習では、そうした数値解析のごく基本を学びます。