diff options
Diffstat (limited to 'Master/texmf-dist/doc/latex/xymtex/xymyl.tex')
-rw-r--r-- | Master/texmf-dist/doc/latex/xymtex/xymyl.tex | 2900 |
1 files changed, 2900 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/xymtex/xymyl.tex b/Master/texmf-dist/doc/latex/xymtex/xymyl.tex new file mode 100644 index 00000000000..daae2314c7d --- /dev/null +++ b/Master/texmf-dist/doc/latex/xymtex/xymyl.tex @@ -0,0 +1,2900 @@ +%xymyl.tex +%Copyright (C) 1998, Shinsaku Fujita, All rights reserved. +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%This file is a part of xymtx200.tex that is the manual of the macro +%package `XyMTeX' (version 2.00) for drawing chemical structural formulas. +%This file is not permitted to be translated into Japanese and any other +%languages. +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\chapter{Introduction} + +\section{History} +\subsection{Version 1.00 (1993)} + +The first version of the \XyMTeX{} system (version 1.00, 1993) +with a detailed on-line manual +has been depositted to NIFTY-Serve archives (FPRINT library No.\ 7) +by the author\cite{fujita2a} and to the CTAN by volunteers\cite{fujita2b}. +The articles on the construction and usage of \XyMTeX{} have appeared in +Ref. \cite{fujita1,fujita1a}. +Although the packages (style files) of the \XyMTeX{} system have +originally aimed at using under +the \LaTeX{}2.09 system, they also work effectively +under the \LaTeXe{} system \cite{lamport2,goossens} without any changes. Thus, +what you have to do is to rewrite a top statement for \LaTeX{}2.09 such as +\begin{verbatim} +\documentstyle[epic,carom,hetarom]{article} +\end{verbatim} +into the counterpart for \LaTeXe{}, {\em e.g.}, +\begin{verbatim} +\documentclass{article} +\usepackage{epic,carom,hetarom} +\end{verbatim} + +\subsection{Version 1.01 (1996)} + +The Version 1.01 of the \XyMTeX{} system has been released in 1996, +when the system with a detailed on-line manual +was depositted to NIFTY-Serve archives (FPRINT library No.\ 7) +by the author \cite{fujita2c}. The system is now available +from Fujita's homepage \cite{fujita2d} via internet +or from a CD-ROM that is attached to the referece manual published +in 1997 \cite{XyMTeXbook}.\footnote{% +The basic items described in the \XyMTeX book are +common and applied also in Version 2.00. +Please refer to the \XyMTeX book, when +they are used without explanations in this manual.} + +The purpose of version 1.01 is +the updating of \XyMTeX{} to meet the \LaTeXe{} way of +preparing packages (option style files). +The following items have +been revised or added for encouraging the \XyMTeX{} users +to write articles of chemical fields. + +\begin{enumerate} +\item Each of the old sty files of \XyMTeX{} has been rewritten +into a dtx file, from which we have prepared a new sty file by using +the {\sf docstrip} utility of \LaTeXe. +If you want to obtain the document of each source +file, you may apply \LaTeXe{} to the corresponding drv file, which +has also been prepared from the dtx file by using the {\sf docstrip} +utility. +\item Macros for drawing chair-form cyclohexanes and +for drawing adamantanes of an alternative type have been added. +\item Macros for drawing polymers have been added. +\item The package {\sf chemist.sty}, which was originally +prepared for \cite{fujita2}, has been rewritten into a dtx file and +added to \XyMTeX{} as a new component. This package enables us +to use various functions such as + \begin{enumerate} + \item the numbering and cross-reference + of chemical compounds and derivatives, + \item various arrows of fixed and flexible length for chemical equations, + \item `chem' version and chemical environments for describing + chemical equations, and + \item various box-preparing macros for chemical or general use. + \end{enumerate} +\end{enumerate} + +\subsection{Version 1.02 (1998, not released)} + +The Version 1.02 of \XyMTeX{} has been devoted to the +development of the nested-substitution method, +which simplifies the coding of \XyMTeX{} commands. +In \XyMTeX{} version 1.01, each subsitituent is assumed to be rather small +so that it can be specified by means of a substitution list ``SUBSLIST''. +For example, 1-fluorobenzene, +\begin{center} +\bzdrh{4==F} +\end{center} +is drawn by the following code: +\begin{verbatim} +\bzdrh{4==F} +\end{verbatim} +To draw a substituent with a complicated structure, +a designation of the same line produces an insufficient result. +Thus, if we simply write the code +\begin{verbatim} +\bzdrh{4==\bzdrh{}} +\end{verbatim} +to draw a biphenyl structure, +we have a separate structure as follows: + +\vskip1.5\baselineskip +\begin{center} +\bzdrh{4==\bzdrh{}} +\end{center} + +Within the scope of \XyMTeX version 1.01, +such a substituent with a complicated structure +can be treated by three distinct methods +(see Chapters 14 and 15 of \XyMTeX book). + +\begin{enumerate} +\item(Method I) +When we write a code \verb/\bzdrh{4==}\bzdrh{}/ +to draw a biphenyl structure, +we obtain an insufficient result such as +\begin{center} +\bzdrh{4==}\bzdrh{} +\end{center} +since each command has an area to draw its target sturucture. +To remedy this situation, we can write +\begin{verbatim} +\bzdrh{4==}\kern-33pt\bzdrh{} +\end{verbatim} +Then, we obtain the following structure: +\begin{center} +\bzdrh{4==}\kern-33pt\bzdrh{} +\end{center} +However, a more complicated adjustment is +necessary to apply this method to a case in which +the components of a structual formula are not linearly aligned. +\item (Method II) +We can carry out the same task by using +the \LaTeX{} picture einvironment. +The code +\begin{verbatim} +\begin{picture}(1400,700)(0,0) +\put(0,0){\bzdrh{4==}} +\put(546,0){\bzdrh{}} +\end{picture} +\end{verbatim} +produces the following structure: +\begin{center} +\begin{picture}(1400,700)(0,0) +\put(0,0){\bzdrh{4==}} +\put(546,0){\bzdrh{}} +\end{picture} +\end{center} +This method realizes such a complicated adustment as mentioned above, +since the \verb/\put/ is capable of putting components at arbitrary positions. +\item (Method III) +In a further method of drawing the biphenyl structure, +one phenyl group is regarded as a substituent of the other phenyl. +These two parts can be combined by writing a code, +\begin{verbatim} +\bzdrh{4==\kern-25pt\lower37pt\hbox to0pt{\bzdrh{}}} +\end{verbatim} +in which the commands \verb/\kern/ (for horizontal adjustment) and +\verb/\lower/ (for vertical adjustment) are used to adjust the +substitution site. Thereby, we have +\begin{center} +\bzdrh{4==\kern-25pt\lower37pt\hbox to0pt{\bzdrh{}}} +\end{center} +This method has a disadvantage of calculating +adjustment values manually for every formula to be drawn. +\end{enumerate} + +These three methods are useful for drawing complicated structure. +However, they have an essential disadvantage: their codes give +no, or at most partial, connectivity data between parts to be combined, though +such parts appear to be combined as a picture. +For example, the code +\begin{verbatim} +\bzdrh{4==\kern-25pt\lower37pt\hbox to0pt{\bzdrh{3==Cl}}} +\end{verbatim} +producing +\begin{center} +\bzdrh{4==\kern-25pt\lower37pt\hbox to0pt{\bzdrh{3==Cl}}} +\end{center} +has no connectivity data at the meta position to the chlorine +atom of the scecond benzene ring. + +As clarified by the discussion in the preceding paragraphs, +the \XyMTeX{} system should have a function to place +substituents at appropriate sites without complex designation, +where connectivity data are maintained during the process +of drawing. +The target of \XyMTeX{} Version 1.02 is to treat nested +substitution with the automatic adjustment of subsitution sites +(named as the nested-substitution method). +Concretely speaking, for example, +such a code as +\begin{verbatim} +\bzdrh{1==F;4==\bzdrh{1==(yl);3==Cl}} +\end{verbatim} +directly produces +\begin{center} +\bzdrh{1==F;4==\bzdrh{1==(yl);3==Cl}} +\end{center} +where the code shows that the second benzene ring is +linked to the para position of the first benzene ring +at the meta position to the chlorine atom. +Thus the target accomplished by the ``yl''-function, +as shown in this code. + +\section{Version 2.00 (1998)} + +The ``yl''-function developed in \XyMTeX{} Version 1.02 +is regarded as a modification of SUSBLISTs. +As an extention of this mothodology, +BONDLISTs can be modified to treat ring fusion, +since each ring fusion is considered to be a kind of +substitution on a bond. In addition, +ATOMLIST can also be used to +treat spiro rings, since each spiro ring +is a kind of atom replacement at an appropriate vertex. + +To expand the scope of the \XyMTeX{} system, +we introduce several new functions as follows. +\begin{enumerate} +\item Several bond modifiers are added to draw +alternative up- and down-bonds as well as +to treat ring fusion. +\item The ``yl''-function for SUBSLISTs is further improved. +The commands \verb/\ryl/ and \verb/\lyl/ are +prepared to typeset intervening moieties. +\item Ring fusion is treated by adding a fusing unit to +the BONDLIST of each command. +\item Several fusing units (three- to six-membered units) +are developed (fusering.sty). +\item A new function for typesetting a spiro ring is +introduced in each command for general use. +A spiro ring is treated by ring-replacement technique, +where the corresponding code is +written in the ATOMLIST of each command. +\item Commands for typeseting zigzag polymethylenes are +developed (methylen.sty). +\item Commands for drawing six-six fused carbocycles +and heterocycles are added. +\item An optional argument SKBONDLIST is added to +each command of general use for drawing +boldfaced and dotted skeletal bonds. +\item An optional argument OMIT is added to +each command of general use for drawing related +skeletons by bond deletion. +\end{enumerate} + +The \XyMTeX{} system (version 2.00) consists of package files +listed in Table \ref{tt:200a1}. +The package file `\textsf{chemstr.sty}' is the basic file +that is automatically read within any other package file of \XyMTeX{}. +It contains macros for internal use, {\em e.g.}, +common commands for bond-setting and atom-setting. +The other package files contain macros for users. +These files are designed to work not only as packages for \LaTeXe +but also as option style files for \LaTeX{}2.09 (native mode). +\begin{table}[hpbt] +\caption{Package Files of \protect\XyMTeX{}} +\label{tt:200a1} +\begin{center} +\begin{tabular}{lp{10cm}} +\hline +package name & \multicolumn{1}{c}{included functions} \\ +\hline +\textsf{aliphat.sty} + & macros for drawing aliphatic compounds \\ +\textsf{carom.sty} + & macros for drawing vertical and horizontal types + of carbocyclic compounds \\ +\textsf{lowcycle.sty} + & macros for drawing five-or-less-membered carbocyles. \\ +\textsf{ccycle.sty} + & macros for drawing bicyclic compounds etc. \\ +\textsf{hetarom.sty} + & macros for drawing vertical types of heterocyclic compounds \\ +\textsf{hetaromh.sty} + & macros for drawing horizontal types of heterocyclic compounds \\ +\textsf{hcycle.sty} + & macros for drawing pyranose and furanose derivatives \\ +\textsf{chemstr.sty} + & basic commands for atom- and bond-typesetting \\ +\textsf{locant.sty} + & commands for printing locant numeres \\ +\textsf{polymers.sty} + & commands for drawing polymers \\ +\textsf{fusering.sty} + & commands for drawing units for ring fusion \\ +\textsf{methylen.sty} + & commands for drawing zigzag polymethylene chains \\ +\textsf{xymtex.sty} + & a package for calling all package files \\ +\textsf{chemist.sty} + & commands for using `chem' version and chemical environments \\ +\hline +\end{tabular} +\end{center} +\end{table} + +The use of \textsf{xymtex.sty} calling all package files +may sometimes cause the ``\TeX{} capacity exceeded'' error. +In this case, you should call necessary packages distinctly +by using the \verb/\usepackage/ command. + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\chapter{Bond Modifiers Added} + +\section{Alternative Bond Modifiers for Up and Down Bonds} + +In addition to the original bond modifiers (see the \XyMTeX book), +the present version of \XyMTeX{} +provides us with several bond modifiers that can be used +in the argument SUBSLIST of each \XyMTeX{} command. +These modifiers are listed in Table \ref{tt:200a} +along with the original bond modifiers. + +\begin{table} +\caption{Locant numbering and bond modifiers for SUBSLIST} +\label{tt:200a} +\begin{center} +\begin{tabular}{lp{12cm}} +\hline +Bond Modifiers & \multicolumn{1}{c}{Printed structures} \\ +\hline +\multicolumn{2}{l}{\bfseries Original Bond Modifiers} \\ + $n$ or $n$S & exocyclic single bond at $n$-atom \\ + $n$D & exocyclic double bond at $n$-atom \\ + $n$A & alpha single bond at $n$-atom \\ + $n$B & beta single bond at $n$-atom \\ + $n$Sa & alpha (not specified) single bond at $n$-atom \\ + $n$Sb & beta (not specified) single bond at $n$-atom \\ + $n$SA & alpha single bond at $n$-atom (dotted line) \\ + $n$SB & beta single bond at $n$-atom (boldface) \\ +\hline +\multicolumn{2}{l}{\bfseries Bond Modifiers Added} \\ + $n$Sd & alpha single bond at $n$-atom (dotted line) + with an alternative direction to $n$SA \\ + $n$Su & beta single bond at $n$-atom (boldface) + with an alternative direction to $n$SB \\ + $n$FA & alpha single bond at $n$-atom (dotted line) + for ring fusion \\ + $n$FB & beta single bond at $n$-atom (boldface) + for ring fusion \\ + $n$GA & alpha single bond at $n$-atom (dotted line) + for the other ring fusion \\ + $n$GB & beta single bond at $n$-atom (boldface) + for the other ring fusion \\ +\hline +\end{tabular} +\end{center} +\end{table} + +The added bond modifiers, `Sd' (d for down) and `Su' (u for up), designate +$\alpha$- and $\beta$-bonds in such an exchanged +manner as the original bond modifiers, `SA' and `SB' designate. +Figure \ref{ff:200a} shows the comparison between +the added bond modifiers and the original ones +by using a cyclohexane skeleton (\verb/\cyclohexanev/). + +\begin{figure}[h] +\begin{center} +\cyclohexanev{1Sd==1Sd;1Su==1Su;% +2Sd==2Sd;2Su==2Su;3Sd==3Sd;3Su==3Su;% +4Sd==4Sd;4Su==4Su;5Sd==5Sd;5Su==5Su;% +6Sd==6Sd;6Su==6Su} \qquad\qquad +\cyclohexanev{1SA==1SA;1SB==1SB;% +2SA==2SA;2SB==2SB;3SA==3SA;3SB==3SB;% +4SA==4SA;4SB==4SB;5SA==5SA;5SB==5SB;% +6SA==6SA;6SB==6SB} +\caption{Bond Modifiers for $\alpha$- and $\beta$-Bonds} +\label{ff:200a} +\end{center} +\end{figure} + +\section{Bond Modifiers for Ring Fusion} + +In the present verstion (2.00), we have added a new function for ring fusion. +Since the function requires bond modifiers +for desiginating substitution at such fused positions, +we have added the modifiers, `FA', `FB', `GA', and `GB'. +These modifiers are illustrated in Figure \ref{ff:200b} + + +\begin{figure} +\begin{center} +\cyclohexanev{1FA==1FA;1GB==1GB;3FA==3FA;3GB==3GB;5FA==5FA;5GB==5GB} +\qquad\qquad +\cyclohexanev{1FB==1FB;1GA==1GA;3FB==3FB;3GA==3GS;5FB==5FB;5GA==5GA} + + +\cyclohexanev{2FA==2FA;2GB==2GB;4FA==4FA;4GB==4GB;6FA==6FA;6GB==6GB} +\qquad\qquad +\cyclohexanev{2FB==2FB;2GA==2GA;4FB==4FB;4GA==4GA;6FB==6FB;6GA==6GA} +\caption{Bond Modifiers for Ring Fusion} +\label{ff:200b} +\end{center} +\end{figure} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\chapter{Nested-Substituent Method} + +\section{Introduction} + +Chapter 14 (Combining Structures) +and Chapter 15 (Large Substituents) of the \XyMTeX book +have described several techniques to draw complicated formulas. +Among them, the nested-substituent method is most promising. +For example, the code +\begin{verbatim} +\bzdrh{1==Cl;4==\kern-25pt\lower37pt\hbox to0pt{\bzdrh{3==F}}} +\end{verbatim} +gives a combined structure, +\begin{center} +\bzdrh{1==Cl;4==\kern-25pt\lower37pt\hbox to0pt{\bzdrh{3==F}}} +\end{center} +Although the code shows the connectivity between the two phenyl +groups, the following disadvantages remain: +\begin{enumerate} +\item The code contains no data indicating that the connection site +is the meta-position concerning the fluorine atom. +\item The commands \verb/\kern/ (for horizontal adjustment) and +\verb/\lower/ (for vertical adjustment) are necessary to adjust the +subsitutution site. +\end{enumerate} + +As clarified by the above examples, the main target of \XyMTeX{} +Version 2.00 is to extend the nested-substituent method +so that it provides a function of indicating full connectivity data +as well as a function of +automatical adjustment without using such commands +as \verb/\kern/ and \verb/\lower/. + +\section{``yl''-Functions} + +In \XyMTeX{} Version 2.00, the ``yl''-function is +added so as to improve the nested-subsituent method. +Thereby, any structure drawn by a \XyMTeX{} +command (except a few special commands) +can be converted into the corresponding substituent +by adding the code \verb/(yl)/ with a locant number. +The resulting code for the substituent can be added +to the SUBSLIST of any other command for +drawing a mother skeleton, where the final code +contains the full connectivity data of the combined structure. +For example, the code +\begin{verbatim} +\bzdrh{1==Cl;4==\bzdrh{1==(yl);3==F}} +\end{verbatim} +typesets the following structure, +\begin{center} +\bzdrh{1==Cl;4==\bzdrh{1==(yl);3==F}} +\end{center} +Thus, fluorobenzene produced by the command \verb/\bzdrh{3==F}/ +is converted into a subsituent, i.e. 3-fluorophenyl, +by adding the code \verb/(yl)/, as shown in the +code, \verb/\bzdrh{1==(yl);3==F}/. Then, the resulting code +is added to the SUBSLIST of another command \verb/\bzdrh/. + +The connectivity at the meta-position is +represented by the statement \verb/1==(yl)/ of +the innner code \verb/\bzdrh{1==(yl);3==F}/. +Note that the inner code \verb/\bzdrh{1==(yl);3==F}/ produces +a substituent with no height and no width and that +the reference point of the substituent is shifted to +the point no.~1 by the (yl)-statement in order to +link to the mother structure (the phenyl group +produced by the code \verb/\bzdrh{1==Cl;4=={...}}/). + +The shift of a reference point becomes clear when +we examine a formula, +\begin{center} +\vspace*{2cm} +\bzdrh{1==Cl;3==\bzdrh{6==(yl);3==F}} +\end{center} +generated by the code, +\begin{verbatim} +\bzdrh{1==Cl;3==\bzdrh{6==(yl);3==F}} +\end{verbatim} +The original structure of the substituent with no ``yl'' function +is found to be +\begin{center} +\begin{picture}(700,800)(0,0) +\put(0,0){\bzdrh{3==F}} +\put(0,0){\circle*{50}} +\end{picture} +\end{center} +as generated by the code +\begin{verbatim} +\begin{picture}(700,800)(0,0) +\put(0,0){\bzdrh{3==F}} +\put(0,0){\circle*{50}} +\end{picture} +\end{verbatim} +where the solid circle is the reference point. +The picture shown above +indicates that the reference point +is different from any vertices of the benzene ring. +On the other hand, the code with a ``yl''-function, +\begin{verbatim} +\begin{picture}(700,800)(0,-200) +\put(0,0){\bzdrh{6==(yl);3==F}} +\put(0,0){\circle*{50}} +\end{picture} +\end{verbatim} +typesets the following structure, +\begin{center} +\begin{picture}(700,800)(0,-200) +\put(0,0){\bzdrh{6==(yl);3==F}} +\put(0,0){\circle*{50}} +\end{picture} +\end{center} +The picture shown above +indicates that the reference point is shifted to the position +no.~6 of the benzene ring. + +The code \verb/\bzdrh{1==(yl);3==F}/ producing the substituent +can be used in the argument of any structure-drawing command +of \XyMTeX{}. The following example is the one +in which it is placed in the argument of a command \verb/\bzdrv/. +Thus, the code +\begin{verbatim} +\bzdrv{1==Cl;3==\bzdrh{1==(yl);3==F}} +\end{verbatim} +typesets the following structure, +\begin{center} +\bzdrv{1==Cl;3==\bzdrh{1==(yl);3==F}} +\end{center} + +The structural formula of 1-chloro-4-morphorinobenzene +can be drawn in two different ways. The codes, +\begin{verbatim} +\bzdrh{1==Cl;4==\sixheteroh[]{1==N;4==O}{1==(yl)}} +\hskip 6cm +\sixheteroh[]{1==N;4==O}{1==\bzdrh{1==Cl;4==(yl)}} +\end{verbatim} +produce the following formulas: +\begin{center} +\bzdrh{1==Cl;4==\sixheteroh[]{1==N;4==O}{1==(yl)}} +\hskip 6cm +\sixheteroh[]{1==N;4==O}{1==\bzdrh{1==Cl;4==(yl)}} +\end{center} +In the former code, +the morphorino group is regareded as a substituent, +as the name ``1-chloro-4-morphori\-nobenzene'' indicates. +On the other hand, the chlorophenyl group +is considered to be a substituent in the latter code +so as to correspond to the name ``N-(4-chlorophenyl)morphorine''. + +The ``yl''-function is quite versatile, as indicated by the code, +\begin{verbatim} +\decaheterov[]{4a==N}{4D==O;7B==HO;{{10}A}==H;% +5==\bzdrv{3==OMe;4==OMe;6==Br;1==(yl)}} +\end{verbatim} +producing the following structure: +\begin{center} +\decaheterov[]{4a==N}{4D==O;7B==HO;{{10}A}==H;% +5==\bzdrv{3==OMe;4==OMe;6==Br;1==(yl)}} +\end{center} +\par\vskip2cm +\noindent +where the substituted phenyl group is regarded as a substituent. +An opposite view can be realized by the code +\begin{verbatim} +\bzdrv{3==OMe;4==OMe;6==Br;% +1==\decaheterov[]{4a==N}{4D==O;7B==HO;{{10}A}==H;5==(yl)}} +\end{verbatim} +which typesets the same structure: +\vskip2cm +\begin{center} +\bzdrv{3==OMe;4==OMe;6==Br;% +1==\decaheterov[]{4a==N}{4D==O;7B==HO;{{10}A}==H;5==(yl)}} +\end{center} +where the moiety drawn by the command \verb/\decaheterov/ is +regarded as a substituent. + +Two or more substituents generated by the ``yl''-function +can be introduced into an ATOMLIST. For example, +\begin{verbatim} +\bzdrh{1==\bzdrh{4==(yl)};4==\bzdrh{1==(yl);3==F}} +\end{verbatim} +typesets the following structure, +\begin{center} +\bzdrh{1==\bzdrh{4==(yl)};4==\bzdrh{1==(yl);3==F}} +\end{center} + +The structural formula of hexaphenylbenzene can be +drawn by this technique. Thus the code, +\begin{verbatim} +\bzdrv{1==\bzdrv{4==(yl)};% +2==\bzdrv{5==(yl)};3==\bzdrv{6==(yl)};% +4==\bzdrv{1==(yl)};5==\bzdrv{2==(yl)};% +6==\bzdrv{3==(yl)}} +\end{verbatim} +generates the following formula: +\begin{center} +\vspace*{1cm} +\bzdrv{1==\bzdrv{4==(yl)};% +2==\bzdrv{5==(yl)};3==\bzdrv{6==(yl)};% +4==\bzdrv{1==(yl)};5==\bzdrv{2==(yl)};% +6==\bzdrv{3==(yl)}} + +\vspace*{1cm} +\end{center} + +\section{Nested ``yl''-functions} + +Two or more ``yl''-functions can be nested. +For example, a structure +\begin{center} +\tetrahedral{0==C;1D==O;4==\bzdrh{1==(yl)}} +\end{center} +depicted by the code, +\begin{verbatim} +\tetrahedral{0==C;1D==O;4==\bzdrh{1==(yl)}} +\end{verbatim} +can be converted into a substituent by adding +``yl''-function, as shown in the following code: +\begin{verbatim} +\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}} +\end{verbatim} +Then this substituent is nested in the SUBSLIST of +the command \verb/\cyclohexaneh/ to give a code, +\begin{verbatim} +\cyclohexaneh[]{4==% +\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}} +\end{verbatim} +Thereby we have the structural formula of +benzoylcyclohexane: +\begin{center} +\cyclohexaneh[]{4==% +\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}} +\end{center} + +The resulting structure can be further converted into +a substituent by adding ``yl''-function. The +following example shows that the substituent is +linked to the 4-position of a naphthol ring: +\begin{center} +\naphdrh{1==HO;4==% +\cyclohexaneh[]{1==(yl);4==% +\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}}} +\end{center} +which is typeset by the triply nested code: +\begin{verbatim} +\naphdrh{1==HO;4==% +\cyclohexaneh[]{1==(yl);4==% +\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}}} +\end{verbatim} +The same structural formula can be drawn by regarding +the 1-naphthol-4-yl group and the benzoyl group as +substituents, as shown in the following code: +\begin{verbatim} +\cyclohexaneh[]{% +1==\naphdrh{1==HO;4==(yl)};% +4==\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}} +\end{verbatim} +Accordingly, we have +\begin{center} +\cyclohexaneh[]{% +1==\naphdrh{1==HO;4==(yl)};% +4==\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}} +\end{center} + +\bigskip +The structure of benzoylcyclohexane can also be drawn by considering +the \verb/\tetrahedral/ moiety as a mother skeleton, +as shown in the code: +\begin{verbatim} +\tetrahedral{0==C;1D==O;4==\bzdrh{1==(yl)};2==\cyclohexaneh[]{4==(yl)}} +\end{verbatim} +Thereby, we have the formula, +\begin{center} +\tetrahedral{0==C;1D==O;4==\bzdrh{1==(yl)};2==\cyclohexaneh[]{4==(yl)}} +\end{center} +which shows that +two or more substituents produced by the ``yl''-function +can be written in a SUBSLIST. +This treatment corresponds to the alternative name of +benzoylcyclohexane, i.e., cyclohexyl phenyl ketone, +since the codes \verb/\cyclohexaneh{4==(yl)}/ and +\verb/\bzdrh{1==(yl)}/ represent +a cyclohexyl and a phenyl group, respectively. + +Although +the resulting structure cannot be used as a substituent concerning +the cyclohexane ring, the SUBSLIST of the command \verb/\cyclohexaneh/ +is capable of accomodating the substituent \verb/\naphdrh{1==HO;4==(yl)}/ +to give +\begin{verbatim} +\tetrahedral{0==C;1D==O;4==\bzdrh{1==(yl)};% +2==\cyclohexaneh[]{4==(yl);1==\naphdrh{1==HO;4==(yl)}}} +\end{verbatim} +which typesets the same structural formula: +\begin{center} +\tetrahedral{0==C;1D==O;4==\bzdrh{1==(yl)};% +2==\cyclohexaneh[]{4==(yl);1==\naphdrh{1==HO;4==(yl)}}} + +\vspace*{1cm} +\end{center} + + +The formula, +\begin{center} +\vspace*{2cm} +\bzdrv{% +1==\bzdrv{4==(yl);2==\bzdrv{5==(yl)}};% +2==\bzdrv{5==(yl);3==\bzdrv{6==(yl)}};% +3==\bzdrv{6==(yl);4==\bzdrv{1==(yl)}};% +4==\bzdrv{1==(yl);5==\bzdrv{2==(yl)}};% +5==\bzdrv{2==(yl);6==\bzdrv{3==(yl)}};% +6==\bzdrv{3==(yl);1==\bzdrv{4==(yl)}}} + +\vspace*{2cm} +\end{center} +illustrates the more complicated structure of a code +with nested ``yl''-functions: +\begin{verbatim} +\bzdrv{% +1==\bzdrv{4==(yl);2==\bzdrv{5==(yl)}};% +2==\bzdrv{5==(yl);3==\bzdrv{6==(yl)}};% +3==\bzdrv{6==(yl);4==\bzdrv{1==(yl)}};% +4==\bzdrv{1==(yl);5==\bzdrv{2==(yl)}};% +5==\bzdrv{2==(yl);6==\bzdrv{3==(yl)}};% +6==\bzdrv{3==(yl);1==\bzdrv{4==(yl)}}} +\end{verbatim} + +To simplify the coding, we define a macro +drawing a biphenyl unit as follows: +\begin{verbatim} +\def\biph#1#2#3{\bzdrv{#1==(yl);#2==\bzdrv{#3==(yl)}}} +\end{verbatim} +Then, this macro is used in the SUBSLIST of \verb/\bzdrv/ +to give the code, +\begin{verbatim} +\bzdrv{% +1==\biph{4}{2}{5};% +2==\biph{5}{3}{6};% +3==\biph{6}{4}{1};% +4==\biph{1}{5}{2};% +5==\biph{2}{6}{3};% +6==\biph{3}{1}{4}} +\end{verbatim} +Thereby, we have +\begin{center} +\vspace*{2cm} +\def\biph#1#2#3{\bzdrv{#1==(yl);#2==\bzdrv{#3==(yl)}}} +\bzdrv{% +1==\biph{4}{2}{5};% +2==\biph{5}{3}{6};% +3==\biph{6}{4}{1};% +4==\biph{1}{5}{2};% +5==\biph{2}{6}{3};% +6==\biph{3}{1}{4}} + +\vspace*{2cm} +\end{center} + +A more complex nested code, + +\begin{verbatim} +\vspace*{8cm} +\bzdrv{% +1==\bzdrv{4==(yl);2==\bzdrv{5==(yl);3==\bzdrv{6==(yl);% +3==\bzdrv{6==(yl);4==\bzdrv{1==(yl);4==\bzdrv{1==(yl);% +4==\bzdrv{1==(yl);5==\bzdrv{2==(yl);5==\bzdrv{2==(yl);% +5==\bzdrv{2==(yl)}}}}}}}}}};% +2==\bzdrv{5==(yl);3==\bzdrv{6==(yl);4==\bzdrv{1==(yl);% +4==\bzdrv{1==(yl);5==\bzdrv{2==(yl);5==\bzdrv{2==(yl);% +5==\bzdrv{2==(yl);6==\bzdrv{3==(yl);6==\bzdrv{3==(yl);% +6==\bzdrv{3==(yl)}}}}}}}}}};% +3==\bzdrv{6==(yl);4==\bzdrv{1==(yl);5==\bzdrv{2==(yl);% +5==\bzdrv{2==(yl);6==\bzdrv{3==(yl);6==\bzdrv{3==(yl);% +6==\bzdrv{3==(yl);1==\bzdrv{4==(yl);1==\bzdrv{4==(yl);% +1==\bzdrv{4==(yl)}}}}}}}}}};% +4==\bzdrv{1==(yl);5==\bzdrv{2==(yl);6==\bzdrv{3==(yl);% +6==\bzdrv{3==(yl);1==\bzdrv{4==(yl);1==\bzdrv{4==(yl);% +1==\bzdrv{4==(yl);2==\bzdrv{5==(yl);2==\bzdrv{5==(yl);% +2==\bzdrv{5==(yl)}}}}}}}}}};% +5==\bzdrv{2==(yl);6==\bzdrv{3==(yl);1==\bzdrv{4==(yl);% +1==\bzdrv{4==(yl);2==\bzdrv{5==(yl);2==\bzdrv{5==(yl);% +2==\bzdrv{5==(yl);3==\bzdrv{6==(yl);3==\bzdrv{6==(yl);% +3==\bzdrv{6==(yl)}}}}}}}}}};% +6==\bzdrv{3==(yl);1==\bzdrv{4==(yl);2==\bzdrv{5==(yl);% +2==\bzdrv{5==(yl);3==\bzdrv{6==(yl);3==\bzdrv{6==(yl);% +3==\bzdrv{6==(yl);4==\bzdrv{1==(yl);4==\bzdrv{1==(yl);% +4==\bzdrv{1==(yl)}}}}}}}}}}} +\end{verbatim} +produces the following formula: + +\clearpage%to avoid ! TeX capacity exceeded + +\begin{center} +\vspace*{8cm} +\bzdrv{% +1==\bzdrv{4==(yl);2==\bzdrv{5==(yl);3==\bzdrv{6==(yl);% +3==\bzdrv{6==(yl);4==\bzdrv{1==(yl);4==\bzdrv{1==(yl);% +4==\bzdrv{1==(yl);5==\bzdrv{2==(yl);5==\bzdrv{2==(yl);% +5==\bzdrv{2==(yl)}% +}}}% +}}}% +}}};% +2==\bzdrv{5==(yl);3==\bzdrv{6==(yl);4==\bzdrv{1==(yl);% +4==\bzdrv{1==(yl);5==\bzdrv{2==(yl);5==\bzdrv{2==(yl);% +5==\bzdrv{2==(yl);6==\bzdrv{3==(yl);6==\bzdrv{3==(yl);% +6==\bzdrv{3==(yl)}% +}}}% +}}}% +}}};% +3==\bzdrv{6==(yl);4==\bzdrv{1==(yl);5==\bzdrv{2==(yl);% +5==\bzdrv{2==(yl);6==\bzdrv{3==(yl);6==\bzdrv{3==(yl);% +6==\bzdrv{3==(yl);1==\bzdrv{4==(yl);1==\bzdrv{4==(yl);% +1==\bzdrv{4==(yl)}% +}}}% +}}}% +}}};% +4==\bzdrv{1==(yl);5==\bzdrv{2==(yl);6==\bzdrv{3==(yl);% +6==\bzdrv{3==(yl);1==\bzdrv{4==(yl);1==\bzdrv{4==(yl);% +1==\bzdrv{4==(yl);2==\bzdrv{5==(yl);2==\bzdrv{5==(yl);% +2==\bzdrv{5==(yl)}% +}}}% +}}}% +}}};% +5==\bzdrv{2==(yl);6==\bzdrv{3==(yl);1==\bzdrv{4==(yl);% +1==\bzdrv{4==(yl);2==\bzdrv{5==(yl);2==\bzdrv{5==(yl);% +2==\bzdrv{5==(yl);3==\bzdrv{6==(yl);3==\bzdrv{6==(yl);% +3==\bzdrv{6==(yl)}% +}}}% +}}}% +}}};% +6==\bzdrv{3==(yl);1==\bzdrv{4==(yl);2==\bzdrv{5==(yl);% +2==\bzdrv{5==(yl);3==\bzdrv{6==(yl);3==\bzdrv{6==(yl);% +3==\bzdrv{6==(yl);4==\bzdrv{1==(yl);4==\bzdrv{1==(yl);% +4==\bzdrv{1==(yl)}% +}}}% +}}}% +}}}} +\end{center} + +\clearpage + +The code to draw this structural formula is +too complicated to cause the ``\TeX{} capacity exceeded'' error. +To avoid the error, we use \verb/\clearpage/ commands before +and after the output of the formula. +In addition, we call only necessary packages +to treat this cocument without the use of \textsf{xymtex.sty} +calling all package files. + +\section{Remarks} +\subsection{Drawing Domains} +Substituents produced by the ``yl''-function have no dimensions. +For example, benzoylcyclohexane +\begin{center} +\fbox{% +\cyclohexaneh[]{4==% +\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}}% +} +\end{center} +produced by the code +\begin{verbatim} +\cyclohexaneh[]{4==% +\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}} +\end{verbatim} +has a drawing domain around the cyclohexane mother skeleton, +as encircled by a frame. Since the bezoyl moiety occupies no area, +it may be superimposed on other contexts +so as to require some space adjustments. +For example, the above code duplicated without +any space adjustment, +\begin{verbatim} +\cyclohexaneh[]{4==% +\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}} +\cyclohexaneh[]{4==% +\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}}% +\end{verbatim} +gives an insufficient result: +\begin{center} +\cyclohexaneh[]{4==% +\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}} +\cyclohexaneh[]{4==% +\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}}% +\end{center} +This superposition can be avoided by a horizontal spacing. Thus +the code +\begin{verbatim} +\cyclohexaneh[]{4==% +\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}} +\hskip2cm +\cyclohexaneh[]{4==% +\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}}% +\end{verbatim} +typesets improved formulas: +\begin{center} +\cyclohexaneh[]{4==% +\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}} +\hskip2cm +\cyclohexaneh[]{4==% +\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}}% +\end{center} + +If a more thorough adjustment is required, +a formula should be placed in a \LaTeX{} picture environment +as follows. +\begin{verbatim} +\begin{picture}(1600,900)(0,0) +\cyclohexaneh[]{4==% +\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}} +\end{picture} +\end{verbatim} +This code produces +\begin{center} +\fbox{% +\begin{picture}(1600,900)(0,0) +\cyclohexaneh[]{4==% +\tetrahedral{2==(yl);0==C;1D==O;4==\bzdrh{1==(yl)}}} +\end{picture} +} +\end{center} +where a frame is added by means of a \verb/\fbox/ command. + +A drawing domain around a formula depends upon a mother skeleton +selected. For example, the formula of benzoylcyclohexane at the top +of this section has a drawing domain shown by the frame, since +a \verb/\cyclohexaneh/ is selected as a mother skeleton. +On the other hand, the alternative formula +of benzoylcyclohexane depicted by the code, +\begin{verbatim} +\tetrahedral{0==C;1D==O;4==\bzdrh{1==(yl)};2==\cyclohexaneh[]{4==(yl)}} +\end{verbatim} +has a drawing domain due to the \verb/\tetrahedral/ skeleton. +Thus, the code gives the following output: +\begin{center} +\fbox{% +\tetrahedral{0==C;1D==O;4==\bzdrh{1==(yl)};2==\cyclohexaneh[]{4==(yl)}} +} +\end{center} +where the frame indicates such a drawing domain, +when an \verb/\fbox/ command is used around +the \verb/\tetrahedral/ command. +The domain shown by the frame (due to \verb/\fbox/) is equal to +any domain based on the simple use of the \verb/\tetrahedral/ command +(without using the ``yl''-function). +For example, compare the above frame with the one +appearing in the formula, +\begin{center} +\fbox{\tetrahedral{0==C;1D==O;4==Cl;2==Cl}} +\end{center} +depicted by the code, +\begin{verbatim} +\fbox{\tetrahedral{0==C;1D==O;4==Cl;2==Cl}} +\end{verbatim} + +\subsection{Reference Points} + +Each \XyMTeX{} command for drawing a mother skeleton +has its reference point and its inner reference point. +These points can be printed out by switching +\verb/\origpt/ on. For example, the code +\begin{verbatim} +{ +\origpttrue +\cyclohexanev{} +} +\end{verbatim} +generates the diagram: +\begin{center} +{ +\origpttrue +\cyclohexanev{} +} +\end{center} +where the solid circle indicates the reference point (0,0) and +the open circle indicates the inner reference point (400,240). +The values of cooridates are output on a display and in a log file: +\begin{verbatim} +command `sixheterov' origin: (0,0) ---> (400,240) +\end{verbatim} +since \verb/\cyclohexanev/ is based on \verb/\sixheterov/. + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\chapter{Linking Units} + +The commands \verb/\ryl/ and \verb/\lyl/ described +in this chapter are added to +the {\sf chemstr} package (file name: chemstr.sty). +The \verb/\divalenth/ command is added to +the {\sf aliphat} package (file name: aliphat.sty). + +\section{$\backslash$ryl command}. + +The ``yl''-function provides us with +a tool to generate a substituent that +is linked {\itshape directly} to a substitution site +of a mother skeleton. There are, however, +many cases in which a substituent +is linked to a substitution site by an intervening unit +(e.g., O, SO$_{2}$ and NH). +The command \verb/\ryl/ is used to +generate a right-hand substituent with a linking unit. +For example, the code +\begin{verbatim} +\ryl(5==NH--SO$_{2}$){4==\bzdrh{1==(yl)}} +\end{verbatim} +produces a benzenesulfonamido substituent, +\bigskip +\begin{center} +\ryl(5==NH--SO$_{2}$){4==\bzdrh{1==(yl)}} + +\vspace*{1cm} +\end{center} +The resulting unit is added to the SUBSLIST of +a command for drawing a skeletal command. +For example, the code +\begin{verbatim} +\bzdrh{3==\ryl(5==NH--SO$_{2}$){4==\bzdrh{1==(yl)}}} +\end{verbatim} +generates the following formula: +\begin{center} +\vspace*{1cm} +\bzdrh{3==\ryl(5==NH--SO$_{2}$){4==\bzdrh{1==(yl)}}} +\end{center} + +The \verb/\ryl/ command takes two arguments. +\begin{verbatim} +\ryl(LINK){GROUP} +\end{verbatim} +The first argument LINK in the parentheses indicates +an intervening unit with an integer showing +the slope of a left incidental bond. +For example, the number 5 of the code \verb/5==NH--SO$_{2}$/ +shown above represents that the left terminal is to be linked +through $(-5,-3)$ bond, though the linking bond +is not typeset by the \verb/\ryl/ command only. +The slopes of the linking bonds are designated by +integers between 0 and 8: +\begin{center} +\begin{tabular}{cc|cc|cc} +0 & $(0,1)$ & 1 & $(-3,5)$ & 2 & $(-1,1)$ \\ +3 & $(-5,3)$ & 4 & $(-1,0)$ & 5 & $(-5,-3)$ \\ +6 & $(-1,-1)$ & 7 & $(-3,-5)$ & 8 & $(0,-1)$ \\ +\end{tabular} +\end{center} + +The second argument GROUP of \verb/\ryl/ is +a substituent produced by a ``yl''-function, +where a number before a delimiter (==) indicates +the slope of a right incidental bond. +For example, the number 4 of the code +\verb/4==\bzdrh{1==(yl)}/ shown above +represents that the right terminal is to be linked +through $(1,0)$ bond to the benzene ring generated by +the \verb/\bzdrh/ command. +The slopes of the linking bonds are designated by +integers between 0 and 8: +\begin{center} +\begin{tabular}{cc|cc|cc} +0 & $(0,1)$ & 1 & $(3,5)$ & 2 & $(1,1)$ \\ +3 & $(5,3)$ & 4 & $(1,0)$ & 5 & $(5,-3)$ \\ +6 & $(1,-1)$ & 7 & $(3,-5)$ & 8 & $(0,-1)$ \\ +\end{tabular} +\end{center} + +To illustrate linking bonds with various slopes, +the code +\begin{verbatim} +\cyclohexanev[]{% +1==\ryl(8==NH--SO$_{2}$){1==\bzdrh{6==(yl)}}; +2==\ryl(5==NH--SO$_{2}$){4==\bzdrh{1==(yl)}}; +3==\ryl(3==NH--SO$_{2}$){4==\bzdrh{1==(yl)}};% +4==\ryl(0==NH--SO$_{2}$){7==\bzdrh{2==(yl)}}} +\end{verbatim} +is written to give + +\vspace*{2cm} +\begin{center} +\cyclohexanev[]{% +1==\ryl(8==NH--SO$_{2}$){1==\bzdrh{6==(yl)}}; +2==\ryl(5==NH--SO$_{2}$){4==\bzdrh{1==(yl)}}; +3==\ryl(3==NH--SO$_{2}$){4==\bzdrh{1==(yl)}};% +4==\ryl(0==NH--SO$_{2}$){7==\bzdrh{2==(yl)}}} +\end{center} +\vspace*{2cm} + +Other examples are drawn by the code +\begin{verbatim} +\cyclohexaneh[]{% +3==\ryl(7==NH--SO$_{2}$){4==\bzdrh{1==(yl)}}; +5==\ryl(1==NH--SO$_{2}$){4==\bzdrh{1==(yl)}};% +4==\ryl(4==NH--SO$_{2}$--NH){4==\bzdrh{1==(yl)}}} +\end{verbatim} +giving +\vspace*{1cm} +\begin{center} +\cyclohexaneh[]{% +3==\ryl(7==NH--SO$_{2}$){4==\bzdrh{1==(yl)}}; +5==\ryl(1==NH--SO$_{2}$){4==\bzdrh{1==(yl)}};% +4==\ryl(4==NH--SO$_{2}$--NH){4==\bzdrh{1==(yl)}}} +\end{center} +\vspace*{1cm} + +The first argument in the parentheses of the +command \verb/\ryl/ contains a string of letters +after an intermediate delimiter ==, where +a left linking site is shifted according to the +length of the letter string. +The above formula shows such an example +as having NH--SO$_{2}$--NH. + + +The following examples compare the +``yl''-function with the \verb/\ryl/ command. +\begin{verbatim} +\cyclohexaneh{4==\bzdrh{1==(yl)}} +\hskip2cm +\cyclohexaneh{4==\ryl(4==O){4==\bzdrh{1==(yl)}}} +\end{verbatim} + +\begin{center} +\cyclohexaneh{4==\bzdrh{1==(yl)}} +\hskip2cm +\cyclohexaneh{4==\ryl(4==O){4==\bzdrh{1==(yl)}}} +\end{center} + +The compound {\bfseries 21} +on page 299 of the \XyMTeX book +%``\XyMTeX{}---Typesetting Chemical +%Structural Formulas'' (Addison-Wesley Publishers Japan, 1997) +can be alternatively drawn by using +the \verb/\ryl/ command, as shown in the code: +\begin{verbatim} +\fiveheterov[d]{1==N;5==N}{4==NC;1==\bzdrv{1==(yl)};2D==O;% +3D==\ryl(5==N-NH){4==\bzdrh{1==(yl);2==\lmoiety{MeO};5==SO$_{2}$Cl}}} +\end{verbatim} +which typeset the following formula: +\begin{center} +\vspace*{1cm} +\fiveheterov[d]{1==N;5==N}{4==NC;1==\bzdrv{1==(yl)};2D==O;% +3D==\ryl(5==N-NH){4==\bzdrh{1==(yl);2==\lmoiety{MeO};5==SO$_{2}$Cl}}} + +\vspace*{2cm} +\end{center} + +The first argument of the \verb/\ryl/ is optional; i.e., it can be +omitted. Such an omitted case is useful to draw a methylene as +a vertex. For example, a methylene is represented as +a character string ``CH$_{2}$'', as shown in the formula, +\begin{center} +\sixheterov[d]{2==S}{5==\null;% +3==\ryl(3==CH$_{2}$){3==\sixheterov[d]{2==S}{5==(yl)}}} +\end{center} +This formula is generated by the code, +\begin{verbatim} +\sixheterov[d]{2==S}{5==\null;% +3==\ryl(3==CH$_{2}$){3==\sixheterov[d]{2==S}{5==(yl)}}} +\end{verbatim} +where the \verb/\ryl/ command takes an optional argument +in parentheses to draw CH$_{2}$ exciplicitly. +Such a methylene can alternatively be represented as a simple vertex, +as shown in the formula, +\begin{center} +\sixheterov[d]{2==S}{5==\null;% +3==\ryl{3==\sixheterov[d]{2==S}{5==(yl)}}} +\end{center} +This formula is generated by the code, +\begin{verbatim} +\sixheterov[d]{2==S}{5==\null;% +3==\ryl{3==\sixheterov[d]{2==S}{5==(yl)}}} +\end{verbatim} +where the \verb/\ryl/ command takes no optional argument. + +The second argument of the \verb/\ryl/ command can +accomodate substituents other than a substituent +generated by the ``yl'' function. For example, +the inner code \verb/\ryl{0A==Me;...}/ in the code, +\begin{verbatim} +\sixheterov({bB}{eA}){3==O;5==O}{1A==Me;4Sa==\null;4Sb==\null;% +6==\pentamethylenei[a]{}{4B==OH;5B==Me;5==(yl)};% +2==\ryl{0A==Me;5==\sixheterov({eA}){3==O;5==O}{6==(yl);1B==Me;% +4Sa==\null;4Sb==\null}}} +\end{verbatim} +represents a methyl group on a vertex due to the command \verb/\ryl/. +Thereby, we have +\begin{center} +\vspace*{1cm} +\sixheterov({bB}{eA}){3==O;5==O}{1A==Me;4Sa==\null;4Sb==\null;% +6==\pentamethylenei[a]{}{4B==OH;5B==Me;5==(yl)};% +2==\ryl{0A==Me;5==\sixheterov({eA}){3==O;5==O}{6==(yl);1B==Me;% +4Sa==\null;4Sb==\null}}} + +\vspace*{1cm} +\end{center} + + + +\section{$\backslash$lyl command} + +The command \verb/\lyl/ is the left-hand +counterpart of the command \verb/\ryl/. +\begin{verbatim} +\lyl(LINK){GROUP} +\end{verbatim} +The slopes of the linking bonds +concerning the right terminal are designated by +integers between 0 and 8: +\begin{center} +\begin{tabular}{cc|cc|cc} +0 & $(0,1)$ & 1 & $(3,5)$ & 2 & $(1,1)$ \\ +3 & $(5,3)$ & 4 & $(1,0)$ & 5 & $(5,-3)$ \\ +6 & $(1,-1)$ & 7 & $(3,-5)$ & 8 & $(0,-1)$ \\ +\end{tabular} +\end{center} +The slopes of the linking bonds concerning +the left terminal are designated by +integers between 0 and 8: +\begin{center} +\begin{tabular}{cc|cc|cc} +0 & $(0,1)$ & 1 & $(-3,5)$ & 2 & $(-1,1)$ \\ +3 & $(-5,3)$ & 4 & $(-1,0)$ & 5 & $(-5,-3)$ \\ +6 & $(-1,-1)$ & 7 & $(-3,-5)$ & 8 & $(0,-1)$ \\ +\end{tabular} +\end{center} + +To illustrate linking bonds with various slopes, +the code +\begin{verbatim} +\cyclohexanev[]{% +1==\lyl(8==SO$_{2}$--HN){1==\bzdrh{5==(yl)}};% +6==\lyl(5==SO$_{2}$--NH){4==\bzdrh{4==(yl)}};% +5==\lyl(3==SO$_{2}$--NH){4==\bzdrh{4==(yl)}};% +4==\lyl(0==SO$_{2}$--HN){7==\bzdrh{3==(yl)}}} +\end{verbatim} +is written to give + + +\vspace*{2cm} +\begin{center} +\cyclohexanev[]{% +1==\lyl(8==SO$_{2}$--HN){1==\bzdrh{5==(yl)}};% +6==\lyl(5==SO$_{2}$--NH){4==\bzdrh{4==(yl)}};% +5==\lyl(3==SO$_{2}$--NH){4==\bzdrh{4==(yl)}};% +4==\lyl(0==SO$_{2}$--HN){7==\bzdrh{3==(yl)}}} +\end{center} +\vspace*{2cm} + +Other examples are drawn by the code +\begin{verbatim} +\cyclohexaneh[]{% +2==\lyl(7==SO$_{2}$--NH){4==\bzdrh{4==(yl)}}; +6==\lyl(1==SO$_{2}$--NH){4==\bzdrh{4==(yl)}};% +1==\lyl(4==NH--SO$_{2}$--HN){4==\bzdrh{4==(yl)}}} +\end{verbatim} +giving +\vspace*{1cm} +\begin{center} +\cyclohexaneh[]{% +2==\lyl(7==SO$_{2}$--NH){4==\bzdrh{4==(yl)}}; +6==\lyl(1==SO$_{2}$--NH){4==\bzdrh{4==(yl)}};% +1==\lyl(4==NH--SO$_{2}$--NH){4==\bzdrh{4==(yl)}}} +\end{center} +\vspace*{1cm} + +The first argument in the parentheses of the +command \verb/\lyl/ contains a string of letters +after an intermediate delimiter ==, where +a left linking site is shifted according to the +length of the letter string. +The above formula shows such an example +as having NH--SO$_{2}$--NH. + +The structural formula of adonitoxin, +which has once been depicted in a different way +in Chapter 15 of the \XyMTeX book +%``\XyMTeX{}---Typesetting Chemical +%Structural Formulas'' (Addison-Wesley Publishers Japan, 1997) +can be obtained by the code, +\begin{verbatim} +\steroid{{{10}}==\lmoiety{OHC};{{14}}==OH;% +{{13}}==\lmoiety{H$_{3}$C};{{16}}==OH;% +{{17}}==\fiveheterov[e]{3==O}{4D==O;1==(yl)};% +3==\lyl(3==O){8==% +\pyranose{1Sb==(yl);1Sa==H;2Sb==H;2Sa==OH;3Sb==H;3Sa==OH;4Sb==HO;% +4Sa==H;5Sb==H;5Sa==CH$_{3}$}}} +\end{verbatim} + +\begin{quotation} +\vspace*{1cm} +\hspace*{4cm} +\steroid{{{10}}==\lmoiety{OHC};{{14}}==OH;% +{{13}}==\lmoiety{H$_{3}$C};{{16}}==OH;% +{{17}}==\fiveheterov[e]{3==O}{4D==O;1==(yl)};% +3==\lyl(3==O){8==% +\pyranose{1Sb==(yl);1Sa==H;2Sb==H;2Sa==OH;3Sb==H;3Sa==OH;4Sb==HO;% +4Sa==H;5Sb==H;5Sa==CH$_{3}$}}} +\end{quotation} + +\vskip1cm + + +\section{Nested $\backslash$ryl and $\backslash$lyl commands} + +Two or more \verb/\ryl/ and \verb/\lyl/ commands can be nested. +Let us illustrate nesting processes by drawing a cyan +dye releaser, which has once been depicted in different ways +(see Chapters 14 and 15 of the \XyMTeX book). +%in ``\XyMTeX{}---Typesetting Chemical +%Structural Formulas'' (Addison-Wesley Publishers Japan, 1997)). + +\vspace*{1cm} +\bzdrv{1==OH;5==CH$_{3}$;4==OC$_{16}$H$_{33}$;% +2==\ryl(4==NH--SO$_{2}$){4==\bzdrh{1==(yl);2==OCH$_{2}$CH$_{2}$OCH$_{3}$;% +5==\ryl(2==NH--SO$_{2}$){4==\bzdrh{1==(yl);% +5==\ryl(2==SO$_{2}$--NH){4==\naphdrh{1==(yl);5==OH;% +8==\lyl(4==N=N){4==\bzdrh{4==(yl);1==NO$_{2}$;5==SO$_{2}$CH$_{3}$}}}}}}}}} + +\vskip3cm +First, the code +\begin{verbatim} +\ryl(4==NH--SO$_{2}$){4==\bzdrh{1==(yl);2==OCH$_{2}$CH$_{2}$OCH$_{3}$;% +5==\null}} +\end{verbatim} +generates a substituent: +\begin{quotation} +\vspace*{1cm} +\ryl(4==NH--SO$_{2}$){4==\bzdrh{1==(yl);2==OCH$_{2}$CH$_{2}$OCH$_{3}$;% +5==\null}} + +\vspace*{1cm} +\end{quotation} +in which the command \verb/\null/ is used to show a further +substitution site. The resulting substituent is +nested in the SUBSLIT of another \verb/\bzdrv/ command +as shown in the code: +\begin{verbatim} +\bzdrv{1==OH;5==CH$_{3}$;4==OC$_{16}$H$_{33}$;% +2==\ryl(4==NH--SO$_{2}$){4==\bzdrh{1==(yl);2==OCH$_{2}$CH$_{2}$OCH$_{3}$;% +5==\null}}} +\end{verbatim} +Thereby we have +\begin{quotation} +\vskip1cm +\bzdrv{1==OH;5==CH$_{3}$;4==OC$_{16}$H$_{33}$;% +2==\ryl(4==NH--SO$_{2}$){4==\bzdrh{1==(yl);2==OCH$_{2}$CH$_{2}$OCH$_{3}$;% +5==\null}}} +\end{quotation} + +\vskip1cm \noindent +The inner code \verb/5==\null/ is replaced by a further +code of substitution: +\begin{verbatim} +5==\ryl(2==NH--SO$_{2}$){4==\bzdrh{1==(yl);5==\null}}% +\end{verbatim} +to give a code, +\begin{verbatim} +\bzdrv{1==OH;5==CH$_{3}$;4==OC$_{16}$H$_{33}$;% +2==\ryl(4==NH--SO$_{2}$){4==\bzdrh{1==(yl);2==OCH$_{2}$CH$_{2}$OCH$_{3}$;% +5==\ryl(2==NH--SO$_{2}$){4==\bzdrh{1==(yl);5==\null}}% +}}} +\end{verbatim} +This code generates the following structure (Formula A): +\begin{quotation} +\vskip1cm +\bzdrv{1==OH;5==CH$_{3}$;4==OC$_{16}$H$_{33}$;% +2==\ryl(4==NH--SO$_{2}$){4==\bzdrh{1==(yl);2==OCH$_{2}$CH$_{2}$OCH$_{3}$;% +5==\ryl(2==NH--SO$_{2}$){4==\bzdrh{1==(yl);% +5==\null}}}}} +\end{quotation} + +\vskip1cm +Another substituent is typeset by the code, +\begin{verbatim} +\ryl(2==SO$_{2}$--NH){4==\naphdrh{1==(yl);5==OH;% +8==\lyl(4==N=N){4==\bzdrh{4==(yl);1==NO$_{2}$;5==SO$_{2}$CH$_{3}$}}}} +\end{verbatim} +Then, we have a substituent (Formula B): +\begin{quotation} +\vskip1cm +\hspace*{4cm}\ryl(2==SO$_{2}$--NH){4==\naphdrh{1==(yl);5==OH;% +8==\lyl(4==N=N){4==\bzdrh{4==(yl);1==NO$_{2}$;5==SO$_{2}$CH$_{3}$}}}} +\end{quotation} + +\vspace{3cm} +Finally, the inner code \verb/5==\null/ for Formula A is replaced +by the code for Formula B +in order to combine Formula A with Formula B. +Then we obtain a code represented by +\begin{verbatim} +\bzdrv{1==OH;5==CH$_{3}$;4==OC$_{16}$H$_{33}$;% +2==\ryl(4==NH--SO$_{2}$){4==\bzdrh{1==(yl);2==OCH$_{2}$CH$_{2}$OCH$_{3}$;% +5==\ryl(2==NH--SO$_{2}$){4==\bzdrh{1==(yl);% +5==\ryl(2==SO$_{2}$--NH){4==\naphdrh{1==(yl);5==OH;% +8==\lyl(4==N=N){4==\bzdrh{4==(yl);1==NO$_{2}$;5==SO$_{2}$CH$_{3}$}}}}}}}}} +\end{verbatim} +Thereby, we have a target formula: + +\vspace*{1cm} +\bzdrv{1==OH;5==CH$_{3}$;4==OC$_{16}$H$_{33}$;% +2==\ryl(4==NH--SO$_{2}$){4==\bzdrh{1==(yl);2==OCH$_{2}$CH$_{2}$OCH$_{3}$;% +5==\ryl(2==NH--SO$_{2}$){4==\bzdrh{1==(yl);% +5==\ryl(2==SO$_{2}$--NH){4==\naphdrh{1==(yl);5==OH;% +8==\lyl(4==N=N){4==\bzdrh{4==(yl);1==NO$_{2}$;5==SO$_{2}$CH$_{3}$}}}}}}}}} + +\vskip3cm + +The structural formula of adonitoxin, +which has benn drawn by considering the steroid nucleus to be +a mother skeleton in the preceding subsection, +can be alternatively drawn by nesting +a ``yl''-function and a \verb/\ryl/ command. +In this case, the pyranose ring is regarded as a mother skeleton. +Thus, the code +\begin{verbatim} +\pyranose{1Sa==H;2Sb==H;2Sa==OH;3Sb==H;3Sa==OH;4Sb==HO;% +4Sa==H;5Sb==H;5Sa==CH$_{3}$;% +1Sb==\ryl(8==O){3==% +\steroid{3==(yl);{{10}}==\lmoiety{OHC};{{14}}==OH;% +{{13}}==\lmoiety{H$_{3}$C};{{16}}==OH;% +{{17}}==\fiveheterov[e]{3==O}{4D==O;1==(yl)}}}} +\end{verbatim} +typesets the following formula: +\begin{quotation} +\vspace*{4cm} +\pyranose{1Sa==H;2Sb==H;2Sa==OH;3Sb==H;3Sa==OH;4Sb==HO;% +4Sa==H;5Sb==H;5Sa==CH$_{3}$;% +1Sb==\ryl(8==O){3==% +\steroid{3==(yl);{{10}}==\lmoiety{OHC};{{14}}==OH;% +{{13}}==\lmoiety{H$_{3}$C};{{16}}==OH;% +{{17}}==\fiveheterov[e]{3==O}{4D==O;1==(yl)}}}} +\end{quotation} + +\section{$\backslash$divalenth command} + +The command \verb/\divalenth/ generates a divalent skeleton +with variable length. +\begin{verbatim} +\divalenth{GROUP}{SUBSLIST} +\end{verbatim} +The divalent skeleton is given by +a string of alphabets in the GROUP argument. +The locant number in the GROUP argument is fixed to be zero. +For example, the code +\begin{verbatim} +\divalenth{0==NHCONH}{1==CH$_{3}$;2==CH$_{3}$} +\end{verbatim} +generates a linear formula: +\begin{center} +\divalenth{0==NHCONH}{1==CH$_{3}$;2==CH$_{3}$} +\end{center} + +4,4$^{\prime}$-Methylenedibenzoic acid can be drawn in the same line. +The code +\begin{verbatim} +\divalenth{0==CH$_{2}$}{1==\bzdrh{4==(yl);1==HOOC};2==\bzdrh{1==(yl);4==COOH}} +\end{verbatim} +generates +\begin{center} +\divalenth{0==CH$_{2}$}{1==\bzdrh{4==(yl);1==HOOC};2==\bzdrh{1==(yl);4==COOH}} +\end{center} + +In place of the CH$_{2}$ unit described in the preceding example, +we introduce the O--CH$_{2}$--O unit so as to give +4,4$^{\prime}$-methylenedioxydibenzoic acid. The structurel formula +can be drawn to be +\begin{center} +\divalenth{0==O--CH$_{2}$--O}% +{1==\bzdrh{4==(yl);1==HOOC};2==\bzdrh{1==(yl);4==COOH}} +\end{center} +by means of the code: +\begin{verbatim} +\divalenth{0==O--CH$_{2}$--O}% +{1==\bzdrh{4==(yl);1==HOOC};2==\bzdrh{1==(yl);4==COOH}} +\end{verbatim} +Note that the starting point of the moiety +generated by the code \verb/2==\bzdrh{1==(yl);4==COOH}/ is +automatically shifted so as to accomodate the O--CH$_{2}$--O unit. + + +An additional example of the use of the \verb/\divalenth/ command +is the drawing of +1,6$^{\prime}$-ureylenedi-2-naphthalenesulfonic acid +\begin{quotation} +\vspace*{2cm}\hspace*{4cm} +\divalenth{0==NH--CO--NH}% +{1==\naphdrh{4==(yl);3==SO$_{3}$H};2==\naphdrv{6==(yl);2==SO$_{3}$H}} + +\vspace*{2cm} +\end{quotation} +by means of the code +\begin{verbatim} +\divalenth{0==NH--CO--NH}% +{1==\naphdrh{4==(yl);3==SO$_{3}$H};2==\naphdrv{6==(yl);2==SO$_{3}$H}} +\end{verbatim} + + +$p$-[2-($m$-Carboxyphenoxy)ethyl]benzoic acid is +drawn by the code +\begin{verbatim} +\divalenth{0==O--CH$_{2}$--CH$_{2}$}% +{1==\bzdrh{4==(yl);6==COOH};2==\bzdrh{1==(yl);4==COOH}} +\end{verbatim} +which generates a formula: +\begin{center} +\divalenth{0==O--CH$_{2}$--CH$_{2}$}% +{1==\bzdrh{4==(yl);6==COOH};2==\bzdrh{1==(yl);4==COOH}} + +\vspace*{1cm} +\end{center} +The same structure can be depicted by applying +the ``yl''-function to the \verb/\divalenth/ command. +The code +\begin{verbatim} +\bzdrh{6==COOH;4==% +\divalenth{0==O--CH$_{2}$--CH$_{2}$}{1==(yl);2==\bzdrh{1==(yl);4==COOH}}} +\end{verbatim} +generates the same formula: +\begin{center} +\bzdrh{6==COOH;4==% +\divalenth{0==O--CH$_{2}$--CH$_{2}$}{1==(yl);2==\bzdrh{1==(yl);4==COOH}}} + +\vspace*{1cm} +\end{center} +This type of usage gives an equivalent function of +the command \verb/\ryl/ or \verb/\lyl/. Compare this with +an example using the \verb/\ryl/ command: +\begin{verbatim} +\bzdrh{6==COOH;4==% +\ryl(4==O--CH$_{2}$--CH$_{2}$){4==\bzdrh{1==(yl);4==COOH}}} +\end{verbatim} +This code gives the same formula: +\begin{center} +\bzdrh{6==COOH;4==% +\ryl(4==O--CH$_{2}$--CH$_{2}$){4==\bzdrh{1==(yl);4==COOH}}} +\end{center} + +\section{Remarks} + +The use of \verb/\divalenth/ with a ``yl''-function has +no means of adjusting the left-hand point of linking. +For example, the code, +\begin{verbatim} +\bzdrv{2==COOH;4==% +\divalenth{0==O--CH$_{2}$--CH$_{2}$}{1==(yl);2==\bzdrh{1==(yl);4==COOH}}} +\end{verbatim} +give an insufficient formula: +\begin{center} +\bzdrv{2==COOH;4==% +\divalenth{0==O--CH$_{2}$--CH$_{2}$}{1==(yl);2==\bzdrh{1==(yl);4==COOH}}} + +\vspace*{1cm} +\end{center} +where the left-hand point of linking should be shifted to +a more appropiate direction. On the other hand, +the \verb/\ryl/ (or \verb/\lyl/) command can correctly +specify the left-hand point of linking. Thus the code, +\begin{verbatim} +\bzdrv{2==COOH;4==% +\ryl(0==O--CH$_{2}$--CH$_{2}$){4==\bzdrh{1==(yl);4==COOH}}} +\end{verbatim} +typesets a formula: +\begin{center} +\bzdrv{2==COOH;4==% +\ryl(0==O--CH$_{2}$--CH$_{2}$){4==\bzdrh{1==(yl);4==COOH}}} + +\vspace*{1cm} +\end{center} +where the code \verb/0==O--CH$_{2}$--CH$_{2}$/ specifies +the left-hand terminal of the unit O--CH$_{2}$--CH$_{2}$ +is linked at the upper point of the oxygen atom. + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\chapter{Ring Fusion} + +\section{Ring Fusion on Carbocyclic Compounds} +\subsection{Designation of Fused Bonds} + +A unit to be fused is written in the BONDLIST of a command with +a bond specifier (a lowercase or uppercase alphabet). +For example, the code +\begin{verbatim} +\hanthracenev[{A\sixfusev{}{}{d}}]{} +\end{verbatim} +gives a perhydroanthracene with a fused six-membered ring +at the bond `a' of the perhydroanthracene nucleus: +\begin{quotation} +\vskip1cm +\hanthracenev[{A\sixfusev{}{}{d}}]{} +\end{quotation} +The letter `A' of the code +\verb/{A\sixfusev{}{}{d}}/ is a bond specifier that represents +the older terminal of the bond `a' of the +perhydroanthracene nucleus +(For the designation of the bonds of perhydroanthracene, +see Chapter 5 of the \XyMTeX book.% +%``\XyMTeX{}---Typesetting Chemical +%Structural Formulas'' (Addison-Wesley Publishers Japan, 1997).% +\footnote{% +The word `older' or `younger' is concerned with the order of numbering +of vertices. For a six-membered ring, the numbering +1---2---3---4---5---6---1 shows that +the terminal 1 of the +bond `a' (1---2) is youger, while the terminal 2 of the bond +`a' is older. It should be noted that the terminal 6 of the +bond `f' (6---1) is youger, while the terminal 1 of the bond +`f' is older.} +Note that the younger +terminal of the bond `a' is designated by the letter `a'. +On the other hand, +the code \verb/\sixfusev{}{}{d}/ of \verb/{A\sixfusev{}{}{d}}/ +in the BONDLIST represents the fused six-membered ring +with the bond `d' omitted. The letter `d' indicates +that the fusing point of the unit is the youger terminal +of the omitted bond `d'. If the the fusing point of the unit +is the other (older) terminal, the +corresponding uppercase letter `D' should be used. + +Accordingly, the same formula can be drawn by the +code exchanging uppercase and lowercase letters, +\begin{verbatim} +\hanthracenev[{a\sixfusev{}{}{D}}]{} +\end{verbatim} +Thereby, we have +\begin{quotation} +\vskip1cm +\hanthracenev[{a\sixfusev{}{}{D}}]{} +\end{quotation} + +Two or more rings can be fused. For example, +the code +\begin{verbatim} +\hanthracenev[{A\sixfusev{}{}{d}}{C\sixfusev{}{}{f}}]{} +\end{verbatim} +generates a formula with two fused rings at the +bonds `a' and `c' of a perhydroanthracene nucleus. +\begin{quotation} +\vskip1cm +\hanthracenev[{A\sixfusev{}{}{d}}{C\sixfusev{}{}{f}}]{} + +\vskip1cm +\end{quotation} + +The BONDLIST can accomodates usual bond specifiers without +a fusing unit in order to designate inner double bonds. +For example, the code +\begin{verbatim} +\hanthracenev[aco{A\sixfusev[a]{}{}{d}}]{} +\end{verbatim} +gives a hydroanthracene that have inner double bonds +as well as a fused six-membered ring: +\begin{quotation} +\vskip1cm +\hanthracenev[aco{A\sixfusev[a]{}{}{d}}]{} +\end{quotation} +Note that the command \verb/\sixfusev/ can take +an optional argument to designate inner double bonds, +as shown by the code \verb/\sixfusev[a]{}{}{d}/. + +In order to specify substituents in addition, +we can use the SUBSLIST of the command \verb/\hanthracenev/ as well +as the one of the command \verb/\sixfusev/. For example, the code +\begin{verbatim} +\hanthracenev[aco{A\sixfusev[a]{}{1==F;2==Cl}{d}}]{5==OH;6==HO} +\end{verbatim} +gives a hydroanthracene having additional substituents: +\begin{quotation} +\vspace*{1cm} +\hanthracenev[aco{A\sixfusev[a]{}{1==F;2==Cl}{d}}]{5==OH;6==HO} +\end{quotation} + +The compound {\bfseries 13} on page 294 +(Chapter IV-4) of the \XyMTeX book +%``\XyMTeX{}---Typesetting Chemical +%Structural Formulas'' (Addison-Wesley Publishers Japan, 1997) +can alternatively be drawn by applying the +present technique. Thus, the code +\begin{verbatim} +\hanthracenev[achjop{b\sixfusev{}{2==R}{E}}]{% +1==OCH$_{3}$;4==OH;{10}D==O;% +9==\lyl(8==C\rlap{O}){4==CH$_{3}$O}} +\end{verbatim} +gives the following formula: +\begin{quotation} +\hanthracenev[achjop{b\sixfusev{}{2==R}{E}}]{% +1==OCH$_{3}$;4==OH;{10}D==O;% +9==\lyl(8==C\rlap{O}){4==CH$_{3}$O}} +\end{quotation} + + +\section{Ring Fusion on Heterocyclic Compounds} + +The methodology of ring fusion for heterocyclic compounds +is the same as described for carbocyclic compounds. +Thus, a unit to be fused is written in the BONDLIST of +a command with a bond specifier (a lowercase or uppercase alphabet). +For example, the code +\begin{verbatim} +\nonaheterov[begj{b\sixfusev[ac]{}{}{e}}]{1==N}{1==H} +\end{verbatim} +gives the structural formula of carbazole: +\begin{quotation} +\nonaheterov[begj{b\sixfusev[ac]{}{}{e}}]{1==N}{1==H} +\end{quotation} +which is depicted by attaching a six-membered ring +(\verb/\sixfusev[ac]{}{}{e}}/) +to the bond `b' of an indole nucleus. + +Let us consider the substitution of a carbon atom +with a nitrogen atom at one of the fused positions +in the above compound, as shown by the following formula: +\begin{quotation} +\nonaheterov[begj{b\sixfusev[ac]{6==\null}{}{e}}]{1==N;3==N}{1==H} +\end{quotation} +This formula is obtained by writing the code: +\begin{verbatim} +\nonaheterov[begj{b\sixfusev[ac]{6==\null}{}{e}}]{1==N;3==N}{1==H} +\end{verbatim} +where the code \verb/6==\null/ in the ATOMLIST of +\verb/\sixfusev/ (for the fused six-membered ring) +and the code \verb/3==N/ in the ATOMLIST of +\verb/\nonaheterov/ produces the nitrogen +atom at the fused position. +The specification of the nitrogen atom +is also available by exchanging \verb/\null/ and \verb/N/. +Thus the code +\begin{verbatim} +\nonaheterov[begj{b\sixfusev[ac]{6==N}{}{e}}]{1==N;3==\null}{1==H} +\end{verbatim} +gives the same structural formula: +\begin{quotation} +\nonaheterov[begj{b\sixfusev[ac]{6==N}{}{e}}]{1==N;3==\null}{1==H} +\end{quotation} + +The ring fusion at the bond `a' of perhydroindole +is represented by the code +\begin{verbatim} +\nonaheterov[{a\sixfusev{6==\null}{}{f}}]{1==N}{} +\end{verbatim} +which gives a heterocycle: +\begin{quotation} +\nonaheterov[{a\sixfusev{6==\null}{}{f}}]{1==N}{} +\end{quotation} + + + +Benz[{\itshape h}]isoquinoline, +\begin{quotation} +\vspace*{1cm} +\decaheterovt[acfhk{h\sixfusev[df]{}{}{B}}]{2==N}{} +\end{quotation} +can be typset by the code, +\begin{verbatim} +\decaheterovt[acfhk{h\sixfusev[df]{}{}{B}}]{2==N}{} +\end{verbatim} +in which the bond specifier `h' corresponds to +the {\itshape h} of the IUPAC name. +Note that the IUPAC name regards the structure as +an isoquinoline (drawn by \verb/\decaheterovt/) fused by a benzo moiety. +The same structure +can be drawn by the alternative code: +\begin{verbatim} +\decaheterov[acfhk{a\sixfusev[bf]{1==N}{}{D}}]{}{} +\end{verbatim} +which regards the structure as a naphthalene (drawn by +\verb/\decaheterov/) with +a fused heterocycle. Thereby, we have + \begin{quotation} +\vspace*{1cm} +\decaheterov[acfhk{a\sixfusev[bf]{1==N}{}{D}}]{}{} +\end{quotation} + +\section{Neted Ring Fusion} + +The \verb/\sixfusev/ command is capable of +accomodating another \verb/\sixfusev/ command in +a nested fashion. By this technique, +the carbazole structure can take a further +fused ring so as to produce the structural formula +of 7{\itshape H}-pyrazino[2,3-{\itshape c}]carbaozole. +Thus, the code, +\begin{verbatim} +\nonaheterov[begj{b\sixfusev[% +ac{a\sixfusev[bf]{6==N;3==N}{}{D}}]{}{}{e}}]{1==N}{1==H} +\end{verbatim} +gives the structural formula of the fused heterocycle: +\begin{quotation} +\vspace*{1cm} +\nonaheterov[begj{b\sixfusev[% +ac{a\sixfusev[bf]{6==N;3==N}{}{D}}]{}{}{e}}]{1==N}{1==H} +\end{quotation} +which is depicted by attaching a six-membered ring +(\verb/\sixfusev[ac]{}{}{e}}/) +to the bond `b' of an indole nucleus. + +The structural formula of +pyrido[1$^{\prime}$,2$^{\prime}$:1,2]imidazo[4,5-{\itshape b}]quinoxaline, +\begin{center} +\nonaheterov[adh% +{b\sixfusev[ac]{6==\null}{}{e}}% +{f\sixfusev[ace]{}{}{b}}]{1==N;3==N;4==N;7==N}{} +\end{center} +is generated by the code, +\begin{verbatim} +\nonaheterov[adh% +{b\sixfusev[ac]{6==\null}{}{e}}% +{f\sixfusev[ace]{}{}{b}}]{1==N;3==N;4==N;7==N}{} +\end{verbatim} +Since this code is intended to contain no nested ring fusion, +the order of structure construction is different +from that of the IUPAC name. + +The IUPAC name, +pyrido[1$^{\prime}$,2$^{\prime}$:1,2]imidazo[4,5-{\itshape b}]quinoxaline, +corresponds to a quinaxaline with a fused five-membered ring (an imidazo +moiety) which is in turn fused by a six-membered ring (a pyrido moiety). +The order of constructing the IUPAC name is realized in the code +with nested ring fusion, +\begin{verbatim} +\decaheterov[acegi% +{b\fivefusev[a{b\sixfusev[ac]{6==\null}{}{e}}]{1==N;3==N}{}{d}}] +{1==N;4==N}{} +\end{verbatim} +which produces the same structure, +\begin{center} +\decaheterov[acegi% +{b\fivefusev[a{b\sixfusev[ac]{6==\null}{}{e}}]{1==N;3==N}{}{d}}] +{1==N;4==N}{} +\end{center} + +Note that the indicators `1$^{\prime}$,2$^{\prime}$' and `1,2'of +the locant [1$^{\prime}$,2$^{\prime}$:1,2] in the IUPAC name +correspond respectively to the +bond specifiers , `E' and `b', appeared in the code, +\verb/{b\sixfusev[ac]{6==\null}{}{E}}/. +On the other hand, the indicators, +`4,5' and `{\itshape b}' of of the locant [4,5-{\itshape b}] +are respectively associated with +the specifiers, `d' and `b', appeared in the code, +\verb/{b\fivefusev[...]{1==N;3==N}{}{d}}/. + +An alkaloid with a coryanthe skeleton +(R. T. Brown and C. L. Chapple, {\itshape Chem. Commun.}, +1973, 887) can be typeset by the code with nested fusion, +\begin{verbatim} +\nonaheterov[begj{b\sixfusev[% +{c\sixfusev{1==\null}{3SB==H;3SA==Et;% +4GA==H;% +4B==\dimethylenei[a]{}{1==(yl);2W==OMe;1W==MeOCO}}{F}}]% +{3==N}{4GB==H;2B==COOMe}{e}}]{1==N}{1==H} +\end{verbatim} +where a six-five ring drawn by the command \verb/\nonaheterov/ +is regarded as a mother skeleton. Thus, we have +\begin{quotation} +\nonaheterov[begj{b\sixfusev[% +{c\sixfusev{1==\null}{3SB==H;3SA==Et;% +4GA==H;% +4B==\dimethylenei[a]{}{1==(yl);2W==OMe;1W==MeOCO}}{F}}]% +{3==N}{4GB==H;2B==COOMe}{e}}]{1==N}{1==H} +\vspace*{2cm} +\end{quotation} +For the command \verb/\dimethylenei/, see the chapter at issue. + +When a six-six ring drawn by the command \verb/\decaheterovb/ +is regarded as a mother skeleton, as shown in the code with +another nested ring fusion, +\begin{verbatim} +\decaheterovb[f{f\fivefusev[d{d\sixfusev[df]{}{}{b}}]% +{1==N}{1==H}{b}}]{8a==N}{9B==H;2SA==Et;2SB==H;8B==COOMe;% +3GA==H;% +3B==\dimethylenei[a]{}{1==(yl);2W==OMe;1W==MeOCO}} +\end{verbatim} +we find another way of drawing the same structural formula, +\begin{center} +\decaheterovb[f{f\fivefusev[d{d\sixfusev[df]{}{}{b}}]% +{1==N}{1==H}{b}}]{8a==N}{9B==H;2SA==Et;2SB==H;8B==COOMe;% +3GA==H;% +3B==\dimethylenei[a]{}{1==(yl);2W==OMe;1W==MeOCO}} + +\vspace*{1cm} +\end{center} + +The following example shows a code with complicated +nested structure: +\begin{verbatim} +\cyclohexanev[% +{a\sixfusev[{b\sixfusev[{c\sixfusev[{c\sixfusev[% +{d\sixfusev[{d\sixfusev[{d\sixfusev[% +{e\sixfusev[{e\sixfusev[{e\sixfusev[{e\sixfusev[% +{f\sixfusev[{f\sixfusev[]{}{}{C}}]{}{}{C}}% +]{}{}{B}}]{}{}{B}}]{}{}{B}}]{}{}{B}}% +]{}{}{A}}]{}{}{A}}]{}{}{A}}]{}{}{F}}% +]{}{}{F}}]{}{}{E}}]{}{}{D}}% +{c\sixfusev[{d\sixfusev[{e\sixfusev[{e\sixfusev[% +{f\sixfusev[{f\sixfusev[{f\sixfusev[% +{a\sixfusev[{a\sixfusev[{a\sixfusev[{a\sixfusev[% +{b\sixfusev[{b\sixfusev[]{}{}{E}}]{}{}{E}}% +]{}{}{D}}]{}{}{D}}]{}{}{D}}]{}{}{D}}% +]{}{}{C}}]{}{}{C}}]{}{}{C}}]{}{}{B}}% +]{}{}{B}}]{}{}{A}}]{}{}{F}}% +{e\sixfusev[{f\sixfusev[{a\sixfusev[{a\sixfusev[% +{b\sixfusev[{b\sixfusev[{b\sixfusev[% +{c\sixfusev[{c\sixfusev[{c\sixfusev[{c\sixfusev[% +{d\sixfusev[{d\sixfusev[]{}{}{A}}]{}{}{A}}% +]{}{}{F}}]{}{}{F}}]{}{}{F}}]{}{}{F}}% +]{}{}{E}}]{}{}{E}}]{}{}{E}}]{}{}{D}}% +]{}{}{D}}]{}{}{C}}]{}{}{B}}% +]{} +\end{verbatim} +This code generates a multiply fused formula: + +\clearpage + +\begin{center} +\vspace*{8cm} +\cyclohexanev[% +{a\sixfusev[{b\sixfusev[{c\sixfusev[{c\sixfusev[% +{d\sixfusev[{d\sixfusev[{d\sixfusev[% +{e\sixfusev[{e\sixfusev[{e\sixfusev[{e\sixfusev[% +{f\sixfusev[{f\sixfusev[]{}{}{C}}]{}{}{C}}% +]{}{}{B}}]{}{}{B}}]{}{}{B}}]{}{}{B}}% +]{}{}{A}}]{}{}{A}}]{}{}{A}}% +]{}{}{F}}% +]{}{}{F}}]{}{}{E}}]{}{}{D}}% +{c\sixfusev[{d\sixfusev[{e\sixfusev[{e\sixfusev[% +{f\sixfusev[{f\sixfusev[{f\sixfusev[% +{a\sixfusev[{a\sixfusev[{a\sixfusev[{a\sixfusev[% +{b\sixfusev[{b\sixfusev[]{}{}{E}}]{}{}{E}}% +]{}{}{D}}]{}{}{D}}]{}{}{D}}]{}{}{D}}% +]{}{}{C}}]{}{}{C}}]{}{}{C}}% +]{}{}{B}}% +]{}{}{B}}]{}{}{A}}]{}{}{F}}% +{e\sixfusev[{f\sixfusev[{a\sixfusev[{a\sixfusev[% +{b\sixfusev[{b\sixfusev[{b\sixfusev[% +{c\sixfusev[{c\sixfusev[{c\sixfusev[{c\sixfusev[% +{d\sixfusev[{d\sixfusev[]{}{}{A}}]{}{}{A}}% +]{}{}{F}}]{}{}{F}}]{}{}{F}}]{}{}{F}}% +]{}{}{E}}]{}{}{E}}]{}{}{E}}% +]{}{}{D}}% +]{}{}{D}}]{}{}{C}}]{}{}{B}}% +]{} +\end{center} + + + +\clearpage + + + +\section{Remarks} + +\subsection{OPT Arguments} + +It should be noted that the OPT arguments of +such commands as \verb/\bzdrv/, \verb/\naphdrv/, +and \verb/\anthracenev/ cannot be used +for the ring-fusion technique. In place of the OPT argument, +the BONDLIST argument of the corresponding general +command, e.g. \verb/\cyclohexanev/ or \verb/\sixheterov/ +correspoding to \verb/\bzdrv/, +should be used for the purpose of ring fusion. . +For example, a bezene ring of the formula, +\begin{center} +\vspace*{1cm} +\cyclohexanev[ace{a\sixfusev{}{}{D}}]{} +\end{center} +should be drawn by using the \verb/\cyclohexanev/ command, +as shown in the code: +\begin{verbatim} +\cyclohexanev[ace{a\sixfusev{}{}{D}}]{} +\end{verbatim} + +\subsection{\protect\XyMTeX{} Warning} + +An incorrect result due to +a wrong specification of a fused bond is +notified by a \XyMTeX{} warning. +For example, the code, +\begin{verbatim} +\hanthracenev[{a\sixfusev{}{}{d}}]{} +\end{verbatim} +gives a formula of wrong fusion: +\begin{center} +\vspace*{2cm} +\hanthracenev[{a\sixfusev{}{}{d}}]{} +\end{center} +According to this wrong situation, +a \XyMTeX{} warning appears in a display or in a log file, e.g., +\begin{verbatim} + XyMTeX Warning: Mismatched fusion at bond `a, i, or other' + on input line 1904 +\end{verbatim} +There are two ways to correct the wrong fusion and, +as a result, to avoid such a \XyMTeX{} warning. +First, the code +\begin{verbatim} +\hanthracenev[{A\sixfusev{}{}{d}}]{} +\end{verbatim} +in which the acceptor bond specifier `a' is changed into `A', +gives a correct result, as found in the top example of +this chapter. Alternatively, +the donor bond specifier `d' can be changed into `D'. +Thus, the code, +\begin{verbatim} +\hanthracenev[{a\sixfusev{}{}{D}}]{} +\end{verbatim} +also typesets the second formula with correct fusion. + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\chapter{Fusing Units} + +The commands described in this chapter are stored in +the {\sf fusering} package (file name: fusering.sty). + +\section{Six-membered Fusing Units} +\subsection{Vertical Units of Normal and Inverse Types} +In \XyMTeX{} version 1.01, we can use \verb/\sixunitv/ +and \verb/\fiveunitv/ as building blocks, where +one or more bonds can be omitted. +In the present version, we prepare +such commands as \verb/\sixfusev/ an \verb/\sixfusevi/, +producing building blocks with only one deleted bond. +These commands can be used in the BONDLIST of another +command so as to give a fused structural formula, +as described in the preceding chapter. +The commands \verb/\sixfusev/ and \verb/\sixfusevi/ have formats +represented by +\begin{verbatim} +\sixfusev[BONDLIST]{ATOMLIST}{SUBSLIST}{FUSE} +\sixfusevi[BONDLIST]{ATOMLIST}{SUBSLIST}{FUSE} +\end{verbatim} +where the argument FUSE is an alphabetical character (a--f) +or the uppercase counterpart (A--F), +each of which is a bond specifier representing one bond to be omitted. +A lowercase character (a--f) represents the younger terminal of +the omitted bond. +The corresponding uppercase character (A--F) designates +the other terminal of the bond to be omitted. +The other arguments have the same formats as described +in the general conventions (see \XyMTeX book). +The locant numbers and the bond specifiers of +the command \verb/\sixfusev/ correspond to +those of the command \verb/\sixheterov/ (see \XyMTeX book). +The command \verb/\sixfusevi/ is the inverse counterpart +of \verb/\sixfusev/ and corresponds to the command \verb/\sixheterovi/. +Moreover, the BONDLIST is capbable of +accormodating the ring-fusion function described +in the preseding chapter, +the ATOMLIST can accomodate the spiro-ring function +described afterward, and +the SUBSLIST serves a method producing subsituents (``yl''-function) +describe previously. + +For example, the last argument `F' of the \verb/\sixfusev/ +appearing in the code, +\begin{verbatim} +\sixfusev[]{1==\null}% +{3==C$_2$H$_5$;4==CH$_2$COOC$_2$H$_5$}{F} +\end{verbatim} +results in the deletion of the bond `f' between atom no.~6 (youger +teminal) and atom no.~1 (older terminal) from a hexagon, +typesetting the following building block: +\begin{center} +\sixfusev[]{1==\null}{3==C$_2$H$_5$;4==CH$_2$COOC$_2$H$_5$}{F} + +\vspace*{3cm} +\end{center} +where the reference point for superposition is +the older terminal (i.e. atom no.~1) of the bond `f'. +The code \verb/1==\null/ gives a vacancy at the position of atom no.~1. +When the building block is used in the BONDLIST of +the \verb/\decaheterov/, as shown in the code, +\begin{verbatim} +\decaheterov[fhk% +{c\sixfusev[]{1==\null}% +{3==C$_2$H$_5$;4==CH$_2$COOC$_2$H$_5$}{F}}]{3==N}{6==CH$_3$O;7==CH$_3$O} +\end{verbatim} +we have the following structure, +\begin{center} +\decaheterov[fhk% +{c\sixfusev[]{1==\null}% +{3==C$_2$H$_5$;4==CH$_2$COOC$_2$H$_5$}{F}}]{3==N}{6==CH$_3$O;7==CH$_3$O} +\vspace*{2cm} +\end{center} + +The last argument `F' of the \verb/\sixfusev/ +can be changed into `f', as found in the code, +\begin{verbatim} +\decaheterovi[fhk% +{a\sixfusev[]{1==\null}% +{3==C$_2$H$_5$;4==CH$_2$COOC$_2$H$_5$}{f}}]{2==N}{6==CH$_3$O;7==CH$_3$O} +\end{verbatim} +where we use \verb/\decaheterovi/ in place of +\verb/\decaheterov/ for drawing the bicyclic mother skeleton. +Thereby, we have the following structure, +\begin{center} +\decaheterovi[fhk% +{a\sixfusev[]{1==\null}% +{3==C$_2$H$_5$;4==CH$_2$COOC$_2$H$_5$}{f}}]{2==N}{6==CH$_3$O;7==CH$_3$O} +\vspace*{2cm} +\end{center} + +The vertically opposite formula can be drawn by the combination of +\verb/\sixfusevi/ and \verb/\decaheterovi/ with no other changes +of designation (in comparison with the first code of this +section), i.e. +\begin{verbatim} +\decaheterovi[fhk% +{c\sixfusevi[]{1==\null}% +{3==C$_2$H$_5$;4==CH$_2$COOC$_2$H$_5$}{F}}]{3==N}{6==CH$_3$O;7==CH$_3$O} +\end{verbatim} +Thereby we have +\begin{center} +\vspace*{2cm} +\decaheterovi[fhk% +{c\sixfusevi[]{1==\null}% +{3==C$_2$H$_5$;4==CH$_2$COOC$_2$H$_5$}{F}}]{3==N}{6==CH$_3$O;7==CH$_3$O} +\end{center} + +\subsection{Horizontal Units of Normal and Inverse Types} + +For drawing horizontal fusing units, +we can use the commands \verb/\sixfuseh/ and \verb/\sixfusehi/, +which are represented by +\begin{verbatim} +\sixfuseh[BONDLIST]{ATOMLIST}{SUBSLIST}{FUSE} +\sixfusehi[BONDLIST]{ATOMLIST}{SUBSLIST}{FUSE} +\end{verbatim} + +The horizontal formula of normal type related to the tricyclic +formulas described in the preceding subsection +can be drawn by the combination of +\verb/\sixfuseh/ and \verb/\decaheteroh/ with few changes +of designation (CH$_{3}$O to OCH$_{3}$), i.e. +\begin{verbatim} +\decaheteroh[fhk% +{c\sixfuseh[]{1==\null}% +{3==C$_2$H$_5$;4==CH$_2$COOC$_2$H$_5$}{F}}]{3==N}{6==OCH$_3$;7==OCH$_3$} +\end{verbatim} +which typsets the following structure, +\begin{center} +\vspace*{1cm} +\decaheteroh[fhk% +{c\sixfuseh[]{1==\null}% +{3==C$_2$H$_5$;4==CH$_2$COOC$_2$H$_5$}{F}}]{3==N}{6==OCH$_3$;7==OCH$_3$} +\end{center} + +The horizontally opposite formula can be drawn by the combination of +\verb/\sixfusehi/ and \verb/\decaheterohi/ with +slight changes concerning the handedness of subsitutents, i.e. +\begin{verbatim} +\decaheterohi[fhk% +{c\sixfusehi[]{1==\null}% +{3==C$_2$H$_5$;4==C$_2$H$_5$OCOCH$_2$}{F}}]{3==N}{6==OCH$_3$;7==OCH$_3$} +\end{verbatim} +Thereby we have +\begin{center} +\vspace*{1cm} +\decaheterohi[fhk% +{c\sixfusehi[]{1==\null}% +{3==C$_2$H$_5$;4==C$_2$H$_5$OCOCH$_2$}{F}}]{3==N}{6==OCH$_3$;7==OCH$_3$} +\end{center} + +\section{Five-membered Fusing Units} +\subsection{Vertical Units of Normal and Inverse Types} +To obtain a vertical five-membered building block, +we can use \verb/\fivefusev/ and \verb/\fivefusevi/: +\begin{verbatim} +\fivefusev[BONDLIST]{ATOMLIST}{SUBSLIST}{FUSE} +\fivefusevi[BONDLIST]{ATOMLIST}{SUBSLIST}{FUSE} +\end{verbatim} +where the argument FUSE is an alphabetical character (a--e) +or the uppercase counterpart (A--E), +each of which is a bond specifier representing one bond to be omitted. +The other specifications have the same formats +as found in the preceding section. + +The following example (left) gives the use of the \verb/\fivefusevi/ +command by itself, where its SUBSLIST contains some substituents: +\begin{verbatim} +\fivefusevi{4==O}{2D==;3D==O}{E} \hskip 3cm +\fivefusevi{4==O}{1GA==H;5GB==H;2D==;3D==O}{E} +\end{verbatim} +\begin{center} +%\vspace*{1cm} +\fivefusevi{4==O}{2D==;3D==O}{E} \hskip 3cm +\fivefusevi{4==O}{1GA==H;5GB==H;2D==;3D==O}{E} + +\vspace*{2cm} +\end{center} +To show hydrogen substitution at the fused positions, we +add the designation of \verb/1GA==H;5GB==H/ to the +SUBSLIST of the \verb/\fivefusevi/ command (right above). +Then, the latter code is written in the BONDLIST of +a command \verb/\decalinev/, as found in the code: +\begin{verbatim} +\decalinev[h{c\fivefusevi{4==O}{1GA==H;5GB==H;2D==;3D==O}{E}}]% +{6D==O;5A==;0FB==;0GA==H} +\end{verbatim} +Thereby, we obtain +\begin{center} +\decalinev[h{c\fivefusevi{4==O}{1GA==H;5GB==H;2D==;3D==O}{E}}]% +{6D==O;5A==;0FB==;0GA==H} + +\vspace*{1cm} +\end{center} + +Fusing units such as \verb/\fivefusev/ +can be multiply nested in itself and in other types of fusing units. +The following example shows such a trebly-nested case. +\begin{verbatim} +\decaheterovi[AB% +{b\fivefusev[{a\sixfusev[ce% +{c\sixfusev{3==O}{4D==O;5SB==HO;5SA==Et}{F}}]{1==\null}{2D==O}{f}}]% +{2==N}{}{D}}]{1==N}{} +\end{verbatim} +\begin{quotation} +\decaheterovi[AB% +{b\fivefusev[{a\sixfusev[ce% +{c\sixfusev{3==O}{4D==O;5SB==HO;5SA==Et}{F}}]{1==\null}{2D==O}{f}}]% +{2==N}{}{D}}]{1==N}{} + +\vspace*{2cm} +\end{quotation} + +When all of the commands in the above code are +changed into the inverse counterparts +(\verb/\decaheterovi/ to \verb/\decaheterov/; +\verb/\fivefusev/ and \verb/\fivefusevi/; and +\verb/\sixfusev/ to \verb/\sixfusevi/), +the code is transformed into another code, +\begin{verbatim} +\decaheterov[AB% +{b\fivefusevi[{a\sixfusevi[ce% +{c\sixfusevi{3==O}{4D==O;5SB==HO;5SA==Et}{F}}]{1==\null}{2D==O}{f}}]% +{2==N}{}{D}}]{1==N}{} +\end{verbatim} +Thereby, we can obtain the formula of vertically inverse type. +\begin{quotation} +\vspace*{2cm} +\decaheterov[AB% +{b\fivefusevi[{a\sixfusevi[ce% +{c\sixfusevi{3==O}{4D==O;5SB==HO;5SA==Et}{F}}]{1==\null}{2D==O}{f}}]% +{2==N}{}{D}}]{1==N}{} +\end{quotation} + +\subsection{Horizontal Units of Normal and Inverse Types} +Horizontal five-membered building block are +obtained by using \verb/\fivefuseh/ and \verb/\fivefusehi/: +\begin{verbatim} +\fivefuseh[BONDLIST]{ATOMLIST}{SUBSLIST}{FUSE} +\fivefusehi[BONDLIST]{ATOMLIST}{SUBSLIST}{FUSE} +\end{verbatim} +where the argument FUSE is an alphabetical character (a--e) +or the uppercase counterpart (A--E), +each of which is a bond specifier representing one bond to be omitted. +The other specifications have the same formats +as found in the preceding section. + +The example given for \verb/\fivefusevi/ is +changed into the one using the horizontal counterpart \verb/\fivefusehi/: +\begin{verbatim} +\decalineh[h{c\fivefusehi{4==O}{1GA==H;5GB==H;2D==;3D==O}{E}}]{5A==;6D==O} +\end{verbatim} +\begin{center} +\vspace*{1cm} +\decalineh[h{c\fivefusehi{4==O}{1GA==H;5GB==H;2D==;3D==O}{E}}]{5A==;6D==O} +\end{center} +Note that no changes of other designation are necessary except that +\verb/\decalineh/ and \verb/\fivefusehi/ are used +in place of the vertical counterpart described above. + +The multiply nested example described above for drawing +a structure of vertical type can be changed into +the corresponding one of horizontal type, +if all of the commmands are changed into horizontal types +(\verb/\decaheterovi/ to \verb/\decaheterohi/; +\verb/\fivefusev/ to \verb/\fivefuseh/; and +\verb/\sixfusev/ to \verb/\sixfuseh/). + +\begin{verbatim} +\decaheterohi[AB% +{b\fivefuseh[{a\sixfuseh[ce% +{c\sixfuseh{3==O}{4D==O;5SB==OH;5SA==Et}{F}}]{1==\null}{2D==O}{f}}]% +{2==N}{}{D}}]{1==N}{} +\end{verbatim} +\begin{quotation} +\vspace*{2cm}\hspace*{4cm} +\decaheterohi[AB% +{b\fivefuseh[{a\sixfuseh[ce% +{c\sixfuseh{3==O}{4D==O;5SB==OH;5SA==Et}{F}}]{1==\null}{2D==O}{f}}]% +{2==N}{}{D}}]{1==N}{} +\end{quotation} + +When all the commands in the above code are +changed into the inverse counterparts +(\verb/\decaheterohi/ to \verb/\decaheteroh/; +\verb/\fivefuseh/ and \verb/\fivefusehi/; and +\verb/\sixfuseh/ to \verb/\sixfusehi/), +the code is transformed into another code, +\begin{verbatim} +\decaheteroh[AB% +{b\fivefusehi[{a\sixfusehi[ce% +{c\sixfusehi{3==O}{4D==O;5SB==HO;5SA==Et}{F}}]{1==\null}{2D==O}{f}}]% +{2==N}{}{D}}]{1==N}{} +\end{verbatim} +Thereby, we can obtain the formula of horizontally inverse type. +\begin{quotation} +\vspace*{2cm}\hspace*{4cm} +\decaheteroh[AB% +{b\fivefusehi[{a\sixfusehi[ce% +{c\sixfusehi{3==O}{4D==O;5SB==HO;5SA==Et}{F}}]{1==\null}{2D==O}{f}}]% +{2==N}{}{D}}]{1==N}{} +\end{quotation} + +\section{Four-membered Fusing Units} + +To obtain a four-membered building block, +we can use \verb/\fourfuse/: +\begin{verbatim} +\fourfuse[BONDLIST]{ATOMLIST}{SUBSLIST}{FUSE} +\end{verbatim} +where the argument FUSE is an alphabetical character (a--d) +or the uppercase counterpart (A--D), +each of which is a bond specifier representing one bond to be omitted. +The assignment of characters (a to d) and locants (1 to 4) +for the command \verb/\fourhetero/ is applied +in the same way to this case. +The other specifications have the same formats +as those of the command \verb/\fourhetero/. + +For example, the code, +\begin{verbatim} +\sixheterov[{e\fourfuse{}{}{b}}]{}{} +\sixheterov[{b\fourfuse{}{}{d}}]{}{} +\sixheteroh[{b\fourfuse{}{}{a}}]{}{} +\sixheteroh[{e\fourfuse{}{}{c}}]{}{} +\end{verbatim} +produces the following structural formulas. +\begin{center} +\sixheterov[{e\fourfuse{}{}{b}}]{}{} +\sixheterov[{b\fourfuse{}{}{d}}]{}{} +\sixheteroh[{b\fourfuse{}{}{a}}]{}{} +\sixheteroh[{e\fourfuse{}{}{c}}]{}{} +\end{center} + +A hetero atom at a fused position is designated in the ATOMLIST +of \verb/\fourfuse/, which is associated the code \verb/\null/ +in the ATOMLIST of a command for drawing a mother skeleton. +For example, the code +\begin{verbatim} +\sixheterov[{e\fourfuse{3==N}{}{b}}]{6==\null}{} +\sixheterov[{b\fourfuse{4==N}{}{d}}]{2==\null}{} +\sixheteroh[{b\fourfuse{2==N}{}{a}}]{3==\null}{} +\sixheteroh[{e\fourfuse{3==N}{}{c}}]{5==\null}{} +\end{verbatim} +produces the following structural formulas. +\begin{center} +\sixheterov[{e\fourfuse{3==N}{}{b}}]{6==\null}{} +\sixheterov[{b\fourfuse{4==N}{}{d}}]{2==\null}{} +\sixheteroh[{b\fourfuse{2==N}{}{a}}]{3==\null}{} +\sixheteroh[{e\fourfuse{3==N}{}{c}}]{5==\null}{} +\end{center} + +Penicillin G can be drawn by using the \verb/\fourfuse/ command +in the code, +\begin{verbatim} +\fiveheterovi[{d\fourfuse{2==\null}{1D==O;4Su==PhCH$_{2}$CONH;4Sd==H}{b}}]% +{1==S;4==N}{2Sa==CH$_{3}$;2Sb==CH$_{3}$;3SA==COOH;3SB==H;5GA==H} +\end{verbatim} +which typeset the following formula: +\begin{center} +\fiveheterovi[{d\fourfuse{2==\null}{1D==O;4Su==PhCH$_{2}$CONH;4Sd==H}{b}}]% +{1==S;4==N}{2Sa==CH$_{3}$;2Sb==CH$_{3}$;3SA==COOH;3SB==H;5GA==H} +\end{center} + +\section{Three-membered Fusing Units} +\subsection{Vertical Units of Normal and Inverse Types} +To obtain three-membered building blocks of +vertical type, we can use \verb/\threefusev/ and \verb/\threefusevi/: +\begin{verbatim} +\threefusev[BONDLIST]{ATOMLIST}{SUBSLIST}{FUSE} +\threefusevi[BONDLIST]{ATOMLIST}{SUBSLIST}{FUSE} +\end{verbatim} +where the argument FUSE is an alphabetical character (a--c) +or the uppercase counterpart (A--C), +each of which is a bond specifier representing one bond to be omitted. +The assignment of characters (a to c) and locants (1 to 3) +for the command \verb/\threeheterov/ or \verb/\threeheterovi/ is applied +in the same way to this case. +The other specifications have the same formats +as those of the command \verb/\threeheterov/ or \verb/\threeheterovi/. + +For example, the code using \verb/\threefusev/, +\begin{verbatim} +\sixheteroh[{a\threefusev{}{}{a}}]{}{} +\sixheteroh[{e\threefusev{}{}{b}}]{}{} +\sixheteroh[{c\threefusev{}{}{c}}]{}{} +\end{verbatim} +produces the following structural formulas. +\begin{center} +\sixheteroh[{a\threefusev{}{}{a}}]{}{} +\sixheteroh[{e\threefusev{}{}{b}}]{}{} +\sixheteroh[{c\threefusev{}{}{c}}]{}{} +\end{center} +The use of the inverse type is shown in the code, +\begin{verbatim} +\sixheteroh[{F\threefusevi{}{}{a}}]{}{} +\sixheteroh[{B\threefusevi{}{}{b}}]{}{} +\sixheteroh[{D\threefusevi{}{}{c}}]{}{} +\end{verbatim} +which produces the following structural formulas. +\begin{center} +\sixheteroh[{F\threefusevi{}{}{a}}]{}{} +\sixheteroh[{B\threefusevi{}{}{b}}]{}{} +\sixheteroh[{D\threefusevi{}{}{c}}]{}{} +\end{center} + +Hetero-atoms at fused positions can be typeset by designating +ATOMLISTs. For example, the code, +\begin{verbatim} +\sixheteroh[{a\threefusev{1==N}{}{a}}]{1==\null}{} +\sixheteroh[{e\threefusev{2==N}{}{b}}]{5==\null}{} +\sixheteroh[{c\threefusev{3==N}{}{c}}]{3==\null}{} +\end{verbatim} +produces the following structural formulas. +\begin{center} +\sixheteroh[{a\threefusev{1==N}{}{a}}]{1==\null}{} +\sixheteroh[{e\threefusev{2==N}{}{b}}]{5==\null}{} +\sixheteroh[{c\threefusev{3==N}{}{c}}]{3==\null}{} +\end{center} + +\subsection{Horizontal Units of Normal and Inverse Types} +Three-membered building blocks of +horizontal type can be obtained by using +\verb/\threefuseh/ and \verb/\threefusehi/: +\begin{verbatim} +\threefuseh[BONDLIST]{ATOMLIST}{SUBSLIST}{FUSE} +\threefusehi[BONDLIST]{ATOMLIST}{SUBSLIST}{FUSE} +\end{verbatim} +where the argument FUSE is an alphabetical character (a--c) +or the uppercase counterpart (A--C), +each of which is a bond specifier representing one bond to be omitted. +The assignment of characters (a to c) and locants (1 to 3) +for the command \verb/\threeheteroh/ or \verb/\threeheterohi/ is applied +in the same way to this case. +The other specifications have the same formats +as those of the command \verb/\threeheteroh/ or \verb/\threeheterohi/. + +For example, the code using \verb/\threefuseh/, +\begin{verbatim} +\sixheterov[{F\threefuseh{}{}{a}}]{}{} +\sixheterov[{B\threefuseh{}{}{b}}]{}{} +\sixheterov[{D\threefuseh{}{}{c}}]{}{} +\end{verbatim} +produces the following structural formulas. +\begin{center} +\sixheterov[{F\threefuseh{}{}{a}}]{}{} +\sixheterov[{B\threefuseh{}{}{b}}]{}{} +\sixheterov[{D\threefuseh{}{}{c}}]{}{} +\end{center} +The use of the inverse type is shown in the code, +\begin{verbatim} +\sixheterov[{a\threefusehi{}{}{a}}]{}{} +\sixheterov[{e\threefusehi{}{}{b}}]{}{} +\sixheterov[{c\threefusehi{}{}{c}}]{}{} +\end{verbatim} +which produces the following structural formulas. +\begin{center} +\sixheterov[{a\threefusehi{}{}{a}}]{}{} +\sixheterov[{e\threefusehi{}{}{b}}]{}{} +\sixheterov[{c\threefusehi{}{}{c}}]{}{} +\end{center} + +Hetero-atoms at fused positions can be typeset by designating +ATOMLISTs. For example, the code, +\begin{verbatim} +\sixheterov[{F\threefuseh{1==N}{}{a}}]{1==\null}{} +\sixheterov[{B\threefuseh{2==N}{}{b}}]{3==\null}{} +\sixheterov[{D\threefuseh{3==N}{}{c}}]{5==\null}{} +\end{verbatim} +produces the following structural formulas. +\begin{center} +\sixheterov[{F\threefuseh{1==N}{}{a}}]{1==\null}{} +\sixheterov[{B\threefuseh{2==N}{}{b}}]{3==\null}{} +\sixheterov[{D\threefuseh{3==N}{}{c}}]{5==\null}{} +\end{center} + +An aziridine derivative, +\begin{center} +\sixheterov[{B\threefuseh{1==N}{1==COOC$_{2}$H$_{5}$}{b}}]{}{} +\end{center} +can be drawn by the code, +\begin{verbatim} +\sixheterov[{B\threefuseh{1==N}{1==COOC$_{2}$H$_{5}$}{b}}]{}{} +\end{verbatim} + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\chapter{Spiro Rings} +\section{General Conventions for Spiro-Ring Attachment} + +There are several ways for naming spiro compounds +in the light of the IUPAC nomenclature. +Rule A-41.4 allows us to use such a name as +spiro[cyclopentane-1,1$^{\prime}$-indene] +for representing the following structure: +\begin{center} +\vspace*{1cm} +\nonaheterovi[begj]{1s==\fiveheterov{}{1==(yl)}}{} +\end{center} +The same structure is named indene-1-spiro-1$^{\prime}$-cyclohexane +in terms of Rule A-42.1. +Spiro[5.5]undecane, the name due to Rule A-41.1 and A-41.2, +is alternatively referred to as +cyclohexanespirocyclohexane in terms of Rule A-42.1: +\begin{center} +\vspace*{1cm} +\sixheterov[]{1s==\sixheterov[]{}{4==(yl)}}{} +\end{center} +where the `cyclohexanespiro' shows the replacement of a +carbon atom in a cyclohexne by another cyclohexane ring. +These rules essentially have the same methodology as the +IUPAC replacement nomenclature, e.g., +oxacyclohexane (more formally, oxane or tetrahydropyran) +for the formula +\begin{center} +\sixheterov[]{1==O}{} +\end{center} +generated by the code, +\begin{verbatim} +\sixheterov[]{1==O}{} +\end{verbatim} +where the prefix `oxa' shows the replacement of a +carbon atom with an oxygen atom. +Obviously, the prefix `cyclohexanespiro' of the name +`cyclohexanespirocyclohexane' is akin to +the prefix `oxa' of the name `oxacyclohexane' or `oxane' +from the viewpoint of the construction of names. +Since the unit due to the latter prefix is designated by +the \verb/1==O/ involved in the ATOMLIST, +the former prefix can be treated in the same way. +Hence, spiro compounds are drawn as follows: +\begin{enumerate} +\item +\XyMTeX{} regards a spiro ring +as a unit for the IUPAC replacement nomenclature, +which is generated from an appropriate structure by ``yl''-function. +\item the code of the unit due to the ``yl''-function is added to +the ATOMLIST of a mother skeleton. +\end{enumerate} + +Spiro[5.5]undecane is regarded as `cyclohexana'-cyclohexane +(more formally, `cyclohexanespiro'-cyclo\-hexane), +as found in the code, +\begin{verbatim} +\sixheterov[]{1s==\sixheterov[]{}{4==(yl)}}{} +\end{verbatim} +where the code +\verb/\sixheterov[]{}{4==(yl)}/ produced by the ``yl''-function +corresponds to the suffix `cyclohexana' and +is written in the ATOMLIST of the outer \verb/sixheterov/ command. +Thereby, we can obtain +\begin{center} +\vspace*{1cm} +\sixheterov[]{1s==\sixheterov[]{}{4==(yl)}}{} +\end{center} + +Note that the atom modifier `s' in the code +\verb/1s==\sixheterov[]{}{4==(yl)}/ represents no +hetero-atom at the spiro position. +When a hetero-atom is present at the spiro position, +an atom modifier `h' is used in place of `s'. +For example, the code +\begin{verbatim} +\sixheterov[]{1h==\sixheterov[]{4==N}{4==(yl)}}{} +\end{verbatim} +typeset the following formula: +\begin{center} +\vspace*{1cm} +\sixheterov[]{1h==\sixheterov[]{4==N}{4==(yl)}}{} +\end{center} + +It should be noted that the absence of such atom +modifiers represents a usual replacement by +a hetero atom, as found in the formula of +oxane shown above or in the one of +thiacyclohexane (tetrahydrothiane): +\begin{center} +\sixheterov[]{1==S}{} +\end{center} +generated by the code, +\begin{verbatim} +\sixheterov[]{1==S}{} +\end{verbatim} + +\section{Several Examples} + +Spiro[cyclopentane-1,1$^{\prime}$-indene] described above +can be drawn in two ways: +\begin{center} +\vspace*{1cm} +\nonaheterovi[begj]{1s==\fiveheterov{}{1==(yl)}}{} +\fiveheterov{1s==\nonaheterovi[begj]{}{1==(yl)}}{} + +\vspace*{1cm} +\end{center} +where we use two different codes: +\begin{verbatim} +\nonaheterovi[begj]{1s==\fiveheterov{}{1==(yl)}}{} +\fiveheterov{1s==\nonaheterovi[begj]{}{1==(yl)}}{} +\end{verbatim} +which correspond to +`cyclohexane-1-spiro-1$^{\prime}$-indene' and +`indene-1-spiro-1$^{\prime}$-cyclohexane' (formal), +respectively. + +A spiro dienone +\begin{center} +\vspace*{1cm} +\sixheterov[be]{% +1s==\fiveheterov{4==N}{1==(yl);3SB==H;3SA==COOCH$_{2}$Ph;% +4==PhCH$_{2}$OCO;5D==O}}{4D==O} +\end{center} +can be drawn by writing a code, +\begin{verbatim} +\sixheterov[be]{% +1s==\fiveheterov{4==N}{1==(yl);3SB==H;3SA==COOCH$_{2}$Ph;% +4==PhCH$_{2}$OCO;5D==O}}{4D==O} +\end{verbatim} + +1-Azaspiro[5.5]undecene +which is the skeleton present in histrionicotoxin +(Tetrahedron Lett., 1981, {\bf 22}, 2247) +\begin{center} +\sixheterov[]{1==N;6s==\cyclohexanev[a]{3==(yl)}}{1==CH$_{2}$Ph} +\end{center} +can be drawn by the code, +\begin{verbatim} +\sixheterov[]{1==N;6s==\cyclohexanev[a]{3==(yl)}}{1==CH$_{2}$Ph} +\end{verbatim} + +The following example shows a case +to which both ring fusion and spiro attachment are applied. +The code, +\begin{verbatim} +\decaheterov[fhk% +{g\fivefusev{1==O;4==O}{}{b}}% +]{1s==\cyclohexanev[be]{1D==O;4==(yl)}}{} +\end{verbatim} +gives the following formula: +\begin{center} +\vspace*{2cm} +\decaheterov[fhk% +{g\fivefusev{1==O;4==O}{}{b}}% +]{1s==\cyclohexanev[be]{1D==O;4==(yl)}}{} +\end{center} + +A 1,3-dioxolane derivative +\begin{center} +\fiveheterov{2==O;5==O;% +1s==\trimethylenei{}{3==(yl);1W==PhSO$_{2}$;3W==R}}{}% +\end{center} +can be drawn by the code, +\begin{verbatim} +\fiveheterov{2==O;5==O;1s==\trimethylenei{}{3==(yl);1W==PhSO$_{2}$;3W==R}}{}% +\end{verbatim} +The same compound is also drawn by usual techniques +as follows: +\begin{verbatim} +\fiveheterov{2==O;5==O}{1Sb==\dimethylenei{}{2==(yl);1W==PhSO$_{2}$};1Sa==R} +\end{verbatim} +\begin{center} +\fiveheterov{2==O;5==O}{1Sb==\dimethylenei{}{2==(yl);1W==PhSO$_{2}$};1Sa==R} +\end{center} + +\begin{verbatim} +\fiveheterov{2==O;5==O}{1G==\dimethylenei{}{2==(yl);1W==PhSO$_{2}$};1F==R} +\end{verbatim} +\begin{center} +\fiveheterov{2==O;5==O}{1G==\dimethylenei{}{2==(yl);1W==PhSO$_{2}$};1F==R} +\end{center} + +1,2,3,4-Tetrahydroquinoline-4-spiro-4$^{\prime}$-piperidine, +\begin{quotation} +\vspace*{2cm} +\decaheterovi[fhk]{1==N;4s==\sixheterov[]{1==N}{4==(yl);1==H}}{1==H} +\end{quotation} +can be drawn by writing a code, +\begin{verbatim} +\decaheterovi[fhk]{1==N;4s==\sixheterov[]{1==N}{4==(yl);1==H}}{1==H} +\end{verbatim} + +3,3$^{\prime}$-Spirobi[3{\it H}-indole], +\begin{quotation} +\vspace*{1cm} +\nonaheterovi[begj]{3==N;% +1s==\fiveheterov[bd{b\sixfusev[ac]{}{}{e}}]{4==N}{1==(yl)}}{} +\end{quotation} +is typeset by the code, +\begin{verbatim} +\nonaheterovi[begj]{3==N;% +1s==\fiveheterov[bd{b\sixfusev[ac]{}{}{e}}]{4==N}{1==(yl)}}{} +\end{verbatim} + +The code, +\begin{verbatim} +\sixheterov[]{1s==\fiveheterov{2==O;5==O}{1==(yl)}}{% +5==\threeheteroh{1==O}{3Sb==Me$_{3}$Si;3==(yl)}} +\end{verbatim} +typesets the following structure: +\begin{center} +\vspace*{1cm} +\sixheterov[]{1s==\fiveheterov{2==O;5==O}{1==(yl)}}{% +5==\threeheteroh{1==O}{3Sb==Me$_{3}$Si;3==(yl)}} +\end{center} + +A spiro intermediate during spiro annelation +(T.\ S.\ T.\ Wang, {\em Tetrahedron Lett.}, 1975, 1637), +\begin{quotation} +\vspace*{1cm} +\nonaheterov[aA]{1==N;% +3s==\decaheterovb[B]{8==N}{5==(yl);8==\dimethylenei{}{1D==O;1==(yl)}}}{} +\end{quotation} +can be drawn by the code, +\begin{verbatim} +\nonaheterov[aA]{1==N;% +3s==\decaheterovb[B]{8==N}{5==(yl);8==\dimethylenei{}{1D==O;1==(yl)}}}{} +\end{verbatim} + +A lactone intermediate containing a protected ketone +(A. Grieco and M. Nishizawa, {\em Chem. Commun.}, 1976, 582), +\begin{center} +\decaheterov[h{c\fivefusevi{4==O}{1GA==H;5GB==H;2B==;3D==O}{E}}]{% +6s==\fiveheterovi{1==O;3==O}{2==(yl)}}{5A==;{10}B==;9A==H} + +\vspace*{1cm} +\end{center} +is drawn by the code, +\begin{verbatim} +\decaheterov[h{c\fivefusevi{4==O}{1GA==H;5GB==H;2B==;3D==O}{E}}]{% +6s==\fiveheterovi{1==O;3==O}{2==(yl)}}{5A==;{10}B==;9A==H} +\end{verbatim} + +\section{Multi-Spiro Derivatives} + +Multi-sipro derivatives are drawn by nesting spiro function. +For example, cyclohexanespirocyclopentane-3$^{\prime}$-% +spirocyclohexane (Rule A-42.4), +\begin{center} +\sixheteroh[]{4s==\fiveheterov{% +2s==\sixheteroh[]{}{1==(yl)}}{5==(yl)}}{} +\end{center} +is typeset by the code, +\begin{verbatim} +\sixheteroh[]{4s==\fiveheterov{% +2s==\sixheteroh[]{}{1==(yl)}}{5==(yl)}}{} +\end{verbatim} +When \verb/\fiveheterov/ is a mother skeleton, +such a nested command is unnecessary: +\begin{verbatim} +\fiveheterov{2s==\sixheteroh[]{}{1==(yl)};% +5s==\sixheteroh[]{}{4==(yl)}}{} +\end{verbatim} +\begin{center} +\fiveheterov{2s==\sixheteroh[]{}{1==(yl)};% +5s==\sixheteroh[]{}{4==(yl)}}{} +\end{center} + +The name (Rule A-42.4), +fluorene-9-spiro-1$^{\prime}$-cyclohexane-4$^{\prime}$-% +spiro-1$^{\prime}$-indene, corresponds to the code, +\begin{verbatim} +\nonaheterovi[begj{b\sixfusev[ac]{}{}{E}}]{% +1s==\sixheterov[]{1s==\nonaheterov[begj]{}{1==(yl)}}{4==(yl)}}{} +\end{verbatim} +which gives +\begin{quotation} +\vspace*{2cm} +\nonaheterovi[begj{b\sixfusev[ac]{}{}{E}}]{% +1s==\sixheterov[]{1s==\nonaheterov[begj]{}{1==(yl)}}{4==(yl)}}{} +\end{quotation} + + +\section{Atom Replacement} + +The ATOMLIST of each command is capable of +accommodating a group if a sufficient space is available. +For example, compare two codes, +\begin{verbatim} +\sixheteroh{4==NCOOEt}{} +\hskip 2cm +\sixheteroh{4==N}{4==COOEt} +\end{verbatim} +generating formulas equivalent chemically to each other: +\begin{center} +\sixheteroh{4==NCOOEt}{} +\hskip 2cm +\sixheteroh{4==N}{4==COOEt} +\end{center} +Note that the former example uses an ATOMLIST and +the latter uses an SUBSLIST for describing substituents. + +Even when no such space is available, the use of +a command, \verb/\upnobond/ or \verb/\downnobond/, +give a solution (see \XyMTeX book pages 259--260). +Compare the following formulas, +\begin{center} +\sixheterov{4==\downnobond{N}{COOEt}}{} +\sixheterov{4==N}{4==COOEt} +\sixheterov{1==\upnobond{N}{COOEt}}{} +\sixheterov{1==N}{1==COOEt} +\end{center} +generated by the code, +\begin{verbatim} +\sixheterov{4==\downnobond{N}{COOEt}}{} +\sixheterov{4==N}{4==COOEt} +\sixheterov{1==\upnobond{N}{COOEt}}{} +\sixheterov{1==N}{1==COOEt} +\end{verbatim} + +These examples show that a substituent (e.g. NCOOEt) can +be regarded as a component for atom replacement using a ATOMLIST. +This methodology can be applied to a case in which +such a substituent is generated by the ``yl''-function or +by such a linking command as \verb/\ryl/ or \verb/\lyl/. +The following example shows the use the \verb/\ryl/ command +in the ATOMLIST of \verb/\sixheteroh/. +\begin{verbatim} +\sixheteroh{4h==\ryl(4==NCOO){4==\bzdrh{1==(yl)}}}{} +\hskip2cm +\sixheterov{3h==\ryl(4==NCOO){4==\bzdrh{1==(yl)}}}{} +\hskip2cm +\sixheterov{4h==\ryl(0==N){8==\bzdrv{1==(yl)}}}{} +\end{verbatim} +\begin{center} +\sixheteroh{4h==\ryl(4==NCOO){4==\bzdrh{1==(yl)}}}{} +\hskip2cm +\sixheterov{3h==\ryl(4==NCOO){4==\bzdrh{1==(yl)}}}{} +\hskip2cm +\sixheterov{4h==\ryl(0==N){8==\bzdrv{1==(yl)}}}{} + +\vspace*{1cm} +\end{center} + +A bond bewtween a COO unit and a phenyl group is frequently +omitted. For this purpose, we use command \verb/\ayl/ +defined as +\begin{verbatim} +\makeatletter +\def\ayl{\@ifnextchar({\@ayl@}{\@ayl@(10,40)}} +\def\@ayl@(#1,#2)#3{% +\begingroup\yl@xdiff=0 \yl@ydiff=0% +\kern#1\unitlength\raise#2\unitlength\hbox to0pt{#3\hss}% +\endgroup} +\makeatother +\end{verbatim} +Thereby, we have the following examples. +\begin{verbatim} +\sixheteroh{4==NCOO\ayl{\bzdrh{1==(yl)}}}{} +\hskip2cm +\sixheterov{3==NCOO\ayl{\bzdrh{1==(yl)}}}{} +\hskip2cm +\sixheterov{4==\downnobond{N}{COO\ayl{\bzdrh{1==(yl)}}}}{} +\end{verbatim} +\begin{center} +\sixheteroh{4==NCOO\ayl{\bzdrh{1==(yl)}}}{} +\hskip2cm +\sixheterov{3==NCOO\ayl{\bzdrh{1==(yl)}}}{} +\hskip2cm +\sixheterov{4==\downnobond{N}{COO\ayl{\bzdrh{1==(yl)}}}}{} +\end{center} + +\begin{verbatim} +\tetramethylene[a]{3==\downnobond{N}{COO\ayl{\bzdrh{1==(yl)}}}}{} +\hskip2cm +\tetramethylene[a]{3==N}{3==COO\ayl{\bzdrh{1==(yl)}}} +\end{verbatim} +\begin{center} +\tetramethylene[a]{3==\downnobond{N}{COO\ayl{\bzdrh{1==(yl)}}}}{} +\hskip2cm +\tetramethylene[a]{3==N}{3==COO\ayl{\bzdrh{1==(yl)}}} +\end{center} + + +\endinput + + +\begin{verbatim} +\end{verbatim} +\begin{center} +\end{center} + + +\begin{verbatim} +\end{verbatim} +\begin{quotation} +\end{quotation} + +
\ No newline at end of file |