近年、量子化学計算のためのソフトウェアであるPsi4が人気を集めています。Psi4は、標準でPythonを使用して操作を行えるのも人気の理由の一つです。この連載では、Psi4Pythonの使い方を全く知らない初心者でも、最終的にPsi4の基本をマスターできるようになることを目標にしています。
tut-1ac
Psi4でPythonを使うのは必須ではありません。プログラミングを全く行わずに計算を実行することもできるので、コードを入力するということに心理的ハードルを感じる方も安心してください。
それでは、楽しみながらはじめていきましょう!!

Psi4とは?

Psi4は、オープンソース(GPLライセンス)の量子化学計算パッケージです。オープンソースとは、プログラムの設計図であるソースコードを一般に公開して、誰でも使ってよいとする考え方です。つまり、無料で利用することが可能です。オープンソースなので、読者の皆さんも問題点を見つけた場合や、改善点があれば改良に参加できます。

GitHub: Psi4

Psi4の読み方は、「サイフォー」が一般的です。ハートリー・フォック法(HF法)密度汎関数法(DFT法)をはじめとした様々な手法をカバーしており、構造最適化計算や振動解析といった主要な量子化学計算が行えます。Psi4の開発は非常に活発に行われており、今後もますます機能が充実していくことが期待できます。

Pythonを使用して操作を行うこともできるので、NumPySciPy(科学計算用ライブラリ)やRDKit(ケモインフォマティクス用ライブラリ)、scikit-learn(機械学習用ライブラリ)など人気のライブラリとの連携が容易に行えると言う点も魅力と言えるでしょう。

Psi4を使いはじめるには?

Psi4は、量子化学計算のソフトウェアでよく行われるメールによるライセンス申請が必要ないので、すぐに使いはじめられます。Psi4は、自身のパソコンにインストールして使用するのがベターです。一方、クラウドサーバーでPythonコードを実行できるサービスを利用するというのも一つの手です。この方法は、自身のパソコンにインストールする前にとりあえず試してみたい方や、スマホやタブレットPCなどを利用している方におすすめです。

クラウドサーバーでPythonコードを実行できるサービスとしては、無料で利用できるGoogle Colaboratory(以下、Colab)の使用をおすすめします。Googleアカウントさえあれば、環境構築がほぼ不要なので初心者の方は、まずこちらを試してみてください。パソコンに特別な環境を用意する必要がないので、大学の授業や社内の勉強会などで利用する際も便利です。

Google Colaboratory: Colab へようこそ

本連載では、主にColabを使用して解説を行います。学習用にColabで開くことができる専用のファイルを用意していますので、既に入力してあるコードを実行するだけでインストールなどの面倒な作業は完了します。つまり、すぐに学習をはじめられます

※22'8/16現在ColabでPsi4の計算を実効すると、「不明な理由により、セッションがクラッシュしました。」と表示され、計算が途中で停止する症状が確認されています。
colab_Crush
症状が改善されない場合は、次の記事(
Psi4ではじめる量子化学計算 ④:インストール編)を参考にローカル環境で試してみてください。

また、Colab以外の選択肢としてPsi4のGitHubに用意されているBinderによるデモを利用するのも一つの手です。

GitHub: Psi4 Demo: Binder

起動に少々時間がかかりますが、以下の画像のように、Jupyter Notebook上でPsi4を実行できます。
psi4_1-1
ColabやBinderは、使用できるメモリや稼働時間に制約があるので、本格的な計算を行う場合は向いていません。しかし、本連載で扱うような簡単な計算であれば全く問題ありません。本連載の簡単なチュートリアルを終えて自身のパソコンに導入するか検討してみても遅くはないでしょう。

Psi4のインストール方法

先述の通り、Psi4を使いはじめるには、ローカル環境(自身のパソコン)にインストールして使用するか、Colabなどのクラウドサーバーを利用する方法が選択肢として挙げられます。環境構築に不安がある初心者の方は、Colabを使用することからはじめてみてください。

以下のリンクをクリックすると、Psi4をインストールするためのコードが入力されたファイルをColabで開くことができます。実行方法などは、次回の連載から解説していきます。今回は、内容を眺めるだけで実行する必要はありません。

