diff options
author | Karl Berry <karl@freefriends.org> | 2017-08-13 21:01:02 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2017-08-13 21:01:02 +0000 |
commit | 7a6b2d5ba887cdbdefc6e51ed4229bb69a2a6df8 (patch) | |
tree | 4a6d7e2dc720802d18a6f53557a41b63eff39d00 /Master | |
parent | 4b4995cda35627e06c43e25ecbe07c1bc1859bb5 (diff) |
mcf2graph (13aug17)
git-svn-id: svn://tug.org/texlive/trunk@45032 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rw-r--r-- | Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG | 6 | ||||
-rw-r--r-- | Master/texmf-dist/doc/metapost/mcf2graph/README | 2 | ||||
-rw-r--r-- | Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mf | 4 | ||||
-rw-r--r-- | Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf | bin | 236356 -> 236265 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc-064.eps | 14 | ||||
-rw-r--r-- | Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf | 10 | ||||
-rw-r--r-- | Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf | bin | 474345 -> 474997 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.pdf | bin | 174509 -> 224755 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex | 341 | ||||
-rw-r--r-- | Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf | 89 |
10 files changed, 314 insertions, 152 deletions
diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG b/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG index 4de23e53dfc..96703fe9372 100644 --- a/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG +++ b/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG @@ -1,6 +1,10 @@ ******************************************************************************* - Changelog of mcf2graph software package by Akira Yamaji 2017-07-23 + Changelog of mcf2graph software package by Akira Yamaji 2017-08-13 ******************************************************************************* +[ver. 4.26 / 2017-08-13] + -improve label emulation + -update MCF syntax manual + [ver. 4.25 / 2017-07-23] -improve label,arrow emulation -change variable name diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/README b/Master/texmf-dist/doc/metapost/mcf2graph/README index ea893d97259..aedd529e659 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.25 2017-07-23 + version : 4.26 2017-08-13 E-mail : mcf2graph@gmail.com Located at : http://www.ctan.org/pkg/mcf2graph ******************************************************************************** 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 b0b17391ec1..ae5e2c82868 100644 --- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mf +++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mf @@ -1,7 +1,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% Molecular Coding Format for mcf_example.tex by Akira Yamaji 2017.07.23 +% Molecular Coding Format for mcf_example.tex by Akira Yamaji 2017.08.13 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -input mcf2graph.mf; %%% it must be version 4.25 or later +input mcf2graph.mf; %%% it must be version 4.26 or later %------------------------------------------------------------------------- font_wd:=33mm; font_ht:=24mm; diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf Binary files differindex 124f7f52095..3d176a0cc4e 100644 --- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf +++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc-064.eps b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc-064.eps index 18cc3933692..916aa5041ea 100644 --- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc-064.eps +++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc-064.eps @@ -2,7 +2,7 @@ %%BoundingBox: -1 -1 212 60 %%HiResBoundingBox: -0.09962 -0.09962 211.90288 59.64348 %%Creator: MetaPost 2.000 -%%CreationDate: 2017.07.23:0937 +%%CreationDate: 2017.08.12:2126 %%Pages: 1 %%DocumentResources: procset mpost-minimal %%+ font NJFVSO-NimbusSanL-Regu ICXWUR-CMR8 @@ -627,23 +627,23 @@ newpath 162.09586 15.27437 moveto 172.64706 9.18266 lineto stroke newpath 162.09586 34.62903 moveto 172.64706 40.7208 lineto stroke -124.69017 11.39201 moveto +126.2985 11.39201 moveto (N) cmr8 7.73563 fshow 141.45183 40.42401 moveto (N) cmr8 7.73563 fshow 173.03534 2.83464 moveto (C) cmr8 7.73563 fshow -180.80003 2.83464 moveto +178.97145 2.83464 moveto (O) cmr8 7.73563 fshow -188.56473 2.83464 moveto +185.36418 2.83464 moveto (O) cmr8 7.73563 fshow -196.32942 2.83464 moveto +191.75691 2.83464 moveto (H) cmr8 7.73563 fshow 173.03534 39.30405 moveto (N) cmr8 7.73563 fshow -180.80003 39.30405 moveto +179.19171 39.30405 moveto (O) cmr8 7.73563 fshow -188.56473 35.42169 moveto +185.58444 35.42169 moveto (2) cmr8 7.73563 fshow 126.79016 52.25127 moveto (\(cmr8\)) uhvr8r 9.96265 fshow 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 61053eec416..89bcbc7be84 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 2017.07.12 +% Molecular Coding Format file for mcf_manual.tex by Akira.Yamaji 2017.08.13 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -input mcf2graph.mf; %% it must be version 4.24 or later +input mcf2graph.mf; %% it must be version 4.26 or later %------------------------------------------------------------------------ sw_auxout:=0; sw_mol_frame:=0; @@ -115,7 +115,7 @@ beginfont("EN:Chain 1") {1^-75,2^67.5,3^-60,4^75,5^-75,6^60}:/_~dt ) ext( - defaultsize:=4bp; + defaultscale:=0.5; labeloffset:=2bp; drawarrow .7[B7s,B7e]{dir(B7dir-90)}..{dir(B1dir-90)}.7[B1s,B1e]; label.ulft("-30",.7[B7s,B7e]); @@ -142,7 +142,7 @@ beginfont("EN:Chain 2") {1^-60,2^60,3^-60,4^60,5^-60,6^60}:/_~dt ) ext( - defaultsize:=4bp; + defaultscale:=0.5; labeloffset:=2bp; drawarrow .7[B7s,B7e]{dir(B7dir-90)}..{dir(B1dir-90)}.7[B1s,B1e]; label.ulft("-60",.7[B7s,B7e]); @@ -227,7 +227,7 @@ beginfont("EN:rotate 1") sw_numberB:=1; ratio_chain_ring:=1; numberB_end:=5; - defaultsize:=4bp; + defaultscale:=0.5; labeloffset:=2bp; MCf(``1,0,0,<90,0,<-90,0,0,{1,2,3,4,5}=vf, {3,4^180}:/_~dt) diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf Binary files differindex 8ae541b17f1..8e876384a48 100644 --- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf +++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.pdf b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.pdf Binary files differindex c7194b93da4..14df919bc0a 100644 --- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.pdf +++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.pdf 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 108a88466ae..621c6342c08 100644 --- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex +++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex @@ -1,83 +1,29 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% Example of MCF typest with LuaLaTeX(luamplib) by A.Yamaji 2017.07.23 +% Example of MCF typest with LuaLaTeX(luamplib) by A.Yamaji 2017.08.13 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%% mcf2graph.mf it must be version 4.25 or later +%%% mcf2graph.mf it must be version 4.26 or later \documentclass{article} %------------------------------------------------------------------------------ \usepackage{luamplib}% -%%%%%%%\usepackage{lmodern}% \usepackage[T1]{fontenc}% \usepackage{textcomp}% \mplibcodeinherit{enable}% \mplibverbatim{enable}% \everymplib{if unknown Ph1: input mcf2graph.mf; - mp_log_name:="temp-info.aux"; - sw_auxout:=1; - sw_label:=1; - var3:="mol_wd"; tag3:="Lx"; - var4:="cal_MW"; tag4:="cMW"; - var5:="cal_FM"; tag5:="cFM"; + sw_auxout:=1; + sw_label_emu:=1; + sw_font_frame:=4; + max_bond_length:=4.5mm; + defaultfont:="uhvr8r"; + defaultsize:=8bp; + defaultscale:=0.7; fi}% -\everyendmplib{write EOF to mp_log_name;}% %------------------------------------------------------------------------------ -\makeatletter% -\newdimen \MOLwidth% -\newif\ifCONT@% -\newread\@auxf% -%------------------------------------------------------------------------------ -\def\@fst@param#1:#2;{#1}% -\def\@sec@param#1:#2;{#2}% -\def\mol@sel#1{% -\if#1\empty\relax\else% - \edef\@tag{\expandafter\@fst@param#1;}% - \edef\@var{\expandafter\@sec@param#1;}% - \ifx\@tag\@F\edef\MOLfile{\@var}\fi \ifx\@tag\@C\edef\MOLchar{\@var}\fi% - \ifx\@tag\@Lx\edef\MOLlenx{\@var}\fi \ifx\@tag\@Ly\edef\MOLleny{\@var}\fi% - \ifx\@tag\@EN\edef\MOLnameE{\@var}\fi \ifx\@tag\@JN\edef\MOLnameJ{\@var}\fi% - \ifx\@tag\@CAS\edef\MOLcas{\@var}\fi \ifx\@tag\@USE\edef\MOLuse{\@var}\fi% - \ifx\@tag\@FM\edef\MOLfm{\@var}\fi \ifx\@tag\@cFM\edef\CALfm{\@var}\fi% - \ifx\@tag\@MW\edef\MOLmw{\@var}\fi \ifx\@tag\@cMW\edef\CALmw{\@var}\fi% - \ifx\@tag\@logP\edef\MOLlogP{\@var}\fi \ifx\@tag\@EXA\edef\MOLextA{\@var}\fi% - \ifx\@tag\@EXB\edef\MOLextB{\@var}\fi \ifx\@tag\@NO\edef\MOLnum{\@var}\fi\fi}% -%------------------------------------------------------------------------------- -\def\@F{F}\def\@C{C}\def\@EN{EN}\def\@JN{JN}\def\@CAS{CAS}% -\def\@MW{MW}\def\@cMW{cMW}\def\@FM{FM}\def\@cFM{cFM}\def\@Lx{Lx}\def\@Ly{Ly}% -\def\@NO{NO}\def\@USE@{USE}\def\@logP@{logP}\def\@EXA@{EXA}\def\@EXB@{EXB}% -%------------------------------------------------------------------------------- -% modified latex2e kernel program control (@for delimiter ','=>';') -\def\@sfor#1#2{\expandafter\def\expandafter\@tmp\expandafter{#1}% - \ifx\@tmp\@empty\else \expandafter\@rep#1;\@nil;\@nil\@@\@list{#2}\fi}% -\def\@rep#1;#2\@@#3#4{\def#3{#1}\ifx#3\@nnil% - \expandafter\@fornoop\else#4\relax\expandafter\@rep\fi#2\@@#3{#4}}% -%------------------------------------------------------------------------------- -\def\inputINFO#1{\openin\@auxf=#1\CONT@true% -\loop -\read\@auxf to \@info% -\ifeof\@auxf\CONT@false\else \@sfor\@info{\mol@sel\@list}\fi% -\ifCONT@ \repeat -\closein\@auxf}% -%-------------------------------------------------------------------------------- -\newdimen\MOLwidth% -\newdimen\heightCap% -\def\MOLcaption#1#2{% -\MOLwidth=\MOLlenx pt% -\advance\MOLwidth -#1\relax% -\heightCap=#2% -\llap{\makebox[\MOLwidth][l]{\raisebox{\heightCap}{\sf NO.\MOLnum{ }\MOLnameE{ }}}}% -\advance\heightCap -5mm\relax% -\llap{\makebox[\MOLwidth][l]{\raisebox{\heightCap}{\small\tt FM(C):\CALfm}}}% -\advance\heightCap -4mm\relax% -\llap{\makebox[\MOLwidth][l]{\raisebox{\heightCap}{\small\tt MW(C):\CALmw}}}% -\advance\heightCap -4mm\relax% -\llap{\makebox[\MOLwidth][l]{\raisebox{\heightCap}{\small\tt MW(D):\MOLmw}}}% -}% -\makeatother% -%------------------------------------------------------------------------------------ \pagestyle{empty} -\topmargin=-25mm +\topmargin=-20mm \oddsidemargin=0mm -\textwidth=160mm +\textwidth=170mm \textheight=280mm \unitlength=1mm %------------------------------------------------------------------------------------ @@ -91,80 +37,136 @@ %------------------------------------------------------------------------------------ {{\small {\tt FM(C) :} molecular formula calculated by mcf2graph}\\ {{\small {\tt MW(C) :} molecular weight calculated by mcf2graph}\\ -{{\small {\tt MW(D) :} molecular weight from literature data}\\ +{{\small {\tt MW(D) :} molecular weight from literature data}\vspace{5mm}\\ \begin{mplibcode} - font_wd:=90mm; font_ht:=45mm; + font_wd:=80mm; font_ht:=40mm; beginfont("NO:1","EN:Chlorophyll a","MW:893.49") - MCf(<54, + MCa(1,0.5)(<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,, -1:@,24,/*COO!^15,72,//O,,>|, 4:\`1.45,Mg,&17,-1:@,&11~vb,-1:@,&23~vb, {2,9,15,20~zf}:/_,8:/!,14:\,!!, 21:@,-6~wf,!2,//O,!,O,!2,!!,|,!13,{1,5,9,13}:/_, - ) + ) + EXT( + label.lrt("("&inf_EN&")",(0,h)); + label.lrt("FM(C): "&cal_FM,(0,h-4mm)); + label.lrt("FM(C): "&cal_MW,(0,h-8mm)); + label.lrt("FM(D): "&inf_MW,(0,h-12mm)); + ) endfont \end{mplibcode} -\inputINFO{temp-info.aux}% -\MOLcaption{0mm}{35mm}\hspace{8mm}% +\begin{minipage}[b]{85mm} +\begin{verbatim} +|<,``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,, +-1:@,24,/*COO!^15,72,//O,,>|, +4:\`1.45,Mg,&17,-1:@,&11~vb,-1:@,&23~vb, +{2,9,15,20~zf}:/_,8:/!,14:\,!!, +21:@,-6~wf,!2,//O,!,O,!2,!!, +|,!13,{1,5,9,13}:/_, + +\end{verbatim} +\end{minipage} +\vspace{0mm}\\ %---------------------------------------------------------------------------- \begin{mplibcode} - font_wd:=40mm; font_ht:=35mm; + font_wd:=80mm; font_ht:=30mm; beginfont("NO:2","EN:Limonin","MW:470.51") - MCf(<30, + MCa(.6,0.5)(<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^35,18^-35}:/_,{1^60,5^180,16^60}:/*H, 14:\*,|,?5,{1,4}=dl,3:O ) - endfont -\end{mplibcode} -\inputINFO{temp-info.aux}% -\MOLcaption{0mm}{45mm}\vspace{6mm}\\% -%---------------------------------------------------------------------------- -\begin{mplibcode} - font_wd:=80mm; font_ht:=28mm; - beginfont("NO:3","EN:beta-carotene","MW:536.87") - MCf(<30, - ?6,3=dl,{3,5^35,5^-35}:/_, - 4:\,|,!18,{1,3,5,7,9,11,13,15,17}=dr,{3,7,12,16}:/_, - |,?6,6=dl,{6,2^35,2^-35}:/_ + EXT( + label.lrt("("&inf_EN&")",(0,h)); + label.lrt("FM(C): "&cal_FM,(0,h-4mm)); + label.lrt("FM(C): "&cal_MW,(0,h-8mm)); + label.lrt("FM(D): "&inf_MW,(0,h-12mm)); ) endfont \end{mplibcode} -\inputINFO{temp-info.aux}% -\MOLcaption{0mm}{35mm}\hspace{8mm}% +\begin{minipage}[b]{85mm} +\begin{verbatim} +<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^35,18^-35}:/_, +{1^60,5^180,16^60}:/*H, +14:\*,|,?5,{1,4}=dl,3:O + +\end{verbatim} +\end{minipage} +\vspace{5mm}\\% %---------------------------------------------------------------------------- \begin{mplibcode} -font_wd:=50mm; font_ht:=40mm; +font_wd:=80mm; font_ht:=20mm; beginfont("NO:4","EN:Gibberellin A3","MW:346.37"); - MCf(<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^60,4^60}:*/H) + MCa(.6,0.5)( + <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^60,4^60}:*/H) + EXT( + label.lrt("("&inf_EN&")",(0,h)); + label.lrt("FM(C): "&cal_FM,(0,h-4mm)); + label.lrt("FM(C): "&cal_MW,(0,h-8mm)); + label.lrt("FM(D): "&inf_MW,(0,h-12mm)); + ) endfont; \end{mplibcode} -\inputINFO{temp-info.aux}% -\MOLcaption{0mm}{38mm}\vspace{5mm}\\% +\begin{minipage}[b]{85mm} +\begin{verbatim} +<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^60,4^60}:*/H) +\end{verbatim} +\end{minipage} +\vspace{6mm}\\ %---------------------------------------------------------------------------- \begin{mplibcode} -font_wd:=55mm; font_ht:=55mm; +font_wd:=80mm; font_ht:=35mm; beginfont("NO:5","EN:Erythromycin","MW:733.93"); - MCf(<30, - |<,``1,<-120,60,60,60,-60,60,60,-60,60,60,60,-60,60,60,>|,&1, + MCa(.6,0.5)( + <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:/NMeMe ) + EXT( + label.lrt("("&inf_EN&")",(0,h)); + label.lrt("FM(C): "&cal_FM,(0,h-4mm)); + label.lrt("FM(C): "&cal_MW,(0,h-8mm)); + label.lrt("FM(D): "&inf_MW,(0,h-12mm)); + ) endfont; \end{mplibcode} -\inputINFO{temp-info.aux}% -\MOLcaption{30mm}{52mm}\hspace{8mm}% +\begin{minipage}[b]{85mm} +\begin{verbatim} +<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:/NMeMe +\end{verbatim} +\end{minipage} +\vspace{5mm}\\ %---------------------------------------------------------------------------- \begin{mplibcode} -font_wd:=90mm; font_ht:=55mm; +font_wd:=80mm; font_ht:=65mm; beginfont("NO:6","EN:Vancomycin","MW:1449.25"); - MCf(<30, + MCa(0.5,0)( + <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,, #7:@,,#1:@,120,//O,60,NH,60,/*H,*/COOH^180,-60, @@ -175,16 +177,41 @@ beginfont("NO:6","EN:Vancomycin","MW:1449.25"); #13:*\,NH,!,//O,!,/!iPr^-35>60,*/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( + label.lrt("("&inf_EN&")",(0,h)); + label.lrt("FM(C): "&cal_FM,(0,h-4mm)); + label.lrt("FM(C): "&cal_MW,(0,h-8mm)); + label.lrt("FM(D): "&inf_MW,(0,h-12mm)); + ) endfont; \end{mplibcode} -\inputINFO{temp-info.aux}% -\MOLcaption{55mm}{50mm}\vspace{6mm}\\% +\begin{minipage}[b]{85mm} +\begin{verbatim} +<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,, +#7:@,,#1:@,120,//O,60,NH,60, + /*H,*/COOH^180,-60, +Ph,{-2,-4}:/OH,-1:\,Ph,-5:/OH,-2:@,,>|, +{3^40,6,9,12}://O,{2,5,8,11}:NH, +{1^180,4^180}:*/H, +{7^-60,10^60,14^60}:/*H, +#10:*\^-60,60,//O,!,NH2,#13:*\,NH,!,//O,!, + /!iPr^-35>60,*/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 +\end{verbatim} +\end{minipage} +\vspace{0mm}\\% %---------------------------------------------------------------------------- \begin{mplibcode} - font_wd:=150mm; font_ht:=70mm; + font_wd:=170mm; font_ht:=80mm; beginfont("NO:7","EN:Maitotoxin","MW:3425.86") - MCf(<55.8,?6,-4=?7 ,{-4,-3,-3,-3}=?6,-3:\,!3,?6,{-4,-3,-3,-3}=?6, + MCf( + <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, @@ -202,10 +229,108 @@ endfont; #36:@,-45~zf,O,30,SOO,30,"O{Na}", #150:\,|,!7,{1,2}:/*OH,4:*/_,5:/*_,7=dl ) + EXT( + label.lrt("("&inf_EN&")",(0,.8h)); + label.lrt("FM(C): "&cal_FM,(0,.8h-4mm)); + label.lrt("FM(C): "&cal_MW,(0,.8h-8mm)); + label.lrt("FM(D): "&inf_MW,(0,.8h-12mm)); + ) + endfont +\end{mplibcode} +\begin{verbatim} + <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, + {11,20,35,45,52,55,65,69,86}:/*OH,{47,57,71}:/*H^60, + {3,8,13,17,21,33,38,42,56,70,84,92,101,106,111,128,138,142,146,150}:/*H^-60, + {4,14,22,34,39,43,81,89,98,102,116,121,125,129,133}:*/H^60, + {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 +\end{verbatim} +\vspace{8mm}% +%---------------------------------------------------------------------------- +{\LARGE\bf TCA-cycle}\\ +\begin{mplibcode} + beginfont("EN:TCA cycle") + save a; + %------------------------------------------------------------------------ + font_wd:=100mm; + font_ht:=100mm; + max_bond_length:=5mm; + %------------------------------------------------------------------------ + sw_label_emu:=1; + defaultscale:=0.75; + %------------------------------------------------------------------------ + a:=12mm; + Om:='("{O^-^}"); + MCa(0.5,1)(<30,Om,!0,//O,!,//O,!2,//O,!,Om) + MCa(1, 1)(<30,Om,!0,//O,!,!,!,!,//O,!,Om,-4`1:\,//O,!,Om,4:/OH^-165) + MCa(1,.66)(<30,Om,!0,//O,!,!,!~dr,!,//O,!,Om,-4`1:\,//O,!,Om) + MCa(1,.35)(<30,Om,!0,//O,!,!,!,!,//O,!,Om,-4:\`1,//O,!,Om) + MCa(1, 0)(<30,Om,!0,//O,!,!,!,//O,!,//O,!,Om,-4:\`1,//O,!,Om) + MCa(0.5,0)(<30,Om,!0,//O,!,!,!,//O,!,//O,!,Om) + MCa(0, 0)(<30,Om,!0,//O,!,!,!,//O,!,"{S-CoA}") + MCa(0,0.4)(<30,Om,!0,//O,!,!,!,//O,!,Om) + MCa(0,0.7)(<30,Om,!0,//O,!,!~dr,!,//O,!,Om) + MCa(0, 1)(<30,Om,!0,//O,!,!,!,//O,!,Om,3:/OH) + %------------------------------------------------------------------------ + EXT( + p10:=(.58w,.9h); + drawarrow p10..p10+(a,0); + drawarrow p10+(.2a,-.8a){dir90}..{dir 0}(p10+(.5a,0)){dir0}..{dir-90}p10+(.8a,-.5a); + label.bot("Acetyl-CoA",p10+(.2a,-.8a)); + label.bot("CoA-SH",p10+(.8a,-.5a)+(em,0)); + p10:=(.9w,.83h); + drawdblarrow p10..p10+(0,-a); + draw p10+(0,-0.5a){dir -90}..{dir 180}p10+(-0.5a,-.8a); + label.lft("H_2_O",p10+(-0.5a,-.8a)); + p10:=(.9w,.56h); + drawdblarrow p10..p10+(0,-a); + draw p10+(-0.5a,-0.2a){dir 0}..{dir -90}p10+(0,-.5a); + label.lft("H_2_O",p10+(-0.5a,-.2a)); + p10:=(.9w,.30h); + drawdblarrow p10..p10+(0,-a); + drawarrow p10+(-.5a,-.2a){dir 0}..{dir-90}p10+(0,-.5a){dir-90}..{dir180}p10+(-.5a,-.8a); + label.lft("NAD^+",p10+(-0.5a,-.2a)); + label.lft("NADH2^+",p10+(-0.5a,-.8a)); + p10:=(.73w,0.1h); + drawarrow p10..p10+(-a,0); + drawarrow p10+(-0.05w,0){dir -180}..{dir 90}p10+(-0.08w,0.05h); + label.top("CO_2_",p10+(-0.8a,0.53a)); + p10:=(.40w,.1h); + drawarrow p10..p10+(-a,0); + drawarrow p10+(-.2a,0.8a){dir -90}..p10+(-0.5a,0){dir -180}.. + {dir 90}p10+(-0.8a,0.5a); + label.top("NAD^+^,CoA-SH",p10+(em,0.8a)); + label.top("NADH2^+^,CO_2_",p10+(-0.8a-em,0.5a)); + p10:=(.10w,.22h); + drawdblarrow p10..p10+(0,a); + drawdblarrow p10+(.5a,.2a){dir-180}..{dir90}p10+(0,.5a){dir90}..{dir0}p10+(.5a,.8a); + label.rt("GDP,Pi",p10+(0.5a,0.2a)); + label.rt("GTP,CoA-SH",p10+(0.5a,0.8a)); + p10:=(.10w,.5h); + drawdblarrow p10..p10+(0,a); + drawdblarrow p10+(.5a,.2a){dir-180}..{dir 90}p10+(0,.5a){dir90}..{dir0}p10+(.5a,.8a); + label.rt("FAD",p10+(0.5a,0.2a)); + label.rt("FADH2",p10+(0.5a,0.8a)); + p10:=(.10w,.74h); + drawdblarrow p10..p10+(0,a); + draw p10+(0.05w,0.2a){dir -180}..{dir 90}p10+(0,.5a); + label.rt("H_2_O",p10+(0.5a,0.2a)); + p10:=(.25w,.9h); + drawdblarrow p10..p10+(a,0); + drawdblarrow p10+(.2a,-.5a){dir90}..{dir0}p10+(.5a,0){dir0}..{dir-90}p10+(.8a,-.8a); + label.bot("NAD^+",p10+(.2a,-.5a)); + label.bot("NADH2^+",p10+(.8a,-.8a)); + ) endfont \end{mplibcode} -\inputINFO{temp-info.aux}% -\MOLcaption{110mm}{70mm}\\% -\end{document} %---------------------------------------------------------------------------- \end{document} diff --git a/Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf b/Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf index 48c2b301b3a..eee9dfa0525 100644 --- a/Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf +++ b/Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf @@ -1,5 +1,5 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% mcf2graph ver 4.25 Copyright (c) 2013-2017 Akira Yamaji +% mcf2graph ver 4.26 Copyright (c) 2013-2017 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, @@ -31,7 +31,7 @@ % Set to use plain.mp label,arrow : mpost -s ahlength=3 FILENAME %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% tracingstats:=1; -message " This is mcf2graph ver 4.2 2017.7"; +message " This is mcf2graph ver 4.2 2017.8"; %------------------------------------------------------------------------------------------------- newinternal nA,nB,nC,nD,nE,nF,char_num,str_cnt,sub_usr,sub_int,tbl_cnt; numeric save_para[],comD[][],parD[][],cntD[],tbl_str_wd[],tbl_atom[],tbl_subst[][],tbl_atom_wt[], @@ -41,7 +41,7 @@ string tbl_atom_str[],strD[],var[],tag[],mp_log_name,aux_delimiter,atomfont, picture mol_stru[]; path arrow_path,arrow_head; %------------------------------------------------------------------------------------------------- -char_num:=str_cnt:=proc_end:=0; +char_num:=str_cnt:=proc_end:=sw_label_emu:=0; sw_numberA:=sw_numberB:=sw_mol_frame:=sw_auxout:=sw_solid:=sw_expand:=sw_font_frame:=sw_clip:=0; sw_atom_frame:=sw_report:=sw_MOLout:=sw_subst_off:=sw_bond_single:=sw_auxfix:=sw_arrow:=0; numberA_start:=numberB_start:=1; numberA_end:=numberB_end:=4095; aux_max:=max_inf_num:=20; @@ -122,7 +122,7 @@ def_com(1)(si,dl,dr,db,dm,tm,wf,wb,bd,bz,zf,zb,dt,wv,nl,vf,vb,si_,wf_,wb_,bd_); %-------------------------------------------------------------------------------------------------- def parameter_list= sw_report,sw_numberA,sw_numberB,sw_mol_frame,sw_auxout,sw_solid,sw_expand,sw_MOLout, - sw_atom_frame,sw_font_frame,sw_subst_off,sw_bond_single,sw_clip,sw_arrow, + sw_atom_frame,sw_font_frame,sw_subst_off,sw_bond_single,sw_clip,sw_arrow,sw_label_emu, margin_left_right,margin_top_bottom,ratio_atom_bond,ratio_thickness_bond,ratio_char_bond, ratio_chain_ring,ratio_bondgap_bond,ratio_zebra_black,ratio_zebragap_bond, ratio_wedge_bond,ratio_atomgap_atom,ratio_bond_width,font_wd,font_ht, @@ -146,10 +146,13 @@ def beginfont(text s)= save_defaultfont:=defaultfont; begingroup save cntA,cntB,cntM,minX,minY,f_beginchar,numS,sftX,sftY,f_ext, + cal_FM,cal_MW,cal_MW_str,cal_MI,cal_MI_str, + inf_NO,inf_EN,inf_JN,inf_FM,inf_CAS,inf_USE,inf_EXA,inf_EXB,inf_MW, posBs,posBe,posA,posM,lineB,sB,eB,angB,angA,lenB,ang_br,info,pT; numeric lineB[],sB[],eB[],angB[],angA[],lenB[],ang_br[],numS[]; pair posA[],posM[][],pT,posBs,posBe; - string info[]; + string info[],cal_FM,cal_MW,cal_MW_str,cal_MI,cal_MI_str, + inf_NO,inf_EN,inf_JN,inf_FM,inf_CAS,inf_USE,inf_EXA,inf_EXB,inf_MW; %------------------------------------------------------------------------------------------------ for i:=1 upto max_inf_num: info[i]:=":"; endfor f_ext:=inf_num:=cntM:=0; @@ -179,7 +182,6 @@ def endfont= pT:=(margin_left_right,margin_top_bottom); draw_frame(pT,nA,nB,thickness_font_frame); fi if sw_font_frame=4: draw_corner(w,h,thickness_font_frame); fi - if ((sw_auxout=1)or(sw_report=1)or(sw_MOLout=1))and(f_MP=1): proc_calc_out; fi for i=1 upto cntM: addto currentpicture also mol_stru[i] shifted posM[0][i]; mol_stru[i]:=nullpicture; endfor @@ -330,7 +332,7 @@ def ext_setup= dotlabeldiam:=3bp; labeloffset:=3bp; em=defaultscale*defaultsize; - if (defaultfont="draw")or(f_MP=0): + if (defaultfont="draw")or(f_MP=0)or(sw_label_emu=1): save label,dotlabel; def label = label_emu enddef; def dotlabel = dotlabel_emu enddef; @@ -375,27 +377,47 @@ enddef; %================================================================================================== def ext_puts(expr PA)(expr STR)= begingroup - save cp,sA; + save cp,sA,pC; pair cp; string sA; + picture pC; cp:=PA; + nB:=defaultscale*defaultsize; + nC:=0; %------------------------------------------------------------------------------------------------ for i=0 upto length(STR)-1: sA:=pic_c(i,STR); nA:=ASCII(sA); - nB:=defaultscale*defaultsize; - draw_char(sA,cp,nB,0.35*ratio_char_bond*bp,0); - cp:=cp+(nB*tbl_char_wd[nA],0); + if sw_label_emu=1: + if sA="_": if nC=-0.5: nC:=0; else: nC:=-0.5; fi + elseif sA="^": if nC= 0.5: nC:=0; else: nC:= 0.5; fi + else: + if defaultfont="draw": + draw_char(sA,cp+(0,nB*nC),nB,0.35*ratio_char_bond*bp,0); + cp:=cp+(nB*tbl_char_wd[nA],0); + else: + pC:=sA infont defaultfont scaled defaultscale; + addto currentpicture also pC shifted (cp+(0,nB*nC)); + cp:=cp+(lrcorner pC-llcorner pC); + fi + fi + else: draw_char(sA,cp,nB,0.35*ratio_char_bond*bp,0); + cp:=cp+(nB*tbl_char_wd[nA],0); + fi endfor endgroup; enddef; %-------------------------------------------------------------------------------------------------- vardef label_emu@#(expr STR,POS) = %% modified 'thelabel@#(expr s,z)' of plain.mp - save oft,fx,fy,wds; + save oft,fx,fy,wds,sC; pair oft,oft.lft,oft.rt,oft.top,oft.bot,oft.ulft,oft.llft,oft.urt,oft.lrt; + string sC; wds:=0; for i=0 upto length(STR)-1: - wds:=wds+defaultscale*defaultsize*tbl_char_wd[ASCII(pic_c(i,STR))]; + sC:=pic_c(i,STR); + if not((sw_label_emu=1)and((sC="_")or(sC="^"))): + wds:=wds+defaultscale*defaultsize*tbl_char_wd[ASCII(sC)]; + fi endfor oft:= ( 0, 0); fx:=0.5; fy:=0.5; oft.lft:= ( -1, 0); fx.lft:=1; fy.lft:=0.5; @@ -529,6 +551,7 @@ def MCd(expr RW,RH)(expr FW,FH)(text TX)= addto mol_stru[cntM] also currentpicture; clearit; endgroup; + if ((sw_auxout=1)or(sw_report=1)or(sw_MOLout=1))and(f_MP=1): proc_calc_out; fi %----------------------------------------------------------------------------------------------- %%%% message "count of usr ="& decimal(sub_usr) &" "& decimal(sub_usr-sub_usr_start); %%%% message "count of int ="& decimal(sub_int) &" "& decimal(sub_int-sub_int_start); @@ -769,9 +792,10 @@ enddef; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% def draw_atom(expr NUM,POS,ANG,STR,WD)= begingroup - save pA,pT,dx; + save pA,pT,dx,pC,nE,nC; string sB; pair pA,pT; + picture pC; %---------------------------------------------------------------------------------------------- if ((ANG mod 360)<=90+1)or((ANG mod 360)>=270-1): dx:=1; else: dx:=-1; fi pT:=POS-(0.5atom_wd*dx*WD,0.5atom_wd); @@ -785,19 +809,30 @@ def draw_atom(expr NUM,POS,ANG,STR,WD)= elseif nB=hat: if nE=0: nE:= .5; else: nE:=0; fi; elseif (nB<>par_s)and(nB<>par_e): nA:=atom_wd*tbl_char_wd[nB]; - pA:=pT+(0.5*((dx-1)*nA),nE*atom_wd); - if sw_atom_frame=1: draw_frame(pA,nA,atom_wd,0.1pt); fi - if (sw_numberA>=1)or(sw_numberB>=1): - erase fill unitsquare xscaled nA yscaled atom_wd shifted pA wpcs 0.01pt; - fi if (atomfont<>"draw")and(f_MP=1): - addto currentpicture also char(nB) infont atomfont - scaled (atom_wd/atomfontsize) shifted pA Cp(colorA[NUM]); + pC:=sB infont atomfont scaled (atom_wd/atomfontsize); + if dx=-1: pA:=pT-(lrcorner pC-llcorner pC)+(0,nE*atom_wd); + else: pA:=pT+(0,nE*atom_wd); + fi + if (sw_numberA>=1)or(sw_numberB>=1): + erase fill (llcorner pC--lrcorner pC--urcorner pC--ulcorner pC--cycle) shifted pA; + fi + addto currentpicture also pC shifted pA Cp(colorA[NUM]); + if sw_atom_frame=1: + draw ((llcorner pC--lrcorner pC--urcorner pC--ulcorner pC--cycle) shifted pA) + withpen pencircle scaled 0.01pt; + fi + pT:=pT+(lrcorner pC-llcorner pC)*dx; else: + if dx=-1: pA:=pT+(-nA,nE*atom_wd); else: pA:=pT+(0,nE*atom_wd); fi + if (sw_numberA>=1)or(sw_numberB>=1): + erase fill unitsquare xscaled nA yscaled atom_wd shifted pA; + fi draw_char(sB,pA,atom_wd,bond_pen_wd*ratio_char_bond,NUM); + if sw_atom_frame=1: draw_frame(pA,nA,atom_wd,0.1pt); fi + pT:=pT+(nA*dx,0); fi - pT:=pT+(nA*dx,0); - fi + fi endfor endgroup enddef; @@ -944,7 +979,7 @@ char_size_set(.7)( 1)(" ()[]0123456789nhj=_bdtfgpq"); char_size_set(.7)(.7)("*"); char_size_set(.5)( 1)("il"); char_size_set(.7)(.8)("acekosuvxzwry"); -char_size_set(.4)( 1)(".,:;'`"); +char_size_set(.4)( 1)(".,:;'`^"); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% def draw_char(expr c,POS,WD,PEN,NUM)= save Z,aW,aH,fW,fH,hW,hW,hH,fP,hP,pathO,pathOh,ef,pos,ppcs,sbp,dw,dwh,dwv,cdw; @@ -1115,11 +1150,9 @@ STb("C{H_3_}")("C","H","H","H"); STb("C{F_3_}")("C","F","F","F"); %================================================================================================== def proc_calc_out= begingroup - save warning_cnt,cal_MW,MWp,knownA,cal_FM,bondC,tmp_wtp,bond_cnt,cnt_hide_H, - inf_NO,inf_EN,inf_JN,inf_FM,inf_CAS,inf_USE,inf_EXA,inf_EXB,inf_MW; + save warning_cnt,MWp,knownA,bondC,tmp_wtp,bond_cnt,cnt_hide_H; numeric sumA[],bondC[],hideH[]; - string cal_FM,cal_MW,cal_MW_str,cal_MI,cal_MI_str,sumA,s_tag,s_var, - inf_NO,inf_EN,inf_JN,inf_FM,inf_CAS,inf_USE,inf_EXA,inf_EXB,inf_MW; + string sumA,s_tag,s_var; inf_NO:=inf_EN:=inf_JN:=inf_FM:=inf_CAS:=inf_USE:=inf_EXA:=inf_EXB:=inf_MW:=""; cal_MW:=cal_MW_str:=cal_FM:=""; cnt_hide_H:=warning_cnt:=MW_num:=MI_num:=MWp:=0; %------------------------------------------------------------------------------------------ |