JPH0950458A - 分子軌道に関する2電子積分の計算方法 - Google Patents

分子軌道に関する2電子積分の計算方法

Info

Publication number
JPH0950458A
JPH0950458A JP20423595A JP20423595A JPH0950458A JP H0950458 A JPH0950458 A JP H0950458A JP 20423595 A JP20423595 A JP 20423595A JP 20423595 A JP20423595 A JP 20423595A JP H0950458 A JPH0950458 A JP H0950458A
Authority
JP
Japan
Prior art keywords
electron
orbital
molecular
atomic
integral
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP20423595A
Other languages
English (en)
Inventor
Yoshiaki Takemura
佳昭 竹村
Takuya Maruizumi
琢也 丸泉
Jiro Ushio
二郎 牛尾
Shiyurutei Yurugen
ユルゲン・シュルティ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP20423595A priority Critical patent/JPH0950458A/ja
Publication of JPH0950458A publication Critical patent/JPH0950458A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

(57)【要約】 【目的】 分子軌道の番号による繰返し計算を分割し、
各プロセッサでは分子軌道に関する2電子積分の計算
を、2電子積分の部分和を利用し並列に実行することに
より、プロセッサ数の大きなシステムでの高速計算を可
能とする。 【構成】 101でプロセッサ番号Iを1とし、処理1
03を実行、103で番号Iのプロセッサにおける分子
積分<φiφj||φkφl>を計算する 【効果】 プロセッサ数に比例した計算処理の発生を防
ぎ、プロセッサ数の大きなシステムでの高速計算を可能
とする。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、原子分子の大きさで材
料特性を予測するシミュレーションである分子軌道法に
おいて、分子軌道に関する2電子積分の計算方法に関す
る。
【0002】
【従来の技術】分子軌道法計算においては、Fock行
列や配置間相互作用における対角化行列の行列要素や、
全エネルギー等の物理量計算のために、数1で表わされ
る2電子積分の数値を求める必要がある。
【0003】
【数1】
【0004】ここで、i、j、k、lは分子軌道の番号
を表わす正の整数であり、r1及びr2は電子の座標を
表わし、r12は電子1及び電子2の距離を表わす。分
子軌道φiは、数2の様に原子軌道χp(1≦p≦
m’)の線形結合(LCAO:near Combin
ation of Atomic Orbital)で
表わされる。
【0005】
【数2】
【0006】ここで、Upiは、原子軌道を分子軌道へ
変換するための係数行列の行列要素、m’は線形結合に
用いる原子軌道数を表わす。
【0007】数1及び数2から、前述の分子軌道に関す
る2電子積分<φiφj||φkφl>は、数3の様に
表わされる。
【0008】
【数3】
【0009】ここで、<pq||rs>は、原子軌道に
関する2電子積分であって、数4の様に定義される。
【0010】
【数4】
【0011】実際の数値計算においては、個々の原子軌
道はスレータ型軌道(STO:Slater Type
Orbital)やガウス型軌道(GTO:Gaus
sian Type Orbital)が用いられ、ま
ず入力データで定義された原子軌道の全ての組に対して
前記原子軌道に関する2電子積分<pq||rs>を解
析的に全て計算しておく。数3に示されるような前記分
子軌道に関する2電子積分は、<pq||rs>と係数
行列Upiとの積和計算である。
【0012】このとき、全ての分子軌道の組(i,j,
k,l)に対して数3に示される数値計算を行うための
繰り返し計算の数は、分子軌道数をmとすれば
【0013】
【数5】
【0014】となる。実際の数値計算では m≦m’ となることが多いため、数5はm’の8次以下と見積も
ることが出来る。
【0015】このため、従来技術では前記原子軌道に関
する2電子積分の部分和をとることによりこの繰り返し
計算数の次数をさげる工夫が行われてきた。
【0016】以下、従来技術を図面を用いて説明する。
【0017】なお、本明細書における以下の記述では、
簡単の為に、前記分子軌道に関する2電子積分を「分子
積分」、前記原子軌道に関する2電子積分を「原子積
分」と記す。また、特別に断りの無い限り、計算に使用
する分子軌道及び原子軌道の個数は、それぞれm及び
m’である。
【0018】図4は、本発明に関する従来技術の処理手
順を示す図である。
【0019】401は、繰返し数カウンタpが1から
m’まで1ずつ増加する間、一連の処理402、403
及び404をこの順序で繰り返すことを示す。
【0020】402では、全ての正の整数の組(i,
j,k,l)に対して分子積分<φiφj||φkφl
>の値を0とする。ここで、i、j、k、lの値はそれ
ぞれ 1≦i≦m、1≦j≦m、1≦k≦m、1≦l≦m である。
【0021】403は、2電子積分の部分和cpjkl
を計算する処理であり、この内容は別に記述する。
【0022】404は、繰返し数カウンタiが1からm
まで1ずつ増加する間、処理405を繰り返すことを示
す。
【0023】405は、繰返し数カウンタjが1からm
まで1ずつ増加する間、処理406を繰り返すことを示
す。
【0024】406は、繰返し数カウンタkが1からm
まで1ずつ増加する間、処理407を繰り返すことを示
す。
【0025】407は、繰返し数カウンタlが1からm
まで1ずつ増加する間、処理408を繰り返すことを示
す。
【0026】408では、原子軌道を分子軌道へ変換す
るための係数行列の行列要素Upiの複素共役と処理4
03で計算した2電子積分の部分和cpjklとの積を
分子積分<φiφj||φkφl>に加え、この結果を
<φiφj||φkφl>の新しい値とする。
【0027】図3は、本発明に関する従来技術及び本発
明の一実施例において、2電子積分の部分和cpjkl
を計算する処理403の内容を示す図である。
【0028】403は、一連の処理301、302、3
03及び304がこの順序で行われることにより、2電
子積分の部分和cpjklが計算されることを示す。
【0029】301は、全ての正の整数の組(p,q,
r,j,k,l)に対して部分和apqrl、bpqk
l、cpjklの値をそれぞれ0とすることを示す。こ
こで、p、q、r、j、k、lの値はそれぞれ1≦p≦
m、1≦q≦m、1≦r≦m、1≦j≦m、1≦k≦
m、1≦l≦mである。
【0030】302では、前記数2で表されるような原
子軌道を分子軌道へ変換する係数行列Uの行列要素を全
て読み込む。ここで、行列Uは、m’行m列の行列であ
る。303では、全ての正の整数の組(p,q,r,
s)に対して、原子積分<pq||rs>の値を読み込
む。
【0031】304は、繰返し数カウンタqが1から
m’まで1ずつ増加する間、一連の処理305及び30
6をこの順序で繰り返すことを示す。
【0032】305は、繰返し数カウンタrが1から
m’まで1ずつ増加する間、一連の処理307及び30
8を繰り返すことを示す。
【0033】307は、繰返し数カウンタsが1から
m’まで1ずつ増加する間、処理309を繰り返すこと
を示す。
【0034】309は、繰返し数カウンタlが1からm
まで1ずつ増加する間、処理310を繰り返すことを示
す。
【0035】310では、係数行列Uの行列要素Usl
と原子積分<pq||rs>との積を部分和apqrl
に加え、その結果をapqrlの新しい値とする。
【0036】308は、繰返し数カウンタkが1からm
まで1ずつ増加する間、処理311を繰り返すことを示
す。
【0037】311は、繰返し数カウンタlが1からm
まで1ずつ増加する間、処理312を繰り返すことを示
す。
【0038】312では、係数行列Uの行列要素Urk
の複素共役と部分和apqrlとの積を部分和bpqk
lに加え、その結果をbpqklの新しい値とする。
【0039】306は、繰返し数カウンタjが1からm
まで1ずつ増加する間、処理313を繰り返すことを示
す。
【0040】313は、繰返し数カウンタkが1からm
まで1ずつ増加する間、処理314を繰り返すことを示
す。
【0041】314は、繰返し数カウンタlが1からm
まで1ずつ増加する間、処理315を繰り返すことを示
す。
【0042】315では、係数行列Uの行列要素Uqj
と部分和bpqklとの積を部分和cpjklに加え、
その結果をcpjklの新しい値とする。
【0043】以上、図4及び図3に見られるように、処
理401はm’の1次、処理402及び403はともに
m’の4次の繰返し数と見積もれる。また、404、4
05、406、407及び408からなる処理の合計は
m’の4次の繰返し数と見積もれる。従って、図4及び
図3に記述された従来技術では、全ての分子軌道の組
(i,j,k,l)に対して数3に示される数値計算を
行うための繰り返し計算の数は、m’の5次となる。
【0044】ここで、以下の記述における繰り返し計算
の数比較のため、処理402及び403の繰り返し計算
数をそれぞれ
【0045】
【数6】
【0046】および
【0047】
【数7】
【0048】とする。
【0049】また、404、405、406、407及
び408からなる処理の繰り返し計算数を
【0050】
【数8】
【0051】とする。
【0052】このとき、図3及び図4における処理の繰
り返し計算数は
【0053】
【数9】
【0054】となる。
【0055】これに類似の技術は、例えば、「Meth
ods of Electronic Structu
re Theory」第6章205頁ないし208頁
(編集者 HenryF.Schaefer III、
前記該当箇所の執筆者 Isaiah Shavit
t、1977年、アメリカ合衆国ニューヨーク州Ple
num Press社発行)に記されている。
【0056】
【発明が解決しようとする課題】上記従来技術は主とし
てノイマン型計算機を対象として用いられてきた。しか
し、近年、並列計算機を使用した高速計算技術が発展し
てきており、上記従来技術も並列計算機上で実行し計算
を高速化することが期待されている。
【0057】上記従来技術を並列計算処理するための基
本的な方法は、最も上位に位置する繰返し401を分割
して各プロセッサに処理させることである。以下、この
場合の問題点を、図面を用いて説明する。
【0058】なお、以下の記述において、並列計算機を
構成する並列なプロセッサ数をNとする。
【0059】図5は、本発明に関する従来技術におい
て、最も上位に位置する繰返し401を分割して各プロ
セッサに並列処理させる手順を示したものである。
【0060】501は、1番目のプロセッサにおいて、
プロセッサ番号Jを1とし、処理502を実行すること
を示す。
【0061】503は、N番目のプロセッサにおいて、
プロセッサ番号JをNとし、処理502を実行すること
を示す。
【0062】ここで、501及び503に記述された処
理内容は、2番目以降(N−1)番目のプロセッサにお
いても同様である。
【0063】また、501及び503は、1番目からN
番目までの個々のプロセッサ上でそれぞれ処理502が
行われること、及び1番目からN番目までの全てのプロ
セッサ上で処理502が終了した後に処理504が行わ
れることを示している。
【0064】502は、番号Jのプロセッサにおける分
子積分の部分和<φiφj||φkφl>[J]を計算
する処理であり、この内容は別に記述する。
【0065】504では、全ての正の整数の組(i,
j,k,l)に対して分子積分<φiφj||φkφl
>の値を0とする。ここで、i、j、k、lの値はそれ
ぞれ 1≦i≦m、1≦j≦m、1≦k≦m、1≦l≦m である。
【0066】505は、繰返し数カウンタiが1からm
まで1ずつ増加する間、処理506を繰り返すことを示
す。
【0067】506は、繰返し数カウンタjが1からm
まで1ずつ増加する間、処理507を繰り返すことを示
す。
【0068】507は、繰返し数カウンタkが1からm
まで1ずつ増加する間、処理508を繰り返すことを示
す。
【0069】508は、繰返し数カウンタlが1からm
まで1ずつ増加する間、処理509を繰り返すことを示
す。
【0070】509は、繰返し数カウンタJが1からN
まで1ずつ増加する間、処理510を繰り返すことを示
す。
【0071】510では、処理502で計算した分子積
分の部分和<φiφj||φkφl>[J]を分子積分
<φiφj||φkφl>に加え、この結果を<φiφ
j||φkφl>の新しい値とする。
【0072】図6は、本発明に関する従来技術におい
て、最も上位に位置する繰返し401を分割して各プロ
セッサに並列処理させる場合、502の処理を示したも
のである。
【0073】502は、一連の処理601、602及び
603がこの順序で行われることにより番号Jのプロセ
ッサにおける分子積分の部分和<φiφj||φkφl
>[J]が計算されることを示したものである。
【0074】601では、NPの値をINT(m’/
N)とする。
【0075】ここで、INT(x)は、実数xの絶対値
を超えない最大の整数値に、xと同一の符号をつけた整
数値を表す。
【0076】602では、JとNとの大小を比較し、J
<Nの場合には処理604を実行し、それ以外の場合に
は処理605を実行する。
【0077】604では、p1の値を(J−1)×NP
+1とし、p2の値をJ×NPとする。
【0078】605では、p1の値を(J−1)×NP
+1とし、p2の値をm’とする。603は、繰返し数
カウンタpがp1からp2まで1ずつ増加する間、一連
の処理606、403及び607をこの順序で繰り返す
ことを示す。
【0079】606は、全ての正の整数の組(i,j,
k,l)に対して分子積分の部分和<φiφj||φk
φl>[J]の値を0とする。ここで、i、j、k、l
の値はそれぞれ 1≦i≦m、1≦j≦m、1≦k≦m、1≦l≦m である。
【0080】403は、2電子積分の部分和cpjkl
を計算する処理であり、この内容は別に記述する。
【0081】607は、繰返し数カウンタiが1からm
まで1ずつ増加する間、処理608を繰り返すことを示
す。
【0082】608は、繰返し数カウンタjが1からm
まで1ずつ増加する間、処理609を繰り返すことを示
す。
【0083】609は、繰返し数カウンタkが1からm
まで1ずつ増加する間、処理610を繰り返すことを示
す。
【0084】610は、繰返し数カウンタlが1からm
まで1ずつ増加する間、処理611を繰り返すことを示
す。
【0085】611では、原子軌道を分子軌道へ変換す
るための係数行列の行列要素Upiの複素共役と処理4
03で計算した2電子積分の部分和cpjklとの積を
分子積分の部分和<φiφj||φkφl>[J]に加
え、この結果を<φiφj||φkφl>[J]の新し
い値とする。
【0086】以上、従来技術において401を分割して
各プロセッサに並列処理させる場合の処理手順を説明し
た。
【0087】ここで、図3及び図4の様に従来技術をノ
イマン型計算機で実施した場合と、上記図5及び図6に
示した場合とで繰り返し計算数を比較する。
【0088】図5及び図6に示した場合、繰返し数が
m’の最大次数となる部分は501、502及び503
の部分である。
【0089】まず、502の繰り返し計算数において、
並列化により603の繰り返し計算数は(m’/N)で
ある。
【0090】次に、606の繰り返し計算数は402と
同等で上述の数6となる。また、403の繰り返し計算
数は前述の数7のようになる。さらに、一連の処理60
7、608、609、610及び611は404、40
5、406、407及び408からなる処理と同等の繰
り返し計算数で、上述の数8となる。
【0091】従って、501、502及び503の部分
の繰り返し計算数は
【0092】
【数10】
【0093】となる。
【0094】すなわち、並列化により繰返し数が図4の
場合の(1/N)倍となる利点がある。
【0095】しかし、501、502及び503の処理
だけでは、分子積分<φiφj||φkφl>の計算は
未だ終了せず、各プロセッサJで分子積分の部分和<φ
iφj||φkφl>[J]の計算が終了した状態にな
る。したがって、新たに504、505、506、50
7、508、509及び510の一連の処理による分子
積分<φiφj||φkφl>の計算が必要となる。
【0096】まず、504の繰り返し計算数は402と
同等で上述の数6となる。次に、505、506、50
7、508、509及び510の一連の処理の繰り返し
計算数は404、405、406、407及び408か
らなる処理のN倍と同等で、
【0097】
【数11】
【0098】となる。
【0099】すなわち、プロセッサ数Nに比例する処理
が余計に発生する。
【0100】この結果、プロセッサ数の大きなシステム
になるほど、数11に示される様な処理数の増大をまね
き、数10に示される様な処理数減少すなわち計算高速
化の利点が損なわれ易くなるという問題点があった。
【0101】本発明は、前記問題点を解決するためにな
されたものである。
【0102】本発明の目的は、分子軌道に関する2電子
積分計算において、プロセッサ数の大きなシステムにお
いても、並列化による計算高速化の利点が損なわれない
様にすることにある。
【0103】
【課題を解決するための手段】上記目的は、分子軌道法
計算における分子軌道に関する2電子積分計算をN個の
プロセッサで並列に行う計算方法において、前記分子軌
道の総数をm、原子軌道の総数をm’とし、Iを前記プ
ロセッサの番号を表す正の整数とし、おのおの1≦i≦
m、1≦j≦m、1≦k≦m及び1≦l≦mなる値をと
る整数i、j、k及びlを前記分子軌道の番号とし、お
のおの1≦p≦m’、1≦q≦m’、1≦r≦m’及び
1≦s≦m’なる値をとる整数p、q、r及びsを前記
原子軌道の番号とし、i番目の前記分子軌道φiを前記
原子軌道の線型結合として表記した場合のp番目の前記
原子軌道χpの係数が行列要素Upiで表されるような
係数行列Uの全ての要素の値をあらかじめ持ち、電子1
と電子2の距離の逆数に、電子1の座標を有する分子軌
道φiの複素共役、電子1の座標を有する分子軌道φ
j、電子2の座標を有する分子軌道φkの複素共役及び
電子2の座標を有する分子軌道φlを乗じ電子1及び電
子2の座標に関して全空間で積分した結果を分子軌道に
関する2電子積分<φiφj||φkφl>とし、電子
1と電子2の距離の逆数に、電子1の座標を有する原子
軌道χpの複素共役、電子1の座標を有する原子軌道χ
q、電子2の座標を有する原子軌道χrの複素共役及び
電子2の座標を有する原子軌道χsを乗じ電子1及び電
子2の座標に関して全空間で積分した結果を原子軌道に
関する2電子積分<pq||rs>とし、前記全ての整
数p,q,r,sの組に対して、前記原子軌道に関する
2電子積分<pq||rs>の計算結果をあらかじめ持
ち、前記原子軌道に関する2電子積分<pq||rs>
に、前記係数行列の行列要素Urkの複素共役、行列要
素Uqj、行列要素Uslを乗じたものを前記全ての
q、r、sについて和したものを2電子積分の部分和c
pjklとし、前記iの変域を連続するN個の領域に分
割し、前記分割されたN個の領域の第I番目の領域の最
小値及び最大値をそれぞれN1(I)及びN2(I)と
し、I番目の前記プロセッサにおける計算処理におい
て、おのおのN1(I)≦i≦N2(I)、1≦j≦
m、1≦k≦m及び1≦l≦mなる値をとる整数i、
j、k及びlの全ての組に対して、前記係数行列の行列
要素Upiの複素共役に前記2電子積分の部分和cpj
klを乗じたものを前記全てのpの値について和したも
のを前記分子軌道に関する2電子積分<φiφj||φ
kφl>の値とすることにより達成される
【0104】
【作用】分子軌道の数をm、原子軌道の数をm’とす
る。
【0105】このとき、分子軌道に関する2電子積分<
φiφj||φkφl>は、上述の数1の様に定義され
る。
【0106】また、分子軌道φiは、上述の数2の様に
原子軌道χp(1≦p≦m’)の線形結合で定義され
る。
【0107】ここで、Upiは、原子軌道を分子軌道へ
変換するための係数行列の行列要素、m’は線形結合に
用いる原子軌道数を表わす。
【0108】数1及び数2から、前述の分子軌道に関す
る2電子積分<φiφj||φkφl>は、数3の様に
表わされる。
【0109】ここで、<pq||rs>は、原子軌道に
関する2電子積分であって、数4の様に定義される。
【0110】いま、全ての正の整数の組(i,j,k,
l)に対して分子積分<φiφj||φkφl>の値を
数3の関係に基づき計算する処理を、N個のプロセッサ
で並列に処理させる。
【0111】ここで、i、j、k、lの値はそれぞれ 1≦i≦m、1≦j≦m、1≦k≦m、1≦l≦m である。
【0112】プロセッサIにおいて、以下の処理をおこ
なう。
【0113】まず、NIの値をINT(m/N)とす
る。
【0114】ここで、INT(x)は、実数xの絶対値
を超えない最大の整数値に、xと同一の符号をつけた整
数値を表す。
【0115】次に、N1の値を(I−1)×NI+1と
する。
【0116】次に、IとNとの大小を比較し、I<Nの
場合にはN2の値をI×NIとし、それ以外の場合には
N2の値をmとする。
【0117】そして、全ての正の整数の組(i,j,
k,l)に対して分子積分<φiφj||φkφl>の
値を0とする。ここで、i、j、k、lの値はそれぞれ N1≦i≦N2、1≦j≦m、1≦k≦m、1≦l≦m である。
【0118】そして、繰返し数カウンタpが1からm’
まで1ずつ増加する間、はじめに数12で定義される2
電子積分の部分和cpjklを計算し、次に原子軌道を
分子軌道へ変換するための係数行列の行列要素Upiの
複素共役と後述する数12で定義される2電子積分の部
分和cpjklとの積を分子積分<φiφj||φkφ
l>に加え、この結果を<φiφj||φkφl>の新
しい値とする。
【0119】
【数12】
【0120】
【実施例】以下、本発明請求項1の実施例を図面を用い
て説明する。
【0121】図1は、本発明の一実施例の処理手順を示
す図である。
【0122】101は、1番目のプロセッサにおいて、
プロセッサ番号Iを1とし、処理103を実行すること
を示す。
【0123】102は、N番目のプロセッサにおいて、
プロセッサ番号IをNとし、処理103を実行すること
を示す。
【0124】ここで、101及び102に記述された処
理内容は、2番目以降(N−1)番目のプロセッサにお
いても同様である。
【0125】また、101及び102は、1番目からN
番目までの個々のプロセッサ上でそれぞれ処理103が
行われること、及び1番目からN番目までの全てのプロ
セッサ上で処理103が終了した後に図1に示す全ての
処理が終了することを示している。
【0126】103は、番号Iのプロセッサにおける分
子積分<φiφj||φkφl>を計算する処理であ
り、この内容は別に記述する。
【0127】図2は、本発明の一実施例において、処理
103の処理手順を示す図である。103は、一連の処
理202、203、204及び201がこの順序で実行
されることにより番号Iのプロセッサにおける分子積分
<φiφj||φkφl>が計算されることを示したも
のである。
【0128】202では、NIの値をINT(m/N)
とする。
【0129】ここで、INT(x)は、実数xの絶対値
を超えない最大の整数値に、xと同一の符号をつけた整
数値を表す。
【0130】203では、IとNとの大小を比較し、I
<Nの場合には処理206を実行し、それ以外の場合に
は処理207を実行する。
【0131】206では、N1の値を(I−1)×NI
+1とし、N2の値をI×NIとする。
【0132】207では、N1の値を(I−1)×NI
+1とし、N2の値をmとする。
【0133】204では、全ての正の整数の組(i,
j,k,l)に対して分子積分<φiφj||φkφl
>の値を0とする。ここで、i、j、k、lの値はそれ
ぞれ N1≦i≦N2、1≦j≦m、1≦k≦m、1≦l≦m である。
【0134】201は、繰返し数カウンタpが1から
m’まで1ずつ増加する間、一連の処理403及び20
5をこの順序で繰り返すことを示す。
【0135】403は、2電子積分の部分和cpjkl
を計算する処理であり、この内容は別に記述する。
【0136】205は、繰返し数カウンタiがN1から
N2まで1ずつ増加する間、処理208を繰り返すこと
を示す。
【0137】208は、繰返し数カウンタjが1からm
まで1ずつ増加する間、処理209を繰り返すことを示
す。
【0138】209は、繰返し数カウンタkが1からm
まで1ずつ増加する間、処理210を繰り返すことを示
す。
【0139】210は、繰返し数カウンタlが1からm
まで1ずつ増加する間、処理211を繰り返すことを示
す。
【0140】211では、原子軌道を分子軌道へ変換す
るための係数行列の行列要素Upiの複素共役と処理4
03で計算した2電子積分の部分和cpjklとの積を
分子積分<φiφj||φkφl>に加え、この結果を
<φiφj||φkφl>の新しい値とする。
【0141】以上、図1及び図2に見られるように、2
04の繰り返し計算数は、
【0142】
【数13】
【0143】であり、402の(1/N)倍となる。
【0144】また、処理201の繰り返し計算数はm’
である。
【0145】次に、403の繰り返し計算数は、前述の
数7のようになる。
【0146】一方、205、208、209、210及
び211からなる一連の処理の繰り返し計算数は、40
4、405、406、407及び408からなる処理の
繰り返し計算数の(1/N)倍であり、
【0147】
【数14】
【0148】となる。
【0149】以上、103における繰り返し計算数をま
とめると
【0150】
【数15】
【0151】となる。
【0152】すなわち、数9に示したような、ノイマン
型計算機で実現した従来技術の場合に比べて、繰り返し
計算数を記述する項のうちm’についての次数が下がる
項が生じるとともに主要な項が(1/N)倍されてい
る。
【0153】また、従来技術における最上位の繰り返し
処理を並列化した場合に比べて、数11に示したよう
な、Nに比例する項は全く存在しない。
【0154】なお、本実施例では原子軌道、分子軌道、
及び原子軌道を分子軌道に変換する係数行列の行列要素
は複素数として取り扱ったが、多くの分子軌道計算で用
いられるように、これらを実数とした場合でも、繰返し
計算数の大小関係は同様である。
【0155】
【発明の効果】以上に示したように、繰返し計算数の主
要な項が(1/N)倍となり並列処理による高速化の利
点が得られる一方で、各プロセッサの処理が終了した後
もプロセッサ数Nに比例する処理はまったく発生しな
い。したがって、プロセッサ数の大きなシステムにおい
ても、並列化による計算高速化の利点が損なわれること
はない。
【0156】
【図面の簡単な説明】
【図1】本発明の一実施例の処理手順を示す図。
【図2】本発明の一実施例において、処理103の処理
手順を示す図。
【図3】本発明に関する従来技術及び本発明の一実施例
において、2電子積分の部分和cpjklを計算する処
理403の内容を示す図。
【図4】本発明に関する従来技術の処理手順を示す図。
【図5】本発明に関する従来技術において、最も上位に
位置する繰返し401を分割して各プロセッサに並列処
理させる手順を示す図。
【図6】本発明に関する従来技術において、最も上位に
位置する繰返し401を分割して各プロセッサに並列処
理させる場合、502の処理を示す図。
【符号の説明】
101...1番目のプロセッサにおいて、プロセッサ
番号Iを1とし、処理103を実行、102...N番
目のプロセッサにおいて、プロセッサ番号IをNとし、
処理103を実行、103...番号Iのプロセッサに
おける分子積分<φiφj||φkφl>を計算する処
理。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ユルゲン・シュルティ 東京都国分寺市東恋ケ窪1丁目280番地 株式会社日立製作所中央研究所内

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】分子軌道法計算における分子軌道に関する
    2電子積分計算をN個のプロセッサで並列に行う計算方
    法であって、 前記分子軌道の総数をm、原子軌道の総数をm’とし、
    Iを前記プロセッサの番号を表す正の整数とし、おのお
    の1≦i≦m、1≦j≦m、1≦k≦m及び1≦l≦m
    なる値をとる整数i、j、k及びlを前記分子軌道の番
    号とし、おのおの1≦p≦m’、1≦q≦m’、1≦r
    ≦m’及び1≦s≦m’なる値をとる整数p、q、r及
    びsを前記原子軌道の番号とし、i番目の前記分子軌道
    φiを前記原子軌道の線型結合として表記した場合のp
    番目の前記原子軌道χpの係数が行列要素Upiで表さ
    れるような係数行列Uの全ての要素の値をあらかじめ持
    ち、電子1と電子2の距離の逆数に、電子1の座標を有
    する分子軌道φiの複素共役、電子1の座標を有する分
    子軌道φj、電子2の座標を有する分子軌道φkの複素
    共役及び電子2の座標を有する分子軌道φlを乗じ電子
    1及び電子2の座標に関して全空間で積分した結果を分
    子軌道に関する2電子積分<φiφj||φkφl>と
    し、電子1と電子2の距離の逆数に、電子1の座標を有
    する原子軌道χpの複素共役、電子1の座標を有する原
    子軌道χq、電子2の座標を有する原子軌道χrの複素
    共役及び電子2の座標を有する原子軌道χsを乗じ電子
    1及び電子2の座標に関して全空間で積分した結果を原
    子軌道に関する2電子積分<pq||rs>とし、 前記全ての整数p,q,r,sの組に対して、前記原子
    軌道に関する2電子積分<pq||rs>の計算結果を
    あらかじめ持ち、前記原子軌道に関する2電子積分<p
    q||rs>に、前記係数行列の行列要素Urkの複素
    共役、行列要素Uqj、行列要素Uslを乗じたものを
    前記全てのq、r、sについて和したものを2電子積分
    の部分和cpjklとし、前記iの変域を連続するN個
    の領域に分割し、前記分割されたN個の領域の第I番目
    の領域の最小値及び最大値をそれぞれN1(I)及びN
    2(I)とし、I番目の前記プロセッサにおける計算処
    理において、おのおのN1(I)≦i≦N2(I)、1
    ≦j≦m、1≦k≦m及び1≦l≦mなる値をとる整数
    i、j、k及びlの全ての組に対して、前記係数行列の
    行列要素Upiの複素共役に前記2電子積分の部分和c
    pjklを乗じたものを前記全てのpの値について和し
    たものを前記分子軌道に関する2電子積分<φiφj|
    |φkφl>の値とする分子軌道に関する2電子積分の
    計算方法。
