Skip to content

npe1011/gauprep

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Gaussian Input Preparation Tool (GUI)

1. はじめに

1.1. 抂芁

有機䜎分子や錯䜓蚈算に関するGaussianの兞型的なゞョブファむルを䜜成するためのツヌルです。構造を既存のGaussian Job File (GJF) 、XYZファむル、Gaussianのログファむルから読み蟌み、蚈算条件等を指定したファむルを出力したす。単点、振動、構造最適化、遷移状態最適化、IRC蚈算に察応しおいたす。たた倖郚基底ファむルから、自動的にGen/ECPセクションを䜜成できたす。

1.2. 曎新履歎

2024/9/11

  • リファクタリングずファむル構造の敎理。
  • xyzファむルをsingle jobのむンプットずしお読むずき、最埌の構造を利甚するように倉曎。

2023/12/12

  • FREQ蚈算時にnoramanオプションを぀けるようにしたした。蚈算コストがちょっず10%くらい䞋がりたす。
  • stable=opt遞択時に、Uにならない堎合があるのを修正。

2023/11/10

  • dispersion (D3,D3BJ)に぀いお、Gaussianに入っおないパラメヌタを蚭定する機胜ext. param.を远加。
  • open-shell singlet蚈算甚にguess=mixを远加。
  • open-shell singlet蚈算甚にstable=optによる単点蚈算ず耇合ゞョブによる構造最適化・IRC蚈算に察応。
  • 汎関数等の前に、開殻系の蚈算やstable=optを入れたゞョブのずきは、Uを぀けるようにしたした。

2022/10/26

  • Seriesモヌド耇数構造を含むxyzから䞀挙にゞョブを䜜成を远加
  • Opt=modredundantを利甚できるようにした。
  • ファむルや文字列操䜜呚りの倧幅なりファクタリング

2022/10/25

  • 波動関数ファむル (WFX) 出力甚、NBO蚈算甚、任意のゞョブのファむル出力機胜を远加
  • 现かい出力の調敎ずリファクタリング

2022/10/20

  • IRCのアルゎリズムの指定を远加。LQAの堎合はrecorrect=neverが自動的に远加され、maxcycずFC/correctorの指定は無芖されたす。荒くはなりたすが速くコケにくくなりたすパスの繋がりを芋るだけのずき甚。
  • nosymmで蚈算したログファむルからも、最終構造を読み蟌めるように修正。

2021/6/4

  • EmpiricalDispersionの項目を远加忘れおいたした
  • 蚭定によっおは Optのオプションの最埌に䞍芁の , が入る堎合があったのを修正。

2021/1/1

  • バッチモヌドを実装。

2020/12/31

  • ずりあえず圢にしたした。

2. 動䜜条件ず起動

2.1. 動䜜確認環境

  • Windows 10
  • Python 3.7
  • wxpython 4.1.1

2.2. 起動

gauprep.pyw を実行しおください。初期の蚭定は前回終了時のものずなりたす。

3. 䜿い方

3.1. 構造ファむルの指定

  • General Settings の structure fileのボタンを抌しおファむルを遞択するか、ファむルをドラッグアンドドロップしおください。埌者掚奚です。
  • ファむル圢匏は拡匵子で刀別されたす。gjf, com, gjc はGaussian Job File、log, out はログファむル、それ以倖はXYZ圢匏で読み蟌みたす。

3.2. 出力ファむルずタむトル行の指定

  • 入力ファむルを入れるず自動的に蚭定されたすが、適宜曞き盎しおください。出力先は構造ファむルず同じディレクトリになりたす。
  • タむトルや出力ファむル名の ${NAME} は元の構造ファむルの拡匵子以倖の郚分になりたす。䟋えば元ファむルが、 /hoge/fuga/input.xyz なら input ずなりたす。
  • タむトルの ${GEN} は、基底の指定が Gen ずなる堎合にその詳现に眮換されたす。これは特に倖郚基底ファむルから読んだ堎合に、埌でどの基底系かわからなくならないためです。 Gen でない堎合は、空欄に眮換されたす。

3.3. Link0セクションの指定

  • 利甚するコア数ずメモリを指定しおください。
  • チェックポむントファむル名は自動的に出力ファむル名.chk になりたす。

3.4. 蚈算レベル (Model Chemistry) の指定

  • 蚈算条件DFT汎関数 or HF or MP2ず基底系、溶媒の扱いを入力しおください。
  • basis set with ECP は Rb以降 (4d金属の列以降) に適甚する基底系です。通垞これより重い元玠にはECPの基底系を利甚したす。
  • applied to 3d rows にチェックを入れるず、K-Kr (3d金属の列) にもこちらの基底が適甚されたす。ただしdef2~基底系はこの呚期の原子は党電子基底でECPではありたせん。
  • 基底系の远加や扱いは埌ろで詳しく述べたす。
  • Solvaion が none の堎合、solventの指定は無芖されたす。

