NEB

modules/grrmdata.get_connections

ListNEB クラス

class matlanticgrrm.neb.ListNEB(imagess, k=0.1, climb=False, parallel=False, remove_rotation_and_translation=False, world=None, method='aseneb', allow_shared_calculator=False, precon=None)[ソース]

その他の引数は ase.neb.NEB を参照

make_images()

class matlanticgrrm.neb.make_images(eq_list, connections, n_images=None, name='ReactionsSummary', indices=None, divide_per=0.1, min_images=8, mic=True)[ソース]

NEB計算のImagesを作成する.

不要な反応のImageは作成しない. 例えば,同じini,finの組み合わせを持つ反応は1つしかImagesを作らない.
作成されなかったImageの理由をHTMLファイル,またはlogファイルに出力する.
eq_listをGeometryで与えた場合HTMLファイル,Atomsリストで与えた場合logファイルが作成される.

Parameters:

eq_list: list of Atoms or matlanticgrrm.geometry.Geometry
EQ構造
Atomsのリストの場合: 同じCONNECTIONの反応のimagesは作らない.
matlanticgrrm.geometry.Geometryの場合: 同じ構造と判断された反応のimagesは作らない(構造のグループ化)
connections: list of tuple of interger
CONNECTIONのリスト
ex) [(0,1),(2,4),(3,5)]
n_images: interger or list or None
Imageの数.
intの場合: 全てintで指定したImage数で作成
listの場合:
Noneの場合: iniとfinの構造の差から最適なImage数を算出し作成.
indices:
indicesに指定した原子の移動距離から適切なimages数を決定する.
Noneの場合,全ての原子の移動距離を見る
divide_per: float

最も大きく動いた原子の移動距離をこの距離で割ってイメージ数を定める(Å)

min_images: int

最小のイメージ数を定める

ListNEBまで作成するには nebmake() を使用する

neb_graphs()

class matlanticgrrm.neb.neb_graphs(imagess, html=None, traj=None, pkl=None)[ソース]

NEBのエネルギーダイアグラムを作成

Parameters:

imagess: list of images (2D list of Atoms)

imagesのリスト(Atomsの2次元リスト)

html: str or path object
htmlのパス
htmlにグラフを作成する.Noneの場合は標準出力(非推奨).
traj: str or path object
trajのパス
TS構造のtrajファイルを作成する. TS構造の存在しない要素は空のAtomsオブジェクト
pkl: str or path object

TS構造のindex番号, TS構造が存在しない要素はNone

calc_image_numbers()

class matlanticgrrm.neb.calc_image_numbers(ini, fin, indices=None, divide_per=0.1, min_images=8)[ソース]

始状態と終状態からNEB計算に最適なimageの数を算出する

Paramaters:

ini: Atoms

始状態のAtomsオブジェクト

fin: Atoms

終状態のAtomsオブジェクト

indices: List of integer

着目する原子のインデックス番号

divide_per: float

最も大きく動いた原子の移動距離をこの距離で割ってイメージ数を定める(Å)

min_images: int

最小のイメージ数を定める