(57)【特許請求の範囲】
【請求項１】
複数の粒子からなる系の特定粒子に働く力又はポテンシャルを計算する多体問題用計算装置において、
前記特定粒子が属する残基の重心座標と前記特定粒子が属する残基以外の他の残基の重心座標との距離とカットオフ距離とを比較し、当該距離が当該カットオフ距離より短い場合、当該他の残基に属するすべての粒子を対象粒子とするカットオフ手段と、
前記特定粒子に対応するアドレスを順次供給する第１のアドレス手段と、
前記第１のアドレス手段が供給した前記特定粒子に働く力又はポテンシャルの計算対象となる前記対象粒子に対応するアドレスを順次供給する第２のアドレス手段と、
前記第２のアドレス手段が供給した前記対象粒子に対応するアドレスに基づき、前記対象粒子を含む粒子に対応するアドレスを順次供給する第３のアドレス手段と、
前記第１のアドレス手段が供給した前記特定粒子に対応するアドレスに基づき、前記特定粒子を含む粒子に対応するアドレスを順次供給する第４のアドレス手段と、
前記第３のアドレス手段が供給した前記対象粒子の座標と、前記第４のアドレス手段が供給した前記特定粒子の座標と、を記憶する座標記憶手段と、
前記座標記憶手段に記憶された前記特定粒子の座標と前記対象粒子の座標とに基づいて、前記特定粒子と前記対象粒子との距離を計算する距離計算手段と、
前記距離計算手段により計算された前記距離に基づいて、前記特定粒子に働く力又はポテンシャルを計算する力計算手段と、
を備えることを特徴とする多体問題用計算装置。
【請求項２】
前記アドレスは、前記特定粒子の座標及び個数と、前記特定粒子を含む粒子の座標及び個数と、前記対象粒子の座標及び個数と、前記対象粒子を含む粒子の座標及び個数と、を有する、
ことを特徴とする請求項１に記載の多体問題用計算装置。
【請求項３】
前記第１のアドレス手段は、前記第４のアドレス手段が供給した前記特定粒子を含む粒子に対応するアドレスに基づいて、前記特定粒子に対応するアドレスを順次供給する、
ことを特徴とする請求項１又は２に記載の多体問題用計算装置。
【請求項４】
前記第４のアドレス手段は、前記第２のアドレス手段が供給した前記対象粒子に対応するアドレスと、前記第１のアドレス手段が供給した前記特定粒子に対応するアドレスと、に基づいて、アドレスを順次供給する、
ことを特徴とする請求項１乃至３のいずれか１項に記載の多体問題用計算装置。
【請求項５】
カットオフ部と、第１のアドレス部と、第２のアドレス部と、第３のアドレス部と、第４のアドレス部と、座標記憶部と、距離計算部と、力計算部と、を有する複数の粒子からなる系の特定粒子に働く力又はポテンシャルを計算する多体問題用計算装置が実行する多体問題用計算方法であって、
前記カットオフ部が、前記特定粒子が属する残基の重心座標と前記特定粒子が属する残基以外の他の残基の重心座標との距離とカットオフ距離とを比較し、当該距離が当該カットオフ距離より短い場合、当該他の残基に属するすべての粒子を対象粒子とするカットオフ工程と、
前記第１のアドレス部が、前記特定粒子に対応するアドレスを順次供給する第１のアドレス工程と、
前記第２のアドレス部が、前記第１のアドレス部が供給した前記特定粒子に働く力又はポテンシャルの計算対象となる前記対象粒子に対応するアドレスを順次供給する第２のアドレス工程と、
前記第３のアドレス部が、前記第２のアドレス部が供給した前記対象粒子に対応するアドレスに基づき、前記対象粒子を含む粒子に対応するアドレスを順次供給する第３のアドレス工程と、
前記第４のアドレス部が、前記第１のアドレス部が供給した前記特定粒子に対応するアドレスに基づき、前記特定粒子を含む粒子に対応するアドレスを順次供給する第４のアドレス工程と、を備え、
前記座標記憶部には、前記第３のアドレス部が供給した前記対象粒子の座標と、前記第４のアドレス部が供給した前記特定粒子の座標と、が記憶され、
前記多体問題用計算方法は、
前記距離計算部が、前記座標記憶部に記憶された前記特定粒子の座標と前記対象粒子の座標とに基づいて、前記特定粒子と前記対象粒子との距離を計算する距離計算工程と、
前記力計算部が、前記距離計算部により計算された前記距離に基づいて、前記特定粒子に働く力又はポテンシャルを計算する力計算工程と、
を備えることを特徴とする多体問題用計算方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、分子動力学法における力またはポテンシャルの計算を効率よく扱うための多体問題用計算装置、及び、多体問題用計算方法に関する。
【背景技術】
【０００２】
液体、固体、高分子などの挙動を、それらを構成する原子あるいは分子の動きの結果と考え、その動きを計算機でシミュレーションする分子動力学法が知られている。互いに相互作用する多数の粒子からなる系を扱う問題を多体問題といい、分子動力学では原子や分子を粒子とした多体問題の計算を行っている。
【０００３】
分子動力学法などの多体問題の計算では、複数の粒子からなる系の特定粒子に働く力またはポテンシャルを、系に含まれるそれ以外の全ての粒子との間に働く力またはポテンシャルの総和として計算しなければならない。また、系に含まれる全ての粒子について計算を行わなければならないため、計算量は膨大になる。
【０００４】
そこで、特許文献１及び２に記載の多体問題用計算装置では、要求される計算精度に応じて適当なカットオフ距離ｒｃを定め、特定粒子との距離ｒがカットオフ距離ｒｃ以下である粒子についてのみ、力またはポテンシャルを計算することにより、計算量を抑制している。このような手法をカットオフと呼ぶ。
【０００５】
図４はカットオフを説明するための図である。図４中の黒点および白点は粒子を示し、あるｉ番目の特定粒子との距離ｒがカットオフ距離ｒｃ以内の粒子を黒点で示し、それ以外の粒子を白点で示す。黒点で示した粒子のみが、ｉ番目の特定粒子の計算対象となる。
【特許文献１】特開平６−２３１１１４号公報
【特許文献２】特開平８−２８５７５７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１及び２に開示されている構成では、粒子間距離でカットオフを行うと、共有結合で結合された一方の粒子を計算し、他方を計算しないというようなことが起きる。例えば、双極子は正負の同じ大きさの電荷を持つ粒子で構成され、その総電荷は０であり、双極子から特定粒子に働く力は小さい。しかし、双極子を形成している粒子対の片方の粒子のみが計算対象となった場合、双極子から特定粒子には大きな力が働くように計算されるため、エネルギの変動が大きくなり、計算が不安定になる問題がある。従って、分子動力学法における力またはポテンシャルの計算を効率よく扱うための好適な新たな方法が求められている。
【０００７】
本発明は、上記問題に鑑みてなされたものであり、分子動力学法における力またはポテンシャルの計算を効率よく扱うための多体問題用計算装置、及び、多体問題用計算方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記の目的を達成するため、本発明の第１の観点に係る多体問題用計算装置は、
複数の粒子からなる系の特定粒子に働く力又はポテンシャルを計算する多体問題用計算装置において、
前記特定粒子が属する残基の重心座標と前記特定粒子が属する残基以外の他の残基の重心座標との距離とカットオフ距離とを比較し、当該距離が当該カットオフ距離より短い場合、当該他の残基に属するすべての粒子を対象粒子とするカットオフ手段と、
前記特定粒子に対応するアドレスを順次供給する第１のアドレス手段と、
前記第１のアドレス手段が供給した前記特定粒子に働く力又はポテンシャルの計算対象となる前記対象粒子に対応するアドレスを順次供給する第２のアドレス手段と、
前記第２のアドレス手段が供給した前記対象粒子に対応するアドレスに基づき、前記対象粒子を含む粒子に対応するアドレスを順次供給する第３のアドレス手段と、
前記第１のアドレス手段が供給した前記特定粒子に対応するアドレスに基づき、前記特定粒子を含む粒子に対応するアドレスを順次供給する第４のアドレス手段と、
前記第３のアドレス手段が供給した前記対象粒子の座標と、前記第４のアドレス手段が供給した前記特定粒子の座標と、を記憶する座標記憶手段と、
前記座標記憶手段に記憶された前記特定粒子の座標と前記対象粒子の座標とに基づいて、前記特定粒子と前記対象粒子との距離を計算する距離計算手段と、
前記距離計算手段により計算された前記距離に基づいて、前記特定粒子に働く力又はポテンシャルを計算する力計算手段と、を備える。
【０００９】
上記の目的を達成するため、本発明の第２の観点に係る多体問題用計算方法は、
カットオフ部と、第１のアドレス部と、第２のアドレス部と、第３のアドレス部と、第４のアドレス部と、座標記憶部と、距離計算部と、力計算部と、を有する複数の粒子からなる系の特定粒子に働く力又はポテンシャルを計算する多体問題用計算装置が実行する多体問題用計算方法であって、
前記カットオフ部が、前記特定粒子が属する残基の重心座標と前記特定粒子が属する残基以外の他の残基の重心座標との距離とカットオフ距離とを比較し、当該距離が当該カットオフ距離より短い場合、当該他の残基に属するすべての粒子を対象粒子とするカットオフ工程と、
前記第１のアドレス部が、前記特定粒子に対応するアドレスを順次供給する第１のアドレス工程と、
前記第２のアドレス部が、前記第１のアドレス部が供給した前記特定粒子に働く力又はポテンシャルの計算対象となる前記対象粒子に対応するアドレスを順次供給する第２のアドレス工程と、
前記第３のアドレス部が、前記第２のアドレス部が供給した前記対象粒子に対応するアドレスに基づき、前記対象粒子を含む粒子に対応するアドレスを順次供給する第３のアドレス工程と、
前記第４のアドレス部が、前記第１のアドレス部が供給した前記特定粒子に対応するアドレスに基づき、前記特定粒子を含む粒子に対応するアドレスを順次供給する第４のアドレス工程と、を備え、
前記座標記憶部には、前記第３のアドレス部が供給した前記対象粒子の座標と、前記第４のアドレス部が供給した前記特定粒子の座標と、が記憶され、
前記多体問題用計算方法は、
前記距離計算部が、前記座標記憶部に記憶された前記特定粒子の座標と前記対象粒子の座標とに基づいて、前記特定粒子と前記対象粒子との距離を計算する距離計算工程と、
前記力計算部が、前記距離計算部により計算された前記距離に基づいて、前記特定粒子に働く力又はポテンシャルを計算する力計算工程と、を備える。
【発明の効果】
【００１０】
本発明によれば、分子動力学法における力またはポテンシャルの計算を効率よく扱うことができる。
【発明を実施するための最良の形態】
【００１１】
以下では、本発明の多体問題用計算装置の実施形態の一つについて説明するが、当該実施形態は本発明の原理の理解を容易にするためのものであり、本発明の範囲は、下記の実施形態に限られるものではなく、当業者が以下の実施形態の構成を適宜置換した他の実施形態も、本発明の範囲に含まれる。
【００１２】
まず、ある特定粒子が属する残基の重心座標と、それ以外の粒子が属する残基の重心座標との距離がカットオフ距離以内であれば、その残基に属する粒子をすべて計算対象とする、残基ベースカットオフ手法について、図５を参照して説明する。
【００１３】
図５中の黒点および白点は粒子を示し、破線に囲まれた粒子により残基が構成される。図中の×印はそれぞれの残基の重心を示している。例えば、特定粒子であるｉ粒子が属する残基Ａの重心から残基Ｂの重心までの距離は、カットオフ距離ｒｃ以内であるため、残基Ｂに属する全ての粒子がｉ粒子に対して計算対象となる。一方、残基Ａの重心から残基Ｃの重心までの距離は、カットオフ距離ｒｃ以上であるため、残基Ｃに属する全ての粒子がｉ粒子に対して計算対象外となる。双極子や残基を構成する全ての粒子を計算対象とすることにより、エネルギ変動は小さくなり、計算が安定する。
なお、図５の×印は、残基の重心に限られず、特定された一部の粒子の重心、粒子の外殻の中心、特定された粒子の位置等、任意に決定することができる。従って、カットオフ距離ｒｃは、残基間の重心距離に限られず、外殻距離等、任意である。
【００１４】
次に、本実施形態に係る多体問題用計算装置について図１を参照して説明する。本発明は、複数の粒子からなる系の特定粒子に働く力またはポテンシャルを計算する多体問題用計算装置において、粒子が属する残基（たんぱく質を構成するアミノ酸）の重心座標の距離がカットオフ距離内にある粒子のペアにおいてのみ、力またはポテンシャルを計算する構成を有している。
【００１５】
多体問題用計算装置１００は、第１のアドレス手段１と、Ｉ残基記憶手段２と、第２のアドレス手段３と、Ｊ残基記憶手段４と、第３のアドレス手段５と、第４のアドレス手段６と、アドレス選択手段７と、座標記憶手段８と、Ｉ粒子座標記憶手段９と、距離計算手段１０と、力計算手段１１と、を備える。
【００１６】
第１のアドレス手段１は、後述するＩ残基記憶手段２のアドレスを指定する。第１のアドレス手段１には、あらかじめＩ残基記憶手段２の先頭を示すアドレスが図示しない装置により書き込まれている。第１のアドレス手段１は、後述する第４のアドレス手段６からのインクリメント指示によりアドレスをインクリメントする。
第１のアドレス手段１は、例えば、アップカウンタで構成され、そのアドレスがクロックパルス毎に１だけインクリメントすることにより、ｊ粒子が順次計算される。系内の全てのｊ粒子について計算が終われば、第１のアドレス手段１は、最初のｊ粒子のアドレスを設定し、そのアドレスを１だけインクリメントする指示を渡し、次のｉ粒子について計算する。
【００１７】
Ｉ残基記憶手段２は、特定の粒子であるＩ粒子を含む残基であるＩ残基の情報を記憶する。Ｉ残基記憶手段２には、当該Ｉ残基の情報があらかじめ書き込まれている。ここで、Ｉ残基の情報とは、後述する座標記憶手段８においてＩ残基に含まれる最初の粒子の座標が書き込まれているアドレスＩＡＤと、Ｉ残基に含まれる粒子の数ＩＮと、Ｊ残基記憶手段４においてＩ残基の計算対象となる最初のＪ残基の情報が書き込まれているアドレスＲＡＤと、Ｉ残基の計算対象となるＪ残基の数ＲＮと、である。
【００１８】
第２のアドレス手段３は、例えば、アップカウンタで構成されており、毎クロックインクリメントする。また、第２のアドレス手段３は、後述するＪ残基記憶手段４のアドレスを指定する。第２のアドレス手段３には、Ｉ残記憶手段２に記憶されているアドレスＲＡＤが書き込まれ、後述する第３のアドレス手段５からのインクリメント指示によりアドレスをインクリメントする。Ｉ残記憶手段２に記憶されているＪ残基の数ＲＮだけインクリメントすると、第４のアドレス手段６にインクリメント指示を渡す。
【００１９】
Ｊ残基記憶手段４には、Ｉ残基の計算対象となる全てのＪ残基の情報があらかじめ書き込まれている。ここで、Ｊ残基の情報とは、座標記憶手段８においてＪ残基に含まれる最初の粒子の座標が書き込まれているアドレスＪＡＤと、Ｊ残基に含まれる粒子の数ＪＮと、である。
また、Ｊ残基記憶手段４には、Ｉ残基について、アドレスＲＡＤにより指定されるアドレスから、Ｊ残基の数ＲＮだけのＪ残基の情報が、Ｊ残基記憶手段４に書き込まれている。
さらに、全てのＩ残基について、同様にＪ残基の情報がＪ残基記憶手段４に書き込まれている。
【００２０】
第３のアドレス手段５は、例えば、アップカウンタで構成されており、毎クロックインクリメントする。また、第３のアドレス手段５は、座標記憶手段８のアドレスを指定する。第３のアドレス手段５には、Ｊ残記憶手段４に記憶されているアドレスＪＡＤが書き込まれる。第３のアドレス手段５は、Ｊ残記憶手段４に記憶されているＪ残基に含まれる粒子の数ＪＮだけインクリメントすると、第２のアドレス手段３にインクリメント指示を渡す。
【００２１】
第４のアドレス手段６は、例えば、アップカウンタで構成されており、毎クロックインクリメントする。また、第４のアドレス手段６は、座標記憶手段８のアドレスを指定する。第４のアドレス手段６には、Ｉ残記憶手段２に記憶されているアドレスＩＡＤが書き込まれ、第２のアドレス手段３からのインクリメント指示によりインクリメントする。Ｉ残記憶手段２に記憶されているＩ残基に含まれる粒子の数ＩＮだけインクリメントすると、第１のアドレス手段１にインクリメント指示を渡す。
【００２２】
アドレス選択手段７は、第３のアドレス手段５及び第４のアドレス手段６からアドレスを選択する。また、アドレス選択手段７は、粒子のアドレス情報を座標記憶部手段８に渡す。
【００２３】
座標記憶手段８は、粒子の座標を記憶する。座標記憶手段８には、粒子の座標（ｘ軸座標、ｙ軸座標、ｚ軸座標）、系内の粒子が属する残基の重心の座標等、力の計算に必要な情報が、図示しない装置によって、あらかじめ書き込まれている。ある残基に含まれる粒子の座標は連続したアドレスに書き込まれている。
【００２４】
Ｉ粒子座標記憶手段９は、特定の粒子であるＩ粒子の座標を記憶する。Ｉ粒子座標記憶手段９には外部装置（図示せず）が接続されており、当該外部装置はＩ粒子座標記憶手段９に記憶された情報を読み書きすることができる。
【００２５】
距離計算手段１０は、粒子の距離を計算する。また、距離計算手段１０は、当該計算結果を力計算手段１１に渡す。ｉ粒子の座標（ｘｉ、ｙｉ、ｚｉ）とｊ粒子の座標（ｘｊ、ｙｊ、ｚｊ）との粒子間距離ｒは、例えば、数１により計算される。
（数１）
ｒ＝｛（ｘｊ−ｘｉ）２＋（ｙｊ−ｙｉ）２＋（ｚｊ−ｚｉ）２｝１／２
【００２６】
力計算手段１１は、粒子の距離から特定粒子における物理量（例えば、クーロン力、クーロンポテンシャル、ファンデルワールス力）を計算する。
【００２７】
次に、本実施形態に係る多体問題用計算装置１００の動作について、図３を参照して説明する。
【００２８】
第１のアドレス手段１がＩ残基記憶手段２に記憶されたアドレスを指定すると、Ｉ残基（例えば、Ｉ１残基）のアドレスＩＡＤとＩ１残基の粒子数ＩＮとが第４のアドレス手段６にセットされる。また、Ｉ１残基の計算対象となるＪ残基（例えば、Ｊ１残基）のアドレスＲＡＤとＪ１残基の数ＲＮとが第２のアドレス手段３にセットされる（ステップＳ１１）。
【００２９】
第４のアドレス手段６にセットされたアドレスに対応する座標記憶手段８が記憶するアドレスからＩ粒子（例えば、Ｉ１粒子）の座標が読み出され、当該Ｉ１粒子の座標がＩ粒子座標記憶手段９にセットされる（ステップＳ１２）。なお、アドレス選択手段７により、第３のアドレス手段５及び第４のアドレス手段６からアドレスが適宜選択される。
【００３０】
第２のアドレス手段３にセットされたアドレスに対応するＪ残基記憶手段４が記憶するアドレスから、Ｊ１残基のアドレスＪＡＤとＪ１残基の粒子数ＪＮとが第３のアドレス手段５にセットされる（ステップＳ１３）。
【００３１】
第３のアドレス手段５にセットされたアドレスに対応する座標記憶手段８が記憶するアドレスから、Ｊ粒子（例えば、Ｊ１粒子）の座標が読み出される。ここで、Ｉ残記憶手段２には、Ｉ残基に含まれる最初の粒子の座標が書き込まれているアドレスＩＡＤとＩ残基に含まれる粒子の数ＩＮとが記憶されている。また、Ｊ残基記憶手段４には、Ｊ残基に含まれる最初の粒子の座標が書き込まれているアドレスＪＡＤとＪ残基に含まれる粒子の数ＪＮとが記憶されている。このため、座標記憶手段８には、図２に示すように、Ｉ残基記憶手段２に記憶されたＩ残基に含まれる粒子の座標（ｘ、ｙ、ｚ）と、Ｊ残基記憶手段４に記憶されたＪ残基に含まれる粒子の座標（ｘ、ｙ、ｚ）とが記憶される。距離計算手段１０では、Ｉ１粒子の座標とＪ１粒子の座標からＩ１粒子とＪ１粒子との距離が計算され、当該計算結果に基づいて力計算手段１１で力（例えば、クーロン力）が計算される（ステップＳ１４）。
【００３２】
次に、第３のアドレス手段５にセットされたアドレス情報が順次インクリメントされ、Ｉ粒子座標記憶手段９に記憶されているＩ１粒子と、Ｊ１残基に含まれるＪ粒子（例えば、Ｊ２粒子）と、の間に働く力が順次計算される（ステップＳ１５）。
【００３３】
次に、第３のアドレス手段５にセットされたＪ１残基の粒子数ＪＮだけインクリメントされ、当該インクリメント指示が第２のアドレス手段３に出されることにより、Ｉ１粒子と、次のＪ残基（例えば、Ｊ２残基）に含まれるＪ粒子と、の間に働く力が計算される（ステップＳ１６）。
【００３４】
第２のアドレス手段３によりＪ１残基の数ＲＮだけインクリメントされると、
ステップＳ１１でセットされたＪ１残基のアドレスＲＡＤに戻り、第４のアドレス手段６にインクリメント指示が出される。これにより、Ｉ１残基に含まれる次のＩ粒子（例えば、Ｉ２粒子）と、Ｊ１残基に含まれるＪ１粒子と、の間に働く力が計算される（ステップＳ１７）。
【００３５】
第４のアドレス手段６によりＩ１残基の粒子数ＩＮだけインクリメントされると、第１のアドレス手段１にインクリメント指示が出される。これにより、次のＩ残基（例えば、Ｉ２残基）に含まれる粒子と、Ｊ１残基に含まれる粒子と、の間に働く力が計算される（ステップＳ１８）。
【００３６】
以上の処理を繰り返すことにより、すべてのＩ残基に含まれる粒子と、すべてのＪ残基に含まれる粒子と、の間に働く力が容易に計算される。
【００３７】
以上説明したように、本発明によれば、残基ベースカットオフ手法を用いて、双極子や残基を構成する全ての粒子を計算対象とすることにより、エネルギ変動は小さくなり、計算が安定する。また、分子動力学法における力またはポテンシャルの計算を効率よく扱うことができる。
【図面の簡単な説明】
【００３８】
【図１】本発明の実施の形態に係る多体問題用計算装置を示すブロック図である。
【図２】アドレス情報の遷移を説明する図である。
【図３】多体問題用計算装置の動作を説明するフローチャートである。
【図４】カットオフを説明する図である。
【図５】残基ベースカットオフを説明する図である。
【符号の説明】
【００３９】
１００  多体問題用計算装置
１      第１のアドレス手段
２      Ｉ残基記憶手段
３      第２のアドレス手段
４      Ｊ残基記憶手段
５      第３のアドレス手段
６      第４のアドレス手段
７      アドレス選択手段
８      座標記憶手段
９      Ｉ粒子座標記憶手段
１０    距離計算手段
１１    力計算手段
【図１】
0005012560.tif 000002
【図２】
0005012560.tif 000003
【図３】
0005012560.tif 000004
【図４】
0005012560.tif 000005
【図５】
0005012560.tif 000006