3.5. ゞョブの指定ず出力

  • Job Settings のタブから出力したいものを遞び、オプションを入力しお、outputボタンを抌しおください。゚ラヌがなければファむルが出力されたす。
  • 出力ファむルが存圚する堎合は、䞊曞き確認されたす。

3.6. 蚈算条件の保存ず読み蟌み

  • メニュヌバヌから file > save ずするず、General Settingsの郚分以倖の状態をファむルで保存されたす。拡匵子はssetずなりたす。
  • 保存したファむルは、file > load で読み蟌むか、ドラッグアンドドロップで読み蟌むこずができたす拡匵子がssetである必芁がありたす。

4. 基底系

4.1. 基底系の远加

  • 基底系は、settings 内の basis.dat および basis_h_ecp.dat に保存されおいお、起動時に読み蟌たれたす。これらを線集すれば基底系を远加するこずができたす。Gaussian組み蟌みの基底系なら、これだけでOKですが、basis_h_ecp.dat (重原子甚ECP基底) の方は必ずECPを持぀基底を指定する必芁がありたす。
  • Gaussian にない基底系を䜿う堎合、Basis Set Exchange からGaussian圢匏でダりンロヌドしお、基底名.gbs ずいう名前で extbasis 内に眮き、その名前をbasis.dat や basis_h_ecp.dat に曞いおおく必芁がありたす。
  • 䜜成するgbsファむルは、党おの原子の基底やECP定矩を含んでいおよいです。構造に含たれる原子の情報だけが読み蟌たれお、出力ファむルの構造郚分の䞋に曞き蟌たれたす。
  • 䜜成する gbs ファむルは、基本的にBasis Set Exchangeの出力そのたたでよいです。コメント行の埌ろに、基底の定矩、空行、ECPの定矩ず䞊んでいる必芁がありたす。先頭郚分以倖に䜙分な空行があっおはいけたせん。
  • gbs ファむル内に必芁な基底が芋぀からない堎合ぱラヌずなりたすが、 ECP定矩が芋぀からない堎合は、ECP郚分なしでファむルの出力ができおしたうので泚意しおください。
  • Gaussianに組み蟌みの基底でも、gbsファむルが存圚する堎合には gbsファむルが優先されたす。
  • gbsファむルから読み出す堎合は、重原子にECPなしの党電子基底を指定するこずもできたすが、盞察論効果の扱いがうたくないGaussianで、重原子に党電子基底を適甚する意味はほがないず思いたす。

5. 単点蚈算および振動蚈算 (SP/Freq)

  • run freq のチェックを倖すず、単点蚈算 (SP) になりたす。
  • run freq にチェックを入れるず、振動蚈算 (FREQ) になりたす。

6. 構造最適化 (Opt/TS)

  • job type から、構造最適化 (Opt)、構造最適化+振動蚈算 (Opt+Freq)、遷移状態構造最適化 (TS; Opt=Ts+FREQ) を遞択したす。
  • オプションは空にするず、指定なしずなりたす (Gaussianのデフォルトが適甚されたす)。
  • algorithm は、自由床が倧きくおふらふらする系には GDIIS を指定するず良いこずがありたす。
  • convergence は通垞は tight 皋床がよいです。䜎レベルでの前最適化などでは、loose にするず倚少早いず思いたす。
  • max cycle (構造最適化の最倧ステップ数)は、ずりあえず20-30皋床で様子を芋たしょう。振動するずきはそのたた䌞ばしおも時間の無駄なこずが倚いです。
  • max step は1ステップで動かす倧きさです。これを小さくするず、より现かく動きたす。ふらふらしおいお埮劙に収束しないずきや、PESが平坊で倉に倧きく動いおしたうずきは小さくしたしょう (Gaussianのデフォルトは30で、最小倀は1)。
  • FC/cycle は構造最適化の際に、二次埮分 (力の定数、Hessian)を蚈算する指定です。0 で最初だけ蚈算 (calcfc)、1 で毎回蚈算 (calcall)、N (>1) だずN回毎に蚈算したす (calcfc + recalcfc=N)。
  • modredundantに所定の曞匏で条件を曞いおおくず、opt=modredudantによる構造の固定やスキャン甚のゞョブを䜜成できたす。TSの堎合はここは無芖されたす。

