今回は化学構造式の描画が可能なchemfigパッケージについて紹介する。
1. chemfigパッケージ
前回までは化学反応式の記述に優れたmhchem, 化合物名やラテン表記、記号の記述に優れたchemmacrosを紹介したが、今回のchemfigはベンゼン環などの化学構造式を表示する上で優れたパッケージになっている。使い方は以下のリンクなどに書かれている。
1. chemfigパッケージの基本 — 化学系のためのsphinxのquickチュートリアル 2.0 ドキュメント
chemfigパッケージによる構造式描画 - TeX Alchemist Online
詳細やダウンロードは公式ページ(英語)CTAN: Package chemfigにマニュアルのリンクhttps://ftp.jaist.ac.jp/pub/CTAN/macros/generic/chemfig/chemfig-en.pdfがある。
Cloud Latexを使用する場合は、\usepackage{chemfig}
とすればロードすることができる。
\usepackage{chemfig}
2. 基本的なコマンド
基本的には\chemifig{コマンド}
として記述する。元素間の結合は-
:単結合,=
2重結合, ~
は3重結合になっている。また立体をあらわすくさびは<
または>
, 破線は<:
または:>
とすると表示することができる。
さらに-[,,,,オプション]
とすると結合線の色や太さ、パターンを指定することができる。
単結合:\chemfig{C - C}, 2重結合:\chemfig{C = C}, 三重結合:\chemfig{C ~ C} 立体結合:\chemfig{A < B > C <: D >: F} カスタム結合:\chemfig{C -[,,,,red,line width=2pt,dash pattern=on 1pt off 2pt] C }
結合角度を指定することで、平面的な化学構造式を表現することができる。結合角が45度の倍数であれば-[45度の倍数]
とすることで指定できる。任意の角度を指定するには[:角度]
とする。また、前の結合角度から相対角度として指定したい場合は[::相対角度]
とする。以下仮想的な化学構造式を前記3通りの方法で結合角度を指定した場合と実行例を示す。
結合角指定(45度おき):\chemfig{C - C-[1] C-[6]C} 結合角指定(角度指定):\chemfig{C - C-[:45] C-[:-90]C} 結合角指定(相対角度指定):\chemfig{C - C-[::45] C-[::-135]C}
次に分岐結合を表示する場合は、分岐する結合を括弧内に表記する。例えば=([-:60])[-:-60]
とすると2重結合の隣の主結合である-60度の単結合に対して60度の単結合が分岐する。
3分岐の場合は括弧を2つ用いて-(-[2])(-[6])-
とすると上下の分岐と主結合は直線上となる。
結合分岐:2分岐, \chemfig{ =(-[:60])-[:-60]}, 3分岐, \chemfig{ -(-[2])(-[6])-} 応用例:\chemfig{-[:-30]-[::60](=[2]O)-[::-60]=[::60](-[::60])-[::-60]}
特定の原子を指定して分岐させるには、直線構造の最後に-[:90,,3]OH
として3番目の原子;Cに対して結合角90度の単結合とOH基を追加することができる。
分岐を作成する方法でも同じような構造を表示することはできるが、以下のように主結合は省略できない。
特定の原子に結合:\chemfig{CH_3CH_2CH_3 -[:-90,,3] OH} \chemfig{CH_3 - CH_2 (-[:-90]OH)-CH_3}
3. 環状構造の表示
環状結合を表示するには*結合数(結合1結合2・・・)
とする。すべて具体的な原子を表示するには5員環の場合A*5(-B=C-D-E=)
とする。最初の原子はAで残りを省略する場合はA*5(-=--=)
とする。
\chemfig{A*5(-B=C-D-E=)} , \chemfig{A*5(-=--=)}
ベンゼン環を表示するには*6(-=-=-=)
とするか**6(------)
とすれば環内に円が入った表記になる。
\chemfig{*6(-=-=-=)},\chemfig{**6(------)}
環状構造の途中から分岐するには(-A-B=C)
とすれば分岐直鎖が表示される。
\chemfig{X*6(-=-(-A-B=C)=-=-)}
さらに環状構造の原子のところに環状構造をさらに記述すると環状構造が連結した構造が表示できる。
\chemfig{A*6(-B*5(----)=-=-=)}, \chemfig{*5(--*6(-*4(-*5(----)--)----)---)}
3. まとめ
今回は化学構造式を表示できるchemfigの基本的なコマンドと環状構造の表記方法について紹介した。