LaTeX/Chemia

Z Wikibooks, biblioteki wolnych podręczników.
Przejdź do nawigacji Przejdź do wyszukiwania

Chemfig jest pakietem umożliwiającym rysowanie dwuwymiarowych struktur chemicznych. Jest alternatywą dla pakietu ochem. Zaletą pakietu chemfig jest to, iż korzysta on pakietu tikz do rysowania grafiki, a nie języka Perl jak pakiet ochem. Aby użyć chemfig w sowim dokumencie, należy w preambule załadować pakiet:

\usepackage{chemfig}

Podstawy[edytuj]

Podstawową komendą używaną w tym pakiecie jest \chemfig{}:

\chemfig{<atom1><bond type>[<angle>,<coeff>,<tikz code>]<atom2>}

<angle> jest określeniem kąta pomiędzy atomami. Występują trzy typy kątów: absolute, relative, oraz predefined. Kąty typuabsolute pozwalają na wyrysowanie wiązania pod konkretnym kątem (od 0 do 360°) i reprezentowane są przez komendę [:<absolute angle>]. Kąty typu relative określa się komendą [::<relative angle>], które wstawia linię o podanym nachyleniu w stosunku do poprzedniego wiązania. Ostatnim typem jest predefined, który określają liczby całkowite od 1-7 określające kąty co 45°. Poniżej przedstawiono przykłądowy kod tego typu kątów.

\chemfig{(-[:0,1.5,,,draw=none]\scriptstyle\color{red}0)
(-[1]1)(-[:45,1.5,,,draw=none]\scriptstyle\color{red}45)
(-[2]2)(-[:90,1.5,,,draw=none]\scriptstyle\color{red}90)
(-[3]3)(-[:135,1.5,,,draw=none]\scriptstyle\color{red}135)
(-[4]4)(-[:180,1.5,,,draw=none]\scriptstyle\color{red}180)
(-[5]5)(-[:225,1.5,,,draw=none]\scriptstyle\color{red}225)
(-[6]6)(-[:270,1.5,,,draw=none]\scriptstyle\color{red}270)
(-[7]7)(-[:315,1.5,,,draw=none]\scriptstyle\color{red}315)
-0}
Chemfig angles.png

<bond type> określa rodzaj wiązania pomiędzy <atom1> a <atom2>. Występuje dziewięć typów wiązań:

\chemfig{A-B}\\
\chemfig{A=B}\\
\chemfig{A~B}\\
\chemfig{A>B}\\
\chemfig{A<B}\\
\chemfig{A>:B}\\
\chemfig{A<:B}\\
\chemfig{A>|B}\\
\chemfig{A<|B}\\
Chemfig bonds.png

<coeff> określa czynnik, zwiększający długość wiązania.

<tikz code> wprowadza dodatkowe opcje dotyczące koloru lub stylu wiązania.

Wzór strukturalny metanu można otrzymać w następujący sposób:

\chemfig{C(-[:0]H)(-[:90]H)(-[:180]H)(-[:270]H)}
Methane chemfig.png

Budowa bardziej skomplikowanych związków polega na zagnieżdżaniu.

Wzory szkieletowe[edytuj]

Wzory szkieletowe można otrzymać w następujący sposób:

\chemfig{-[:30]-[:-30]-[:30]}
Butane-skeletal.png
\chemfig{-[:30]=[:-30]-[:30]}
Skeletondiagram2.png


Pierścienie[edytuj]

Pierścienie powstają przez użycie składni<atom>*<n>(kod), gdzie "n" jest liczbą boków pierścienia, a "kod" oznacza poszczególne atomy w pierścieniu wraz z wiązaniami.

\chemfig{A*6(-B-C-D-E-F-)}
Ring chemfig.png
\chemfig{A*5(-B-C-D-E-)}
Ring2 chemfig.png
\chemfig{*6(=-=-=-)}
Ring3 chemfig.png
\chemfig{**5(------)}
Ring4 chemfig.png


Wzór Lewisa[edytuj]

Wzory Lewisa można utworzyć przez użycie komendy:

\lewis{<electron angle><electron>,<atom>}

wewnątrz komendy \chemfig{}.


Jony[edytuj]

Jako przykład rozpatrzmy jon octanowy:

\chemfig{-(-[1]O^{-})=[7]O}
Acetate-ion2.png


Komendy chemfig opierają się na matematyce, dlatego znaki jonów muszą być dodawane w nawiasach.