JP20423595A 1995-08-10 1995-08-10 分子軌道に関する2電子積分の計算方法 Pending JPH0950458A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP20423595A JPH0950458A (ja) 1995-08-10 1995-08-10 分子軌道に関する2電子積分の計算方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP20423595A JPH0950458A (ja) 1995-08-10 1995-08-10 分子軌道に関する2電子積分の計算方法

Publications (1)

Publication Number Publication Date
JPH0950458A true JPH0950458A (ja) 1997-02-18

Family

ID=16487092

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20423595A Pending JPH0950458A (ja) 1995-08-10 1995-08-10 分子軌道に関する2電子積分の計算方法

Country Status (1)

Country Link
JP (1) JPH0950458A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003027873A1 (fr) * 2001-09-25 2003-04-03 Japan Science And Technology Corporation Procede de calcul parallele
US7885796B2 (en) 2003-09-22 2011-02-08 Nec Soft, Ltd. Parallel calculation method and device
US8632210B2 (en) 2009-01-28 2014-01-21 Relume Technologies, Inc. LED engine of finned boxes for heat transfer

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003027873A1 (fr) * 2001-09-25 2003-04-03 Japan Science And Technology Corporation Procede de calcul parallele
US7343277B2 (en) 2001-09-25 2008-03-11 Japan Science And Technology Agency Parallel computing method for total energy and energy gradient of non experience molecular-orbital method
US7885796B2 (en) 2003-09-22 2011-02-08 Nec Soft, Ltd. Parallel calculation method and device
US8632210B2 (en) 2009-01-28 2014-01-21 Relume Technologies, Inc. LED engine of finned boxes for heat transfer

