LaTeX/Хемијска графика
chemfig је пакет који се користи за цртање 2D хемијских структура. Он је алтернатива пакету ochem. Где ochem захтева Perl за цртање хемијских структура, chemfig користи tikz пакет. chemfig се користи тако што се у преамбулу дода следеће:
\usepackage{chemfig}
Основна примена
[уреди]Примарна команда која се користи у овом пакету је \chemfig{}:
\chemfig{<atom1><bond type>[<angle>,<coeff>,<tikz code>]<atom2>}
<angle> је угао између два атома (или чвора). Постоје три типа углова: апсолутни, релативни, и одређени. Апсолутни углови дају прецизне углове (обично, 0 до 360, мада могу да буду и негативни),и приказани су синтаксом [:<absolute angle>]. Релативни углови захтевају синтаксу [::<relative angle>] и продукују угао релативан претходној вези. Коначно, одређени углови су цели бројеви од 0 до 7 тојест интервали од 45 степени. Они се праве помоћу синтаксе [< predefined angle>]. Одређени углови and и њихови одговарајући апсолутни углови су приказани у дијаграму испод.
\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}
|
<тип везе> описује везу која држи <atom1> и <atom2>. Постоје 9 различитих типова веза:
\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> претставља фактор за који ће се дужина везе увећавати .
<tikz code> укључује додатне опције које се односе на боју и стил везе.
Молекул метана, на пример, може се направити на следећи начин:
\chemfig{C(-[:0]H)(-[:90]H)(-[:180]H)(-[:270]H)}
|
Линеарни молекули (као што је метан) су слаб пример овога, али молекули у chemfig се праве помоћу умрежавања(nesting).
Скелетни диjаграми
[уреди]Скелетни диjаграми се могу правити на следећи начин:
\chemfig{-[:30]-[:-30]-[:30]}
|
\chemfig{-[:30]=[:-30]-[:30]}
|
Прстенови
[уреди]Прстенови се праве помоћу синтаксе <atom>*<n>(code), где "n" представља број страна у прстену а "code" представља специфичан садржај сваког прстена (везе и атоми).
\chemfig{A*6(-B-C-D-E-F-)}
|
\chemfig{A*5(-B-C-D-E-)}
|
\chemfig{*6(=-=-=-)}
|
\chemfig{**5(------)}
|
Луисове структуре
[уреди]Луисове структуре се праве помоћу синтаксе \lewis{<n1><n2>...<ni>,<atom>}, где је <ni> број између 0 и 7 и представља позицију електрона. У основном случају, електрони се представљају (-). Додавањем (.) или (:) после броја приказиваће усамљене или спарене електроне респективно.
\lewis{0.2.4.6.,C}
|
луисове структуре можемо убацити и у оквиру \chemfig{}.
\chemfig{H-[:52.24]\lewis{1:3:,O}-[::-104.48]H}
|
Јони
[уреди]На пример, јон ацетата:
\chemfig{-(-[1]O^{-})=[7]O}
|
Из разлога што chemfig команде користе math mode, наелектрисање јона се може додати користећи superscripts (једно упозорење: негативни јон захтева да се знак минус пише у заградама, као у примеру).
Наелектрисање јона се може заокружити користећи \oplus и \ominus:
\chemfig{-(-[1]O^{\ominus})=[7]O}
|
Алтернативно, наелектрисања се могу поставити изнад јона са \chemabove{}{}:
\chemfig{-\chemabove{N}{\scriptstyle\oplus}(=[1]O)-[7]O^{\ominus}}
|
Структуре за резонанцију и формално наелекртисање
[уреди]Структуре резонанције захтевају неколико математичких команди:
% 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\}$
Хемијске реакције
[уреди]Команде \chemrel и \chemsign су обрисане из chemfig пакета у последњој верзији, па тако за цртање хемијских реакција у претходној верзији, морало се користити преспективно \arrow и \+ команде у блоку окружене са \schemestart и \schemestop.
Постоји неколико типова стрелица које се могу нацртати са \arrow командом:
{{LaTeX/Пример|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=}}
За више информација о \arrow команди и хемијским реакцијама у chemfig уопште, погледајте the Part IV "Reaction schemes" на chemfig documentation file.
Старије верзије
[уреди]Хемијске реакције се могу направити помоћу следеће команде:
\chemrel[<arg1>][<arg2>]{<arrow code>}
\chemsign+ % produces a +
У \chemrel{}, <arg1> и <arg2> представљају текст изнад и испод стрелице, респективно.
Постоје четири типа стрелица које се могу направити помоћу \chemrel{}:
A\chemrel{->}B\par
A\chemrel{<-}B\par
A\chemrel{<->}B\par
A\chemrel{<>}B
Именовање хемијских графика
[уреди]Молекуле можемо именовати следећом командом
\chemname[<dim>]{\chemfig{<code of the molecule>}}{<name>}
<dim> се убацује између доње стране молекула и горње стране имена дефинисаног са <name>. Оно је у основи 1.5ex .
<name> ће бити центрирано у зависности од молекула који описује.
\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}
у реакцији изнад, \chemname{} убацује 1.5ex плус дубина молекула карбоксилне киселине између сваког молекула, и њихових респективних имена. Ово се дешава зато што график првог молекула у реакцији (карбоксилна киселина) се протеже дубље него остали молекули. Другачије резултате би добили када би ставили алкохол на прво место:
\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{<deepest molecule>} пре прве инстанце од \chemname{} у реакцији и додавањем \chemnameinit{} после реакције:
\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{}
На крају, додавањем \\ у <name> проузроковаће прекид линије, што ће омогућити имену да се протеже неколико линија.
Напредна графика
[уреди]За напредне команде и примере, посетите chemfig manual,где можете пронаћи темељнија и комплетнија објашњења .
Пакет mhchem
[уреди]mhchem је пакет за куцање хемијских формула и једначина. Као и 2D структура. Да бисте користили овај пакет, додајте следеће команде у преамбули:
\usepackage[version=3]{mhchem}
Хемијски типови се укључују командом \ce. На пример
\ce{3H2O} \\
\ce{1/2H2O} \\
\ce{AgCl2-} \\
\ce{H2_{(aq)}} \\
Неколико ствари је већ укуцано; 2 in \ce{H2O} аутоматски је subscript-ован без додатних команди . Број типова претходи формули. 1/2 као и други разломци су атоматски унети као у \ce{1/2H2O}. Наелектрисање у \ce{AgCl2-} је аотоматски superscript-овано. Ако наелектрисање није 1 или -1, ^ ће га superscript-овати , као у \ce{AgCl2-}. Фаза није аутоматски superscript-ована и мора се затворити заградама и претходити са _ као у \ce{H2_{(aq)}.
Пакет XyMTeX
[уреди]Следећи код репродукује слику испод 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}