Znak jonu może być także wpisany w okrąg przez użycie komend \oplus i \ominus:

\chemfig{-(-[1]O^{\ominus})=[7]O}
Acetate-ion.png

Alternatywnym rozwiązaniem jest wstawienie znaku jonu nad atom przez użycie \chemabove{}{}:

\chemfig{-\chemabove{N}{\scriptstyle\oplus}(=[1]O)-[7]O^{\ominus}}
Ion-example.png


Struktury rezonansowe i ładunki formalne[edytuj]

Struktury rezonansowe wymagają kilku komend matematycznych:

% zobacz rozdział "Matematyka zaawansowana" aby zrozumieć użycie \left i \right
% w preambule dodaj:
%	\usepackage{mathtools}	% \Longleftrightarrow
$\left\{\chemfig{O-N(=[:60]O)-[:300]O}\right\}
\Longleftrightarrow 
\left\{\chemfig{O=N(-[:60]O)-[:300]O}\right\} 
\Longleftrightarrow 
\left\{\chemfig{O-N(-[:60]O)=[:300]O}\right\}$


Reakcje chemiczne[edytuj]

Reakcje chemiczne można tworzyć w następujący sposób:

\chemrel[<arg1>][<arg2>]{<arrow code>}
\chemsign+	% produces a +

W komendzie \chemrel{}, <arg1> i <arg2> oznaczają tekst nad i pod strzałką reakcji.

Cztery typy strzałek reakcji chemicznych przedstawiono poniżej.

A\chemrel{->}B\par 
A\chemrel{<-}B\par 
A\chemrel{<->}B\par 
A\chemrel{<>}B
Types of arrows chemfig.svg

Nazewnictwo związków chemicznych[edytuj]

Związki chemiczne można nazywać używając komendy:

\chemname[<dim>]{\chemfig{<code of the molecule>}}{<nazwa>}

<dim> określa wolną przestrzeń między dołem obrazka a górną krawędzią nazwy związku (<nazwa>). Standardowo wysokość ta wynosi 1.5ex.

<name> określa nazwę, jaką użytkownik chce nadać związkowi.

\chemname{\chemfig{R-C(-[:-30]OH)=[:30]O}}{Kwas karboksylowy} 
\chemsign{+} 
\chemname{\chemfig{R’OH}}{Alkohol} 
\chemrel{->} 
\chemname{\chemfig{R-C(-[:-30]OR’)=[:30]O}}{Ester} 
\chemsign{+} 
\chemname{\chemfig{H_2O}}{Woda}
Reakcja z podpisami LaTeX.svg

W reakcji powyżej nazwy związków chemicznych są umieszczone o 1.5ex poniżej pierwszego związku chemicznego. Dzieje się tak, ponieważ kwas karboksylowy posiada dolną krawędź najniżej z wszystkich związków. Inaczej reakcja będzie wyglądać, jeśli zamienimy kolejność i jako pierwszy umieścimy alkohol.

\chemname{\chemfig{R’OH}}{Alcohol} 
\chemsign{+} 
\chemname{\chemfig{R-C(-[:-30]OH)=[:30]O}}{Carboxylic acid} 
\chemrel{->} 
\chemname{\chemfig{R-C(-[:-30]OR’)=[:30]O}}{Ester} 
\chemsign{+} 
\chemname{\chemfig{H_2O}}{Water}

Zmiany te mogą być usunięte poprzez zdefiniowanie związku, który ma dolną krawędź najniżej, poprzez użycie komendy \chemnameinit{} przed komendę dotyczącą danego związku. Przykład poniżej.

\chemnameinit{\chemfig{R-C(-[:-30]OH)=[:30]O}} 
\chemname{\chemfig{R’OH}}{Alcohol} 
\chemsign{+} 
\chemname{\chemfig{R-C(-[:-30]OH)=[:30]O}}{Carboxylic acid} 
\chemrel{->} 
\chemname{\chemfig{R-C(-[:-30]OR’)=[:30]O}}{Ester} 
\chemsign{+} 
\chemname{\chemfig{H_2O}}{Water} 
\chemnameinit{}

Dodatkowo wpisanie \\w nazwie spowoduje złamanie linii, pozwalając nazwie zająć więcej niż jedną linię.

Zaawansowana grafika chemiczna[edytuj]

Dla bardziej skomplikowanych struktur chemicznych, zaleca się skorzystanie z instrukcji chemfig, gdzie przedstawiono szczegółowy opis pakietu. (Link w języku angielskim)


Przypisy