Similar Documents

Publication Publication Date Title
Townsend et al. A comparison of Dadda and Wallace multiplier delays
US20170193361A1 (en) Neural network training performance optimization framework
US20210192009A1 (en) Apparatus and method for generating efficient convolution
Liu et al. An algorithmic approach for generic parallel adders
van Der Hoeven et al. Sparse polynomial interpolation in practice
Adams et al. Energy-efficient approximate MAC unit
US8892621B2 (en) Implementation of negation in a multiplication operation without post-incrementation
da Silva Factoring semiprimes and possible implications for RSA
JPH0950458A (ja) 分子軌道に関する2電子積分の計算方法
Meyer-Bäse et al. A parallel CORDIC architecture dedicated to compute the Gaussian potential function in neural networks
Nishino et al. Density matrix renormalization group: Introduction from a variational point of view
Castellanos et al. Compressor trees for decimal partial product reduction
Villalba et al. Parallel compensation of scale factor for the CORDIC algorithm
US20200192631A1 (en) Fused convolution and batch normalization for neural networks
Vatutin et al. Enumerating the orthogonal diagonal Latin squares of small order for different types of orthogonality
JPH07210534A (ja) ニューラルネットワーク
JP7020555B2 (ja) 情報処理装置、情報処理方法、及びプログラム
Jinesh et al. Implementation of 64Bit high speed multiplier for DSP application-based on vedic mathematics
Thakare et al. Vhdl implementation of complex number multiplier using vedic mathematics
US11163532B2 (en) Solving multivariate quadratic problems using digital or quantum annealing
Aneesh et al. Design and analysis of high speed, area optimized 32x32-bit multiply accumulate unit based on vedic mathematics
Oumarou et al. Halving the width of Toffoli-based constant modular addition to n+ 3 qubits
JP3514566B2 (ja) 除算/開平回路
Gning et al. A complete computer-based approach for data generation patterning to a pdf in ℝ and application to gamma and gig data
Das et al. Design of a Parallel Adder Circuit for a Heavy Computing Environment and the Performance Analysis of Multiplication Algorithm