(57)【特許請求の範囲】
【請求項１】
分子構造設計データを記憶する記憶部と、
前記分子構造設計データに基づいて、分子軌道を描画するために用いられる分子軌道関数を基底関数に展開することによって該基底関数に係る展開係数を計算して、該基底関数と該展開係数とを対応付けた第１分子軌道データを前記記憶部に記憶する分子軌道関数展開部と、
表示装置の画面上に前記分子軌道関数を一定の関数値の等値面として描画させるための該一定の関数値を示す描画閾値と、該分子軌道関数における各基底関数の他の規定関数との重なりを無視する範囲の関数値を示す基底閾値とを少なくとも用いて、前記分子軌道関数展開部により得られた前記基底関数の展開係数に対する係数閾値を決定し、該係数閾値に基づく該展開係数に係る第２分子軌道データを前記記憶部に保存する分子軌道データ削減部と
を有することを特徴とする分子設計装置。
【請求項２】
前記分子軌道データ削減部は、
前記基底閾値を設定し、該基底閾値を取る座標値を示す座標閾値を算出し、分子を構成する各原子の中心座標から、該座標閾値の２倍を半径とする球内に含まれる原子数の最大値を算出し、各原子に属する該基底関数の個数に該基底関数の総数に対する該分子の全電子数の割合を掛けた値又は該値に相当する値を示す基底割合を算出し、前記描画閾値、該基底閾値、該原子数の最大値、及び該基底割合から前記係数閾値を決定する閾値決定部を有することを特徴とする請求項１記載の分子設計装置。
【請求項３】
前記分子軌道データ削減部は、
前記第１分子軌道データを参照することによって、前記閾値決定部によって決定された前記係数閾値以上となる前記展開係数を含む前記第２分子軌道データを記憶部に保存するデータ削減保存部を有することを特徴とする請求項２記載の分子設計装置。
【請求項４】
前記分子軌道データ削減部は、
前記係数閾値以上となる各展開係数を示す係数配列と、該係数配列と同じ要素数を有する前記基底関数又は該基底関数へのポインタを示す基底関数指定配列と、該基底関数の総数と同じか又は該基底関数の要素数より１多い要素数を有し、該係数配列において各分子軌道関数の最初の展開係数へのポインタを示す分子軌道指定配列とを有する前記第２分子軌道データを前記記憶部に保存する際に、前記記憶部内の削減フラグに該展開係数の個数が削減されたことを示す値を設定することを特徴とする請求項３記載の分子設計装置。
【請求項５】
前記削減フラグに基づいて、前記記憶部に保存された前記第１分子軌道データ又は前記第２分子軌道データを用いて表示装置の画面に分子軌道を描画する分子軌道描画部を有し、
前記分子軌道描画部は、前記削減フラグが前記展開係数の個数が削減されたことを示す場合、前記第２分子軌道データの前記係数配列と、前記基底関数指定配列と、前記分子軌道指定配列とを用いて、各分子軌道関数を近似した近似軌道関数を決定する分子軌道関数決定部を有することを特徴とする請求項４記載の分子設計装置。
【請求項６】
記憶部に記憶された分子構造設計データに基づいて、分子軌道を描画するために用いられる分子軌道関数を基底関数に展開することによって該基底関数に係る展開係数を計算して、該基底関数と該展開係数とを対応付けた第１分子軌道データを前記記憶部に記憶し、
表示装置の画面上に前記分子軌道関数を一定の関数値の等値面として描画させるための該一定の関数値を示す描画閾値と、該分子軌道関数における各基底関数の他の規定関数との重なりを無視する範囲の関数値を示す基底閾値とを少なくとも用いて、前記基底関数の前記展開係数に対する係数閾値を決定し、該係数閾値に基づく該展開係数に係る第２分子軌道データを前記記憶部に保存する
処理をコンピュータが行うことを特徴とする分子設計方法。
【請求項７】
記憶部に記憶された分子構造設計データに基づいて、分子軌道を描画するために用いられる分子軌道関数を基底関数に展開することによって該基底関数に係る展開係数を計算して、該基底関数と該展開係数とを対応付けた第１分子軌道データを前記記憶部に記憶し、
表示装置の画面上に前記分子軌道関数を一定の関数値の等値面として描画させるための該一定の関数値を示す描画閾値と、該分子軌道関数における各基底関数の他の規定関数との重なりを無視する範囲の関数値を示す基底閾値とを少なくとも用いて、前記基底関数の前記展開係数に対する係数閾値を決定し、該係数閾値に基づく該展開係数に係る第２分子軌道データを前記記憶部に保存する
処理をコンピュータに実行させることを特徴とする分子設計プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、分子構造設計データに基づいて表示装置の画面上に分子軌道を描画する分子設計装置に関する。
【背景技術】
【０００２】
ドラッグデザインなどの先端研究開発において、コンピュータを用いた分子軌道計算へのニーズが高まっている。開発対象となる分子の光応答性や反応性の調査には分子軌道計算から得られる分子軌道関数が有用であり、特に反応性の高いＨＯＭＯ（Highest Occupied Molecular Orbital）やＬＵＭＯ（Lowest Unoccupied Molecular Orbital）などの分子軌道を、コンピュータを用いて３次元描画により図示する作業が頻繁に行われる。こうした分子軌道の描画には、ユーザーが操作を容易に実施できるＧＵＩ（Graphical User Interface）を実現する、分子軌道描画プログラム、及び、分子設計装置が用いられる。
【０００３】
ところで、上述した分子軌道の描画では、特に大規模な分子を扱う場合に、大量のデータを用いた演算が必要となる。多くの分子軌道計算プログラムでは、分子軌道計算結果である分子軌道の展開係数をファイルに出力し、分子軌道描画プログラムでは、その展開係数データや基底関数データを読み込んで分子軌道関数値を算出するなどの描画処理演算を実行する。又は、分子軌道計算プログラムが、展開係数を出力したファイルとは別に、３次元格子点状の関数値を実際に計算した結果ファイルも出力し、分子軌道描画プログラムが結果ファイルを読み込んで描画処理を行う場合もある。
【０００４】
描画処理演算に関与するデータ量が増大すると、描画時間の遅延に繋がる。そのため、描画の高速化に向けて３次元格子状の基底関数値を予め算出する手法、格子点自体を削減する手法などが提案されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平６−１６８３０４号公報
【特許文献２】特開平８−１６５４６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した従来技術によって格子点を削減したとしても、分子軌道の計算によって得られる展開係数のデータ量を削減することができない。独立な基底関数の総数をＮとした場合、分子軌道の展開係数のデータ量は、Ｎの２乗と指数関数的に増大するため、例えば、複数の大規模分子について、再利用のために展開係数を記憶していく場合に、分子設計装置の記憶部を大量に消費してしまうといった問題がある。
【０００７】
よって、本発明の目的は、分子軌道計算により得られる展開係数について、分子軌道の描画情報をなるべく損なわずに、データ数を大幅に削減することで、分子軌道描画のさらなる高速化と、記憶容量の大幅な削減が可能な分子設計装置を提供することである。
【課題を解決するための手段】
【０００８】
開示の分子設計装置は、子構造設計データを記憶する記憶部と、前記分子構造設計データに基づいて、分子軌道を描画するために用いられる分子軌道関数を基底関数に展開することによって該基底関数に係る展開係数を計算して、該基底関数と該展開係数とを対応付けた第１分子軌道データを前記記憶部に記憶する分子軌道関数展開部と、表示装置の画面上に前記分子軌道関数を一定の関数値の等値面として描画させるための該一定の関数値を示す描画閾値と、該分子軌道関数における各基底関数の他の規定関数との重なりを無視する範囲の関数値を示す基底閾値とを少なくとも用いて、前記分子軌道関数展開部により得られた前記基底関数の展開係数に対する係数閾値を決定し、該係数閾値に基づく該展開係数に係る第２分子軌道データを前記記憶部に保存する分子軌道データ削減部とを有する。
【０００９】
また、上記課題を解決するための手段として、コンピュータによって実行される分子設計方法、コンピュータに上記分子設計装置として機能させるためのプログラム、及び、そのプログラムを記録した記録媒体とすることもできる。
【発明の効果】
【００１０】
開示の技術では、基底関数と分子軌道計算によって得られる展開係数とで表現される分子軌道関数を一定の関数値の等値面として描画させるための該一定の関数値を示す描画閾値に基づく該展開係数の係数閾値を用いて基底関数の個数を削減し、分子軌道の描画処理を高速に行うことを可能とする。
【図面の簡単な説明】
【００１１】
【図１】分子設計装置のハードウェア構成を示す図である。
【図２】分子設計装置の機能構成例を示す図である。
【図３】分子軌道関数の描画閾値φｃｕｔｏｆｆを説明するための図である。
【図４】基底閾値χｃｕｔｏｆｆを説明するための図である。
【図５】最大数ＮＡｔｏｍｍａｘを説明するための図である。
【図６】閾値決定処理を説明するための図である。
【図７】ｉ番目の分子軌道関数φｉに係るデータ削減を説明するための図である。
【図８】データ削減保存部によって行われるデータ削減保存処理を説明するためのフローチャート図である。
【図９】第２分子軌道データの例を示す図である。
【図１０】分子軌道関数決定処理を説明するための図である。
【図１１】第１の描画例におけるデータ量の比較を説明するための図（その１）である。
【図１２】第１の描画例におけるデータ量の比較を説明するための図（その２）である。
【図１３】第２の描画例におけるデータ量の比較を説明するための図（その１）である。
【図１４】第２の描画例におけるデータ量の比較を説明するための図（その２）である。
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態を図面に基づいて説明する。本実施形態に係る分子設計装置は、図１に示すようなハードウェア構成を有する。図１は、分子設計装置のハードウェア構成を示す図である。図１において、分子設計装置１００は、コンピュータによって制御される端末であって、ＣＰＵ（Central Processing Unit）１１と、主記憶装置１２と、補助記憶装置１３と、入力装置１４と、表示装置１５と、出力装置１６と、通信Ｉ／Ｆ（インターフェース）１７と、ドライブ１８とを有し、バスＢに接続される。
【００１３】
ＣＰＵ１１は、主記憶装置１２に格納されたプログラムに従って分子設計装置１００を制御する。主記憶装置１２には、ＲＡＭ（Random Access Memory）及びＲＯＭ（Read-Only Memory）等が用いられ、ＣＰＵ１１にて実行されるプログラム、ＣＰＵ１１での処理に必要なデータ、ＣＰＵ１１での処理にて得られたデータ等を格納する。また、主記憶装置１２の一部の領域が、ＣＰＵ１１での処理に利用されるワークエリアとして割り付けられている。
【００１４】
補助記憶装置１３には、ハードディスクドライブが用いられ、各種処理を実行するためのプログラム等のデータを格納する。補助記憶装置１３に格納されているプログラムの一部が主記憶装置１２にロードされ、ＣＰＵ１１に実行されることによって、各種処理が実現される。記憶部１３０は、主記憶装置１２及び／又は補助記憶装置１３を有する。
【００１５】
入力装置１４は、マウス等のポインティングデバイス、キーボード等の１又は複数の操作部を有し、ユーザーが分子設計装置１００による処理に必要な各種情報を入力するために用いられる。表示装置１５は、ＣＰＵ１１の制御のもとに必要な各種情報を表示する。出力装置１６は、プリンタ等を有し、ユーザーからの指示に応じて各種情報を出力するために用いられる。通信Ｉ／Ｆ１７は、例えばインターネット、ＬＡＮ（Local Area Network）等に接続し、外部装置との間の通信制御をするための装置である。
【００１６】
分子設計装置１００によって行われる処理を実現するプログラムは、例えば、ＣＤ−ＲＯＭ（Compact Disc Read-Only Memory）等の記憶媒体１９によって分子設計装置１００に提供される。即ち、プログラムが保存された記憶媒体１９がドライブ１８にセットされると、ドライブ１８が記憶媒体１９からプログラムを読み出し、その読み出されたプログラムがバスＢを介して補助記憶装置１３にインストールされる。そして、プログラムが起動されると、補助記憶装置１３にインストールされたプログラムに従ってＣＰＵ１１がその処理を開始する。尚、プログラムを格納する媒体としてＣＤ−ＲＯＭに限定するものではなく、コンピュータが読み取り可能な媒体であればよい。コンピュータ読取可能な記憶媒体として、ＣＤ−ＲＯＭの他に、ＤＶＤディスク、ＵＳＢメモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリであっても良い。
【００１７】
また、分子設計装置１００によって行われる処理を実現するプログラムが、通信Ｉ／Ｆ１７を介して外部装置から提供されてもよい。或いは、外部装置へ該プログラムを提供し、後述される各処理は外部装置で実現されるように構成してもよい。通信Ｉ／Ｆ１７による通信は無線又は有線に限定されるものではない。
【００１８】
図２は、分子設計装置の機能構成例を示す図である。図２中、本実施形態に係る部分のみを示し、他を省略している。図２において、分子設計装置１００は、分子構造設計部４１と、分子軌道計算部４３と、分子軌道描画部４８とを有する。分子構造設計部４１と、分子軌道計算部４３と、分子軌道描画部４８とは、ＣＰＵ１１が対応するプログラムを実行することによって成される処理によって実現される。
【００１９】
分子構造設計部４１は、ユーザーが入力装置１４から入力した分子構造に係るデータに基づいて分子構造設計を行うための処理部である。分子構造設計部４１によって表示装置１５のスクリーン上に作業用のメインウィンドウが表示され、ユーザーはポインティングデバイスやキーボードを用いて、メインウィンドウに表示される原子アイテム、結合軸アイテムなどを操作して、メインウィンドウ上に分子の３次元構造を構築する。ユーザーの操作によって作成された分子構造設計データ１３２は、記憶部１３０に格納される。
【００２０】
分子軌道計算部４３は、分子構造設計データ１３２に基づいて、分子軌道を計算する処理部である。本実施形態における分子軌道計算部４３は、分子軌道の描画データをなるべく損なわずに、分子軌道の計算結果のデータ量を削減する。
【００２１】
分子軌道計算部４３は、分子構造設計データ１３２に基づいて、予め用意された複数の基底関数を重ね合わせた線形結合で表される分子軌道関数によって、分子軌道を計算する処理部である。分子軌道計算部４３は、更に、分子軌道関数展開部４４と、閾値決定部４５と、データ削減保存部４６とを有する。閾値決定部４５と、データ削減保存部４６とが、分子軌道の計算結果のデータ量を削減するための分子軌道データ削減部４７に相当する。
【００２２】
分子軌道関数展開部４４は、分子軌道関数を複数の基底関数に展開するための各基底関数に係る係数（以下、展開係数という。）を計算する処理部である。本実施例において、分子軌道計算は、各分子軌道関数における、この展開係数を求めることである。以下の説明において、「分子軌道」と「分子軌道関数」とは分子軌道計算処理において同義である。分子軌道関数は、分子中の電子の状態を表し、ある座標における軌道関数値の２乗は、その座標における電子の存在確率に相当する。具体的には、式（１）を用いて、分子軌道関数の展開係数が算出される。
【００２３】
【数１】
0005974513.tif 000002
（１）
【００２４】
上記式（１）において、φｉはｉ番目の分子軌道関数を表し、ｒは関数値を求める座標を表し、χｐはｐ番目の基底関数を表し、Ｎは基底関数の総数を表し、Ｃｐｉはｉ番目の分子軌道関数を基底関数に展開した場合のｐ番目の基底関数にかかる展開係数を表す。ｉ番目の分子軌道関数毎に、ｐ番目の基底関数χｐと展開係数Ｃｐｉとが対応付けられた第１分子軌道データ１３４が記憶部１３０に記憶される。
【００２５】
閾値決定部４５は、分子軌道描画部４８が高速に分子軌道を描画可能とする描画用の第２分子軌道データ１３６を作成するための上述した係数の閾値を決定する処理部である。係数閾値Ｃｃｕｔｏｆｆは、式（１）を表した式（２）に基づく式（３）によって決定する。
【００２６】
【数２】
0005974513.tif 000003
（２）
【００２７】
【数３】
0005974513.tif 000004
（３）
【００２８】
上記式（２）及び式（３）において、φｃｕｔｏｆｆは分子軌道を描画する場合に、等値面に設定する分子軌道関数の閾値（描画閾値に相当）を表し、αは各原子に属する基底関数の数に基底の総数に対する電子数比をかけた値又はその値に相当する基底割合などを表し、ＮＡｔｏｍｍａｘは基底関数が重なる範囲内の原子数の最大値を表し、係数閾値Ｃｃｕｔｏｆｆは分子軌道関数の展開係数の閾値を表し、χｃｕｔｏｆｆは基底関数の動径分布関数について、他の基底関数との関わりを無視する、基底関数の閾値を表す。
【００２９】
データ削減保存部４６は、分子軌道描画部４８が第１分子軌道データ１３４のデータ量を削減しつつ、近似した分子軌道関数を得るための第２分子軌道データ１３６を記憶部１３０に保存する処理部である。
【００３０】
データ削減保存部４６は、第１分子軌道データ１３４を参照して、分子軌道関数展開部４４によって得られたｉ番目の分子軌道関数について、閾値決定部４５によって算出された係数閾値Ｃｃｕｔｏｆｆ以上となる展開係数Ｃｐｉと、展開係数Ｃｐｉに対応する基底関数χｐと、近似分子軌道関数を得るための要素数とを特定して、記憶部１３０の第２分子軌道データ１３６に保存する。保存する際に、第２分子軌道データ１３６の削減フラグＦ６ａに「Ｔｒｕｅ」（第２分子軌道データ１３６が有効）をセットする。削減フラグＦ６ａの初期値は「Ｆａｌｓｅ」（第２分子軌道データ１３６が無効）がセットされている。
【００３１】
係数閾値Ｃｃｕｔｏｆｆ以上となる展開係数Ｃｐｉは、展開係数データ６ｂに格納される。例えば、１次元配列Ｖで格納される。展開係数データ６ｂに格納された展開係数Ｃｐｉに対応する基底関数χｐは、基底関数χｐそのもの、又は、第１分子軌道データ１３４内の基底関数χｐへのポインタによって基底関数指定データ６ｃに格納される。例えば、１次元配列ＶＢａｓｉｓで格納される。また、削減後に適用される基底関数χｐの個数は配列ＶＢａｓｉｓの要素数に相当する。各分子軌道関数の最初の展開係数Ｃｐｉの配列Ｖの要素が１次元配列ＶＯｒｂｉｔａｌで表現され、分子軌道指定データ６ｄに格納される。
【００３２】
分子軌道描画部４８は、分子軌道計算部４３によって算出された分子軌道関数を用いて、分子軌道を表示装置１５のウィンドウ内に分子構造上に描画する処理部である。分子軌道描画部４８は、第２分子軌道データ１３６の削減フラグＦ６ａが「Ｔｒｕｅ」（第２分子軌道データ１３６が有効）にセットされている場合に、第２分子軌道データ１３６を参照して、近似分子軌道関数を用いて、分子構造上に分子軌道を描画する。一方、削減フラグＦ６ａが「Ｆａｌｓｅ」（第２分子軌道データ１３６が無効）を示す場合、第１分子軌道データ１３４を用いて、分子構造上に分子軌道を描画する。
【００３３】
分子軌道描画部４８は、分子軌道関数決定部４９を有する。分子軌道関数決定部４９は、削減フラグＦ６ａが「Ｔｒｕｅ」を示す場合に、第２分子軌道データ１３６を参照して、近似分子軌道関数を算出する処理部である。分子軌道描画部４８は、分子軌道関数決定部４９によって算出された近似分子軌道関数を用いて、分子軌道関数値を得て、分子構造設計データ１３２に基づく分子構造上に分子軌道を描画する。分子構造上に分子軌道を描画するための描画データ１３８は、記憶部１３０に格納される。
【００３４】
次に、閾値決定部４５によって行われる、分子軌道の展開係数のデータ量を削減するための閾値を決定する閾値決定処理について説明する。
【００３５】
閾値決定部４５は、上記式（３）の分子軌道関数の展開係数の閾値を示す係数閾値Ｃｃｕｔｏｆｆを算出するために、以下の各値を取得する。
（Ａ１）分子軌道関数の描画用の描画閾値φｃｕｔｏｆｆ
（Ａ２）基底関数の空間分布において、他の関数への影響が充分小さくなる基底閾値χｃｕｔｏｆｆ
（Ａ３）基底関数と他の基底関数との有意な重なりがある距離の閾値ｒχｍａｘ
（Ａ４）各原子の中心から、半径２ｒχｍａｘの球に含まれる原子数の最大値ＮＡｔｏｍｍａｘ
（Ａ５）各原子の基底数に、基底の総数に対する電子数の割合をかけた値αなど
【００３６】
上記（Ａ１）について図３で説明する。図３は、分子軌道関数の描画閾値φｃｕｔｏｆｆを説明するための図である。図３において、縦軸に関数値を示し、横軸に座標を示すグラフ３ｂが例示されている。分子軌道関数の描画は、ある一定の関数値の絶対値における等値面の描画として実施される。関数３ｆの描画閾値φｃｕｔｏｆｆを設定することによって、＋φｃｕｔｏｆｆから−φｃｕｔｏｆｆの間の関数値が描画用に使用されないことを示している。分子軌道描画部４８は、＋φｃｕｔｏｆｆ以上又は−φｃｕｔｏｆｆ以下の関数値を使用して分子軌道を描画した分子構造３ａを表示装置１５に表示する。描画閾値φｃｕｔｏｆｆは、ユーザーによって設定される値である。
【００３７】
上記（Ａ２）及び（Ａ３）について図４で説明する。図４は、基底閾値χｃｕｔｏｆｆを説明するための図である。図４において、基底閾値χｃｕｔｏｆｆは、分子軌道関数を展開する基底関数について、他の基底関数への影響が充分小さくなる閾値である。基底閾値χｃｕｔｏｆｆ以下の関数値が削除される範囲となる。
【００３８】
他の基底関数の影響を考慮する際には、基底関数χ（下記式（４））を構成する動径関数Ｒ（下記式（５））の分布関数Ｄ（下記式（６））を用いる。
【００３９】
【数４】
0005974513.tif 000005
（４）
【００４０】
【数５】
0005974513.tif 000006
（５）
【００４１】
【数６】
0005974513.tif 000007
（６）
【００４２】
上記式（４）から（６）において、χＳＴＯｎｌｍはSlater Type Orbital（ＳＴＯ）を用いた基底関数を示し、ｎは主量子数を示し、ｌは方位量子数を示し、ｍは磁気量子数を示す。ＲＳＴＯｎ（ｒ）は動径座標ｒにおける、Slater Type Orbitalの動径関数を示し、ｎは主量子数を示す。Ｙｌｍ（θ，φ）は角座標θ，φにおける、Slater Type Orbitalの球面調和関数spherical harmonicsを示し、ｌは方位量子数azimuthal quantum numberを示し、ｍは磁気量子数magnetic quantum numberを示す。
【００４３】
ζは軌道指数（動径関数のexponentの係数）を示す。ＤＳＴＯｎ，ζはSlater Type Orbitalの動径分布関数を示し、ｎは主量子数を示し、ζは軌道指数を示す。また、ｒχｍａｘは基底関数の閾値における動径座標を示す。
【００４４】
上記（Ａ４）について図５で説明する。図５は、最大数ＮＡｔｏｍｍａｘを説明するための図である。ＮＡｔｏｍｍａｘは、各原子５ａについて、その原子５ａに属する基底関数が、他の原子５ａに属する基底関数との影響を考慮する必要がある場合の、原子５ａの総数の最大値である。基底閾値に相当する分布関数Ｄの関数値を取る場合の座標をｒχｍａｘとする（図４）と、各原子５ａから半径２ｒχｍａｘの球内に他の原子５ａの中心が含まれる場合に、基底関数同士の影響が生じると考えられる（図５）。
【００４５】
図５において、各原子５ａの中心から、半径が２ｒχｍａｘの球内に含まれる原子数の最大値をＮＡｔｏｍｍａｘとする。
【００４６】
上記（Ａ５）について説明する。αは各原子５ａに属する基底関数の数に、基底関数の総数に対する電子数の割合を掛けた値か、もしくはそれに相当する値とする。αを算出する際に電子を与えやすい部位におけるＨＯＭＯ（Highest Occupied Molecular Orbital）、又は、電子を受けやすい部位におけるＬＵＭＯ（Lowest
Unoccupied Molecular Orbital）を考慮するようにしても良い。αＮＡｔｏｍｍａｘは分子軌道関数を算出する上記式（１）の重ね合わせの数Ｎに対し、実際に重ね合わせる必要のある数に相当する。よって、上記式（２）の関係式に基づいて、適正な係数閾値Ｃｃｕｔｏｆｆを定義することができ、上記式（３）により決定することができる。
【００４７】
図６は、閾値決定処理を説明するための図である。図６において、閾値決定部４５は、分子軌道関数の描画閾値φｃｕｔｏｆｆを設定し（ステップＳ６１）、また、基底関数の空間分布において、他の関数への影響が充分小さくなる基底閾値χｃｕｔｏｆｆを計算して設定する（ステップＳ６２）。
【００４８】
閾値決定部４５は、基底関数χの分布関数Ｄ及び基底閾値χｃｕｔｏｆｆから基底関数と他の基底関数との有意な重なりがある距離の閾値ｒχｍａｘを求めて（ステップＳ６３）、各原子から半径２ｒχｍａｘの球内の原子数の最大値を取得して、最大値ＮＡｔｏｍｍａｘに設定する（ステップＳ６４）。更に、閾値決定部４５は、基底関数の数とＨＯＭＯとからαを取得する（ステップＳ６５）。ＨＯＭＯの代わりにＬＵＭＯに関してαを求めてもよい。ＨＯＭＯ又はＬＵＭＯのいずれかをユーザーが指定しておけばよい。
【００４９】
そして、閾値決定部４５は、描画閾値φｃｕｔｏｆｆ、基底閾値χｃｕｔｏｆｆ、最大値ＮＡｔｏｍｍａｘ、及びαから係数閾値Ｃｃｕｔｏｆｆを取得する（ステップＳ６６）。
【００５０】
上述した閾値決定部４５による処理によって決定された係数閾値Ｃｃｕｔｏｆｆに基づいて、データ削減保存部４６は、第２分子軌道データ１３６の内容を作成して記憶部１３０に保存する。
【００５１】
ｉ番目の分子軌道関数φｉに対する、データ削減保存部４６によって行われるデータ削減について、図７で説明する。図７は、ｉ番目の分子軌道関数φｉに係るデータ削減を説明するための図である。図７では、記憶部１３０に記憶されている第１分子軌道データ１３４内のｉ番目の分子軌道関数φｉに係るφｉデータ１３４−２を用いて説明する。
【００５２】
φｉデータ１３４−２において、基底関数χ１からχＮの各々に対して、分子軌道関数φｉを基底関数に展開した場合の各基底関数χｐ（ｐ＝１、２、・・・Ｎ）にかかる展開係数Ｃｐｉが対応付けられて示されている。
【００５３】
データ削減保存部４６は、係数閾値Ｃｃｕｔｏｆｆ以上となる展開係数Ｃｐｉを特定する１次元配列Ｖに格納する。ｐが１からＮへの順に、係数閾値Ｃｃｕｔｏｆｆ以上となる展開係数Ｃｐｉが配列ＶのｊｉＳｔａｒｔからｊｉＥｎｄまでの要素に格納される。ｊｉＳｔａｒｔは、ｉ番目の分子軌道φｉ（分子軌道関数φｉとも言う）に関する削減後の最初の展開係数Ｃｐｉであることを示す。ｊｉＥｎｄは、ｉ番目の分子軌道φｉに関する削減後の最後の展開係数Ｃｐｉであることを示す。
【００５４】
また、この削減後の（係数閾値Ｃｃｕｔｏｆｆ以上となる）展開係数Ｃｐｉの格納に伴って、データ削減保存部４６は、係数閾値Ｃｃｕｔｏｆｆ以上となる展開係数Ｃｐｉに対応する基底関数χｐへのポインタを１次元配列ＶＢａｓｉｓのｊｉＳｔａｒｔからｊｉＥｎｄまでの要素に格納する。
【００５５】
更に、データ削減保存部４６は、ｊｉＳｔａｒｔからｊｉＥｎｄまでの要素数について、１次元配列ＶＯｒｂｉｔａｌで管理する。配列ＶＯｒｂｉｔａｌのｉ番目の要素（ＶＯｒｂｉｔａｌ［ｉ］）をｊｉＳｔａｒｔにすることで、ｊｉＳｔａｒｔからｊｉＥｎｄまでの要素数をＶＯｒｂｉｔａｌ［ｉ＋１］からＶＯｒｂｉｔａｌ［ｉ］を減算することによって得ることができる。
【００５６】
このようにして、ｉ番目の分子軌道関数φｉに係るφｉ'データ１３６−２が作成される。φｉ'データ１３６−２において、配列Ｖ［ｊｉＳｔａｒｔ］から配列Ｖ［ｊｉＥｎｄ］までのデータが、図２の第２分子軌道データ１３６内の展開係数データ６ｂの一部に相当し、配列ＶＢａｓｉｓ［ｊｉＳｔａｒｔ］から配列ＶＢａｓｉｓ［ｊｉＥｎｄ］までのデータが、基底関数指定データ６ｃの一部に相当し、配列ＶＯｒｂｉｔａｌ［ｉ］が、分子軌道指定データ６ｄの一部に相当する。
【００５７】
上記式（１）を近似するために、下記関係式（Ａ）により配列を用いて置き換えることができる。
＜関係式Ａ＞
Ｃｐｉ  ＝＞  Ｖ［ｉ］，
χｐ  ＝＞  χＶＢａｓｉｓ［ｌ］，
Ｎ  ＝＞  ｊｉＥｎｄ−ｊｉＳｔａｒｔ＋１＝ＶＯｒｂｉｔａｌ［ｉ＋１］−ＶＯｒｂｉｔａｌ［ｉ］
【００５８】
展開係数ＣｐｉはＶ［ｌ］で表され、χｐはχＶＢａｓｉｓ［ｌ］で表される。また、基底関数の総数Ｎは適用される基底関数の個数（ｊｉＥｎｄ−ｊｉＳｔａｒｔ＋１＝ＶＯｒｂｉｔａｌ［ｉ＋１］−ＶＯｒｂｉｔａｌ［ｉ］）で表される。
【００５９】
このようにして、上記式（１）を近似すると、下記式（７）のような近似された分子軌道関数で表すことができる。
【００６０】
【数７】
0005974513.tif 000008
（７）
【００６１】
また、ｉ番目の分子軌道関数φｉに係る基底関数χｐの個数に関して、本実施形態を適用しなかった従来の場合は基底関数χｐの総数Ｎであるのに対して、本実施形態を適用した場合は（ＶＯｒｂｉｔａｌ［ｉ＋１］−ＶＯｒｂｉｔａｌ［ｉ］）で得られる要素数となる。従って、従来の演算量に対する本実施形態における分子軌道描画部４８による演算量の割合は、下記式（８）で示される。
【００６２】
【数８】
0005974513.tif 000009
（８）
上記式（８）で得られる割合が小さい程、分子軌道描画部４８による描画処理がより高速に行われることを示している。
【００６３】
データ削減保存部４６によって行われる、全ての分子軌道関数φｉに対するデータ削減保存処理について図８で説明する。図８は、データ削減保存部によって行われるデータ削減保存処理を説明するためのフローチャート図である。図８において、データ削減保存部４６は、変数ｉを１に設定する（ステップＳ８１）。データ削減保存部４６は、記憶部１３０に記憶されている第１分子軌道データ１３４から、ｉ番目の分子軌道関数φｉの展開係数データ４ｉを取得する（ステップＳ８２）。
【００６４】
データ削減保存部４６は、展開係数データ６ｂにおいて、閾値決定部４５によって得られた係数閾値Ｃｃｕｔｏｆｆ以上となる各展開係数Ｃｐｉを配列ＶのｊｉＳｔａｒｔからｊｉＥｎｄまでの要素に記憶すると共に、基底関数指定データ６ｂにおいて、基底関数χｉを指定するデータを配列ＶＢａｓｉｓのｊｉＳｔａｒｔからｊｉＥｎｄまでの要素に記憶する（ステップＳ８３）。
【００６５】
そして、データ削減保存部４６は、係数閾値Ｃｃｕｔｏｆｆ以上となった展開係数Ｃｐｉの個数に関して、分子軌道指定データ６ｄにおいて、配列ＶＯｒｂｉｔａｌ［ｉ］にｊｉＳｔａｒｔを記憶する（ステップＳ８４）。
【００６６】
その後、データ削減保存部４６は、変数ｉを１インクリメントして（ステップＳ８５）、変数ｉが分子軌道関数φの総数Ｎに到達したか否かを判断する（ステップＳ８６）。変数ｉが分子軌道関数φの総数Ｎに到達していない場合、データ削減保存部４６は、ステップＳ８２へと戻り、上述同様の処理を行う。一方、変数ｉが分子軌道関数φの総数Ｎに到達した場合、データ削減保存部４６は、配列ＶＯｒｂｉｔａｌ［ｉ＋１］にｊｉＥｎｄに１を加算した値を記憶して（ステップＳ８７）、このデータ削減保存処理を終了する。
【００６７】
閾値決定部４５及びデータ削減保存部４６を有する分子軌道データ削減部４７によって作成された第２分子軌道データ１３６について、図９で説明する。図９は、第２分子軌道データの例を示す図である。図９において、分子軌道関数展開部４４によって作成された第１分子軌道データ１３４から分子軌道データ削減部４７によってデータ削減された第２分子軌道データ１３６が作成された例を示している。
【００６８】
第１分子軌道データ１３４は、分子軌道関数展開部４４によって作成される。第１分子軌道データ１３４には、分子構造設計データ１３２に基づいて、分子軌道φ毎に各基底関数χに対応付けて展開係数Ｃが記憶されている。
【００６９】
分子構造に含まれる原子１、原子２、・・・、原子ＮＡの各々に対して、１又は複数の基底関数χが予め用意されている。ＮＡは分子中の原子数を示す。原子１から原子ＮＡに係る独立な基底関数χの総数（即ち、分子軌道φの総数）をＮで表す。展開係数Ｃの全個数は、Ｎの２乗となる。展開係数データ４０は、Ｎの２乗個の展開係数Ｃの値を有する。
【００７０】
原子１の軌道を表現するための各基底関数χは、ｐ１Ｓｔａｒｔからｐ１Ｅｎｄの添え字で表している。原子２の軌道を表現するための各基底関数χは、ｐ２Ｓｔａｒｔからｐ２Ｅｎｄの添え字で表している。原子ＮＡの軌道を表現するための各基底関数χは、ｐＮＡＳｔａｒｔからｐＮＡＥｎｄの添え字で表している。ｐ１Ｓｔａｒｔは１番目の基底関数χであることを示し、ｐＮＡＥｎｄはＮ番目の基底関数χであることを示す。
【００７１】
各分子軌道φは、添え字ｉ（ｉ＝１、・・・、Ｎ）で特定され、展開係数データ４ｉは、展開係数データ４０内の分子軌道φｉのデータを示す。展開係数データ４０は、Ｎ×Ｎの２次元配列で表されればよい。展開係数Ｃの第１番目の添え字は、基底関数χを指定し、第２番目の添え字は、分子軌道φを指定する。第１番目の添え字に関して、ｐｉＳｔａｒｔはｉ番目の原子に関する基底関数のうち最初の関数を指定する番号であり、ｐｉＥｎｄはｉ番目の原子に関する基底関数のうち最後の関数を指定する番号である。
【００７２】
第１分子軌道データ１３４に各基底関数χを表す基底関数データ９ａを含めても良いし、個別のデータファイル、テーブル等に基底関数データ９ａを記憶しておいても良い。
【００７３】
第１分子軌道データ１３４に基づいて、分子軌道データ削減部４７によって作成される第２分子軌道データ１３６では、展開係数データ６ｂにおいて、分子軌道φ１から分子軌道φＮまでの展開係数Ｃが配列Ｖに格納されている。
【００７４】
１番目の分子軌道φ１に関して、係数閾値Ｃｃｕｔｏｆｆ以上の展開係数Ｃが配列Ｖの１番目からＪ１Ｅｎｄ番目の要素に格納されている。１番目の展開係数Ｃは添え字ｍ１Ｓｔａｒｔで表され、最後の展開係数Ｃは添え字ｍ１Ｅｎｄで表される。最後の分子軌道φＮに関して、係数閾値Ｃｃｕｔｏｆｆ以上の展開係数Ｃが配列ＶのＪＮＳｔａｒｔからｍの要素に格納されている。１番目の展開係数Ｃは添え字ｍＮＳｔａｒｔで表され、最後の展開係数Ｃは添え字ｍＮＥｎｄで表される。
【００７５】
基底関数指定データ６ｃにおいて、分子軌道φ１から分子軌道φＮの各々を表すために用いられる各基底関数χが、展開係数データ６ｂに格納されている展開係数Ｃの配列順に対応付けた配列ＶＢａｓｉｓに格納されている。
【００７６】
１番目の分子軌道φ１に関して、配列ＶＢａｓｉｓの１番目の要素には、配列Ｖの添え字ｍ１Ｓｔａｒｔ付きの１番目の展開係数Ｃが使用される基底関数χが格納され、配列ＶＢａｓｉｓのＪ１Ｅｎｄ番目の要素には、配列Ｖの添え字ｍ１Ｅｎｄ付きの最後の展開係数Ｃが使用される基底関数χが格納される。他分子軌道φｉについても同様である。
【００７７】
分子軌道指定データ６ｄでは、分子軌道φ１から分子軌道φＮの各々における最初の展開係数Ｃが格納されている要素の番号が配列ＶＯｒｂｉｔａｌで指定される。ＶＯｒｂｉｔａｌ［ｉ］に、配列Ｖにおける分子軌道φｉの最初の要素番号ｊｉＳｔａｒｔが格納される。配列ＶＯｒｂｉｔａｌの最後の要素ＶＯｒｂｉｔａｌ［Ｎ＋１］には、削減後の展開係数Ｃの個数ｍに１加算した値が格納される。個数ｍは、本実施形態において、分子軌道描画部４８による分子軌道の描画処理において、第２分子軌道データ１３６が有効な場合に適用される、削減された基底関数χの個数でもある。
【００７８】
分子軌道の展開係数データ６ｂから描画対象の分子軌道関数値を得るためには、本実施形態を適用していない通常のデータ形式（全データを含む第１分子軌道データ１３４に相当）か、本実施形態を適用した場合の削減されたデータ形式（第２分子軌道データ１３６に相当）かを判断する必要がある。
【００７９】
削減フラグＦの真偽によって通常のデータ形式であると判定された場合には、通常のデータ形式の第１分子軌道データ１３４を用いて式（１）によって分子軌道関数値を算出し、描画が実施される。削減されたデータ形式の第２分子軌道データ１３６であると判定された場合には、第１分子軌道データ１３４のデータ形式と第２分子軌道データ１３６のデータ形式が図７のように対応することから、上述した＜関係式Ａ＞で示される関係から、上記式（７）で近似分子軌道関数値を算出することができ、この値を用いて分子軌道の描画が実施される。この時、描画演算量は通常のデータ形式に比べて上記式（８）に示す割合に削減できる。
【００８０】
次に、分子軌道描画部４８の分子軌道関数決定部４９によって、上述したような第２分子軌道データ１３６を用いて行われる分子軌道関数を決定する分子軌道関数決定処理について図１０で説明する。図１０は、分子軌道関数決定処理を説明するための図である。図１０中、ステップＳ１０３からＳ１１１までが、分子軌道関数決定部４９による分子軌道関数決定処理Ｐ１０に相当する。
【００８１】
分子軌道描画部４８は、記憶部１３０に格納された第２分子軌道データ１３６から削減フラグＦ６ａの値を取得する（ステップＳ１０１）。
【００８２】
分子軌道描画部４８は、削減フラグＦ６ａが「Ｔｒｕｅ」（第２分子軌道データ１３６が有効）を示すか否かを判断する（ステップＳ１０２）。削減フラグＦ６ａが「Ｆａｌｓｅ」（第２分子軌道データ１３６が無効）を示す場合、分子軌道描画部４８は、第１分子軌道データ１３４を用いて式（１）によって通常の描画処理を行い（ステップＳ１０２−２）、この通常の描画処理が終了するとこの処理を終了する。
【００８３】
一方、削減フラグＦ６ａが「Ｔｒｕｅ」（第２分子軌道データ１３６が有効）を示す場合、分子軌道描画部４８は、分子軌道関数決定部４９に分子軌道関数決定処理を行わせる。分子軌道関数決定部４９は、第２分子軌道データ１３６から展開係数データ６ｂ、基底関数指定データ６ｃ、及び分子軌道指定データ６ｄを読み込んで、配列Ｖ、配列ＶＢａｓｉｓ、及び配列ＶＯｒｂｉｔａｌを取得する（ステップＳ１０３）。
【００８４】
そして、分子軌道関数決定部４９は、分子軌道関数φを特定するための番号ｉに１を設定し（ステップＳ１０４）、要素番号ｊにＶＯｒｂｉｔａｌ［ｉ］を設定する（ステップＳ１０５）。要素番号ｊは、分子軌道関数φｉに対して適用される展開係数Ｃを記憶する配列Ｖ及び基底関数χの配列ＶＢａｓｉｓの何番目の要素であるかを特定する番号である。ステップＳ１０５での処理によって、分子軌道関数φｉの最初の要素番号が要素番号ｊに設定される。
【００８５】
分子軌道関数決定部４９は、最初の要素番号に対応する展開係数Ｃと基底関数χとを乗算する式を、分子軌道関数φｉを表す配列φの要素ｉ（φ［ｉ］）に設定する（ステップＳ１０６）。
【００８６】
φ［ｉ］＝Ｖ［ｊ］＊χ［ＶＢａｓｉｓ［ｊ］］                    （９）
分子軌道関数決定部４９は、要素番号ｊを１インクリメントして（ステップＳ１０７）、要素番号ｊに対応する展開係数Ｃと基底関数χとを乗算する式を要素ｉ（φ［ｉ］）に追加して設定する（ステップＳ１０８）。
【００８７】
φ［ｉ］＝φ［ｉ］＋Ｖ［ｊ］＊χ［ＶＢａｓｉｓ［ｊ］］          （１０）
そして、分子軌道関数決定部４９は、要素番号ｊが分子軌道関数φｉにおける最後の要素番号に一致したか否かを判断する（ステップＳ１０９）。分子軌道関数決定部４９は、配列ＶＯｒｂｉｔａｌ［ｉ＋１］を取得して、配列ＶＯｒｂｉｔａｌ［ｉ＋１］から１を減算することによって、最後の要素を指定する要素番号を取得することができる。従って、分子軌道関数決定部４９は、要素番号ｊが配列ＶＯｒｂｉｔａｌ［ｉ＋１］から１を減算した値に達しているか否かを判断すればよい。要素番号ｊが分子軌道関数φｉにおける最後の要素番号に一致しない場合、分子軌道関数決定部４９は、ステップＳ１０７へと進む。
【００８８】
一方、ステップＳ１０９において、要素番号ｊが分子軌道関数φｉにおける最後の要素番号に一致している場合、分子軌道関数決定部４９は、分子軌道関数φの番号ｉを１インクリメントして（ステップＳ１１０）、番号ｉが総数Ｎに一致するか否かを判断することによって、番号ｉが分子軌道関数φの総数Ｎに達したか否かを確認する（ステップＳ１１１）。分子軌道関数決定部４９は、番号ｉが総数Ｎに一致するか否かを判断すればよい。番号ｉが総数Ｎに一致しない場合、分子軌道関数決定部４９は、ステップＳ１０５へ戻り、上述同様の処理を繰り返す。
【００８９】
一方、番号ｉが総数Ｎに一致する場合、分子軌道関数決定部４９によって全ての分子軌道関数φｉが決定したと判断し、分子軌道描画部４８によって決定された分子軌道関数φｉを用いて表示装置１５に分子軌道を描画する（ステップＳ１１２）。分子軌道の描画後、この処理を終了する。
【００９０】
次に、本実施形態に係るデータ削減を適用して描画した場合としなかった場合とにおけるデータ量の比較結果を以下に示す。
【００９１】
有機分子ＮＫＸ−２６７７のＨＯＭＯを描画する第１の描画例について、図１１及び図１２で説明する。第１の描画例において、ＡＭ１（Austin Model １）法を用いた場合を示す。図１１及び図１２は、第１の描画例におけるデータ量の比較を説明するための図である。
【００９２】
図１１では、ＮＫＸ−２６７７のＨＯＭＯ７ａの分子構造データからＮＫＸ−２６７７の３次元分子構造７ｂが作成され描画された状態を示す。そして、ＡＭ１を用いて分子軌道計算を行った場合のデータ量の比較が図１２で示される。
【００９３】
図１２において、本実施形態に係るデータ削減がなされなかった場合に分子軌道が描画された３次元分子構造７ｃでは、オリジナルデータ、即ち、分子軌道関数展開部４４によって計算されたデータ量「３３８５６」バイトが使用されたことを示している。図９に例示されるように、ＡＭ１法を実施した場合に保存される分子軌道の展開係数のデータ量は、展開係数データ４０のデータ量に相当し、Ｎの２乗個となる。
【００９４】
一方、本実施形態に係るデータ削減がなされた場合に分子軌道が描画された３次元分子構造７ｄでは、分子軌道データ削減部４７により削減された第２分子軌道データ１３６が用いられるため、オリジナルデータ（例えば、第１分子軌道データ１３４）より削減されたデータ量「１６３３７」バイトが使用され、オリジナルのデータ量（描画演算量）との比は、４８％であったことを示している。図９に例示されるように、展開係数データ６ｂにおける削減後の展開係数の個数ｍが、削減されたデータ量に相当する。
【００９５】
上述したように、図２等に示すような本実施形態に係る機能構成を有することによって、第１の描画例では、データ量を凡そ１／２まで削減することができる。また、近似分子軌道関数を描画した３次元分子構造７ｄは、本実施形態に係るデータ削減がなされなかった場合の３次元分子構造７ｃと遜色なく描画される。このように、本実施形態に係る機能構成によって、演算量を削減しつつ適切な分子軌道の描画結果を得ることができる。
【００９６】
タンパク質分子１ＢＦＰ（Ｃ１１５６Ｈ１９４１Ｎ３１０Ｏ４２８Ｓ７）のＨＯＭＯを描画する第２の描画例について、図１３及び図１４で説明する。第２の描画例において、ＡＭ１（Austin Model １）法を用いた場合を示す。図１３及び図１４は、第２の描画例におけるデータ量の比較を説明するための図である。
【００９７】
図１３では、リボンモデルで表現したタンパク質分子１ＢＦＰのＨＯＭＯ８ａの分子構造データに基づいて、ボールアンドスティックモデルで表現した、タンパク質分子１ＢＦＰの水素を付加した３次元構造８ｂが作成され描画された状態を示す。そして、ＡＭ１を用いて分子軌道計算を行った場合のデータ量の比較が図１４で示される。
【００９８】
図１４において、本実施形態に係るデータ削減がなされなかった場合に分子軌道が描画された３次元分子構造８ｃでは、オリジナルデータ、即ち、分子軌道関数展開部４４によって計算されたデータ量「９１１０７０２５」バイトが使用されたことを示している。図９に例示されるように、ＡＭ１法を実施した場合に保存される分子軌道の展開係数のデータ量は、展開係数データ４０のデータ量に相当し、Ｎの２乗個となる。
【００９９】
本実施形態に係るデータ削減がなされた場合に分子軌道が描画された３次元分子構造８ｄでは、分子軌道データ削減部４７により削減された第２分子軌道データ１３６が用いられるため、オリジナルデータ（例えば、第１分子軌道データ１３４）より削減されたデータ量「３２３２２８１」バイトが使用され、オリジナルのデータ量（描画演算量）との比は、３．５％であったことを示している。図９に例示されるように、展開係数データ６ｂにおける削減後の展開係数の個数ｍが、削減されたデータ量に相当する。
【０１００】
上述したように、図２等に示すような本実施形態に係る機能構成を有することによって、第２の描画例では、データ量を大幅に削減することができる。また、近似分子軌道関数を描画した３次元分子構造８ｄは、本実施形態に係るデータ削減がなされなかった場合の３次元分子構造８ｃと遜色なく描画される。このように、本実施形態に係る機能構成によって、演算量を削減しつつ適切な分子軌道の描画結果を得ることができる。
【０１０１】
上述より、本実施形態に係る分子設計装置では、基底関数と分子軌道計算によって得られる展開係数とを用いて構成される分子軌道関数を用いて、分子軌道を視覚的、また直感的に把握可能に描画する分子軌道の描画処理を高速に行うことができる。
【０１０２】
本発明は、具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【０１０３】
以上の実施例を含む実施形態に関し、更に以下の付記を開示する。
（付記１）
分子構造設計データを記憶する記憶部と、
前記分子構造設計データに基づいて、分子軌道を描画するために用いられる分子軌道関数を基底関数に展開することによって該基底関数に係る展開係数を計算して、該基底関数と該展開係数とを対応付けた第１分子軌道データを前記記憶部に記憶する分子軌道関数展開部と、
表示装置の画面上に前記分子軌道関数を一定の関数値の等値面として描画させるための該一定の関数値を示す描画閾値を用いて、前記分子軌道関数展開部により得られた前記基底関数の展開係数に対する係数閾値を決定し、該係数閾値に基づく該展開係数に係る第２分子軌道データを前記記憶部に保存する分子軌道データ削減部と
を有することを特徴とする分子設計装置。
（付記２）
前記分子軌道データ削減部は、
前記分子軌道関数における各基底関数と他の基底関数との重なりを無視する範囲の関数値を示す基底閾値を設定し、該基底閾値を取る座標値を示す座標閾値を算出し、分子を構成する各原子の中心座標から、該座標閾値の２倍を半径とする球内に含まれる原子数の最大値を算出し、各原子に属する該基底関数の個数に該基底関数の総数に対する該分子の全電子数の割合を掛けた値又は該値に相当する値を示す基底割合を算出し、前記描画閾値、該基底閾値、該原子数の最大値、及び該基底割合から前記係数閾値を決定する閾値決定部を有することを特徴とする付記１記載の分子設計装置。
（付記３）
前記分子軌道データ削減部は、
前記第１分子軌道データを参照することによって、前記閾値決定部によって決定された前記係数閾値以上となる前記展開係数を含む前記第２分子軌道データを記憶部に保存するデータ削減保存部を有することを特徴とする付記２記載の分子設計装置。
（付記４）
前記分子軌道データ削減部は、
前記係数閾値以上となる各展開係数を示す係数配列と、該係数配列と同じ要素数を有する前記基底関数は該基底関数へのポインタを示す基底関数指定配列と、該基底関数の総数と同じか又は該基底関数の要素数より１多い要素数を有し、該展開係数データ内の各分子軌道関数の最初の展開係数へのポインタを示す分子軌道指定配列とを有する前記第２分子軌道データを前記記憶部に保存する際に、前記記憶部内の削減フラグに該展開係数の個数が削減されたことを示す値を設定することを特徴とする付記３記載の分子設計装置。
（付記５）
前記削減フラグに基づいて、前記記憶部に保存された前記第１分子軌道データ又は前記第２分子軌道データを用いて表示装置の画面に分子軌道を描画する分子軌道描画部を有し、
前記分子軌道描画部は、前記削減フラグが前記展開係数の個数が削減されたことを示す場合、前記第２分子軌道データの前記係数配列と、前記基底関数指定配列と、前記分子軌道指定配列とを用いて、各分子軌道関数を近似した近似軌道関数を決定する分子軌道関数決定部を有することを特徴とする付記４記載の分子設計装置。
（付記６）
前記分子軌道描画部は、前記削減フラグが前記展開係数の個数が削減されたことを示さない場合、前記第１分子軌道データを用いて前記分子軌道を描画することを特徴とする付記５記載の分子設計装置。
（付記７）
コンピュータによって実行される分子設計方法であって、
記憶部に記憶された分子構造設計データに基づいて、分子軌道を描画するために用いられる分子軌道関数を基底関数に展開することによって該基底関数に係る展開係数を計算して、該基底関数と該展開係数とを対応付けた第１分子軌道データを前記記憶部に記憶し、
表示装置の画面上に前記分子軌道関数を一定の関数値の等値面として描画させるための該一定の関数値を示す描画閾値を用いて、前記分子軌道関数展開部により得られた前記基底関数の展開係数に対する係数閾値を決定し、該係数閾値に基づく該展開係数に係る第２分子軌道データを前記記憶部に保存する
ことを特徴とする分子設計方法。
（付記８）
記憶部に記憶された分子構造設計データに基づいて、分子軌道を描画するために用いられる分子軌道関数を基底関数に展開することによって該基底関数に係る展開係数を計算して、該基底関数と該展開係数とを対応付けた第１分子軌道データを前記記憶部に記憶し、
表示装置の画面上に前記分子軌道関数を一定の関数値の等値面として描画させるための該一定の関数値を示す描画閾値を用いて、前記分子軌道関数展開部により得られた前記基底関数の展開係数に対する係数閾値を決定し、該係数閾値に基づく該展開係数に係る第２分子軌道データを前記記憶部に保存する
処理をコンピュータに実行させるプログラム。
【符号の説明】
【０１０４】
６ａ          削減フラグＦ
６ｂ          展開係数データ
６ｃ          基底関数指定データ
６ｄ          分子軌道指定データ
１１          ＣＰＵ
１２          主記憶装置
１３          補助記憶装置
１４          入力装置
１５          表示装置
１６          出力装置
１７          通信Ｉ／Ｆ
１８          ドライブ
１９          記憶媒体
４１          分子構造設計部
４３          分子軌道計算部
４４          分子軌道関数展開部
４５          閾値決定部
４６          データ削減保存部
４７          分子軌道データ削減部
４８          分子軌道描画部
４９          分子軌道関数決定部
１３０        記憶部
１３２        分子構造設計データ
１３４        第１分子軌道データ
１３６        第２分子軌道データ
１３８        描画データ
Ｂ            バス
【図１】
0005974513.tif 000010
【図２】
0005974513.tif 000011
【図３】
0005974513.tif 000012
【図４】
0005974513.tif 000013
【図５】
0005974513.tif 000014
【図６】
0005974513.tif 000015
【図７】
0005974513.tif 000016
【図８】
0005974513.tif 000017
【図９】
0005974513.tif 000018
【図１０】
0005974513.tif 000019
【図１１】
0005974513.tif 000020
【図１２】
0005974513.tif 000021
【図１３】
0005974513.tif 000022
【図１４】
0005974513.tif 000023