(57)【要約】【課題】  本発明の課題は、分子構造設計の段階で初期電子密度行列を設定することにより、分子軌道計算を効果的かつ効率的に行い高速化することを目的とする。【解決手段】  上記課題は、与えられた分子構造データに対し、原子に関する原子データ構造、結合軸に関する結合軸データ構造、前記原子データ構造と前記結合軸データ構造と前記結合軸に関するデータを含む分子メインデータ構造とからなる分子データ構造、及び原子を構成する元素の元素データ構造とを少なくとも含むデータ構造を記憶した記憶部と、前記分子構造を表示する表示部と、前記表示部上に表示された前記分子構造への原子の配置を指示する操作部と、前記配置された前記原子の混成軌道と、前記原子及び前記原子による前記分子構造の原子との原子間結合に関与する局在化分子軌道を前記データ構造から導出する分子構造設計部と、を有することを特徴とする分子構造構築支援装置により達成される。【選択図】  図４
2012168916.tif 000002
【特許請求の範囲】
【請求項１】
与えられた分子構造データに対し、原子に関する原子データ構造、結合軸に関する結合軸データ構造、前記原子データ構造と前記結合軸データ構造と前記結合軸に関するデータを含む分子メインデータ構造とからなる分子データ構造、および原子を構成する元素の元素データ構造とを少なくとも含むデータ構造を記憶した記憶部と、
前記分子構造を表示する表示部と、
前記表示部上に表示された前記分子構造への原子の配置を指示する操作部と、
前記配置された前記原子の混成軌道と、前記原子及び前記原子による前記分子構造の原子との原子間結合に関与する局在化分子軌道を、前記記憶部に記憶された前記データ構造から導出する分子構造設計部と、
を有することを特徴とする分子構造構築支援装置。
【請求項２】
前記原子データ構造は、少なくとも、識別番号ないし原子番号、元素記号データ、フラグ情報、原子座標、電子数設定値、軌道数設定値、帰属する結合軸数、帰属する結合軸識別番号、混成軌道データ、孤立電子対数、孤立電子対局在化分子軌道データ、原子電荷情報を有し、
前記結合軸データ構造は、少なくとも、識別番号ないし結合軸順序番号、フラグ情報、両端原子の識別番号、結合軸ベクトルデータ、結合次数データ、σ局在化分子軌道データ、π局在化分子軌道データ、２電子積分データを有し、
前記分子メインデータ構造は、少なくとも、原子データ構造ポインタ、結合軸構造ポインタ、全原子数、全接合軸数を有し、
前記元素データ構造は、少なくとも、基準電子数設定値、基準軌道数設定値、結合半径情報、基準原子軌道情報を有する
ことを特徴とする請求項１に記載の分子構造構築支援装置。
【請求項３】
前記分子構造設計部は、少なくとも、前記σ局在化分子軌道データ、前記π局在化分子軌道データ、前記孤立電子対局在化分子軌道データを用いて、前記局在化分子軌道を導出することを特徴とする請求項２に記載の分子構造構築支援装置。
【請求項４】
前記局在化分子軌道に係る各データを２重化して、全電子数が奇数の場合に２種類の局在化分子軌道データを保持可能としたことを特徴とする請求項２記載の分子構造構築支援装置。
【請求項５】
前記分子構造設計部は、さらに、前記局在化分子軌道を元に、初期電子密度行列を導出することを特徴とする請求項１乃至３のいずれか一項に記載の分子構造構築支援装置。
【請求項６】
記憶部に記憶された分子構造に係る分子構造データに基づいて該分子構造が表示された画面上でなされたユーザ操作に応じて、追加された原子を識別する原子順序番号で特定される原子データと、該分子構造における該原子との結合軸に係る結合軸データとを、該分子構造データと関連付けて該記憶部内に追加生成し、
前記結合軸に係る局在化分子軌道を算出して、該算出結果を前記結合軸データ内の局在化分子軌道データに設定し、
前記結合軸の両端原子の原子順序番号を前記原子データ内の孤立電子対軌道データに設定し、
前記局在化分子軌道データと前記孤立電子対軌道データとを用いて、占有軌道に関する局在化分子軌道同士の積を足し上げることによって電子密度行列を前記記憶部に生成する
処理をコンピュータに実行させる分子構造設計プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、分子構造構築支援装置および分子構造設計プログラムに関するものである。
【背景技術】
【０００２】
近年、ドラッグデザインなどの先端研究開発において、コンピュータを用いた分子軌道計算へのニーズが高まっている。こうした分子軌道計算を実行するには、開発対象となる分子構造データをコンピュータに入力することが必要であり、特にドラッグデザインではタンパク質などの巨大分子系を扱うケースが多くなることから、こうした分子の入力操作が容易に実施できることを考慮したＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）を有する分子構造構築支援装置が用いられる。
【０００３】
従って、新たな特性をもつ分子を設計するなどの、新規の分子構造を構築する場合は、通常、上記のようなＧＵＩを有する分子構造構築支援装置を利用して、先ず新たな分子を組み立て、その分子の構造を基に、コンピュータ装置上の分子軌道計算プログラムを用いて、その分子の分子軌道を算出し、その分子特性などを把握する、と言った工程を踏むことが多い。
【０００４】
ところで、上記の分子軌道計算においては、分子の初期電子密度を設定することが必須要件となる。多くの分子軌道計算プログラムでは、その初期電子密度行列を対角行列に設定し、繰り返し計算を行って真の電子密度行列に近づけるといった手法を用いる。設定された初期電子密度（行列）が真の電子密度（行列）と大きく異なる場合、繰り返し計算回数が非常に多くなってしまって多大な計算時間を必要とし、場合によっては収束しないといった問題が、特に巨大分子系において頻繁に生じるため、的確な初期電子密度（行列）の設定が重要となる。
【０００５】
この問題に対処するため、初期電子密度の設定から、真の電子密度に近づける繰り返し計算まで、全て、局在化分子軌道（以下、ＬＭＯ：Ｌｏｃａｌｉｚｅｄ  Ｍｏｌｅｃｕｌａｒ  Ｏｒｂｉｔａｌｓ）を用いる手法が実用化されている。例えば、ＭＯＺＹＭＥ法（富士通（株）提供）では、局在化分子軌道（ＬＭＯ）を利用し、ＬＥＷＩＳ構造に沿う初期電子密度を構築して計算処理を行っている。初期電子密度の設定にＬＭＯは用いず、繰り返し計算の部分で分子を複数に分割することで、分子軌道を効率的に用いて計算する手法も提案されている。前者の手法を用いると、適切な初期電子密度を構成することが可能で、積分計算範囲を狭めれば繰り返し計算の各サイクルにおける計算量も省けることから、電子密度の高速計算が可能である。後者の手法は、初期電子密度に関する計算量過大化の問題や分割構造の統合時の不整合の問題が発生しない場合には、高速計算化が期待できる。また、初期電子密度の設定に関し、標準となる小規模分子の電子密度を流用することで、対角行列に比べ、適切な初期電子密度行列を構成し得る手法も提案されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平０７−１６８８０７号公報
【特許文献２】特開２００３−１２５６７号公報
【特許文献３】特開２００１−３１９１７９号公報
【非特許文献】
【０００７】
【非特許文献１】Ｐ．  Ｗ．  Ａｔｋｉｎｓ著、千原秀昭、中村亘男（共訳）、「アトキンス物理化学（Ｐｈｙｓｉｃａｌ  Ｃｈｅｍｉｓｔｒｙ）（上、下）」、東京化学同人、２００１年２月
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかし、分子軌道計算の高速化のための、従来の初期電子密度（行列）の設定の手法は、いずれも既に構造設計済みの分子を基にし、その結果を、専用の分子軌道計算プログラムに適用するといったものとなっている。
【０００９】
例えば、ドラッグデザインにおいては、タンパク質のうち、ある官能基のみの違いによるそれぞれの分子の物性変化を把握したい場合などがあるが、その場合、分子構造の大部分は殆ど同じではあるものの、ほんの一部の構造（例えば官能基）のみ異なる分子の分子軌道をそれぞれ計算する必要がある。従来の手法では、こういった電子密度行列の大部分が同じ場合であっても、適切な、収束性の良い初期電子密度行列を求めるためには、夫々の全分子構造を基に、最初から初期電子密度行列設定の処理をしなければならなく、その結果、莫大な計算量が必要となっている。例えば、前記のＭＯＺＹＭＥ法においても、一部の構造のみ変更した分子であっても、もとの分子と同様に全ての局在化分子軌道を利用する必要がある。そのため類似構造の分子系列であっても、初期電子密度構築の計算量は、分子の数だけ増大すると言った問題がある。
【００１０】
そこで本発明の課題は、分子軌道計算の高速化が可能な初期電子密度行列の設定を、短時間で、容易かつ的確に行うことができ、その結果、従来に比べ、分子軌道計算に必要な計算コストを大幅に削減可能である分子構造構築支援装置および分子構造構築支援プログラムを提供することにある。
【課題を解決するための手段】
【００１１】
開示の技術は、与えられた分子構造データに対し、原子に関する原子データ構造、結合軸に関する結合軸データ構造、前記原子データ構造と前記結合軸データ構造と前記結合軸に関するデータを含む分子メインデータ構造とからなる分子データ構造、および原子を構成する元素の元素データ構造とを少なくとも含むデータ構造を記憶した記憶部と、前記分子構造を表示する表示部と、前記表示部上に表示された前記分子構造への原子の配置を指示する操作部と、前記配置された前記原子の混成軌道と、前記原子及び前記原子による前記分子構造の原子との原子間結合に関与する局在化分子軌道を、前記記憶部に記憶された前記データ構造から導出する分子構造設計部と、を有することを特徴とする分子構造構築支援装置のように構成される。
【００１２】
また、上記課題を解決するための手段として、コンピュータによって実行される分子構造設計方法、及び上記分子構造構築支援装置としてコンピュータを機能させるためのプログラム、及びそのプログラムを記憶した記憶媒体とすることもできる。
【発明の効果】
【００１３】
開示の技術では、原子が追加された対象分子の分子軌道計算の高速処理が可能な初期電子密度行列の設定を、短時間で、容易かつ的確に行うことができる、といった効果を得ることができる。
【図面の簡単な説明】
【００１４】
【図１】分子構造構築のためのコンピュータ装置のハードウェア構成例を示す図である。
【図２】分子構造構築支援装置の機能構成例を示す図である。
【図３】ＬＭＯ構築の流れを説明するための図である。
【図４】データ構造を示す図である。
【図５】データ構造の初期化処理フローを説明するための図である。
【図６】ＬＭＯ設定処理フローを説明するための図（その１）である。
【図７】ＬＭＯ設定処理フローを説明するための図（その２）である。
【図８】エチレンの分子構造を示す図である。
【図９】エチレンの電子密度行列を示す図である。
【図１０】Ｆｏｃｋ行列の異原子間要素の式とエチレンの相互作用行列を示す図である。
【図１１】エチレンの混成軌道を構成する流れと各行列を示す図である。
【図１２】エチレンの結合ＬＭＯの行列例を示す図である。
【発明を実施するための形態】
【００１５】
以下、本発明の実施の形態を、図面を参照しつつ説明する。新規の分子構造を構築する処理は、図１に示すようなコンピュータ装置を用いて行われる。
【００１６】
図１は、分子構造構築のためのコンピュータ装置のハードウェア構成例を示す図である。例えば、専用プログラムを用いてその分子の分子軌道計算などを行い、分子特性などを把握するための分子構造構築など、各種科学計算処理が、図１に示すコンピュータ装置１０によって行われる。
【００１７】
図１において、コンピュータ装置１０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１、メモリ装置１２、表示部１３、出力部１４、操作部１５、通信部１６、記憶装置１７、ドライバ１８を有し、それらはシステムバス１９に接続される。
【００１８】
ＣＰＵ１１は、メモリ装置１２に格納されたプログラムに従って、コンピュータ装置全体を制御する。メモリ装置１２には、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）等が用いられ、ＣＰＵ１１において実行されるプログラム、ＣＰＵ１１での処理に必要なデータ、ＣＰＵ１１での処理により得られたデータ等を格納する。また、メモリ装置１２の一部の領域が、ＣＰＵ１１での処理に利用されるワークエリアとして割り付けられている。
【００１９】
表示部１３は、ＣＰＵ１１の制御のもとに必要な各種情報を表示する。出力部１４は、プリンタ等を有し、ユーザの指示に応じて各種情報を出力する。操作部１５は、キーボード、マウス等のポインティングデバイス等を有し、ユーザがコンピュータ装置１０によって処理を行うために必要な各種情報を入力するために用いられる。表示部１３、操作部１４及びＣＰＵ１１などの連携によって、ＧＵＩが構成可能となる。
【００２０】
通信部１６は、例えばインターネット、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等に接続し、外部装置との間の通信制御を行う。記憶装置１７は、例えば、ハードディスクユニットが用いられ、各種処理を実行するプログラムや各種データ等を格納する。
【００２１】
コンピュータ装置１０によって行われる処理を実現するためのプログラムは、例えば、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ  Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ）等の記憶媒体２０によってコンピュータシステム１０に提供される。プログラムが保存された記憶媒体２０がドライバ１８にセットされると、ドライバ１８が記憶媒体２０からプログラムを読み出し、読み出されたプログラムがシステムバス１９を介して記憶装置１７にインストールされ、プログラムが起動されると、記憶装置１７に記憶されたプログラムに従ってＣＰＵ１１がその処理を開始する。なお、プログラムを格納する媒体としてＣＤ−ＲＯＭに限定するものではなく、コンピュータが読み取り可能な媒体であればよい。またＵＳＢ（Ｕｎｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）対応のコンピュータ装置１０であれば、ＵＳＢ接続可能な外部記憶装置からインストールするようにしてもよい。
【００２２】
本実施の形態に係る分子構造構築支援装置３０は、分子軌道計算の高速化のための適切な初期電子密度行列を容易に設定可能とするための装置によって実現され、図１に例示されるハードウェア構成と後述される機能構成とを有する。
【００２３】
（分子構造構築支援装置の構成）
ＧＵＩ操作とデータ構造の連携で変更箇所のみの局在化分子軌道（ＬＭＯ）を構築し、初期電子密度行列の構成を可能とするための、本実施の形態に係る分子構造構築支援装置３０は、図２に示されるような機能構成を有する。
【００２４】
図２に示されるような機能構成において、分子構造構築支援装置３０は、表示処理部３１、操作処理部３２、出力処理部３３、分子構造設計部３４、記憶部３５等を有する。
【００２５】
表示処理部３１、操作処理部３２、出力処理部３３、及び分子構造設計部３４は、図１のコンピュータ装置１０のＣＰＵ１１が夫々対応するプログラムを実行することによって実現され、コンピュータ装置１０が本実施の形態に係る分子構築支援装置３０として動作する。
【００２６】
記憶部３５は、記憶装置１７及び／又はメモリ装置１２等によって構成され、本実施の形態における種々のデータを記憶し、少なくとも分子構造設計プログラム２１と、ＬＭＯ（Ｌｏｃａｌｉｚｅｄ  Ｍｏｌｅｃｕｌａｒ  Ｏｒｂｉｔａｌｓ）データ２９を含む分子構造データ２８とを記憶している。分子構造設計プログラム２１がＣＰＵ１１によって実行されることによって分子構造設計部３４が実現される。
【００２７】
表示処理部３１は、表示部１３へのデータ表示を制御する処理部である。操作処理部３２は、ユーザによって操作されるポインティングデバイスから入力されるデータを制御する処理部である。出力処理部３３は、出力部１４へのデータ出力を制御する処理部である。
【００２８】
分子構造設計部３４は、後述される分子構造設計に係る処理を行う処理部である。分子構造設計部３４は、後述されるデータ構造４０を用いてＬＭＯデータ２９を含む分子構造データ２８を記憶部３５に記憶する。ＬＭＯデータ２９を含む分子構造データ２８が分子軌道計算処理で使用されることによって、分子軌道計算処理での負荷を低減させることができ、効率的かつ効果的に分子軌道の計算を可能とする。
【００２９】
分子構造設計に係る処理は、分子構造構築支援装置３０において、例えば、以下のようなＧＵＩ操作を含む操作によって行われる。ユーザが、表示処理部３１によって図１の表示部１３に表示されるメインウインドウ上に、３次元分子構造の原子アイテムを、ポインティングデバイスなどのクリック操作やドラッグアンドドロップ操作、またキーボード操作などにより、選択して配置する。
【００３０】
そうした操作で構成された３次元分子構造の原子アイテムなどの表示データは、予めＨＤＤ（Hard Disk Drive）などの外部記憶装置、又は記憶部３５に格納され、操作処理部３２による操作プロセスが、分子構造設計部３３により処理されて、表示処理部３１上に３次元分子構造が選択や配置過程を含めて表示される。また、このＧＵＩ上に示される分子の３次元分子構造は、後述の図４に示すデータ構造を有し、これら操作処理部３２によって制御される操作はデータ構造の構築及び変更を記憶部３５内に記憶させることを伴っている。
【００３１】
次に、表示部１３の画面上で操作部３２によって選択した原子アイテムを、ユーザによる上記と同様なポインティングデバイスの操作で、所望の位置に挿入して変更あるいは再配置入力をする。このＧＵＩ操作によって３次元分子構造の原子アイテムからなる新たな分子構造の構成がなされ、このＧＵＩ上の変更分子構造は、同様に本実施の形態に係るデータ構造を含めて種々のデータ構造の再構築を記憶部３４内に行う。
【００３２】
そして、分子構造設計部３４は、この新たに入力変更されたデータ構造中のデータを用いて、変更分子構造の一部構造変更箇所のみの局在化分子軌道（ＬＭＯ）の処理を、本実施の形態に係る処理フローを有するプログラムを用いて実施し、原子データ構造Ａに原子上の電子密度情報である密度行列要素データを、結合軸データ構造Ｂに原子間の電子密度情報である密度行列要素データを算出する。分子構造設計部３４は、これら密度行列要素データから、初期電子密度行列で更新が必要な部分のみ変更処理を実施し、所期の初期電子密度行列の確定をする。
【００３３】
（ＬＭＯ構築の流れ）
本実施の形態においては、具体的には、新たに設定された原子間の接続個所のみに注目し、それに係わるＦｏｃｋ行列要素と混成軌道から局在化分子軌道（ＬＭＯ）を導出し、その局在化分子軌道（ＬＭＯ）から初期電子密度を算出するといったプロセスを取る。先ず、分子構造設計部３４によって行われる局在化分子軌道（ＬＭＯ）構築の流れについて図３で説明する。
【００３４】
図３において、本実施の形態おける分子構造構築支援装置３０で行われる、分子の一部構造を原子の付加などで変更した新たな分子に関し、その変更原子間接続箇所のみの局在化分子軌道（ＬＭＯ）を構築するための「ＬＭＯ構築の流れ」が例示される。
【００３５】
図３に示すように、先ず、分子構造構築支援装置３０内に、データが記憶された記憶媒体を用いて記憶部３５に格納することで、計算処理のために必要な、本実施の形態おける後述のデータ構造４０（図４）の初期値を、当該装置内に構築する（ステップＳ１）。
【００３６】
次に、操作部１５と表示部１３によるＧＵＩによるインタラクティブな作業により、原子を配置する（ステップＳ２）。このときの、図３中に模式的に示した画面３ａには、ＧＵＩによりＣ２Ｈ３分子にＨ原子を配置する操作状況例を示す。このとき原子間距離と結合形成の有無を判定し、「結合形成有り」を判定された場合、次にすすむ。
【００３７】
次に、模式図３ｂ−２に示すように、新たに追加されたＨによるＣとの接続から、当該するＨとＣとの結合を形成する原子上と原子間の原子軌道３ｂの相互作用を、分子構造設計部３４において計算する。この相互作用の計算は、結合に係わる部分の２電子積分、Ｆｏｃｋ行列要素を計算することに相当する（ステップＳ３）。
【００３８】
次に、模式図３ｃ−２に示すように、相互作用行列の対角化により混成（原子）軌道３ｃの算出を、分子構造設計部３４において行う（ステップＳ４）。
【００３９】
そして、模式図３ｄ−２に示すように、混成（原子）軌道３ｃとＦｏｃｋ行列要素を用いて、局在化分子軌道（ＬＭＯ（σ）３ｄ）を、分子構造設計部３４を用いて導出する（ステップＳ５）。このときσＬＭＯ及びπＬＭＯともに考慮する。
【００４０】
（データ構造）
本実施の形態における、分子構造構築支援装置３０の処理に使用される分子構造データ２８のデータ構造を以下に説明する。図４はデータ構造を示す図である。図４（Ａ）に示されるデータ構造４０は、記憶部３５内に展開され、分子構造構築支援処理により情報を格納することによって設定される、又は格納された分子構造データ２８を参照するためのデータ構造である。
【００４１】
図４（Ａ）において、データ構造４０は、ヘッダ４１、分子データ４２、元素データ４３、操作用データであるイベントデータ４４を有し、分子データ４２内には、分子メインデータ４２ｍと、原子データ４２ａ、結合軸データ４２ｂとを有する。
【００４２】
ヘッダ４１は、分子データポインタ（Ｍ）、元素データポンタ（Ｅｌ）、イベントデータポインタ（Ｅ）とによるデータ構造を有する。分子データポインタ（Ｍ）は、分子データ４２が格納されている先頭アドレスを示すポインタであり、元素データポインタ（Ｅｌ）は、元素データ４３が格納されている先頭アドレスを示すポインタであり、イベントデータポインタ（Ｅ）はイベントデータ４４が格納されている先頭アドレスを示すポインタである。
【００４３】
分子データ４２に関し、分子メインデータ４２ｍは、原子データポインタ（Ａ）、結合軸データポインタ（Ｂ）、原子数（ｎ）、結合軸数（ｎｂ）によるデータ構造を有する。原子データポインタ（Ａ）は、原子データ４２ａが格納されている先頭アドレスを示すポインタであり、結合軸データポインタ（Ｂ）は、結合軸データ４２ｂが格納されている先頭アドレスを示すポインタである。
【００４４】
原子数（ｎ）は、この分子データ４２で管理される原子の個数、つまりユーザがＧＵＩ上に配置した原子の個数であり、また原子データ４２ａの数に相当する。結合軸数（ｎｂ）は、この分子データ４２で管理される結合軸の数であり、結合軸データ４２ｂの数に相当する。
【００４５】
分子データ４２のデータ構造を分子データ構造Ｍとし、原子データ４２ａのデータ構造を原子データ構造Ａ，結合軸データ４２ｂのデータ構造を結合軸データ構造Ｂとする。
【００４６】
また、元素データ４３のデータ構造を元素データ構造Ｅｌとする
本実施の形態における上記データ構造の特徴は、原子データ４２ａの原子データ構造Ａと、結合軸データ４２ｂの結合軸データ構造Ｂとがそれぞれ全ての原子と結合軸に対して１対１対応のデータを含んでいることである。
【００４７】
また、原子データ４２ａには、原子に付随する軌道数と電子数の情報、演算処理に必要なフラグ情報、更に混成軌道ＨＯデータ、孤立電子対局在化分子軌道ＬＭＯデータ、孤立電子対数、原子電荷情報を含まれている。
【００４８】
更に、結合軸データ４２ｂには、σ局在化分子軌道ＬＭＯデータ、π局在化分子軌道ＬＭＯデータ、２電子積分データを含み、また元素データ４３の元素データ構造Ｅｌにおいて、元素データ４３には元素の結合半径情報と、基準となる軌道数および基準となる電子数の情報、原子軌道データを含まれている。
【００４９】
図４（Ａ）のデータ構造４０の要素に関し、先ず、原子データ４２ａの原子データ構造Ａについて、図４（Ｂ）で説明する。図４（Ｂ）に例示される原子データ構造Ａ４０ａは、原子順序番号（ａ）、元素記号データ（Ｎ）、座標データ（ｃ）、含有結合軸数（ｎｂ）、含有結合軸番号（ｂ）、イベントフラグ（ｆ）、電子数（ｎ）、軌道数（ｍ）、混成軌道データ（ｈｏ）、孤立電子対数（ｎｌ）、孤立電子対軌道データ（ｌｌ）、原子電荷（ｑ）、そして密度行列要素データ（ｐａ）、そして原子軌道（ａ０）の項目を有する。
【００５０】
次に、結合軸データ構造Ｂについて、図４（Ｃ）で説明する。図４（Ｃ）に例示される結合軸データ構造Ｂ４０ｂは、結合軸順序番号（ｂ）、ベクトルデータ（ｖ）、結合次数データ（ｂｔ）、両端原子番号（ａ）、イベントフラグ（ｆ）、σ軌道データ（ｌｓ）、π軌道データ（ｌｐ）、密度行列要素データ（ｐｂ）、そして２電子積分データ（ｉｎｔ２ｅｌ）、結合フラグ（ｂｆ）の項目を有する。
【００５１】
元素データ４３の元素データ構造Ｅｌ（図４（Ａ））については、結合半径（ｒ）、基準電子数（ｎ０）、基準軌道数（ｍ０）の項目を有する。
【００５２】
以上のデータ構造で、例えば、原子データ構造Ａの混成軌道（ＨＯ）データｈｏは、Ａ−＞ｈｏというポインタで表現できる。例えば、元素データ４３の元素データ構造Ｅｌについては、各元素（ｉと表現する）について、少なくとも、結合半径ｒ、基準電子数ｎ０、基準軌道数ｍ０、原子軌道ａ０の要素を持ち、結合半径ｒはＥｌ〔ｉ〕−＞ｒ、基準電子数ｎ０はＥｌ〔ｉ〕−＞ｎ０、基準軌道数ｍ０はＥｌ〔ｉ〕−＞ｍ０、原子軌道ａ０はＥｌ〔ｉ〕−＞ａ０のように表現できる。
【００５３】
さらに、図４（Ｂ）に示す原子データ構造Ａ４０ａに関し、原子順序番号Ａ−＞ａは内部座標における識別番号の役割を果たす。元素記号データＡ−＞Ｎは元素記号または元素の原子番号を示す。座標データＡ−＞ｃ〔３〕は、原子の３次元座標系の各位置座標成分を表す。含有結合軸数Ａ−＞ｎｂは原子が有する他原子との結合軸数を示す。含有結合軸数Ａ−＞ｎｂの値は、入力された分子構造から原子半径Ｅｌ−＞ｒを元に、原子対を成していると推定される結合軸の数を表す。また含有結合軸番号Ａ−＞ｂ〔ｎｂ〕は、含有結合軸数における各結合軸の識別番号（含有結合軸番号）ｂの集合データを表す。
【００５４】
イベントフラグＡ−＞ｆは、局在化分子軌道ＬＭＯを設定済みかどうかなど、様々な状態を表すフラグである。電子数Ａ−＞ｎは、例えば、図３で述べた処理により、初期値（基準電子数設定値）Ｅｌ−＞ｎｏから０にまで変動し得る。軌道数Ａ−＞ｍについても、例えば、図３で述べた処理により、初期値（基準電子数設定値）Ｅｌ−＞ｍｏから０にまで変動し得る。混成軌道データＡ−＞ｈｏは混成軌道（ＨＯ）データを、孤立電子対数Ａ−＞ｎｌは孤立電子対数を、孤立電子対軌道データＡ−＞ｌｌは孤立電子対軌道データの特に局在化分子軌道ＬＭＯデータを、それぞれ示す。原子電荷Ａ−＞ｑは原子上の電荷を示す。
【００５５】
また、結合軸設定可能を示す結合フラグＡ−＞ｂｆは、例えば、結合フラグ（ｂｆ）の初期値をＦとし、軌道数Ａ−＞ｍ、電子数Ａ−＞ｎとがゼロであれば「Ｆ」、また、軌道数Ａ−＞ｍか、含有結合軸数Ａ−＞ｎｂがゼロでなく、含有結合軸番号Ａ−＞ｂに関与する他の原子ｊについて結合フラグＡ−＞ｂｆが「Ｆ」となる結合が１つ、残りの結合フラグは全て「Ｔ」の場合には値を「Ｃ」とする。処理の過程において、他の原子ｊについて結合フラグＡ−＞ｂｆが「Ｃ」となる結合が１つ、残りの結合は全て「Ｔ」の場合にも、値を「Ｃ」とする。
【００５６】
図４（Ｃ）に示す結合軸データ構造Ｂに関し、結合軸順序番号Ｂ−＞ｂは全ての結合軸を１対１対応させるための識別番号の役割を果たす。ベクトルデータＢ−＞ｖは結合軸を３次元ベクトルと１対１に対応させたものである。結合指数Ｂ−＞ｂｔは、初期値は０であり、例えば、図３で述べた処理により、適切な結合次数へと変動する。
【００５７】
両端原子番号Ｂ−＞ａ〔２〕は、結合軸の両末端に存在する原子順序番号（＝原子の識別番号）Ａ−＞ａの部分集合データである。イベントフラグＢ−＞ｆは、例えば、図３での処理の進行段階等、様々な状態を表すフラグである。σ軌道データＢ−＞ｌｓは、σ結合の局在化分子軌道ＬＭＯデータを、π軌道データＢ−＞ｐｂは、π結合の局在化分子軌道ＬＭＯデータを表す。また、２電子積分データＢ−＞ｉｎｔ２ｅｌは２原子間の２電子積分を格納するためのデータである。
【００５８】
分子データ４２の分子データ構造Ｍ（図４（Ａ））に関し、これは相互のデータを保持しあう、原子データ（構造）ポンタＭ−＞Ａと、結合軸データ（構造）ポインタＭ−＞Ｂの双方を含み、図３の処理に対応するために、原子数Ｍ−＞ｎ、結合軸数Ｍ−＞ｎｂを含む。
【００５９】
元素データ４３の元素データ構造Ｅｌ（図４（Ａ））に関し、基準電子数Ｅｌ−＞ｎ０、基準軌道数Ｅｌ−＞ｍ０、原子軌道データＥｌ−＞ａ０、結合半径データＥｌ−＞ｒを含んでいる。
【００６０】
そして、更に、図４（Ｂ）に示すように、データ構造４０の、原子データ構造Ａ４０ａに、原子上の電子密度情報である、密度行列要素データＡ−＞ｐａを含め、また、図４（Ｃ）に示すように、結合軸データ構造Ｂ４０ｂに、原子間の電子密度情報である、密度行列要素データＢ−＞ｐｂを含める。このような原子データ構造Ａ４０ａ及び結合軸データ構造Ｂ４０ｂによって、局在化分子軌道ＬＭＯデータを構築後、変更された局在化分子軌道ＬＭＯデータのみを用いて電子密度の必要なデータのみを更新し、電子密度情報を確立することも可能となる。
【００６１】
また、奇数個の電子を持つ分子に関する分子構成設計の場合には、図４（Ｂ）に示す原子データ構造Ａ４０ａにおいて、アップスピン電子とダウンスピン電子に関して、マーク●で示される、電子数（ｎ）、混成軌道データ（ｈｏ）、孤立電子対数（ｎｌ）、孤立電子対軌道データ（ｌｌ）、密度行列要素データ（ｐａ）の各々を配列で構成して２重化すればよい。
【００６２】
この場合に、図４（Ｃ）に示す結合軸データ構造Ｂ４０ｂにおいて、マーク●で示される、σ軌道データ（ｌｓ）、π軌道データ（ｐｂ）、密度行列要素データ（ｐｂ）の各々を配列で構成して２重化すればよい。
【００６３】
原子データ構造Ａ４０ａ（図４（Ｂ））の孤立電子対軌道データ（ｌｌ）と、結合軸データ構造Ｂ４０ｂ（図４（Ｃ））のσ軌道データ（ｌｓ）及びπ軌道データ（ｌｐ）とが、図２に示すＬＭＯデータ２９に相当する。
【００６４】
（データ構造の初期化処理）
上記データ構造４０を構築するに際し、先ず、データ構造の初期化処理を行う。本実施の形態では、既存の分子構造において、上述したようなＧＵＩによる原子の追加、削除、変更等に基づいて、新たに結合を構成する原子上とその原子に係る原子間のみの相互作用が計算される。この計算処理で必要となるデータ構造を初期化するための初期化処理フローについて、図５で説明する。
【００６５】
図５において、図２の分子構造構築支援装置３０の分子構造設計部３４は、分子データ４２の分子データ構造Ｍ及び元素データ４３の元素データ構造Ｅｌを構築（Ｃｏｎｓｔｒｕｃｔ）する（ステップＳ１１）。
【００６６】
そして、分子構造設計部３４は、元素データ構造Ｅｌについて、例えば原子番号１の水素から８８のラジウムまで設定する場合には、元素データ構造ＥｌについてＥｌ〔１：８８〕に必要なメモリ領域を確保する。原子半径と基準電子数、基準軌道数、原子軌道のデータについて、各元素に対応する値を設定する。例えば、原子半径Ｅｌ−＞ｒは、各元素のファンデアワールス半径とし、基準電子数Ｅｌ−＞ｎ０と基準軌道数Ｅｌ−＞ｍ０は、分子軌道計算に用いる基底関数系を考慮した数値とし、原子軌道Ｅｌ−＞ａ０のデータについても、基底関数系を考慮する。なお、基底関数系のデータ及びどの基底関数系を用いるかについては、分子構造構築支援装置３０のＧＵＩにより、それが用いる基底関数系の当該ファイルを読み込むこととする。
【００６７】
分子構造設計部３４は、分子データ構造Ｍについて、原子データ構造Ａ（図４（Ｂ））へのポインタＭ−＞Ａ、及び結合軸データ構造Ｂ（図４（Ｃ））へのポインタＭ−＞Ｂに必要なメモリ領域を確保し、更に、すべての原子数Ｍ−＞ｎ、すべての結合軸数Ｍ−＞ｎｂ用のメモリ領域を確保する。なお支障が無ければ、ポインタＭ−＞Ａ、ポインタＭ−＞Ｂを設定しなくてもよい。
【００６８】
次に、分子構造設計部３４は、原子の（３次元）位置座標を入力し（ステップＳ１２）、入力した原子の位置座標の個数に基づいて、原子数ｎを原子数Ｍ−＞ｎに設定する（ステップＳ１３）。そして、分子構造設計部３４は、原子数ｎ分の原子データ構造Ｍ−＞Ａ〔１：Ｍ−＞ｎ〕のメモリ領域を確保（Ａｌｌｏｃａｔｅ）する（ステップＳ１４）。
【００６９】
次に、分子構造設計部３４は、原子を順番に指定する原子順番変数ｉ（以下、単に原子ｉと称する）をゼロに、また結合軸数Ｍ−＞ｎｂをゼロにする（ステップＳ１５）。分子構造設計部３４は、原子ｉを１増やして次の原子を指定し、原子ｉの結合対象となる原子順番変数ｊ（以下、単に原子ｊと称する）をｉとし（ステップＳ１６）、更に、結合対象の原子ｊを１増やしておく（ステップＳ１７）。
【００７０】
そして、分子構造設計部３４は、原子ｉと原子ｊの距離が夫々の結合半径ｒから定まる閾値より小さいか否かを判断する（ステップＳ１８）。具体的には、原子ｉの座標と原子ｊの座標との差（の絶対値）は、原子ｉと原子ｊとでなる夫々の元素の結合半径ｒより小さいか否かを判定する。閾値以上の場合（ＮＯ）は、分子構造設計部３４は、原子ｉを原子ｊの対象とせずにステップＳ１７に戻り、上述同様の処理を繰り返す。一方、閾値より小さい場合（ＹＥＳ）は、分子構造設計部３４は、結合軸数Ｍ−＞ｎｂを１増やす（ステップＳ１９）。
【００７１】
そして、分子構造設計部３４は、原子ｉに対する結合対象の原子ｊとして、原子数Ｍ−＞ｎ分の処理を終了したか否か（原子ｊが原子数ｎに一致したか否か）を判断する（ステップＳ２０）。
【００７２】
終了していない場合（ＮＯ）は、分子構造設計部３４はステップ１４へ戻り、上述同様の処理を繰り返す。終了した場合（ＹＥＳ）は、分子構造設計部３４は、原子数Ｍ−＞ｎから１減じた個数分の原子ｉ全てに対して処理を終了したか否か（原子ｉが原子数ｎから１減じた数に一致したか否か）を判断する（ステップＳ２１）。
【００７３】
ここで、全て終了していない場合（ＮＯ）は、分子構造設計部３４は、ステップＳ１３に戻り、上述同様の処理を繰り返す。原子ｉ全てに対して処理が終了した場合（ＹＥＳ）は、全結合軸数が決定したことになるため、分子構造設計部３４は、結合軸数ｎｂ分の結合軸データ構造Ｍ−＞Ｂ〔１：Ｍ−＞ｎｂ〕のメモリ領域を確保（Ａｌｌｏｃａｔｅ）して（ステップＳ２２）、このデータ構造の初期化を終了する。ここで、原子、結合軸夫々を識別する識別番号は、例えば決定した順番、即ち原子順序番号Ａ−＞ａ、結合軸順序番号Ｂ−＞ｂとして設定できる。
【００７４】
（局在化分子軌道（ＬＭＯ）の設定）
以上のデータ構造の初期設定を行った後、局在化分子軌道（ＬＭＯ）の設定の導出を行う。ＬＭＯ設定処理について図６及び図７で説明する。図６及び図７において、ステップＳ３２からステップＳ５７までが、新たに結合を構成する原子上と原子間のみの相互作用を計算してＬＭＯを設定するＬＭＯ設定処理である。以下は、Ｎ個の原子が付加される場合について記述する。
【００７５】
図６において、図２の分子構造構築支援装置３０の分子構造設計部３４は、分子データ構造Ｍ、操作用データ構造Ｅ、元素データ構造Ｅｌ、原子データ構造Ａ及び結合軸データ構造Ｂを構築（Ｃｏｎｓｔｒｕｃｔ）する（ステップＳ３１）が、先に初期設定した、元素データ構造及び分子データ構造以外の原子データ構造Ａ及び結合軸データ構造Ｂの初期設定を行う。
【００７６】
原子データ構造Ａについては、原子順番変数ｉ（以下、単に原子ｉと称する）の原子順序番号Ａ〔ｉ〕−＞ａには、入力した順の番号を設定する。原子ｉの元素記号Ａ〔ｉ〕−＞Ｎには元素の原子番号を、原子ｉの座標Ａ〔ｉ〕−＞ｃには入力した原子のＣａｒｔｅｓｉａｎ座標を設定する。原子ｉの初期の電子数には元素記号Ｎの基準電子数、即ち、Ａ〔ｉ〕−＞ｎ＝Ｅｌ〔Ａ〔ｉ〕−＞Ｎ〕−＞ｎ０とする。また、原子ｉの初期の軌道数には、元素記号Ｎの基準軌道数、即ち、Ａ〔ｉ〕−＞ｎ＝Ｅｌ〔Ａ〔ｉ〕−＞Ｎ〕−＞ｍ０とする。原子ｉの初期の原子電荷にはゼロ、即ち、Ａ〔ｉ〕−＞ｑ＝０とする。原子ｉの含有結合軸数Ａ〔ｉ〕−＞ｎｂ、及び原子ｉの含有結合軸番号Ａ〔ｉ〕−＞ｂは、結合軸データ構造Ｂの初期設定と同時に設定する。
【００７７】
次に、分子構造設計部３４は、Ｎ個の原子の（３次元）位置座標を入力し（ステップＳ３２）、入力した原子の位置座標の個数に基づいて、原子データ構造Ａに関し、原子数Ｍ−＞ｎ＋１から原子数Ｍ−＞ｎ＋Ｎ分のメモリ領域を確保し、原子数Ｍ−＞ｎを原子数Ｍ−＞ｎ＋Ｎにセットする（ステップＳ３３）。
【００７８】
次に、分子構造設計部３４は、原子ｉをゼロに、原子ｊを原子数Ｍ−＞ｎ−Ｎに、結合軸順番変数ｋ（以下、単に結合軸ｋと称する）を含有結合軸数Ｍ−＞ｎｂに、追加される結合軸数ｌをゼロにする（ステップＳ３４）。
【００７９】
次に、分子構造設計部３４は、原子ｊを１増やしてｊ＋１にし（ステップＳ３５）、次に原子ｉを１増やしてｉ＋１にする（ステップＳ３６）。
【００８０】
結合軸データ構造Ｂについては、原子ｉと結合対象となる原子ｊの距離が閾値以下と判定した原子間について判定した順序で設定する。
【００８１】
次に、分子構造設計部３４は、原子ｉと原子ｊの距離が夫々の結合半径ｒから定まる閾値より小さいか否かを判断する（ステップＳ３７）。具体的には、原子ｉに座標ｃと原子ｊの座標ｃとの差（の絶対値）が原子ｉと原子ｊとでなる夫々の元素の結合半径ｒより小さいか否かを判定する。閾値以上の場合（ＮＯ）は、分子構造設計部３４は、原子ｉを原子ｊの対象とせずにステップＳ３６に戻り、上述同様の処理を繰り返す。一方、閾値より小さい場合（ＹＥＳ）は、分子構造設計部３４は、結合軸数Ｍ−＞ｎｂを１増やし、原子ｉと原子ｊからなる含有結合軸数Ａ〔ｉ，ｊ〕−＞ｎｂを１増やす（ステップＳ３８）。
【００８２】
次に、分子構造設計部３４は、原子ｉと原子ｊからなる軌道数、または電子数Ａ〔ｉ，ｊ〕−＞ｍ（ｏｒ  ｎ）を、原子ｉと原子ｊからなる軌道数、または電子数Ａ〔ｉ，ｊ〕−＞ｍ（ｏｒ  ｎ）から原子ｉと原子ｊからなる含有結合軸数Ａ〔ｉ，ｊ〕−＞ｎｂを引いた数にする（ステップＳ３９）。
【００８３】
次に、分子構造設計部３４は、結合軸ｋと追加する結合軸の数ｌを１増やし（ステップＳ４０）、そして、結合軸ｋの結合軸データ構造Ｂに関し、結合軸ｋの結合次数Ｂ〔ｋ〕−＞ｂｔを１に設定し、原子ｉの含有結合軸番号ｂを結合軸ｋに追加し、原子ｊの含有結合軸番号ｂを結合軸ｋに追加する（ステップＳ４１）。
【００８４】
こうして、例えば、結合軸がそれまでにｋ−１個設定されている場合に、原子ｉと原子ｊの距離が閾値以下と判定された場合には、ｉｊ間の結合軸を結合軸ｋの結合軸データ構造Ｂ〔ｋ〕と設定する。ここで、含有結合軸数ｎｂをｋ、即ちＢ〔ｋ〕−＞ｎｂ＝ｋ、１のの原子順序番号をｉ、即ちＢ〔ｋ〕−＞ａ〔１〕＝ｉ、２の原子順序番号をｊ、即ちＢ〔ｋ〕−＞ａ〔２〕＝ｊと設定し、また、原子ｉの含有結合軸数Ａ〔ｉ〕−＞ｎｂを１増やし、原子ｉの含有結合軸番号Ａ〔ｉ〕−＞ｂをｋに、原子ｊの含有結合軸番号Ａ〔ｊ〕−＞ｂをｋに設定する。
【００８５】
原子ｉと原子ｊからなる混成軌道データ（ＨＯデータ）Ａ〔ｉ，ｊ〕−＞ｈｏの初期設定は、元素記号Ｎでの原子軌道Ｅｌ〔Ａ〔ｉ，ｊ〕−＞Ｎ〕−＞ａ０に対して成される。結合次数Ｂ〔ｉ，ｊ〕−＞ｂｔは、ＧＵＩで直接指定することが可能である。
【００８６】
以後のステップは相互作用の算定となる。分子構造設計部３４は、結合軸ｋの結合軸データ構造Ｂの２電子積分データＢ〔ｋ〕−＞ｉｎｔ２ｅｌに、１の両端原子番号Ｂ〔ｋ〕−＞ａ〔１〕と２の両端原子番号Ｂ〔ｋ〕−＞ａ〔２〕間の２電子積分データを設定する。ここで、原子ｉと原子ｊについてＦｏｃｋ行列要素（Ｆｏｃｋ  Ｅｌｅｍｅｎｔｓ）を計算する（ステップＳ４２）。相互作用行列を求めるに際し、それは原子間のハミルトニアン要素に設定する。ハミルトニアン要素は、通常の分子軌道計算と同様な手法でも読むことがきる。こうして相互作用行列が得られたら、対角化によって固有ベクトルを算出し、得られた固有ベクトルを直交変換することにより、混成軌道データ（ＨＯデータ）を得ることができる。
【００８７】
次に、分子構造設計部３４は、原子ｉが原子ｊに一致したかを判断する（ステップＳ４３）。一致しない場合（ＮＯ）は、分子構造設計部３４は、ステップＳ３６に戻り、上述同様の処理を繰り返す。一方、一致した場合（ＹＥＳ）は、分子構造設計部３４は、原子ｊは原子数Ｍ−＞ｎに一致したか判断する（ステップＳ４４）。
【００８８】
次に、分子構造設計部３４は、原子ｊは原子数Ｍ−＞ｎに一致したか判断し、原子ｊが原子数Ｍ−＞ｎに一致しない場合（ＮＯ）は、分子構造設計部３４は、ステップＳ３５に戻り、上述同様の処理を繰り返す。原子ｊが原子数Ｍ−＞ｎに一致した場合（ＹＥＳ）は、図７において、結合軸データ構造Ｂの結合次数Ｂ−＞ｂｔを設定し、原子データ構造Ａの原子電荷Ａ−＞ｑと、孤立電子対数Ａ−＞ｎｌと、軌道数Ａ−＞ｍと、電子数Ａ−＞ｎと、結合フラグＡ−＞ｂｆとを設定する（ステップＳ４５）。
【００８９】
図７において、以下に説明されるステップＳ４６〜Ｓ５７は、奇数個の電子を持つ分子に関する分子構成設計の場合には、アップスピン電子とダウンスピン電子との夫々に関して実行される繰り返し処理７ａとして構成される。
【００９０】
ステップＳ４５の後、分子構造設計部３４は、結合軸ｉに、含有結合軸数から、追加結合軸数ｌを減じたものＭ−＞ｎｂ−ｌを初期設定する（ステップＳ４６）。そして、分子構造設計部３４は、結合軸ｉを１増やす（ステップＳ４７）。
【００９１】
次に、分子構造設計部３４は、結合軸ｉの結合軸データ構造Ｂにおいて、σ軌道データＢ〔ｉ〕−＞ｌｓを設定し（Ｓｅｔ  Ｓｉｇｍａ  ＬＭＯ、ステップＳ４８）、設定したら、結合次数に関するカウンターｊをゼロに初期設定する（ステップＳ４９）。σ軌道データは、σＬＭＯ（σ局在化分子軌道）を示す。
【００９２】
次に、分子構造設計部３４は、カウンターｊを１増やし（ステップＳ５０）、結合軸ｉの結合軸データ構造Ｂにおいて、π軌道データＢ〔ｉ〕−＞ｌｐを設定する（Ｓｅｔ  Ｐｉ  ＬＭＯ、ステップＳ５１）。π軌道データは、πＬＭＯ（π局在化分子軌道）を示す。
【００９３】
次に、分子構造設計部３４は、カウンターｊが、結合軸ｉの結合次数から１減じたものＢ〔ｉ〕−＞ｂｔ−１と一致するか（ｊがπ結合の数ｂｔ−１まで終了したか）判断する（ステップＳ５２）。そして、一致しない場合（ＮＯ）は、分子構造設計部３４は、ステップＳ５０に戻り、上述同様の処理を繰り返し、一致した場合（ＹＥＳ）は、分子構造設計部３４は、孤立電子対数に関するカウンターｊを０に初期設定する（ステップＳ５３）。
【００９４】
このように、結合軸データ構造Ｂのσ軌道データＢ〔ｉ〕−＞ｌｓを、結合軸に対して必ず存在するσ結合のＬＭＯに設定する。具体的には、Ｆｏｃｋ行列要素と、混成軌道データ（ＨＯ）の積分値からなる２次元行列式の解から求めた係数を結合軸両端原子の混成軌道データ（ＨＯ）に作用させ、１つの軌道に纏めることで、σＬＭＯが得られる。ここで、混成軌道データ（ＨＯ）には、相互作用が最大となるものを用いる。π結合のＬＭＯについては、結合次数から（σ結合の分）１だけ少ない回数（Ｂ〔ｉ〕−＞ｂｔ−１）について、残った混成軌道データ（ＨＯ）を用いて、σＬＭＯと同様の処理を行うことにより得られる。
【００９５】
次に、分子構造設計部３４は、孤立電子対数に関するカウンターｊを１増やし（ステップＳ５４）、そして、結合軸ｉの両端原子番号１、２を孤立電子対軌道データＡ〔Ｂ〔ｉ〕−＞ａ〔１，２〕〕−＞ｌｌに設定する（Ｓｅｔ  Ｌｏｎｅ  Ｐａｉｒ  ＬＭＯ、ステップＳ５５）。
【００９６】
次に、分子構造設計部３４は、カウンターｊが、結合軸ｉの両端原子番号１、２における孤立軌道対数Ａ〔Ｂ〔ｉ〕−＞ａ〔１，２〕〕−＞ｎｌに一致したか（ｊが孤立電子対の数ｎｌまで終了したか）を判断する（ステップＳ５６）。そして、一致しない場合（ＮＯ）は、処理部３３は、ステップＳ５４に戻り、上述同様の処理を繰り返し、一致した場合（ＹＥＳ）は、分子構造設計部３４は、結合軸ｉが結合軸数Ｍ−＞ｎｂに一致したか（ｉがｎｂまで終了したか）を判断する（ステップＳ５７）。そして、一致しない場合（ＮＯ）は、分子構造設計部３４は、ステップＳ４７に戻り、上述同様の処理を繰り返し、一致した場合（ＹＥＳ）は、処理を終了する。
【００９７】
このように、σＬＭＯとπＬＭＯの構成後、残った混成軌道（ＨＯ）とその数を、孤立電子対軌道データＡ〔ｉ，ｊ〕−＞ｌｌと、孤立電子対数Ａ〔ｉ，ｊ〕−＞ｎｌに設定する。
【００９８】
そして、原子ｉの密度行列要素データＡ〔ｉ〕−＞ｐａ、結合軸ｋの密度行列要素データＢ〔ｋ〕−＞ｐｂの電子密度データを有するようにする場合、局在化分子軌道ＬＭＯだけでなく、初期電子密度行列データを個々の原子と結合軸毎にＧＵＩ上で保持することが可能となる。電子密度行列については、σＬＭＯ，πＬＭＯ、孤立電子対ＬＭＯを用い、占有軌道に関するＬＭＯ同士の積を足し上げることで得られる。
【００９９】
（実施例１）
Ｃ２Ｈ４（エチレン）の、局在化分子軌道（ＬＭＯ）と初期電子密度の設定を本実施の形態の手法により実施する。Ｃ２Ｈ４（エチレン）の構造を図８で説明する。Ｃ２Ｈ４（エチレン）の構造が図８（Ａ）に示されている。図８（Ａ）中、各原子を識別するために、Ｃ１、Ｃ２、Ｈ３〜Ｈ６のように原子記号に番号を付してある。
【０１００】
また、原子間距離８ａ及び８ｂ、Ｈ−Ｃ−Ｈの角度８ｃは図８（Ｂ）に示すようになっている。原子Ｃと原子Ｃとの距離８ａは１．３オングストロームであり、原子Ｃと原子Ｈとの距離８ａは１．０オングストロームである。また、Ｈ−Ｃ−Ｈの角度８ｃは１２０°である。分子軌道計算には、半経験的分子軌道法の一つのＭＮＤＯ法を用いた。また基底関数系は、ＭＮＤＯ法のスレーター軌道とした。
【０１０１】
図５と図６から図７のフローに従う分子構造設計プログラム２１をＣＰＵ１１が実行することによって、以下に示す結果を得た。分子構造と初期データ構造を設定後、Ｃ１の全原子軌道と他の原子のｓ軌道との相互作用を算出した結果を以下に説明する。
【０１０２】
相互作用は一般に、Ｆｏｃｋ行列要素として表されるが、それを、以下の式（１）から式（３）で表す。原子Ａの軌道μと原子Ａの軌道μに関するＦｏｃｋ行列要素は式（１）で表される。
【０１０３】
【数１】
2012168916.tif 000003
【０１０４】
原子Ａの軌道μと原子Ａの軌道νに関するＦｏｃｋ行列要素は式（２）で表される。
【０１０５】
【数２】
2012168916.tif 000004
【０１０６】
原子Ａの軌道μと原子Ｂの軌道νに関するＦｏｃｋ行列要素は、相互作用に関する式（３）で表される。
【０１０７】
【数３】
2012168916.tif 000005
【０１０８】
式（１）から式（３）で示されるように、Ｆｏｃｋ行列要素の計算には、コアハミルトニアンＨと２電子積分（μν｜λσ）及び電子密度Ｐの各行列が必要となる。
【０１０９】
また式（１）から式（３）の各記号の意味例を以下に示す。
【０１１０】
【数４】
2012168916.tif 000006
【０１１１】
この式（１）から式（３）による計算処理では、電子密度行列Ｐは局在化分子軌道（ＬＭＯ）による設定実施前であるため、図９の行列ＭＴ１に示すように、エチレンの軌道数と電子数に適合した対角行列を用いる。図９の行列ＭＴ１中の軌道を示す略称の具体的内容を以下に示す。
（電子密度行列における軌道略称の具体的内容Ｉ）
Ｈ３ｓ  ：３番目の原子Ｈのｓ軌道
Ｈ４ｓ  ：４番目の原子Ｈのｓ軌道
Ｃ１ｓ  ：１番目の原子Ｃのｓ軌道
Ｃ１ｐｘ：１番目の原子Ｃのｐｘ軌道
Ｃ１ｐｙ：１番目の原子Ｃのｐｙ軌道
Ｃ１ｐｚ：１番目の原子Ｃのｐｚ軌道
Ｃ２ｓ  ：２番目の原子Ｃのｓ軌道
Ｃ２ｐｘ：２番目の原子Ｃのｐｘ軌道
Ｃ２ｐｙ：２番目の原子Ｃのｐｙ軌道
Ｃ２ｐｚ：２番目の原子Ｃのｐｚ軌道
【０１１２】
行列要素の値を具体的に記述すると、異なる原子間の要素は全てゼロ、同じ原子の同じ軌道間の要素については、その原子が持つ電子数を軌道数で割った値である。
【０１１３】
相互作用に関するＦｏｃｋ行列要素（式（３））を算出する際は、Ｆｏｃｋ行列要素における異原子間要素におけるコアハミルトニアンＨのみ考慮すればよい。算出された相互作用Ｆｏｃｋ行列要素（相互作用行列）の一例を図１０に示す。図１０に示す行列ＭＴ２の欄中の軌道を示す略称の具体的内容は上述した意味Ｉの通りである。
【０１１４】
図１１（Ａ）から図１１（Ｄ）に、局在化分子軌道（ＬＭＯ）を構成するために必要な混成軌道（ＨＯ）を算出する流れを、原子Ｃ１と他の原子間との相互作用行列を用いて原子Ｃ１の混成軌道（ＨＯ）を算出する例を示す。図１１（Ａ）において、「相互作用行列」を表す行列ＭＴ３は、図１０に示した行列ＭＴ２と同一である。この相互作用行列を表す行列ＭＴ３に対して、「対角化」の処理を行って、固有値と、図１１（Ｂ）に示すような「固有ベクトル」を表す行列ＭＴ４の情報が得られる。この固有ベクトルを表す行列ＭＴ４について、他原子の要素がそれぞれ１種類となるように「直交変換」を施す。図１１（Ｃ）に示すように、直交変換の結果得られた固有ベクトルの行列ＭＴ５が原子Ｃ１と１種類の原子とによる、「混成軌道」となる。実際には、図１１（Ｄ）に示すように、更に原子Ｃ１の要素のみに絞った「規格化」を行って、「規格化混成軌道」を表す行列ＭＴ６を得る。これを、原子データ構造Ａの混成軌道データＡ〔１〕−＞ｈｏに格納する（図４のデータ構造参照）。
【０１１５】
なお、各欄中の軌道を示す略称の具体的内容は、上述した具体的内容Ｉに加えて、下記に示す混成軌道構成における軌道略称の具体的内容ＩＩに示される通りである。
（混成軌道構成における軌道略称の具体的内容ＩＩ）
ＨＣ１１：原子Ｃ１の混成軌道１つ目
ＨＣ１２：原子Ｃ１の混成軌道２つ目
ＨＣ１３：原子Ｃ１の混成軌道３つ目
ＨＣ１４：原子Ｃ１の混成軌道４つ目
【０１１６】
以下に、上述した式（１）から式（３）で算出するＦｏｃｋ行列要素と、図１１（Ｃ）の「混成軌道」の行列ＭＴ５による混成軌道データを用いて、局在化分子軌道（ＬＭＯ）を構成する流れを式（４）、式（５）、及び式（６）で示す。
【０１１７】
【数５】
2012168916.tif 000007
【０１１８】
【数６】
2012168916.tif 000008
【０１１９】
【数７】
2012168916.tif 000009
【０１２０】
式（４）、式（５）、式（６）から導出される、原子間結合のＬＭＯについては、下記の式（７）で示される。
【０１２１】
【数８】
2012168916.tif 000010
このように、２次元行列の２つの固有値に応じて２種類のＬＭＯが構成される。
【０１２２】
安定な期待値を取る方が通常の分子軌道の占有（Ｏｃｃｕｐｉｅｄ）軌道に対応し、不安定な期待値を取る方が仮想（Ｖｉｒｔｕａｌ）軌道に対応する。孤立電子対（Ｌｏｎｅ  Ｐａｉｒ）ＬＭＯについては、原子間結合ＬＭＯ構成に使用されない混成軌道を設定する。
【０１２３】
電荷情報の設定は、結合次数と孤立電子対数を構成する電子数、軌道数を除いた後、電子数のみ残る場合はマイナスの電子数を、軌道数のみ残る場合はプラスの軌道数を設定する。以下に、上記式（４）から式（７）中に用いられた文字の意味を例示する。
【０１２４】
【数９】
2012168916.tif 000011
エチレンの場合は、以下に示すように１２個の局在化分子軌道（ＬＭＯ）が構成される。
【０１２５】
【数１０】
2012168916.tif 000012
夫々は、結合軸データ構造Ｂ中のσ軌道データＢ−＞ｌｓ、π軌道データＢ−＞ｌｐ中に構成されることを示す。ここで、例えば原子Ｃ１と原子Ｈ３とのσ結合及びπ結合に関するＬＭＯは、Ｌ３，Ｌ４であるが、その軌道は、図１２（Ａ）の行列ＭＴ７に示した、Ｌ３，Ｌ４の様に構成される。また、原子Ｃ１と原子Ｃ２とのσ結合及びπ結合に関するＬＭＯは、Ｌ１，Ｌ２（σ）、及び、Ｌ１１，Ｌ１２（π）であるが、その軌道は、図１２（Ｂ）の行列ＭＴ８に示した、Ｌ１，Ｌ２（σ）、及び、Ｌ１１，Ｌ１２（π）のように構成される。
【０１２６】
エチレンの初期電子密度Ｐについては、式（８）により算出できる。
【０１２７】
【数１１】
2012168916.tif 000013
式（８）により算出された結果は、結合軸データ構造Ｂの密度行列要素データＢ〔１〕−＞ｐｂ中に構成される。例えば原子Ｃ１と原子Ｃ２の結合に関する初期電子密度Ｐは、この式（８）に従って、図１２（Ｃ）の行列ＭＴ９に示すように構成されることとなる。
【０１２８】
（実施例２）
本実施の形態の手法を、Ｐｒｏｔｅｉｎ Ｄａｔａ Ｂａｎｋ（掲載ＷＥＢ；ｗｗｗ．ｐｄｂ．ｏｒｇ）に記載のＰ１ＣＢＮにおいて、これに水素原子を付加した分子〔Ｃｒａｍｂｉｎ、Ｃ２０２Ｈ３１４Ｎ５５Ｏ６４Ｓ６〕について適用した。
【０１２９】
局在化分子軌道（ＬＭＯ）は、実施例１と同様に、図５及び図６〜７のフローに従う分子構造設計プログラム２１を実行することにより構成した。分子軌道計算プログラムに使用する初期電子密度行列については、上記式（８）により算出した初期電子密度Ｐの値を用いる。ただし同じ原子の同じ軌道間の要素についてのみ、図９の行列ＭＴ１の値を設定する。本分子は奇数個の電子を持つため、アップスピン電子に関する密度とダウンスピン電子に関する密度の２種類を設定した。
【０１３０】
分子軌道計算プログラムとして、富士通製のＭＯ−Ｇ（掲載ＷＥＢ；ｓｏｆｔｗａｒｅ．ｆｕｊｉｔｓｕ．ｃｏｍ／ｊｐ／ｓｃｉｇｒｅｓｓ）を用い、計算機のＣＰＵとしてＩｎｔｅｌ製のＱ６７００を用いて比較テスト計算を実施した。その結果、従来の手法で設定した初期電子密度を用いた場合の生成熱計算結果の１９９３．４８ｋｃａｌ／ｍｏｌに比べ、本実施の形態の手法による初期電子密度を用いた場合の生成熱計算結果は１９９１．１０ｋｃａｌ／ｍｏｌで、約２．４ｋｃａｌ／ｍｏｌ安定な状態を得られることを確認できた。
【０１３１】
こうした計算精度向上が実現できたのは、本実施の形態による初期電子密度が従来の手法による初期電子密度とは異なり、電子密度行列の非対角要素を含めることができるためだと考えられる。
【０１３２】
（実施例３）
本実施の形態の手法を、Ｐｒｏｔｅｉｎ Ｄａｔａ Ｂａｎｋ（掲載ＷＥＢ；ｗｗｗ．ｐｄｂ．ｏｒｇ）に記載のＰ１ＣＢＮにおいて、これに水素原子を付加したアニオン分子〔Ｃｒａｍｂｉｎ（−）、Ｃ２０２Ｈ３１４Ｎ５５Ｏ６４Ｓ６〕について適用した。
【０１３３】
局在化分子軌道（ＬＭＯ）は、実施例１と同様に、図５及び図６〜７のフローに従う分子構造設計プログラム２１を実行することにより構成した。分子軌道計算プログラムに使用する初期電子密度行列については、上記式（８）により算出した電子密度Ｐの値を用いる。ただし同じ原子の同じ軌道間の要素についてのみ、図９の行列ＭＴ１の値を設定する。
【０１３４】
分子軌道計算プログラムとして、富士通製のＭＯ−Ｇ（掲載ＷＥＢ；ｓｏｆｔｗａｒｅ．ｆｕｊｉｔｓｕ．ｃｏｍ／ｊｐ／ｓｃｉｇｒｅｓｓ）を用い、計算機のＣＰＵとしてＩｎｔｅｌ製のＱ６７００を用いて比較テスト計算を実施した。その結果、従来の手法で設定した初期電子密度を用いた場合の分子軌道算出には、１０２８．２２秒の計算時間を要したのに比べ、本実施の形態の手法による初期電子密度を用いた場合の分子軌道算出では、２５５．５２秒の計算時間で、約４倍の高速処理を実行できることを確認できた。
【０１３５】
こうした高速化が実現できたのは、本実施の形態による初期電子密度の構築手法による部分が大きい。例えば、炭素の原子軌道数を４個とすると、フラーレンＣ６０において隣接３原子と結合している原子１個を変更した場合、従来の手法では、２４０個全ての混成軌道と局在化分子軌道（ＬＭＯ）を構築する必要があるが、本手法では、変更に係わる４個の原子に関する１６個の混成軌道と局在化分子軌道（ＬＭＯ）のみを構築すれば済むことになり、この部分での計算コストが大幅に軽減することになる。勿論、この軽減比率に比例するわけでは無いが、本手法で構築された初期電子密度の収束性も含めて、収束に至るまでの分子軌道計算時間トータル時間は、従来に比べ、大幅に減少できることが解る。
【０１３６】
以上述べたように、本実施の形態の手法は、データ構造として図４に記載した、原子に関する混成軌道、孤立電子対、密度行列要素データなどを含み、また結合軸に関するσ軌道データ、π軌道データ、密度行列要素データ、２電子積分デーダなどを含んだデータ構造を有し、新たに結合を構成する原子上と原子間のみの相互作用を計算するといった図５及び図６〜７のフローのアルゴリズムを用い、分子構造の構築に必要なそれらのデータ構造のデータを利用することで、分子構造を、ＧＵＩを用いて構築すると同時に、適切な初期電子密度を構成可能な局在化分子軌道（ＬＭＯ）を構成することを可能とする。本実施の形態の分子構造構築支援装置３０は、上記手法を可能とする装置構成を持ち、本実施の形態の分子構造設計プログラム２１は上記手法を上記装置で実行可能なプログラムである。
【０１３７】
従来では分子軌道計算プログラムが分子全体の局在化分子軌道（ＬＭＯ）を構築して初期電子密度を構成していた手法や、初期電子密度行列に対角行列を用いていた手法によって生じていた大きな計算コストを、本実施の形態の手法によって構成した初期電子密度を用いることで、大幅に削減可能とすることができる。
【０１３８】
本発明は、具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【０１３９】
以上の実施例１から３を含む実施形態に関し、更に以下の付記を開示する。
（付記１）
与えられた分子構造データに対し、原子に関する原子データ構造、結合軸に関する結合軸データ構造、前記原子データ構造と前記結合軸データ構造と前記結合軸に関するデータを含む分子メインデータ構造とからなる分子データ構造、および原子を構成する元素の元素データ構造とを少なくとも含むデータ構造を記憶した記憶部と、
前記分子構造を表示する表示部と、
前記表示部上に表示された前記分子構造への原子の配置を指示する操作部と、
前記配置された前記原子の混成軌道と、前記原子及び前記原子による前記分子構造の原子との原子間結合に関与する局在化分子軌道を、前記記憶部に記憶された前記データ構造から導出する分子構造設計部と、
を有することを特徴とする分子構造構築支援装置。
（付記２）
前記原子データ構造は、少なくとも、識別番号ないし原子番号、元素記号データ、フラグ情報、原子座標、電子数設定値、軌道数設定値、帰属する結合軸数、帰属する結合軸識別番号、混成軌道データ、孤立電子対数、孤立電子対局在化分子軌道データ、原子電荷情報を有し、
前記結合軸データ構造は、少なくとも、識別番号ないし結合軸順序番号、フラグ情報、両端原子の識別番号、結合軸ベクトルデータ、結合次数データ、σ局在化分子軌道データ、π局在化分子軌道データ、２電子積分データを有し、
前記分子メインデータ構造は、少なくとも、原子データ構造ポインタ、結合軸構造ポインタ、全原子数、全接合軸数を有し、
前記元素データ構造は、少なくとも、基準電子数設定値、基準軌道数設定値、結合半径情報、基準原子軌道情報を有する
ことを特徴とする付記１に記載の分子構造構築支援装置。
（付記３）
前記分子構造設計部は、少なくとも、前記σ局在化分子軌道データ、前記π局在化分子軌道データ、前記孤立電子対局在化分子軌道データを用いて、前記局在化分子軌道を導出することを特徴とする付記２に記載の分子構造構築支援装置。
（付記４）
前記局在化分子軌道に係る各データを２重化して、全電子数が奇数の場合に２種類の局在化分子軌道データを保持可能としたことを特徴とする付記２記載の分子構造構築支援装置。
（付記５）
前記分子構造設計部は、さらに、前記局在化分子軌道を元に、初期電子密度行列を導出することを特徴とする付記１乃至３のいずれか一項に記載の分子構造構築支援装置。
（付記６）
記憶部に記憶された分子構造に係る分子構造データに基づいて該分子構造が表示された画面上でなされたユーザ操作に応じて、追加された原子を識別する原子順序番号で特定される原子データと、該分子構造における該原子との結合軸に係る結合軸データとを、該分子構造データと関連付けて該記憶部内に追加生成し、
前記結合軸に係る局在化分子軌道を算出して、該算出結果を前記結合軸データ内の局在化分子軌道データに設定し、
前記結合軸の両端原子の原子順序番号を前記原子データ内の孤立電子対軌道データに設定し、
前記局在化分子軌道データと前記孤立電子対軌道データとを用いて、占有軌道に関する局在化分子軌道同士の積を足し上げることによって電子密度行列を前記記憶部に生成する
処理をコンピュータに実行させる分子構造設計プログラム。
（付記７）
前記コンピュータに、
前記分子構造に形成する原子に関する原子データ構造、結合軸に関する結合軸データ構造、前記原子データ構造と前記結合軸データ構造と前記結合軸に関するデータを含む分子メインデータ構造とからなる分子データ構造、および原子を構成する元素の元素データ構造とを少なくとも含むデータ構造に従って、前記分子構造データを前記記憶部に展開させる付記６に記載の分子構造設計プログラム。
（付記８）
前記原子データ構造は、少なくとも、識別番号ないし原子番号、元素記号データ、フラグ情報、原子座標、電子数設定値、軌道数設定値、帰属する結合軸数、帰属する結合軸識別番号、混成軌道データ、孤立電子対数、孤立電子対局在化分子軌道データ、原子電荷情報を有し、
前記結合軸データ構造は、少なくとも、識別番号ないし結合軸順序番号、フラグ情報、両端原子の識別番号、結合軸ベクトルデータ、結合次数データ、σ局在化分子軌道データ、π局在化分子軌道データ、２電子積分データを有し、
前記分子メインデータ構造は、少なくとも、原子データ構造ポインタ、結合軸構造ポインタ、全原子数、全接合軸数を有し、
前記元素データ構造は、少なくとも、基準電子数設定値、基準軌道数設定値、結合半径情報、基準原子軌道情報を有し、
前記結合軸に係る局在化分子軌道の算出では、前記コンピュータに、σ局在化分子軌道とπ局在化分子軌道とを算出させるようにした付記７に記載の分子構造設計プログラム。
（付記９）
前記局在化分子軌道に係る各データを２重化して、全電子数が奇数の場合に２種類の局在化分子軌道データを保持可能とした付記７又は８に記載の分子構造設計プログラム。
（付記１０）
コンピュータによって実行される分子構造設計方法であって、該コンピュータが、
記憶部に記憶された分子構造に係る分子構造データに基づいて該分子構造が表示された画面上でなされたユーザ操作に応じて、追加された原子を識別する原子順序番号で特定される原子データと、該分子構造における該原子との結合軸に係る結合軸データとを、該分子構造データと関連付けて該記憶部内に追加生成し、
前記結合軸に係る局在化分子軌道を算出して、該算出結果を前記結合軸データ内の局在化分子軌道データに設定し、
前記結合軸の両端原子の原子順序番号を前記原子データ内の孤立電子対軌道データに設定し、
前記局在化分子軌道データと前記孤立電子対軌道データとを用いて、占有軌道に関する局在化分子軌道同士の積を足し上げることによって電子密度行列を前記記憶部に生成する
ことを特徴とする分子構造設計方法。
【符号の説明】
【０１４０】
１０        コンピュータ装置
１１          ＣＰＵ
１２          メモリ装置
１３          表示部
１４          入力部
１６          通信部
１７          記憶装置
１８          ドライバ
１９          システムバス
２０          記憶媒体
３０          分子構造構築支援装置
３１          表示処理部
３２          操作処理部
３３          出力処理部
３４          分子構造設計部
３５          記憶部
４０          データ構造
４０ａ        原子データ構造Ａ
４０ｂ        結合軸データ構造Ｂ
４１          ヘッダ
４２          分子データ
４２ａ        原子データ
４２ｂ        結合軸データ
４２ｍ        分子メインデータ
４３          元素データ
４４          イベントデータ
【図１】
2012168916.tif 000014
【図２】
2012168916.tif 000015
【図３】
2012168916.tif 000016
【図４】
2012168916.tif 000017
【図５】
2012168916.tif 000018
【図６】
2012168916.tif 000019
【図７】
2012168916.tif 000020
【図８】
2012168916.tif 000021
【図９】
2012168916.tif 000022
【図１０】
2012168916.tif 000023
【図１１】
2012168916.tif 000024
【図１２】
2012168916.tif 000025