MolConverterを使用した化合物ファイルの変換

Version 5.3.7

MolConverterはMarvin Beans/JChemに含まれる、様々なファイルタイプ変換を行えるコマンドラインプログラムです。

使用方法

molconvert [options] 出力フォーマット[:出力オプション] [ファイル...]

出力フォーマット は以下のうちのいずれかを指定します:

mrv 文書フォーマット
mol, rgf, sdf, rdf, csmol, csrgf, cssdf, csrdf,
cml, smiles, cxsmiles, abbrevgroup, peptide,
sybyl, mol2, pdb, xyz, inchi, name, cdx, cdxml
構造記述フォーマット
jpeg, msbmp, png, pov, ppm, svg, emf グラフィックフォーマット
gzip, base64 圧縮とエンコード
また、 以下のコマンドを使用すると指定ファイルの文字コードが表示されます:
molconvert [オプション] query-encoding [ファイル...]

オプション

-o file 標準出力ではなく、指定ファイルパスに出力します
-m 複数ファイルを生成します
-e charset 入力ファイルのキャラクターコードを指定します(フォーマットはJavaの指定方法で行います)。
-e [in]..[out] 入力 (in) と/または 出力 (out) ファイルのキャラクターコードを指定します
例: UTF-8, ASCII, Cp1250 (Windows Eastern European), Cp1252 (Windows Latin 1), ms932 (Windows Japanese).
-s string SMILES / SMARTS / Peptide形式として読み込む指定です。
-s string{format:options} 指定format形式、指定インポートオプション指定で読み込む指定です(省略可能)
--smiles string SMILES文字列として読み込みます
--smarts string SMARTS文字列として読み込みます
--peptide string Peptide文字列として読み込みます
-g エラーが発生しても次の構造を読み込み続けます(標準ではエラー時には処理を停止します)
-Y 明示水素を除去します
-I <range> 1から始まるシーケンシャルな番号として、化合物ファイル中の処理するレコードを指定します(例:5-8,15 だと 化合物レコード 5,6,7,8,15 を処理)
-U 複数の入力構造を1分子として出力します
-R <file>[:<range>] fuse fragments to input molecule(s) from file with specified mol index range range syntax: "-5,10-20,25,26,38-" (e.g. -R frags.mrv:20-)
-R<i> <file>[:<range>] fuse R<i> definition members to input molecule(s) from file in specified index range (e.g. -R1 rdef1.mrv:5-8,19)
-R<i>:<1|2> <file>[:<range>] fuse R<i> definition members to input molecule(s) from file in specified index range, filter molecules having 1 (2, resp.) attachment points (e.g. -R1:2 rdef1.mrv:-3,8-10)
-F 複数フラグメントを持つ分子の場合、最大フラグメントのみ残します
-T f1:f2... 入力がSDファイル、出力がSMILES形式の場合に、SDファイル中の指定フィールドをタブ区切りテーブルとして出力します
フィールド名中のコロン(:)文字は円(\)マークでエスケープされます
-T "*" 入力がSDファイル、出力がSMILES形式の場合に、SDファイル中の全てのフィールドをタブ区切りテーブルとして出力します
-c "f1OPvalue&f2OPvalue..." 入力がSDファイルの場合、フィールド値でフィルタリングを行います
OP は次のいずれかを指定します : =,<,>,<=,>=
--mol-fields-to-records Convert molecule type fields to separate records.
-v 簡単な結果のサマリーを出力
-vv 冗長な結果サマリーを出力(エラー時のStack Tracも出力)
-n 価数チェックをしない
-2[:options][:F<i1><i2>...,<iN>] 2次元座標を計算(SMILES入力の場合には標準でOn)
座標計算オプション
F パラメータ(及び <i1><i2>...,<iN> (1始まりの原子インデックス))が指定された場合、それらの原子を固定して部分的な構造クリーンを実施
-3[:options] 3次元座標計算を行います
座標計算オプション
-H3D 3次元構造クリーンオプション の詳細
インポートオプションは、以下の様に括弧で括って指定する事も可能です:
filename{options}
filename{MULTISET,options} 複数構造を一つにマージ
filename{format:} 自動フォーマット認識をスキップ
filename{format:options}
filename{format:MULTISET,options}

また、 Java VM オプション をコマンドラインから指定する事も可能です。

使用例:

  1. Molファイル中の構造をSMILESに変換、画面に出力:
    molconvert smiles caffeine.mol
  2. アロマティックフォーム分子を非アロマティック表記で出力:
  3. molconvert smiles:-a -s "c1ccccc1"
  4. アロマティックフォームへ変換:
  5. molconvert smiles:a -s "C1=CC=CC=C1"
    (標準アロマタイズ設定を使用)
  6. アロマティックフォームへ変換(基本アロマタイズ設定を使用):
  7. molconvert smiles:a_bas -s "CN1C=NC2=C1C(=O)N(C)C(=O)N2C"
  8. SMILESファイルをSDファイルに変換:
    molconvert mol caffeine.smiles -o caffeine.mol
  9. SDファイルをMolファイルに変換:
    molconvert sdf *.mol -o molecules.sdf
  10. Workディレクトリ中の全てのSDファイルのキャラクターコードを出力:
    molconvert query-encoding *.sdf
  11. 2次元座標を計算しながらSMILESをMolファイルに変換、cis/trans未定義の二重結合は"ether"に:
    molconvert -2:2e mol caffeine.smiles -o caffeine.mol
  12. 原子インデックス1、5、6の座標は固定して2次元座標の再計算:
    molconvert -2:2:F1,5,6 mol caffeine.mol
  13. xyzファイルを、自動ファイル認識させずにxyzファイルとして読み込み:
    molconvert smiles "foo.xyz{xyz:}"
    Note: これは単なるオプション説明のための例で、通常はMarvinで自動認識しますので指定する必要はありません。

  14. xyzファイルを読み込み、ボンド長=1.4/炭素結合最大数=4の構造のみをSMILESに出力:
    molconvert smiles "foo.xyz{f1.4C4}"
  15. GZip圧縮されたxyzを読み込み、前と同じオプション設定で出力:
    molconvert smiles "foo.xyz.gz{gzip:xyz:f1.4C4}"
  16. 前と同様の設定で、但し複数分子を一つのMolファイルとして出力:
    molconvert mol "foo.xyz.gz{gzip:xyz:MULTISET,f1.4C4}"
  17. SDファイルを読み込み、指定カラム「SMILES」「ID」「logP」をテーブル形式のSMILESファイルに変換: with columns: SMILES, ID, and logP:
    molconvert smiles -c "ID<=1000&logP>=-2&logP<=4" -T ID:logP foo.sdf
  18. 一つのアタッチメントポイントを含んだR定義ファイル(rdef.mrv)を読み込み、in.mrv の R2 にアタッチして出力:
    molconvert mrv in.mrv -R2:1 rdef.mrv
  19. ファイルからフラグメントをアタッチして出力 (この時、アタッチメントポイントおよびR指定が定義されていないといけません):
    molconvert mrv in.mrv -R frags.mrv