Lower carbocyclic compounds by lowcycle.sty (v2.00) of XΥMTEX

Shinsaku Fujita Department of Chemistry and Materials Technology, Kyoto Institute of Technology, Matsugasaki, Sakyoku, Kyoto, 606 Japan

1998/12/25

1 Introduction

1.1 Options for docstrip

option  function
lowcycle lowcycle.sty
driver  driver for this dtx file

1.2 Version Information

1 ⟨∗lowcycle⟩

2 \typeout{XyMTeX for Drawing Chemical Structural Formulas. Version 2.00}
3 \typeout{       -- Released December 25, 1998 by Shinsaku Fujita}
4 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5 \def\j@urnalname{lowcycle}
6 \def\versi@ndate{December 25, 1998}
7 \def\versi@nno{ver2.00}
8 \def\copyrighth@lder{SF} % Shinsaku Fujita
9 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
10 \typeout{XyMTeX Macro File `\j@urnalname' (\versi@nno) <\versi@ndate>%
11 \space[\copyrighth@lder]}

2 List of commands for lowcycle.sty

**********************************
* lowcycle.sty: list of commands *
**********************************
    \cyclopentanev                      \@cyclopentanev
    \cyclopentanevi                     \@cyclopentanevi
    \cyclopentaneh                      \@cyclopentaneh

\cyclopentanehi                     \@cyclopentanehi
\cyclobutane                        \@cyclobutane
\cyclopropane                       \@cyclopropane
\cyclopropanei                      \@cyclopropanei
\cyclopropaneh                      \@cyclopropaneh
\cyclopropanehi                     \@cyclopropanehi
\indanev                            \@indanev
\indanevi                           \@indanevi
\indaneh                            \@indaneh
\indanehi                           \@indanehi

3 Input of basic macros

To assure the compatibility to L^{A}TEX2.09 (the native mode), the commands added by L^{A}TEX 2ε have not been used in the resulting sty files (lowcycle.sty for the present case). Hence, the combination of \input and \@ifundefined is used to crossload sty files (chemstr.sty etc. for the present case) in place of the \RequirePackage command of L^{A}TEX 2ε.

12 % *************************
13 % * input of basic macros *
14 % *************************
15 \@ifundefined{setsixringv}{\input chemstr.sty\relax}{}
16 \@ifundefined{threehetero}{\input hetarom.sty\relax}{}
17 \@ifundefined{sixheteroh}{\input hetaromh.sty\relax}{}
18 \unitlength=0.1pt

4 Cyclopentane derivatives

4.1 Vertical type

The macros \cyclopentanev and \cyclopentanevi have an argument SUBSLIST

as well as an optional argument BONDLIST. The macro \cyclopentanev draws a five-membered ring with a flat top bond, while the macro \cyclopentanevi draws an inverse ring with a flat bottom bond.

******************************
*  cyclopentane derivatives  *
*  (vertical type & inverse) *
******************************
\cyclopentanev[BONDLIST]{SUBSLIST}
\cyclopentanevi[BONDLIST]{SUBSLIST}

The BONDLIST argument contains one or more characters selected from a to e, each of which indicates the presence of an inner (endcyclic) double bond on the corresponding position. The option ‘n+’ (n = 1–5) is used for designating a plus charge on the n-carbon. The option ‘0+’is used for designating a plus charge at the center of the five-membered ring.

BONDLIST: list of inner double bonds
none       :  mother nucleus (fully saturated form)
a          :  1,2-double bond
b          :  2,3-double bond
c          :  4,3-double bond
d          :  4,5-double bond
e          :  5,1-double bond
{n+}       :  plus at the n-carbon atom (n = 1 to 5)
{0+}       :  plus at the center

The SUBSLIST argument contains one or more substitution descriptors which are separated from each other by a semicolon. Each substitution descriptor has a locant number with a bond modifier and a substituent, where these are separated with a double equality symbol.

SUBSLIST: list of substituents
for n = 1 to 5
nD         :  exocyclic double bond at n-atom
n or nS    :  exocyclic single bond at n-atom
nA         :  alpha single bond at n-atom
nB         :  beta single bond at n-atom
nSA        :  alpha single bond at n-atom (boldface)
nSB        :  beta single bond at n-atom (dotted line)
nSa        :  alpha (not specified) single bond at n-atom
nSb        :  beta (not specified) single bond at n-atom

Several examples are shown as follows.

e.g.
\cyclopentanev{1==H;2==F}
\cyclopentanev[]{1==H;2==F}
\cyclopentanev[H]{1==H;2==F}

\cyclopentanev
\cyclopentanevi
19 \def\cyclopentanev{\@ifnextchar[{\@cyclopentanev[@}{\@cyclopentanev[]}}
20 \def\@cyclopentanev[#1]#2{%

21 \iforigpt \typeout{command `cyclopentanev' %
22  is based on `fiveheterov'.}\fi%
23 \fiveheterov[#1]{}{#2}}
24 \def\cyclopentanevi{\@ifnextchar[{\@cyclopentanevi[@}{\@cyclopentanevi[]}}
25 \def\@cyclopentanevi[#1]#2{%
26 \iforigpt \typeout{command `cyclopentanevi' %
27  is based on `fiveheterovi'.}\fi%
28 \fiveheterovi[#1]{}{#2}}

4.2 Horizontal type

The macros \cyclopentaneh and \cyclopentanehi have an argument SUBSLIST

as well as an optional argument BONDLIST. The macro \cyclopentaneh draws a five-membered ring with a vertical left bond, while the macro \cyclopentanehi draws an inverse ring with a vertical right bond.

 ********************************
 *  cyclopentane derivatives    *
 *  (horizontal type & inverse) *
 ********************************
   \cyclopentaneh[BONDLIST]{SUBSLIST}
   \cyclopentanehi[BONDLIST]{SUBSLIST}

The BONDLIST argument contains one or more characters selected from a to e, each of which indicates the presence of an inner (endcyclic) double bond on the corresponding position. The option ‘n+’ (n = 1–5) is used for designating a plus charge on the n-carbon. The option ‘0+’is used for designating a plus charge at the center of the five-membered ring.

     BONDLIST: list of inner double bonds
           none       :  mother nucleus (fully saturated form)
           a          :  1,2-double bond
           b          :  2,3-double bond
           c          :  4,3-double bond
           d          :  4,5-double bond
           e          :  5,1-double bond
           {n+}       :  plus at the n-carbon atom (n = 1 to 5)
           {0+}       :  plus at the center

The SUBSLIST argument contains one or more substitution descriptors which are separated from each other by a semicolon. Each substitution descriptor has a locant number with a bond modifier and a substituent, where these are separated with a double equality symbol.

     SUBSLIST: list of substituents
       for n = 1 to 5
           nD         :  exocyclic double bond at n-atom
           n or nS    :  exocyclic single bond at n-atom
           nA         :  alpha single bond at n-atom
           nB         :  beta single bond at n-atom
           nSA        :  alpha single bond at n-atom (boldface)
           nSB        :  beta single bond at n-atom (dotted line)
           nSa        :  alpha (not specified) single bond at n-atom
           nSb        :  beta (not specified) single bond at n-atom

Several examples are shown as follows.

       e.g.
        \cyclopentaneh{1==H;2==F}
        \cyclopentanehi[]{1==H;2==F}
        \cyclopentanehi[H]{1==H;2==F}

\cyclopentaneh
\cyclopentanehi
29 \def\cyclopentaneh{\@ifnextchar[{\@cyclopentaneh[@}{\@cyclopentaneh[]}}
30 \def\@cyclopentaneh[#1]#2{%
31 \iforigpt \typeout{command `cyclophentaneh' %
32  is based on `fiveheteroh'.}\fi%
33 \fiveheteroh[#1]{}{#2}}
34 \def\cyclopentanehi{%
35 \@ifnextchar[{\@cyclopentanehi[@}{\@cyclopentanehi[]}}
36 \def\@cyclopentanehi[#1]#2{%
37 \iforigpt \typeout{command `cyclopentanehi' %
38  is based on `fiveheterohi'.}\fi%
39 \fiveheterohi[#1]{}{#2}}

5 Indan derivatives

5.1 Vertical type

The macros \indanev and \indanevi have an argument SUBSLIST as well as an optional argument BONDLIST. The macro \indanev draws a five-membered ring with a flat top bond, while the macro \indanevi draws an inverse ring with a flat bottom bond.

 ***********************************************************
 * indane derivatives (fused six- and five-membered rings) *

*  (vertical type & inverse)                              *
***********************************************************
\indanev[BONDLIST]{SUBSLIST}
\indanevi[BONDLIST]{SUBSLIST}

The BONDLIST argument contains one or more characters selected from a to j, each of which indicates the presence of an inner (endcyclic) double bond on the corresponding position. The option ‘A’ typesets a six-membered ring with an aromatic circle. The option ‘n+’ (n = 1–7) is used for designating a plus charge on the n-carbon.

BONDLIST:  list of bonds
none or r  :  aromatic six-membered ring
H or []    :  fully saturated form
a    :  1,2-double bond      b    :  2,3-double bond
c    :  3,3a-double bond     d    :  4,3a-double bond
e    :  4,5-double bond      f    :  5,6-double bond
g    :  6,7-double bond      h    :  7,7a-double bond
i    :  1,7a-double bond     j    :  3a,4a-double bond
A    :  aromatic circle
{n+}       :  plus at the n-nitrogen atom (n = 1 to 7)

The SUBSLIST argument contains one or more substitution descriptors which are separated from each other by a semicolon. Each substitution descriptor has a locant number with a bond modifier and a substituent, where these are separated with a double equality symbol.

SUBSLIST: list of substituents (max 7 substitution positions)
for n = 1 to 8
nD         :  exocyclic double bond at n-atom
n or nS    :  exocyclic single bond at n-atom
nA         :  alpha single bond at n-atom
nB         :  beta single bond at n-atom
nSA        :  alpha single bond at n-atom (boldface)
nSB        :  beta single bond at n-atom (dotted line)
nSa        :  alpha (not specified) single bond at n-atom
nSb        :  beta (not specified) single bond at n-atom
for 8 (3a position) and 9 (7a position)
nD         :  exocyclic double bond at n-atom
n or nS    :  exocyclic single bond at n-atom

           nA         :  alpha single bond at n-atom
           nB         :  beta single bond at n-atom

Several examples are shown as follows.

       e.g.
        \indanev{1==Cl;2==F}
        \indanev[c]{1==Cl;4==F;2==CH$_{3}$}
        \indanev[eb]{1D==O;4SA==MeO;4SB==OMe;5==Cl;6==Cl}

\indanev \indanevi
40 \def\indanev{\@ifnextchar[{\@indanev[@}{\@indanev[rb]}}
41 \def\@indanev[#1]#2{%
42 \iforigpt \typeout{command `indanev' %
43  is based on `nonaheterov'.}\fi%
44 \nonaheterov[#1]{}{#2}}
45 \def\indanevi{\@ifnextchar[{\@indanevi[@}{\@indanevi[rb]}}
46 \def\@indanevi[#1]#2{%
47 \iforigpt \typeout{command `indanevi' %
48  is based on `nonaheterovi'.}\fi%
49 \nonaheterovi[#1]{}{#2}}

5.2 Horizontal type

The macros \indaneh and \indanehi have an argument SUBSLIST as well as an optional argument BONDLIST. The macro \indaneh draws a five-membered ring with a vertical left bond, while the macro \indanehi draws an inverse ring with a vertical right bond.

 ***********************************************************
 * indane derivatives (fused six- and five-membered rings) *
 *  (horizontal type & inverse)                            *
 ***********************************************************
   \indaneh[BONDLIST]{SUBSLIST}
   \indanehi[BONDLIST]{SUBSLIST}

The BONDLIST argument contains one or more characters selected from a to j, each of which indicates the presence of an inner (endcyclic) double bond on the corresponding position. The option ‘A’ typesets a six-membered ring with an aromatic circle. The option ‘n+’ (n = 1–7) is used for designating a plus charge on the n-carbon.

BONDLIST:  list of bonds
none or r  :  aromatic six-membered ring
H or []    :  fully saturated form
a    :  1,2-double bond      b    :  2,3-double bond
c    :  3,3a-double bond     d    :  4,3a-double bond
e    :  4,5-double bond      f    :  5,6-double bond
g    :  6,7-double bond      h    :  7,7a-double bond
i    :  1,7a-double bond     j    :  3a,4a-double bond
A    :  aromatic circle
{n+}       :  plus at the n-nitrogen atom (n = 1 to 7)

The SUBSLIST argument contains one or more substitution descriptors which are separated from each other by a semicolon. Each substitution descriptor has a locant number with a bond modifier and a substituent, where these are separated with a double equality symbol.

SUBSLIST: list of substituents
for n = 1 to 8
nD         :  exocyclic double bond at n-atom
n or nS    :  exocyclic single bond at n-atom
nA         :  alpha single bond at n-atom
nB         :  beta single bond at n-atom
nSA        :  alpha single bond at n-atom (boldface)
nSB        :  beta single bond at n-atom (dotted line)
nSa        :  alpha (not specified) single bond at n-atom
nSb        :  beta (not specified) single bond at n-atom
for 8 (3a position) and 9 (7a position)
nD         :  exocyclic double bond at n-atom
n or nS    :  exocyclic single bond at n-atom
nA         :  alpha single bond at n-atom
nB         :  beta single bond at n-atom

Several examples are shown as follows.

e.g.
\indaneh{1==Cl;2==F}
\indaneh[c]{1==Cl;4==F;2==CH$_{3}$}
\indaneh[eb]{1D==O;4SA==MeO;4SB==OMe;5==Cl;6==Cl}

\indaneh \indanehi

50 \def\indaneh{\@ifnextchar[{\@indaneh[@}{\@indaneh[rb]}}
51 \def\@indaneh[#1]#2{%
52 \iforigpt \typeout{command `indaneh' %
53  is based on `nonaheteroh'.}\fi%
54 \nonaheteroh[#1]{}{#2}}
55 \def\indanehi{\@ifnextchar[{\@indanehi[@}{\@indanehi[rb]}}
56 \def\@indanehi[#1]#2{%
57 \iforigpt \typeout{command `indanehi' %
58  is based on `nonaheterohi'.}\fi%
59 \nonaheterohi[#1]{}{#2}}

6 Cyclobutane derivatives

The macros \cyclobutane has an argument SUBSLIST as well as an optional argument BONDLIST. This macro is based on the \fourhetero command for drawing four-membered heterocycles.

 ***************************
 * cyclobutane derivatives *
 ***************************
 The following numbering is adopted in this macro.
          c
     4  _____3
    d  |     |  b
       |     |
     1  -----  2<===== the original point
          a
   \cyclobutane[BONDLIST]{SUBSLIST}

The BONDLIST argument contains one or more characters selected from a to e, each of which indicates the presence of an inner (endcyclic) double bond on the corresponding position. The option ‘n+’ (n = 1–4) is used for designating a plus charge on the n-carbon.

     BONDLIST: list of inner double bonds
           a          :  1,2-double bond
           b          :  2,3-double bond
           c          :  4,3-double bond
           e          :  4,1-double bond
           {n+}       :  plus at the n-nitrogen atom (n = 1 to 4)

The SUBSLIST argument contains one or more substitution descriptors which are separated from each other by a semicolon. Each substitution descriptor has a locant number with a bond modifier and a substituent, where these are separated with a double equality symbol.

SUBSLIST: list of substituents (max 5 substitution positions)
for n = 1 to 4
nD         :  exocyclic double bond at n-atom
n or nS    :  exocyclic single bond at n-atom
nA         :  alpha single bond at n-atom
nB         :  beta single bond at n-atom
nSA        :  alpha single bond at n-atom (boldface)
nSB        :  beta single bond at n-atom (dotted line)
nSa        :  alpha (not specified) single bond at n-atom
nSb        :  beta (not specified) single bond at n-atom

Several examples are shown as follows.

e.g.
\cyclobutane{1==H;2==F}
\cyclobutane[c]{1==Cl;4==F;2==CH$_{3}$}
\cyclobutane[eb]{1D==O;4SA==MeO;4SB==OMe}

\cyclobutane
60 \def\cyclobutane{\@ifnextchar[{\@cyclobutane[@}{\@cyclobutane[]}}
61 \def\@cyclobutane[#1]#2{%
62 \iforigpt \typeout{command `cyclobutane' %
63  is based on `fourhetero'.}\fi%
64 \fourhetero[#1]{}{#2}}

7 Cyclopropane derivatives

The macros \cyclopropane has an argument SUBSLIST as well as an optional argument BONDLIST. This macro is based on the \threehetero command for drawing three-membered heterocycles.

****************************
* cyclopropane derivatives *
*  (vertical type)         *
****************************
The following numbering is adopted in this macro.
b
3--------2
c `     / a
`1/ <===== the original point

   \cyclopropane[BONDLIST]{SUBSLIST}

The BONDLIST argument contains one or more characters selected from a to c, each of which indicates the presence of an inner (endcyclic) double bond on the corresponding position. The option ‘A’ is used for designating an aromatic character with a circle. The option ‘n+’ (n = 1–3) is used for designating a plus charge on the n-carbon, while the case n = 4–6) indicates a plus charge outside the ring. The option ‘0+’ draws a plus symbol at the center of the ring.

     BONDLIST =
           none       :  saturated
           a          :  1,2-double bond
           b          :  2,3-double bond
           c          :  3,1-double bond
           A          :  aromatic circle
           {n+}       :  plus at the n-hetero atom (n = 1 to 3)
                      :  n=4 -- outer plus at 1 position
                      :  n=5 -- outer plus at 2 position
                      :  n=6 -- outer plus at 3 position
           {0+}       :  plus at the center of a cyclopropane ring

The SUBSLIST argument contains one or more substitution descriptors which are separated from each other by a semicolon. Each substitution descriptor has a locant number with a bond modifier and a substituent, where these are separated with a double equality symbol.

     SUBSLIST: list of substituents (max 3 substitution positions)
       for n = 1 to 3
           nD         :  exocyclic double bond at n-atom
           n or nS    :  exocyclic single bond at n-atom
           nA         :  alpha single bond at n-atom
           nB         :  beta single bond at n-atom
           nSA        :  alpha single bond at n-atom (boldface)
           nSB        :  beta single bond at n-atom (dotted line)
           nSa        :  alpha (not specified) single bond at n-atom
           nSb        :  beta (not specified) single bond at n-atom

Several examples are shown as follows.

       e.g.

        \cyclopropane{1==N}{1==Cl;2==F}

\cyclopropane
\cyclopropanev
65 \def\cyclopropane{\@ifnextchar[{\@cyclopropane[@}{\@cyclopropane[]}}
66 \def\@cyclopropane[#1]#2{%
67 \iforigpt \typeout{command `cyclopropane' %
68  is based on `threehetero'.}\fi%
69 \threehetero[#1]{}{#2}}
70 \let\cyclopropanev=\cyclopropane

The macros \cyclopropanei has an argument SUBSLIST as well as an optional argument BONDLIST. This macro is based on the \threehetero command for drawing three-membered heterocycles.

 ****************************
 * cyclopropane derivatives *
 *  (inverse vertical type) *
 ****************************
 The following numbering is adopted in this macro.
        /1` <===== the original point
    c /    ` a
     3--------2
         b
   \cyclopropanei[BONDLIST]{SUBSLIST}

The BONDLIST argument contains one or more characters selected from a to c, each of which indicates the presence of an inner (endcyclic) double bond on the corresponding position. The option ‘A’ is used for designating an aromatic character with a circle. The option ‘n+’ (n = 1–3) is used for designating a plus charge on the n-carbon, while the case n = 4–6) indicates a plus charge outside the ring. The option ‘0+’ draws a plus symbol at the center of the ring.

     BONDLIST =
           none       :  saturated
           a          :  1,2-double bond
           b          :  2,3-double bond
           c          :  3,1-double bond
           A          :  aromatic circle
           {n+}       :  plus at the n-hetero atom (n = 1 to 3)
                      :  n=4 -- outer plus at 1 position
                      :  n=5 -- outer plus at 2 position
                      :  n=6 -- outer plus at 3 position

           {0+}       :  plus at the center of a cyclopropane ring

The SUBSLIST argument contains one or more substitution descriptors which are separated from each other by a semicolon. Each substitution descriptor has a locant number with a bond modifier and a substituent, where these are separated with a double equality symbol.

     SUBSLIST: list of substituents (max 3 substitution positions)
       for n = 1 to 3
           nD         :  exocyclic double bond at n-atom
           n or nS    :  exocyclic single bond at n-atom
           nA         :  alpha single bond at n-atom
           nB         :  beta single bond at n-atom
           nSA        :  alpha single bond at n-atom (boldface)
           nSB        :  beta single bond at n-atom (dotted line)
           nSa        :  alpha (not specified) single bond at n-atom
           nSb        :  beta (not specified) single bond at n-atom

Several examples are shown as follows.

       e.g.
        \cyclopropanei{1==N}{1==Cl;2==F}

\cyclopropanei
\cyclopropenevi
71 \def\cyclopropanei{\@ifnextchar[{\@cyclopropanei[@}{\@cyclopropanei[]}}
72 \def\@cyclopropanei[#1]#2{%
73 \iforigpt \typeout{command `cyclopropanei' %
74  is based on `threeheteroi'.}\fi%
75 \threeheteroi[#1]{}{#2}}
76 \let\cyclopropanevi=\cyclopropanei
\cyclopropaneh
77 \def\cyclopropaneh{\@ifnextchar[{\@cyclopropaneh[@}{\@cyclopropaneh[]}}
78 \def\@cyclopropaneh[#1]#2{%
79 \iforigpt \typeout{command `cyclopropaneh' %
80  is based on `threeheteroh'.}\fi%
81 \threeheteroh[#1]{}{#2}}
\cyclopropanehi
82 \def\cyclopropanehi{\@ifnextchar[{\@cyclopropanehi[@}{\@cyclopropanehi[]}}
83 \def\@cyclopropanehi[#1]#2{%

84 \iforigpt \typeout{command `cyclopropanehi' %
85  is based on `threeheterohi'.}\fi%
86 \threeheterohi[#1]{}{#2}}

87 ⟨/lowcycle⟩