From fcf03a2973004ba816be26780ea00d9b790948fc Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Thu, 11 Feb 2021 22:54:29 +0000 Subject: mcf2graph (11feb21) git-svn-id: svn://tug.org/texlive/trunk@57714 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG | 17 +- Master/texmf-dist/doc/metapost/mcf2graph/README | 23 +- .../doc/metapost/mcf2graph/mcf_exa_soc.mf | 373 +++++++++++---------- .../doc/metapost/mcf2graph/mcf_example.pdf | Bin 534937 -> 535780 bytes .../doc/metapost/mcf2graph/mcf_man_soc.mf | 97 +++--- .../doc/metapost/mcf2graph/mcf_manual.pdf | Bin 634517 -> 633398 bytes .../doc/metapost/mcf2graph/mcf_manual.tex | 137 ++++---- .../doc/metapost/mcf2graph/mcf_mplib_exa.pdf | Bin 201163 -> 202100 bytes .../doc/metapost/mcf2graph/mcf_mplib_exa.tex | 186 +++++----- Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf | 330 ++++++++---------- 10 files changed, 557 insertions(+), 606 deletions(-) (limited to 'Master') diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG b/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG index 21f32d1af19..d0926ab2093 100644 --- a/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG +++ b/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG @@ -1,6 +1,21 @@ ******************************************************************************* - Changelog of mcf2graph software package by Akira Yamaji 2021-01-31 + Changelog of mcf2graph software package by Akira Yamaji 2021-02-11 ******************************************************************************* +[ver. 4.57 / 2021-02-11] + -change syntax + n:@ => @n + n:# => &n + &"+" => "+" + &"-" => "-" + |=n => #n + =| => ## + -delete command `` + -delete command a@#b + -delete command A[1],A[-1] + -delete bond type d,w,z + -fix bug in MOL file output + -update MCF manual,example + [ver. 4.56 / 2021-01-31] -fix bug in molecular weight calculation -fix bug in report output diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/README b/Master/texmf-dist/doc/metapost/mcf2graph/README index 741ccc8dcae..7b4bb20d032 100644 --- a/Master/texmf-dist/doc/metapost/mcf2graph/README +++ b/Master/texmf-dist/doc/metapost/mcf2graph/README @@ -1,7 +1,7 @@ ******************************************************************************** mcf2graph : Convert Molecular Coding Format to graphics with METAFONT/METAPOST Author : Akira Yamaji - version : 4.56 2021-01-31 + version : 4.57 2021-02-11 E-mail : mcf2graph@gmail.com Located at : http://www.ctan.org/pkg/mcf2graph ******************************************************************************** @@ -35,16 +35,17 @@ ( 1) >mpost -s bboxmargin=0 FILENAME => output no graphic file ( 2) >mpost -s bboxmargin=1 FILENAME => output first font only (for test) ( 3) >mpost -s ahangle=0 FILENAME => output eps file (.mps default) - ( 4) >mpost -s ahangle=1 FILENAME => output png file - ( 5) >mpost -s ahangle=2 FILENAME => output svg file - ( 6) >mpost -s ahangle=3 FILENAME => output eps file (.eps) - ( 7) >mpost -s ahlength=1 FILENAME => output aux file (tag1:var1;tag2:var2;) - ( 8) >mpost -s ahlength=2 FILENAME => output aux file (tag1;tag2; var1;var2;) - ( 9) >mpost -s ahlength=3 FILENAME => output report file - (10) >mpost -s ahlength=5 FILENAME => output mol file(V2000) - (11) >mpost -s ahlength=6 FILENAME => output mol file(V3000) - (12) >mpost -s labeloffset=1 FILENAME => use plain.mp 'label','drawarrow' - (13) >mpost -s labeloffset=2 FILENAME => atomfont="uhvr8r" + ( 4) >mpost -s ahangle=1 FILENAME => output png file (600dpi) + ( 5) >mpost -s ahangle=13 FILENAME => output png file (1200dpi) + ( 6) >mpost -s ahangle=2 FILENAME => output svg file + ( 7) >mpost -s ahangle=3 FILENAME => output eps file (.eps) + ( 8) >mpost -s ahlength=1 FILENAME => output aux file (tag1:var1;tag2:var2;) + ( 9) >mpost -s ahlength=2 FILENAME => output aux file (tag1;tag2; var1;var2;) + (10) >mpost -s ahlength=3 FILENAME => output report file + (11) >mpost -s ahlength=5 FILENAME => output mol file(V2000) + (12) >mpost -s ahlength=6 FILENAME => output mol file(V3000) + (13) >mpost -s labeloffset=1 FILENAME => use plain.mp 'label','drawarrow' + (14) >mpost -s labeloffset=2 FILENAME => atomfont="uhvr8r" 4. License Permission is hereby granted, free of charge, to any person obtaining a copy diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mf b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mf index bb1984b27ad..b1675647755 100644 --- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mf +++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mf @@ -1,8 +1,8 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% Molecular Coding Format for mcf_example.tex by Akira Yamaji 2021.01.31 +% Molecular Coding Format for mcf_example.tex by Akira Yamaji 2021.02.11 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -input mcf2graph.mf; %%% it must be version 4.56 or later -message "* mcf_exa_soc 2021.01.31"; +input mcf2graph.mf; %%% it must be version 4.57 +message "* mcf_exa_soc 2021.02.11"; message ""; %------------------------------------------------------------------------- fsize:=(35mm,24mm); @@ -61,7 +61,7 @@ beginfont("EN:Geraniol","MW:154.25") endfont %*************************************************************************** beginfont("EN:Limonene","MW:136.24") - MC(<30,?6,2=dl,2:/_,5:*\,/_,!!) + MC(<30,?6,2=dl,2:/_,@5,*\,/_,!!) endfont %*************************************************************************** beginfont("EN:l-Menthol","MW:156.27") @@ -89,17 +89,17 @@ beginfont("EN:Sphingosine","MW:299.50") endfont %************************************************************************** beginfont("EN:Tocopherol","MW:430.717") - MC(<30,Ph,3=?6,7:O,{1,2,5}:/_,8:/*_^60,6:/OH,8:\,|,!12,{4,8}:/*_,12:/_) + MC(<30,Ph,3=?6,7:O,{1,2,5}:/_,8:/*_^60,6:/OH,@8,\,|,!12,{4,8}:/*_,12:/_) endfont %*************************************************************************** beginfont("EN:Carotene","MW:536.8726") MC(<30,?6,4=dl,3:??,5:/_, - 4:\,|,!18,{1,3,5,7,9,11,13,15,17}=dr,{3,7,12,16}:/_, + @4,\,|,!18,{1,3,5,7,9,11,13,15,17}=dr,{3,7,12,16}:/_, ?6,-6=dl,-5:/_,-1:??) endfont %*************************************************************************** beginfont("EN:Adrenalin","MW:183.21") - MC(<30,Ph,{1,6}:/OH,4:\,*/OH,!2,NH,!) + MC(<30,Ph,{1,6}:/OH,@4,\,*/OH,!2,NH,!) endfont %*************************************************************************** beginfont("EN:Caffeine","MW:194.194") @@ -107,37 +107,38 @@ beginfont("EN:Caffeine","MW:194.194") endfont %*************************************************************************** beginfont("EN:Nicotine","MW:162.23"); - MC(<30,Ph,2:N,4:\,?5,8:N!) + MC(<30,Ph,2:N,@4,\,?5,8:N!) endfont; %************************************************************************** beginfont("EN:Capsaicin","MW:305.418") - MC(<30,Ph,1:/OH,6:/O!,4:\,!,NH,!,//O,!7,?!,-3=d) + MC(<30,Ph,1:/OH,6:/O!,@4,\,!,NH,!,//O,!7,?!,-3=dl) endfont %*************************************************************************** beginfont("EN:Thiamine","MW:300.81") - MC(<30,Ph,4:/NH2,3:\`1,!,<-12,?5,{-1,-4}=dl,{1,5,8}:N,11:S,{6,9}:/_, - -3:\,!2,OH,8:&"+"^72,11:@,-48~0`2.4,Cl[-1]) + MC(<30,Ph,4:/NH2,@3,\`1,!,<-12,?5,{-1,-4}=dl,{1,5,8}:N,11:S,{6,9}:/_, + @-3,\,!2,OH,8:"+"^72) + MCat(.95,.75)(Cl,"-"^15) endfont %************************************************************************** beginfont("EN:Gibberellin A3","MW:346.379"); - MC(<18,?5,3=?7,5=?6[12],8:@,160`1.3,3:#,13=dl,6=wf,8=wb, - 5:@,40~zf`1,O,50,//O^180,14~zb:#, + MC(<18,?5,3=?7,5=?6[12],@8,160`1.3,&3,13=dl,6=wf,8=wb, + @5,40~zf`1,O,50,//O^180,&14~zb, 2:/COOH,7://_,13:*/OH,8:/*OH,14:*/_,{1,4}:*/H^60) endfont; %************************************************************************** beginfont("EN:Cholesterol","MW:386.664") MC(<30,?6,{-4,-2}=?6,-4=?5,7=dl, 1:*/OH,{4,12}:*/_^60, - 10:/*H^180,{11,-1}:/*H^-60,9:*/H^60,-1:@,17,/*_,!4,?!) + 10:/*H^180,{11,-1}:/*H^-60,9:*/H^60,@-1,17,/*_,!4,?!) endfont %*************************************************************************** beginfont("EN:Riboflavin","MW:376.37") MC(<30,Ph,3=?6,9=?6,{8,16}=dl,{7,10,14}:N,12:NH,{11,13}://O,{1,6}:/_, - 10:\`1.2,!,*/OH,!,/*OH,!,*/OH,!2,OH) + @10,\`1.2,!,*/OH,!,/*OH,!,*/OH,!2,OH) endfont %*************************************************************************** beginfont("EN:Resveratrol","MW:228.24") - MC(<30,Ph,4:\,!!,!,Ph,{2,6,-3}:/OH) + MC(<30,Ph,@4,\,!!,!,Ph,{2,6,-3}:/OH) endfont %*************************************************************************** beginfont("EN:Glutathione","MW:307.33") @@ -149,23 +150,23 @@ beginfont("EN:Hexaphenylbenzene","MW:534.6876") endfont %*************************************************************************** beginfont("EN:Kekulene","MW:600.7") - MC(<30,Ph,{3,-2,-3,-2,-3,-2,-3,-2,-3,-2}=?6,(-3,6)=?6[3],-4@#6, + MC(<30,Ph,{3,-2,-3,-2,-3,-2,-3,-2,-3,-2}=?6,(-3,6)=?6[3],@-4,&6, {8,12,14,16,18,22,24,26,28,32,34,36,38,42,44,46,48,52,54,56,58}=dl) endfont %*************************************************************************** beginfont("EN:18-Crown-6","MW:264.32") MC(<-180,O,60,60,60,O,-60,60,60,O,-60,60,60, - O,-60,60,60,O,-60,60,60,O,-60,60,1:#) + O,-60,60,60,O,-60,60,60,O,-60,60,&1) endfont %*************************************************************************** beginfont("EN:Porphyrin","MW:310.4") -MC(<9,|=1,?5,3:\,54,?5,-2:\,54,?5,-2:\,54,?5,-2:\,5:#,=|, +MC(<9,#1,?5,@3,\,54,?5,@-2,\,54,?5,@-2,\,54,?5,@-2,\,&5,##, {1,4,6,8,10,14,16,18,21,23,27}=dl,{4,17}:N,{11,23}:NH) endfont %*************************************************************************** beginfont("EN:Sulflower","MW:448.69") - MC(<67.5,?8,{1,3,5,7}=?5,11:@,30`1.15,12:#,14:@,30`1.15,15:#, - 17:@,30`1.15,18:#,20:@,30`1.15,9:#,{9,12,13,16,17,20,21,24}=dl, + MC(<67.5,?8,{1,3,5,7}=?5,@11,30`1.15,&12,@14,30`1.15,&15, + @17,30`1.15,&18,@20,30`1.15,&9,{9,12,13,16,17,20,21,24}=dl, {10,13,16,19,21,22,23,24}:S) endfont %*************************************************************************** @@ -178,11 +179,12 @@ beginfont("EN:Melamine","MW:126.12") endfont %*************************************************************************** beginfont("EN:Sudan red 1","MW:248.28") - MC(<30,Ph,1=Ph,4:/OH,3:\,N,!!,N,!,Ph) + MC(<30,Ph,1=Ph,4:/OH,@3,\,N,!!,N,!,Ph) endfont %*************************************************************************** beginfont("EN:Basic blue 1","MW:319.86") - MC(<30,Ph,3=Ph,6=Ph,2:S,5:N,{8,13}:/N?!,2:&"+",9:@,0~0`1,Cl[-1]) + MC(<30,Ph,3=Ph,6=Ph,2:S,5:N,{8,13}:/N?!,2:"+") + MCat(1,.7)(Cl,"-"^15) endfont %*************************************************************************** beginfont("EN:Disperse violet 1","MW:238.25") @@ -190,7 +192,7 @@ beginfont("EN:Disperse violet 1","MW:238.25") endfont %*************************************************************************** beginfont("EN:Vat blue 1","MW:262.27") - MC(<30,Ph,3=?5,8:\\,?5,-3=dr,-3=Ph,{7,14}:NH,{9,11}://O) + MC(<30,Ph,3=?5,@8,\\,?5,-3=dr,-3=Ph,{7,14}:NH,{9,11}://O) endfont %*************************************************************************** beginfont("EN:Atrazine","MW:215.7") @@ -202,52 +204,53 @@ beginfont("EN:BHC","MW:290.83") endfont %*************************************************************************** beginfont("EN:pp-DDT","MW:354.49") - MC(<30,Ph,6:/Cl,3:\,/CCl3,!,Ph,-3:/Cl) + MC(<30,Ph,6:/Cl,@3,\,/CCl3,!,Ph,-3:/Cl) endfont %*************************************************************************** beginfont("EN:Endrin","MW:380.91") MC(<30,?6`1.3,3=?6,6=dl,9=?3,-1:O, - 2:@,210~wf`1.5,5:#~wb,7:@,210~zf`1.5,10:#~zb, + @2,210~wf`1.5,&5~wb,@7,210~zf`1.5,&10~zb, {1,2,5,6,12^-210,12^-150}:/Cl) endfont %*************************************************************************** beginfont("EN:Acrinathrin","MW:541.45") MC(<-30,?3,2^-35:*/_,2^35:/*Me, - 1:\,!~dl,!,//O,!,O,!,/CF3,!,CF3,3:\,//O,!,O,!,/CN,!,Ph,-4:\,O,-60,Ph) + @1,\,!~dl,!,//O,!,O,!,/CF3,!,CF3,@3,\,//O,!,O,!,/CN,!,Ph,@-4,\,O,-60,Ph) endfont %*************************************************************************** beginfont("EN:Cafenstrole","MW:350.4") -MC(<30,Ph,{2,4,6}:/_,3:\,SOO,!,|,?5,{2,5}=dl,{2,4,5}:N,-2:\,//O,!,N,/!,!2) +MC(<30,Ph,{2,4,6}:/_,@3,\,SOO,!,|,?5,{2,5}=dl,{2,4,5}:N,@-2,\,//O,!,N,/!,!2) endfont %*************************************************************************** beginfont("EN:Carfentrazone-ethyl","MW:412.19") - MC(<30,Ph,4:/F,6:/Cl,1:\,!,/Cl,!,//O,!,O,!2, - 3:\,|,?5,4=dl,{1,3,5}:N,-4://O,-3:/CF2,-2:/_) + MC(<30,Ph,4:/F,6:/Cl,@1,\,!,/Cl,!,//O,!,O,!2, + @3,\,|,?5,4=dl,{1,3,5}:N,-4://O,-3:/CF2,-2:/_) endfont %*************************************************************************** beginfont("EN:Carboxin","MW:235.301") -MC(<30,?6,3=dl,2:S,5:O,4:/_,3:\,//O,!,NH,!,Ph) +MC(<30,?6,3=dl,2:S,5:O,4:/_,@3,\,//O,!,NH,!,Ph) endfont %*************************************************************************** beginfont("EN:Clomazone","MW:239.7") - MC(<30,Ph,2:/Cl,3:\,!,|,?5,1:N,2:O,-2^-35:/_,-2^35:/_,-1://O) + MC(<30,Ph,2:/Cl,@3,\,!,|,?5,1:N,2:O,-2^-35:/_,-2^35:/_,-1://O) endfont %*************************************************************************** beginfont("EN:Halfenprox","MW:477.4") - MC(<30,Ph,6:\,O,!,/F^35,/F^-35,!,Br,3:\,!,??,!,O,!,!,Ph,-2:\,O,60,Ph) + MC(<30,Ph,@6,\,O,!,/F^35,/F^-35,!,Br,@3,\,!,??,!,O,!,!,Ph,@-2,\,O,60,Ph) endfont %*************************************************************************** beginfont("EN:Paraquat","MW:257.16") - MC(Ph,4:\,Ph,{1,10}:N!,1:&"+"^-90,10:&"+"^90, - 10:@,0`1.5~0,Cl[-1],90~0`.6,Cl[-1]) + MC(Ph,@4,\,Ph,{1,10}:N!,1:"+"^-90,10:"+"^90) + MCat(1,.75)(Cl,"-"^15) + MCat(1,.60)(Cl,"-"^15) endfont %*************************************************************************** beginfont("EN:Picolinafen","MW:376.331") - MC(<30,Ph,5:/CF3,3:\,O,!,|,Ph,2:N,3:\,//O,!,NH,!,|,Ph,4:/F) + MC(<30,Ph,5:/CF3,@3,\,O,!,|,Ph,2:N,@3,\,//O,!,NH,!,|,Ph,4:/F) endfont %*********************************************************************** beginfont("EN:Quinoxyfen","MW:308.13") - MC(<30,Ph,4=Ph,10:N,{2,6}:/Cl,7:\,O,!,|,Ph,4:/F) + MC(<30,Ph,4=Ph,10:N,{2,6}:/Cl,@7,\,O,!,|,Ph,4:/F) endfont %*********************************************************************** beginfont("EN:Quitozene","MW:295.3") @@ -255,33 +258,33 @@ beginfont("EN:Quitozene","MW:295.3") endfont %*************************************************************************** beginfont("EN:Bitertanol","MW:337.4") - MC(<30,Ph,3:\,Ph,-3:\,O,!2,/OH,!,??!,14:\,|,?5,{2,4}=dl,{1,2,4}:N) + MC(<30,Ph,@3,\,Ph,@-3,\,O,!2,/OH,!,??!,@14,\,|,?5,{2,4}=dl,{1,2,4}:N) endfont %*************************************************************************** beginfont("EN:Bifenox","MW:342.14") - MC(<30,Ph,{4,6}:/Cl,3:\,O,!,Ph,-4:/COO!,-3:/NO2) + MC(<30,Ph,{4,6}:/Cl,@3,\,O,!,Ph,-4:/COO!,-3:/NO2) endfont %*************************************************************************** beginfont("EN:Simeconazole","MW:293.417") MC(<36,?5,{1,3,5}:N,{1,4}=dl, - 3:@,30,!,/OH^30,!2,Si,/_,/_^60,!,7:@,-30,Ph,-3:/F) + @3,30,!,/OH^30,!2,Si,/_,/_^60,!,@7,-30,Ph,-3:/F) endfont %*************************************************************************** beginfont("EN:Fenamidone","MW:311.403") - MC(<18,?5,4=dl,{3,5}:N,2://O,3:\,NH,!,Ph,4:/S!,1^52:*/_,1^-48~zf:/Ph) + MC(<18,?5,4=dl,{3,5}:N,2://O,@3,\,NH,!,Ph,4:/S!,1^52:*/_,1^-48~zf:/Ph) endfont %*************************************************************************** beginfont("EN:Fenpyroximate","MW:421.49") - MC(<-6,?5,{3,5}=db,{1,2}:N,{2,5}:/Me,3:\^-15,O,!,Ph, - 4:\,!~dr,N,!,O,!2,|,Ph,4:\,//O,-60,O,!4) + MC(<-6,?5,{3,5}=db,{1,2}:N,{2,5}:/Me,@3,\^-15,O,!,Ph, + @4,\,!~dr,N,!,O,!2,|,Ph,@4,\,//O,-60,O,!4) endfont %*************************************************************************** beginfont("EN:Chlorsulron","MW:380.648") - MC(<30,Ph,6:/NH2,1:\,SOO,!,NH2,3:\,SOO,!,NH2,4:\,/Cl,60~dl,/Cl,!,Cl) + MC(<30,Ph,6:/NH2,@1,\,SOO,!,NH2,@3,\,SOO,!,NH2,@4,\,/Cl,60~dl,/Cl,!,Cl) endfont %*************************************************************************** beginfont("EN:Enrofloxacin","MW:359.401") - MC(<30,Ph,-4=?6,9=dl,7:N,6:/F,7:/?3,9:/COOH,10://O,1:\,|,?6,1:N,4:N,4:/!) + MC(<30,Ph,-4=?6,9=dl,7:N,6:/F,7:/?3,9:/COOH,10://O,@1,\,|,?6,1:N,4:N,4:/!) endfont %*************************************************************************** beginfont("EN:Fenitrothion","MW:277.23") @@ -289,8 +292,8 @@ beginfont("EN:Fenitrothion","MW:277.23") endfont %*************************************************************************** beginfont("EN:Fipronil","MW:437.2") -MC(<30, Ph,{2,4}:/Cl,6:/CF3,3:\,|,?5,{2,4}=dl,{1,2}:N,3:/CN,5:/NH2, - -2:\,S,//O,!,CF3) +MC(<30, Ph,{2,4}:/Cl,6:/CF3,@3,\,|,?5,{2,4}=dl,{1,2}:N,3:/CN,5:/NH2, + @-2,\,S,//O,!,CF3) endfont %*************************************************************************** beginfont("EN:Flumequine","MW:261.225") @@ -298,15 +301,15 @@ beginfont("EN:Flumequine","MW:261.225") endfont %*************************************************************************** beginfont("EN:Imazalil","MW:297.2") - MC(<-30,!2,O,!2,!~dr,1:@,60,|,?5,{2,4}=dl,{1,3}:N,$2:\,|,Ph,{4,6}:/Cl) + MC(<-30,!2,O,!2,!~dr,@1,60,|,?5,{2,4}=dl,{1,3}:N,@.$2,\,|,Ph,{4,6}:/Cl) endfont %*************************************************************************** beginfont("EN:Imidacloprid","MW:255.662") - MC(<30,Ph,1:N,6:/Cl,3:\,!,|,?5,2=dl,1:N,3:N,2:/'(NH,!,NO2)) + MC(<30,Ph,1:N,6:/Cl,@3,\,!,|,?5,2=dl,1:N,3:N,2:/'(NH,!,NO2)) endfont %*********************************************************************** beginfont("EN:Kresoxim-Methyl","MW:313.348") - MC(<30,Ph,3:\,/COO!,!~dr,N,!,O,!,4:\,!,O,!,Ph,-1:/_) + MC(<30,Ph,@3,\,/COO!,!~dr,N,!,O,!,@4,\,!,O,!,Ph,-1:/_) endfont %*************************************************************************** beginfont("EN:Nalidixic acid","MW:232.239") @@ -314,43 +317,43 @@ beginfont("EN:Nalidixic acid","MW:232.239") endfont %*********************************************************************** beginfont("EN:Oryzalin","MW:346.4") - MC(<30,Ph,{1,3}:/NO2,5:\,SOO,!,NH2,2:\,/!2,N,!3) + MC(<30,Ph,{1,3}:/NO2,@5,\,SOO,!,NH2,@2,\,/!2,N,!3) endfont %*********************************************************************** beginfont("EN:Oxadiazon","MW:345.2") -MC(<30,Ph,{4,6}:/Cl,1:/O!?!,3:\,|,?5,2=dl,{1,2}:N,4:O,5://O,3:/??!) +MC(<30,Ph,{4,6}:/Cl,1:/O!?!,@3,\,|,?5,2=dl,{1,2}:N,4:O,5://O,3:/??!) endfont %*********************************************************************** beginfont("EN:Oxadixyl","MW:278.3") - MC(<30,Ph,{2,4}:/_,3:\,N,!1,//O,!2,O,!,7:\,|,?5,1:N,2:O,5://O) + MC(<30,Ph,{2,4}:/_,@3,\,N,!1,//O,!2,O,!,@7,\,|,?5,1:N,2:O,5://O) endfont %*********************************************************************** beginfont("EN:Oxyfluorfen","MW:361.701") -MC(<30,Ph,6:/CF3,4:/Cl,3:\,O,!,Ph,-3:/NO2,-4:\,O,!2) +MC(<30,Ph,6:/CF3,4:/Cl,@3,\,O,!,Ph,-3:/NO2,@-4,\,O,!2) endfont %*************************************************************************** beginfont("EN:Sulfadimidine","MW:278.33") - MC(<30,Ph,1:/NH2,4:\,SOO,!,NH,!,|,Ph,{2,4}:N,{3,5}:/_) + MC(<30,Ph,1:/NH2,@4,\,SOO,!,NH,!,|,Ph,{2,4}:N,{3,5}:/_) endfont %*************************************************************************** beginfont("EN:Sulfamerazine","MW:264.303") - MC(<30,Ph,1:/NH2,4:\,SOO,!,NH,!,|,Ph,{2,6}:N,3:/_) + MC(<30,Ph,1:/NH2,@4,\,SOO,!,NH,!,|,Ph,{2,6}:N,3:/_) endfont %*************************************************************************** beginfont("EN:Sulfadoxine","MW:310.328") - MC(<30,Ph,1:/NH2,4:\,SOO,!,NH,!,|,Ph,{4,6}:N,{2,3}:/O!) + MC(<30,Ph,1:/NH2,@4,\,SOO,!,NH,!,|,Ph,{4,6}:N,{2,3}:/O!) endfont %*************************************************************************** beginfont("EN:Sulfamethoxazole","MW:253.276") - MC(<30,Ph,1:/NH2,4:\,SOO,!,NH,!,|,?5,{2,5}=dl,4:O,5:N,3:/_) + MC(<30,Ph,1:/NH2,@4,\,SOO,!,NH,!,|,?5,{2,5}=dl,4:O,5:N,3:/_) endfont %*************************************************************************** beginfont("EN:Thiamethoxam","MW:291.71") - MC(<30,?6,4:N,2:O,6:N!,5://'(N,!,NO2),4:\,!,|,?5,{1,3}=dl,3:N,5:S,4:/Cl) + MC(<30,?6,4:N,2:O,6:N!,5://'(N,!,NO2),@4,\,!,|,?5,{1,3}=dl,3:N,5:S,4:/Cl) endfont %*************************************************************************** beginfont("EN:Thiamphenicol","MW:355") - MC(<30,Ph,1:\,SOO,!,4:\,/OH,!,/!OH,!`1.1,NH,!`1.1,//O,!,/Cl,!,Cl) + MC(<30,Ph,@1,\,SOO,!,@4,\,/OH,!,/!OH,!`1.1,NH,!`1.1,//O,!,/Cl,!,Cl) endfont %*************************************************************************** beginfont("EN:Pyridaphenthion","MW:340.334") @@ -359,7 +362,7 @@ endfont %*************************************************************************** beginfont("EN:Permethrin","MW:391.288") MC(<-30,?3,2^-35:*/_,2^35:/*_,1:/'(!!,/Cl,!,Cl), - 3:\,//O,!,O,!2,|,Ph,3:\,O,-60,Ph) + @3,\,//O,!,O,!2,|,Ph,@3,\,O,-60,Ph) endfont %*************************************************************************** beginfont("EN:Isoprothiolane","MW:290.392") @@ -367,258 +370,258 @@ beginfont("EN:Isoprothiolane","MW:290.392") endfont %*************************************************************************** beginfont("EN:Oxine-Copper","MW:351.852") - MC(Ph,4:N,5=Ph,-4:\,O,-60,<90,Cu,-90,O,60,|,Ph,5=Ph,10:N,||, - 4:@,12~vf:#,23:@,12~vf:#) + MC(Ph,4:N,5=Ph,@-4,\,O,-60,<90,Cu,-90,O,60,|,Ph,5=Ph,10:N,||, + @4,&12~vf,@23,&12~vf) endfont %*************************************************************************** beginfont("EN:Tetraconazole","MW:372.145") MC(<-6, - ?5,{2,5}=dl,{1,2,4}:N,4:\,!3,O,!,/F^35,/F^-35,!,CF2,7:\,|,Ph,{4,6}:/Cl) + ?5,{2,5}=dl,{1,2,4}:N,@4,\,!3,O,!,/F^35,/F^-35,!,CF2,@7,\,|,Ph,{4,6}:/Cl) endfont %*************************************************************************** beginfont("EN:Endosulfan","MW:406.904"); - MC(<26,?7,7=?6[13],11:@,208~wf`1.45,8~wb:#,10=dl,{3,5}:O,4:S,4://O, + MC(<26,?7,7=?6[13],@11,208~wf`1.45,&8~wb,10=dl,{3,5}:O,4:S,4://O, {8,9,10,11,12^-210,12^-150}:/Cl) endfont; %*********************************************************************** beginfont("EN:Uniconazole-P","MW:291.779") - MC(<30,Ph,6:/Cl,3:\,!~dl,!,/OH,!,??!,8:\,|,?5,{2,4}=dl,{1,2,4}:N) + MC(<30,Ph,6:/Cl,@3,\,!~dl,!,/OH,!,??!,@8,\,|,?5,{2,4}=dl,{1,2,4}:N) endfont %*************************************************************************** beginfont("EN:Oxadiargyl","MW:341.19") - MC(<30,Ph,{1,3}:/Cl,6:/'(O,!2,!!!),4:\,|,?5,2=dl,{1,2}:N,4:O,5://O,3:/??!) + MC(<30,Ph,{1,3}:/Cl,6:/'(O,!2,!!!),@4,\,|,?5,2=dl,{1,2}:N,4:O,5://O,3:/??!) endfont %*************************************************************************** beginfont("EN:Oxaziclomefone","MW:376.277") - MC(<30,?6,6=dl,4:N,2:O,1:/_,5://O,6:/Ph,4:\,??,!,|,Ph,{3,5}:/Cl) + MC(<30,?6,6=dl,4:N,2:O,1:/_,5://O,6:/Ph,@4,\,??,!,|,Ph,{3,5}:/Cl) endfont %*************************************************************************** beginfont("EN:Trimetoprim","MW:290.323") - MC(<30,Ph,{1,5}:N,{2,6}:/NH2,3:\,!,|,Ph,{3,4,5}:/O!) + MC(<30,Ph,{1,5}:N,{2,6}:/NH2,@3,\,!,|,Ph,{3,4,5}:/O!) endfont %*************************************************************************** beginfont("EN:Ciprofloxacin","MW:331.347") MC(<30,Ph,-4=?6,9=dl,7:N, - 6:/F,7:/?3,9:/COOH,10://O,1:\,|,?6,1:N,4:NH) + 6:/F,7:/?3,9:/COOH,10://O,@1,\,|,?6,1:N,4:NH) endfont %*************************************************************************** beginfont("EN:Danofloxacin","MW:357.385") MC(<30,Ph,-4=?6,9=dl,7:N, 6:/F,7:/?3,9:/COOH,10://O, - 1:\,|,?6,2:@,-200`1.1,5:#,{1,4}:N,4:*/_) + @1,\,|,?6,@2,-200`1.1,&5,{1,4}:N,4:*/_) endfont %*************************************************************************** beginfont("EN:Marbofloxacin","MW:362.361") MC(<30,Ph,3=?6,9=dl,(2,7)=?6[4],6:/F,7:N,11:O,9:/COOH,10://O,13:N!, - 1:\,|,?6,1:N,4:N!) + @1,\,|,?6,1:N,4:N!) endfont %*************************************************************************** beginfont("EN:Ofloxacin","MW:361.373") MC(<30,Ph,3=?6,(2,7)=?6[4],9=dl,7:N,11:O,6:/F,9:/COOH,10://O,13:/_, - 1:\,|,?6,{1,4}:N,4:/_) + @1,\,|,?6,{1,4}:N,4:/_) endfont %*************************************************************************** beginfont("EN:Ormetoprim","MW:274.324") - MC(<30,Ph,{1,5}:N,{2,6}:/NH2,3:\,!,|,Ph,2:/_,{4,5}:/O!) + MC(<30,Ph,{1,5}:N,{2,6}:/NH2,@3,\,!,|,Ph,2:/_,{4,5}:/O!) endfont %*************************************************************************** beginfont("EN:Amoxicillin","MW:365.4042") MC(<45,?4,-3=?5,2:N,7:S, 3^45:/*H,1://O^15,5:/*COOH^-18,6:??, - 4:*\^15,NH,!,//O,!,*/NH2,!,Ph,-3:/OH) + @4,*\^15,NH,!,//O,!,*/NH2,!,Ph,-3:/OH) endfont %*************************************************************************** beginfont("EN:Ampicillin","MW:349.405") MC(<45,?4,-3=?5,2:N,7:S, 3^45:/*H,1://O^15,5:/*COOH^-18,6:??, - 4:*\^15,NH,!,//O,!,/*NH2,!,Ph) + @4,*\^15,NH,!,//O,!,/*NH2,!,Ph) endfont %*************************************************************************** beginfont("EN:Benzyl-Penicillin","MW:334.4") MC(<45,?4,-3=?5,2:N,7:S, 3^45:/*H,1://O^15,5:/*COOH^-18,6:??, - 4:*\^15,NH,!,//O,!,!,Ph) + @4,*\^15,NH,!,//O,!,!,Ph) endfont %*************************************************************************** beginfont("EN:Mecillinam","MW:325.4264") MC(<45,?4,-3=?5,2:N,7:S, 3^45:/*H,1://O^15,5:/*COOH^-18,6:??, - 4:*\^15,N,!!,!,?7,-7:N) + @4,*\^15,N,!!,!,?7,-7:N) endfont %*************************************************************************** beginfont("EN:Nafcillin","MW:414.4748") MC(<45,?4,-3=?5,2:N,7:S, 3^45:/*H,1://O^15,5:/*COOH^-18,6:??, - 4:*\^15,NH,!,//O,!,Ph,-2=Ph,-9:/O!2) + @4,*\^15,NH,!,//O,!,Ph,-2=Ph,-9:/O!2) endfont %*************************************************************************** beginfont("EN:Oxacillin","MW:401.4363") MC(<45,?4,-3=?5,2:N,7:S, 3^45:/*H,1://O^15,5:/*COOH^-18,6:??, - 4:*\^15,NH,!,//O,!,<-24,?5,{-2,-5}=dl,-2:N,-3:O,-4:/_, - -1:\^-24,Ph) + @4,*\^15,NH,!,//O,!,<-24,?5,{-2,-5}=dl,-2:N,-3:O,-4:/_, + @-1,\^-24,Ph) endfont %*************************************************************************** beginfont("EN:Cloxacillin","MW:435.8813") MC(<45,?4,-3=?5,2:N,7:S, 3^45:/*H,1://O^15,5:/*COOH^-18,6:??, - 4:*\^15,NH,!,//O,!,<-24,?5,{-2,-5}=dl,-2:N,-3:O,-4:/_, - -1:\^-24,Ph,-5:/Cl) + @4,*\^15,NH,!,//O,!,<-24,?5,{-2,-5}=dl,-2:N,-3:O,-4:/_, + @-1,\^-24,Ph,-5:/Cl) endfont %*************************************************************************** beginfont("EN:Dicloxacillin","MW:470.3264") MC(<45,?4,-3=?5,2:N,7:S, 3^45:/*H,1://O^15,5:/*COOH^-18,6:??, - 4:*\^15,NH,!,//O,!,<-24,?5,{-2,-5}=dl,-2:N,-3:O,-4:/_, - -1:\^-24,Ph,{-1,-5}:/Cl) + @4,*\^15,NH,!,//O,!,<-24,?5,{-2,-5}=dl,-2:N,-3:O,-4:/_, + @-1,\^-24,Ph,{-1,-5}:/Cl) endfont %*************************************************************************** beginfont("EN:Cefalexin","MW:347.3889") MC(<45,?4,-3=?6,-4=dl,2:N,8:S, 3^45:/*H,1://O^15,5:/*COOH,6:/_, - 4:*\^15,NH,!,//O,!,*/NH2,!,Ph) + @4,*\^15,NH,!,//O,!,*/NH2,!,Ph) endfont %*************************************************************************** beginfont("EN:Cefalonium","MW:458.5107") MC(<45,?4,-3=?6,-4=dl,2:N,8:S, - 3^45:/*H,1://O^15,5:/*COO[-1], - 4:*\^15,NH,!,//O,!2,?5,{-1,-3}=dl,-4:S, - 6:\,!,|,Ph,1:N,1:&"+"^180,4:\,//O,!,NH2) + 3^45:/*H,1://O^15,@5,\*,//O,!,O,"-"^40, + @4,*\^15,NH,!,//O,!2,?5,{-1,-3}=dl,-4:S, + @6,\,!,|,Ph,1:N,1:"+"^180,@4,\,//O,!,NH2) endfont %*************************************************************************** beginfont("EN:Cefazorin","MW:454.51") MC(<45,?4,-3=?6,-4=dl,2:N,8:S, 3^45:/*H,1://O^15,5:/*COOH, - 4:*\^15,NH,!,//O,!2,?5,{-2,-4}=dl,{-1,-2,-3,-5}:N, - 6:\,!,S,!,?5,{-3,-5}=dl,-1:S,-2:/_,{-3,-4}:N) + @4,*\^15,NH,!,//O,!2,?5,{-2,-4}=dl,{-1,-2,-3,-5}:N, + @6,\,!,S,!,?5,{-3,-5}=dl,-1:S,-2:/_,{-3,-4}:N) endfont %*************************************************************************** beginfont("EN:Cefquinome","MW:528.6") MC(<45,?4,-3=?6,-4=dl,2:N,8:S, - 3^45:/*H,1://O^15,5:/*COO[-1], - 4:*\^15,NH,!,//O,!,//'(N,!,O,!),!,?5,{-2,-5}=dl,-3:S,-1:N,-2:/NH2, - 6:\,!,Ph,-2=?6,-10:N,-10:&"+"^180) + 3^45:/*H,1://O^15,@5,\*,//O,!,O,"-"^40, + @4,*\^15,NH,!,//O,!,//'(N,!,O,!),!,?5,{-2,-5}=dl,-3:S,-1:N,-2:/NH2, + @6,\,!,Ph,-2=?6,-10:N,-10:"+"^180) endfont %*************************************************************************** beginfont("EN:Ceftiofur","MW:523.5626") MC(<45,?4,-3=?6,-4=dl,2:N,8:S, 3^45:/*H,1://O^15,5:/*COOH, - 4:*\^15,NH,!,//O,!,//'(N,!,O,!),!,?5,{-2,-5}=dl,-3:S,-1:N,-2:/NH2, - 6:\,!,S,!,//O,!,?5,{-1,-3}=dl,-4:O) + @4,*\^15,NH,!,//O,!,//'(N,!,O,!),!,?5,{-2,-5}=dl,-3:S,-1:N,-2:/NH2, + @6,\,!,S,!,//O,!,?5,{-1,-3}=dl,-4:O) endfont %*************************************************************************** beginfont("EN:Cefuroxime","MW:424.3852") MC(<45,?4,-3=?6,-4=dl,2:N,8:S, 3^45:/*H,1://O^15,5:/*COOH, - 4:*\^15,NH,!,//O,!,//'(N,!,O,!),!,?5,{-1,-3}=dl,-4:O, - 6:\,!,O,!,//O,!,NH2) + @4,*\^15,NH,!,//O,!,//'(N,!,O,!),!,?5,{-1,-3}=dl,-4:O, + @6,\,!,O,!,//O,!,NH2) endfont %*************************************************************************** beginfont("EN:Apramycin","MW:539.58") MC(<30,?6,-4=?6,{2,10}:O, - 1:\*,O,60~zb,?6, - 9:\*,O,-60~zb,?6,-5:O, + @1,\*,O,60~zb,?6, + @9,\*,O,-60~zb,?6,-5:O, {7,13,-2}:*/OH,{14,-1}:/*OH,{15,17}:*/NH2,{6,-3}:/*NH2,8:*/NH!>vt, -4:*/!OH,3:/*H^-60`.75,4:*/H^60`.75) endfont %*************************************************************************** beginfont("EN:Gentamycin","MW:477.596") MC(<-30,?6, - 1:\*,O,0~zb,?6,-5:O,5:\*,O,0~zb,?6,-5:O, + @1,\*,O,0~zb,?6,-5:O,@5,\*,O,0~zb,?6,-5:O, {2,4}:*/NH2,20:/*NH2,6:*/OH, 11:*/OH^-35,11:/*_^35,12:*/NH!,13:/*OH,17:/'(*/_,!NH!)) endfont %*************************************************************************** beginfont("EN:Kanamycin","MW:484.499") MC(<-30,?6, - 1:\*,O,0~zb,?6,-5:O, - 5:\,O,0,?6,-5:O, + @1,\*,O,0~zb,?6,-5:O, + @5,\,O,0,?6,-5:O, {2,4,12}:*/NH2,{6,19}:*/OH,{11,13,18,20}:/*OH,10:*/!OH,17:*/!NH2) endfont %*************************************************************************** beginfont("EN:DihydroStreptmycin","MW:583.574") MC(<54,?5,3:O,4:/*_,5:/!OH^-48,5:/*OH^35, - 1:\*,O,-24~wb,?6,-5:O, - 2:*\,O,24~zb,?6, + @1,\*,O,-24~wb,?6,-5:O, + @2,*\,O,24~zb,?6, {10,15}:*/OH,{11,16,18}:/*OH,9:/*!OH,12:*/NH!, - 17:*\^-18,NH,!,//NH,!,NH2, - 19:*\,NH,!,//NH,!,NH2) + @17,*\^-18,NH,!,//NH,!,NH2, + @19,*\,NH,!,//NH,!,NH2) endfont %*************************************************************************** beginfont("EN:Fradiomycin","MW:614.644") MC(<30,?6,3:O,2:/*!NH2,1:*/OH,6:/*OH,5:*/NH2, - 4:*\,O,!~wb,?6,{-3,-5^15}:/*NH2,-2:*/OH^-15, - -1:\*,O,-72~wb,?5,-4:O,-1:/*OH>vt,-3:*/!OH>vt, - -2:\*^-24,O,-60~zb,?6,-5:O,-1:/*NH2,-2:*/OH,-3:/*OH,-4:/*!NH2>60) + @4,*\,O,!~wb,?6,{-3,-5^15}:/*NH2,-2:*/OH^-15, + @-1,\*,O,-72~wb,?5,-4:O,-1:/*OH>vt,-3:*/!OH>vt, + @-2,\*^-24,O,-60~zb,?6,-5:O,-1:/*NH2,-2:*/OH,-3:/*OH,-4:/*!NH2>60) endfont %*************************************************************************** beginfont("EN:Streptmycin","MW:581.574") MC(<54,?5,3:O,4:/*_,5:/OH^35, - 1:\*,O,-24~wb,?6,-5:O, - 2:*\,O,24~zb,?6, - 5:\^-48,!!,O,{10,15}:*/OH,{11,16,18}:/*OH,9:/*!OH,12:*/NH!, - 17:*\^-18,NH,!,//NH,!,NH2, - 19:*\,NH,!,//NH,!,NH2) + @1,\*,O,-24~wb,?6,-5:O, + @2,*\,O,24~zb,?6, + @5,\^-48,!!,O,{10,15}:*/OH,{11,16,18}:/*OH,9:/*!OH,12:*/NH!, + @17,*\^-18,NH,!,//NH,!,NH2, + @19,*\,NH,!,//NH,!,NH2) endfont %*************************************************************************** beginfont("EN:Neospiramycin","MW:698.9") - MC(<-90,|=1,60,60,-60,60,60,-60,60,60,-60,60,60,60,-60,60,-60,1:#,=|, + MC(<-90,#1,60,60,-60,60,60,-60,60,60,-60,60,60,60,-60,60,-60,&1,##, {12,14}=dl,2:O,1:/*_,5:/*OH,3://O,10:/*_,6:/*O!>vt, - -6:\*,O,!~wb,?6`.7,-5:O,-3:/*N?!,-4:*/_, - 7:\*,O,0~wb,?6`.7,-5:O,-2:*/N?!,-1:/*OH,-4:*/_,-3:/*OH, - 8:\*,!,!!,O) + @-6,\*,O,!~wb,?6`.7,-5:O,-3:/*N?!,-4:*/_, + @7,\*,O,0~wb,?6`.7,-5:O,-2:*/N?!,-1:/*OH,-4:*/_,-3:/*OH, + @8,\*,!,!!,O) endfont %*************************************************************************** beginfont("EN:Emamectine","MW:886.133") MC(<24,?6,6=?5,3=dl,9:O,2:*/OH,3:/_,6:/*OH^-60, - 5:@,|=1.04,6,//O,-60,O,60~wb,60,-60,60~wf,60,-60,60,60,60,-60,60,=|,7:#, - {-1,-3,-7}=dl,(-11,-10)=?6[4],-2:@,?6,-6=wf,-1=zb,-5=dl, - {-1,-6}:O,-3:*/_,-2:\,*/_,!2, - 17:/_,19:/*_,18:\,O,!,?6`.8,-1:O,-2:*/_,-4:*/O!, - -3:\,O,60,?6`.8,-5:O,-4:*/_,-3:/*NH!,-2:*/O!) + @5,#1.04,6,//O,-60,O,60~wb,60,-60,60~wf,60,-60,60,60,60,-60,60,##,&7, + {-1,-3,-7}=dl,(-11,-10)=?6[4],@-2,?6,-6=wf,-1=zb,-5=dl, + {-1,-6}:O,-3:*/_,@-2,\,*/_,!2, + 17:/_,19:/*_,@18,\,O,!,?6`.8,-1:O,-2:*/_,-4:*/O!, + @-3,\,O,60,?6`.8,-5:O,-4:*/_,-3:/*NH!,-2:*/O!) endfont %*************************************************************************** beginfont("EN:Spinosad","MW:731.968") - MC(<30,|=1,<-120,60,60,-60,60,60,60,-60,60,60,60,-60,1:#,=|, + MC(<30,#1,<-120,60,60,-60,60,60,60,-60,60,60,60,-60,&1,##, 5=?5,-1=dl,{-2^60,-3^-35}:/*H,-3=?6,-4=dl,{-1^35}:*/H,{-2^-60}:/*H,-2=?5, 2:O,{3^25,7^-25}://O,1:/!, - -2:\~zf,O,66,?6`.8,-1:O,-2:/_,{-3,-4,-5}:/O!, + @-2,\~zf,O,66,?6`.8,-1:O,-2:/_,{-3,-4,-5}:/O!, 8~wf:/Me,5^-65~wf:/H, - 9:\~zf,O,!,|,?6`.8,2:O,3:/_,-3:/N?!) + @9,\~zf,O,!,|,?6`.8,2:O,3:/_,-3:/N?!) endfont %*************************************************************************** beginfont("EN:Spiramycin","MW:843.1") - MC(<-90,|=1,60,60,-60,60,60,-60,60,60,-60,60,60,60,-60,60,-60,1:#,=|, + MC(<-90,#1,60,60,-60,60,60,-60,60,60,-60,60,60,60,-60,60,-60,&1,##, {12,14}=dl,2:O,{1,10^-30}:/*_,5:/*OH,3://O,6:/*O!>vt, - -6:\*^-30,O,!~wb,?6`.7,-5:O,-3:/*N?!,-4:*/_, - 7:\*,O,0~wb,?6`.7,-5:O,-2:*/N?!,-1:/*OH,-4:*/_, - -3:\*`1,O,60~wb`1.5,?6`.7,-5:O,{-2^35,-3}:*/OH,{-2^-35,-4}:/*_, - 8:\*,!,!!,O) + @-6,\*^-30,O,!~wb,?6`.7,-5:O,-3:/*N?!,-4:*/_, + @7,\*,O,0~wb,?6`.7,-5:O,-2:*/N?!,-1:/*OH,-4:*/_, + @-3,\*`1,O,60~wb`1.5,?6`.7,-5:O,{-2^35,-3}:*/OH,{-2^-35,-4}:/*_, + @8,\*,!,!!,O) endfont %*************************************************************************** beginfont("EN:Natamycin","MW:665.733") - MC(<-90,|=1,60,60,-60,60,-60,60,-60,60,-60,60,60,60,O,-60, - 60,60,-60,60,-60,60,-60,60,60,-60,1:#,(12,13)=?6[4],=|, + MC(<-90,#1,60,60,-60,60,-60,60,-60,60,-60,60,60,60,O,-60, + 60,60,-60,60,-60,60,-60,60,60,-60,&1,(12,13)=?6[4],##, {2,4,6,8,20}=dl,11=zb,23:O,-2:/*OH,-3:*/COOH, 18=?3,-1=wb,-2=wf,-1:O,22://O,24:*/_,{14^60,16}:*/OH, - 10:*\,O,90,?6`.8,-3:*/OH,-5:/*OH,-4:/*NH2,-1:O,-2:/*_) + @10,*\,O,90,?6`.8,-3:*/OH,-5:/*OH,-4:/*NH2,-1:O,-2:/*_) endfont %*************************************************************************** beginfont("EN:Tylocin","MW:916.10") - MC(<-90,|=1,60,60,-60,60,60,-60,60,60,-60,60,60,60,-60,60,-60,1:#,=|, + MC(<-90,#1,60,60,-60,60,60,-60,60,60,-60,60,60,60,-60,60,-60,&1,##, {12,14}=dl,2:O,1:/*!,5:/*OH,3://O,10:/*_,6:/*_,-6://O,-3:/_, - -1:*\,-60,O,0~wb,?6`.7,-5:O,-3:/*OH,-4:*/_,{-1,-2}:/*O!, - 7:\*,O,0~wb,?6`.7,-5:O,-2:*/N?!,-1:/*OH,-4:*/_, - -3:\*`1,O,60~wb`1.5,?6`.7,-5:O,{-2^35,-3}:*/OH,{-2^-35,-4}:/*_, - 8:\*,!,!!,O) + @-1,*\,-60,O,0~wb,?6`.7,-5:O,-3:/*OH,-4:*/_,{-1,-2}:/*O!, + @7,\*,O,0~wb,?6`.7,-5:O,-2:*/N?!,-1:/*OH,-4:*/_, + @-3,\*`1,O,60~wb`1.5,?6`.7,-5:O,{-2^35,-3}:*/OH,{-2^-35,-4}:/*_, + @8,\*,!,!!,O) endfont %*************************************************************************** beginfont("EN:Tilmicosin","MW:869.133") - MC(<-90,|=1,60,60,-60,60,60,-60,60,60,-60,60,60,60,-60,60,-60,1:#,=|, + MC(<-90,#1,60,60,-60,60,60,-60,60,60,-60,60,60,60,-60,60,-60,&1,##, {12,14}=dl,2:O,1:/*!,5:/*OH,{3,11}://O,{6,10}:/*_,14:/_, - -1:*\,-60,O,0~zb,?6`.7,-5:O,{-1,-2}:*/O!,-3:*/OH,-4:/*_, - 7:\*,O,0,?6`.7,-5:O,-2:*/N?!,{-1,-3}:/*OH,-4:*/_, - 8:\*,!2,?6`.7,-6:N,{-2,-4}:*/_) + @-1,*\,-60,O,0~zb,?6`.7,-5:O,{-1,-2}:*/O!,-3:*/OH,-4:/*_, + @7,\*,O,0,?6`.7,-5:O,-2:*/N?!,{-1,-3}:/*OH,-4:*/_, + @8,\*,!2,?6`.7,-6:N,{-2,-4}:*/_) endfont %*************************************************************************** beginfont("EN:Chlortetracyclin","MW:478.88") @@ -639,22 +642,22 @@ endfont %*************************************************************************** beginfont("EN:Doxycyclin","MW:444.43") MC(<30,Ph,{-4,-3,-3}=?6,{16,19}=dl,{10,18}://O,7:*/_, - {5,13~wf^60,11~wf,14,16}:/OH,15:*/N?!,17:\,//O,!,NH2) + {5,13~wf^60,11~wf,14,16}:/OH,15:*/N?!,@17,\,//O,!,NH2) endfont %*************************************************************************** beginfont("EN:Tiamulin","MW:493.74") - MC(<-45.5,?8,-3=?5,8:@,|=.8,-210~zf,/_^60,45,56,=|,6:#~zb, - {3^-45,5,8}:*/_,3:\*^30,!~dl,4:/*OH,11://O,7:*/H^60, - 1:\^15,O,!,//O,!2,S,60,60,-60,N!2,60,-60) + MC(<-45.5,?8,-3=?5,@8,#.8,-210~zf,/_^60,45,56,##,&6~zb, + {3^-45,5,8}:*/_,@3,\*^30,!~dl,4:/*OH,11://O,7:*/H^60, + @1,\^15,O,!,//O,!2,S,60,60,-60,N!2,60,-60) endfont %*************************************************************************** beginfont("EN:Rifampicin","MW:822.94") MC(<30,Ph,6:/_^30,5:/OH,|,-6=?5,1:O,3://O,2:/*_^60, |,-8=?6,{2,4}=dl,{1,4}:/OH, - |=1,-2:\,NH,60,//O,-60,/_,60~dl,60,60~dl,-60, + #1,@-2,\,NH,60,//O,-60,/_,60~dl,60,60~dl,-60, */_,60,/*OH,-60,/*_,60,/*OH,60,*/_^30,-60, - 60,/*_^30,-53,66,-53~dl,66`1.2,O,=|,$8:#, - -4:/*O!,-6:@,-30,O,!,//O,!,$11:\,!!,N,!,|,?6,1:N,4:N!) + 60,/*_^30,-53,66,-53~dl,66`1.2,O,##,&($8), + -4:/*O!,@-6,-30,O,!,//O,!,@.$11,\,!!,N,!,|,?6,1:N,4:N!) endfont %*************************************************************************** beginfont("EN:Trenbolone","MW:270.37") @@ -663,35 +666,35 @@ beginfont("EN:Trenbolone","MW:270.37") endfont %*************************************************************************** beginfont("EN:Luciferin","MW:280.33") - MC(<30,Ph,3=?5,8:\,?5,{9,16}=dl,{9,14}:N,{7,11}:S,1:/OH,-2:*/COOH) + MC(<30,Ph,3=?5,@8,\,?5,{9,16}=dl,{9,14}:N,{7,11}:S,1:/OH,-2:*/COOH) endfont %*************************************************************************** beginfont("EN:Chlorophyll a","MW:893.509") -MC(<-36,|=1,?5,3:\,54,?5,-2:\,54,?5,-2:\,54,?5,-2:\,5:#,6:@,22,70,8:#,=|, - {4,6,8,10,14,16,18,21,23,27}=dl,4:\`1.48~vf,Mg,17:#~vb,11@#27,27@#23, +MC(<-36,#1,?5,@3,\,54,?5,@-2,\,54,?5,@-2,\,54,?5,@-2,\,&5,@6,22,70,&8,##, + {4,6,8,10,14,16,18,21,23,27}=dl,@4,\`1.48~vf,Mg,&17~vb,@11,&27,@27,&23, {4,11,17,23}:N,{1~zf,9,15,21}:/_,14:/!,20:/!!,25:/*COO!,26://O, - 2:*\^-6,!2,//O,!,O,!2,!!,|,!13,{1,5,9,13}:/_) + @2,*\^-6,!2,//O,!,O,!2,!!,|,!13,{1,5,9,13}:/_) endfont %************************************************************************** beginfont("EN:Quercetin","MW:302.24") - MC(<30,Ph,3=?6,9:\,Ph,9=dl,10:O,7://O,{2,6,8,13,14}:/OH) + MC(<30,Ph,3=?6,@9,\,Ph,9=dl,10:O,7://O,{2,6,8,13,14}:/OH) endfont %*************************************************************************** beginfont("EN:Limonin","MW:470.518") MC(<30,?6,{-3,-4}=?6,-5=?3,-2=wf,-1=wb,6=?5,-4=?6,-5=wf, {13,15,17,20}:O,{3,12,21}://O, {4~wf^60,8~zf^60}:/_,18:??,{1^60,5^180,16^60}:/*H, - 14:\*,|,?5,{1,4}=dl,3:O) + @14,\*,|,?5,{1,4}=dl,3:O) endfont %************************************************************************** beginfont("EN:Cromolyn","MW:468.37") MC(<30,Ph,|,-1=?6,3=dl,1:O,4://O,2:/COOH, - $2:\,O,!2,/OH,!2,O,60,Ph,|,-5=?6,3=dl,4:O,1://O,3:/COOH) + @.$2,\,O,!2,/OH,!2,O,60,Ph,|,-5=?6,3=dl,4:O,1://O,3:/COOH) endfont %************************************************************************** beginfont("EN:Emetine","MW:480.649") MC(<30,Ph,{-4,-4}=?6,8:N,{1,6}:/O!,-2:/*!,{7^-60,12^-60}:/*H, - -3:\,!~zb,<-60,|,?6,5=dl,2:NH,-6^-60:*/H,|,-2=?6,{2,4}=dl,{-2,-3}:/O!) + @-3,\,!~zb,<-60,|,?6,5=dl,2:NH,-6^-60:*/H,|,-2=?6,{2,4}=dl,{-2,-3}:/O!) endfont %************************************************************************** beginfont("EN:Acronycine","MW:321.376") @@ -699,66 +702,66 @@ beginfont("EN:Acronycine","MW:321.376") endfont %************************************************************************** beginfont("EN:Piperine","MW:285.343") - MC(<30,Ph,|,-1=?5,{1,3}:O,$4:\,!!,!,!!,!,//O,!,|,?6,1:N) + MC(<30,Ph,|,-1=?5,{1,3}:O,@.$4,\,!!,!,!!,!,//O,!,|,?6,1:N) endfont %*************************************************************************** beginfont("EN:Febrifugine","MW:301.346") - MC(<30,Ph,|,-4=?6,2=dl,{1,3}:N,4://O,$9:\,!,//O,!,!~zf,|,?6,2:NH,-1:*/OH) + MC(<30,Ph,|,-4=?6,2=dl,{1,3}:N,4://O,@.$9,\,!,//O,!,!~zf,|,?6,2:NH,-1:*/OH) endfont %*************************************************************************** beginfont("EN:Mitomycine C","MW:334.332") MC(<30,?6,{3,6}=dl,{2,5}://O,1:/_,-4=?5,-3:N, 6:/NH2,,-3=?5,-2=?3,-1=wb,-2=wf,-1:NH, - 8:/*O!^35,$9:\,!,O,60,//O,!,NH2) + 8:/*O!^35,@.$9,\,!,O,60,//O,!,NH2) endfont %*************************************************************************** beginfont("EN:Podophyllotoxin","MW:414.41"); MC(<0,?5,{2,5}:O,-3=Ph2,-3=?6,-3=?5,-2:O,-1=wb,-3://O, - 10:\*,Ph,{-2,-3,-4}:/O!,13:/*OH,{11~wf^-60,12~zf^60}:/H) + @10,\*,Ph,{-2,-3,-4}:/O!,13:/*OH,{11~wf^-60,12~zf^60}:/H) endfont; %*************************************************************************** beginfont("EN:Warfarin","MW:308.333"); - MC(<30,Ph,3=?6,8=dl,10:O,7:/OH,9://O,8:\,/Ph`1,60,!,//O,!) + MC(<30,Ph,3=?6,8=dl,10:O,7:/OH,9://O,@8,\,/Ph`1,60,!,//O,!) endfont; %*************************************************************************** beginfont("EN:Genistein","MW:270.24"); - MC(<30,Ph,3=?6,9=dl,10:O,{2,6}:/OH,7://O,8:\,Ph,-3:/OH) + MC(<30,Ph,3=?6,9=dl,10:O,{2,6}:/OH,7://O,@8,\,Ph,-3:/OH) endfont; %*************************************************************************** beginfont("EN:Baicalein","MW:270.24"); - MC(<30,Ph,3=?6,9=dl,10:O,{1,2,6}:/OH,7://O,8:\,Ph) + MC(<30,Ph,3=?6,9=dl,10:O,{1,2,6}:/OH,7://O,@8,\,Ph) endfont; %*************************************************************************** beginfont("EN:Reserpine","MW:608.688"); MC(<54,Ph,-4=?5,-2=?6,-4=?6,-3=?6,9=dl,11:N,7:NH,10:*/H^-60, {15^-60,16^60}:/*H, - 20:*\,O,!,//O,!,Ph,{-2,-3,-4}:/O!,{1,19~zf>rl}:/O!,18:*/COO!>lr) + @20,*\,O,!,//O,!,Ph,{-2,-3,-4}:/O!,{1,19~zf>rl}:/O!,18:*/COO!>lr) endfont; %*************************************************************************** beginfont("EN:Rotenone","MW:394.423"); MC(<-60,?5,{-3,-2,-3,-4}=?6,{7,9,-2,-4}=dl,{3,17}=dr, - {2,13,16}:O,10://O,{11^-60,12^60}:*/H,{-2,-3}:/O!,1:*\,/_,!!) + {2,13,16}:O,10://O,{11^-60,12^60}:*/H,{-2,-3}:/O!,@1,*\,/_,!!) endfont; %*************************************************************************** beginfont("EN:Pyrethrin I","MW:328.452"); - MC(<30,?3,{3^35~wf,3^-35~zf}:/_,1:*\,!!,?!, - 2:\*,//O,!,O,-36~zb,|,?5,-2=dl,-1:/_,-3://O,-2:\,!4,{-1,-3}=dl) + MC(<30,?3,{3^35~wf,3^-35~zf}:/_,@1,*\,!!,?!, + @2,\*,//O,!,O,-36~zb,|,?5,-2=dl,-1:/_,-3://O,@-2,\,!4,{-1,-3}=dl) endfont; %*********************************************************************** beginfont("EN:Oseltamivir","MW:312.40") - MC(<30,?6,3=dl,6:*/NH2,1:\*,NH,!,//O,!,2:*\,O,!,/!,!2,4:\,//O,!,O,!2) + MC(<30,?6,3=dl,6:*/NH2,@1,\*,NH,!,//O,!,@2,*\,O,!,/!,!2,@4,\,//O,!,O,!2) endfont %************************************************************************** beginfont("EN:Paclitaxel","MW:853.918") - MC(?6,5=dl,3:@,|=1,36,45,45,45,45,=|,5:#,-4=?6,-4=?4,-1=wb,-3=wf,-1:O, + MC(?6,5=dl,@3,#1,36,45,45,45,45,##,&5,-4=?6,-4=?4,-1=wb,-3=wf,-1:O, 4:??,6:/_,{3^-60,15}:*/OH,8:/*H^-60,9:*/_^60,10://O, - 1:\,O,!,//O,!,*/OH,!,/Ph,60~wf,NH,-60,//O,60,Ph, - 7:\*,O,-45,//O,60,Ph,11:*/OCO!>rl,12:/*OCO!^-15>lr) + @1,\,O,!,//O,!,*/OH,!,/Ph,60~wf,NH,-60,//O,60,Ph, + @7,\*,O,-45,//O,60,Ph,11:*/OCO!>rl,12:/*OCO!^-15>lr) endfont %************************************************************************** beginfont("EN:Mevastatin","MW:390.52") MC(<30,?6,2=dl,4:*/H^60,-4=?6,-4=dl,9:*/_, - 10:*\,!,60~wb,?6,6:O,-2://O,-4:/*OH,5:\*,O,60,//O,!,*/_,!2) + @10,*\,!,60~wb,?6,6:O,-2://O,-4:/*OH,@5,\*,O,60,//O,!,*/_,!2) endfont %*************************************************************************** beginfont("EN:Sesamine","MW:354.35") @@ -767,18 +770,18 @@ endfont %************************************************************************** beginfont("EN:Morphine","MW:285.343") MC(<30,Ph,2=?6,-4=?6,(1,12)=?5[2],-1:O,-1=zb, - 7:@,60~wf`0.75,70~si_`1.3,45,N!,9~wb:#, + @7,60~wf`0.75,70~si_`1.3,45,N!,&9~wb, 15=dl,6:/OH,8^180:*/H,12:/*OH) endfont %*************************************************************************** beginfont("EN:Quinine","MW:324.424") MC(<30,Ph,3=Ph,7:N,6:/O!, - 10:\,*/OH,/H~zf^-60,!,|,?6,2:N,1:*/H^60,4:*\,!!,2:@,165~zf,60,5~zb:#) + @10,\,*/OH,/H~zf^-60,!,|,?6,2:N,1:*/H^60,@4,*\,!!,@2,165~zf,60,&5~zb) endfont %*************************************************************************** beginfont("EN:Atoropin","MW:289.375") MC(<30,O,!,//O,!,!,Ph, - $1:\~zb^-60,|,?7`1.1,6:*\^190`1.25,N!,3~wb:#,$3:/!OH~wv) + @.$1,\~zb^-60,|,?7`1.1,@6,*\^190`1.25,N!,&3~wb,$3:/!OH~wv) endfont %*************************************************************************** beginfont("EN:Colchicine","MW:399.443") @@ -791,7 +794,7 @@ beginfont("EN:Lycorine","MW:287.315") endfont %*************************************************************************** beginfont("EN:Ibotenic acid","MW:158.113") - MC(<18,?5,4=dl,3:O,2:NH,1://O,4:@,-24,/NH2,!,COOH) + MC(<18,?5,4=dl,3:O,2:NH,1://O,@4,-24,/NH2,!,COOH) endfont %*************************************************************************** beginfont("EN:illudin S","MW:264.3") @@ -800,18 +803,18 @@ beginfont("EN:illudin S","MW:264.3") endfont %*************************************************************************** beginfont("EN:Muscarine","MW:174.26") - MC(<18,?5,2:O,1:*/_,5:/*OH,3:*\,48,N,??,!,-1:&"+"^180) + MC(<18,?5,2:O,1:*/_,5:/*OH,@3,*\,48,N,??,"+"^180,!) endfont %*************************************************************************** beginfont("EN:Psilocybin","MW:284.248") - MC(<30,Ph,3=?5,8=dl,9:NH,2:\,O,-60,P,|||,-1://O^-90,-1:/OH,-1:/OH^90, - 7:\,!,-60,N?!) + MC(<30,Ph,3=?5,8=dl,9:NH,@2,\,O,-60,P,//O^-45,/OH^45,90,OH, + @7,\,!,-60,N?!) endfont %*************************************************************************** beginfont("EN:Tetrodotoxine","MW:319.27") - MC(|=1,<60,-90,60,-30`1.15,150,60,1:#,3:@,-135,60,-30`1.15,150,4:#, - 10:\,O,60`1.33,60,$3~si_:#,8:@,-15~si_,O,12:#,=|, - 9:@,45,-60,OH,1^120://NH, + MC(#1,<60,-90,60,-30`1.15,150,60,&1,@3,-135,60,-30`1.15,150,&4, + @10,\,O,60`1.33,60,&($3)~si_,@8,-15~si_,O,&12,##, + @9,45,-60,OH,1^120://NH, {5~zf^-15,7,9^-75,12,13~zf}:/OH,{2,6^180}:NH) endfont %*************************************************************************** diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf index 467d9c47b6f..71e5a0dfb0f 100644 Binary files a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf and b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf differ diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf index 84b9fc6bee6..0f99177e283 100644 --- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf +++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf @@ -1,7 +1,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% Molecular Coding Format file for mcf_manual.tex by Akira.Yamaji 2021.01.31 +% Molecular Coding Format file for mcf_manual.tex by Akira.Yamaji 2021.02.11 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -input mcf2graph.mf; %% it must be version 4.56 or later +input mcf2graph.mf; %% it must be version 4.57 message "mcf_man_soc 2021.01.31"; message ""; %------------------------------------------------------------------------ sw_mframe:=0; @@ -12,7 +12,7 @@ sw_expand:=0; %*********************************************************************** fsize:=(40mm,25mm); blength:=6mm; -%*************************************************************************** +%*********************************************************************** beginfont("EN:Glycine") MC(<30,NH2,!2,COOH) endfont @@ -58,7 +58,7 @@ beginfont("EN:L-Tyrosine") endfont %*********************************************************************** beginfont("EN:L-Triptophan") - MC(<30,NH2,!~wb,!,COOH,2:\,!,<24,|,?5,-4=Ph,2=dr,5=dl,4:NH) + MC(<30,NH2,!~wb,!,COOH,@2,\,!,<24,|,?5,-4=Ph,2=dr,5=dl,4:NH) endfont %*********************************************************************** beginfont("EN:L-Prorine") @@ -66,7 +66,7 @@ beginfont("EN:L-Prorine") endfont %*********************************************************************** beginfont("EN:L-Glutamine") - MC(<30,NH2,!~wb,!,COOH,2:\`1,!`1,!,//O,!,NH2) + MC(<30,NH2,!~wb,!,COOH,@2,\`1,!`1,!,//O,!,NH2) endfont %*********************************************************************** beginfont("EN:L-Asparagine") @@ -86,15 +86,15 @@ beginfont("EN:L-Lysine") endfont %*********************************************************************** beginfont("EN:L-Arginine") - MC(<30,NH2,!~wb,!,COOH,2:\`1,!`1,!2,NH,!,//NH,!,NH2) + MC(<30,NH2,!~wb,!,COOH,@2,\`1,!`1,!2,NH,!,//NH,!,NH2) endfont %*********************************************************************** beginfont("EN:L-Hystidine") - MC(<30,NH2,!~wb,!,COOH,2:\,!,|,?5,{1,3}=dl,3:N,5:NH) + MC(<30,NH2,!~wb,!,COOH,@2,\,!,|,?5,{1,3}=dl,3:N,5:NH) endfont %*********************************************************************** beginfont("EN:L-DOPA") - MC(<30,NH2,!~wb,!,COOH,2:\,!,Ph,{-3,-4}:/OH) + MC(<30,NH2,!~wb,!,COOH,@2,\,!,Ph,{-3,-4}:/OH) endfont %*********************************************************************** beginfont("EN:Ornithine") @@ -183,7 +183,7 @@ beginfont("EN:Jump and Branch") sw_numberA:=1; ratio_chain_ring:=1; %---------------------------------------------------------------------- - MC(<-30,!6,3:@,0,!,5:@,-30) + MC(<-30,!6,@3,0,!,@5,-30) endfont %*********************************************************************** beginfont("EN:Jump and Branch") @@ -193,7 +193,7 @@ beginfont("EN:Jump and Branch") sw_trimming:=1; ratio_chain_ring:=1; %---------------------------------------------------------------------- - MC(<-30,!6,3:\,!) + MC(<-30,!6,@3,\,!) endfont %*********************************************************************** beginfont("EN:branch1") @@ -204,7 +204,7 @@ beginfont("EN:branch1") numberA_end:=10; ratio_chain_ring:=1; %---------------------------------------------------------------------- - MC(<30,!10,2:\,!,4:*\,!,6:\*,!,8:\\,!,10:*\*,!) + MC(<30,!10,@2,\,!,@4,*\,!,@6,\*,!,@8,\\,!,@10,*\*,!) endfont %*********************************************************************** beginfont("EN:branch2") @@ -215,7 +215,7 @@ beginfont("EN:branch2") numberA_end:=7; ratio_chain_ring:=1; %---------------------------------------------------------------------- - MC(<30,!6,2:\~dr,!,4:\`1.5,-90,6:@,15,-60) + MC(<30,!6,@2,\~dr,!,@4,\`1.5,-90,@6,15,-60) endfont %*********************************************************************** beginfont("EN:Connect atom") @@ -225,7 +225,7 @@ beginfont("EN:Connect atom") sw_numberA:=1; ratio_chain_ring:=1; %---------------------------------------------------------------------- - MC(<-30,!6,3:\,!3,6:#~bd,9@#4~bz) + MC(<-30,!6,@3,\,!3,&6~bd,@9,&4~bz) endfont %*********************************************************************** beginfont("EN:ring") @@ -246,7 +246,7 @@ beginfont("EN:rotate 1") numberB_end:=5; defaultscale:=0.5; labeloffset:=2bp; - MC(``1,0,0,<90,0,<-90,0,0,{1,2,3,4,5}=vf, + MC(#1,0,0,<90,0,<-90,0,0,{1,2,3,4,5}=vf, {3,4^180}:/_~dt) add( drawarrow B6/*.7{B6left}..{B3left}B3/*.7; label.urt("90",B6/*.7); @@ -309,15 +309,15 @@ beginfont("EN:over line") endfont %*********************************************************************** beginfont("EN:change bond length1") - fsize:=(60mm,12mm); + fsize:=(75mm,10mm); sw_numberB:=1; - MC(<-30,!2,!2`1.2,!2) + MC(<-30,!2,!4`1.2,!2) endfont %*********************************************************************** beginfont("EN:change bond length2") - fsize:=(60mm,12mm); + fsize:=(75mm,10mm); sw_numberB:=1; - MC(<-30,!2,``1.2,!4) + MC(<-30,!2,#1.2,!4,##,!2) endfont %*********************************************************************** beginfont("EN:change ring length") @@ -325,7 +325,7 @@ beginfont("EN:change ring length") fmargin:=(2mm,2mm); sw_trimming:=1; sw_numberB:=1; - MC(?6,4:\,?6`1.2) + MC(?6,@4,\,?6`1.2) endfont %*********************************************************************** beginfont("EN:Insert atom") @@ -343,40 +343,40 @@ endfont %*********************************************************************** beginfont("EN:change atom brock address 1") fsize:=(70mm,15mm); - MCat(0,.5)(?6,4:\,|,?6,2:O) + MCat(0,.5)(?6,@4,\,|,?6,2:O) sw_numberA:=1; msize:=(1,.88); - MCat(1,.5)(?6,4:\,?6) + MCat(1,.5)(?6,@4,\,?6) endfont %*********************************************************************** beginfont("EN:change atom brock address 2") fsize:=(70mm,15mm); - MCat(0,.5)(?6,4:\,|,?6,||,2:N) + MCat(0,.5)(?6,@4,\,|,?6,||,2:N) sw_numberA:=1; msize:=(1,.88); - MCat(1,.5)(?6,4:\,?6) + MCat(1,.5)(?6,@4,\,?6) endfont %*********************************************************************** beginfont("EN:change atom absolute address") fsize:=(70mm,15mm); - MCat(0,.5)(?6,4:\,?6,$2:N) + MCat(0,.5)(?6,@4,\,?6,$2:N) sw_numberA:=1; msize:=(1,.88); - MCat(1,.5)(?6,4:\,?6) + MCat(1,.5)(?6,@4,\,?6) endfont %*********************************************************************** beginfont("EN:change atom relative adress") fsize:=(70mm,15mm); - MCat(0,.5)(?6,4:\,?6,-2:N) + MCat(0,.5)(?6,@4,\,?6,-2:N) sw_numberA:=3; msize:=(1,.88); - MCat(1,.5)(?6,4:\,?6) + MCat(1,.5)(?6,@4,\,?6) endfont %*********************************************************************** beginfont("EN:Charged atom") sw_trimming:=1; - fsize:=(60mm,15mm); - MC(<-30,!2,N[1],!2,O[-1],!2,&"-",!2,N,&"+"^180,!) + fsize:=(60mm,12mm); + MC(<-30,!2,N,??,"+",!2,S,"-"^180,!6,7:N,7:??,9:S,7:"+",9:"-"^180) endfont %*********************************************************************** beginfont("EN:fused ring") @@ -392,7 +392,7 @@ beginfont("EN:change ring length") fmargin:=(2mm,2mm); sw_trimming:=1; sw_numberB:=1; - MC(?6,4:\,?6`1.2,5=?6,11=?6, + MC(?6,@4,\,?6`1.2,5=?6,11=?6, {14,15,16,17,18,19,20,21,22,23}=bd,{5,11}=dt) endfont %----------------------------------------------------------------------- @@ -443,7 +443,7 @@ beginfont("EN:Spiro ring ") sw_numberA:=1; numberA_end:=7; ratio_chain_ring:=1; - MC(<30,!6,4:@,?5) + MC(<30,!6,@4,?5) endfont %*********************************************************************** beginfont("EN:group 1") @@ -461,7 +461,7 @@ endfont beginfont("EN:group 3") fsize:=(60mm,18mm); sw_trimming:=1; - MC(<-30,``1,!2,/_`2^30,!2,/!2>lr,!2,/!2>rl,!) + MC(<-30,#1,!2,/_`2^30,!2,/!2>lr,!2,/!2>rl,!) endfont %*********************************************************************** beginfont("EN:group 3") @@ -532,13 +532,6 @@ beginfont("EN:methyl*2,isopropyl,tert-butyl") MC(<30,!9`1,?!,!,??,!,2:??,4:/?!,6:/??!,8:/N?!) endfont %*********************************************************************** -beginfont("EN:Make brock") - fsize:=(60mm,10mm); -% sw_trimming:=1; - sw_numberB:=1; - MC(<-30,!2,|=1.2,!4,=|,!2) -endfont -%*********************************************************************** beginfont("EN:User definition") fsize:=(60mm,15mm); sw_trimming:=1; @@ -1107,7 +1100,7 @@ defaultsize:=save_defaultsize; beginfont("EN:Luciferin","MW:280.33") fsize:=(60mm,20mm); MC( - <30,Ph,3=?5,8:\,?5,{9,16}=dl, + <30,Ph,3=?5,@8,\,?5,{9,16}=dl, {9,14}:N,{7,11}:S,1:/OH,-2:*/COOH ) endfont @@ -1116,19 +1109,19 @@ beginfont("EN:Colchicine","MW:385.41") fsize:=(60mm,25mm); MC( <30,Ph,{1,2,6}:/O!,-4=?7,-5=?7,{-1,-4,-6}=dl,-2://O,-3:/O!, - 9:\,NH,!,//O,! + @9,\,NH,!,//O,! ) endfont %*************************************************************************** beginfont("EN:Paclitaxel","MW:853.91") MC( - ?6,5=dl,3:@,|=1,36,45,45,45,45,=|, - $5:#,-4=?6,-4=?4,-1=wb,-3=wf,-1:O,||, + ?6,5=dl,@3,#1,36,45,45,45,45,##, + &($5),-4=?6,-4=?4,-1=wb,-3=wf,-1:O,||, 4:??,6:/_,{3^-60,15}:*/OH,8:/*H^-60, 9:*/_^60,10://O, - 1:\,O,!,//O,!,*/OH,!,/Ph,60~wf,NH,-60,//O,60,Ph, - 7:\*,O,-45,//O,60,Ph,11:*\,O,-60,//O,60, - 12:\*^-15,O,60,//O,-60 + @1,\,O,!,//O,!,*/OH,!,/Ph,60~wf,NH,-60,//O,60,Ph, + @7,\*,O,-45,//O,60,Ph,@11,*\,O,-60,//O,60, + @12,\*^-15,O,60,//O,-60 ) endfont %*************************************************************************** @@ -1144,9 +1137,9 @@ endfont beginfont("EN:Gibberellin A3","MW:346.37"); fsize:=(60mm,20mm); MC( - <18,?5,3=?7,5=?6[12],8:@,160`1.3,3:#, + <18,?5,3=?7,5=?6[12],@8,160`1.3,&3, 13=dl,6=wf,8=wb, - 5:@,40~zf`1,O,50,//O^180,14~zb:#, + @5,40~zf`1,O,50,//O^180,&14~zb, 2:/COOH,7://_,13:*/OH,8:/*OH, 14:*/_,{1,4}:*/H^60 ) @@ -1156,9 +1149,9 @@ beginfont("EN:Quinine","MW:324.42") fsize:=(60mm,25mm); MC( <30,Ph,3=Ph,7:N,6:/O!, - 10:\,*/OH,/H~zf^-60,!, + @10,\,*/OH,/H~zf^-60,!, |,?6,2:N,1:*/H^60,4:*/!!, - 2:@,165~zf,60,5~zb:# + @2,165~zf,60,&5~zb ) endfont %*************************************************************************** @@ -1189,7 +1182,7 @@ beginfont("EN:Ampicillin","MW:349.405") fsize:=(60mm,90mm); MCat(0.5,1)(<45,?4,-3=?5,2:N,7:S, {3^45,4^-45}:/*H,1://O^15,5:/*COOH^-18,6:??, - 4:*\^75,NH,!,//O,!,/*NH2,!,Ph) + @4,*\^75,NH,!,//O,!,/*NH2,!,Ph) endfont %*************************************************************************** beginfont("EN:Cholesterol","CAS:57-88-5","FM:C27H46O","MW:386.65") @@ -1198,7 +1191,7 @@ beginfont("EN:Cholesterol","CAS:57-88-5","FM:C27H46O","MW:386.65") <30,?6,{-4,-2}=?6,-4=?5,7=dl, 1:*/OH,{4,12}:*/_^60,9:*/H^60, 10:/*H^180,11:/*H^-60,17:/*H^-54, - -1:@,18,/*_,-60,!3,?! + @-1,18,/*_,-60,!3,?! ) endfont %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf index fa14700a110..9e3950eeff1 100644 Binary files a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf and b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf differ diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex index f8678eb7167..ef6c9b124f8 100644 --- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex +++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex @@ -1,5 +1,5 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% Molecular Coding Format manual by Akira Yamaji 2021.01.31 +% Molecular Coding Format manual by Akira Yamaji 2021.02.11 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \documentclass[a4paper]{article} \usepackage[pdftex]{graphicx} @@ -124,19 +124,19 @@ exact mass, molecular formula. \subsubsection{Jump to atom} \index{"@}% \begin{verbatim} - n:@ : Jump to An + @n : Jump to An ** An: atom number(-999<=n<=4095) - <-30,!6,3:@,0,!,5:@,-30 + <-30,!6,@3,0,!,@5,-30 \end{verbatim} \MCFgraph %------------------------------------ \subsubsection{Branch bond} \index{\textbackslash}% \begin{verbatim} - 3:\ : 3:@,0 + \ : 0 - <-30,!6,3:\,! + <-30,!6,@3,\,! \end{verbatim} \MCFgraph %----------------------------------------------------------------------------- @@ -146,14 +146,14 @@ exact mass, molecular formula. \index{\textbackslash\textbackslash}% \index{*\textbackslash*}% \begin{verbatim} - 2:\ : 2:@,0 - 4:*\ : 4:@,0~wf - 6:\* : 6:@,0~zf - 8:\\ : 8:@,0~dm - 10:*\* : 10:@,0~wv + \ : 0 + *\ : 0~wf + \* : 0~zf + \\ : 0~dm + *\* : 0~wv <30,!8, - 2:\,!,4:*\,!,6:\*,!,8:\\,!,10:*\*,! + @2,\,!,@4,*\,!,@6,\*,!,@8,\\,!,@10,*\*,! \end{verbatim} \MCFgraph %----------------------------------------------------------------------------- @@ -162,20 +162,18 @@ exact mass, molecular formula. \index{`}% \begin{verbatim} <30,!6, - 2:\~dr,!, : 2:@,0~dr,! - 4:\`1.5,-90, : 4:@,0`1.5,-90 - 6:\^15,-60 : 6:@,0^15,-60 + \~dr,!, : 0~dr,! + \`1.5,-90 : 0`1.5,-90 + \^15,-60 : 0^15,-60 \end{verbatim} \MCFgraph %----------------------------------------------------------------------------- \subsubsection{Connect atom} -\index{\#}% -\index{"@\#}% +\index{\&}% \begin{verbatim} - n:# : Connect to An - n1@#n2 : n1:@,n2:# + &n : Connect to An - <-30,!6,3:\,!3,6:#~bd,9@#4~bz + <-30,!6,@3,\,!3,&6~bd,@9,&4~bz \end{verbatim} \MCFgraph %----------------------------------------------------------------------------- @@ -183,7 +181,7 @@ exact mass, molecular formula. \index{?}% \begin{verbatim} ?n : n membered ring(3<=n<=20) - ?6 : <-120,60,60,60,60,60,1:# + ?6 : <-120,60,60,60,60,60,&1 ?6 \end{verbatim} \MCFgraph @@ -318,17 +316,17 @@ exact mass, molecular formula. \begin{verbatim} (!,!n)`length : change length of !,!n - <-30,!2,!2`1.2,!2 - - ** !2`1.2 : !`1.2,!`1.2 + <-30,!2,!4`1.2,!2 \end{verbatim} \MCFgraph %----------------------------------------------------------------------------- -\index{``}% +\index{\#}% +\index{\#\#}% \begin{verbatim} -``length : change all bond length after + #n : bond length=n + ## : reset bond length - <-30,!2,``1.2,!4 + <-30,!2,#1.2,!4,##,!2 \end{verbatim} \MCFgraph %----------------------------------------------------------------------------- @@ -336,7 +334,7 @@ exact mass, molecular formula. \begin{verbatim} ?n`length : change ring length - ?6,4:\,?6`1.2 + ?6,@4,\,?6`1.2 \end{verbatim} \MCFgraph %----------------------------------------------------------------------------- @@ -364,7 +362,7 @@ exact mass, molecular formula. \begin{verbatim} | : divide brock - ?6,4:\,|,?6,2:O + ?6,@4,\,|,?6,2:O \end{verbatim} \MCFgraph %----------------------------------------------------------------------------- @@ -373,35 +371,33 @@ exact mass, molecular formula. \begin{verbatim} || : reset brock adress - ?6,4:\,|,?6,||,2:N + ?6,@4,\,|,?6,||,2:N \end{verbatim} \MCFgraph %----------------------------------------------------------------------------- \subsubsection{Absolute address} \index{\$}% $ \begin{verbatim} - $2:N : change A$2 C to N - ** $n : (1<=n<=3095) + $2:N : change A$2 C to N **1<=n<=3095 - ?6,4:\,|,?6,$2:N + ?6,@4,\,|,?6,$2:N \end{verbatim} \MCFgraph %----------------------------------------------------------------------------- \subsubsection{Relative address} \begin{verbatim} - -2:N : change A(-2) C to N - ** -n : (1<=n<=999) + -2:N : change A(-2) C to N **-999<=n<=-1 - ?6,4:\,?6,-2:N + ?6,@4,\,?6,-2:N \end{verbatim} \MCFgraph %----------------------------------------------------------------------------- \subsubsection{Charged atom} \begin{verbatim} - N[1]:N+ / O[-1]:O- / A,&"c":A+c + "+" : positive / "-" : negative - <-30,!2,N[1],!2,O[-1], - !2,&"-",!2,N,&"+"^180,! +<-30,!2,N,??,"+",!2,S,"-"^180, +!6,7:N,7:??,9:S,7:"+",9:"-"^180 \end{verbatim} \MCFgraph %----------------------------------------------------------------------------- @@ -419,7 +415,7 @@ exact mass, molecular formula. ** fused ring size depend on attached bond length - ?6,4:\,?6`1.2,5=?6,11=?6 + ?6,@4,\,?6`1.2,5=?6,11=?6 \end{verbatim} \MCFgraph %----------------------------------------------------------------------------- @@ -482,11 +478,11 @@ exact mass, molecular formula. %----------------------------------------------------------------------------- \subsubsection{Spiro ring} \begin{verbatim} - 4:@,?5 : add ?5 at A4 + @4,?5 : add ?5 at A4 - <30,!6,4:@,?5 + <30,!6,@4,?5 - An:@ : jump to An + @An : jump to An \end{verbatim} \MCFgraph %----------------------------------------------------------------------------- @@ -648,17 +644,6 @@ exact mass, molecular formula. \end{verbatim} \MCFgraph %----------------------------------------------------------------------------- -\subsubsection{Make block} -\index{\textbar=}% |= -\index{=\textbar}% =| -\begin{verbatim} - |= : start brock / bond length=n - =| : end brock - - <-30,!2,|=1.2,!4,=|,!2 -\end{verbatim} -\MCFgraph -%----------------------------------------------------------------------------- \subsubsection{Parts definition} \begin{verbatim} '(..) : user defined parts @@ -1399,7 +1384,7 @@ endfont beginfont("EN:Luciferin","MW:280.33") fsize:=(60mm,20mm); MC( - <30,Ph,3=?5,8:\,?5,{9,16}=dl, + <30,Ph,3=?5,@8,\,?5,{9,16}=dl, {9,14}:N,{7,11}:S,1:/OH,-2:*/COOH ) endfont @@ -1414,7 +1399,7 @@ beginfont("EN:Colchicine","MW:385.41") <30,Ph,{1,2,6}:/O!,-4=?7, -5=?7,{-1,-4,-6}=dl, -2://O,-3:/O!, - 9:\,NH,!,//O,! + @9,\,NH,!,//O,! ) endfont \end{verbatim} @@ -1424,14 +1409,14 @@ endfont \begin{verbatim} beginfont("EN:Paclitaxel","MW:853.91") MC( - ?6,5=dl,3:@,|=1,36,45,45,45,45,=|, - $5:#,-4=?6,-4=?4,-1=wb,-3=wf,-1:O,||, + ?6,5=dl,@3,#1,36,45,45,45,45,##, + &.$5,-4=?6,-4=?4,-1=wb,-3=wf,-1:O,||, {4^35,4^-35,6}:/_,{3^-60,15}:*/OH, 8:/*H^-60,9:*/_^60,10://O, - 1:\,O,!,//O,!,*/OH,!,/Ph, + @1,\,O,!,//O,!,*/OH,!,/Ph, 60~wf,NH,-60,//O,60,Ph, - 7:\*,O,-45,//O,60,Ph, - 11:*/OCO!>rl,12:/*OCO!^-15>lr + @7,\*,O,-45,//O,60,Ph, + @11,*/OCO!>rl,12:/*OCO!^-15>lr ) endfont \end{verbatim} @@ -1455,9 +1440,9 @@ endfont beginfont("EN:Gibberellin","MW:346.37"); fsize:=(60mm,20mm); MC( - <18,?5,3=?7,5=?6[12],8:@,160`1.3,3:#, + <18,?5,3=?7,5=?6[12],@8,160`1.3,&3, 13=dl,6=wf,8=wb, - 5:@,40~zf`1,O,50,//O^180,14~zb:#, + @5,40~zf`1,O,50,//O^180,&14~zb, 2:/COOH,7://_,13:*/OH,8:/*OH, 14:*/_,{1,4}:*/H^60 ) @@ -1471,9 +1456,9 @@ beginfont("EN:Quinine","MW:324.42") fsize:=(60mm,25mm); MC( <30,Ph,3=Ph,7:N,6:/O!, - 10:\,*/OH,/H~zf^-60,!, + @10,\,*/OH,/H~zf^-60,!, |,?6,2:N,1:*/H^60,4:*/!!, - 2:@,165~zf,60,5~zb:# + @2,165~zf,60,&5~zb ) endfont \end{verbatim} @@ -1504,14 +1489,14 @@ outputtemplate:="%j-%3c.png"; > beginfont("N:1","EN:Ampicillin") > begin font(information) MC(<45,?4,2:N,2=?5,-1:S, > begin MCF (1) {3^45,4^-45}:/*H,1://O^15,5:/*COOH^-18,6:??, > - 4:@,75,NH,!,//O,!,/*NH,!,Ph) > end MCF + @4,75,NH,!,//O,!,/*NH,!,Ph) > end MCF endfont > end font %------------------------------------------------------------------------ beginfont("N:2","EN:Cholesterol") > begin font(information) MC(<30,?6,{-4,-2}=?6,-4=?5,7=dl, > begin MCF (2) 1:*/OH,{4,12}:*/_^60,9:*/H^60, > 10:/*H^180,{11,-1}:/*H^-60, > - -1:@,17,/*_,!4,?!) > end MCF + @-1,17,/*_,!4,?!) > end MCF endfont > end font %------------------------------------------------------------------------ beginfont("N:3","EN:Limonin") > begin font(information) @@ -1520,12 +1505,12 @@ beginfont("N:3","EN:Limonin") > begin font(information) {13,15,17,20}:O,{3,12,21}://O, > {4~wf^60,8~zf^60,18^35,18^-35}:/_, > {1^60,5^180,16^60}:/*H, > - 14:\*,|,?5,{1,4}=dl,3:O) > end MCF + @14,\*,|,?5,{1,4}=dl,3:O) > end MCF endfont > end font %------------------------------------------------------------------------ beginfont("N:4","EN:beta-carotene) > begin font(information) MC(<30,?6,3=dl,{3,5^35,5^-35}:/_, > begin MCF (4) - 4:\,|,!18,{1,3,5,7,9,11,13,15,17}=dr, > + @4,\,|,!18,{1,3,5,7,9,11,13,15,17}=dr, > {3,7,12,16}:/_, > |,?6,6=dl,2:??,6:/_) > end MCF endfont > end font @@ -1756,7 +1741,7 @@ M END {13,15,17,20}:O,{3,12,21}://O, {4~wf^60,8~zf^60,18^35,18^-35}:/_, {1^60,5^180,16^60}:/*H, - 14:\*,|,?5,{1,4}=dl,3:O + @14,\*,|,?5,{1,4}=dl,3:O ) endfont \end{mplibcode}\\ @@ -1766,7 +1751,7 @@ M END beginfont("NO:2","EN:beta-carotene","MW:536.87") MC(<30, ?6,3=dl,{3,5^35,5^-35}:/_, - 4:\,|,!18,{1,3,5,7,9,11,13,15,17}=dr, + @4,\,|,!18,{1,3,5,7,9,11,13,15,17}=dr, {3,7,12,16}:/_, |,?6,6=dl,{6,2^35,2^-35}:/_ ) @@ -1777,8 +1762,8 @@ M END fsize:=(50mm,50mm); beginfont("NO:3","EN:Gibberellin A3","MW:346.37"); MC(<18,?5,3=?7,5=?6[12], - 8:@,160`1.3,3:#,13=dl,6=wf,8=wb, - 5:@,40~zf`1,O,60,//O^180,14~zb:#, + @8,160`1.3,&3,13=dl,6=wf,8=wb, + @5,40~zf`1,O,60,//O^180,&14~zb, 2:/COOH,7://_,13:*/OH,8:/*OH, 14:*/_,{1^60,4^60}:*/H ) @@ -1816,15 +1801,15 @@ endfont; %-------------------------------------------------------------------- \begin{document} \unitlength=1mm% -\INFO{F:mcf_man_soc,C:140,NO:1,mw:349.40462,fm:C16H19N3O4S,EN:Ampicillin}% -\INFO{F:mcf_man_soc,C:141,NO:2,mw:386.6532,fm:C27H46O,EN:Cholesterol}% +\INFO{F:mcf_man_soc,C:139,NO:1,mw:349.40462,fm:C16H19N3O4S,EN:Ampicillin}% +\INFO{F:mcf_man_soc,C:140,NO:2,mw:386.6532,fm:C27H46O,EN:Cholesterol}% \end{document} %-------------------------------------------------------------------- \end{verbatim}% %############################################################################ %------------------------------------------------------------------------ -\INFO{F:mcf_man_soc,C:140,NO:1,mw:349.40462,fm:C16H19N3O4S,EN:Ampicillin}% -\INFO{F:mcf_man_soc,C:141,NO:2,mw:386.6532,fm:C27H46O,EN:Cholesterol}% +\INFO{F:mcf_man_soc,C:139,NO:1,mw:349.40462,fm:C16H19N3O4S,EN:Ampicillin}% +\INFO{F:mcf_man_soc,C:140,NO:2,mw:386.6532,fm:C27H46O,EN:Cholesterol}% %------------------------------------------------------------------------ \printindex %------------------------------------------------------------------------ diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.pdf b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.pdf index 11b156b318e..71273591e41 100644 Binary files a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.pdf and b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.pdf differ diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex index df8c4bc5eb5..edf96d8953f 100644 --- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex +++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex @@ -1,7 +1,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% Example of MCF typest with LuaLaTeX(luamplib) by A.Yamaji 2021.01.31 +% Example of MCF typest with LuaLaTeX(luamplib) by A.Yamaji 2021.02.11 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%% mcf2graph.mf it must be version 4.56 or later +%%% mcf2graph.mf must be version 4.57 \documentclass{article} %------------------------------------------------------------------------------ \usepackage{luamplib}% @@ -104,12 +104,12 @@ MC( beginfont("NO:1","EN:Chlorophyll a","MW:893.49") fsize:=(100mm,50mm); MC( - <54,|=1,?5,{2,5}=dl,4:N,3:\,54~dl,|,?5,{2,4}=dl,5:N, - -2:\,54~dl,|,?5,2=d,5:N,-2:\~dl,54,|,?5,5=d,5:N,-2:\~dl,$5:#, - -1:@,24,/*COO!^15,72,//O,$1:#,=|,||, + <54,#1,?5,{2,5}=dl,4:N,@3,\,54~dl,|,?5,{2,4}=dl,5:N, + @-2,\,54~dl,|,?5,2=dl,5:N,@-2,\~dl,54,|,?5,5=dl,5:N,@-2,\~dl,&.$5, + @-1,24,/*COO!^15,72,//O,&.$1,##,||, {2,9,15,20~zf}:/_,8:/!,14:/!!, - 4:\`1.45,Mg,17:#,-1:@,11~vb:#,-1:@,23~vb:#, - 21:@,-6~wf,!2,//O,!,O,!2,!!,|,!13,{1,5,9,13}:/_ + @4,\`1.45,Mg,&17,@-1,&11~vb,@-1,&23~vb, + @21,-6~wf,!2,//O,!,O,!2,!!,|,!13,{1,5,9,13}:/_ ) endfont \end{verbatim} @@ -118,12 +118,12 @@ endfont beginfont("NO:1","EN:Chlorophyll a","MW:893.49") fsize:=(100mm,50mm); MC( - <54,|=1,?5,{2,5}=dl,4:N,3:\,54~dl,|,?5,{2,4}=dl,5:N, - -2:\,54~dl,|,?5,2=d,5:N,-2:\~dl,54,|,?5,5=d,5:N,-2:\~dl,$5:#, - -1:@,24,/*COO!^15,72,//O,$1:#,=|,||, + <54,#1,?5,{2,5}=dl,4:N,@3,\,54~dl,|,?5,{2,4}=dl,5:N, + @-2,\,54~dl,|,?5,2=dl,5:N,@-2,\~dl,54,|,?5,5=dl,5:N,@-2,\~dl,&.$5, + @-1,24,/*COO!^15,72,//O,&.$1,##,||, {2,9,15,20~zf}:/_,8:/!,14:/!!, - 4:\`1.45,Mg,17:#,-1:@,11~vb:#,-1:@,23~vb:#, - 21:@,-6~wf,!2,//O,!,O,!2,!!,|,!13,{1,5,9,13}:/_ + @4,\`1.45,Mg,&17,@-1,&11~vb,@-1,&23~vb, + @21,-6~wf,!2,//O,!,O,!2,!!,|,!13,{1,5,9,13}:/_ ) ext( defaultscale:=0.8; @@ -140,8 +140,8 @@ endfont beginfont("NO:4","EN:Gibberellin A3","MW:346.37"); fsize:=(120mm,20mm); MC( - <18,?5,3=?7,5=?6[12],8:@,160`1.3,3:#,13=dl,6=wf,8=wb, - 5:@,40~zf`1,O,60,//O^180,14~zb:#, + <18,?5,3=?7,5=?6[12],@8,160`1.3,&3,13=dl,6=wf,8=wb, + @5,40~zf`1,O,60,//O^180,&14~zb, 2:/COOH,7://_,13:*/OH,8:/*OH,14:*/_,{1,4}:*/H^60 ) endfont; @@ -151,8 +151,8 @@ endfont; beginfont("NO:4","EN:Gibberellin A3","MW:346.37"); fsize:=(120mm,20mm); MC( - <18,?5,3=?7,5=?6[12],8:@,160`1.3,3:#,13=dl,6=wf,8=wb, - 5:@,40~zf`1,O,60,//O^180,14~zb:#, + <18,?5,3=?7,5=?6[12],@8,160`1.3,&3,13=dl,6=wf,8=wb, + @5,40~zf`1,O,60,//O^180,&14~zb, 2:/COOH,7://_,13:*/OH,8:/*OH,14:*/_,{1,4}:*/H^60) ext( defaultscale:=0.8; @@ -170,11 +170,11 @@ endfont; beginfont("NO:5","EN:Erythromycin","MW:733.93"); fsize:=(120mm,35mm); MC( - <30,|=1,<-120,60,60,60,-60,60,60,-60,60,60,60,-60,60,60,=|,1:#, + <30,#1,<-120,60,60,60,-60,60,60,-60,60,60,60,-60,60,60,##,&1, 14:O,13:/*Et,{1,9}://O,{2,10}:*/_,{4,6^-35,8,12^35}:/*_, {6^35,11,12^-35}:*/OH, - $3:\*,O,30,|,?6`.7,2:O,{3,5^35}:/_,4:/OH,5^-35:/O!, - $5:\*^30`1.7,O,!,|,?6`.7,6:O,5:/_,2:/OH,3:/N?! + @.$3,\*,O,30,|,?6`.7,2:O,{3,5^35}:/_,4:/OH,5^-35:/O!, + @.$5,\*^30`1.7,O,!,|,?6`.7,6:O,5:/_,2:/OH,3:/N?! ) endfont; \end{verbatim} @@ -183,11 +183,11 @@ endfont; beginfont("NO:5","EN:Erythromycin","MW:733.93"); fsize:=(120mm,35mm); MC( - <30,|=1,<-120,60,60,60,-60,60,60,-60,60,60,60,-60,60,60,=|,1:#, + <30,#1,<-120,60,60,60,-60,60,60,-60,60,60,60,-60,60,60,##,&1, 14:O,13:/*Et,{1,9}://O,{2,10}:*/_,{4,6^-35,8,12^35}:/*_, {6^35,11,12^-35}:*/OH, - $3:\*,O,30,|,?6`.7,2:O,{3,5^35}:/_,4:/OH,5^-35:/O!, - $5:\*^30`1.7,O,!,|,?6`.7,6:O,5:/_,2:/OH,3:/N?! + @.$3,\*,O,30,|,?6`.7,2:O,{3,5^35}:/_,4:/OH,5^-35:/O!, + @.$5,\*^30`1.7,O,!,|,?6`.7,6:O,5:/_,2:/OH,3:/N?! ) ext( defaultscale:=0.8; @@ -204,10 +204,10 @@ endfont; beginfont("EN:Paclitaxel","MW:853.918") fsize:=(120mm,35mm); MC( - ?6,5=d,3:@,|=1,36,45,45,45,45,=|,5:#,-4=?6,-4=?4,-1=wb,-3=wf,-1:O, + ?6,5=dl,@3,#1,36,45,45,45,45,##,&5,-4=?6,-4=?4,-1=wb,-3=wf,-1:O, 4:??,6:/_,{3^-60,15}:*/OH,8:/*H^-60,9:*/_^60,10://O, - 1:\,O,!,//O,!,*/OH,!,/Ph,60~wf,NH,-60,//O,60,Ph, - 7:\*,O,-45,//O,60,Ph,11:*/OCO!>rl,12:/*OCO!^-15>lr + @1,\,O,!,//O,!,*/OH,!,/Ph,60~wf,NH,-60,//O,60,Ph, + @7,\*,O,-45,//O,60,Ph,11:*/OCO!>rl,12:/*OCO!^-15>lr ) endfont \end{verbatim} @@ -216,10 +216,10 @@ endfont beginfont("EN:Paclitaxel","MW:853.918") fsize:=(120mm,35mm); MC( - ?6,5=d,3:@,|=1,36,45,45,45,45,=|,5:#,-4=?6,-4=?4,-1=wb,-3=wf,-1:O, + ?6,5=dl,@3,#1,36,45,45,45,45,##,&5,-4=?6,-4=?4,-1=wb,-3=wf,-1:O, 4:??,6:/_,{3^-60,15}:*/OH,8:/*H^-60,9:*/_^60,10://O, - 1:\,O,!,//O,!,*/OH,!,/Ph,60~wf,NH,-60,//O,60,Ph, - 7:\*,O,-45,//O,60,Ph,11:*/OCO!>rl,12:/*OCO!^-15>lr + @1,\,O,!,//O,!,*/OH,!,/Ph,60~wf,NH,-60,//O,60,Ph, + @7,\*,O,-45,//O,60,Ph,11:*/OCO!>rl,12:/*OCO!^-15>lr ) ext( defaultscale:=0.8; @@ -238,28 +238,28 @@ endfont \begin{verbatim} beginfont("NO:6","EN:Vancomycin","MW:1449.25"); fsize:=(150mm,50mm); -MC(<-30,|=1,!12,{1,3,12}=zf,7=wf,/H^-60,60,*/OH,60, - Ph,-4:/Cl,-3:\,O,!,Ph,-4:\,O,!,Ph,-1^15:/Cl,-3:\,/*OH,*/H^-60,1:#, - 7:@,26:#,$1:@,60,//O,60,NH,60,/*H,*/COOH^180,-60, - Ph,{-2,-4}:/OH,-1:\,Ph,-5:/OH,-2:@,4:#,=|, +MC(<-30,#1,!12,{1,3,12}=zf,7=wf,/H^-60,60,*/OH,60, + Ph,-4:/Cl,@-3,\,O,!,Ph,@-4,\,O,!,Ph,-1^15:/Cl,@-3,\,/*OH,*/H^-60,&1, + @7,&26,@.$1,60,//O,60,NH,60,/*H,*/COOH^180,-60, + Ph,{-2,-4}:/OH,@-1,\,Ph,-5:/OH,@-2,&4,##, {3^40,6,9,12}://O,{2,5,8,11}:NH,{1,4^180}:*/H,{7^-60,10^60,14^60}:/*H, - 10:*\^-60,60,//O,!,NH2,13:*\,NH,!,//O,!,/??!,*/H^60,!~zf,NH,!, - 23:\,O,!,|,?6`.7,2:O,3^10:/!OH,{4,5}:/OH, - -1:\,O,!,|,?6`.7,6:O,{3^35,5}:/_,3^-35:/NH2,4:/OH) + @10,*\^-60,60,//O,!,NH2,@13,*\,NH,!,//O,!,/??!,*/H^60,!~zf,NH,!, + @23,\,O,!,|,?6`.7,2:O,3^10:/!OH,{4,5}:/OH, + @-1,\,O,!,|,?6`.7,6:O,{3^35,5}:/_,3^-35:/NH2,4:/OH) endfont; \end{verbatim} %---------------------------------------------------------------------------- \begin{mplibcode} beginfont("NO:6","EN:Vancomycin","MW:1449.25"); fsize:=(150mm,45mm); -MC(<-30,|=1,!12,{1,3,12}=zf,7=wf,/H^-60,60,*/OH,60, - Ph,-4:/Cl,-3:\,O,!,Ph,-4:\,O,!,Ph,-1^15:/Cl,-3:\,/*OH,*/H^-60,1:#, - 7:@,26:#,$1:@,60,//O,60,NH,60,/*H,*/COOH^180,-60, - Ph,{-2,-4}:/OH,-1:\,Ph,-5:/OH,-2:@,4:#,=|, +MC(<-30,#1,!12,{1,3,12}=zf,7=wf,/H^-60,60,*/OH,60, + Ph,-4:/Cl,@-3,\,O,!,Ph,@-4,\,O,!,Ph,-1^15:/Cl,@-3,\,/*OH,*/H^-60,&1, + @7,&26,@.$1,60,//O,60,NH,60,/*H,*/COOH^180,-60, + Ph,{-2,-4}:/OH,@-1,\,Ph,-5:/OH,@-2,&4,##, {3^40,6,9,12}://O,{2,5,8,11}:NH,{1,4^180}:*/H,{7^-60,10^60,14^60}:/*H, - 10:*\^-60,60,//O,!,NH2,13:*\,NH,!,//O,!,/??!,*/H^60,!~zf,NH,!, - 23:\,O,!,|,?6`.7,2:O,3^10:/!OH,{4,5}:/OH, - -1:\,O,!,|,?6`.7,6:O,{3^35,5}:/_,3^-35:/NH2,4:/OH) + @10,*\^-60,60,//O,!,NH2,@13,*\,NH,!,//O,!,/??!,*/H^60,!~zf,NH,!, + @23,\,O,!,|,?6`.7,2:O,3^10:/!OH,{4,5}:/OH, + @-1,\,O,!,|,?6`.7,6:O,{3^35,5}:/_,3^-35:/NH2,4:/OH) ext( defaultscale:=0.8; label.lrt("FM(C): "&cal_FM,(0,h-4mm)); @@ -275,9 +275,9 @@ endfont; \begin{verbatim} beginfont("NO:7","EN:Maitotoxin","MW:3425.86") fsize:=(170mm,70mm); -MC(<55.8,?6,-4=?7 ,{-4,-3,-3,-3}=?6,-3:\,!3,?6,{-4,-3,-3,-3}=?6,-3:\,?6,-3=?6, - -3:\,!3,60,<-30,?6,-3=?6,-3:@,30,<30,?6,{-3,-3}=?6,-3=?7,{-4,-3,-3}=?6, - -2:\,?6,-3=?6,-3=?7,{-3,-3}=?6,-3=?8,-3=dl,{-5,-3,-3,-3}=?6, +MC(<55.8,?6,-4=?7 ,{-4,-3,-3,-3}=?6,@-3,\,!3,?6,{-4,-3,-3,-3}=?6,@-3,\,?6,-3=?6, + @-3,\,!3,60,<-30,?6,-3=?6,@-3,30,<30,?6,{-3,-3}=?6,-3=?7,{-4,-3,-3}=?6, + @-2,\,?6,-3=?6,-3=?7,{-3,-3}=?6,-3=?8,-3=dl,{-5,-3,-3,-3}=?6, {5,7,15,16,23,24,32,40,41,48,49,58,59,72,73,82,83,90,91,99, 100,107,113,114,122,123,130,131,140,141,148,149}:O, {1^60,2,26,28,29,51,54,61,63,68,75^60,78,109}:*/OH, @@ -287,19 +287,19 @@ MC(<55.8,?6,-4=?7 ,{-4,-3,-3,-3}=?6,-3:\,!3,?6,{-4,-3,-3,-3}=?6,-3:\,?6,-3=?6, {6,46,50,53,60,67,74}:*/H^-60, {9,18,85,93,112,139,143,147}:*/_`1^60, {80,88,97,115,120,124}:/*_`1^-60,108:*/_`1^-60, - 6:\,|,!11,60~dr,-60,60,OH,2:/*OH,{7,10}:*/OH,{1,3}:*/_,{8~zf,11~dm,12}:/_, - 6:\,O,30,SOO,30,"O{Na}", - 36:@,-45~zf,O,30,SOO,30,"O{Na}", - 150:\,|,!7,{1,2}:/*OH,4:*/_,5:/*_,7=dl) + @6,\,|,!11,60~dr,-60,60,OH,2:/*OH,{7,10}:*/OH,{1,3}:*/_,{8~zf,11~dm,12}:/_, + @6,\,O,30,SOO,30,"O{Na}", + @36,-45~zf,O,30,SOO,30,"O{Na}", + @150,\,|,!7,{1,2}:/*OH,4:*/_,5:/*_,7=dl) endfont \end{verbatim} %-------------------------------------------------------------------------------- \begin{mplibcode} fsize:=(170mm,60mm); beginfont("NO:7","EN:Maitotoxin","MW:3425.86") -MC(<55.8,?6,-4=?7 ,{-4,-3,-3,-3}=?6,-3:\,!3,?6,{-4,-3,-3,-3}=?6,-3:\,?6,-3=?6, - -3:\,!3,60,<-30,?6,-3=?6,-3:@,30,<30,?6,{-3,-3}=?6,-3=?7,{-4,-3,-3}=?6, - -2:\,?6,-3=?6,-3=?7,{-3,-3}=?6,-3=?8,-3=dl,{-5,-3,-3,-3}=?6, +MC(<55.8,?6,-4=?7 ,{-4,-3,-3,-3}=?6,@-3,\,!3,?6,{-4,-3,-3,-3}=?6,@-3,\,?6,-3=?6, + @-3,\,!3,60,<-30,?6,-3=?6,@-3,30,<30,?6,{-3,-3}=?6,-3=?7,{-4,-3,-3}=?6, + @-2,\,?6,-3=?6,-3=?7,{-3,-3}=?6,-3=?8,-3=dl,{-5,-3,-3,-3}=?6, {5,7,15,16,23,24,32,40,41,48,49,58,59,72,73,82,83,90,91,99, 100,107,113,114,122,123,130,131,140,141,148,149}:O, {1^60,2,26,28,29,51,54,61,63,68,75^60,78,109}:*/OH, @@ -309,10 +309,10 @@ MC(<55.8,?6,-4=?7 ,{-4,-3,-3,-3}=?6,-3:\,!3,?6,{-4,-3,-3,-3}=?6,-3:\,?6,-3=?6, {6,46,50,53,60,67,74}:*/H^-60, {9,18,85,93,112,139,143,147}:*/_`1^60, {80,88,97,115,120,124}:/*_`1^-60,108:*/_`1^-60, - $6:\,|,!11,60~dr,-60,60,OH,2:/*OH,{7,10}:*/OH,{1,3}:*/_,{8~zf,11~dm,12}:/_, - 6:\,O,30,SOO,30,"O{Na}", - $36:@,-45~zf,O,30,SOO,30,"O{Na}", - $150:\,|,!7,{1,2}:/*OH,4:*/_,5:/*_,7=dl + @.$6,\,|,!11,60~dr,-60,60,OH,2:/*OH,{7,10}:*/OH,{1,3}:*/_,{8~zf,11~dm,12}:/_, + @6,\,O,30,SOO,30,"O{Na}", + @.$36,-45~zf,O,30,SOO,30,"O{Na}", + @.$150,\,|,!7,{1,2}:/*OH,4:*/_,5:/*_,7=dl ) ext( defaultscale:=0.8; @@ -331,18 +331,18 @@ beginfont("EN:TCA cycle") fsize:=(160mm,75mm); max_blength:=5mm; %------------------------------------------------------------------------ -COOm:='(//O,!,O[-1]); -OmCO:='(O[-1],!,//O); -MCat(0.33, 1)(<30,OmCO,!,//O,!2,COOm) -MCat(0.66, 1)(<30,OmCO,!4,COOm,-4`1:\,COOm,4:/OH^-165) -MCat(1, 1)(<30,OmCO,!2,!~dr,!,COOm,-4`1:\,COOm) -MCat(1, 0.55)(<30,OmCO,!4,COOm,-4:\`1,COOm) -MCat(1, 0.05)(<30,OmCO,!3,//O,!,COOm,-4:\`1,COOm) -MCat(0.66,0.05)(<30,OmCO,!3,//O,!,COOm) -MCat(0.33,0.05)(<30,OmCO,!3,//O,!,"{S-CoA}") -MCat(0, 0.05)(<30,OmCO,!3,COOm) -MCat(0, 0.55)(<30,OmCO,!,!~dr,!,COOm) -MCat(0, 1)(<30,OmCO,!3,COOm,3:/OH) +COOH:='(//O,!,OH); +HOCO:='(OH,!,//O,); +MCat(0.33, 1)(<30,HOCO,!,//O,!2,COOH) +MCat(0.66, 1)(<30,HOCO,!4,COOH,@-4`1,\,COOH,4:/OH^-165) +MCat(1, 1)(<30,HOCO,!2,!~dr,!,COOH,@-4`1,\,COOH) +MCat(1, 0.55)(<30,HOCO,!4,COOH,@-4,\`1,COOH) +MCat(1, 0.05)(<30,HOCO,!3,//O,!,COOH,@-4,\`1,COOH) +MCat(0.66,0.05)(<30,HOCO,!3,//O,!,COOH) +MCat(0.33,0.05)(<30,HOCO,!3,//O,!,"{S-CoA}") +MCat(0, 0.05)(<30,HOCO,!3,COOH) +MCat(0, 0.55)(<30,HOCO,!,!~dr,!,COOH) +MCat(0, 1)(<30,HOCO,!3,COOH,3:/OH) %------------------------------------------------------------------------- ext( defaultfont:="uhvr8r"; @@ -377,15 +377,15 @@ label.bot("Fumarate",p9+dx); label.bot("L-Malate",p10+dx); sw_label_emu:=1; ext_setup; r_arrow(10mm)( 0)(p1+ ( 1.1w1, 0.3h1))("Acetyl-CoA",1.5)(" CoA-SH",1); -r_arrow(10mm)( 0)(p2+ ( 1.1w2, 0.4h2))("",0)("H_2_O",1); -r_arrow( 8mm)(270)(p3+ ( 0.5w3,-0.4h3))("H_2_O",1)("",0); -r_arrow( 8mm)(270)(p4+ ( 0.5w4,-0.4h4))("NAD^+",1)("NADH2^+",1); -r_arrow(10mm)(180)(p5+ (-0.1w5, 0.4h5))("",0)("CO_2_",1); -r_arrow(10mm)(180)(p6+ (-0.1w6, 0.5h6))("NAD^+^,CoA-SH",1.7)("NADH2^+^,CO_2",1); +r_arrow(10mm)( 0)(p2+ ( 1.1w2, 0.4h2))("",0)("H2O",1); +r_arrow( 8mm)(270)(p3+ ( 0.5w3,-0.4h3))("H2O",1)("",0); +r_arrow( 8mm)(270)(p4+ ( 0.5w4,-0.4h4))("NAD+",1)("NADH2+",1); +r_arrow(10mm)(180)(p5+ (-0.1w5, 0.4h5))("",0)("CO2",1); +r_arrow(10mm)(180)(p6+ (-0.1w6, 0.5h6))("NAD+,CoA-SH",1.7)("NADH2+,CO2",1); r_arrow(10mm)(180)(p7+ (-0.1w7, 0.5h7))("GDP,Pi",1.7)("GTP,CoA-SH",1); r_arrow( 8mm)( 90)(p8+ ( 0.4w8, 1.2h8))("FAD",1)("FADH2",1); -r_arrow( 8mm)( 90)(p9+ ( 0.4w9, 1.2h9))("H_2_O",1)("",0); -r_arrow(10mm)( 0)(p10+( 1.1w10,0.3h10))("NAD^+",1)("NADH2^+",1.5); +r_arrow( 8mm)( 90)(p9+ ( 0.4w9, 1.2h9))("H2O",1)("",0); +r_arrow(10mm)( 0)(p10+( 1.1w10,0.3h10))("NAD+",1)("NADH2+",1.5); defaultscale:=1.5; label("TCA-cycle",(0.5w,0.5h)); ) @@ -396,18 +396,18 @@ endfont beginfont("EN:TCA cycle") fsize:=(160mm,75mm); max_blength:=5mm; -COOm:='(//O,!,O[-1]); -OmCO:='(O[-1],!,//O); -MCat(0.33, 1)(<30,OmCO,!,//O,!2,COOm) -MCat(0.66, 1)(<30,OmCO,!4,COOm,-4`1:\,COOm,4:/OH^-165) -MCat(1, 1)(<30,OmCO,!2,!~dr,!,COOm,-4`1:\,COOm) -MCat(1, 0.55)(<30,OmCO,!4,COOm,-4:\`1,COOm) -MCat(1, 0.05)(<30,OmCO,!3,//O,!,COOm,-4:\`1,COOm) -MCat(0.66,0.05)(<30,OmCO,!3,//O,!,COOm) -MCat(0.33,0.05)(<30,OmCO,!3,//O,!,"{S-CoA}") -MCat(0, 0.05)(<30,OmCO,!3,COOm) -MCat(0, 0.55)(<30,OmCO,!,!~dr,!,COOm) -MCat(0, 1)(<30,OmCO,!3,COOm,3:/OH) +COOH:='(//O,!,OH); +HOCO:='(OH,!,//O,); +MCat(0.33, 1)(<30,HOCO,!,//O,!2,COOH) +MCat(0.66, 1)(<30,HOCO,!4,COOH,@-4`1,\,COOH,4:/OH^-165) +MCat(1, 1)(<30,HOCO,!2,!~dr,!,COOH,@-4`1,\,COOH) +MCat(1, 0.55)(<30,HOCO,!4,COOH,@-4,\`1,COOH) +MCat(1, 0.05)(<30,HOCO,!3,//O,!,COOH,@-4,\`1,COOH) +MCat(0.66,0.05)(<30,HOCO,!3,//O,!,COOH) +MCat(0.33,0.05)(<30,HOCO,!3,//O,!,"{S-CoA}") +MCat(0, 0.05)(<30,HOCO,!3,COOH) +MCat(0, 0.55)(<30,HOCO,!,!~dr,!,COOH) +MCat(0, 1)(<30,HOCO,!3,COOH,3:/OH) ext( defaultfont:="uhvr8r"; defaultscale:=0.75; @@ -421,15 +421,15 @@ label.bot("Fumarate",p9+dx); label.bot("L-Malate",p10+dx); sw_label_emu:=1; ext_setup; r_arrow(10mm)( 0)(p1+ ( 1.1w1, 0.3h1))("Acetyl-CoA",1.5)(" CoA-SH",1); -r_arrow(10mm)( 0)(p2+ ( 1.1w2, 0.4h2))("",0)("H_2_O",1); -r_arrow( 8mm)(270)(p3+ ( 0.5w3,-0.4h3))("H_2_O",1)("",0); -r_arrow( 8mm)(270)(p4+ ( 0.5w4,-0.4h4))("NAD^+",1)("NADH2^+",1); +r_arrow(10mm)( 0)(p2+ ( 1.1w2, 0.4h2))("",0)("H2O",1); +r_arrow( 8mm)(270)(p3+ ( 0.5w3,-0.4h3))("H2O",1)("",0); +r_arrow( 8mm)(270)(p4+ ( 0.5w4,-0.4h4))("NAD+",1)("NADH2+",1); r_arrow(10mm)(180)(p5+ (-0.1w5, 0.4h5))("",0)("CO_2_",1); -r_arrow(10mm)(180)(p6+ (-0.1w6, 0.5h6))("NAD^+^,CoA-SH",1.7)("NADH2^+^,CO_2",1); +r_arrow(10mm)(180)(p6+ (-0.1w6, 0.5h6))("NAD+,CoA-SH",1.7)("NADH2+,CO2",1); r_arrow(10mm)(180)(p7+ (-0.1w7, 0.5h7))("GDP,Pi",1.7)("GTP,CoA-SH",1); r_arrow( 8mm)( 90)(p8+ ( 0.4w8, 1.2h8))("FAD",1)("FADH2",1); -r_arrow( 8mm)( 90)(p9+ ( 0.4w9, 1.2h9))("H_2_O",1)("",0); -r_arrow(10mm)( 0)(p10+( 1.1w10,0.3h10))("NAD^+",1)("NADH2^+",1.5); +r_arrow( 8mm)( 90)(p9+ ( 0.4w9, 1.2h9))("H2O",1)("",0); +r_arrow(10mm)( 0)(p10+( 1.1w10,0.3h10))("NAD+",1)("NADH2+",1.5); defaultscale:=1.5; label("TCA-cycle",(0.5w,0.5h)); ) diff --git a/Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf b/Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf index af136209e34..0ebece8405f 100644 --- a/Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf +++ b/Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf @@ -1,5 +1,5 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% mcf2graph ver 4.56 Copyright (c) 2013-2021 Akira Yamaji +% mcf2graph ver 4.57 Copyright (c) 2013-2021 Akira Yamaji % % Permission is hereby granted, free of charge, to any person obtaining a copy of this software % and associated documentation files (the "Software"), to deal in the Software without restriction, @@ -37,12 +37,12 @@ % Set to use plain.mp (label,arrow,atom) : mpost -s labeloffset=2 FILENAME %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% tracingstats:=1; -message "* This is mcf2graph ver 4.56 2021.01"; +message "* This is mcf2graph ver 4.57 2021.02.11"; %------------------------------------------------------------------------------------------------- newinternal cntA,cntB,cntM,minX,minY,maxX,maxY,sftX,sftY,com,par,envT,envB,lenT,lineT,angT,rotT, crR,nA,nB,nC,nD,nE,nF,nN,nP,nU,nP,nL,nR,nS,nW,xpos,ypos,markA,markB,saveA,saveB,bondL; numeric save_num[],comD[][],parD[][],adrD[][],cntD[],tbl_atom[],tbl_group[][],f_char[], - tbl_atom_wt[],tbl_atom_mi[],tbl_char_wd[],tbl_char_ht[],andA[],and_rot[],chargeA[], + tbl_atom_wt[],tbl_atom_mi[],tbl_char_wd[],tbl_char_ht[],addA[],add_rot[],chargeA[], com_group[][],par_group[][],cnt_group[],colorA[],colorB[],sumA[],bondC[],hideH[], lineB[],sB[],eB[],angB[],angA[],lenB[],angX[],numS[],wdM[],htM[],wdA[],dxA[]; string info[],save_str[],tbl_atom_str[],strD[],tag[],out_file_name,out_file_aux, @@ -191,8 +191,8 @@ def def_com(expr n)(text tx)= nA:=n; forsuffixes list=tx:: list:=nA; nA:=nA+1; e def_com(-4090)(_com,_jp_atom,_jp_absA,_jp_bond,_cyc,_cyc_sB,_cyc_eB,_set_line,_tmp_line, _chg_len,_get_len,_ring_len,_tmp_len,_rot_ang,_adj_ang,_chg_env,_tmp_env,_set_colorA,_set_colorB, _group_si,_set_adr,_mk_bond,_set_atom,_arg_ang,_chg_atom,_tmp_rot,_fuse,_size_atom,_numeric, - _jump_at,_connect_at,_set_and,_chg_and,_nop,_mark,_moff,_term,_len_s,_len_e,_len_ss,_len_ee, - _group_s,_group_e,_rest, + _jump_at,_set_add,_chg_add,_nop,_mark,_moff,_term,_len_s,_len_e,_len_ss,_len_ee, + _group_s,_group_e,_rest,_charge, si,dl,dr,db,dm,tm,wf,wb,bd,bz,zf,zb,dt,wv,nl,vf,vb,nb,si_,dl_,dr_,dm_,wf_,wb_,zf_,zb_,wv_,bd_); %-------------------------------------------------------------------------------------------------- def parameter_list= @@ -319,38 +319,29 @@ def endfont= enddef; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% def set_def_MC= - save /,//,/*,*/,**,*/*,~,^,',`,``,<,>,&,:,=,\,\\,*\,\*,*\*,@,#,@#,$, - {,},|,||,|||,|=,=|,|<,>|,|<<,>>|,:|,_,d,w,z,CP,CPe,CPx,inside_def_MC; + save /,//,/*,*/,**,*/*,~,^,',`,<,>,&,:,=,\,\\,*\,\*,*\*,@,$,&,#,##,{,},|,||,_,inside_def_MC; inside_def_MC:=1; - _:=Me; d:=db; w:=wf; z:=zf; + _:=Me; tertiarydef a=b == if (known a)and(known b):: change_bond(a,b) else:: _nop fi enddef; tertiarydef a:b == if (known a)and(known b):: change_atom(a,b) else:: _nop fi enddef; - def { == read_number( enddef; let } == ); - def &primary s == (_set_and,ASCII(s)) enddef; - vardef $primary a == a-4095 enddef; - def b == if known b:: (_tmp_env,b),a else:: _nop,a fi enddef; - def # == _connect_at enddef; def @ == _jump_at enddef; primarydef a@#b == a:@,b:# enddef; - def \ == @,0 enddef; def \\ == \~dm enddef; def *\ == \~wf enddef; def \* == \~zf enddef; + def @primary n == (_jp_atom,n) enddef; def &primary n == (_cyc,n) enddef; + def \ == 0 enddef; def \\ == \~dm enddef; def *\ == \~wf enddef; def \* == \~zf enddef; def *\* == \~wv enddef; - def | == (_com,_mark) enddef; def || == (_com,_moff) enddef; def ||| == (_com,_term) enddef; - def |< == (_com,_len_s) enddef; def >| == (_com,_len_e) enddef; - def |<< == (_com,_len_ss) enddef; def >>| == (_com,_len_ee) enddef; - def |=primary n == |<,(_chg_len,n) enddef; def =| == >| enddef; def :| == (_com,_rest) enddef; + def | == (_com,_mark) enddef; def || == (_com,_moff) enddef; + def #primary n == (_com,_len_s),(_chg_len,n) enddef; def ## == (_com,_len_e) enddef; def /secondary n == if known n:: (_group_si,n) else:: _nop fi enddef; - def //secondary n == /n~dm enddef; def */secondary n == /n~wf enddef; - def /*secondary n == /n~zf enddef; def */*secondary n == /n~wv enddef; - def **secondary n == /n~nb enddef; - vardef '(text TXT)== read_mcf(incr parts_cnt)(|,``crR,TXT,:|); parts_cnt enddef; - def CP == com_par enddef; - def CPe == com_par_ex(0) enddef; - def CPx == com_par_ex(1) enddef; + def //secondary n == /n~dm enddef; def */secondary n == /n~wf enddef; + def /*secondary n == /n~zf enddef; def */*secondary n == /n~wv enddef; + def **secondary n == /n~nb enddef; vardef $primary a == a-4095 enddef; + vardef '(text TXT)==read_mcf(incr parts_cnt)(|,#crR,TXT,##,(_com,_rest)); parts_cnt enddef; enddef; %------------------------------------------------------------------------------------------------- +def CP == com_par enddef; def CPe == com_par_ex(0) enddef; def CPx == com_par_ex(1) enddef; vardef '(text TXT)= parts_cnt:=parts_cnt+1; read_mcf(parts_cnt)(TXT); parts_cnt enddef; %================================================================================================= def read_mcf(expr n)(text TXT)= @@ -371,8 +362,12 @@ def read_mcf(expr n)(text TXT)= else:: nCP:=nCP+1; comD[n][nCP]:=_mk_bond; parD[n][nCP]:=list; fi elseif string list:: - str_cnt:=str_cnt+1; strD[str_cnt]:=list; - nCP:=nCP+1; comD[n][nCP]:=_set_atom; parD[n][nCP]:=str_cnt; + if (list=="+")or(list=="-"):: + nCP:=nCP+1; comD[n][nCP]:=_set_add; parD[n][nCP]:=ASCII(list); + else:: + str_cnt:=str_cnt+1; strD[str_cnt]:=list; + nCP:=nCP+1; comD[n][nCP]:=_set_atom; parD[n][nCP]:=str_cnt; + fi fi else:: message "unknown command in "AND decimal(n); fi @@ -440,8 +435,6 @@ vardef change_bond(expr a,b) = CP(_set_adr,-4) CP(_set_line,dl) elseif b==Ph2:: fuse_ring(a,6) CP(_set_adr,-1) CP(_set_line,dl) CP(_set_adr,-3) CP(_set_line,dl) CP(_set_adr,-5) CP(_set_line,dl) - elseif b==_jump_at:: CP(_jp_bond,a) - elseif b==_connect_at:: CP(_cyc_sB,a) elseif comD[b][1]==_fuse:: if comD[b][2]<=6:: fuse_ring_bonds(a,parD[b][1],comD[b][2]) elseif (comD[b][2]>=11)and(comD[b][2]<=15):: fuse_ring_size(a,parD[b][1],comD[b][2]) @@ -461,7 +454,7 @@ vardef change_atom(expr a,b)= nCP:=0; if numeric b:: if (b GT parts_emb_start)and(b<=parts_atom_end):: CPe(a)(_chg_atom,b) - ef b==NH:: CPe(a)(_chg_atom,N) CP(_tmp_line,nl) + ef b==NH:: CPe(a)(_chg_atom,N) if NH<>xNH:: CP(_tmp_line,nl) fi CP(_com,_group_s) CPx(a)(_group_si,H) CP(_com,_group_e) ef b==N!:: CPe(a)(_chg_atom,N) CP(_com,_group_s) CPx(a)(_group_si,_) CP(_com,_group_e) ef b==N!2:: CPe(a)(_chg_atom,N) CP(_com,_group_s) CPx(a)(_group_si,!) CP(_com,_group_e) @@ -472,14 +465,10 @@ vardef change_atom(expr a,b)= CP(_tmp_line,dm) CP(_tmp_rot,-35) CPx(a)(_group_si,O) CP(_com,_group_e) ef b==SO:: CPe(a)(_chg_atom,S) CP(_com,_group_s) CP(_tmp_line,dm) CPx(a)(_group_si,O) CP(_com,_group_e) - ef b==_jump_at:: CP(_jp_atom,a) - ef b==_connect_at:: CP(_cyc,a) - fi - ef pair b:: - if xpart(b)==_set_and:: CP(_set_and,ypart(b)) CP(_chg_and,a) - else:: CP(_com,_group_s) CPx(a)(xpart(b),ypart(b)) CP(_com,_group_e) fi - ef color b:: color_list[incr cntC]:=b; CPe(a)(_set_colorA,cntC) + ef pair b:: CP(_com,_group_s) CPx(a)(xpart(b),ypart(b)) CP(_com,_group_e) + ef string b:: CP(_com,_group_s) CP(_set_add,ASCII(b)) CP(_chg_add,a) CP(_com,_group_e) + ef color b:: color_list[incr cntC]:=b; CPe(a)(_set_colorA,cntC) fi cntD[parts_int]:=nCP; parts_int %------- Retern value ------- @@ -740,21 +729,21 @@ enddef; %------------------------------------------------------------------------------------------------- def MC(text TXT)= begingroup - save f_bra,strAT,cnt_group,temp_lenE,temp_lenF,temp_cntB,f_end,f_term,f_at,f_lineT,f_rotT, + save f_bra,strAT,cnt_group,temp_lenE,temp_lenF,temp_cntB,f_term,f_at,f_lineT,f_rotT, f_lenT,f_envT,sA,factor,m_wd,m_ht,temp_p,defaultsize,defaultscale; string sA; pair temp_p; %----------------------------------------------------------------------------------------------- if (sw_numberA>=1)or(sw_numberB>=1): ratio_atom_bond:=0.25; fi - if (sw_expand=1)or(sw_mol_out>=1): expand_set; fi - cntA:=cntB:=cnt_group:=cntC:=0; strD[0]:="C"; str_cnt:=2000; crR:=-ratio_chain_ring; + if (sw_expand=1)or(sw_mol_out>=1): expand_set; crR:=1; else: crR:=-ratio_chain_ring; fi + cntA:=cntB:=cnt_group:=cntC:=0; strD[0]:="C"; str_cnt:=2000; %----------------------------------------------------------------------------------------------- font_wd:=xpart(fsize); font_ht:=ypart(fsize); margin_lr:=xpart(fmargin); margin_tb:=ypart(fmargin); %=============================================================================================== - read_mcf(0)(TXT,|||); + read_mcf(0)(TXT,(_com,_term)); proc_bond_atom(0)(1); if (cnt_group>0)and(sw_group_off=0): read_group(0)(1); fi char_use_check; @@ -777,28 +766,24 @@ def MC(text TXT)= else: factor:=((font_wd-2margin_lr)*xpart(msize))/mol_wd; fi fi - exitif (factor>=1-eps)and(factor<=1+eps); - blen:=blen*factor; - proc_size_setup; + exitif (factor>=1-eps)and(factor<=1+eps); blen:=blen*factor; proc_size_setup; endfor - if blen>max_blength: - blen:=max_blength; proc_size_setup; proc_skeleton(0); proc_scaling; - fi + if blen>max_blength: blen:=max_blength; proc_size_setup; proc_skeleton(0); proc_scaling; fi fi - %-draw atom-------------------------------------------------------------------------------------- + %-draw atom------------------------------------------------------------------------------------- if (sw_numberA=0)and(sw_numberB=0): for i=1 upto cntA: draw_atom(i); endfor fi - %-draw charge------------------------------------------------------------------------------------ + %-draw add to atom------------------------------------------------------------------------------ for i=1 upto cntA: - if andA[i]<>0: - sA:=char(andA[i]); nA:=angX[i]+and_rot[i]; nC:=nA mod 90; + if addA[i]<>0: + sA:=char(addA[i]); nA:=angX[i]+add_rot[i]; nC:=nA mod 90; + if sA="+": chargeA[i]:=1; elseif sA="-": chargeA[i]:=-1; else: chargeA[i]:=0; fi if numS[i]=0: nB:=.5atom_wd; - else: nB:=.85atom_wd+iif(nC<45,sind(nC),cosd(nC))*.5atom_wd; + else: nB:=.85wdA[i]+iif(nC<45,sind(nC),cosd(nC))*.5wdA[i]; fi temp_p:=sfrt(posA[i]-(.35atom_wd,.35atom_wd),nB,nA); draw_char(sA,temp_p,atom_wd,bond_pen_wd*ratio_char_bond,0); - else: sA:=""; + else: chargeA[i]:=0; fi - if sA="+": chargeA[i]:=1; elseif sA="-": chargeA[i]:=-1; else: chargeA[i]:=0; fi endfor %-draw bond------------------------------------------------------------------------------------- for i=1 upto cntB: if lineB[i]0): rotT:=0; fi add_atom; + if com=_mk_bond: if (par=0)and(rotT<>0): rotT:=0; fi add_atom(0); ef com=_set_adr: adrT:=par; ef com=_com: if par=_mark: saveA:=markA; saveB:=markB; markA:=cntA; markB:=cntB; ef par=_rest: markA:=saveA; markB:=saveB; @@ -982,28 +967,29 @@ def proc_bond_atom(expr a)(expr n)= ef com=_set_line: lineB[getB(adrT)]:=par; ef com=_tmp_line: lineT:=par; ef com=_tmp_rot: rotT:=par; - ef com=_cyc: f_end:=getA(par); check_adrA(f_end); add_atom; - ef com=_cyc_eB: f_end:=eB[getB(par)]; add_atom; - ef com=_cyc_sB: f_end:=sB[getB(par)]; add_atom; + ef com=_cyc: check_adrA(getA(par)); add_atom(getA(par)); + ef com=_cyc_eB: add_atom(eB[getB(par)]); + ef com=_cyc_sB: add_atom(sB[getB(par)]); ef com=_chg_env: envB:=par; ef com=_tmp_env: envT:=par; ef com=_set_colorA: colorA[getA(adrT)]:=par; ef com=_set_colorB: colorB[getB(adrT)]:=par; - ef com=_set_and: andAT:=par; - ef com=_chg_and: andA[getA(par)]:=andAT; andAT:=0; if rotT<>0: and_rot[getA(par)]:=rotT; fi + ef com=_set_add: addAT:=par; + ef com=_chg_add: addA[getA(par)]:=addAT; addAT:=0; if rotT<>0: add_rot[getA(par)]:=rotT; fi else: fi endfor enddef; %------------------------------------------------------------------------------------------------- -def add_atom= +def add_atom(expr n)= cntB:=cntB+1; lineB[cntB]:=lineT; lineT:=si; if lenT=crR: lenB[cntB]:=bondL; else: lenB[cntB]:=lenT; lenT:=crR; fi if f_bra=0: cntA:=cntA+1; sB[cntB]:=cntA; numS[cntA]:=strAT; - andA[cntA]:=andAT; andAT:=strAT:=and_rot[cntA]:=0; - if rotT<>0: and_rot[cntA]:=rotT; rotT:=0; fi - if f_MP=1: colorA[cntA]:=colorB[cntA]:=0; fi else: f_bra:=0; fi - if f_end=0: eB[cntB]:=cntA+1; f_term:=0; else: eB[cntB]:=f_end; f_end:=0; f_term:=1; fi + addA[cntA]:=addAT; addAT:=strAT:=add_rot[cntA]:=0; + if rotT<>0: add_rot[cntA]:=rotT; rotT:=0; fi + if f_MP=1: colorA[cntA]:=colorB[cntA]:=0; fi + else: f_bra:=0; fi + if n=0: eB[cntB]:=cntA+1; f_term:=0; else: eB[cntB]:=n; f_term:=1; fi enddef; %-------------------------------------------------------------------------------------------------- def check_adrA(expr n)= @@ -1012,20 +998,20 @@ enddef; def check_adrB(expr n)= if (n>cntB)or(n<=0): errmessage("cntB=[ "&decimal(n)&" ]"); fi enddef; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% def proc_skeleton(expr a)= - markA:=markB:=cntA:=cntB:=f_end:=f_bra:=rotT:=f_term:=0; + markA:=markB:=cntA:=cntB:=f_bra:=rotT:=f_term:=0; envT:=envB:=f_lineT:=f_rotT:=f_lenT:=f_envT:=0; lineT:=si; angT:=mangle; angA[0]:=angB[0]:=angX[0]:=0; posA[0]:=posBs:=posBe:=(0,0); %----------------------------------------------------------------------------------------------- for i=1 upto cntD[a]: com:=comD[a][i]; par:=parD[a][i]; - if com=_mk_bond: if (par=0)and(rotT<>0):par:=rotT; rotT:=0; fi add_bond(par); + if com=_mk_bond: if (par=0)and(rotT<>0):par:=rotT; rotT:=0; fi add_bond(par,1); ef com=_com: if par=_mark: saveA:=markA; saveB:=markB; markA:=cntA; markB:=cntB; ef par=_rest: markA:=saveA; markB:=saveB; ef par=_moff: markA:=markB:=0; ef par=_term: termB; ef par=_group_e: lineT:=si; lenT:=crR; rotT:=envT:=0; fi - ef com=_jp_bond: termB; nA:=getB(par); posBs:=posA[sB[nA]]; angT:=angB[nA]; f_bra:=1; rotT:=0; + ef com=_jp_bond: termB; nA:=getB(par); posBs:=posA[sB[nA]]; angT:=angB[nA]; f_bra:=1; rotT:=0; ef com=_jp_atom: termB; adrT:=getA(par); posBs:=posA[adrT]; angT:=angX[adrT]; f_bra:=1; rotT:=0; ef com=_jp_absA: adrT:=par; posBs:=posA[adrT]; - angT:=angX[adrT]; f_bra:=1; rotT:=0; temp_cntB:=cntB; + angT:=angX[adrT]; f_bra:=1; rotT:=0; temp_cntB:=cntB; ef com=_adj_ang: if (angT<40)or(angT>320): angT:=0; ef angT<140: angT:=90; ef angT<220: angT:=180; else: angT:=270; fi ef com=_rot_ang: angT:=(angT+par) mod 360; @@ -1033,49 +1019,44 @@ def proc_skeleton(expr a)= ef com=_group_si: rotT:=0; ef com=_chg_env: envB:=par; ef com=_tmp_env: envT:=par; - ef com=_cyc: f_end:=1; proc_cyc(getA(par)); - ef com=_cyc_sB: f_end:=1; proc_cyc(sB[getB(par)]); - ef com=_cyc_eB: f_end:=1; proc_cyc(eB[getB(par)]); + ef com=_cyc: add_bond(angle(posA[getA(par)]-posBs)-angT,0); + ef com=_cyc_sB: add_bond(angle(posA[sB[getB(par)]]-posBs)-angT,0); + ef com=_cyc_eB: add_bond(angle(posA[eB[getB(par)]]-posBs)-angT,0); else: fi endfor enddef; %------------------------------------------------------------------------------------------------- -def add_bond(expr ROT)= - if ROT=_arg_ang: - if cntB=0: angT:=(angT-180) mod 360; nA:=180; - else: - nB:=(angT mod 360); - if envB>=parts_emb_start: nA:=parD[envB][cntB-temp_cntB+2]; - else: - if envB=hz: - if nB=0:nA:= 60;ef nB<=90:nA:=-60;ef nB<=180:nA:= 60;ef nB<270:nA:=-60;else:nA:= 60; fi - ef envB=vt: - if nB=0:nA:=-60;ef nB<90: nA:= 60;ef nB<=180:nA:=-60;ef nB<=270:nA:=60;else:nA:=-60; fi - ef (envB>=-180)and(envB<=180): nA:=envB; - fi - fi - fi - else: nA:=ROT; - fi +def add_bond(expr ROT,FLG)= + if ROT=_arg_ang: nA:=arrange_ang(angT mod 360); else: nA:=ROT; fi if f_bra=0: adrT:=cntA:=cntA+1; posA[cntA]:=posBs; angA[cntA]:=angT; angX[cntA]:=(angT+nA/2+iif(nA>=0,-90,90)) mod 360; else: f_bra:=0; fi - angB[cntB+1]:=angT:=(angT+nA) mod 360; - if f_end=0: - if lenB[cntB+1]=_size_atom: posBe:=sfrt(posBs,atom_wd,angT); + cntB:=cntB+1; angB[cntB]:=angT:=(angT+nA) mod 360; + if FLG=1: + if lenB[cntB]=_size_atom: posBe:=sfrt(posBs,atom_wd,angT); else: - nA:=lenB[cntB+1]; + nA:=lenB[cntB]; if nA<0: nB:=glu_atom(adrT)+glu_atom(cntA+1); nA:=abs(nA); else: nB:=0; fi posBe:=sfrt(posBs,nA*blen+nB,angT); fi posA[cntA+1]:=posBe; f_term:=0; + else: f_term:=1; + fi + posBs:=posBe; +enddef; +%------------------------------------------------------------------------------------------------- +vardef arrange_ang(expr n)= + if cntB=0: angT:=(angT-180) mod 360; 180 else: - f_end:=0; f_term:=1; + if envB>=parts_emb_start: parD[envB][cntB-temp_cntB+2] + else: if envB=hz: if n=0: 60 ef n<=90:-60 ef n<=180: 60 ef n<270: -60 else: 60 fi + ef envB=vt: if n=0:-60 ef n<90: 60 ef n<=180:-60 ef n<=270: 60 else:-60 fi + ef abs(envB)<=180: envB fi + fi fi - cntB:=cntB+1; posBs:=posBe; enddef; %================================================================================================= vardef getA(expr n)= if n>=0: markA+n ef n>=-999: cntA+n+1 else: n+4095 fi enddef; @@ -1084,8 +1065,8 @@ vardef getB(expr n)= if n>=0: markB+n ef n>=-999: cntB+n+1 else: n+4095 fi endde def termA= if f_term=0: if f_bra=0: - cntA:=cntA+1; numS[cntA]:=strAT; andAT:=strAT:=and_rot[cntA]:=andA[cntA]:=0; - if rotT<>0: and_rot[cntA]:=rotT; rotT:=0; fi + cntA:=cntA+1; numS[cntA]:=strAT; addA[cntA]:=addAT; add_rot[cntA]:=rotT; + addAT:=strAT:=rotT:=0; if f_MP=1: colorA[cntA]:=0; fi else: f_bra:=0; fi @@ -1094,11 +1075,9 @@ def termA= enddef; %------------------------------------------------------------------------------------------------- def termB= - if f_term=0: if f_bra=0: cntA:=cntA+1; angX[cntA]:=angT mod 360; else:f_bra:=0; fi f_term:=1; fi + if f_term=0: if f_bra=0:cntA:=cntA+1; angX[cntA]:=angT mod 360; else:f_bra:=0; fi f_term:=1; fi enddef; %------------------------------------------------------------------------------------------------- -def proc_cyc(expr n)= add_bond(angle(posA[n]-posBs)-angT); enddef; -%------------------------------------------------------------------------------------------------- vardef glu_atom(expr NUM)= if numS[NUM]<>0: nE:=angT mod 90; nF:=0.5atom_wd;(iif(nE<45,sind(nE),cosd(nE))*nF)++nF else: 0 fi enddef; @@ -1407,7 +1386,7 @@ vardef fdl(expr n)(expr s)=fixed_l(n)(decimal(s)) enddef; def warning(expr s)= message "% "&decimal(char_num)&fdr(3)(incr warning_cnt)&")"&s; enddef; %------------------------------------------------------------------------------------------------- def warning_bond(expr a)= - if andA[a]=0: + if addA[a]=0: warning("A"&decimal(a)&" ( "&fixed_l(8)(strD[numS[a]])&") has"&fdr(2)(bond_cnt)&" bonds"); fi enddef; @@ -1419,7 +1398,9 @@ vardef cut_paren(expr ATOM)= if (length(ATOM)>=4)and(ATOM<>"COOH"): for i=0 upto length(ATOM)-1: temp_c:=subc(i,ATOM); - if (temp_c<>"{")and(temp_c<>"}")and(temp_c<>"_")and(temp_c<>"^"): temp_s:=temp_s&temp_c; fi + if (temp_c<>"{")and(temp_c<>"}")and(temp_c<>"_")and(temp_c<>"^") + and(temp_c<>"+")and(temp_c<>"-"): + temp_s:=temp_s&temp_c; fi endfor temp_s else: ATOM @@ -1433,9 +1414,6 @@ def proc_calc= nE:=parts_emb_start; for i=1 upto tbl_atom_end: sumA[i]:=0; endfor for i=1 upto cntA: - if (numS[i]>str_plus)and(numS[i]<=str_minus): chargeA[i]:=1; - elseif (numS[i]>str_minus)and(numS[i]<=str_minus_end): chargeA[i]:=-1; - fi knownA:=bond_cnt:=0; nS:=numS[i]; for j=1 upto cntB: @@ -1502,9 +1480,9 @@ def proc_calc= else: num_MW:=cen_MW; cal_MW:=fdr(6)(cen_MW)&"*100"; fi if cen_MI<40: cal_MI:=substring (0,10) of decimal(num_MI); else: num_MI:=cen_MI; cal_MI:=fdr(8)(cen_MI)&"*100"; fi - if sw_aux_out>=1: proc_auxfile_out; fi - if sw_rep_out=1: proc_report_out; fi - if sw_mol_out>=1: proc_mol_out; fi + if (sw_aux_out>=1)and(cntM=1): proc_auxfile_out; fi + if (sw_rep_out=1)and(cntM=1): proc_report_out; fi + if (sw_mol_out>=1)and(cntM=1): proc_mol_out; fi endgroup enddef; %================================================================================================= @@ -1606,76 +1584,59 @@ def proc_report_out= enddef; %================================================================================================= def proc_mol_out= - begingroup - save chg_cnt,chg_atm,chg_chg; - nA:=nB:=chg_cnt:=0; message "["&decimal(char_num)&"]:"&inf_EN; out_file_name:=out_file_mol; - if sw_mol_out<=2: - out_file_name:=out_file_mol; - if sw_mol_out=1: proc_vdk; elseif sw_mol_out=2: proc_vtk; fi - fi - endgroup -enddef; -%-V2000------------------------------------------------------------------------------------------ -def proc_vdk= - printf ""; printf " -MCFtoMOL- "&fixed_l(20)(info[1]); - printf ""; - printf fdr(3)(cntA)&fdr(3)(cntB)&" 0 0 0 0 0 0 0 0999 V2000"; - for i=1 upto cntA: - printf fdr(10)(xpart(posA[i])/blen)& fdr(10)(ypart(posA[i])/blen)& - fdr(10)(0)&" "&fixed_l(2)(cut_paren(strD[numS[i]]))&" 0 0 0 0"; - if chargeA[i]<>0: chg_atm[incr chg_cnt]:=i; chg_chg[chg_cnt]:=chargeA[i]; fi - endfor - for i=1 upto cntB: - if lineB[i]<>0: - proc_bond_class(lineB[i]); - printf fdr(3)(sB[i])&fdr(3)(eB[i])&fdr(3)(nA)&fdr(3)(nB)&" 0 0"; - fi - endfor - if chg_cnt>0: - printf "M CHG"&fdr(3)(chg_cnt) - for i=1 upto chg_cnt: &fdr(4)(chg_atm[i])&fdr(4)(chg_chg[i]) endfor; + %-V2000--------------------------------------------------------------------------------------- + if sw_mol_out=1: + printf ""; printf " -MCFtoMOL- "&fixed_l(20)(info[1]); printf ""; + printf fdr(3)(cntA)&fdr(3)(cntB)&" 0 0 0 0 0 0 0 0999 V2000"; + for i=1 upto cntA: + printf fdr(10)(xpart(posA[i])/blen)& fdr(10)(ypart(posA[i])/blen)&fdr(10)(0)&" "& + fixed_l(2)(cut_paren(strD[numS[i]]))&" 0"&fdr(3)(bond_charge(chargeA[i]))&" 0 0"; + endfor + for i=1 upto cntB: + if lineB[i]<>0: + printf fdr(3)(sB[i])&fdr(3)(eB[i])&fdr(3)(bond_type(lineB[i]))& + fdr(3)(bond_stereo(lineB[i]))&" 0 0"; + fi + endfor + printf "M END"; + %-V3000--------------------------------------------------------------------------------------- + elseif sw_mol_out=2: + printf ""; printf " -MCFtoMOL- "&fixed_l(20)(info[1]); printf ""; + printf " 0 0 0 0 0 999 V3000"; + printf "M V30 BEGIN CTAB"; + printf "M V30 COUNTS "&decimal(cntA)&" "&decimal(cntB)&" 0 0 0"; + printf "M V30 BEGIN ATOM"; + for i=1 upto cntA: + printf "M V30 "&decimal(i)&" "&cut_paren(strD[numS[i]])&" "& + decimal(xpart(posA[i])/blen)&" "&decimal(ypart(posA[i])/blen)&" 0 0" + if chargeA[i]<>0: &" CHG="&decimal(chargeA[i]) fi; + endfor + printf "M V30 END ATOM"; printf "M V30 BEGIN BOND"; + for i=1 upto cntB: + if lineB[i]<>0: + printf "M V30 "&decimal(i)&" "&decimal(bond_type(lineB[i]))& + " "&decimal(sB[i])&" "&decimal(eB[i]) + if bond_stereo(lineB[i])<>0: &" CFG="&decimal(bond_config(lineB[i])) fi; + fi + endfor + printf "M V30 END BOND"; printf "M V30 END CTAB"; printf "M END"; fi - printf "M END"; -enddef; -%-V3000--------------------------------------------------------------------------------------- -def proc_vtk= - printf ""; printf " -MCFtoMOL- "&fixed_l(20)(info[1]); - printf ""; - printf " 0 0 0 0 0 999 V3000"; - printf "M V30 BEGIN CTAB"; - printf "M V30 COUNTS "&decimal(cntA)&" "&decimal(cntB)&" 0 0 0"; - printf "M V30 BEGIN ATOM"; - for i=1 upto cntA: - printf "M V30 "&decimal(i)&" "&cut_paren(strD[numS[i]])&" "& - decimal(xpart(posA[i])/blen)&" "&decimal(ypart(posA[i])/blen)&" 0 0" - if chargeA[i]<>0: &" CHG="&decimal(chargeA[i]) fi; - endfor - printf "M V30 END ATOM"; - printf "M V30 BEGIN BOND"; - for i=1 upto cntB: - if lineB[i]<>0: - proc_bond_class(lineB[i]); - printf "M V30 "&decimal(i)&" "&decimal(nA)&" "&decimal(sB[i])&" "&decimal(eB[i]); - fi - endfor - printf "M V30 END BOND"; - printf "M V30 END CTAB"; - printf "M END"; enddef; %------------------------------------------------------------------------------------------------- vardef fit_zero(expr n)=if n<=9: "00" elseif n<=99: "0" else: "" fi &decimal(n) enddef; %------------------------------------------------------------------------------------------------- -def proc_bond_class(expr n)= - if (n=dl)or(n=dr)or(n=dm): nA:=2; - ef n=tm: nA:=3; - ef (n=wf)or(n=zb)or(n=bd): nB:=1; - ef (n=zf)or(n=wb)or(n=dt): nB:=6; - ef n=wv: nB:=4; - else: nA:=1; nB:=0; - fi -enddef; +vardef bond_type(expr n)= + if (n=dl)or(n=dr)or(n=dm)or(n=db)or(n=dl_)or(n=dr_)or(n=dm_): 2 ef n=tm: 3 else: 1 fi enddef; +%------------------------------------------------------------------------------------------------- +vardef bond_charge(expr n)= if n=2: 1 ef n=1: 3 ef n=-1: 5 ef n=-2: 6 else: 0 fi enddef; +%------------------------------------------------------------------------------------------------- +vardef bond_stereo(expr n)= + if (n=wf)or(n=zb)or(n=bd): 1 ef (n=zf)or(n=wb)or(n=dt): 6 ef n=wv: 4 else: 0 fi enddef; +%------------------------------------------------------------------------------------------------- +vardef bond_config(expr n)= + if (n=wf)or(n=zb)or(n=bd): 1 ef (n=zf)or(n=wb)or(n=dt): 3 ef n=wv: 2 else: 0 fi enddef; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% vardef STa(expr ATOM,WT,MI)= str_cnt:=str_cnt+1; tbl_cnt:=tbl_cnt+1; parts_cnt:=parts_cnt+1; @@ -1717,10 +1678,10 @@ N:= STa("N" ,14.0067, 14.00307400443); Na:=STa("{Na}",22.98977, 22.989769 Ni:=STa("{Ni}",58.693, 57.93534241); O:= STa("O" ,15.9994, 15.99491461957); P:= STa("P" ,30.973762, 30.97376199842); Pb:= STa("Pb" ,207.2, 205.974455); Pd:=STa("Pd" ,106.4, 107.905075); -S:= STa("S" ,32.065, 31.9720711744); Sb:= STa("Sb" ,121.75, 0.0); +S:= STa("S" ,32.065, 31.9720711744); Sb:= STa("Sb" ,121.75, 120.90381); Se:=STa("{Se}",78.971, 79.9165218); Si:=STa("{Si}",28.0855, 27.97692653465); Sn:=STa("{Sn}",118.71, 119.90220163); Ti:=STa("{Ti}",47.867, 47.94794198); -U:= STa("U", 238.0289, 238.05079); V:= STa("V", 50.9415, 0.0); +U:= STa("U", 238.0289, 238.05079); V:= STa("V", 50.9415, 50.943957); W:= STa("W", 183.85, 181.948225); Zn:=STa("{Zn}",65.409, 63.92914201); tbl_atom_end:=tbl_cnt; %------------------------------------------------------------------------------------------------- @@ -1730,23 +1691,16 @@ NO:=STb("NO")(N,O); NO2:=STb("N{O_2_}")(N,O,O); NH2:=STb("N{H_2_}")(N,H,H); SO2H:=STb("S{O_2_}H")(S,O,O,H); SO3H:=STb("S{O_3_}H")(S,O,O,O,H); ONa:=STb("O{Na}")(O,Na); SO3Na:=STb("S{O_3_}{Na}")(S,O,O,O,Na); %------------------------------------------------------------------------------------------------- -str_plus:=str_cnt; -N[1]:=STb("{N^+^}")(N); H[1]:=STb("{H^+^}")(H); Na[1]:=STb("{Na^+^}")(Na); K[1]:=STb("{K^+^}")(K); -NH3[1]:= STb("{N^+^}{H_3_}")(N,H,H,H); NH4[1]:= STb("{N^+^}{H_4_}")(N,H,H,H,H); -S[1]:= STb("{S^+^}")(S); -str_minus:=str_cnt; -O[-1]:=STb("{O^-^}")(O); COO[-1]:=STb("COO^-^")(C,O,O); SO3[-1]:=STb("S{O_3_}^-^")(S,O,O,O); -Cl[-1]:=STb("{Cl^-^}")(Cl); Br[-1]:=STb("{Br^-^}")(Br); I[-1]:=STb("{I^-^}")(I); -%------------------------------------------------------------------------------------------------- -str_minus_end:=str_cnt; tbl_group_end:=tbl_cnt; parts_atom_end:=parts_cnt; %================================================================================================= -for i==3 upto 20: ?[i]:='(|<<,(_get_len,_ring_len),<((-180 DIV i)-90) - for j==2 upto i:: ,(360 DIV i) endfor,(_cyc_sB,1-i),>>|); endfor +for i==3 upto 20: ?[i]:='((_com,_len_ss),(_get_len,_ring_len),<((-180 DIV i)-90) + for j==2 upto i:: ,(360 DIV i) endfor,(_cyc_sB,1-i),(_com,_len_ee)); endfor Ph:=Ph1:='(?6,-2=dl,-4=dl,-6=dl); Ph2:='(?6,-1=dl,-3=dl,-5=dl); !:=!1:='((_mk_bond,_arg_ang)); !!:='(!~db); !!!:='(!~tm); -for i==2 upto 20: ![i]:='(|<<,(_get_len,_tmp_len),! for j==2 upto i::,! endfor ,>>|); endfor +for i==2 upto 20: + ![i]:='((_com,_len_ss),(_get_len,_tmp_len),! for j==2 upto i::,! endfor ,(_com,_len_ee)); +endfor Me:='(); Et:='(!); iPr:=?!:='(/_,!); tBu:=??!:='(/_,/_^60,60); !?!:='(!,?!); !??!:='(!,??!); %------------------------------------------------------------------------------------------------- NH:='(N,/H~nl); N!:='(N,/_); N!2:='(N,/!); SO:='(S,//O); SOO:='(S,//O^-35,//O^35); -- cgit v1.2.3