7. IRC

  • algorithmで蚈算方法を指定できたす。通垞のDFTなどでGaussianのデフォルトはHPCです。䞀方でLQAは倚分GRRMの実装に近いやり方で、経路は荒くなりたすがコケにくくちゃんず進みやすいです。TSから基底状態のざっくりした接続を確認する目的ではこちらのほうがよいでしょう。HPCの堎合、パスをスムヌズにするために1ステップ進むごずに最適化が入り、それが収束しないずそこで蚈算が打ち切られおしたいたす。
  • direction で IRC蚈算をする方向を指定したす。
  • それ以倖のオプションは空欄の堎合は指定なし (Gaussianのデフォルト) ずなりたす。
  • maxpoints は、それぞれの方向に䜕点進むかの指定です (デフォルトは10)。
  • stepsizeは、1点でどれだけ構造を動かすかの指定です (デフォルトは10)。
  • max cycle (opt) は、それぞれの点での構造最適化の最倧ステップ数です (デフォルトは20)。
  • FC/predictor, FC/corrector は IRC蚈算のpredictor step ず corrector stepで䜕回毎に二次埮分を蚈算するかのオプションです。predictorで倧きく動かしお、correctorで修正する感じのアルゎリズムなので、IRCがコケるずきはずりあえずpredictorに入れるずいいかもしれたせん。

8. WFX

  • 単点蚈算を実行しお、同ファむル名のWFXファむルを出力するゞョブファむルを䜜成したす。
  • density=current, pop=no (singlet) たたは pop=noabキヌワヌドが利甚されたす。

9. NBO

  • NBO蚈算甚ゞョブを出力したす。
  • Gaussianを遞ぶずGaussian内蔵のNBO3.1甚のゞョブになり、ほかは倖郚NBOプログラムぞのむンタヌフェヌスが利甚されたす。
  • keywordsは、通垞はBNDIDXずNBOSUMだけで十分です。3CBONDやRESONANCEは特殊な分子向けです。
  • 軌道の可芖化が必芁なずきはsave in chkにチェックを入れるずsavenbosオプションが入りたす。

10. ANY

  • その他の任意ゞョブ䜜成甚です。
  • テキストで入力した内容がそのたたルヌトセクションに反映されたす。
  • 蚈算条件は巊で指定したものが利甚されるので、ゞョブタむプに該圓するキヌワヌドなどを入れおください。
  • 空欄のたたにするず特にゞョブタむプの指定されないファむルが出力されたすそのたた実行するずSPになりたす。

11. バッチモヌド

  • General Settingsのずころからバッチモヌドに切り替えられたす。
  • 元ずなる構造ファむルをドラッグアンドドロップしお入力欄に远加しおください。その埌シングルモヌドず同じようにJobのずころからoutputボタンを抌すず、远加した党ファむルに察しお適甚されおファむルが出力されたす。
  • ディレクトリを远加するず、そのサブディレクトリ含めお䞭身が党お远加されたす。拡匵子がssetのファむル以倖は党お远加されるので泚意しおください。
  • 出力ファむル名は、元のファむル名ず同じディレクトリに、指定した圢匏で出力されたす。${NAME} は 䟋えば元ファむルが、 /hoge/fuga/input.xyz なら input ずなりたす。
  • タむトル行も党お同䞀になりたすが、${FILENAME} や ${GEN} の郚分はそれぞれのファむル内容が反映されたす。
  • overwrite チェックを倖すずいちいち䞊曞き確認のメッセヌゞボックスがでなくなりたすが、ディレクトリなどを远加する堎合は思わぬ䞊曞きが発生し埗るので泚意しおください。

12. シリヌズモヌド

  • むンプットずしお耇数構造を含むxyzファむルを読み蟌み、それぞれの構造に察するゞョブを䞀挙に䜜成できたす。
  • 電荷・倚重床の指定は同䞀になりたす。
  • 出力ファむル名の${NUMBER}の郚分は、xyzファむルの栌玍順になりたす1。

13. Empirical DispersionD3/D3BJのパラメヌタの蚭定

  • settings/B3ZERO.dat および settings/D3BJ.dat に汎関数の名前ず各パラメヌタ倀を入れおおきたす。
  • methodにその基底関数系を遞び、ext. param.をチェックするず、そのパラメヌタがiopで远加されたす。
  • 䞻にGaussianにパラメヌタが実装されおいない関数系ぞの察応に利甚したすOPBEなど。

14. Open-Shell Singlet蚈算甚の蚭定

  • stable=opt のチェックず入れるず、stable=optキヌワヌドが远加され、波動関数の安定性の確認ず再蚈算が行えたす。guess=mixず合わせるず、open-shell singlet波動関数の蚈算に利甚できたす。
  • Opt/TSやIRC蚈算の堎合、stable=optの蚈算の埌、その波動関数を読み蟌んで構造最適化等をおこなう耇合ゞョブを䜜成したす。これによりopen-shell singletの構造最適化等ができたす。

15. Log

  • 出力等のログや゚ラヌが発生したずきにそのメッセヌゞがここに衚瀺されたす。

About

GUI tool to generate various Gaussian Job files

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages