(57)【特許請求の範囲】
【請求項１】
少なくとも吸着子からなる第１の粒子群と基盤粒子からなる第２の粒子群とから構成される粒子の運動の計算処理を行い、当該粒子における現象をシミュレートする粒子シミュレーションシステムにおいて、
前記第１の粒子群の粒子の発生条件として、複数個の発生期間と粒子の量に関する情報と、発生位置を領域として画面上で操作者に指定させて運動条件記憶部に記録する運動条件設定手段と、
前記運動条件設定手段で記録された第１の粒子群中の粒子の発生期間と粒子の量と、発生位置に関する情報に基づいて、シミュレーション中の指定された期間に、前記設定された粒子の量を、記録された領域より発生させて粒子の運動の計算処理を行う分子運動計算手段とを備えたことを特徴とする粒子シミュレーションシステム。
【請求項２】
前記運動条件設定手段は複数種類の粒子について設定を行うことを特徴とする請求項１記載の粒子シミュレーションシステム。
【請求項３】
前記運動条件設定手段は、第１の粒子群中の粒子を構成する原子にランダムに初速度を与えるか、粒子の重心の並進運動にのみ初速度を与えて、粒子を構成する原子に該重心に対して静止させるかを、画面上で操作者に指定させて設定を行うことを特徴とする請求項１記載の粒子シミュレーションシステム。
【請求項４】
前記運動条件設定手段で、第１の粒子群中の粒子の重心の並進運動にのみ初速度を与えて粒子を構成する原子に該重心に対して静止させる選択がされた場合に、当該粒子の向きを、画面上での指定により設定を行うことを特徴とする請求項３記載の粒子シミュレーションシステム。
【請求項５】
前記運動条件設定手段で記録した条件に基づいて、粒子の運動の初期状態を示す図を画面に表示する初期運動状態図表示手段とを備えたことを特徴とする請求項１記載の粒子シミュレーションシステム。
【請求項６】
前記運動条件設定手段の表示と、初期運動状態図表示手段の表示が同一画面上であることを特徴とする請求項５記載の粒子シミュレーションシステム。
【請求項７】
前記運動条件設定手段は、前記第２の粒子群に向かって運動する第１の粒子群の初期の位置を領域として設定し、前記初期運動状態図表示手段は、設定された第１の粒子群が位置する領域と第２の粒子群が位置する領域との関連を示す図を表示することを特徴とする請求項５記載の粒子シミュレーションシステム。
【請求項８】
前記運動条件設定手段は、前記第２の粒子群に向かって運動する第１の粒子群の粒子に初速度を与える方向を設定し、前記初期運動状態図表示手段は、前記運動条件設定手段で設定した運動方向に基づいて、第１の粒子群が位置する領域と第２の粒子群が位置する領域と第１の粒子群の運動方向との関連を示す図を表示することを特徴とする請求項５記載の粒子シミュレーションシステム。
【請求項９】
前記運動条件設定手段は、前記第２の粒子群について、操作者の範囲指定に基づいて、複数個の属性を設定し、
前記初期運動状態図表示手段は、設定された複数個の属性を識別可能な態様の図を表示することを特徴とする請求項５記載の粒子シミュレーションシステム。
【請求項１０】
コンピュータを動作させて、
吸着子からなる第１の粒子群と基盤粒子からなる第２の粒子群とから構成される粒子の運動をシミュレーションするために、前記第１の粒子群の粒子の発生条件として、複数個の発生期間と粒子の量に関する情報と、発生位置を領域として画面上で操作者に選択させて運動条件記憶部に記録する運動条件設定手段と、
前記運動条件設定手段で記録された第１の粒子群中の粒子の発生期間および粒子の量に関する情報と、記録された領域に基づいて、シミュレーション中の指定された期間に、前記設定された粒子の量を記録された領域より発生させて粒子の運動の計算処理を行わせる分子運動計算手段とを機能させるためのプログラムを格納した記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、粒子（原子、分子、または、原子、分子より構成されるもの）の運動を分子動力学計算を行うことで、粒子の現象をシミュレーションするものに関する。新素材の開発において、成膜過程やプロセス条件、そして表面構造の詳細を知るには、走査型トンネル電子顕微鏡（ＳＴＭ）、原子間力顕微鏡（ＡＦＭ）等の実験的手段があるが、これだけでは不十分であり、どのような過程を経て最終的な現象が起きたかを見るためには、原子、分子レベルでその現象（結晶の成長、表面吸着、表面損傷等）をシミュレーションする必要がある。
【０００２】
【従来の技術】
従来、原子、分子レベルで結晶の成長、表面吸着、表面損傷等の現象を、分子動力学的手法でシミュレーションすることは行われていたが、分子動力学計算を行うプログラムに入力するデータ（どのような粒子がどのような属性を持っているかなど）が、個々のシミュレーション対象毎で異なり、さらに、分子のデータは膨大であるために、それを手作業で作成するのは極めて困難であった。そこで、研究者は自分のシミュレーションの対象毎に、分子データを作成するプログラムを開発していたが、その開発に多くの時間を要していた。また、シミュレーションする対象が異なると、分子データを作成するプログラムを再作成しなければならなかった。
【０００３】
【発明が解決しようとしている課題】
吸着、結晶成長、表面損傷など様々な現象を扱えるように、より汎用的なシミュレーションシステムを開発することが望まれている。すなわち、複数の原子、分子、粒子を対象とし、さらに、多くのシミュレーションの状態（初期状態）をカバーし、操作性が統一できるようなプログラム上のモデルを考慮する必要がある。汎用的なモデルについては、粒子の運動自体（どういったタイミング粒子が動きだすか）と、粒子の初期位置（どこから粒子が動きだすか）とについて考慮する必要がある。
【０００４】
また、いくら汎用的なモデルを考案したとしても、個々のシミュレーションの対象に合致するようにするためには、分子動力学計算を行うプログラムに様々な設定値（パラメタ）を入力する必要がある。しかし、操作者はパラメタの意味を十分理解している必要があり、例え、理解していたとしても、シミュレーション対象における、変更したパラメタ値の変更の大きさが理解しにくいという問題がある。
【０００５】
【課題を解決するための手段】
上記の粒子の運動自体の設定をより汎用的にするという課題については、第１の粒子群と第２の粒子群とから構成される粒子の運動をシミュレーションするために、前記第１の粒子群の粒子の発生条件として、複数個の発生期間と粒子の量に関する情報を画面上で操作者に選択させて設定する運動条件設定手段と、前記運動条件設定手段で設定された第１の粒子群中の粒子の発生期間および粒子の量に関する情報に基づいて、シミュレーション中の指定された期間に、前記設定された粒子の量を発生させて粒子の運動の計算処理を行う分子運動計算手段とを設けることで解決される。
【０００６】
また、上記の粒子の初期位置の設定をより汎用的にするという課題については、  第１の粒子群と第２の粒子群とから構成される粒子の運動をシミュレーションするために、前記第１の粒子群の粒子の発生位置を領域として、画面上で操作者に指定させて設定する運動条件設定手段と、前記運動条件設定手段で設定された領域より、第１の粒子群の粒子の発生させて、粒子の運動の計算処理を行う分子運動計算手段とを設けることで解決される。
【０００７】
さらに、設定した値とシミュレーション全体との関係を、操作者に理解しやすくするという課題については、粒子の運動の計算処理を行い当該粒子における現象をシミュレートする分子運動計算手段に入力される粒子の運動条件を、画面を通して操作者に設定させる、運動条件設定手段と、前記運動条件設定手段で設定した条件に基づいて、粒子の運動の初期状態を示す図を画面に表示する初期運動状態図表示手段とを設けることで解決される。
【０００８】
【発明の実施の形態】
図１は本発明のシステム構成図を示す図である。１は処理装置、２は表示装置、１０は粒子シミュレーションの対象を設定する設定手段であり、設定手段１０は、粒子の運動条件を設定する運動条件設定手段１１と運動条件設定手段１１で設定した内容を表示装置２にグラフィック表示する初期運動状態図表示手段１２より構成される。２０は粒子の運動を時系列に計算していく分子運動計算手段２０であり、上記運動条件設定手段１１で設定した内容に基づいて、粒子を発生させる粒子発生手段２１と、計算対象の粒子（原子または分子）の相互作用を計算する分子動力学計算手段２２より構成される。３１は粒子運動計算手段で求めた粒子の運動を、表示装置２に表示するシミュレーション表示手段である。
【０００９】
５１、５２、５３はそれぞれ分子構造ＤＢ、結晶構造ＤＢ、分子性結晶ＤＢであり、操作者はこれらのＤＢからシミュレーションの対象となる粒子を前記運動条件設定手段１１を用いて選択する。これらのＤＢには、分子や結晶の原子構成情報が記憶されており、分子動力学計算手段２２は、選択された粒子に対応する原子構成情報を用いて粒子の運動を計算する。６０は粒子（原子または分子）間の相互作用（ポテンシャル）を計算するためのプログラムの集合であるポテン  シャルライブラリである。選択された粒子間でどの相互作用（例えば、ファンデルワールス力、クーロン力等）を考慮するかを操作者に指定させ、分子動力学計算手段２２が、その指定内容に従い、このポテンシャルライブラリより該当する相互作用を求めるプログラムを用いて、粒子間の運動を計算する。
【００１０】
７は、前記設定手段１１で設定した運動条件を記憶しておく、運動条件記憶部であり、粒子運動計算手段２０は、運動条件記憶部７の内容に基づいて、粒子の運動を計算する。４は粒子運動計算手段２０が計算した結果を時系列に記憶する時系列記憶部であり、シミュレーション表示手段３１は時系列記憶部４の内容を時系列に、表示装置２にグラフィック表示をする。操作者は表示装置２に表示されたグラフィック表示により、粒子のシミュリーション結果を観察する。
【００１１】
図２は、本願発明におけるシステムの全体の流れ、すなわち、シミュレーション対象の設定から粒子の運動の計算およびその計算結果の出力までのフローを示す図である。
この実施例においては、シミュレーション対象の粒子は、成膜等の、外から観察すると静止している（分子レベルでは分子運動を多少している）粒子群である基盤粒子と、成膜等の静止している粒子群に衝突する粒子群である吸着子（吸着粒子）とより構成されている。
【００１２】
まず、シミュレーション対象の設定については、設定手段１０の運動条件設定手段１１が、操作者にシミュレーション対象の粒子（基盤粒子と吸着子）に関する種種の設定を行わせ（Ｓ１００）、設定手段１０の初期運動状態図表示手段１２が、操作者が設定した内容を表示装置にグラフィック表示する（Ｓ２００）。すべての設定が終わると（Ｓ３００）、設定手段１０が設定した内容を運動条件記憶部７に記憶する。Ｓ１００では、吸着子はいつ、どの位置からどの方向にどのくらいの速度を持って発生するか、基盤粒子はどのような属性であるか等の設定が行われ、Ｓ２００で、各粒子の状態が図として表示されるので、操作者は自分が設定した内容の、シミュレーション対象の全体における意味（影響）を確認することができる。また、Ｓ１００では、吸着子および基盤粒子として、具体的にどの物質を用いるかの設定も行わせる（設定画面は図示していない）。これは、図１に示した分子構造ＤＢ５１、結晶構造ＤＢ５２、分子性結晶ＤＢ５３の中から、操作者に選択指定させるものである。
【００１３】
Ｓ４００は、シミュレーションの初期処理であり、設定された基盤粒子の情報に基づいて、基盤粒子データが作成される。基盤粒子は吸着子と異なり、初期の粒子数と時間経過後の粒子数が同じであるため、シミュレーションの開始前に作成する。また、同時に吸着子について、いつどの粒子を発生させるかを示すデータを作成する。
【００１４】
これ以降は時間経過毎に順次処理を行うシミュレーションの処理であり、まず、現時点において発生させるべき吸着子のデータがあるか判定し（Ｓ４１０）、あれば該当する吸着子を発生させる（Ｓ４２０）。発生させた吸着子と基盤粒子とについて、分子動力学計算を行う（Ｓ５００）。分子動力学計算の結果をファイル出力する（Ｓ５１０）。そして時間を進め、終了時間になったかを判定し（Ｓ５２０）、終了時間になっていれば、シミュレーションのための分子動力学計算を止める。その後、操作者の指示に基づいて、シミュレーションの結果をグラフィック表示する（Ｓ６００）。すなわち、先の分子動力学計算の結果を格納したファイルには時系列に各粒子の状態（座標等）が格納されており、その情報に基づいて、グラフィック表示する。
【００１５】
図３は、吸着子および基盤粒子の設定のうち、吸着子発生源設定および基盤粒子属性設定の処理フローを示すものである。なお、基盤粒子は、位置を移動しない固定粒子と、温度が一定の温度制御粒子と、位置の移動の制限も温度の変化の制限もない自由粒子とがある。図７の設定画面は、吸着子発生源（ＳｏｕｒｃｅＥｍｉｓｓｉｏｎ  Ｐｌａｎｅ  ）の設定画面７１０と、基盤粒子の温度制御粒子（Ｈｅａｄ  Ｂａｔｈ  Ｃｏｍｐｏｎｅｎｔ）の設定画面７２０と、基盤粒子の固定粒子（Ｆｉｘｅｄ  Ｃｏｍｐｏｎｅｎｔ）の設定画面７３０と、吸着子と基盤粒子の設定情報の関係をグラフィック表示する画面７５０と、グラフィック表示画面７５０の視点方向を変更するための画面（Ｖｉｅｗｉｎｇ）７６０より構成されている。
【００１６】
グラフィック表示画面７５０のうち、７５１は吸着子発生源の領域を示したものであり、７５２は吸着子が吸着子発生源７５１から最大どのくらいの角度で初速度を与えられて発生するかを示す図である。７５３、７５４は基盤粒子の属性の範囲を示す図であり、７５３は基盤粒子の固定粒子の範囲を示し、７５３は基盤粒子の温度制御粒子の範囲を示している。これらは、操作者が設定画面を通して設定した内容を、設定手段１０の初期運動状態図表示手段１２が表示するものである。
【００１７】
吸着子発生源、基盤粒子の温度制御粒子、基盤粒子の固定粒子の各々の設定画面（７１０、７２０、７３０）では、スライダと呼ばれる四角のマークを、操作者がマウスを用いて左右に移動させることにより、その値を設定するもの（または「＋」ボタンと「−」ボタン）と、直接、表示されている数値の位置を操作者がマウスでクリックし、数字キーで入力するものの、２通りの入力方法がある。
【００１８】
図３は、その設定入力の処理を示したものであり、Ｓ１１０、Ｓ１２０、Ｓ１３０は各々の設定画面のスライダが操作されたかを判定するステップであり、Ｓ１４０は操作者が数値キーを用いて数値入力をした後に、反映のボタン（図７では「Ａｐｐｌｙ」ボタン）が押されたかを判定するステップである。各々の設定画面のスライダが操作された場合には、各々の該当する設定処理が起動される。また、Ｓ１４０の「Ａｐｐｌｙ」ボタンが押された場合には、３つの設定処理  （吸着子発生源の設定処理、温度制御粒子の設定処理、固定粒子の設定処理）が起動される。Ｓ３００は設定終了ボタン（図７では「ＯＫ」ボタン）が押されたかを判定するステップである。設定終了ボタンが押されると、設定内容をファイル（図１の運動条件記憶部７、図１５の運動条件設定ファイル７）に記憶する。
【００１９】
図４、図５、図６はそれぞれの吸着子発生源の設定処理、温度制御粒子の設定処理、固定粒子の設定処理のフローを示したものである。
【００２０】
まず、図４の吸着子発生源の設定処理について説明する。操作者は吸着子の発生源を領域として指定する。これは、各吸着子毎にその発生源の位置を設定する代わりに、複数の吸着子について一度に設定できるようにしたものである。各吸着子の実際の発生源については、後で詳述するが、乱数を用いて、指定された領域内の点が決定される。吸着子の発生領域は、Ｘ座標としての範囲と、Ｙ座標としての範囲およびＺ座標値として操作者に指定させる。グラフィック表示画面７５０の左下の位置が座標の原点である。スライダが操作された時はそのスライダの位置に基づいて、設定すべき数値を算出する（Ｓ２１１）。また、「＋」ボタン、「−」ボタンが押された時は、その押された回数及び時間に基づいて、数値を増減する（Ｓ２１２）。新たに算出したＸ座標の範囲、Ｙ座標の範囲、Ｚ座標値に基づいて、図７のグラフィック表示画面の７５１の図を再表示する。
【００２１】
基盤粒子の設定については、図５と図６を用いて説明する。前述したように基盤粒子は、位置を移動しない固定粒子と、温度が一定の温度制御粒子と、位置の移動の制限も温度の変化の制限もない自由粒子とがある。本粒子シミュレーションシステムでは、固定粒子の領域の設定については、温度制御粒子と自由粒子とを合わせた領域を操作者に設定させ、それ以外の部分を固定粒子として設定している。また、温度制御粒子については、先に設定した温度制御粒子と自由粒子とを合わせた領域のうち、温度制御粒子と自由粒子の境界を操作者に指定させて、各々の粒子の設定を行っている。
【００２２】
前述したように、図６は固定粒子の設定処理フローであるが、操作者が指定する領域は、温度制御粒子と自由粒子とを合わせた領域であり、設定手段１０が、基盤粒子全体の領域から指定された領域を除いた領域を固定粒子の領域とし、固定粒子に該当する各粒子の座標値を算出する。固定粒子の設定処理フローを順次説明すると、まず、操作者に固定粒子を設定するための直方体または平行六面体（固定粒子および温度制御粒子を含む領域）の頂点である座標を、図７の設定画面の７３０の内のスライダおよび数値により、Ｘ座標の範囲およびＹ座標の範囲およびＺ座標の下限値を入力させる（Ｓ２３１）。（図では、直方体であるが、基盤粒子が結晶である場合には、結晶独自の座標系が結晶構造ＤＢ５２に格納されており、その座標系を使用した場合には、座標軸が直交しないために平行六面体となる。）すると、本システムの初期運動状態図表示手段１２が、固定粒子を設定するための領域（温度制御粒子と自由粒子を合わせた領域）を直方体または平行六面体として表示する（Ｓ２３２）。同時に固定粒子に対応する粒子をその属性（固定粒子）に対応する態様（色等）で表示する。操作者が設定したこの内容に基づいて、固定粒子の各粒子の座標を算出し、当該座標値に対応する粒子の属性を固定粒子に設定する（Ｓ２３３）。この設定内容は、本粒子シミュレー  ションに用いる粒子の属性を管理するファイル（またはテーブル）に格納される。このファイルは、図１５の運動条件設定ファイル７である。運動条件設定ファイル７には、基盤粒子以外に吸着粒子の設定情報も格納している。
【００２３】
基盤粒子に関する情報は８６、８７、８８のカラムが該当する。８６は基盤を構成する原子の数であり、この例では５００個である。８７は基盤を構成する各原子の座標値が格納されている。この例では原子が５００個あるため、５００個の座標値を格納している。８８は、８７の座標値で特定される各原子の属性を格納しており、各原子がどのような運動属性を持っているかを格納している。
「０」は自由運動をする原子、「１」は他の原子の影響によって温度が変化しない原子（温度一定の原子）、「２」は他の原子の影響によって動作しない（静止している）原子を示している。
【００２４】
図５は、温度制御粒子設定の処理フローである。図７の７２０の設定画面は、操作者に、上記の固定粒子設定処理で指定した領域すなわち温度制御粒子と自由粒子の境界を指定させるものである。操作者により、図７の７２０の設定画面を通して、スライダまたは数値入力により温度制御粒子と自由粒子の境界のＺ座標値が指定されると、上記の固定粒子設定処理で指定した領域すなわち温度制御粒子と自由粒子を合わせた領域の下限のＺ座標値より、今回指定されたＺ座標値までの範囲が、温度制御粒子となる。そして、図７の７５０の表示画面に表示されている基盤粒子全体の底面の４つ頂点とＺ座標により、温度制御粒子とその上側との境の面を構成する４つの座標を算出する（Ｓ２２１）。算出した４つの座標に基づいて、温度制御粒子の境の面の表示を行う（Ｓ２２２）。同時に温度制御粒子に対応する粒子、および、自由粒子に対応する粒子を、それぞれの属性に対応する態様（色等で他の属性を識別可能な態様）で表示する。そして、固定粒子の場合と同様に、温度制御粒子の領域の粒子については、温度制御粒子であることの属性を、自由粒子の領域の粒子については、自由粒子であることの属性を、図７の運動条件設定ファイル７に格納する。（Ｓ２２３）。
【００２５】
すなわち、Ｓ２２３では、操作者が画面上で指定した範囲の粒子について、操作者が指定した座標範囲に含まれる粒子を求め、図１５の運動条件設定ファイル７の対応する粒子の属性値を「１」（温度制御）に設定する。
また、図７の７６０の設定画面は、７５０の表示画面に表示されるグラフィックの図形を視点方向を指定するものであり、Ｘ軸、Ｙ軸、Ｚ軸の回りに何度回転させて表示するかを指定させるものである。
【００２６】
図８は、吸着粒子の発生スケジュールの設定画面である。８００の設定画面では吸着粒子の種類をリストしており、現画面では１番の「ｎ−ｐｅｎｔａｎｅ」が選択されている。８１０の領域は、シミュレーションを行う総ステップ数を表示するところであり、８２０はシミュレーションを行う総時間を何ピコ秒とするかを表示するところであり、これらの値は別の画面を設定されるものであり、吸着子の種類のより変化しないものである。また、８３０は、吸着子毎に設定するものであり、発生の間隔を均等（Ｅｑｕａｌ）にするか、ランダム（Ｒａｎｄｏｍ）にするかを指定するところである。８４０および８５０では、各指定されたステップ数（８４  ０）までの間に何個（８５０）を発生させるかを指定するところである。この例では、１〜５０００ステップの間に５個の粒子を発生させ、５００１から１０００１までの間に発生させる粒子数は０個であることを示している。ここで設定した内容は、図１５の運動条件設定ファイル７に格納される。運動条件設定ファイル７の７１から８３までのカラムは吸着子（吸着粒子と同じ）の種類毎にデータを格納しており、前記の設定の内容のうち、８３０は発生の間隔を均等（Ｅｑｕａｌ）にするか、ランダム（Ｒａｎｄｏｍ）にするかの指定は、７７のカラムにそれぞれの粒子について格納される。８４０および８５０で設定した指定されたステップ数（８４０）までの間に何個（８５０）を発生させるかの情報は、７９および８０のカラムに格納される。
【００２７】
図９は、吸着子の物理状態設定画面である。７６０は吸着子の種類をリストしたものであり、７７０、７９０は７６０のリスト中より選択された吸着子毎にその発生時の物理状態を設定するものである。７７０では初期の温度を設定するものである。初期の温度と速度との間には、
１／２＊Ｍ＊Ｖ＾２＝３／２＊Ｋｂ＊Ｔ
（Ｍ：質量、Ｖ：速度、Ｋｂ：ボルツマン定数、Ｔ：温度）
という関係があり、この設定された温度より、吸着子の発生速度を算出する。
【００２８】
７９０の「Ａｌｌ」「Ｎｏｎｅ」は、個々の吸着子が発生する際に、吸着子を構成する個々の原子に速度を与えるかまたは否かを選択指定させるものであり、「Ｏｒｉｅｎｔａｔｉｏｎ．．」は、個々の吸着子が発生する際の吸着子の向きを指定する否かを選択指定させるものであり、選択した場合には、吸着子の向きの設定する画面、図１０が表示される。また、「Ｄｉｒｅｃｔｉｏｎ．．」は  個々の吸着子が発生する際の吸着子のの発生方向（吸着子の重心の速度方向）を指定するか否かを選択指定させるものであり、選択した場合には、吸着子の発生方向を設定する画面が図１１が表示される。
【００２９】
「Ａｌｌ」と「Ｎｏｎｅ」の設定で、「Ａｌｌ」を設定した場合には、図１５の運動条件設定ファイル７の７４カラムに、静止しないを意味する「０」が格納され、「Ｎｏｎｅ」を設定した場合には、静止するを意味する「１」が格納される。
「Ｏｒｉｅｎｔａｔｉｏｎ．．」を選択した場合には、図１０の吸着子の方向（向き）の設定画面が表示され、操作者は、８７０の表示画面に表示されている吸着子の分子構造を見ながら、その向きを設定する。設定は、８８０の設定画面で、Ｘ軸、Ｙ軸、Ｚ軸の回りに何度回転させるかを指定することで行う。ここで設定した値も、運動条件設定ファイル７に格納される。（図１５には図示せず）但し、上記の「Ａｌｌ」、「Ｎｏｎｅ」の選択で、ここの原子に速度を与えるという「Ａｌｌ」の選択をした場合には、「Ｏｒｉｅｎｔａｔｉｏｎ」の指定はできない。「Ｏｒｉｅｎｔａｔｉｏｎ．．」を選択しない場合には、分子ＤＢ５１等に格納されている向きが計算に使用される。
【００３０】
「Ｄｉｒｅｃｔｉｏｎ．．」を選択した場合には、図１１の設定画面が表示され、この画面には、一つの方向だけを指定する「Ｆｉｘ」という選択項目と、方向を範囲で指定し、その範囲内でランダムに発生することを指定する「Ｒａｎｄｏｍ」の選択項目がある。「Ｆｉｘ」が指定された場合には、その方向を指定させ、その結果を図７の７５０の表示画面の７５２のように方向を表示する。（  但し、図７の７５２の表示は、「Ｒａｎｄｏｍ」を指定した場合のものであ    る。）
「Ｒａｎｄｏｍ」が指定された場合には、図１２のの設定画面が表示される。図１２の９００の表示画面に表示されている円錐の広がりの範囲内で、吸着子が発生することを示している。図１２の９１０の設定画面では、円錐の形状（広がり）、向きを指定するものである。広がりはψで設定し、向きについては、円錐の軸の傾きをＺ軸とのなす角度θおよび、Ｘ軸とのなす角度をφで設定する。この設定内容に基づいて、図１２の表示画面９００を表示する。表示画面９００の画面の下部は基盤粒子が存在するところである。また、この設定の後で、図７の設定画面を表示すると、図１２で設定した吸着子が発生する可能性のある方向ψ（広がり）に基づいて、７５２の図の表示を行う。
【００３１】
そして、ここで設定されたθ、φ、ψを、運動条件設定ファイル７のそれぞれ８１、８２、８３のカラムに格納する。
図１３は分子運動計算の処理フローであるが、図２の設定から実行までの処理フローのうち、Ｓ４００以降に該当するものである。まず、分子運動計算処理に必要な運動条件設定ファイル７を読み込む（Ｓ４０１）。次に、読み込んだ運動条件設定ファイル７の、吸着子の発生期間および量に関する情報から、吸着子発生ステップおよび吸着子識別番号を格納したテーブルを作成する。作成するテーブルの構成は、図１６のとおりである。例えば、図１５の「３」の識別子を持つ吸着子について説明する。７２のカラムには吸着子の識別番号が格納されている。識別子「３」は、７２のカラムの一番右端に格納されており、識別子「３」の吸着子に関する情報はすべてのカラムについて一番右端に格納されていることを示している。吸着子の発生期間の情報は７９のカラムに格納されており、吸着子の発生量は８０のカラムに格納されている。これらのデータは、１〜１０００ステップまでの間に１個の吸着子が発生し、１０００〜２０００ステップまでの間に２個の吸着子が発生し、２０００ステップからは吸着子が発生しないことを示している。また、７７のカラムにはどのように発生するかの情報が格納されており、識別子「３」の吸着子は不等間隔で発生することが設定されている。
【００３２】
等間隔で発生する場合には、例えば、１０００〜２０００ステップまでの１０００ステップの間を発生個数２で割ることで、吸着子１個の発生間隔を求める  （この場合は、５００ステップ間隔となる）。また、不等間隔の場合には、乱数を発生させ、発生した乱数を１０００から２０００ステップまでの間隔１０００ステップで割った余りを１０００に加えることで粒子を発生すべきステップを求める。この計算を発生粒子数分行う。図１６は、このようにして求めた結果の発生時期（ステップ番号）が格納されている。図１６は１２２２ステップと１６０６ステップに識別子「３」の吸着子を発生することを示している。
【００３３】
図１３の分子運動計算処理フローのＳ４１０以降は実際のシミュレーションの時間（ステップ数のカウント）がスタートした後のものである。まず、図１６の吸着子発生テーブルを参照して、現在の時間が吸着子発生ステップとして定義されているかを判定する。該当するものがあれば、吸着子を発生させる。そして、発生した吸着子および先に生成した基盤粒子の各粒子間に働く力を計算する（Ｓ５０１）。各粒子間で働く力より、運動方程式の数値積分を用いて、各粒子の現在の座標および速度を算出する（Ｓ５０２）。そして、求めた結果を時系列データ（時系列に並べてあるデータ）として、時系列記憶部４に格納する。そして、次のステップが最終ステップかを判定し、そうでなければ、Ｓ４１０からの処理を繰り返す（Ｓ５２０）。
【００３４】
図１４は、吸着粒子発生処理フローであり、図１３のＳ４２０の処理を詳細に示したものである。まず、乱数を用いて粒子の発生源位置を算出する。運動条件設定ファイル７の８４、８５カラムには、吸着子が発生する箇所が領域として定義されている。位置の算出は、領域内の座標値を乱数を２度発生することが算出する。すなわち、乱数を発生させ、Ｘ方向の領域の長さで割った時の余りをＸ方向の位置とし、続いてもう一度乱数を発生され、Ｙ方向の領域の長さで割った時の余りをＹ方向の位置とする。
【００３５】
次に、粒子を構成する原子を粒子の重心に対して静止させるか否かを判定する（Ｓ４２２）。これは、まず、吸着子発生テーブルを参照して、発生すべき吸着子の識別子を求め、この吸着子の識別子をキーにして、運動条件設定ファイル７の７４のカラムを参照する。７４のカラムに「１」が格納させれていれば、個々の原子に速度を与える必要がないので、次のステップＳ４２５を行う。７４のカラムに「０」が格納させれていれば、個々の原子に速度を与えるための処理を行う。
【００３６】
個々の原子に速度を与えるための処理の前にまず、粒子の向きを決定する。これは、粒子の向き（θ、φ、ψ）で乱数を発生させてランダムな向きになるように決定する（Ｓ４２３）。次に、粒子を構成する原子に初速度を設定する（Ｓ４２４）。粒子を構成する原子に初速度を与えるが、粒子全体としては重心がまず静止している状態を考え、以下の条件に基づいて各原子の仮の初速度を算出する。
−原子の運動量の総和がゼロであること（ΣＭｉ＊Ｖｉ＝０）
−温度と速度の関係式
（Σ１／２＊Ｍｉ＊Ｖｉ＾２＝（３Ｎ−３）／２＊Ｋｂ＊Ｔ
（Ｍｉ：原子の質量、Ｖｉ：原子の速度、Ｎ：粒子を構成する原子数
Ｋｂ：ボルツマン定数、Ｔ：粒子の初期温度）
（上記の（３Ｎ−３）は粒子の並進の自由度３を引いたものである。）
まず、温度と速度の関係式より、原子数Ｎ個の内の、Ｎ／２個の各原子の初速度のｘ、ｙ、ｚ成分をθ、φを所定範囲（０＜＝θ＜＝２π、０＜＝φ＜＝π）で一様乱数を発生させて、以下の式により算出する。（但し、原子数Ｎが偶数で無い場合には、（Ｎ−１）／２について行い、一つの原子は例えば速度ゼロとする）
0003648033.tif 000002
次に、原子の運動量の総和がゼロであることより、先に求めた１つの原子の運動量との和がゼロになるような１つの原子の速度を以下の式より算出する。（この計算をＮ／２個分行う）
Ｖｊｘ＝−Ｍｉ／Ｍｊ＊Ｖｉｘ
Ｖｊｙ＝−Ｍｉ／Ｍｊ＊Ｖｉｙ
Ｖｊｚ＝−Ｍｉ／Ｍｊ＊Ｖｉｚ
Ｓ４２５では、乱数を求めて、粒子の重心速度の方向を、その方向とＺ軸のなす角が、０〜ψ度の範囲で設定する。そして、この求めた粒子の重心速度の方向を、Ｚ軸を回転軸としてφ度回転し（Ｓ４２６）、さらに、上記回転操作で得られた座標系Ｏ−Ｘ’Ｙ’Ｚ’のＸ’軸を回転軸としてθ度回転する（Ｓ４２７）。求めた速度方向と粒子の重心速度に基づいて、粒子を構成する各原子の仮の初速度に加算する（Ｓ４２８）。
【００３７】
なお、重心速度は、上記でも説明したように、
１／２＊Ｍ＊Ｖ＾２＝３／２＊Ｋｂ＊Ｔ
（Ｍ：質量、Ｖ：速度、Ｋｂ：ボルツマン定数、Ｔ：温度）
という関係式と、運動条件設定ファイル７に格納されている温度情報より算出する。質量Ｍについては、吸着子を選択した、分子構造ＤＢ５１、結晶構造ＤＢ５２、分子性結晶ＤＢ５３のいずれかに格納されている情報を用いる。
【００３８】
【発明の効果】
本発明により、同じような操作で、吸着、結晶成長、表面損傷など様々な現象を扱えるようになる。さらに、個々のシミュレーション対象における、設定または変更したパラメタ値の変更の大きさ（影響度）が操作者に理解しやすくなった。
【図面の簡単な説明】
【図１】システム構成図
【図２】設定から実行までの処理フロー
【図３】吸着子発生源設定および基盤粒子属性設定処理フロー
【図４】吸着子発生源の位置及び領域指定の処理フロー
【図５】温度制御粒子設定の処理フロー
【図６】固定粒子設定の処理フロー
【図７】吸着子、基盤粒子設定画面
【図８】吸着子発生スケジュール設定画面
【図９】吸着子物理状態設定画面
【図１０】吸着子の方向設定画面
【図１１】吸着子射出方向設定画面（その１）
【図１２】吸着子射出方向設定画面（その２）
【図１３】分子運動計算処理フロー
【図１４】吸着子発生処理フロー
【図１５】運動条件設定ファイル
【図１６】吸着子発生テーブル
【符号の説明】
１      処理装置
２      表示装置
４      時系列記憶部
７      運動条件記憶部
１０      設定手段
１１      運動条件設定手段
１２      初期運動状態図表示手段
２０      粒子運動計算手段
２１      粒子発生手段
２２      分子動力学計算手段
３１      シミュレーション表示手段
５１      分子構造ＤＢ
５２      結晶構造ＤＢ
５３      分子性結晶ＤＢ
６０      ポテンシャルライブラリ
【図１】
0003648033.tif 000003
【図２】
0003648033.tif 000004
【図３】
0003648033.tif 000005
【図４】
0003648033.tif 000006
【図５】
0003648033.tif 000007
【図６】
0003648033.tif 000008
【図７】
0003648033.tif 000009
【図８】
0003648033.tif 000010
【図９】
0003648033.tif 000011
【図１０】
0003648033.tif 000012
【図１１】
0003648033.tif 000013
【図１２】
0003648033.tif 000014
【図１３】
0003648033.tif 000015
【図１４】
0003648033.tif 000016
【図１５】
0003648033.tif 000017
【図１６】
0003648033.tif 000018