最終更新:2025-08-11
概要
本記事では、自作モジュール(MultiOptPy)で、PNP型のpincer配位子が配位したIr触媒の二酸化炭素へのヒドリド挿入によるギ酸イオン生成反応の遷移状態構造を算出してみる。使用する計算レベルは、Meta社のFAIR Chemistryが開発したニューラルネットワークポテンシャル(NNP)であるUMA(Meta’s Universal Model for Atoms)を使用する。
MultiOptPyは電子状態計算ソフトウェアを用いた分子構造最適化手法の勉強を目的として作成したpythonモジュールである。
MultiOptPyのレポジトリ:https://github.com/ss0832/MultiOptPy
本反応について:
- Tetrahedron 2024, 153, 133852. https://doi.org/10.1016/j.tet.2024.133852.
今回使用したニューラルネットワークポテンシャルについて:
- https://ai.meta.com/blog/meta-fair-science-new-open-source-releases/ (UMAの公開に関する記事)
- https://github.com/facebookresearch/fairchem (FAIR Chemistryの提供するGitHubのレポジトリ)
- https://fair-chem.github.io/ (同上のレポジトリの内容に関して説明したサイト)
- https://huggingface.co/facebook/UMA (NNPの配布サイト, Hugging Faceへのアカウント登録と配布元の使用許諾が必要である。)
使用した自作モジュールMultiOptPyのバージョン
v1.11c
環境
Windows 11
※Windows 11環境下でAnaconda PowerShell Promptを使用した。
Source codeのダウンロード
wget https://github.com/ss0832/MultiOptPy/archive/refs/tags/v1.11c.zip
unzip v1.11c.zip
cd MultiOptPy-v1.11c
環境構築手順
今回は、Windows 11のPower Shellを使用した。初めに、NNPを使用できる環境が整ったAnaconda PowerShell Promptを用意する手順を説明する。
1, https://repo.anaconda.com/archive/ より、Anaconda3-2025.06-1-Windows-x86_64.exe
でAnacondaをインストールする。
2, 検索機能を使い、スタートからAnaconda PowerShell Prompt
を開く。
3, 以下のコマンドを実行し、仮想環境を作成する。
conda create -n (任意の仮想環境名) python=3.12.7
4, 先ほど作成した仮想環境をconda activate (仮想環境名)
で起動させる。
5, 以下のコマンドを実行し、必要なライブラリを導入する。
pip install fairchem-core==2.2.0 ase==3.25.0 torch==2.6.0
- fairchem-coreは、FAIR Chemistryが管理しているNNPを動作させるために必要なライブラリである。
- aseはNNPに電子エネルギーを算出したい分子構造を渡すために必要なインターフェイスの役割を果たすために必要なライブラリである。
- torchはPyTorchライブラリを指す。これはニューラルネットワークなどの機械学習を行ったり、学習結果を扱ったりするために必須なライブラリである。
これで、Anaconda PowerShell Prompt
から仮想環境を立ち上げることで、NNPを使用する準備が整えることが出来る。
次に、NNPを使用するために必要なModelの情報が保存されている.pt
ファイルのダウンロードおよびNNPの自作モジュールへの導入方法について説明する。
1, 以下のサイトにアクセスして、uma-s-1p1.pt
をダウンロードする。(使用許諾が下りていれば可能である。)
https://huggingface.co/facebook/UMA
2, ダウンロード後、MultiOptPy-v1.11c
ディレクトリ内に存在するsoftware_path.conf
に対して、uma-s-1p1.pt
の絶対パスを用いて以下を追記する。
uma-s-1p1::(uma-s-1p1.ptの絶対パス)
これで、MultiOptPy-v1.11c
がNNPuma-s-1p1
を使用できるようになる。
使用するNNPに関する具体的な説明
今回使用するNNPについて具体的に説明する。
- UMAのModel Checkpointは
uma-s-1p1
を使用した。
IMPORTANTモデルをダウンロードした時点(2025/8/9)で、
uma-s-1
のモデルが存在していたが、https://huggingface.co/facebook/UMA より、” *Note uma-s-1 is now deprecated and will be removed by the next release. uma-s-1p1 should be used instead for a replacement.
とあり、今後のアップデートで削除されるため、使用しなかった。
- 小分子系のトレーニングセットである
Omol25
(omol
)を使用して学習したニューラルネットワークポテンシャルを使用する。
※自作モジュールでの具体的な使用の仕方に関しては、MultiOptPy-v1.11c
ディレクトリ内のase_calculation_tools.py
を参照
手順
1. 初期構造の準備
モデル反応系として、以下の構造を用意した。今回はファイルの名前をir_cat_hydride_insertion_into_CO2.xyz
とした。 初期構造は以下のものを使用した。
76
C 2.372642441868 -0.942404023551 -0.132941912758
C 3.740072042751 -0.873295625368 -0.355929400215
C 4.320987000990 0.353938358284 -0.621802551557
C 3.525045327201 1.486532835122 -0.643650775957
C 2.166034531089 1.364503848053 -0.397110386716
N 1.610878131180 0.163755572507 -0.160467050006
H 5.384800719411 0.428326270029 -0.806322762952
H 4.331885787933 -1.778172661706 -0.326670270656
H 3.946931346584 2.463011566331 -0.839620516377
C 1.260236286113 2.564249166276 -0.339569166273
H 1.252870247887 2.918210275792 0.696198179619
H 1.648542453972 3.375127740340 -0.958663826612
C 1.680948933973 -2.251774343826 0.128863173198
H 1.398560261173 -2.671998421373 -0.840926245056
H 2.364033327061 -2.956596496173 0.607053903280
Ir -0.519086936184 0.010986729870 0.175821324270
P -0.503693848780 2.118130939831 -0.695314230262
P 0.082971199010 -2.012597660622 1.036702077601
H -0.807641394676 -0.706904787234 -1.293996347979
H -2.096165176648 -0.103585423542 0.421747358757
H -0.428466151704 0.712785799197 1.672469471041
C -0.004107587867 -1.860308900986 -3.676693773034
O 1.053424568565 -2.121666046232 -3.274890552677
O -1.048445780336 -1.618309992142 -4.110071192065
C 0.594597950871 -2.031314608598 2.846855852886
C -0.860074956249 -3.585308699314 0.630284527483
C -0.621887103125 2.265862240896 -2.566052840333
C -1.453300607760 3.520026239473 0.115353651990
C -1.454364461666 -3.422193093189 -0.773107481022
H -2.020081445483 -4.326906371292 -1.014995753456
H -2.109146351297 -2.555574637105 -0.835242478731
H -0.673889405327 -3.305121882960 -1.526635823411
C 0.000111224977 -4.854291887109 0.620335697598
H 0.457870920732 -5.075088019576 1.580611008781
H -0.636379367466 -5.703814516248 0.356150171726
H 0.788620992812 -4.798392006795 -0.132113047092
C -2.027164992057 -3.742910415948 1.609174910707
H -2.615584939404 -2.825179552149 1.671692191457
H -2.682908582413 -4.540871444815 1.250644951982
H -1.697083705096 -4.014996353243 2.610995847017
C -0.569414655469 -1.524815224439 3.707753842903
H -0.220844059691 -1.410637416586 4.738692416352
H -0.920106568586 -0.558598952630 3.346450387171
H -1.411369232443 -2.215339871785 3.718573184324
C 1.079033778047 -3.379944418085 3.382019719920
H 1.461496490566 -3.233181288628 4.396365862111
H 0.280919028078 -4.118435647485 3.442039549307
H 1.893824016231 -3.794758703481 2.784428143786
C 1.753578297887 -1.032236800621 2.989953370080
H 2.661845454130 -1.384656120904 2.496191782884
H 1.485876252644 -0.053576410869 2.592204125467
H 1.982541741337 -0.922225274823 4.053463184348
C 0.561119734275 1.463038928919 -3.129491190529
H 1.511838580060 1.980555301187 -2.982656365965
H 0.627292292419 0.478329329494 -2.667481729972
H 0.418241211683 1.339833970062 -4.206927871702
C -1.920877558656 1.599408027708 -3.035479641329
H -1.911864097559 1.530991075124 -4.127252100311
H -2.009232417092 0.593784098074 -2.625876431299
H -2.803140221095 2.168970930688 -2.746949197124
C -0.531026327397 3.681300756519 -3.137627844416
H -0.479177785144 3.613586478538 -4.228253535342
H -1.400320803763 4.290105213690 -2.893575471826
H 0.366318961920 4.206105338454 -2.802575259592
C -0.809436646512 4.899393513243 -0.064176725420
H -0.727844337225 5.207063671427 -1.103010700836
H -1.426479180124 5.640671126106 0.451351641074
H 0.183434553619 4.941889221406 0.386259192271
C -2.886569144892 3.531385534615 -0.424662748368
H -3.336229353284 2.538115584119 -0.367326377659
H -3.489014582676 4.209943114431 0.185101109687
H -2.941259562080 3.879863502600 -1.455248843253
C -1.531217054306 3.236902490167 1.620184483182
H -2.055306650426 2.305433848505 1.823070664969
H -0.544708374971 3.160302011241 2.080252912034
H -2.064514682121 4.065563353112 2.096050548877
2. 遷移状態構造最適化のための初期構造の算出
a. 初期構造をカレントディレクトリにir_cat_hydride_insertion_into_CO2.xyz
として保存し、以下を実行する。
python .\optmain.py .\ir_cat_hydride_insertion_into_CO2.xyz -os uma-s-1p1 -opt rsirfo_fsb -ma 150 19 22
-opt rsirfo_fsb
は準ニュートン法であるRS-I-RFO法を構造最適化に使用することを示す。初期のへシアンに関しては、特にオプションで指定しない限り、単位行列が使われる。-spin
はスピン多重度の指定である。PySCFを使用するときは目的とするスピン多重度に1を引いた値を指定する。(デフォルトでは1が指定される。)-elec M
は形式電荷をMとすることを示す。(デフォルトでは0が指定される。)-ma yyy a b
はyyykJ/molの活性化障壁を超えうるペア同士を近づける力を原子のラベル番号aとbのペアに構造最適化時に加えることを示す。-os uma-s-1p1
は今回使用するNNPを指定している。これを使用する際にASEライブラリが必要である。
これを実行すると、omol
のデータセットを使用したuma-s-1p1
モデルのNNPで得たエネルギーに対して、指定した人工力ポテンシャルを加えた上で初期構造を構造最適化することができる。
結果はyyyy_mm_dd
(今日の年月日)ディレクトリの中に存在するディレクトリを開いて確認できる。
正常終了していれば、このディレクトリ中に、ir_cat_hydride_insertion_into_CO2_traj.xyz
が存在するので、これをコピーして、MultiOptPy-v1.11c
ディレクトリに置く。
ir_cat_hydride_insertion_into_CO2_traj.xyz
は構造最適化の過程をAvogadro(公式ページ:https://avogadro.cc/ )等で可視化して確認できるようにしている。このir_cat_hydride_insertion_into_CO2_traj.xyz
は次のNEB計算に使用する。
※ir_cat_hydride_insertion_into_CO2_traj.xyz
をアニメーションとして表示したい場合は、[https://github.com/ss0832/molecule_movie] を使うと良い。
(この人工力ポテンシャルを加えて行った構造最適化の結果はir_cat_hydride_insertion_into_CO2_optimized.xyz
で確認できる。構造を可視化して、生成系になっているか確認する。反応系のままであれば、-ma
の設定を見直してb.をやり直す。今回の場合以下の構造が得られた。生成系の安定構造に近いものが得られていると判断できるため、次のNEB計算を行うことが可能である。)
76
OptimizedStructure
C 2.389989064616 -1.023644922705 -0.180395901336
C 3.754142335900 -0.961569099153 -0.425317453688
C 4.331528177017 0.256957447392 -0.726376343203
C 3.544257105375 1.397263956842 -0.747335385661
C 2.190749919116 1.283226013431 -0.482156409193
N 1.634914639505 0.085419154554 -0.230713296932
H 5.391170399166 0.322154516300 -0.936752720838
H 4.342615281835 -1.867929603132 -0.391235545076
H 3.969709038933 2.368240962199 -0.960434596708
C 1.296717374117 2.493801908809 -0.395932776820
H 1.298490723774 2.825674868831 0.647381931846
H 1.697914470461 3.315313974973 -0.991090927404
C 1.713823146948 -2.328583799561 0.135021556080
H 1.469432078381 -2.774524076020 -0.835190427050
H 2.391529660875 -2.995035397935 0.671254687180
Ir -0.509075518069 -0.074648469102 -0.005477372947
P -0.467892547893 2.096287249825 -0.793115996539
P 0.093639723953 -2.077283773185 0.983979793230
H -0.607942417449 -0.822063035982 -1.766453533582
H -2.102319996307 -0.204009254572 0.154685561761
H -0.568598876026 0.555713861323 1.418644204449
C -0.291326813806 -1.418591909932 -2.679354685076
O 0.893644934814 -1.775197680739 -2.669975702632
O -1.232108589597 -1.547208370677 -3.449772072008
C 0.539790409808 -1.934820184747 2.804386982484
C -0.846844759460 -3.660477552551 0.661101188383
C -0.585342254264 2.366002797726 -2.640834817989
C -1.427956253562 3.409366679202 0.138983526272
C -1.412090482555 -3.572091598150 -0.761304606993
H -2.021834721593 -4.461401140574 -0.941870015595
H -2.039145602119 -2.692178013476 -0.900932466587
H -0.625943713632 -3.554514132039 -1.515178939285
C 0.021330677888 -4.921018483229 0.735435627783
H 0.451833303828 -5.098068728380 1.717704487698
H -0.605791302430 -5.782164007098 0.489973753565
H 0.827358894792 -4.893325238125 0.001308619198
C -2.028095212443 -3.763428611237 1.630091098685
H -2.619625272976 -2.845541074584 1.634357026270
H -2.677863993428 -4.576915564084 1.298997397913
H -1.717980192913 -3.986891255480 2.650233049850
C -0.655929224141 -1.416632241384 3.613098226821
H -0.332061205553 -1.251803297444 4.644676745942
H -1.025750769069 -0.472919698859 3.214111699119
H -1.483865555126 -2.121841623316 3.635906565236
C 1.038920561805 -3.242940427100 3.423104493738
H 1.395609901956 -3.034897422598 4.435500259542
H 0.253040586339 -3.991670054941 3.503679681879
H 1.872714799718 -3.673212968652 2.865366746479
C 1.672339651431 -0.903856243925 2.925731471655
H 2.595985861303 -1.249783417229 2.458478110066
H 1.397656535434 0.054992422365 2.487364991483
H 1.880327187095 -0.748283579389 3.987462989948
C 0.642211457211 1.679980602175 -3.264690138783
H 1.547915851580 2.270939558850 -3.109216293809
H 0.822552032138 0.672286236899 -2.895314019227
H 0.480313505453 1.602127358741 -4.342065782545
C -1.863277364507 1.696221360939 -3.162859077086
H -1.888163172778 1.800202983563 -4.250965834779
H -1.895517532052 0.630429140793 -2.942329177515
H -2.762505030254 2.164685471163 -2.763889818018
C -0.556855933748 3.829043781888 -3.088081417436
H -0.499331173764 3.845471804676 -4.179558634520
H -1.453837660507 4.377052038458 -2.803592261483
H 0.317766465099 4.362849776303 -2.710358674615
C -0.811826848952 4.810020378318 0.041114911995
H -0.773811578618 5.194847072778 -0.973352286288
H -1.423849709365 5.497572031325 0.630991433101
H 0.196220787202 4.839096745669 0.458693900534
C -2.873124769485 3.425836495911 -0.370446873576
H -3.302701281844 2.422160370447 -0.367676227141
H -3.473750171225 4.052384003882 0.293840848390
H -2.956673248652 3.836895974382 -1.375257312953
C -1.469989465242 3.029555090135 1.625175289950
H -2.029541047277 2.110078315797 1.784726315960
H -0.474018285915 2.901523177785 2.055170317215
H -1.963996996266 3.839290366640 2.169120331222
b. ir_cat_hydride_insertion_into_CO2_traj.xyz
を初期パスとして、NEB法で経路の緩和を行う。
NEB法を用いることで、先ほど得られたir_cat_hydride_insertion_into_CO2_traj.xyz
全体のエネルギーを下げることができる。これにより、パスのエネルギー極大値を持つ構造を遷移状態構造に近づける。(この時点ではまだ正確な遷移状態構造は求められていない。)
python .\nebmain.py ir_cat_hydride_insertion_into_CO2_traj.xyz -os uma-s-1p1 -ns 10 -modelhess -spng
-nd N
はノード間の距離をN Åとして初期パスを作成することを示す。-ns n
はn回分NEB法による経路の緩和を行うことを示す。-fc M
はM回あたりの経路緩和回数に対して1回だけ正確なHessianを計算し、経路緩和に使用する。これを使用すると、Hessianを使用しない場合の経路緩和アルゴリズムとは別のものを使用して、経路緩和を行う。-spng
は緩和中のパスのエネルギープロファイルや各ノードの勾配のRMS値をmatplotlibで可視化するオプションである。-os uma-s-1p1
は今回使用するNNPを指定している。これを使用する際にASEライブラリが必要である。
c. 初期構造の決定及び遷移状態構造の計算
MultiOptPy-v1.11c
と同じディレクトリ内に、NEBという名前を含むディレクトリが生成されている。 そのディレクトリ内のenergy_plot.csv
を確認し、緩和後のパスのエネルギー極大値を示す構造を確認する。
パスの緩和後の各ノードのエネルギー一覧(単位
※bias_force_rms.csv
にて、各Iterationごとのすべてのノードの勾配のRMS値を確認できる。
私が実行した環境では、6番のノード(グラフでは7番)がエネルギー極大値を示していた。 今回は、原子数が多く、計算コストが非常に高い数値微分によるHessianの計算回数を減らせることを期待してエネルギー極大値付近の勾配のRMSの極大値を示す構造(4番のノード)を遷移状態構造を求める初期構造として使用した。
※こちら[https://ss0832.github.io/molecule_viewer/] を使うことでも可視化は可能である。
ir_cat_hydride_insertion_into_CO2_traj_4.xyz
76
0 1
C 2.378591790838 -0.953758799644 -0.146206779973
C 3.747206863311 -0.877312711209 -0.355364568473
C 4.322274454110 0.351187550944 -0.622368856368
C 3.526187194156 1.485028627156 -0.640655093736
C 2.166451670685 1.356250075233 -0.409519610207
N 1.615256299403 0.147399329749 -0.203791013190
H 5.385883056456 0.428040576459 -0.806990185941
H 4.339805410410 -1.780439108870 -0.325382782177
H 3.947720550012 2.462111473783 -0.835371991101
C 1.256117867179 2.554850907682 -0.344244374441
H 1.256756417707 2.912980579842 0.690793467214
H 1.645378896766 3.367354802198 -0.960779346878
C 1.690901533718 -2.263816570058 0.123041742643
H 1.408448721122 -2.679030345069 -0.849721216210
H 2.372489247066 -2.964235301558 0.606877233596
Ir -0.513022623249 -0.055363466269 0.023549538097
P -0.503399822823 2.117458623697 -0.733504134773
P 0.089489030202 -2.040243574533 1.009725282506
H -0.477575479413 -0.916214617647 -1.730602831015
H -2.091738591813 -0.146533523841 0.334457655967
H -0.488538165196 0.614119952500 1.466847631301
C -0.156430151274 -1.593080630079 -3.089201394510
O 0.966799206335 -2.004233265777 -2.985462429027
O -1.129972735691 -1.468691111228 -3.763156418890
C 0.589544459211 -2.024282542377 2.833854337763
C -0.862689753240 -3.597822830061 0.628526217524
C -0.619551349167 2.276561159874 -2.582733743910
C -1.452593342815 3.508186677810 0.111487886863
C -1.457309471361 -3.433346034521 -0.772611095560
H -2.029865590311 -4.334185807555 -1.009859182461
H -2.106812989146 -2.561339065918 -0.838845492201
H -0.679553597016 -3.325890901875 -1.524000438601
C -0.000343123724 -4.862080644974 0.620522538883
H 0.457407636119 -5.082395077441 1.580947020897
H -0.638213198781 -5.709558491570 0.355221746039
H 0.786126764518 -4.804375730573 -0.133006367006
C -2.027073530864 -3.744387916666 1.611749646869
H -2.613600950652 -2.824964533274 1.671507402874
H -2.686566153717 -4.538242774741 1.252487791942
H -1.698317071824 -4.017741530941 2.613389592815
C -0.571769246326 -1.521563022185 3.698809481801
H -0.222583627108 -1.407591559009 4.729888929987
H -0.927690028689 -0.554523708608 3.343862092132
H -1.413395061007 -2.211460405415 3.711796358522
C 1.075511158158 -3.374978123517 3.374819445502
H 1.458040362429 -3.226830355440 4.389610593081
H 0.278664881860 -4.114024318101 3.437189514736
H 1.890701999052 -3.792112762285 2.780404435061
C 1.749179984098 -1.028377628685 2.982654063464
H 2.658385984521 -1.379033933659 2.490672013313
H 1.486843108507 -0.048076342055 2.585708634918
H 1.977996286093 -0.918402868975 4.046775165237
C 0.570621461049 1.484517877791 -3.141592069996
H 1.517155764050 2.008737590781 -2.995951458568
H 0.646579319509 0.506123993582 -2.679614904391
H 0.423190343652 1.346253328285 -4.214458901230
C -1.919438567623 1.602125336072 -3.039952837769
H -1.912389312920 1.531726457255 -4.130288512497
H -2.001666466706 0.593511524328 -2.637335400343
H -2.802720121627 2.169153567900 -2.747380381131
C -0.535038619732 3.692102321966 -3.143620299977
H -0.485015593008 3.622325703215 -4.233190419685
H -1.406796948968 4.295238907132 -2.894671408585
H 0.362819424409 4.215500645105 -2.808528409356
C -0.808225263258 4.890946085465 -0.064977672926
H -0.727035583764 5.202123334164 -1.102804464705
H -1.427640436554 5.631017194668 0.450857003418
H 0.184446371608 4.938538941422 0.386403628741
C -2.888023707147 3.527231723778 -0.423463085102
H -3.339220586717 2.535016802268 -0.368937442084
H -3.486810608363 4.206427633830 0.189097114408
H -2.942952945217 3.878542511544 -1.452779899034
C -1.525509529855 3.223108523547 1.616274520804
H -2.056084580508 2.294732388512 1.819544977178
H -0.537777938329 3.153723865896 2.077846977363
H -2.058021052819 4.050285340770 2.095725230572
構造が壊れていないので、これを遷移状態を求めるための初期構造とする。
ir_cat_hydride_insertion_into_CO2_traj_5.xyz
をMultiOptPy-v1.11c
と同じディレクトリ内にコピーする。
そして、以下を実行する。
python .\optmain.py ir_cat_hydride_insertion_into_CO2_traj_5.xyz -freq -tcc -opt rsirfo_bofill -fc 5 -order 1 -os uma-s-1p1
-opt rsirfo_bofill
は遷移状態構造の最適化向けのoptimizerを指定することを意味する。準ニュートン法であるRS-I-RFO法を使用する。今回は-fc
で正確なへシアンを計算するようにしているので、初期へシアンは正確なへシアンを使用するようになっている。-order 1
は一次の鞍点を求めることを指定する。(デフォルトだと極小値を求めるようになっている。)-fc 5
は5回の反復回数当たり1回正確なへシアンを計算することを指定する。-freq
は収束条件を満たした後に基準振動解析を行うことを示す。(自前で実装しているため、あくまで目安として使用することを推奨する。各振動モードをvibration_animation
内のxyzファイルで可視化できる。)UMAモデルから算出されるHessianは数値微分により求めているため、原子数Zが多いとZの二乗オーダーで計算コストが急増する。-tcc
は収束条件を厳しくすることを示す。(Gaussianのtightと同等)
実行して得られた正確な遷移状態構造を以下に示す。
(実行して得られた正確な遷移状態構造はir_cat_hydride_insertion_into_CO2_traj_5_optimized.xyz
として保存されている。)
76
OptimizedStructure
C 2.392839536245 -1.018088513763 -0.184961792857
C 3.757978324926 -0.952682354832 -0.422676295031
C 4.334467641882 0.267948961225 -0.721004316156
C 3.543198410575 1.404672079122 -0.743320255856
C 2.187984111664 1.287513730608 -0.482026217136
N 1.632994376320 0.087756200689 -0.239011471474
H 5.395088959248 0.336601841086 -0.925006205418
H 4.349925169823 -1.856757839701 -0.382989008056
H 3.966552614279 2.377646822778 -0.952520331568
C 1.290782136095 2.494104356433 -0.392622750106
H 1.290432840800 2.819295327289 0.652924863542
H 1.687790141423 3.319735110465 -0.985544831150
C 1.715085904430 -2.323091272720 0.135335166226
H 1.478620538586 -2.801874285703 -0.818759265314
H 2.392894276748 -2.980395540613 0.683468081521
Ir -0.508036444158 -0.074066736266 -0.007051737963
P -0.475205710931 2.087224935291 -0.777755481107
P 0.089427361408 -2.061337564514 0.978792160773
H -0.653499944335 -0.823886887501 -1.592554342209
H -2.097971657465 -0.204126566566 0.163665148148
H -0.509765613560 0.592397153981 1.447352738749
C -0.247920223397 -1.518616923486 -2.875656002233
O 0.917406843294 -1.787374783084 -2.807293024260
O -1.261323385692 -1.548099185809 -3.496077531650
C 0.542758320604 -1.941885051748 2.801104587196
C -0.838554098275 -3.656956084959 0.653992920669
C -0.600680487699 2.368474407349 -2.626577626583
C -1.426634471987 3.417517853397 0.143216603440
C -1.383252739403 -3.586189324998 -0.776617074643
H -1.985413488237 -4.480322747019 -0.959349906968
H -2.003341787947 -2.705545094449 -0.935370859741
H -0.580401255440 -3.578103230911 -1.514090939452
C 0.022303562855 -4.920998824945 0.754749743390
H 0.423812025665 -5.096863006588 1.748888903403
H -0.599545629474 -5.781930845102 0.493963776262
H 0.851099820440 -4.899210502212 0.045472771212
C -2.036230066098 -3.749082428634 1.604113749090
H -2.623729281594 -2.828704478186 1.590910817024
H -2.683928405057 -4.564593451184 1.272731411267
H -1.740428657749 -3.961883183701 2.630795862041
C -0.649550680925 -1.412274780692 3.607800300230
H -0.327223777843 -1.247358295774 4.640157431509
H -1.008217950513 -0.467672548770 3.201167393844
H -1.482909770725 -2.111753308145 3.630550902324
C 1.030451693548 -3.252896798761 3.421660597678
H 1.395454630668 -3.044520240683 4.431235798065
H 0.236030017750 -3.991823194697 3.511207610495
H 1.856338059385 -3.695651149360 2.861479407178
C 1.683909982147 -0.919993312673 2.923708288428
H 2.607364602907 -1.277034268226 2.463523938996
H 1.415697653249 0.037820629472 2.479289051765
H 1.888762910629 -0.761060860248 3.985832518671
C 0.619020048304 1.668514609698 -3.247482230118
H 1.530064841562 2.253179338113 -3.100399801338
H 0.786170147595 0.669969471126 -2.850057680199
H 0.458541934577 1.575571809199 -4.324154163513
C -1.883419942658 1.698165877118 -3.134631647458
H -1.883389340077 1.717477324349 -4.227791048005
H -1.948530360046 0.659188787596 -2.818510087285
H -2.776815762582 2.220377427682 -2.793548591814
C -0.567325083409 3.824947985419 -3.092509364905
H -0.526635430603 3.830893049536 -4.185332767567
H -1.454505354484 4.383881373770 -2.799284435136
H 0.316878072271 4.355473704024 -2.732869034877
C -0.794941032059 4.811126800217 0.043181688008
H -0.728454325588 5.184762229548 -0.974186513281
H -1.412372243262 5.512190386266 0.611489804475
H 0.203153659618 4.834510374932 0.484229064091
C -2.867890689506 3.447636004049 -0.376559388341
H -3.306018480994 2.447672198892 -0.376624317223
H -3.468110571558 4.079144494727 0.283635060240
H -2.941395165897 3.859482148144 -1.381841120438
C -1.485703037271 3.047142255873 1.630553071694
H -2.036978866882 2.122618601064 1.787834465921
H -0.494368267641 2.923833821728 2.071408386669
H -1.990661688500 3.858235984967 2.163195374197
35回程度の反復計算で遷移状態構造が得られた。-freq
オプションにより生成されたnormal_modes.txt
やvibration_animation
ディレクトリ内の振動モードのアニメーションを確認した。
以下に-freq
オプションで生成されたnormal_modes.txt
の一部を示す。
Mode 0 1 2
Freq [cm^-1] -529.8671 32.7509 53.6050
Reduced mass [au] 2.7617 4.1809 4.6311
Force const [Dyne/A] -0.4568 0.0026 0.0078
Char temp [K] 0.0000 47.1213 77.1256
Normal mode x y z x y z x y z
C 0.00103 0.00107 0.00215 -0.00251 0.00365 -0.01060 -0.01230 -0.01226 -0.02575
C 0.00069 0.00094 0.00196 -0.00089 0.00941 0.00027 -0.02156 -0.01924 -0.08086
C 0.00245 0.00094 -0.00053 0.00043 0.01637 0.03051 -0.02750 -0.02161 -0.10159
C 0.00037 -0.00158 0.00027 -0.00048 0.01603 0.04662 -0.02037 -0.01527 -0.05981
C -0.00135 -0.00072 0.00127 -0.00314 0.00888 0.02988 -0.01048 -0.00899 -0.00818
N -0.00462 -0.00133 -0.00506 -0.00340 0.00366 0.00226 -0.00773 -0.00840 0.00138
H 0.00257 0.00128 0.00018 0.00232 0.02178 0.04211 -0.03607 -0.02758 -0.14817
H 0.00253 0.00185 0.00790 0.00003 0.00951 -0.01136 -0.02508 -0.02278 -0.10923
H -0.00054 -0.00055 0.00166 0.00043 0.02080 0.07061 -0.02222 -0.01691 -0.07117
C 0.00042 -0.00081 -0.00176 -0.00840 0.00396 0.03852 -0.00762 -0.00962 0.02975
H -0.00760 -0.01005 0.00093 -0.02868 -0.01587 0.04473 -0.01458 -0.04572 0.04116
H 0.00429 0.00142 0.00286 -0.00184 0.01624 0.05997 -0.00501 0.00965 0.05846
C 0.00314 -0.00081 0.00893 -0.00482 0.00096 -0.02832 -0.00648 -0.00905 0.00348
H 0.00679 -0.03383 0.02925 -0.02078 0.01943 -0.03381 -0.00759 -0.03052 0.01506
H 0.00725 0.00999 0.01802 -0.00201 -0.01228 -0.04780 -0.00064 0.00509 0.01355
Ir 0.00017 0.00236 0.00518 -0.00334 0.00025 0.00176 -0.00554 -0.00634 0.00063
P -0.00030 -0.00946 0.00567 0.00065 0.00055 0.00073 -0.00488 -0.00336 0.00753
P -0.00361 0.01216 -0.00305 0.00665 -0.00124 -0.00453 -0.00124 0.00288 0.01014
H -0.33516 0.21182 0.33957 -0.01912 0.00791 0.00089 0.01542 -0.01334 0.00122
H 0.00700 0.01984 0.01936 -0.00269 0.00031 0.00684 -0.00697 -0.01075 -0.01203
H 0.11206 0.03933 0.10139 0.00350 0.00030 0.00307 -0.01751 -0.00642 0.00010
C 0.04835 -0.10808 -0.19960 -0.06450 -0.01089 -0.00064 0.05762 0.01056 -0.00228
O -0.00169 0.01833 0.02692 -0.06415 -0.01713 -0.03017 0.05804 0.01896 0.02267
O -0.01773 0.00711 0.01150 -0.08273 -0.01240 0.02934 0.07394 0.01277 -0.02882
C 0.00073 -0.00408 0.00091 0.03309 -0.00311 -0.01054 0.01250 0.01520 0.00612
C 0.00267 -0.00047 0.00071 0.00363 -0.00231 0.00890 -0.01493 0.00973 0.02345
C -0.00050 0.00602 0.00163 0.04637 0.00396 -0.00199 0.02294 0.01842 0.00847
C 0.00028 0.00139 -0.00145 -0.02447 -0.00255 -0.02138 -0.02347 -0.01548 0.00665
C -0.00132 -0.00280 0.00317 -0.02378 0.00063 0.01963 -0.01021 0.00625 0.02094
H -0.00033 -0.00389 0.00105 -0.02892 0.00202 0.02978 -0.01315 0.00793 0.02241
H 0.01062 0.00531 0.00704 -0.02512 0.00199 0.03236 -0.00541 0.00873 0.01591
H 0.00762 -0.01136 0.01039 -0.03755 -0.00027 0.00478 -0.00829 0.00160 0.02250
C -0.00097 -0.00190 0.00034 0.00918 -0.00019 -0.01164 -0.03055 0.00051 0.03705
H 0.00033 0.00106 0.00026 0.03227 -0.00024 -0.02092 -0.04186 0.00141 0.04176
H 0.00224 -0.00549 0.00207 0.00553 -0.00151 0.00142 -0.03786 0.00608 0.03612
H 0.00196 -0.00225 0.00284 -0.00709 0.00304 -0.03051 -0.02348 -0.01274 0.04478
C 0.00063 -0.00023 -0.00141 0.02183 -0.00867 0.03123 -0.01708 0.03350 0.02310
H 0.00423 0.00199 -0.00171 0.01836 -0.01069 0.04458 -0.00266 0.04264 0.01810
H -0.00128 -0.00065 0.00146 0.01839 -0.00983 0.04086 -0.02971 0.04141 0.02831
H 0.00168 0.00259 -0.00139 0.04129 -0.01059 0.02515 -0.01909 0.03487 0.02417
C 0.00105 -0.00202 0.00104 0.04315 -0.00779 0.00738 0.02235 0.02419 0.01465
H 0.00209 -0.00249 0.00132 0.05796 -0.00697 0.00262 0.03302 0.02774 0.01077
H 0.00936 -0.00260 -0.00675 0.03417 -0.00871 0.01298 0.02212 0.02372 0.01389
H 0.00117 -0.00311 0.00324 0.04579 -0.01042 0.01971 0.01979 0.02755 0.02607
C 0.00064 -0.00239 0.00094 0.04614 -0.00329 -0.02099 0.01228 0.01709 0.01010
H 0.00035 -0.00368 0.00161 0.05865 -0.00501 -0.02515 0.02690 0.02224 0.00373
H 0.00106 -0.00358 0.00155 0.05056 -0.00698 -0.01286 0.00723 0.02425 0.02626
H 0.00183 -0.00290 0.00195 0.04065 0.00200 -0.03327 0.00128 0.00589 0.00277
C 0.00086 -0.00269 0.00098 0.03178 -0.00027 -0.02199 0.01642 0.01306 -0.01136
H 0.00193 -0.00447 0.00262 0.02697 0.00409 -0.03483 0.01038 0.01040 -0.02142
H -0.00827 -0.00584 0.00067 0.02314 0.00075 -0.01451 0.01243 0.01183 -0.01161
H 0.00065 -0.00451 0.00172 0.04477 -0.00384 -0.02396 0.02948 0.01650 -0.01441
C -0.00379 0.00248 0.00152 0.05024 -0.01218 0.02359 0.03219 0.02898 0.01496
H -0.00025 -0.00242 -0.00253 0.05838 -0.03359 0.05807 0.03012 0.02646 0.03650
H -0.01246 0.01486 0.03501 0.01674 -0.02238 0.01227 0.02664 0.02246 0.00103
H -0.00089 -0.00329 0.00049 0.07907 0.00882 0.01740 0.04659 0.04620 0.01133
C 0.00014 0.00651 0.00021 0.04957 0.02423 -0.03652 0.03374 0.02071 -0.02111
H 0.00148 -0.00531 -0.00104 0.08627 0.01090 -0.03674 0.04819 0.04131 -0.02077
H -0.00643 0.02118 0.03880 0.01687 0.02916 -0.02669 0.03773 0.01398 -0.04134
H 0.00161 0.01537 -0.00965 0.04882 0.04664 -0.07350 0.02524 0.00732 -0.02317
C 0.00048 0.00253 -0.00359 0.07953 0.00565 0.00535 0.02956 0.02528 0.02980
H -0.00126 0.00859 -0.00437 0.10695 0.01059 0.00640 0.04465 0.04127 0.03045
H 0.00168 0.00254 0.00008 0.08043 0.01720 -0.01400 0.02676 0.02263 0.02588
H 0.00017 0.00217 -0.00197 0.07812 -0.00868 0.03008 0.02538 0.01886 0.04955
C -0.00012 0.00089 -0.00123 -0.01477 -0.00479 0.01063 -0.01550 -0.01659 0.04484
H 0.00134 0.00261 -0.00091 0.02811 -0.00048 0.01479 0.01592 -0.00220 0.05202
H 0.00133 0.00220 -0.00067 -0.03464 -0.00475 -0.01097 -0.02866 -0.02199 0.03720
H -0.00024 -0.00127 -0.00062 -0.03250 -0.01145 0.05100 -0.02811 -0.02822 0.07410
C 0.00057 0.00061 -0.00121 -0.00722 0.00909 -0.06866 -0.01115 -0.00321 -0.02752
H 0.00240 -0.00026 0.00011 -0.01188 0.01114 -0.09552 -0.01465 -0.00169 -0.05092
H -0.00045 -0.00005 -0.00117 -0.02620 0.00327 -0.08039 -0.02424 -0.01051 -0.03246
H -0.00126 0.00059 -0.00171 0.02758 0.02232 -0.06571 0.01272 0.01067 -0.02339
C -0.00271 0.00563 -0.00054 -0.07499 -0.01613 -0.02698 -0.06288 -0.03813 -0.00059
H 0.00950 -0.00060 0.00019 -0.07532 -0.02077 -0.05477 -0.06687 -0.04057 -0.02901
H -0.00496 0.00405 0.00011 -0.08939 -0.01531 0.00553 -0.07420 -0.04444 0.02302
H -0.00818 0.00826 -0.00771 -0.09741 -0.02337 -0.03716 -0.07712 -0.04593 -0.00210
(...snip...)
その結果、虚振動が1つであることが確認できた。
次に、vibration_animation
内のmode_1_530i_wave_number.xyz
をAvogadroで確認すると、想定される反応系と生成系をつなぐ方向に振動していることを確認できた。
終わりに
自作モジュールで、UMAモデルのニューラルネットワークポテンシャル(NNP)を用いて、PNP型のpincer配位子が配位したIr触媒の二酸化炭素へのヒドリド挿入によるギ酸イオン生成反応のある1つの遷移状態構造を算出する手順を説明した。
参考
- https://github.com/ss0832/MultiOptPy (自作モジュールMultiOptPyのレポジトリ)
- https://avogadro.cc/ (Avogadro、分子構造可視化ツール)
- https://ai.meta.com/blog/meta-fair-science-new-open-source-releases/ (UMAの公開に関する記事)
- https://github.com/facebookresearch/fairchem (FAIR Chemistryの提供するGitHubのレポジトリ)
- https://fair-chem.github.io/ (同上のレポジトリの内容に関して説明したサイト)
- https://huggingface.co/facebook/UMA (NNPの配布サイト, Hugging Faceへのアカウント登録と配布元の使用許諾が必要である。)
- The Journal of Chemical Physics 2010, 132, 241102.
- The Journal of Chemical Physics 1991, 94, 751–760.
- In Classical and Quantum Dynamics in Condensed Phase Simulations; WORLD SCIENTIFIC: LERICI, Villa Marigola, 1998; pp 385–404.
- The Journal of Chemical Physics, 2020, 153, 024109.
- The Journal of Chemical Physics, 2022, 144, 214108.