左メニュー
主要ページ トップページ Linuxコマンド Amber Gaussian Fortran LaTeX Python CShellScript Atom ジョブ管理 ショートカットキー リンク集 英単...
Python公式等からダウンロードできます.
(追記:こちらのほうがわかりやすいです.)
このとき、使っているOSの種類に注意しましょう.
バージョンは最新のものでいいと思います.
ダウンロードしたら指示に従ってインストールするだけです.
数値計算用のライブラリ『NumPy』です.
Pythonをインストールした上で、
pip install numpy
を実行すればインストールできます。
参考:NumPy、pandas、Matplotlib をpipでインストールする方法
pipだけでは無理のようなのでAnacondaかMinicondaを入れる必要があります.
RDKit公式
RDKitドキュメンテーション非公式日本語版サイト
RDKit環境構築を行いjupyter-notebookでベンゼンを表示させる
必要な時にpipでインストールします。下のサイトで検索できます。
The Python Package Index (PyPI)
Pythonファイルは ___.py という形式でつくります。
そこに好きなエディタでPythonコードを書いたら、
コマンドライン上で実行したいファイルが存在するディレクトリに移動してから、
python ___.py
と打てばプログラムが実行されます。
Python公式
Python Japan
Python入門
Pythonの基礎
変数
演算子
変数とデータ型
list, tuple, dictionary, set型
if, for, while文
配列のループ
gjfファイルからpdbファイルに座標情報を写すときのプログラム例
# 座標取り出すためにgjfファイル読み込み
f_gjf_R = open('./___.gjf')
f_gjf_R_lines = f_gjf_R.readlines()
f_gjf_R.close()
# 変数準備
Thr40_cart_list = []
Ser105Gln106_cart_list = []
Asp187_cart_list = []
Hid224_cart_list = []
RPP_cart_list = []
# ループ
for i in range(116):
# 1行ずつ処理
line = f_gjf_R_lines[i+6]
# 1行を空白で区切ってlistに分解
line_list = line.split()
# xyz座標取り出し, 小数第4位を四捨五入
x = str('{:.3f}'.format(float(line_list[1])))
y = str('{:.3f}'.format(float(line_list[2])))
z = str('{:.3f}'.format(float(line_list[3])))
# 条件分岐
if i < 14:
# コメントアウトされているprint関数は本番実行前にコメントインして正常に動くか試す
# print(f'Thr40_cart: [{x},{y},{z}]')
Thr40_cart_list.append([x, y, z])
elif i < 47:
# print(f'Ser105Gln106_cart: [{x},{y},{z}]')
Ser105Gln106_cart_list.append([x, y, z])
elif i < 59:
# print(f'Asp187_cart: [{x},{y},{z}]')
Asp187_cart_list.append([x, y, z])
elif i < 76:
# print(f'Hid224_cart: [{x},{y},{z}]')
Hid224_cart_list.append([x, y, z])
else:
# print(f'RPP_cart: [{x},{y},{z}]')
RPP_cart_list.append([x, y, z])
# print(len(Thr40_cart_list))
# print(len(Ser105Gln106_cart_list))
# print(len(Asp187_cart_list))
# print(len(Hid224_cart_list))
# print(len(RPP_cart_list))
# 座標書き換えの準備のためpdbファイル読み込み
f_pdb = open('./___.pdb')
f_pdb_lines = f_pdb.readlines()
f_pdb.close()
for i in range(116):
if i < 14:
line = f_pdb_lines[i+541]
line_list = line.split()
new_line = line.replace(line_list[5], Thr40_cart_list[i][0])
new_line = new_line.replace(line_list[6], Thr40_cart_list[i][1])
new_line = new_line.replace(line_list[7], Thr40_cart_list[i][2])
f_pdb_lines[i+541] = new_line
# print(f'Thr40: {f_pdb_lines[i+541]}')
elif i < 47:
line = f_pdb_lines[i-14+1519]
line_list = line.split()
new_line = line.replace(line_list[5], Ser105Gln106_cart_list[i-14][0])
new_line = new_line.replace(line_list[6], Ser105Gln106_cart_list[i-14][1])
new_line = new_line.replace(line_list[7], Ser105Gln106_cart_list[i-14][2])
f_pdb_lines[i-14+1519] = new_line
# print(f'Ser105Gln106: {f_pdb_lines[i-14+1519]}')
elif i < 59:
line = f_pdb_lines[i-47+2734]
line_list = line.split()
new_line = line.replace(line_list[5], Asp187_cart_list[i-47][0])
new_line = new_line.replace(line_list[6], Asp187_cart_list[i-47][1])
new_line = new_line.replace(line_list[7], Asp187_cart_list[i-47][2])
f_pdb_lines[i-47+2734] = new_line
# print(f'Asp187: {f_pdb_lines[i-47+2734]}')
elif i < 76:
line = f_pdb_lines[i-59+3283]
line_list = line.split()
new_line = line.replace(line_list[5], Hid224_cart_list[i-59][0])
new_line = new_line.replace(line_list[6], Hid224_cart_list[i-59][1])
new_line = new_line.replace(line_list[7], Hid224_cart_list[i-59][2])
f_pdb_lines[i-59+3283] = new_line
# print(f'Hid224: {f_pdb_lines[i-59+3283]}')
else:
line = f_pdb_lines[i-76+4634]
line_list = line.split()
new_line = line.replace(line_list[5], RPP_cart_list[i-76][0])
new_line = new_line.replace(line_list[6], RPP_cart_list[i-76][1])
new_line = new_line.replace(line_list[7], RPP_cart_list[i-76][2])
f_pdb_lines[i-76+4634] = new_line
# print(f'RPP: {f_pdb_lines[i-76+4634]}')
# pdbファイル上書き
# 正常に動作するか確認するために最初はコメントアウト(代わりにprintをコメントイン)
# f_new_pdb = open('./___.pdb', 'w')
# f_new_pdb.writelines(f_pdb_lines)
# f_new_pdb.close()
.
シェアボタン: このページをSNSに投稿するのに便利です。
主要ページ トップページ Linuxコマンド Amber Gaussian Fortran LaTeX Python CShellScript Atom ジョブ管理 ショートカットキー リンク集 英単...
このWikiについて佐藤研の学生(主にB4)向けwikiです.研究の補助に使ってください.間違っている箇所や不足している箇所があれば指摘して頂けると助かります. 注意事項メンバー登録をすれば...
よく使うものだけ書きます.cd ..一つ上のディレクトリに移動.cd /ルートディレクトリに移動.cd ~ホームディレクトリに移動.ルートは共通の最上階層, ホームは個人の最上階層みたいなイメージです...
論文等で頻出の重要単語・連語を列挙しています.名詞 (noun) 単語・連語 略称 意味 functional 汎関数 density functional theory DFT 密度汎関数理論 ti...
プラグインのインストール ブラウザに専用プラグインをインストールすることで,大学が購読している電子ジャーナル・データベースにアクセスできるようになります:電子リソースへのアクセスについてジャーナルAC...
※使用するアプリケーションによって若干異なる場合があります.Windowsウィンドウ・タブ操作アプリ切り替えAlt + Tabウィンドウ最大化Alt + Space + Xウィンドウを元のサイズに戻す...
hermesA化研と同じSlurmQuick Start User GuideFOCUS - ジョブの実行方法(SLURMコマンド編)FOCUS - ジョブ投入スクリプトの作成分子研計算機利用の手引き...
77と90/95FortranはFORTRAN 77(旧式, 以下f77)とFortran 90/95(新式, 以下f90)に大別される.もっと新しいバージョンや古いバージョンも存在するが,定着はして...
Atom(エディタ)の機能メモです.ショートカット(Win)行削除Ctrl+Shift+K行コピー&ペーストCtrl+Shift+D行ごと移動Ctrl+矢印キーファイル検索Ctrl+Pページ内検索Ct...
Windows10にUbuntuを入れた時のメモ.インストール後の設定sudo vi /etc/ssh/sshd_configでPasswordAuthentication noを#PasswordA...
エディタ コードを書くツール.LaTeXやFortran等を書くときに使う.AtomSublime TextVisual Studio CodeAtomのパッケージlatexlatexerlangua...
キーワードOpt構造最適化SPシングルポイント(一点)エネルギー計算SCFDIIS, Fermi, QC など.https://www.hpc.co.jp/chem/software/gaussian...
GAMESSGAMESSの概要GAMESS(US)GAMESS(UK)データベースBasis Set ExchangeBSEの使い方Protein Data BankPDBj(日本蛋白質構造データバン...
メモ程度の内容です.詳細は下のリンクを参照してください.マニュアルAmber19.pdfコマンドLEaP (13章) tleap -f ___.tleap水素つける、topとcrdができる.antec...
同じような作業はCShellScriptを書いて一度に実行すると効率化できます.注意:Windows OS上では実行できません.スクリプトの例#!/bin/cshset i = 1while($i ...
インストール(Atom)AtomエディタにLaTeXの日本語環境を構築することによる文書作成の効率化参考TeX Wiki - LaTeX入門LaTeXコマンド集LaTeX - コマンド一覧amsmat...
ブラウザ上MolView....
インストールPython公式等からダウンロードできます.(追記:こちらのほうがわかりやすいです.)このとき、使っているOSの種類に注意しましょう.バージョンは最新のものでいいと思います.ダウンロードし...
はじめにここは、雑談・質問・相談など何でも話題にする掲示板です。掲示板についてお知らせ特にありません。禁止事項 掲示板の趣旨と関係ない書き込み 誹謗・中傷含む書き込み 他サイトやアプリの宣伝 招待UR...
就活情報をみんなでシェアするページです。追々書いていこうと思います。....