LaTeX/Hemijska grafika
chemfig je paket koji se koristi za crtanje 2D hemijskih struktura. On je alternativa paketu ochem. Gde ochem zahteva Perl za crtanje hemijskih struktura, chemfig koristi tikz paket. chemfig se koristi tako što se u preambulu doda sledeće:
\usepackage{chemfig}
Osnovna primena
urediPrimarna komanda koja se koristi u ovom paketu je \chemfig{}:
\chemfig{<atom1><bond type>[<angle>,<coeff>,<tikz code>]<atom2>}
<angle> je ugao između dva atoma (ili čvora). Postoje tri tipa uglova: apsolutni, relativni, i određeni. Apsolutni uglovi daju precizne uglove (obično, 0 do 360, mada mogu da budu i negativni),i prikazani su sintaksom [:<absolute angle>]. Relativni uglovi zahtevaju sintaksu [::<relative angle>] i produkuju ugao relativan prethodnoj vezi. Konačno, određeni uglovi su celi brojevi od 0 do 7 tojest intervali od 45 stepeni. Oni se prave pomoću sintakse [< predefined angle>]. Određeni uglovi and i njihovi odgovarajući apsolutni uglovi su prikazani u dijagramu ispod.
\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}
|
<tip veze> opisuje vezu koja drži <atom1> i <atom2>. Postoje 9 različitih tipova veza:
\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}\\
|
<coeff> pretstavlja faktor za koji će se dužina veze uvećavati .
<tikz code> uključuje dodatne opcije koje se odnose na boju i stil veze.
Molekul metana, na primer, može se napraviti na sledeći način:
\chemfig{C(-[:0]H)(-[:90]H)(-[:180]H)(-[:270]H)}
|
Linearni molekuli (kao što je metan) su slab primer ovoga, ali molekuli u chemfig se prave pomoću umrežavanja(nesting).
Skeletni dijagrami
urediSkeletni dijagrami se mogu praviti na sledeći način:
\chemfig{-[:30]-[:-30]-[:30]}
|
\chemfig{-[:30]=[:-30]-[:30]}
|
Prstenovi
urediPrstenovi se prave pomoću sintakse <atom>*<n>(code), gde "n" predstavlja broj strana u prstenu a "code" predstavlja specifičan sadržaj svakog prstena (veze i atomi).
\chemfig{A*6(-B-C-D-E-F-)}
|
\chemfig{A*5(-B-C-D-E-)}
|
\chemfig{*6(=-=-=-)}
|
\chemfig{**5(------)}
|
Luisove strukture
urediLuisove strukture se prave pomoću sintakse \lewis{<n1><n2>...<ni>,<atom>}, gde je <ni> broj između 0 i 7 i predstavlja poziciju elektrona. U osnovnom slučaju, elektroni se predstavljaju (-). Dodavanjem (.) ili (:) posle broja prikazivaće usamljene ili sparene elektrone respektivno.
\lewis{0.2.4.6.,C}
|
luisove strukture možemo ubaciti i u okviru \chemfig{}.
\chemfig{H-[:52.24]\lewis{1:3:,O}-[::-104.48]H}
|
Joni
urediNa primer, jon acetata:
\chemfig{-(-[1]O^{-})=[7]O}
|
Iz razloga što chemfig komande koriste math mode, naelektrisanje jona se može dodati koristeći superscripts (jedno upozorenje: negativni jon zahteva da se znak minus piše u zagradama, kao u primeru).
Naelektrisanje jona se može zaokružiti koristeći \oplus i \ominus:
\chemfig{-(-[1]O^{\ominus})=[7]O}
|
Alternativno, naelektrisanja se mogu postaviti iznad jona sa \chemabove{}{}:
\chemfig{-\chemabove{N}{\scriptstyle\oplus}(=[1]O)-[7]O^{\ominus}}
|
Strukture za rezonanciju i formalno naelekrtisanje
urediStrukture rezonancije zahtevaju nekoliko matematičkih komandi:
% see "Advanced Mathematics" for use of \left and \right
% add to preamble:
% \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\}$
Hemijske reakcije
urediKomande \chemrel i \chemsign su obrisane iz chemfig paketa u poslednjoj verziji, pa tako za crtanje hemijskih reakcija u prethodnoj verziji, moralo se koristiti prespektivno \arrow i \+ komande u bloku okružene sa \schemestart i \schemestop.
Postoji nekoliko tipova strelica koje se mogu nacrtati sa \arrow komandom:
{{LaTeX/Primer|code= \schemestart A\arrow{->}B\schemestop\par % by default \schemestart A\arrow{-/>}B \schemestop\par \schemestart A\arrow{<-}B \schemestop\par \schemestart A\arrow{<->}B \schemestop\par \schemestart A\arrow{<=>}B \schemestop\par \schemestart A\arrow{<->>}B \schemestop\par \schemestart A\arrow{<<->}B \schemestop\par \schemestart A\arrow{0}B \schemestop\par \schemestart A\arrow{-U>}B \schemestop\par \schemestart A\arrow[,,->] B\arrow[,,-{Triangle[slant=0.5,blue,width=10pt]}] C\arrow[,,-{CF[sharp]}] D \+ E \schemestop |render= }}
Za više informacija o \arrow komandi i hemijskim reakcijama u chemfig uopšte, pogledajte the Part IV "Reaction schemes" na chemfig documentation file.
Starije verzije
urediHemijske reakcije se mogu napraviti pomoću sledeće komande:
\chemrel[<arg1>][<arg2>]{<arrow code>}
\chemsign+ % produces a +
U \chemrel{}, <arg1> i <arg2> predstavljaju tekst iznad i ispod strelice, respektivno.
Postoje četiri tipa strelica koje se mogu napraviti pomoću \chemrel{}:
A\chemrel{->}B\par
A\chemrel{<-}B\par
A\chemrel{<->}B\par
A\chemrel{<>}B
Imenovanje hemijskih grafika
urediMolekule možemo imenovati sledećom komandom
\chemname[<dim>]{\chemfig{<code of the molecule>}}{<name>}
<dim> se ubacuje između donje strane molekula i gornje strane imena definisanog sa <name>. Ono je u osnovi 1.5ex .
<name> će biti centrirano u zavisnosti od molekula koji opisuje.
\chemname{\chemfig{R-C(-[:-30]OH)=[:30]O}}{Carboxylic acid}
\chemsign{+}
\chemname{\chemfig{R’OH}}{Alcohol}
\chemrel{->}
\chemname{\chemfig{R-C(-[:-30]OR’)=[:30]O}}{Ester}
\chemsign{+}
\chemname{\chemfig{H_2O}}{Water}
u reakciji iznad, \chemname{} ubacuje 1.5ex plus dubina molekula karboksilne kiseline između svakog molekula, i njihovih respektivnih imena. Ovo se dešava zato što grafik prvog molekula u reakciji (karboksilna kiselina) se proteže dublje nego ostali molekuli. Drugačije rezultate bi dobili kada bi stavili alkohol na prvo mesto:
\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}
Ovo se popravlja dodavanjem \chemnameinit{<deepest molecule>} pre prve instance od \chemname{} u reakciji i dodavanjem \chemnameinit{} posle reakcije:
\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{}
Na kraju, dodavanjem \\ u <name> prouzrokovaće prekid linije, što će omogućiti imenu da se proteže nekoliko linija.
Napredna grafika
urediZa napredne komande i primere, posetite chemfig manual,gde možete pronaći temeljnija i kompletnija objašnjenja .
Paket mhchem
uredimhchem je paket za kucanje hemijskih formula i jednačina. Kao i 2D struktura. Da biste koristili ovaj paket, dodajte sledeće komande u preambuli:
\usepackage[version=3]{mhchem}
Hemijski tipovi se uključuju komandom \ce. Na primer
\ce{3H2O} \\
\ce{1/2H2O} \\
\ce{AgCl2-} \\
\ce{H2_{(aq)}} \\
Nekoliko stvari je već ukucano; 2 in \ce{H2O} automatski je subscript-ovan bez dodatnih komandi . Broj tipova prethodi formuli. 1/2 kao i drugi razlomci su atomatski uneti kao u \ce{1/2H2O}. Naelektrisanje u \ce{AgCl2-} je aotomatski superscript-ovano. Ako naelektrisanje nije 1 ili -1, ^ će ga superscript-ovati , kao u \ce{AgCl2-}. Faza nije automatski superscript-ovana i mora se zatvoriti zagradama i prethoditi sa _ kao u \ce{H2_{(aq)}.
Paket XyMTeX
urediSledeći kod reprodukuje sliku ispod corticosterone .
\documentclass{letter}
\usepackage{epic,carom}
\pagestyle{empty}
\begin{document}
\begin{picture}(1000,500)
\put(0,0){\steroid[d]{3D==O;{{10}}==\lmoiety{H$_{3}$C};{{13}}==\lmoiety{H$_{3}$C};{{11}}==HO}}
\put(684,606){\sixunitv{}{2D==O;1==OH}{cdef}}
\end{picture}
\end{document}