Changes

Jump to navigation Jump to search
925 bytes removed ,  19:31, 30 September 2023
restructured, removed outdated links and infos
< [[Math]], [[XML]], [[Graphics]], [[MetaPost]] >
ConTeXt comes always came with the extensive chemistry module [[PPCHTeX]] which allows the support including drawing of chemical structures and the typesetting of reactions.
[[In MkII this was called PPCHTeX]] , which works also with plain TeX, and LaTeX and - of course - with ConTeXt.
* [http://www.pragma-ade.nl/ppchtex.htm PPCHTeX There doesn’t seem to be any current documentation (generalall previous links were long dead)] by Pragma* [http://www.pragma-ade.nl/document.htm PPCHTeX documentation] by Pragma* [http://www.ntg.nl/mailman/listinfo/ntg-ppchtex PPCHTeX mailing list]* [http://www.ntg, while chemistry support is still part of the distribution, but seems broken.nl/pipermail/ntg-ppchtex/ PPCHTeX mailing list archive]
Some other PPCHTeX links:* [http://mitglied.lycos.de/ppchtex/00index.html PPCHTeX structure database]* [http://www.mit.edu/afs/athena/contrib/tex-contrib/Chem2/ppchtex/doc/fh-ch-en.htm PPCHTeX FAQ] and [http://www.pragma-ade.nl/general/faqs/ PPCHTeX FAQ in PDF](rather old1997)* [http://www.tug.org/TUGboat/Articles/tb17-1/tb50hage.pdf TUG Boat article on PPCHTeX] by Hans Hagen and A.F . Otten1996
Some other links about chemistry in ConTeXt:
* [[manual:xchemml-p.pdf|ChemML]] ([[manual:xchemml-s.pdf|screen]]), [[MathML]] extension for chemistry
=== Formulae with chemic module =Using {{cmd|chemical}} ==
<texcode> \usemodule[This is the built-in version of the previous `chemic]\chemical{HSO_4^{-}}</texcode>` module.
<contextsource="yes"> \usemodule[chemic]
\chemical{HSO_4^{-}}
</context>
* It You can also be used to typeset chemical ''reactions'':
<texcodecontext source="yes">\usemodule[chemic]
\startformula
\chemical{2H_2,+,O_2,->,2H_2O}
\stopformula
</texcodecontext> == Chemical structures == (The “good” images are old; the broken ones are the result of the current code.) <context source="yes"> \startchemical \chemical[FIVE,FRONT,BB125,+SB3,-SB4,Z4][O] \chemical[FIVE,FRONT,+R1235,+RZ1235][H,H,\SR{HOH_2C},OH] \chemical[FIVE,FRONT,-R1235,-RZ1235][H,OH,H,H]\stopchemical</context> [[Image:Chemistry_example1.png]] <context source="yes"> \setupchemical[width=fit] \startchemical \chemical[SIX,B,C,MOV2,B,C,R234,RZ234,MOV5,MOV6,B,C,R561,RZ561] [R,R,R,R,R,R]\stopchemical</context> [[Image:chemistry_example2.png]] To draw this structure horizontally:<context source="yes"> \setupchemical[width=fit] \def\RotR{\rotate[rotation=270]{\ix R}} \rotate[rotation=90]{\startchemical \chemical[SIX,B,C,MOV2,B,C,R234,RZ234,MOV5,MOV6,B,C,R561,RZ561] [\RotR,\RotR,\RotR,\RotR,\RotR,\RotR]\stopchemical}</context>
[[Image:chemistry_example3.png]]
An example of an amino acid: Histidine (Ace-His-Nme).The rest of the amino acids are shown in [http://tt4sci.wordpress.com/2009/08/05/drawing-organic-molecules-in-latex-ii-amino-acids/ TT4Sci]<contextsource="yes">\usemoduledefinechemical[chemicradical]{\startformulachemical[SAVE,ONE,SB768,Z068][C,H,H]\chemical[MOV7,ONE,Z0][C] \chemical[MOV7,FIVE,ROT4,SB12345,EB42,Z1235,SR125,RZ125,RESTORE][N,C,N,C,H,H,H]}\startchemical[scale=big,size=big,left=2600,right=4200,bottom=2800,top=4500]\bottext{2H_2Histidine}\chemical[SIX,+SB23]\chemical[PB:Z1,SAVE,radical,RESTORE,PE]\chemical[PB:Z2,ONE,SB37,Z03,PE][\SL{C^{\alpha}},H^{\alpha 1}]\chemical[PB:Z3,SIX,Z5,SB4,Z4,PE][N,H]{\color{blue}\chemical[PB:Z4,SIX,Z2,SB2,DB1,Z31,PE][C{\text{\tiny{-1}}},O_2\SR{H_3C},O{\text{\tiny{->1}}}]}\chemical[SIX,MOV1,SB23]\chemical[PB:Z3,SIX,Z5,DB4,Z4,PE][C,O]{\color{red}\chemical[PB:Z2,SIX,Z4,SB34,Z53,PE][N{\text{\tiny{+1}}},H{\text{\tiny{+1}}},2H_2O\SL{CH_3}]}\stopformulastopchemical
</context>
=[[Image:histidine.png]]  == Simple Formulae in Text Mode ===
An alternative to using the chemistry module or mathmode for typesetting simple formulae are the three ConTeXt commands {{cmd|high}}, {{cmd|low}} and {{cmd|lohi}}. This might be useful if you want to typset the formula with the same font as the surrounding text (in titles or slanted fonts, although that might not be desired in all situations).
<texcode>\ss H\low{2}O also consists of H\high{+} and OH\high{--}.There are two main carbon isotopes: \lohi{6}{12}C and \lohi[left]{6}{13}C.</texcode> <contextsource="yes">
\ss H\low{2}O also consists of H\high{+} and OH\high{--}.\crlf
There are two main carbon isotopes: \lohi{6}{12}C and \lohi[left]{6}{13}C.
</context>
The main difference with the official chemic module built-in chemistry is that the <code>\molecule</code> from this example uses the same font as the one in surrounding text, while the official module always uses the (mostly roman ) math font (which is probably the proper way if you’re writing dozens of formulas). Hans’ module is also more powerful (can do much more trickery than a simple conversion of subscripts and superscripts). See the manuals listed above.
Alternatively one you can setup the <code>style</code> parameter used for chemical formulas manually:
<texcode>
\setupchemical[style=\bs]
</texcode>
 
== Chemical structures ==
 
(see also [http://mitglied.lycos.de/ppchtex/00index.html PPCHTeX structure database])
 
<texcode>
\usemodule[chemic]
 
\starttext
 
\startchemical
\chemical[FIVE,FRONT,BB125,+SB3,-SB4,Z4][O]
\chemical[FIVE,FRONT,+R1235,+RZ1235][H,H,\SR{HOH_2C},OH]
\chemical[FIVE,FRONT,-R1235,-RZ1235][H,OH,H,H]
\stopchemical
 
\stoptext
</texcode>
 
[[Image:Chemistry_example1.png]]
 
<texcode>
\usemodule[chemic]
\setupchemical[width=fit]
 
\starttext
 
\startchemical
\chemical[SIX,B,C,MOV2,B,C,R234,RZ234,MOV5,MOV6,B,C,R561,RZ561]
[R,R,R,R,R,R]
\stopchemical
 
\stoptext
</texcode>
 
[[Image:chemistry_example2.png]]
 
To draw this structure horizontally:
<texcode>
\usemodule[chemic]
\setupchemical[width=fit]
 
\def\RotR{\rotate[rotation=270]{\ix R}}
 
\starttext
 
\rotate[rotation=90]{
\startchemical
\chemical[SIX,B,C,MOV2,B,C,R234,RZ234,MOV5,MOV6,B,C,R561,RZ561]
[\RotR,\RotR,\RotR,\RotR,\RotR,\RotR]
\stopchemical
}
 
\stoptext
</texcode>
 
[[Image:chemistry_example3.png]]
 
 
An example of an amino acid: Histidine (Ace-His-Nme).
The rest of the amino acids are shown in [http://tt4sci.wordpress.com/2009/08/05/drawing-organic-molecules-in-latex-ii-amino-acids/ TT4Sci]
<texcode>
\usepackage{color}
\usepackage{m-pictex,m-ch-en}
 
\definechemical[radical]
{\chemical[SAVE,ONE,SB768,Z068][C,H,H]
\chemical[MOV7,ONE,Z0][C]
\chemical[MOV7,FIVE,ROT4,SB12345,EB42,Z1235,SR125,RZ125,RESTORE][N,C,N,C,H,H,H]}
\startchemical
[scale=big,size=big,left=2600,right=4200,bottom=2800,top=4500]
\bottext{Histidine}
\chemical[SIX,SB23]
\chemical[PB:Z1,SAVE,radical,RESTORE,PE]
\chemical[PB:Z2,ONE,SB37,Z03,PE][\SL{C^{\alpha}},H^{\alpha 1}]
\chemical[PB:Z3,SIX,Z5,SB4,Z4,PE][N,H]
{\color{blue}
\chemical[PB:Z4,SIX,Z2,SB2,DB1,Z31,PE][C{\text{\tiny{-1}}},\SR{H_3C},O{\text{\tiny{-1}}}]}
\chemical[SIX,MOV1,SB23]
\chemical[PB:Z3,SIX,Z5,DB4,Z4,PE][C,O]
{\color{red}
\chemical[PB:Z2,SIX,Z4,SB34,Z53,PE][N{\text{\tiny{+1}}},H{\text{\tiny{+1}}},\SL{CH_3}]}
\stopchemical
</texcode>
 
[[Image:histidine.png]]
[[Category:Sciences]]

Navigation menu