Open in Colab: Psi4_tut_1.ipynb

ちなみに、ColabでPsi4をインストールするために使用したコードは以下の通りです。
# condaのインストール
!wget -c https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh
!chmod +x Miniconda3-latest-Linux-x86_64.sh
!bash ./Miniconda3-latest-Linux-x86_64.sh -b -f -p /usr/local

# Psi4のインストール !conda install -y psi4 python=3.7 -c psi4

# モジュール検索パスの追加 import sys sys.path.append("/usr/local/lib/python3.7/site-packages/")

# Psi4のインポート import psi4 # Psi4のバージョン確認 print(psi4.__version__)
Pythonについて知識がない方にとっては、謎の単語が並んでおり戸惑うかもしれませんが、単にPsi4をColabで使えるようにしているだけです。全く覚える必要はないので、安心してください。

ローカル環境への詳しいインストール方法は、本連載の途中で解説する予定です。はじめての方にとって、ローカル環境へのインストールは少々面倒です。まずはColabでPsi4を使用してみて、ローカル環境に導入するかを検討してみてください。

既にPythonをある程度扱える方であれば、Psi4のインストールは問題ないと思います。ここでは、簡単な紹介にとどめます。

まずは、Psi4のダウンロードページにアクセスし、導入する環境のコードを取得します。例えば、以下の画像は、Windowsへver.1.5.0をcondaでインストールするように項目を選択して、コードを取得した様子です。
psi4_1-2
Psi4: Download

取得したコードは以下の通りです。
conda install psi4 python=3.8 -c psi4 -c conda-forge
Psi4のバージョンを指定してインストールしたい場合は、以下のようにコードを変更します。
conda install psi4=1.5.0 python=3.8 -c psi4 -c conda-forge
あとは、Anacondaを導入している方であれば、Anaconda Promptに取得したコードを入力しインストールするだけです。

Windows環境でPsi4を使用する際の注意点

WindowsでPsi4を使用する場合は、少しだけ注意が必要です。Psi4は、最近のバージョンでWindowsを正式にサポートするようになりました。しかし、溶媒効果を扱うためのライブラリ(PCMSolver)といった一部の機能は残念ながら使えません。

すべての機能を利用したい場合は、WindowsでLinuxの実行環境を用意してPsi4を使用することをおすすめします。例えば、Windows10ではLinuxの実行環境を実現するサブシステムであるWSL(Windows Subsystem for Linux)を有効化して、Ubuntu(Linuxの実行環境)をインストールするなどして環境を用意します。

WSL のインストール -Microsoft

ただし、Linuxの実行環境を用意するのは非常に面倒です。まずはWindows環境で試して、不都合がある場合はLinuxの実行環境を用意するか検討してみるとよいでしょう。

おわりに

Psi4は、公式のチュートリアルも丁寧に作られており、初心者でも比較的扱いやすいソフトウェアです。最近のバージョンでは安定性も向上しており、以前からPsi4が気になっていたという方にとっては、今から使いはじめるには非常によいタイミングだと思います。

冒頭でも述べましたが、Psi4でPythonを使ったプログラミングを行うのは必須ではありません。これまで本ブログで解説してきたGAMESSやFireflyと同じように入力ファイルを作成して計算を実行する事も可能です。この方法については、本連載の途中で解説したいと考えています。

近年では、プログラミングを必要としない『ノーコード』に対する興味や関心が高まっています。今後は、様々なソフトウェアでプログラミングを行うかどうかをユーザーに任せる流れが主流になってくると思います。
本ブログでは、ノーコードによる機械学習について解説した書籍「ノーコードではじめる機械学習」を出版しております。興味がある方は、お手に取っていただければ幸いです!!

次回は、実際にPsi4を使って構造最適化計算を実行してみましょう。


【関連記事】
Psi4run - Batch job processor - | ダウンロード
Psi4ではじめる量子化学計算 ①:導入編
Psi4ではじめる量子化学計算 ②:構造最適化編
Psi4ではじめる量子化学計算 ③:振動解析編