FC2ブログ

xyz2mol プログラム

2019-10-16 :  PCクリニック
各原子の座標データだけから、原子間の結合データを生成する。
これを、xyz2mol と呼んでいる。


xyz2mol で、当ブログ内を検索すると、・・・

xyz2mol 検索結果
即ち、
  2019/03/13 : 理科部 : JSmol 学習:connect コマンド
  2018/06/22 : 理科部 : OpenBabel 学習:Sybyl Mol2 format ( ・・・ )
  2018/06/18 : PCクリニック : OpenBabel 学習:xyz2mol 処理
  2017/10/30 : PCクリニック : GSL Shell プログラム:xyz2mol.gsl
  2017/10/27 : PCクリニック : Python プログラム:xyz2mol.py
  2015/12/06 : PCクリニック : OpenBabel:Develop with Open Babel
  2014/08/08 : PCクリニック : プログラム設計:xyz2mol
でしょうか。


今になって、Firefox で、
OpenBabel bond calculate」検索を行った。


Easily extract bond information with OpenBabel - Kaggle
なるページを見つけた。

本文の最後に、2つの URL が載っている。

 ・https://www.kaggle.com/aekoch95/bonds-from-structure-data
 ・https://www.kaggle.com/asauve/dataset-with-number-of-bonds-between-atoms

この初めの方に行ってみた。

Bonds from structure data

  Recovering bonds from structure

  This kernel presents a method to extract the bonds between atoms
   in a molecule.
  The inputs are the XYZ coordinates of the atoms (as found in
   the given structure data) and the covalent radius
   for each element (from wikipedia).
  The output is, for each atom, a list of atom_indexes of
   the other atoms that it is bonded to.
  The method is similar to the atomic connectivity step described here:
  http://proteinsandwavefunctions.blogspot.com/・・・

===

  このカーネルは、分子内の原子間の結合を抽出する方法を提供します。
  入力は、原子のXYZ座標(指定された構造データにある)と
   各要素の共有半径(ウィキペディアから)です。
  出力は、各アトムについて、結合されている他のアトムのatom_indexesの
   リストです。
  この方法は、ここで説明するアトミック接続ステップに似ています。
  (URL)


上記 (URL) リンク先は:

Proteins and Wave Functions


なんと、
同名の「xyz2mol」プログラムを作っていた人が居た。

  FRIDAY, JANUARY 26, 2018
  xyz2mol: converting an xyz file to an RDKit mol object

  I have written a program called xyzmol that converts an xyz file
   to an RDKit mol object, based on this paper.
   For ions the molecular charge has to be specified in the xyz file.

  In principle this could be accomplished by using OpenBabel to convert
   an xyz file to and sdf file and reading the sdf file with RDKit.
  However, in my experience OpenBabel occasionally mis-assigns bond orders
   and I believe this code does this less often.

  The code works by constructing an atom connectivity (AC) matrix from
   the xyz file, converts the AC matrix to a bond order (BO) matrix,
  computes the formal atomic charges, and then constructs a molecule
   object using all this information, including the 3D coordinates.

  The code that constructs the AC matrix from the xyz file (xyz2AC) uses
   scaled covalent radii to find bonds and the current scale factor is
   1.25, but this may need adjusting.

  The code currently works only for organic molecules, i.e. molecules
   containing the following elements: H, B, C-F, Si-Cl, Br, and I.

  The current version assumes a close shell molecule,
   i.e. it does not work with radicals yet.

  I hope you find it useful.

===

  [この論文] に基づいて、xyzファイルをRDKit molオブジェクトに変換する
  xyzmolというプログラムを作成しました。
  イオンの場合、xyzファイルで分子電荷を指定する必要があります。

  原則として、これはOpenBabelを使用してxyzファイルをsdfファイルに変換し、
  RDKitでsdfファイルを読み取ることで実現できます。
  しかし、私の経験では、OpenBabelは時々債券注文を誤って割り当てますが、
  このコードはこれをあまり頻繁に行わないと思います。

  このコードは、xyzファイルから原子連結性(AC)マトリックスを構築し、
  ACマトリックスを結合次数(BO)マトリックスに変換し、正式な原子電荷を
  計算し、3Dを含むこのすべての情報を使用して分子オブジェクトを構築する
  ことで機能します座標。

  xyzファイル(xyz2AC)からACマトリックスを構築するコードは、
  スケーリングされた共有半径を使用して結合を見つけ、
  現在のスケールファクターは1.25ですが、これは調整が必要な場合があります。

  コードは現在、有機分子、つまり次の元素を含む分子でのみ機能します:
   H、B、C-F、Si-Cl、Br、およびI

  現在のバージョンでは、シェル分子が近いと想定されています。
  つまり、ラジカルではまだ動作しません。

  それがあなたのお役に立てば幸いです。



<紙>のいい加減な処理と異なり、
キチント処理している。それで、任意の元素に対応してはいないが。



もっと、化学(?)の学習が必要ですネ。



本日はここまで。


理科部の 学習も続く。


見ていただいた序でとは厚かましい限りですが、
お帰りに投票して頂けるとなお嬉しいです。 ⇒

190902
関連記事
スポンサーサイト



コメントの投稿

管理者にだけ表示を許可する

人気blog Ranking



最新記事
カレンダー
07 | 2021/08 | 09
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 - - - -
月別アーカイブ
カテゴリ
最新コメント
検索フォーム
リンク
プロフィール

<紙>

Author:<紙>
ようこそ。
「パソコンヲタクの雑記帳」
もろもろなことを綴っています。
パソコン ヲタクってねくら?
画像は kami でなく kani です。

FC2 / i2i / Google




Google Analytics
ブックマーク