Further Cyclic Compounds by ccycle.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
ccycle ccycle.sty
driver driver for this dtx file

1.2 Version Information

1 ⟨∗ccycle⟩

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{ccycle}
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 ccycle.sty

********************************
* ccycle.sty: list of commands *
********************************
 Setting of Bonds
    \@chaira (for cyclohexane chair)

\@chairb
\@chairc
\@chaird
\@chaire
\@chairf
\@borna (for bornanes)
\@bornb
\@bornc
\@bornd
\@borne
\@bornf
\@borng
Basic Macros
\chair                     \@chair
\bicychepv                 \@bicychepv
\bicycheph                 \@bicycheph
\bornane                   \@bornane
\adamantane                \@damantane
(Added March 05, 1994 by Shinsaku Fujita)
Setting of Bonds
\@chairia (for cyclohexane chair inversed)
\@chairib  \@chairic  \@chairid
\@chairie  \@chairif
Basic Macros
\chairi                     \@chairi
(Added June 16, 1996 by Shinsaku Fujita)
Setting of Bonds
\@chairiI (for horizontal-type adamantane)
\@chairiII    \@chairiIII    \@chairiIV
\@chairiV     \@chairiVI     \@chairiVII
\@chairiVIII  \@chairiIX     \@chairiX
Basic Macros
\hadamantane                \@hadamantane
Macros for adjusting substitution sites (for Version 1.02)
\ylchairposition
\ylchairiposition
\ylbornaneposition

     \yladamanposition
     \ylhadamanposition

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 (ccycle.sty for the present case). Hence, the combination of \input and \@ifundefined is used to crossload sty files (chemstr.sty 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 \unitlength=0.1pt

4 Chair-form cyclohexanes

4.1 Macros for setting substituents

Macros \@chaira to \@chairf are used to set substituents on each position of cyclohexane. Note that comments (conerning locant numbers) on the end of each row have lost the exact meaning, since such a command moiety is used in many macros after copying.

\@chaira
17 % **********************************************
18 % * treatment of the chair form of cyclohexane *
19 % **********************************************
20 % %%%%%%%%%%%%%%%
21 % % subst. on 1 %
22 % %%%%%%%%%%%%%%%
23 \def\@chaira{%
24 \if\@tmpb S%single bond
25  \ifx\@tmpc\empty%
26  \yl@xdiff=10
27  \yl@ydiff=10
28  \put(0,0){\line(-1,1){120}}% single bond at 1
29  \putlatom{-130}{110}{\@memberb}% left type
30  \else\if\@tmpc a%(a) axial
31  \yl@xdiff=42
32  \yl@ydiff=-12
33  \put(0,0){\line(0,1){168}}% single bond at 1 axial
34  \putlratom{-42}{180}{\@memberb}% left & right type
35  \else\if\@tmpc e%(e) beta

36  \yl@xdiff=16
37  \yl@ydiff=44
38  \put(0,0){\line(-5,-3){144}}% single bond at 1 equatorial
39  \putlatom{-160}{-130}{\@memberb}% left type
40  \fi\fi\fi%
41 \else \if\@tmpb D%double bond
42  \yl@xdiff=10
43  \yl@ydiff=10
44  \put(-10,-10){\line(-1,1){120}}% double bond at 1
45  \put(10,10){\line(-1,1){120}}% double bond at 1
46  \putlatom{-130}{110}{\@memberb}% left type
47  \else%
48  \yl@xdiff=10
49  \yl@ydiff=10
50  \put(0,0){\line(-1,1){120}}% single bond at 1
51  \putlatom{-130}{110}{\@memberb}% left type
52 \fi\fi}%
\@chairb
53 % %%%%%%%%%%%%%%%
54 % % subst. on 2 %
55 % %%%%%%%%%%%%%%%
56 \def\@chairb{%
57 \if\@tmpb S%single bond
58  \ifx\@tmpc\empty%
59  \yl@xdiff=10
60  \yl@ydiff=70
61  \put(170,-226){\line(-1,-1){120}}% single bond at 2
62  \putlatom{40}{-416}{\@memberb}% left type
63  \else\if\@tmpc a%(a) axial
64  \yl@xdiff=32
65  \yl@ydiff=92
66  \put(170,-226){\line(0,-1){168}}% single bond at 2 axial
67  \putlratom{138}{-486}{\@memberb}% left & right type
68  \else\if\@tmpc e%(e) beta
69  \yl@xdiff=16
70  \yl@ydiff=34
71  \put(170,-226){\line(-5,3){144}}% single bond at 2 equatorial
72  \putlatom{10}{-174}{\@memberb}% left type
73  \fi\fi\fi%
74 \else \if\@tmpb D%double bond
75  \yl@xdiff=10
76  \yl@ydiff=70
77  \put(160,-216){\line(-1,-1){120}}% double bond at 2
78  \put(180,-236){\line(-1,-1){120}}% double bond at 2
79  \putlatom{40}{-416}{\@memberb}% left type
80  \else%
81  \yl@xdiff=10
82  \yl@ydiff=70
83  \put(170,-226){\line(-1,-1){120}}% single bond at 2

 84  \putlatom{40}{-416}{\@memberb}% left type
 85 \fi\fi}%
\@chairc
 86 % %%%%%%%%%%%%%%%
 87 % % subst. on 3 %
 88 % %%%%%%%%%%%%%%%
 89 \def\@chairc{%
 90 \if\@tmpb S%single bond
 91  \ifx\@tmpc\empty%
 92  \yl@xdiff=-10
 93  \yl@ydiff=24
 94  \put(573,-91){\line(5,4){170}}% single bond at 3
 95  \putratom{753}{21}{\@memberb}% right type
 96  \else\if\@tmpc a%(a) axial
 97  \yl@xdiff=40
 98  \yl@ydiff=-24
 99  \put(573,-91){\line(0,1){168}}% single bond at 3 axial
100  \putlratom{533}{101}{\@memberb}% left type
101  \else\if\@tmpc e%(e) beta
102  \yl@xdiff=-36
103  \yl@ydiff=83
104  \put(573,-91){\line(5,-3){144}}% single bond at 3 equatorial
105  \putlatom{753}{-260}{\@memberb}% left type
106  \fi\fi\fi%
107 \else \if\@tmpb D%double bond
108  \yl@xdiff=0
109  \yl@ydiff=0
110  \put(563,-83){\line(5,4){170}}% double bond at 3
111  \put(583,-99){\line(5,4){170}}% double bond at 3
112  \putratom{733}{41}{\@memberb}% right type
113  \else%
114  \yl@xdiff=-10
115  \yl@ydiff=24
116  \put(573,-91){\line(5,4){170}}% single bond at 3
117  \putratom{753}{21}{\@memberb}% right type
118 \fi\fi}%
\@chaird
119 % %%%%%%%%%%%%%%%
120 % % subst. on 4 %
121 % %%%%%%%%%%%%%%%
122 \def\@chaird{%
123 \if\@tmpb S%single bond
124  \ifx\@tmpc\empty%
125  \yl@xdiff=10
126  \yl@ydiff=70
127  \put(843,-181){\line(1,-1){120}}% single bond at 4
128  \putratom{953}{-371}{\@memberb}% right type
129  \else\if\@tmpc a%(a) axial

130  \yl@xdiff=42
131  \yl@ydiff=91
132  \put(843,-181){\line(0,-1){168}}% single bond at 4 axial
133  \putlratom{801}{-440}{\@memberb}% left & right type
134  \else\if\@tmpc e%(e) beta
135  \yl@xdiff=-16
136  \yl@ydiff=16
137  \put(843,-181){\line(5,3){144}}% single bond at 4 equatorial
138  \putratom{1003}{-111}{\@memberb}% right type
139  \fi\fi\fi%
140 \else \if\@tmpb D%double bond
141  \yl@xdiff=10
142  \yl@ydiff=70
143  \put(833,-191){\line(1,-1){120}}% double bond at 4
144  \put(853,-171){\line(1,-1){120}}% double bond at 4
145  \putratom{953}{-371}{\@memberb}% right type
146  \else%
147  \yl@xdiff=10
148  \yl@ydiff=70
149  \put(843,-181){\line(1,-1){120}}% single bond at 4
150  \putratom{953}{-371}{\@memberb}% right type
151 \fi\fi}%
\@chaire
152 % %%%%%%%%%%%%%%%
153 % % subst. on 5 %
154 % %%%%%%%%%%%%%%%
155 \def\@chaire{%
156 \if\@tmpb S%single bond
157  \ifx\@tmpc\empty%
158  \yl@xdiff=-10
159  \yl@ydiff=10
160  \put(673,46){\line(1,1){120}}% single bond at 5
161  \putratom{803}{158}{\@memberb}% right type
162  \else\if\@tmpc a%(a) axial
163  \yl@xdiff=40
164  \yl@ydiff=-24
165  \put(673,46){\line(0,1){168}}% single bond at 5 axial
166  \putlratom{633}{238}{\@memberb}% left & right type
167  \else\if\@tmpc e%(e) beta
168  \yl@xdiff=-6
169  \yl@ydiff=63
170  \put(673,46){\line(5,-3){144}}% single bond at 5 equatorial
171  \putratom{823}{-103}{\@memberb}% right type
172  \fi\fi\fi%
173 \else \if\@tmpb D%double bond
174  \yl@xdiff=-10
175  \yl@ydiff=10
176  \put(663,53){\line(1,1){120}}% double bond at 5
177  \put(683,38){\line(1,1){120}}% double bond at 5

178  \putratom{803}{158}{\@memberb}%  right type
179  \else%
180  \yl@xdiff=-10
181  \yl@ydiff=24
182  \put(673,46){\line(5,4){170}}% single bond at 5
183  \putratom{853}{158}{\@memberb}% right type
184 \fi\fi}%
\@chairf
185 % %%%%%%%%%%%%%%%
186 % % subst. on 6 %
187 % %%%%%%%%%%%%%%%
188 \def\@chairf{%
189 \if\@tmpb S%single bond
190  \ifx\@tmpc\empty%
191  \yl@xdiff=0
192  \yl@ydiff=54
193  \put(270,-90){\line(-5,-4){170}}% single bond at 2
194  \putlatom{100}{-280}{\@memberb}% left type
195  \else\if\@tmpc a%(a) axial
196  \yl@xdiff=32
197  \yl@ydiff=92
198  \put(270,-90){\line(0,-1){168}}% single bond at 2 axial
199  \putlratom{238}{-350}{\@memberb}% left type
200  \else\if\@tmpc e%(e) beta
201  \yl@xdiff=26
202  \yl@ydiff=-14
203  \put(270,-90){\line(-5,3){144}}% single bond at 2 equatorial
204  \putratom{100}{18}{\@memberb}% left type
205  \fi\fi\fi%
206 \else \if\@tmpb D%double bond
207  \yl@xdiff=0
208  \yl@ydiff=54
209  \put(260,-80){\line(-5,-4){170}}% double bond at 2
210  \put(280,-100){\line(-5,-4){170}}% double bond at 2
211  \putlatom{100}{-280}{\@memberb}% left or right type
212  \else%
213  \yl@xdiff=0
214  \yl@ydiff=54
215  \put(270,-90){\line(-5,-4){170}}% single bond at 2
216  \putlatom{100}{-280}{\@memberb}% left type
217 \fi\fi}%

4.2 Drawing of Chair-form cyclohexanes

The standard skeleton of a chair form of cyclohexane is selected to have the following locant numbers.

  ***************************
  * cyclohexane derivatives *

 *  (chair type)           *
 ***************************
 The following numbering is adopted in this macro.
                 5
              /  3  *
     1  *  6  /    *  4
        *  2

The macro \chair has an argument SUBSLIST as well as an optional argument

BONDLIST.
   \chair[BONDLIST]{SUBSLIST}

The BONDLIST argument contains one or more characters selected from a to f, each of which indicates the presence of an inner (endcyclic) double bond on the corresponding position.

     BONDLIST =
           none       :  cyclohexane
           a          :  1,2-double bond
           b          :  2,3-double bond
           c          :  4,3-double bond
           d          :  4,5-double bond
           e          :  5,6-double bond
           f          :  6,1-double bond

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 12 substitution positions)
       for n = 1 to 6
           nD         :  exocyclic double bond at n-atom
           nSa        :  axial single bond at n-atom
           nSe        :  equatorial single bond at n-atom

Several examples are shown as follows.

         \chair{1==Cl;2==F}
         \chair[a]{1==Cl;4==F;2==CH$_{3}$}
         \chair[eb]{1D==O;4Se==MeO;4Sa==OMe;5==Cl;6==Cl}

The definition of \@chair uses a picture environment, in which bonds are put directly, while subsituents are typset by using the macros \@chaira to \@chairf described above.

\@chair \chair
218 \def\chair{\@ifnextchar[{\@chair}{\@chair[r]}}
219 \def\@chair[#1]#2{%
220 \@reset@ylsw%
221 \ylchairposition{#2}%
222 \def\@@ylii{0}\def\@@yli{0}%
223 \if@ylsw
224 \yl@shiftii=\@ylii
225 \yl@shifti=\@yli
226 \advance\yl@shiftii\@@ylii
227 \advance\yl@shifti\@@yli
228 \advance\yl@shiftii\yl@xdiff
229 \advance\yl@shifti\yl@ydiff
230 \begin{picture}(0,0)(-\yl@shiftii,-\yl@shifti)
231 \else
232 \begin{picture}(1600,800)(-400,-500)
233 \iforigpt \put(-400,-500){\circle*{50}}%
234  \put(0,0){\circle{50}}%
235 \typeout{command `chair' origin: (0,0) ---> (400,500)}
236 \fi%
237 \fi
238 %skeletal bonds
239 \thicklines%
240  \put(0,0){\line(3,-4){170}}%          % bond 1 to 2
241  \put(170,-226){\line(3,1){403}}%      %      2 to 3
242  \put(573,-91){\line(3,-1){270}}%      %      3 to 4
243 \thinlines%
244  \put(843,-181){\line(-3,4){170}}%     %      4 to 5
245  \put(673,46){\line(-3,-1){403}}%      %      5 to 6
246  \put(0,0){\line(3,-1){270}}%          %      1 to 6
247 % inner double bonds
248 \@tfor\member:=#1\do{%
249 \if\member r%no endcyclic bonds
250 \else \if\member a%
251  \put(76,-42){\line(3,-4){110}}%       % double bond 1 to 2
252 \else \if\member b%
253  \put(200,-186){\line(3,1){343}}%      %             2 to 3
254 \else \if\member c%
255  \put(603,-70){\line(3,-1){190}}%      %             3 to 4
256 \else \if\member d%
257  \put(780,-141){\line(-3,4){110}}%     %             4 to 5

258 \else \if\member e%
259  \put(661,6){\line(-3,-1){343}}%       %             5 to 6
260 \else \if\member f%
261  \put(75,-50){\line(3,-1){170}}%       %             1 to 6
262 \fi\fi\fi\fi\fi\fi\fi}%
263 % setting substituents
264 \@forsemicol\member:=#2\do{%
265 \ifx\member\empty\else
266 \expandafter\@m@mb@r\member;\relax%
267 \expandafter\threech@r\@membera{}{}%
268 \ifx\@memberb\@yl\else
269 \ifcase\@tmpa%0 omit
270 \or\@chaira% subst. on 1
271 \or\@chairb% subst. on 2
272 \or\@chairc% subst. on 3
273 \or\@chaird% subst. on 4
274 \or\@chaire% subst. on 5
275 \or\@chairf% subst. on 6
276 \fi%end of ifcase
277 \fi\fi%
278 }\end{picture}}%               %end of \chair macro

The command \ylchairposition is to obtain the shift values \@ylii and \@yli which are used for shifting the standard point of a substituent.

\ylchairposition
279 \def\ylchairposition#1{%
280 \@@ylswfalse%%%\@reset@ylsw
281 \@forsemicol\member:=#1\do{%
282 \if@@ylsw\else
283 \ifx\member\empty\else
284 \expandafter\@m@mb@r\member;\relax
285 \expandafter\threech@r\@membera{}{}\relax
286 \ifx\@memberb\@yl\relax\@@ylswtrue\else\@@ylswfalse\fi
287 \if@@ylsw
288 \ifcase\@tmpa%0 omit
289 \or\gdef\@ylii{0}\gdef\@yli{0}\global\@ylswtrue% subst. on 1
290 \or\gdef\@ylii{-170}\gdef\@yli{226}\global\@ylswtrue% subst. on 2
291 \or\gdef\@ylii{-573}\gdef\@yli{91}\global\@ylswtrue% subst. on 3
292 \or\gdef\@ylii{-843}\gdef\@yli{181}\global\@ylswtrue% subst. on 4
293 \or\gdef\@ylii{-673}\gdef\@yli{-46}\global\@ylswtrue% subst. on 5
294 \or\gdef\@ylii{-270}\gdef\@yli{90}\global\@ylswtrue% subst. on 6
295 \fi%end of ifcase
296 \fi\fi\fi}}%

5 Inverse chair-form cyclohexanes

5.1 Macros for setting substituents

Macros \@chairia to \@chairif are used to set substituents on each position of cyclohexane. Note that they corresopond to the counterparts of chair-form cyclohexanes described above.

\@chairia
297 % ********************************************************
298 % * treatment of the chair form (inverse) of cyclohexane *
299 % *  added March 05, 1994 by Shinsaku Fujita             *
300 % ********************************************************
301 % %%%%%%%%%%%%%%%
302 % % subst. on 1 %
303 % %%%%%%%%%%%%%%%
304 \def\@chairia{%
305 \if\@tmpb S%single bond
306  \ifx\@tmpc\empty%
307  \yl@xdiff=10
308  \yl@ydiff=90
309  \put(0,0){\line(-1,-1){120}}% single bond at 1
310  \putlatom{-130}{-210}{\@memberb}% left type
311  \else\if\@tmpc a%(a) axial
312  \yl@xdiff=42
313  \yl@ydiff=92
314  \put(0,0){\line(0,-1){168}}% single bond at 1 axial
315  \putlratom{-42}{-260}{\@memberb}% left & right type
316  \else\if\@tmpc e%(e) beta
317  \yl@xdiff=16
318  \yl@ydiff=36
319  \put(0,0){\line(-5,3){144}}% single bond at 1 equatorial
320  \putlatom{-160}{50}{\@memberb}% left type
321  \fi\fi\fi%
322 \else \if\@tmpb D%double bond
323  \yl@xdiff=10
324  \yl@ydiff=90
325  \put(-10,10){\line(-1,-1){120}}% double bond at 1
326  \put(10,-10){\line(-1,-1){120}}% double bond at 1
327  \putlatom{-130}{-210}{\@memberb}% left type
328  \else%
329  \yl@xdiff=10
330  \yl@ydiff=90
331  \put(0,0){\line(-1,-1){120}}% single bond at 1
332  \putlatom{-130}{-210}{\@memberb}% left type
333 \fi\fi}%
\@chairif
334 % %%%%%%%%%%%%%%%
335 % % subst. on 6 %

336 % %%%%%%%%%%%%%%%
337 \def\@chairif{%
338 \if\@tmpb S%single bond
339  \ifx\@tmpc\empty%
340  \yl@xdiff=10
341  \yl@ydiff=30
342  \put(170,226){\line(-1,1){120}}% single bond at 6
343  \putratom{40}{316}{\@memberb}% left type
344  \else\if\@tmpc a%(a) axial
345  \yl@xdiff=32
346  \yl@ydiff=-12
347  \put(170,226){\line(0,1){168}}% single bond at 6 axial
348  \putlratom{138}{406}{\@memberb}% left & right type
349  \else\if\@tmpc e%(e) beta
350  \yl@xdiff=16
351  \yl@ydiff=46
352  \put(170,226){\line(-5,-3){144}}% single bond at 6 equatorial
353  \putlatom{10}{94}{\@memberb}% left type
354  \fi\fi\fi%
355 \else \if\@tmpb D%double bond
356  \yl@xdiff=10
357  \yl@ydiff=30
358  \put(160,216){\line(-1,1){120}}% double bond at 6
359  \put(180,236){\line(-1,1){120}}% double bond at 6
360  \putlatom{40}{316}{\@memberb}% left type
361  \else%
362  \yl@xdiff=10
363  \yl@ydiff=30
364  \put(170,226){\line(-1,1){120}}% single bond at 6
365  \putlatom{40}{316}{\@memberb}% left type
366 \fi\fi}%
\@chairie
367 % %%%%%%%%%%%%%%%
368 % % subst. on 5 %
369 % %%%%%%%%%%%%%%%
370 \def\@chairie{%
371 \if\@tmpb S%single bond
372  \ifx\@tmpc\empty%
373  \yl@xdiff=-10
374  \yl@ydiff=76
375  \put(573,91){\line(5,-4){170}}% single bond at 5
376  \putratom{753}{-101}{\@memberb}% right type
377  \else\if\@tmpc a%(a) axial
378  \yl@xdiff=40
379  \yl@ydiff=104
380  \put(573,91){\line(0,-1){168}}% single bond at 5 axial
381  \putlratom{533}{-181}{\@memberb}% left type
382  \else\if\@tmpc e%(e) beta
383  \yl@xdiff=-36

384  \yl@ydiff=3
385  \put(573,91){\line(5,3){144}}% single bond at 5 equatorial
386  \putlatom{753}{180}{\@memberb}% left type
387  \fi\fi\fi%
388 \else \if\@tmpb D%double bond
389  \yl@xdiff=-10
390  \yl@ydiff=96
391  \put(563,83){\line(5,-4){170}}% double bond at 5
392  \put(583,99){\line(5,-4){170}}% double bond at 5
393  \putratom{733}{-141}{\@memberb}% right type
394  \else%
395  \yl@xdiff=-10
396  \yl@ydiff=76
397  \put(573,91){\line(5,-4){170}}% single bond at 5
398  \putratom{753}{-121}{\@memberb}% right type
399 \fi\fi}%
\@chairid
400 % %%%%%%%%%%%%%%%
401 % % subst. on 4 %
402 % %%%%%%%%%%%%%%%
403 \def\@chairid{%
404 \if\@tmpb S%single bond
405  \ifx\@tmpc\empty%
406  \yl@xdiff=10
407  \yl@ydiff=30
408  \put(843,181){\line(1,1){120}}% single bond at 4
409  \putratom{953}{271}{\@memberb}% right type
410  \else\if\@tmpc a%(a) axial
411  \yl@xdiff=42
412  \yl@ydiff=-11
413  \put(843,181){\line(0,1){168}}% single bond at 4 axial
414  \putlratom{801}{360}{\@memberb}% left & right type
415  \else\if\@tmpc e%(e) beta
416  \yl@xdiff=-16
417  \yl@ydiff=64
418  \put(843,181){\line(5,-3){144}}% single bond at 4 equatorial
419  \putratom{1003}{31}{\@memberb}% right type
420  \fi\fi\fi%
421 \else \if\@tmpb D%double bond
422  \yl@xdiff=10
423  \yl@ydiff=30
424  \put(833,191){\line(1,1){120}}% double bond at 4
425  \put(853,171){\line(1,1){120}}% double bond at 4
426  \putratom{953}{271}{\@memberb}% right type
427  \else%
428  \yl@xdiff=10
429  \yl@ydiff=30
430  \put(843,181){\line(1,1){120}}% single bond at 4
431  \putratom{953}{271}{\@memberb}% right type

432 \fi\fi}%
\@chairic
433 % %%%%%%%%%%%%%%%
434 % % subst. on 3 %
435 % %%%%%%%%%%%%%%%
436 \def\@chairic{%
437 \if\@tmpb S%single bond
438  \ifx\@tmpc\empty%
439  \yl@xdiff=-10
440  \yl@ydiff=92
441  \put(673,-46){\line(1,-1){120}}% single bond at 3
442  \putratom{803}{-258}{\@memberb}% right type
443  \else\if\@tmpc a%(a) axial
444  \yl@xdiff=40
445  \yl@ydiff=110
446  \put(673,-46){\line(0,-1){168}}% single bond at 3 axial
447  \putlratom{633}{-318}{\@memberb}% left & right type
448  \else\if\@tmpc e%(e) beta
449  \yl@xdiff=-6
450  \yl@ydiff=17
451  \put(673,-46){\line(5,3){144}}% single bond at 3 equatorial
452  \putratom{823}{23}{\@memberb}% right type
453  \fi\fi\fi%
454 \else \if\@tmpb D%double bond
455  \yl@xdiff=-5
456  \yl@ydiff=96
457  \put(663,-53){\line(1,-1){120}}% double bond at 3
458  \put(683,-38){\line(1,-1){120}}% double bond at 3
459  \putratom{803}{-258}{\@memberb}%  right type
460  \else%
461  \yl@xdiff=-10
462  \yl@ydiff=76
463  \put(673,-46){\line(5,-4){170}}% single bond at 3
464  \putratom{853}{-258}{\@memberb}% right type
465 \fi\fi}%
\@chairib
466 % %%%%%%%%%%%%%%%
467 % % subst. on 2 %
468 % %%%%%%%%%%%%%%%
469 \def\@chairib{%
470 \if\@tmpb S%single bond
471  \ifx\@tmpc\empty%
472  \yl@xdiff=0
473  \yl@ydiff=46
474  \put(270,90){\line(-5,4){170}}% single bond at 2
475  \putlatom{100}{180}{\@memberb}% left type
476  \else\if\@tmpc a%(a) axial
477  \yl@xdiff=32

478  \yl@ydiff=-12
479  \put(270,90){\line(0,1){168}}% single bond at 2 axial
480  \putlratom{238}{270}{\@memberb}% left type
481  \else\if\@tmpc e%(e) beta
482  \yl@xdiff=26
483  \yl@ydiff=94
484  \put(270,90){\line(-5,-3){144}}% single bond at 2 equatorial
485  \putratom{100}{-98}{\@memberb}% left type
486  \fi\fi\fi%
487 \else \if\@tmpb D%double bond
488  \yl@xdiff=0
489  \yl@ydiff=26
490  \put(260,80){\line(-5,4){170}}% double bond at 2
491  \put(280,100){\line(-5,4){170}}% double bond at 2
492  \putlatom{100}{200}{\@memberb}% left or right type
493  \else%
494  \yl@xdiff=0
495  \yl@ydiff=26
496  \put(270,90){\line(-5,4){170}}% single bond at 2
497  \putlatom{100}{200}{\@memberb}% left type
498 \fi\fi}%

5.2 Drawing of inverse chair-form cyclohexanes

The standard skeleton of an inverse chair form of cyclohexane is selected to have the following locant numbers.

  ***************************
  * cyclohexane derivatives *
  *  (inverse chair type)   *
  ***************************
  The following numbering is adopted in this macro.
           6            4
        *      `  5  *
      1  *  2        *
               `  3

The macro \chairi has an argument SUBSLIST as well as an optional argument

 BONDLIST.
    \chairi[BONDLIST]{SUBSLIST}

The BONDLIST argument contains one or more characters selected from a to f, each of which indicates the presence of an inner (endcyclic) double bond on the corresponding position.

      BONDLIST =
            none       :  cyclohexane
            a          :  1,2-double bond
            b          :  2,3-double bond
            c          :  4,3-double bond
            d          :  4,5-double bond
            e          :  5,6-double bond
            f          :  6,1-double bond

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 8 substitution positions)
        for n = 1 to 6
            nD         :  exocyclic double bond at n-atom
            nSa        :  axial single bond at n-atom
            nSe        :  equatorial single bond at n-atom

Several examples are shown as follows.

        e.g.
         \chairi[eb]{1D==O;4Se==MeO;4Sa==OMe;5==Cl;6==Cl}

The definition of \@chairi uses a picture environment, in which bonds are put directly, while subsituents are typset by using the macros \@chairia to \@chairif described above.

\@chairi \chairi
499 \def\chairi{\@ifnextchar[{\@chairi}{\@chairi[r]}}
500 \def\@chairi[#1]#2{%
501 \@reset@ylsw%
502 \ylchairiposition{#2}%
503 \def\@@ylii{0}\def\@@yli{0}%
504 \if@ylsw
505 \yl@shiftii=\@ylii
506 \yl@shifti=\@yli
507 \advance\yl@shiftii\@@ylii
508 \advance\yl@shifti\@@yli
509 \advance\yl@shiftii\yl@xdiff

510 \advance\yl@shifti\yl@ydiff
511 \begin{picture}(0,0)(-\yl@shiftii,-\yl@shifti)
512 \else
513 \begin{picture}(1600,800)(-400,-319)
514 \iforigpt \put(-400,-319){\circle*{50}}%
515  \put(0,0){\circle{50}}%
516 \typeout{command `chairi' origin: (0,0) ---> (400,319)}
517 \fi%
518 \fi
519 % skeletal bonds
520 \thinlines%
521  \put(0,0){\line(3,4){170}}%         % bond 1 to 6
522  \put(170,226){\line(3,-1){403}}%    %      6 to 5
523  \put(573,91){\line(3,1){270}}%      %      5 to 4
524 \thicklines%
525  \put(843,181){\line(-3,-4){170}}%    %      4 to 3
526  \put(673,-46){\line(-3,1){403}}%     %      3 to 2
527  \put(0,0){\line(3,1){270}}%          %      1 to 2
528 \thinlines%
529 % inner double bonds
530 \@tfor\member:=#1\do{%
531 \if\member r%no endcyclic bonds
532 \else \if\member c%%%a%
533  \put(767,139){\line(-3,-4){110}}%   % double bond 3 to 4
534 \else \if\member b%%%d%%%b%
535  \put(640,-5){\line(-3,1){343}}%      %             4 to 5
536 \else \if\member a%%%e%%%%c%
537  \put(240,111){\line(-3,-1){190}}%   %             5 to 6
538 \else \if\member f%%%d%
539  \put(63,40){\line(3,4){110}}%        %             6 to 7
540 \else \if\member e%%%l%
541  \put(182,187){\line(3,-1){343}}%     %             7 to 10
542 \else \if\member d%%%k%%%f%
543  \put(768,131){\line(-3,-1){170}}%    %             10 to 3
544 \fi\fi\fi\fi\fi\fi\fi}%

545 % %

546 \@forsemicol\member:=#2\do{%
547 \ifx\member\empty\else
548 \expandafter\@m@mb@r\member;\relax%
549 \expandafter\threech@r\@membera{}{}%
550 \ifx\@memberb\@yl\else
551 \ifcase\@tmpa%0 omit
552 \or \@chairia% subst. on 1
553 \or \@chairib% subst. on 2
554 \or \@chairic% subst. on 3
555 \or \@chairid% subst. on 4
556 \or \@chairie% subst. on 5
557 \or \@chairif% subst. on 6
558 \fi %end of ifcase
559 \fi\fi%

560 }\end{picture}}%               %end of \chairi macro
561 % End of addition 1994/03/05 SF

The command \ylchairiposition is to obtain the shift values \@ylii and \@yli which are used for shifting the standard point of a substituent.

\ylchairiposition
562 \def\ylchairiposition#1{%
563 \@@ylswfalse%%%\@reset@ylsw
564 \@forsemicol\member:=#1\do{%
565 \if@@ylsw\else
566 \ifx\member\empty\else
567 \expandafter\@m@mb@r\member;\relax
568 \expandafter\threech@r\@membera{}{}\relax
569 \ifx\@memberb\@yl\relax\@@ylswtrue\else\@@ylswfalse\fi
570 \if@@ylsw
571 \ifcase\@tmpa%0 omit
572 \or\gdef\@ylii{0}\gdef\@yli{0}\global\@ylswtrue% subst. on 1
573 \or\gdef\@ylii{-270}\gdef\@yli{-90}\global\@ylswtrue% subst. on 2
574 \or\gdef\@ylii{-673}\gdef\@yli{46}\global\@ylswtrue% subst. on 3
575 \or\gdef\@ylii{-843}\gdef\@yli{-181}\global\@ylswtrue% subst. on 4
576 \or\gdef\@ylii{-573}\gdef\@yli{-91}\global\@ylswtrue% subst. on 5
577 \or\gdef\@ylii{-170}\gdef\@yli{-226}\global\@ylswtrue% subst. on 6
578 \fi%end of ifcase
579 \fi\fi\fi}}%

6 Bicycloheptanes

6.1 Drawing of a flat and vertical type

The flat-and-vertical-type skeleton of bicycloheptanes is selected to have the following locant numbers.

  *************************************
  * bicyclo[2.2.1]heptane derivatives *
  *  (flat, vertical type)            *
  *************************************
  The following numbering is adopted in this macro.
           1
           *
      6  *   *  2
        |  7  |
        |     |
      5  *   *  3
           *
           4 <===== the original point

The macro \bicyclohepv has an argument SUBSLIST as well as an optional argument BONDLIST.

\bicychepv[BONDLIST]{SUBSLIST}

The BONDLIST argument contains one or more characters selected from a to f, each of which indicates the presence of an inner (endcyclic) double bond on the corresponding position. In order to put dimethyl subsitutents on the top position (7), the character ‘7’ is used in the BONDLIST. The delocalization of π-electron can be described with the character ‘A’ written in the BONDLIST.

BONDLIST =
none       :  bicyclo[2.2.1]heptane
a          :  1,2-double bond
b          :  2,3-double bond
c          :  4,3-double bond
d          :  4,5-double bond
e          :  5,6-double bond
f          :  6,1-double bond
A          :  aromatic circle
7          :  7,7-dimethyl

The SUBSLIST argument takes the standard format of XΥMTEX, in which more substitution descriptors are separated from each other by a semicolon.

SUBSLIST: list of substituents (max 12 substitution positions)
for n = 1 to 7
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 specifed) single bond at n-atom

Several examples are shown as follows.

e.g.
\bicychepv{1==Cl;2==F}
\bicychepv[c]{1==Cl;4==F;2==CH$_{3}$}
\bicychepv[eb]{1D==O;4==Me;5==Cl;6==Cl}

The definition of \@bicyclohepv uses a picture environment, in which bonds are put directly, while subsituents are typset by using the macro \setsixringv defined in chemstr.sty of XΥMTEX system.

\@bicyclohepv
\bicyclohepv
580 \def\bicychepv{\@ifnextchar[{\@bicychepv}{\@bicychepv[r]}}
581 \def\@bicychepv[#1]#2{%
582 \@reset@ylsw%
583 \ylposition{#2}{0}{0}{7}{0}%
584 \if@ylsw
585 \yl@shiftii=\@ylii
586 \yl@shifti=\@yli
587 \advance\yl@shiftii\yl@xdiff
588 \advance\yl@shifti\yl@ydiff
589 \begin{picture}(0,0)(-\yl@shiftii,-\yl@shifti)
590 \else
591 \begin{picture}(800,880)(-400,-240)
592 \iforigpt \put(-400,-240){\circle*{50}}%
593  \put(0,0){\circle{50}}%
594 \typeout{command `bicychepv' origin: (0,0) ---> (400,240)}
595 \fi
596 \fi%
597 \put(0,406){\line(-5,-3){171}}%       %bond 1-6
598 \put(0,406){\line(5,-3){171}}%        %bond 1-2
599 \put(0,0){\line(-5,3){171}}%          %bond 4-5
600 \put(0,0){\line(5,3){171}}%           %bond 4-3
601 \put(171,103){\line(0,1){200}}%       %bond 3-2
602 \put(-171,103){\line(0,1){200}}%      %bond 5-6
603 {\thicklines%
604 \put(0,0){\line(1,4){51}}%            %bond 4-7
605 \put(0,406){\line(1,-4){51}}}%         %bond 1-7
606 \@tfor\member:=#1\do{%
607 \if\member r%no endcyclic double bonds
608 \else \if\member a%
609 \put(6,364){\line(5,-3){126}}%        %double bond 1-2
610 \else \if\member b%
611 \put(138,129){\line(0,1){148}}%       %double bond 3-2
612 \else \if\member c%
613 \put(6,42){\line(5,3){126}}%          %double bond 4-3
614 \else \if\member d%
615 \put(-6,42){\line(-5,3){126}}%        %double bond 4-5
616 \else \if\member e%
617 \put(-138,129){\line(0,1){148}}%      %double bond 5-6
618 \else \if\member f%
619 \put(-6,364){\line(-5,-3){126}}%      %double bond 1-6
620 \else \if\member 7%
621 {\thicklines%
622 \put(51,204){\line(-1,0){70}}%        %7,7-dimethyl
623 \put(51,204){\line(1,0){70}}}%
624 \else \if\member A%aromatic circle

625 \put(0,203){\circle{240}}%            %circle
626 \fi\fi\fi\fi\fi\fi\fi\fi\fi}%

627 % %

628 \setsixringv{#2}{0}{0}{7}{0}
629 \end{picture}}               %end of \bicychepv macro

6.2 Drawing of a flat and horizontal type

The flat-and-horizontal-type skeleton of bicycloheptanes is selected to have the following locant numbers.

*************************************
* bicyclo[2.2.1]heptane derivatives *
*  (flat, horizontal type)          *
*************************************
The following numbering is adopted in this macro.
                     2      3
                      -----
                    *       *
the original point ===> 1 *     7     * 4
(0,0)                *       *
                      -----
                     6      5

The macro \bicycloheph has an argument SUBSLIST as well as an optional argument BONDLIST.

\bicycheph[BONDLIST]{SUBSLIST}

The BONDLIST argument contains one or more characters selected from a to f, each of which indicates the presence of an inner (endcyclic) double bond on the corresponding position. In order to put dimethyl subsitutents on the top position (7), the character ‘7’ is used in the BONDLIST. The delocalization of π-electron can be described with the character ‘A’ written in the BONDLIST.

BONDLIST =
none       :  bicyclo[2.2.1]heptane
a          :  1,2-double bond
b          :  2,3-double bond
c          :  4,3-double bond
d          :  4,5-double bond
e          :  5,6-double bond
f          :  6,1-double bond
A          :  aromatic circle
7          :  7,7-dimethyl

The SUBSLIST argument takes the standard format of XΥMTEX, in which more substitution descriptors are separated from each other by a semicolon.

      SUBSLIST: list of substituents (max 8 substitution positions)
        for n = 1 to 6
            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 specifed) single bond at n-atom

Several examples are shown as follows.

        e.g.
         \bicycheph{1==Cl;2==F}
         \bicycheph[c]{1==Cl;4==F;2==CH$_{3}$}
         \bicycheph[eb]{1D==O;4==Me;5==Cl;6==Cl}

The definition of \@bicycloheph uses a picture environment, in which bonds are put directly, while subsituents are typset by using the macro \setsixringh defined in chemstr.sty of XΥMTEX system.

\@bicycloheph
\bicycloheph
630 \def\bicycheph{\@ifnextchar[{\@bicycheph}{\@bicycheph[r]}}
631 \def\@bicycheph[#1]#2{%
632 \@reset@ylsw%
633 \ylpositionh{#2}{0}{0}{7}{0}%
634 \if@ylsw
635 \yl@shiftii=\@ylii
636 \yl@shifti=\@yli
637 \advance\yl@shiftii\yl@xdiff
638 \advance\yl@shifti\yl@ydiff
639 \begin{picture}(0,0)(-\yl@shiftii,-\yl@shifti)
640 \else
641 \begin{picture}(880,800)(-240,-400)
642 \iforigpt \put(-240,-400){\circle*{50}}%
643  \put(0,0){\circle{50}}%
644 \typeout{command `bicycheph' origin: (0,0) ---> (240,400)}
645 \fi%
646 \fi
647 \put(0,0){\line(3,5){103}}           %bond 1-2

648 \put(0,0){\line(3,-5){103}}          %bond 1-6
649 \put(406,0){\line(-3,5){103}}        %bond 4-3
650 \put(406,0){\line(-3,-5){103}}       %bond 4-3
651 \put(103,171){\line(1,0){200}}       %bond 2-3
652 \put(103,-171){\line(1,0){200}}      %bond 6-5
653 {\thicklines%
654 \put(0,0){\line(4,1){203}}%            %bond 4-7
655 \put(406,0){\line(-4,1){203}}}%         %bond 1-7
656 \@tfor\member:=#1\do{%
657 \if\member r%no endcyclic double bonds
658 \else \if\member a%
659 \put(42,6){\line(3,5){78}}           %double bond 1-2
660 \else \if\member b%
661 \put(129,138){\line(1,0){148}}       %double bond 2-3
662 \else \if\member c%
663 \put(364,6){\line(-3,5){78}}         %double bond 4-3
664 \else \if\member d%
665 \put(364,-6){\line(-3,-5){78}}       %double bond 4-5
666 \else \if\member e%
667 \put(129,-138){\line(1,0){148}}      %double bond 6-5
668 \else \if\member f%
669 \put(42,-6){\line(3,-5){78}}         %double bond 1-6
670 \else \if\member 7%
671 {\thicklines%
672 \put(204,51){\line(0,-1){70}}%        %7,7-dimethyl
673 \put(204,51){\line(0,1){70}}}%
674 \else \if\member A%aromatic circle
675 \put(203,0){\circle{240}}            %circle
676 \fi\fi\fi\fi\fi\fi\fi\fi\fi}

677 % %

678 \setsixringh{#2}{0}{0}{7}{0}
679 \end{picture}}               %end of \bicycheph macro

6.3 Drawing of a stereo type

6.3.1 Macros for setting substituents

Macros \@borna to \@borng are used to set substituents on each position of bornane.

\@borna
680 % ***********************************************
681 % * setting bonds and substituents for bornanes *
682 % * (bicycloe[2.2.1]heptane derivatives)        *
683 % ***********************************************
684 % %%%%%%%%%%%%%%%
685 % % subst. on 1 %
686 % %%%%%%%%%%%%%%%
687 \def\@borna{%
688 \if\@tmpb S%single bond

689  \ifx\@tmpc\empty%
690  \yl@xdiff=8
691  \yl@ydiff=3
692  \put(318,247){\line(2,5){40}}%      % single bond 1
693  \putratom{350}{350}{\@memberb}%    % right type
694  \else\if\@tmpc a%(a) alpha
695  \yl@xdiff=8
696  \yl@ydiff=3
697  \put(318,247){\line(2,5){40}}%      % single bond 1
698  \putratom{350}{350}{\@memberb}%    % right type
699  \else\if\@tmpc b%(b) beta
700  \yl@xdiff=8
701  \yl@ydiff=3
702  \put(318,247){\line(2,5){40}}%      % single bond 1
703  \putratom{350}{350}{\@memberb}%     % right type
704  \fi\fi\fi%
705 \else%
706  \yl@xdiff=8
707  \yl@ydiff=3
708  \put(318,247){\line(2,5){40}}%      % single bond 1
709  \putratom{350}{350}{\@memberb}     % right type
710 \fi}%
\@bornb
711 % %%%%%%%%%%%%%%%
712 % % subst. on 2 %
713 % %%%%%%%%%%%%%%%
714 \def\@bornb{%
715 \begin{picture}(200,200)(0,0)
716 \if\@tmpb S%single bond
717  \ifx\@tmpc\empty%
718  \yl@xdiff=-10
719  \yl@ydiff=20
720  \put(0,0){\line(5,2){160}}%
721  \putratom{170}{44}{\@memberb}%      % left type
722  \else\if\@tmpc A%(A) alpha
723  \yl@xdiff=0
724  \yl@ydiff=-5
725  \putratom{140}{115}{\@memberb}%     % right type

726 {%

727  \thicklines%
728  \put(0,0){\line(4,3){140}}%         % endo (a)

729 }%

730  \else\if\@tmpc B%(B) beta
731  \yl@xdiff=10
732  \yl@ydiff=30
733  \putratom{150}{-86}{\@memberb}%     % right type
734  \@ifundefined{dottedline}{%
735  \put(0,0){\line(5,-2){140}}%        % exo (b)
736  }{{\thicklines%

737  \dottedline{20}(0,0)(140,-56)}}%
738  \else\if\@tmpc a%(a) alpha
739  \yl@xdiff=10
740  \yl@ydiff=30
741  \put(0,0){\line(5,-2){140}}%        % endo (a)
742  \putratom{150}{-86}{\@memberb}%     % right type
743  \else\if\@tmpc b%(b) beta
744  \yl@xdiff=0
745  \yl@ydiff=-10
746  \put(0,0){\line(4,3){140}}%         % exo (b)
747  \putratom{140}{115}{\@memberb}%     % right type
748  \fi\fi\fi\fi\fi%
749 \else \if\@tmpb D%double bond
750  \yl@xdiff=-10
751  \yl@ydiff=20
752  \put(-10,-15){\line(5,2){160}}%
753  \put(-5,15){\line(5,2){160}}%
754  \putratom{170}{44}{\@memberb}%      % right type
755 \else \if\@tmpb A%alpha single bond
756  \yl@xdiff=-10
757  \yl@ydiff=20
758  \putratom{170}{44}{\@memberb}%      % right type

759 {%

760  \thicklines%
761  \put(0,0){\line(5,2){160}}%

762 }%

763 \else \if\@tmpb B%beta single bond
764  \yl@xdiff=-10
765  \yl@ydiff=20
766  \putratom{170}{44}{\@memberb}%      % right type
767  \@ifundefined{dottedline}{%
768  \put(0,0){\line(5,2){160}}%
769  }{{\thicklines%
770  \dottedline{20}(0,0)(160,64)}}%
771 \else%
772  \yl@xdiff=-10
773  \yl@ydiff=20
774  \put(0,0){\line(5,2){160}}%
775  \putratom{170}{44}{\@memberb}%      % right type
776 \fi\fi\fi\fi\end{picture}}%
\@bornc
777 % %%%%%%%%%%%%%%%
778 % % subst. on 3 %
779 % %%%%%%%%%%%%%%%
780 \def\@bornc{%
781 \begin{picture}(200,200)(0,0)
782 \if\@tmpb S%single bond
783  \ifx\@tmpc\empty%
784  \yl@xdiff=-10

785  \yl@ydiff=30
786  \put(0,0){\line(5,-2){140}}%
787  \putratom{150}{-86}{\@memberb}%    % right type
788  \else\if\@tmpc A%(A) alpha
789  \yl@xdiff=-10
790  \yl@ydiff=30
791  \putratom{150}{26}{\@memberb}%     % right type

792 {%

793  \thicklines%
794  \put(0,0){\line(5,2){140}}%        % endo (a)

795 }%

796  \else\if\@tmpc B%(B) beta
797  \yl@xdiff=0
798  \yl@ydiff=40
799  \putratom{140}{-145}{\@memberb}%   % right type
800  \@ifundefined{dottedline}{%
801  \put(0,0){\line(4,-3){140}}%       % exo (b)
802  }{{\thicklines%
803  \dottedline{20}(0,0)(140,-105)}}%
804  \else\if\@tmpc a%(a) alpha
805  \yl@xdiff=0
806  \yl@ydiff=40
807  \put(0,0){\line(4,-3){140}}%       % endo (a)
808  \putratom{140}{-145}{\@memberb}%   % right type
809  \else\if\@tmpc b%(b) beta
810  \yl@xdiff=-10
811  \yl@ydiff=30
812  \put(0,0){\line(5,2){140}}%        % exo (b)
813  \putratom{150}{26}{\@memberb}%     % right type
814  \fi\fi\fi\fi\fi
815 \else \if\@tmpb D%double bond
816  \yl@xdiff=10
817  \yl@ydiff=50
818  \put(10,15){\line(5,-2){160}}%
819  \put(5,-15){\line(5,-2){160}}%
820  \putratom{170}{-124}{\@memberb}%   % right type
821 \else \if\@tmpb A%alpha single bond
822  \yl@xdiff=-10
823  \yl@ydiff=30
824  \putratom{150}{-86}{\@memberb}%    % right type

825 {%

826  \thicklines%
827  \put(0,0){\line(5,-2){140}}%       % endo (a)

828 }%

829 \else \if\@tmpb B%beta single bond
830  \yl@xdiff=-10
831  \yl@ydiff=30
832  \putratom{150}{-86}{\@memberb}%    % right type
833  \@ifundefined{dottedline}{%
834  \put(0,0){\line(5,-2){140}}%       % exo (b)

835  }{{\thicklines%
836  \dottedline{20}(0,0)(140,-56)}}%
837 \else%
838  \yl@xdiff=-10
839  \yl@ydiff=20
840  \put(0,0){\line(5,2){160}}%
841  \putratom{170}{44}{\@memberb}%     % right type
842 \fi\fi\fi\fi%
843 \end{picture}}%
\@bornd
844 % %%%%%%%%%%%%%%%
845 % % subst. on 4 %
846 % %%%%%%%%%%%%%%%
847 \def\@bornd{%
848 \if\@tmpb S%single bond
849  \ifx\@tmpc\empty%
850  \yl@xdiff=30
851  \yl@ydiff=87
852  \put(237,47){\line(-2,-5){40}}%      % single bond 4
853  \putlratom{167}{-140}{\@memberb}%    % left & right type
854  \else\if\@tmpc a%(a) alpha
855  \yl@xdiff=30
856  \yl@ydiff=87
857  \put(237,47){\line(-2,-5){40}}%      % single bond 4
858  \putlratom{167}{-140}{\@memberb}%    % left & right type
859  \else\if\@tmpc b%(b) beta
860  \yl@xdiff=30
861  \yl@ydiff=87
862  \put(237,47){\line(-2,-5){40}}%      % single bond 4
863  \putlratom{167}{-140}{\@memberb}%    % left & right type
864  \fi\fi\fi%
865 \else%
866  \yl@xdiff=30
867  \yl@ydiff=87
868  \put(237,47){\line(-2,-5){40}}%      % single bond 4
869  \putlratom{167}{-140}{\@memberb}%    % left & right type
870 \fi}%
\@borne
871 % %%%%%%%%%%%%%%%
872 % % subst. on 5 %
873 % %%%%%%%%%%%%%%%
874 \def\@borne{%
875 \begin{picture}(200,200)(0,0)
876 \if\@tmpb S%single bond
877  \ifx\@tmpc\empty%
878  \yl@xdiff=10
879  \yl@ydiff=30
880  \put(0,0){\line(-5,-2){140}}%

881  \putlatom{-150}{-86}{\@memberb}%    % left type
882  \else\if\@tmpc A%(A) alpha
883  \yl@xdiff=10
884  \yl@ydiff=30
885  \putlatom{-150}{26}{\@memberb}%     % left type

886 {%

887  \thicklines%
888  \put(0,0){\line(-5,2){140}}%        % endo (a)

889 }%

890  \else\if\@tmpc B%(B) beta
891  \yl@xdiff=0
892  \yl@ydiff=40
893  \putlatom{-140}{-145}{\@memberb}%   % left type
894  \@ifundefined{dottedline}{%
895  \put(0,0){\line(-4,-3){140}}%       % exo (b)
896  }{{\thicklines%
897  \dottedline{20}(0,0)(-140,-105)}}%
898  \else\if\@tmpc a%(a) alpha
899  \yl@xdiff=0
900  \yl@ydiff=30
901  \put(0,0){\line(-4,-3){140}}%       % endo (a)
902  \putlatom{-140}{-145}{\@memberb}%   % left type
903  \else\if\@tmpc b%(b) beta
904  \yl@xdiff=10
905  \yl@ydiff=30
906  \put(0,0){\line(-5,2){140}}%        % exo (b)
907  \putlatom{-150}{26}{\@memberb}%     % left type
908  \fi\fi\fi\fi\fi
909 \else \if\@tmpb D%double bond
910  \yl@xdiff=0
911  \yl@ydiff=64
912  \put(-10,15){\line(-5,-2){160}}%
913  \put(-5,-15){\line(-5,-2){160}}%
914  \putlatom{-170}{-124}{\@memberb}%   % left type
915 \else \if\@tmpb A%alpha single bond
916  \yl@xdiff=10
917  \yl@ydiff=30
918  \putlatom{-150}{-86}{\@memberb}%    % left type

919 {%

920  \thicklines%
921  \put(0,0){\line(-5,-2){140}}%       % endo (a)

922 }%

923 \else \if\@tmpb B%beta single bond
924  \yl@xdiff=10
925  \yl@ydiff=30
926  \putlatom{-150}{-86}{\@memberb}%    % left type
927  \@ifundefined{dottedline}{%
928  \put(0,0){\line(-5,-2){140}}%       % exo (b)
929  }{{\thicklines%
930  \dottedline{20}(0,0)(-140,-56)}}%

931 \else%
932  \yl@xdiff=10
933  \yl@ydiff=20
934  \put(0,0){\line(-5,2){160}}%
935  \putlatom{-170}{44}{\@memberb}%     % left type
936 \fi\fi\fi\fi%
937 \end{picture}}%
\@bornf
938 % %%%%%%%%%%%%%%%
939 % % subst. on 6 %
940 % %%%%%%%%%%%%%%%
941 \def\@bornf{%
942 \begin{picture}(200,200)(0,0)
943 \if\@tmpb S%single bond
944  \ifx\@tmpc\empty%
945  \yl@xdiff=10
946  \yl@ydiff=30
947  \put(0,0){\line(-5,2){160}}%
948  \putlatom{-170}{44}{\@memberb}%      % left type
949  \else\if\@tmpc A%(A) alpha
950  \yl@xdiff=10
951  \yl@ydiff=-10
952  \putlatom{-140}{115}{\@memberb}%     % left type

953 {%

954  \thicklines%
955  \put(0,0){\line(-4,3){140}}%         % endo (a)

956 }%

957  \else\if\@tmpc B%(B) beta
958  \yl@xdiff=0
959  \yl@ydiff=30
960  \putlatom{-150}{-86}{\@memberb}%     % left type
961  \@ifundefined{dottedline}{%
962  \put(0,0){\line(-5,-2){140}}%        % exo (b)
963  }{{\thicklines%
964  \dottedline{20}(0,0)(-140,-56)}}%
965  \else\if\@tmpc a%(a) alpha
966  \yl@xdiff=10
967  \yl@ydiff=30
968  \put(0,0){\line(-5,-2){140}}%        % endo (a)
969  \putlatom{-150}{-86}{\@memberb}%     % left type
970  \else\if\@tmpc b%(b) beta
971  \yl@xdiff=0
972  \yl@ydiff=-10
973  \put(0,0){\line(-4,3){140}}%         % exo (b)
974  \putlatom{-140}{115}{\@memberb}%     % left type
975  \fi\fi\fi\fi\fi%
976 \else \if\@tmpb D%double bond
977  \yl@xdiff=0
978  \yl@ydiff=20

 979  \put(10,-15){\line(-5,2){160}}%
 980  \put(5,15){\line(-5,2){160}}%
 981  \putlatom{-170}{44}{\@memberb}%      % left type
 982 \else \if\@tmpb A%alpha single bond
 983  \yl@xdiff=10
 984  \yl@ydiff=30
 985  \putlatom{-170}{44}{\@memberb}%      % left type

986 {%

 987  \thicklines%
 988  \put(0,0){\line(-5,2){160}}%

989 }%

 990 \else \if\@tmpb B%beta single bond
 991  \yl@xdiff=10
 992  \yl@ydiff=30
 993  \putlatom{-170}{44}{\@memberb}%      % left type
 994  \@ifundefined{dottedline}{%
 995  \put(0,0){\line(-5,2){160}}%
 996  }{{\thicklines%
 997  \dottedline{20}(0,0)(-160,64)}}%
 998 \else%
 999  \yl@xdiff=10
1000  \yl@ydiff=20
1001  \put(0,0){\line(-5,2){160}}%
1002  \putlatom{-170}{44}{\@memberb}%      % left type
1003 \fi\fi\fi\fi\end{picture}}%
\@borng
1004 % %%%%%%%%%%%%%%%
1005 % % subst. on 7 %
1006 % %%%%%%%%%%%%%%%
1007 \def\@borng{%
1008 \begin{picture}(200,200)(0,0)
1009 \if\@tmpb S%single bond
1010  \ifx\@tmpc\empty%
1011  \yl@xdiff=40
1012  \yl@ydiff=-20
1013  \put(0,0){\line(0,1){160}}%
1014  \putlratom{-40}{180}{\@memberb}%      % left & right type
1015  \else\if\@tmpc a%(a) left
1016  \yl@xdiff=0
1017  \yl@ydiff=-10
1018  \put(0,0){\line(-4,3){140}}%          % left (a)
1019  \putlatom{-140}{115}{\@memberb}%      % left type
1020  \else\if\@tmpc b%(b) right
1021  \yl@xdiff=0
1022  \yl@ydiff=-10
1023  \put(0,0){\line(4,3){140}}%           % right (b)
1024  \putratom{140}{115}{\@memberb}%       % right type
1025  \fi\fi\fi%\fi\fi%
1026 \else \if\@tmpb D%double bond

1027  \yl@xdiff=40
1028  \yl@ydiff=-20
1029  \put(-10,0){\line(0,1){160}}%
1030  \put(10,0){\line(0,1){160}}%
1031  \putlratom{-40}{180}{\@memberb}%      % left & right type
1032 \else%
1033  \yl@xdiff=40
1034  \yl@ydiff=-20
1035  \put(0,0){\line(0,1){160}}%
1036  \putlratom{-40}{180}{\@memberb}%      % left & right type
1037 \fi\fi\end{picture}}%

6.3.2 Drawing of borane derivatives

The stereo-type skeleton of bicycloheptanes is selected to have the following locant numbers.

   ***********************************************
   * bornane derivatives                         *
   * (bicycloe[2.2.1]heptane derivatives)        *
   ***********************************************
   The following numbering is adopted in this macro.
                  7   g
             f    / `
              _/ - 1_a
       e    6  / h     - 2
         *    /        *
       5  -  4       * b
          d     c` 3

The macro \bornane has an argument SUBSLIST as well as an optional argument BONDLIST.

     \bornane[BONDLIST]{SUBSLIST}

The BONDLIST argument contains one or more characters selected from a to h, each of which indicates the presence of an inner (endcyclic) double bond on the corresponding position.

       BONDLIST =
             none       :  bicyclo[2.2.1]heptane
             a          :  1,2-double bond
             b          :  2,3-double bond
             c          :  4,3-double bond

d          :  4,5-double bond
e          :  5,6-double bond
f          :  6,1-double bond
g          :  1,7-double bond
h          :  4,7-double bond

The SUBSLIST argument takes the standard format of XΥMTEX, in which more substitution descriptors are separated from each other by a semicolon.

SUBSLIST: list of substituents (max 7 substitution positions)
for n = 1 to 6
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 single bond at n-atom
nSb        :  beta single bond at n-atom

The 7-position of a bornane skeleton cannot be specified by capital characters ‘A’ and ‘B’.

for n = 7 (bridge position)
nD         :  exocyclic double bond at 7-atom
n or nS    :  exocyclic single bond at 7-atom
nSa        :  left single bond at 7-atom
nSb        :  right single bond at 7-atom

Several examples are shown as follows.

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

The definition of \@bicycloheph uses a picture environment, in which bonds are put directly, while subsituents are typset by using the macro \@borna to \@borng defined in chemstr.sty of XΥMTEX system.

\@bornane \bornane

1039 \def\bornane{\@ifnextchar[{\@bornane}{\@bornane[r]}}
1040 \def\@bornane[#1]#2{%
1041 \@reset@ylsw%
1042 \ylbornaneposition{#2}%
1043 \def\@@ylii{0}\def\@@yli{0}%
1044 \if@ylsw
1045 \yl@shiftii=\@ylii
1046 \yl@shifti=\@yli
1047 \advance\yl@shiftii\@@ylii
1048 \advance\yl@shifti\@@yli
1049 \advance\yl@shiftii\yl@xdiff
1050 \advance\yl@shifti\yl@ydiff
1051 \begin{picture}(0,0)(-\yl@shiftii,-\yl@shifti)
1052 \else
1053 % \begin{picture}(1400,1000)(-200,-240)
1054 \begin{picture}(1000,1000)(-200,-240)%changed by SF 1998/09/26
1055 \iforigpt \put(-200,-240){\circle*{50}}%
1056  \put(0,0){\circle{50}}%
1057 \typeout{command `bornane' origin: (0,0) ---> (200,240)}
1058 \fi%

1059 \fi

1060 % skeletal bonds
1061 \thicklines%
1062 \put(0,0){\line(5,1){237}}%            % bond 5 to 4 (d)
1063 \put(237,47){\line(5,-2){225}}%        % bond 4 to 3 (c)
1064 \put(237,47){\line(0,1){400}}%         % front part of bridge (h)
1065 \thinlines%
1066 \put(462,-43){\line(2,5){80}}%         % bond 3 to 2 (b)
1067 \put(543,157){\line(-5,2){225}}%       % bond 2 to 1 (a)
1068 \put(318,247){\line(-5,-1){237}}%      % bond 1 to 6 (f)
1069 \put(80,200){\line(-2,-5){80}}%        % bond 6 to 5 (e)
1070 \put(318,247){\line(-2,5){80}}%        % back part of bridge (g)
1071 % inner double bond
1072 \@tfor\member:=#1\do{%
1073 \if\member r%no endcyclic bonds
1074 \else \if\member a%%%%
1075 \put(513,127){\line(-5,2){180}}%       % bond 2 to 1
1076 \else \if\member b%%%%
1077 \put(446,-3){\line(2,5){60}}%          % bond 3 to 2
1078 \else \if\member c%%%%
1079 \put(267,77){\line(5,-2){180}}%        % bond 4 to 3
1080 \else \if\member d%%%%
1081 \put(40,42){\line(5,1){180}}%          % double bond 5 to 4
1082 \else \if\member e%%%
1083 \put(100,180){\line(-2,-5){60}}%       % bond 6 to 5
1084 \else \if\member f%
1085 \put(288,207){\line(-5,-1){180}}%      % bond 1 to 6
1086 \else \if\member g%
1087 \put(288,260){\line(-2,5){40}}%         % back part of bridge (g)

1088 \else \if\member h%
1089 \put(257,77){\line(0,1){290}}%          % front part of bridge (h)
1090 \fi\fi\fi\fi\fi\fi\fi\fi\fi}%

1091 %

1092 \@forsemicol\member:=#2\do{%
1093 \ifx\member\empty\else
1094 \expandafter\@m@mb@r\member;\relax%
1095 \expandafter\threech@r\@membera{}{}%
1096 \ifx\@memberb\@yl\else
1097 \ifcase\@tmpa%0 omit
1098 \or \@borna% subst. on 1
1099 \or \put(543,157){\@bornb}% subst. on 2
1100 \or \put(462,-43){\@bornc}% subst. on 3
1101 \or \@bornd% subst. on 4
1102 \or \put(0,0){\@borne}% subst. on 5
1103 \or \put(80,200){\@bornf}% subst. on 6
1104 \or \put(237,440){\@borng}% subst. on 7
1105 \fi%end of ifcase
1106 \fi\fi%
1107 }\end{picture}\iniatom\iniflag}     %end of \bornane macro

The command \ylbornaneposition is to obtain the shift values \@ylii and \@yli which are used for shifting the standard point of a substituent.

\ylbornaneposition
1108 \def\ylbornaneposition#1{%
1109 \@@ylswfalse%%%\@reset@ylsw
1110 \@forsemicol\member:=#1\do{%
1111 \if@@ylsw\else
1112 \ifx\member\empty\else
1113 \expandafter\@m@mb@r\member;\relax
1114 \expandafter\threech@r\@membera{}{}\relax
1115 \ifx\@memberb\@yl\relax\@@ylswtrue\else\@@ylswfalse\fi
1116 \if@@ylsw
1117 \ifcase\@tmpa%0 omit
1118 \or\gdef\@ylii{-318}\gdef\@yli{-247}\global\@ylswtrue% subst. on 1
1119 \or\gdef\@ylii{-543}\gdef\@yli{-157}\global\@ylswtrue% subst. on 2
1120 \or\gdef\@ylii{-462}\gdef\@yli{43}\global\@ylswtrue% subst. on 3
1121 \or\gdef\@ylii{-237}\gdef\@yli{-47}\global\@ylswtrue% subst. on 4
1122 \or\gdef\@ylii{0}\gdef\@yli{0}\global\@ylswtrue% subst. on 5
1123 \or\gdef\@ylii{-80}\gdef\@yli{-200}\global\@ylswtrue% subst. on 6
1124 \or\gdef\@ylii{-237}\gdef\@yli{-440}\global\@ylswtrue% subst. on 7
1125 \fi%end of ifcase
1126 \fi\fi\fi}}%

7 Adamantanes

7.1 Vertical drawing

The macros \@adamanea to \@adamanej are used to set substituents on each edge of an adamantane skeleton drawn by the \adamantane commands.

\@adamanea
\@adamaneb
\@adamanec
\@adamaned
\@adamanee
\@adamanef
\@adamaneg
\@adamaneh
\@adamanei
\@adamanej

1127 % %%%%%%%%%%%%%%%
1128 % % subst. on 1 %
1129 % %%%%%%%%%%%%%%%
1130 \def\@adamanea{%
1131  \yl@xdiff=12
1132  \yl@ydiff=21
1133 \put(-360,720){\hbox to0pt{\hss \@memberb}}%     %atom 1
1134 \if\@tmpb a%
1135 \put(-240,660){\line(-4,3){108}}%                %bond 1
1136 \else \ifx\@tmpb\empty%
1137 \put(-240,660){\line(-4,3){108}}%                %bond 1
1138 \fi\fi}%
1139 % %%%%%%%%%%%%%%%
1140 % % subst. on 2 %
1141 % %%%%%%%%%%%%%%%
1142 \def\@adamaneb{%
1143 \if\@tmpb a%
1144  \yl@xdiff=6
1145  \yl@ydiff=-16
1146 \put(0,780){\line(1,4){26}}%                     %bond 2-ax
1147 \put(20,900){\hbox to0pt{\@memberb \hss}}%       %atom 2-ax
1148 \else \if\@tmpb b%
1149  \yl@xdiff=-6
1150  \yl@ydiff=-16
1151 \put(0,780){\line(-1,4){26}}%                    %bond 2-eq
1152 \put(-20,900){\hbox to0pt{\hss \@memberb}}%      %atom 2-eq
1153 \else \ifx\@tmpb\empty%
1154  \yl@xdiff=42
1155  \yl@ydiff=-22
1156 \put(-42,910){\hbox to0pt{\hss \@memberb}}%      %atom 2
1157 \put(0,780){\line(0,1){108}}%                    %bond 2
1158 \else \if\@tmpb D%
1159  \yl@xdiff=42
1160  \yl@ydiff=-22
1161 \putlratom{-42}{910}{\@memberb}%                 %atom 2
1162 \put(-12,780){\line(0,1){108}}%                  %double bond 2
1163 \put(12,780){\line(0,1){108}}%                   %double bond 2
1164 \fi\fi\fi\fi}
1165 % %%%%%%%%%%%%%%%
1166 % % subst. on 3 %
1167 % %%%%%%%%%%%%%%%

1168 \def\@adamanec{%
1169  \yl@xdiff=-12
1170  \yl@ydiff=21
1171 \put(360,720){\hbox to0pt{\@memberb \hss}}%      %atom 3
1172 %  \if\@tmpb S%
1173 \if\@tmpb a%1998/10/24 by SF
1174 \put(240,660){\line(4,3){108}}%                  %bond 3
1175 \else \ifx\@tmpb\empty%
1176 \put(240,660){\line(4,3){108}}%                  %bond 3
1177 \fi\fi}
1178 % %%%%%%%%%%%%%%%
1179 % % subst. on 4 %
1180 % %%%%%%%%%%%%%%%
1181 \def\@adamaned{%
1182 \if\@tmpb a%
1183  \yl@xdiff=-17
1184  \yl@ydiff=33
1185 \put(300,420){\line(4,-3){103}}%                 %bond 4-ax
1186 \put(420,310){\hbox to0pt{\@memberb \hss}}%      %atom 4-ax
1187 \else \if\@tmpb b%
1188  \yl@xdiff=26
1189  \yl@ydiff=-26
1190 \put(300,420){\line(1,4){26}}%                   %bond 4-eq
1191 \put(300,540){\hbox to0pt{\@memberb \hss}}%      %atom 4-eq
1192 \else \ifx\@tmpb\empty%
1193  \yl@xdiff=-17
1194  \yl@ydiff=33
1195 \put(300,420){\line(4,-3){103}}%                 %bond 4
1196 \put(420,310){\hbox to0pt{\@memberb \hss}}%      %atom 4
1197 \else \if\@tmpb D%
1198  \yl@xdiff=-17
1199  \yl@ydiff=33
1200 \put(296,432){\line(5,-3){103}}%                 %double bond 4
1201 \put(292,408){\line(5,-3){103}}%                 %double bond 4
1202 \put(420,310){\hbox to0pt{\@memberb \hss}}%      %atom 4
1203 \fi\fi\fi\fi}
1204 % %%%%%%%%%%%%%%%
1205 % % subst. on 5 %
1206 % %%%%%%%%%%%%%%%
1207 \def\@adamanee{%
1208  \yl@xdiff=20
1209  \yl@ydiff=110
1210 %  \if\@tmpb S%
1211 \if\@tmpb a%1998/10/24 by SF
1212 \put(60,240){\line(1,-5){30}}%                   %bond 5
1213 \put(70,-20){\hbox to0pt{\@memberb  \hss}}%      %atom 5
1214 \else \ifx\@tmpb\empty%
1215 \put(60,240){\line(1,-5){30}}%                   %bond 5
1216 \put(70,-20){\hbox to0pt{\@memberb  \hss}}%      %atom 5

1217 \fi\fi}
1218 % %%%%%%%%%%%%%%%
1219 % % subst. on 6 %
1220 % %%%%%%%%%%%%%%%
1221 \def\@adamanef{%
1222 \if\@tmpb a%
1223  \yl@xdiff=33
1224  \yl@ydiff=103
1225 \put(0,0){\line(4,-3){103}}%                     %bond 6-ax
1226 \put(70,-180){\hbox to0pt{\@memberb \hss}}%      %atom 6-ax
1227 \else \if\@tmpb b%
1228  \yl@xdiff=-33
1229  \yl@ydiff=103
1230 \put(0,0){\line(-4,-3){103}}%                    %bond 6-eq
1231 \put(-70,-180){\hbox to0pt{\hss \@memberb}}%     %atom 6-eq
1232 \else \ifx\@tmpb\empty%
1233  \yl@xdiff=22
1234  \yl@ydiff=94
1235 \put(0,0){\line(0,-1){108}}%                     %bond 6
1236 \put(-22,-202){\hbox to0pt{\hss \@memberb}}%     %atom 6
1237 \else \if\@tmpb D%
1238  \yl@xdiff=42
1239  \yl@ydiff=94
1240 \put(-12,0){\line(0,-1){108}}%                   %double bond 6
1241 \put(12,0){\line(0,-1){108}}%                    %double bond 6
1242 \putlratom{-42}{-202}{\@memberb}%                %atom 6
1243 \fi\fi\fi\fi}
1244 % %%%%%%%%%%%%%%%
1245 % % subst. on 7 %
1246 % %%%%%%%%%%%%%%%
1247 \def\@adamaneg{%
1248  \yl@xdiff=-20
1249  \yl@ydiff=110
1250 %  \if\@tmpb S%
1251 \if\@tmpb a%1998/10/24 by SF
1252 \put(-60,240){\line(-1,-5){30}}%                 %bond 7
1253 \put(-70,-20){\hbox to0pt{\hss \@memberb}}%      %atom 7
1254 \else \ifx\@tmpb\empty%
1255 \put(-60,240){\line(-1,-5){30}}%                 %bond 7
1256 \put(-70,-20){\hbox to0pt{\hss \@memberb}}%      %atom 7-eq
1257 \fi\fi}
1258 % %%%%%%%%%%%%%%%
1259 % % subst. on 8 %
1260 % %%%%%%%%%%%%%%%
1261 \def\@adamaneh{%
1262 \if\@tmpb a%
1263  \yl@xdiff=17
1264  \yl@ydiff=33
1265 \put(-300,420){\line(-4,-3){103}}%               %bond 8-ax

1266 \put(-420,310){\hbox to0pt{\hss \@memberb}}%     %atom 8-ax
1267 \else \if\@tmpb b%
1268  \yl@xdiff=-26
1269  \yl@ydiff=-16
1270 \put(-300,420){\line(-1,4){26}}%                 %bond 8-eq
1271 \put(-300,540){\hbox to0pt{\hss \@memberb}}%     %atom 8-eq
1272 \else \ifx\@tmpb\empty%
1273  \yl@xdiff=17
1274  \yl@ydiff=33
1275 \put(-300,420){\line(-4,-3){103}}%               %bond 8
1276 \put(-420,310){\hbox to0pt{\hss \@memberb}}%     %atom 8
1277 \else \if\@tmpb D%
1278  \yl@xdiff=17
1279  \yl@ydiff=50
1280 \put(-300,432){\line(-5,-3){103}}%               %double bond 8
1281 \put(-303,408){\line(-5,-3){103}}%               %double bond 8
1282 \put(-420,310){\hbox to0pt{\hss \@memberb}}%     %atom 8
1283 \fi\fi\fi\fi}
1284 % %%%%%%%%%%%%%%%
1285 % % subst. on 9 %
1286 % %%%%%%%%%%%%%%%
1287 \def\@adamanei{%
1288 \if\@tmpb a%
1289  \yl@xdiff=-43
1290  \yl@ydiff=93
1291 \put(-180,420){\line(-4,-3){103}}%               %bond 9-ax
1292 \put(-240,250){\hbox to0pt{\hss \@memberb}}%     %atom 9-ax
1293 \else \if\@tmpb b%
1294  \yl@xdiff=26
1295  \yl@ydiff=-16
1296 \put(-180,420){\line(1,4){26}}%                  %bond 9-eq
1297 \put(-180,540){\hbox to0pt{\@memberb \hss}}%     %atom 9-eq
1298 \else \ifx\@tmpb\empty%
1299  \yl@xdiff=17
1300  \yl@ydiff=93
1301 \put(-180,420){\line(-4,-3){103}}%               %bond 9
1302 \put(-300,250){\hbox to0pt{\hss \@memberb}}%     %atom 9
1303 \else \if\@tmpb D%
1304  \yl@xdiff=17
1305  \yl@ydiff=113
1306 \put(-183,432){\line(-5,-3){103}}%               %double bond 9
1307 \put(-180,408){\line(-5,-3){103}}%               %double bond 9
1308 \put(-300,250){\hbox to0pt{\hss \@memberb}}%     %atom 9
1309 \fi\fi\fi\fi}
1310 % %%%%%%%%%%%%%%%%
1311 % % subst. on 10 %
1312 % %%%%%%%%%%%%%%%%
1313 \def\@adamanej{%
1314 \if\@tmpb a%

1315  \yl@xdiff=43
1316  \yl@ydiff=92
1317 \put(180,420){\line(4,-3){103}}%                 %bond 10-ax
1318 \put(240,250){\hbox to0pt{\@memberb  \hss}}%     %atom 10-ax
1319 \else \if\@tmpb b%
1320  \yl@xdiff=-26
1321  \yl@ydiff=-16
1322 \put(180,420){\line(-1,4){26}}%                  %bond 10-eq
1323 \put(180,540){\hbox to0pt{\hss \@memberb}}%      %atom 10-eq
1324 \else \ifx\@tmpb\empty%
1325  \yl@xdiff=43
1326  \yl@ydiff=92
1327 \put(180,420){\line(4,-3){103}}%                %bond 10
1328 \put(240,250){\hbox to0pt{\@memberb \hss}}%     %atom 10
1329 \else \if\@tmpb D%
1330  \yl@xdiff=3
1331  \yl@ydiff=112
1332 \put(176,432){\line(5,-3){103}}%                %double bond 10
1333 \put(172,408){\line(5,-3){103}}%                %double bond 10
1334 \put(280,250){\hbox to0pt{\@memberb \hss}}%     %atom 10
1335 \fi\fi\fi\fi}

The stereo-type skeleton of adamantane is selected to have the following specification. The \adamantane command prints a vertical-type formula in which two bridge carbons are placed at the top and the bottom.

   *************************************************
   * For preparing adamantane derivatives          *
   *   with 4 substituents on bridgehead positions *
   *         (1, 3, 5 and 7)                       *
   *   with 12 substituents on bridge positions    *
   *         (2, 4, 6, 8, 9, 10)                   *
   *************************************************

The macro \adamantane has an argument SUBSLIST as well as an optional argument BONDLIST.

     \adamantane[BONDLIST]{SUBSLIST}

The adamantane skeleton scarcely takes an inner (endcyclic) double bond. Hence we have

       BONDLIST: not effective

The SUBSLIST argument takes the standard format of XΥMTEX, in which more substitution descriptors are separated from each other by a semicolon.

       SUBSLIST: list of substituents (max 10 substitution positions)
         for n = 1, 3, 5, and 7 (bridgeheads)
             n or na    :  exocyclic single bond at n-atom
         for n = 2, 4, 6, 8, 9, and 10 (bridges)
             na         :  exocyclic single bond at n-atom (axial)
             nb         :  exocyclic single bond at n-atom (equatorial)
             nD         :  exocyclic double bond at n-atom (2 and 6)

For numbers larger than 9 (two digits), you should designate the SUBSLIST as, e.g.,

               {{10}a}==Cl; ...

The definition of \@adamantane uses a picture environment, in which both bonds are substituents are put directly.

\@adamantane
\adamantane
1336 % \changes{v1.02}{1998/10/24}{The macros \cs{@adamanea} to \cs{@adamanej}
1337 % are separated from the original definition of \cs{adamantane}.}
1338 \def\adamantane{\@ifnextchar[{\@mantane}{\@damantane[Z]}}
1339 \def\@damantane[#1]#2{%
1340 \@reset@ylsw%
1341 \yladamanposition{#2}%
1342 \def\@@ylii{0}\def\@@yli{0}%
1343 \if@ylsw
1344 \yl@shiftii=\@ylii
1345 \yl@shifti=\@yli
1346 \advance\yl@shiftii\@@ylii
1347 \advance\yl@shifti\@@yli
1348 \advance\yl@shiftii\yl@xdiff
1349 \advance\yl@shifti\yl@ydiff
1350 \begin{picture}(0,0)(-\yl@shiftii,-\yl@shifti)
1351 \else
1352 \begin{picture}(1100,1300)(-550,-300)
1353 \iforigpt \put(-550,-300){\circle*{50}}%
1354  \put(0,0){\circle{50}}%
1355 \typeout{command `adamantane' origin: (0,0) ---> (550,300)}
1356 \fi%

1357 \fi

1358 %bonds for an adamantane skeleton
1359 \put(0,0){\line(-1,4){60}}%                      %bond 6-7
1360 \put(0,780){\line(2,-1){240}}%                   %bond 2-3
1361 \put(0,780){\line(-2,-1){240}}%                  %bond 2-1

1362 \put(-60,240){\line(-4,3){240}}%                 %bond 7-8
1363 \put(-300,420){\line(1,4){60}}%                  %bond 8-1
1364 \put(240,660){\line(-1,-4){60}}%                 %bond 3-10
1365 \put(-60,240){\line(4,3){240}}%                  %bond 10-7
1366 {\thicklines%
1367 \put(300,420){\line(-1,4){60}}%                  %bond 4-3
1368 \put(-240,660){\line(1,-4){60}}%                 %bond 1-9
1369 \put(0,0){\line(1,4){60}}%                       %bond 6-5
1370 \put(60,240){\line(4,3){240}}%                   %bond 5-4
1371 \put(60,240){\line(-4,3){240}}%                  %bond 5-9

1372 }%

1373 %substituents
1374 \@forsemicol\member:=#2\do{%
1375 \ifx\member\empty\else
1376 \expandafter\@m@mb@r\member;\relax%
1377 \expandafter\threech@r\@membera{}{}\relax%
1378 \ifx\@memberb\@yl\else
1379 \ifcase\@tmpa%0 omit
1380 \or\@adamanea% subst. on 1
1381 \or\@adamaneb% subst. on 2
1382 \or\@adamanec% subst. on 3
1383 \or\@adamaned% subst. on 4
1384 \or\@adamanee% subst. on 5
1385 \or\@adamanef% subst. on 6
1386 \or\@adamaneg% subst. on 7
1387 \or\@adamaneh% subst. on 8
1388 \or\@adamanei% subst. on 9
1389 \or\@adamanej% subst. on 10
1390 \fi%the end of ifcase
1391 \fi\fi}%
1392 \end{picture}}                          %end of \adamantane macro%

The command \yladamanposition is to obtain the shift values \@ylii and \@yli which are used for shifting the standard point of a substituent.

\yladamanposition
1393 \def\yladamanposition#1{%
1394 \@@ylswfalse%%%\@reset@ylsw
1395 \@forsemicol\member:=#1\do{%
1396 \if@@ylsw\else
1397 \ifx\member\empty\else
1398 \expandafter\@m@mb@r\member;\relax
1399 \expandafter\threech@r\@membera{}{}\relax
1400 \ifx\@memberb\@yl\relax\@@ylswtrue\else\@@ylswfalse\fi
1401 \if@@ylsw
1402 \ifcase\@tmpa%0 omit
1403 \or\gdef\@ylii{240}\gdef\@yli{-660}\global\@ylswtrue% subst. on 1
1404 \or\gdef\@ylii{0}\gdef\@yli{-780}\global\@ylswtrue% subst. on 2
1405 \or\gdef\@ylii{-240}\gdef\@yli{-660}\global\@ylswtrue% subst. on 3
1406 \or\gdef\@ylii{-300}\gdef\@yli{-420}\global\@ylswtrue% subst. on 4

1407 \or\gdef\@ylii{-60}\gdef\@yli{-240}\global\@ylswtrue% subst. on 5
1408 \or\gdef\@ylii{0}\gdef\@yli{0}\global\@ylswtrue% subst. on 6
1409 \or\gdef\@ylii{60}\gdef\@yli{-240}\global\@ylswtrue% subst. on 7
1410 \or\gdef\@ylii{300}\gdef\@yli{-420}\global\@ylswtrue% subst. on 8
1411 \or\gdef\@ylii{180}\gdef\@yli{-420}\global\@ylswtrue% subst. on 9
1412 \or\gdef\@ylii{-180}\gdef\@yli{-420}\global\@ylswtrue% subst. on 10
1413 \fi%end of ifcase
1414 \fi\fi\fi}}%

7.2 Horizontal drawing

The stereo-type skeleton of adamantane is selected to have the following specification. The \hadamantane command prints a horizontal-type formula in which one bridge-head carbon is put at the top position and a chair-form cyclohexane moiety is placed at the bottom position.

********************************************
* adamantane derivatives (horizontal type) *
********************************************
The following numbering is adopted in this macro.
               1
          h //   `
          //i      ` a
         89          `
        g||            2
         ||j           | b
      f  7|   l     k  3
      *   |   ` 10  *
    6  *  5        * c
       e    d`  4

*************************************************
* For preparing adamantane derivatives          *
*   with 4 substituents on bridgehead positions *
*         (1, 3, 5 and 7)                       *
*   with 12 substituents on bridge positions    *
*         (2, 4, 6, 8, 9, 10)                   *
*************************************************

The macro \hadamantane has an argument SUBSLIST as well as an optional argument BONDLIST.

  \hadamantane[BONDLIST]{SUBSLIST}

The adamantane skeleton scarcely takes an inner (endcyclic) double bond. However, we can designate BONDLIST. (This point is different from the specification of the \adamantane command.

none       :  adamantane skeleton
a          :  1,2-double bond
b          :  2,3-double bond
c          :  3,4-double bond
d          :  4,5-double bond
e          :  5,6-double bond
f          :  6,7-double bond
g          :  7,8-double bond
h          :  8,1-double bond
i          :  9,1-double bond
j          :  5,9-double bond
k          :  3,10-double bond
l          :  7,10-double bond

The SUBSLIST argument takes the standard format of XΥMTEX, in which more substitution descriptors are separated from each other by a semicolon.

SUBSLIST: list of substituents (max 10 substitution positions)
for n = 1, 3, 5, and 7 (bridgeheads)
n or na    :  exocyclic single bond at n-atom
for n = 2, 4, 6, 8, 9, and 10 (bridges)
na         :  exocyclic single bond at n-atom (axial)
nb         :  exocyclic single bond at n-atom (equatorial)
nD         :  exocyclic double bond at n-atom (2 and 6)

Moreover, bond modifieer used for chair-form cyclohexanes such as nSa and nSe (see above) can be also used in the SUBSLIST of the \hdadamantane command.

For numbers larger than 9 (two digits), you should designate the SUBSLIST as, e.g.,

  {{10}a}==Cl; ...

The definition of \@hadamantane uses a picture environment, in which bonds are put directly, while subsituents are typset by using the macro \@chairiI to \@chairX defined below.

\@hadamantane
\hadamantane

1415 % *************************
1416 % * input of basic macros *
1417 % *************************
1418 \def\hadamantane{\@ifnextchar[{\@hadamantane}{\@hadamantane[H]}}
1419 \def\@hadamantane[#1]#2{%
1420 \@reset@ylsw%
1421 \ylhadamanposition{#2}%
1422 \def\@@ylii{0}\def\@@yli{0}%
1423 \if@ylsw
1424 \yl@shiftii=\@ylii
1425 \yl@shifti=\@yli
1426 \advance\yl@shiftii\@@ylii
1427 \advance\yl@shifti\@@yli
1428 \advance\yl@shiftii\yl@xdiff
1429 \advance\yl@shifti\yl@ydiff
1430 \begin{picture}(0,0)(-\yl@shiftii,-\yl@shifti)
1431 \else
1432 \begin{picture}(1600,1400)(-400,-319)
1433 \iforigpt \put(-400,-319){\circle*{50}}%
1434  \put(0,0){\circle{50}}%
1435 \typeout{command `hadamantane' origin: (0,0) ---> (400,319)}
1436 \fi%

1437 \fi

1438 \thinlines%
1439  \put(0,0){\line(3,4){170}}%          % bond 6 to 7
1440  \put(170,226){\line(3,-1){403}}%     %      7 to 10
1441  \put(573,91){\line(3,1){270}}%       %      10 to 3
1442 % %%%
1443  \put(170,226){\line(0,1){360}}%      %      7 to 8
1444  \put(170,586){\line(3,1){270}}%      %      8 to 1
1445  \put(843,181){\line(0,1){360}}%      %      3 to 2
1446  \put(843,541){\line(-3,1){403}}%     %      2 to 1
1447 \thicklines%
1448  \put(843,181){\line(-3,-4){170}}%    %      3 to 4
1449  \put(673,-46){\line(-3,1){403}}%     %      4 to 5
1450  \put(0,0){\line(3,1){270}}%          %      6 to 5
1451 % %%%
1452  \put(270,90){\line(0,1){360}}%       %      5 to 9
1453  \put(270,450){\line(3,4){170}}%      %      9 to 1
1454 \thinlines%
1455 % inner double bonds
1456 \@tfor\member:=#1\do{%
1457 \if\member r%no endocyclic bonds
1458 \else \if\member a%
1459  \put(450,636){\line(3,-1){373}}%     % double bond 1 to 2
1460 \else \if\member b%
1461  \put(803,206){\line(0,1){320}}%      %             3 to 2
1462 \else \if\member c%%%a%
1463  \put(767,139){\line(-3,-4){110}}%   %             3 to 4
1464 \else \if\member d%%%b%

1465  \put(640,-5){\line(-3,1){343}}%      %             4 to 5
1466 \else \if\member e%%%%c%
1467  \put(240,111){\line(-3,-1){190}}%   %             5 to 6
1468 \else \if\member f%%%d%
1469  \put(63,40){\line(3,4){110}}%        %             6 to 7
1470 \else \if\member g%
1471  \put(200,246){\line(0,1){320}}%      %             7 to 8
1472 \else \if\member h%
1473  \put(400,626){\line(-3,-1){190}}%   %             8 to 1
1474 \else \if\member i%
1475  \put(450,636){\line(-3,-4){150}}%    %             9 to 1
1476 \else \if\member j%
1477  \put(300,110){\line(0,1){320}}%      %             5 to 9
1478 \else \if\member k%%%f%
1479  \put(768,131){\line(-3,-1){170}}%    %             3 to 10
1480 \else \if\member l%
1481  \put(182,187){\line(3,-1){343}}%     %             7 to 10
1482 \fi\fi\fi\fi\fi\fi%
1483 \fi\fi\fi\fi\fi\fi\fi}%

1484 % %

1485 \@forsemicol\member:=#2\do{%
1486 \ifx\member\empty\else
1487 \expandafter\@m@mb@r\member;\relax%
1488 \expandafter\threech@r\@membera{}{}%
1489 \ifx\@memberb\@yl\else
1490 \ifcase\@tmpa%                  %0 omit
1491 \or \put(440,676){\@chairiI}%  %subst. on 1%%%9
1492 \or \put(843,541){\@chairiII}% %subst. on 2%%10
1493 \or \@chairiIII%               %subst. on 3%%%4
1494 \or \@chairiIV%                %subst. on 4%%%3
1495 \or \@chairiV%                 %subst. on 5%%%2
1496 \or \@chairiVI%                %subst. on 6%%%1
1497 \or \@chairiVII%               %subst. on 7%%%6
1498 \or \put(170,586){\@chairiVIII}%subst. on 8%%%8
1499 \or \put(270,450){\@chairiIX}% %subst. on 9%%%7
1500 \or \@chairiX%                 %subst. on 10%%5
1501 \fi %end of ifcase
1502 \fi\fi%
1503 }\end{picture}}%               %end of \hadamantane macro
1504 % End of addition 1994/03/05 SF

The command \ylhadamanposition is to obtain the shift values \@ylii and \@yli which are used for shifting the standard point of a substituent.

\ylhadamanposition
1505 \def\ylhadamanposition#1{%
1506 \@@ylswfalse%%%\@reset@ylsw
1507 \@forsemicol\member:=#1\do{%
1508 \if@@ylsw\else
1509 \ifx\member\empty\else

1510 \expandafter\@m@mb@r\member;\relax
1511 \expandafter\threech@r\@membera{}{}\relax
1512 \ifx\@memberb\@yl\relax\@@ylswtrue\else\@@ylswfalse\fi
1513 \if@@ylsw
1514 \ifcase\@tmpa%0 omit
1515 \or\gdef\@ylii{-440}\gdef\@yli{-676}\global\@ylswtrue% subst. on 1
1516 \or\gdef\@ylii{-843}\gdef\@yli{-541}\global\@ylswtrue% subst. on 2
1517 \or\gdef\@ylii{-843}\gdef\@yli{-181}\global\@ylswtrue% subst. on 3
1518 \or\gdef\@ylii{-673}\gdef\@yli{46}\global\@ylswtrue% subst. on 4
1519 \or\gdef\@ylii{-270}\gdef\@yli{-90}\global\@ylswtrue% subst. on 5
1520 \or\gdef\@ylii{0}\gdef\@yli{0}\global\@ylswtrue% subst. on 6
1521 \or\gdef\@ylii{-170}\gdef\@yli{-226}\global\@ylswtrue% subst. on 7
1522 \or\gdef\@ylii{-170}\gdef\@yli{-586}\global\@ylswtrue% subst. on 8
1523 \or\gdef\@ylii{-270}\gdef\@yli{-450}\global\@ylswtrue% subst. on 9
1524 \or\gdef\@ylii{-573}\gdef\@yli{-91}\global\@ylswtrue% subst. on 10
1525 \fi%end of ifcase
1526 \fi\fi\fi}}%

Hereafter, the definitions of the commands \@chairiI to \@chairiX are described. Each of the commands can treat na-type bond modifiers as well as nSa-type bond modifiers.

\@chairiVI
1527 % ********************************************************
1528 % * treatment of the chair form (inverse) of cyclohexane *
1529 % *  added March 05, 1994 by Shinsaku Fujita             *
1530 % ********************************************************
1531 % %%%%%%%%%%%%%%%
1532 % % subst. on 6 %
1533 % %%%%%%%%%%%%%%%
1534 \def\@chairiVI{%
1535 \if\@tmpb a%single bond
1536  \yl@xdiff=42
1537  \yl@ydiff=92
1538  \put(0,0){\line(0,-1){168}}% single bond at 6 axial
1539  \putlratom{-42}{-260}{\@memberb}% left & right type
1540 \else\if\@tmpb b%single bond
1541  \yl@xdiff=16
1542  \yl@ydiff=36
1543  \put(0,0){\line(-5,3){144}}% single bond at 6 equatorial
1544  \putlatom{-160}{50}{\@memberb}% left type
1545 \else\if\@tmpb S%single bond
1546  \ifx\@tmpc\empty%
1547  \yl@xdiff=10
1548  \yl@ydiff=90
1549  \put(0,0){\line(-1,-1){120}}% single bond at 6
1550  \putlatom{-130}{-210}{\@memberb}% left type
1551  \else\if\@tmpc a%(a) axial
1552  \yl@xdiff=42
1553  \yl@ydiff=92

1554  \put(0,0){\line(0,-1){168}}% single bond at 6 axial
1555  \putlratom{-42}{-260}{\@memberb}% left & right type
1556  \else\if\@tmpc e%(e) beta
1557  \yl@xdiff=16
1558  \yl@ydiff=36
1559  \put(0,0){\line(-5,3){144}}% single bond at 6 equatorial
1560  \putlatom{-160}{50}{\@memberb}% left type
1561  \fi\fi\fi%
1562 \else \if\@tmpb D%double bond
1563  \yl@xdiff=10
1564  \yl@ydiff=90
1565  \putlatom{-130}{-210}{\@memberb}% left type
1566  \put(-10,10){\line(-1,-1){120}}% double bond at 6
1567  \put(10,-10){\line(-1,-1){120}}% double bond at 6
1568  \else%
1569  \yl@xdiff=10
1570  \yl@ydiff=90
1571  \putlatom{-130}{-210}{\@memberb}% left type
1572  \put(0,0){\line(-1,-1){120}}% single bond at 6
1573 \fi\fi\fi\fi}%
\@chairiVII
1574 % %%%%%%%%%%%%%%%
1575 % % subst. on 7 %
1576 % %%%%%%%%%%%%%%%
1577 \def\@chairiVII{%
1578 \if\@tmpb a%single bond
1579  \yl@xdiff=26
1580  \yl@ydiff=46
1581  \put(170,226){\line(-5,-3){144}}% single bond at 7 equatorial
1582  \putlatom{10}{94}{\@memberb}% left type
1583 \else\ifx\@tmpb\empty%single bond
1584  \yl@xdiff=26
1585  \yl@ydiff=46
1586  \put(170,226){\line(-5,-3){144}}% single bond at 7 equatorial
1587  \putlatom{10}{94}{\@memberb}% left type
1588 \else\if\@tmpb S%single bond
1589  \ifx\@tmpc\empty%
1590  \yl@xdiff=10
1591  \yl@ydiff=30
1592  \put(170,226){\line(-1,1){120}}% single bond at 7
1593  \putratom{40}{316}{\@memberb}% left type
1594  \else\if\@tmpc a%(a) axial
1595  \yl@xdiff=32
1596  \yl@ydiff=12
1597  \put(170,226){\line(0,1){168}}% single bond at 7 axial
1598  \putlratom{138}{406}{\@memberb}% left & right type
1599  \else\if\@tmpc e%(e) beta
1600  \yl@xdiff=26
1601  \yl@ydiff=46

1602  \put(170,226){\line(-5,-3){144}}% single bond at 7 equatorial
1603  \putlatom{10}{94}{\@memberb}% left type
1604  \fi\fi\fi%
1605 \else \if\@tmpb D%double bond
1606  \yl@xdiff=10
1607  \yl@ydiff=30
1608  \putlatom{40}{316}{\@memberb}% left type
1609  \put(160,216){\line(-1,1){120}}% double bond at 7
1610  \put(180,236){\line(-1,1){120}}% double bond at 7
1611  \else%
1612  \yl@xdiff=10
1613  \yl@ydiff=30
1614  \putlatom{40}{316}{\@memberb}% left type
1615  \put(170,226){\line(-1,1){120}}% single bond at 7
1616 \fi\fi\fi\fi}%
\@chairiX
1617 % %%%%%%%%%%%%%%%%
1618 % % subst. on 10 %
1619 % %%%%%%%%%%%%%%%%
1620 \def\@chairiX{%
1621 \if\@tmpb a%single bond
1622  \yl@xdiff=40
1623  \yl@ydiff=104
1624  \put(573,91){\line(0,-1){168}}% single bond at 5 axial
1625  \putlratom{533}{-181}{\@memberb}% left type
1626 \else\if\@tmpb b%single bond
1627  \yl@xdiff=-36
1628  \yl@ydiff=3
1629  \put(573,91){\line(5,3){144}}% single bond at 5 equatorial
1630  \putlatom{753}{180}{\@memberb}% left type
1631 \else\if\@tmpb S%single bond
1632  \ifx\@tmpc\empty%
1633  \yl@xdiff=-10
1634  \yl@ydiff=56
1635  \put(573,91){\line(5,-4){170}}% single bond at 5
1636  \putratom{753}{-101}{\@memberb}% right type
1637  \else\if\@tmpc a%(a) axial
1638  \yl@xdiff=40
1639  \yl@ydiff=104
1640  \put(573,91){\line(0,-1){168}}% single bond at 5 axial
1641  \putlratom{533}{-181}{\@memberb}% left type
1642  \else\if\@tmpc e%(e) beta
1643  \yl@xdiff=-36
1644  \yl@ydiff=3
1645  \put(573,91){\line(5,3){144}}% single bond at 5 equatorial
1646  \putlatom{753}{180}{\@memberb}% left type
1647  \fi\fi\fi%
1648 \else \if\@tmpb D%double bond
1649  \yl@xdiff=10

1650  \yl@ydiff=86
1651  \putratom{733}{-141}{\@memberb}% right type
1652  \put(563,83){\line(5,-4){170}}% double bond at 5
1653  \put(583,99){\line(5,-4){170}}% double bond at 5
1654  \else%
1655  \yl@xdiff=-10
1656  \yl@ydiff=76
1657  \put(573,91){\line(5,-4){170}}% single bond at 5
1658  \putratom{753}{-121}{\@memberb}% right type
1659 \fi\fi\fi\fi}%
\@chairiIII
1660 % %%%%%%%%%%%%%%%
1661 % % subst. on 3 %
1662 % %%%%%%%%%%%%%%%
1663 \def\@chairiIII{%
1664 \if\@tmpb a%single bond
1665  \yl@xdiff=-16
1666  \yl@ydiff=64
1667  \put(843,181){\line(5,-3){144}}% single bond at 3 equatorial
1668  \putratom{1003}{31}{\@memberb}% right type
1669 \else\ifx\@tmpb\empty%single bond
1670  \yl@xdiff=-16
1671  \yl@ydiff=64
1672  \put(843,181){\line(5,-3){144}}% single bond at 3 equatorial
1673  \putratom{1003}{31}{\@memberb}% right type
1674 \else\if\@tmpb S%single bond
1675  \ifx\@tmpc\empty%
1676  \yl@xdiff=10
1677  \yl@ydiff=30
1678  \put(843,181){\line(1,1){120}}% single bond at 3
1679  \putratom{953}{271}{\@memberb}% right type
1680  \else\if\@tmpc a%(a) axial
1681  \yl@xdiff=42
1682  \yl@ydiff=11
1683  \put(843,181){\line(0,1){168}}% single bond at 3 axial
1684  \putlratom{801}{360}{\@memberb}% left & right type
1685  \else\if\@tmpc e%(e) beta
1686  \yl@xdiff=-16
1687  \yl@ydiff=64
1688  \put(843,181){\line(5,-3){144}}% single bond at 3 equatorial
1689  \putratom{1003}{31}{\@memberb}% right type
1690  \fi\fi\fi%
1691 \else \if\@tmpb D%double bond
1692  \yl@xdiff=0
1693  \yl@ydiff=30
1694  \putratom{953}{271}{\@memberb}% right type
1695  \put(833,191){\line(1,1){120}}% double bond at 3
1696  \put(853,171){\line(1,1){120}}% double bond at 3
1697  \else%

1698  \yl@xdiff=10
1699  \yl@ydiff=30
1700  \put(843,181){\line(1,1){120}}% single bond at 3
1701  \putratom{953}{271}{\@memberb}% right type
1702 \fi\fi\fi\fi}%
\@chairiIV
1703 % %%%%%%%%%%%%%%%
1704 % % subst. on 4 %
1705 % %%%%%%%%%%%%%%%
1706 \def\@chairiIV{%
1707 \if\@tmpb a%single bond
1708  \yl@xdiff=40
1709  \yl@ydiff=104
1710  \put(673,-46){\line(0,-1){168}}% single bond at 4 axial
1711  \putlratom{633}{-318}{\@memberb}% left & right type
1712 \else\if\@tmpb b%single bond
1713  \yl@xdiff=-6
1714  \yl@ydiff=17
1715  \put(673,-46){\line(5,3){144}}% single bond at 4 equatorial
1716  \putratom{823}{23}{\@memberb}% right type
1717 \else\if\@tmpb S%single bond
1718  \ifx\@tmpc\empty%
1719  \yl@xdiff=-10
1720  \yl@ydiff=92
1721  \put(673,-46){\line(1,-1){120}}% single bond at 4
1722  \putratom{803}{-258}{\@memberb}% right type
1723  \else\if\@tmpc a%(a) axial
1724  \yl@xdiff=40
1725  \yl@ydiff=104
1726  \put(673,-46){\line(0,-1){168}}% single bond at 4 axial
1727  \putlratom{633}{-318}{\@memberb}% left & right type
1728  \else\if\@tmpc e%(e) beta
1729  \yl@xdiff=-6
1730  \yl@ydiff=17
1731  \put(673,-46){\line(5,3){144}}% single bond at 4 equatorial
1732  \putratom{823}{23}{\@memberb}% right type
1733  \fi\fi\fi%
1734 \else \if\@tmpb D%double bond
1735  \yl@xdiff=-10
1736  \yl@ydiff=92
1737  \putratom{803}{-258}{\@memberb}%  right type
1738  \put(663,-53){\line(1,-1){120}}% double bond at 4
1739  \put(683,-38){\line(1,-1){120}}% double bond at 4
1740  \else%
1741  \yl@xdiff=-10
1742  \yl@ydiff=76
1743  \put(673,-46){\line(5,-4){170}}% single bond at 4
1744  \putratom{853}{-258}{\@memberb}% right type
1745 \fi\fi\fi\fi}%

\@chairiV
1746 % %%%%%%%%%%%%%%%
1747 % % subst. on 5 %
1748 % %%%%%%%%%%%%%%%
1749 \def\@chairiV{%
1750 \if\@tmpb a%single bond
1751  \yl@xdiff=26
1752  \yl@ydiff=102
1753  \put(270,90){\line(-5,-3){144}}% single bond at 5 equatorial
1754  \putratom{100}{-98}{\@memberb}% left type
1755 \else\ifx\@tmpb\empty%single bond
1756  \yl@xdiff=26
1757  \yl@ydiff=102
1758  \put(270,90){\line(-5,-3){144}}% single bond at 5 equatorial
1759  \putratom{100}{-98}{\@memberb}% left type
1760 \else\if\@tmpb S%single bond
1761  \ifx\@tmpc\empty%
1762  \yl@xdiff=0
1763  \yl@ydiff=46
1764  \put(270,90){\line(-5,4){170}}% single bond at 5
1765  \putlatom{100}{180}{\@memberb}% left type
1766  \else\if\@tmpc a%(a) axial
1767  \yl@xdiff=32
1768  \yl@ydiff=12
1769  \put(270,90){\line(0,1){168}}% single bond at 5 axial
1770  \putlratom{238}{270}{\@memberb}% left type
1771  \else\if\@tmpc e%(e) beta
1772  \yl@xdiff=36
1773  \yl@ydiff=102
1774  \put(270,90){\line(-5,-3){144}}% single bond at 5 equatorial
1775  \putratom{100}{-98}{\@memberb}% left type
1776  \fi\fi\fi%
1777 \else \if\@tmpb D%double bond
1778  \yl@xdiff=0
1779  \yl@ydiff=36
1780  \putlatom{100}{200}{\@memberb}% left or right type
1781  \put(260,80){\line(-5,4){170}}% double bond at 5
1782  \put(280,100){\line(-5,4){170}}% double bond at 5
1783  \else%
1784  \yl@xdiff=0
1785  \yl@ydiff=26
1786  \putlatom{100}{200}{\@memberb}% left type
1787  \put(270,90){\line(-5,4){170}}% single bond at 5
1788 \fi\fi\fi\fi}%
\@chairiI
1789 % %%%%%%%%%%%%%%%
1790 % % subst. on 1 %
1791 % %%%%%%%%%%%%%%%
1792 \def\@chairiI{%

1793 \if\@tmpb a%single bond
1794  \yl@xdiff=42
1795  \yl@ydiff=-10
1796  \put(0,0){\line(0,1){168}}% single bond at 1 axial
1797  \putlratom{-42}{178}{\@memberb}% left & right type
1798 \else\ifx\@tmpb\empty%
1799  \yl@xdiff=42
1800  \yl@ydiff=-10
1801  \put(0,0){\line(0,1){168}}% single bond at 1 axial
1802  \putlratom{-42}{178}{\@memberb}% left & right type
1803 \else\if\@tmpb S%single bond
1804  \ifx\@tmpc\empty%
1805  \yl@xdiff=42
1806  \yl@ydiff=-10
1807  \put(0,0){\line(0,1){168}}% single bond at 1 axial
1808  \putlratom{-42}{178}{\@memberb}% left & right type
1809  \else\if\@tmpc a%(a) axial
1810  \yl@xdiff=42
1811  \yl@ydiff=-10
1812  \put(0,0){\line(0,1){168}}% single bond at 1 axial
1813  \putlratom{-42}{178}{\@memberb}% left & right type
1814  \else\if\@tmpc e%(e) beta
1815  \yl@xdiff=42
1816  \yl@ydiff=-10
1817  \put(0,0){\line(0,1){168}}% single bond at 1 axial
1818  \putlratom{-42}{178}{\@memberb}% left & right type
1819  \fi\fi\fi%
1820 \else \if\@tmpb D%double bond
1821  \yl@xdiff=42
1822  \yl@ydiff=-10
1823  \put(0,0){\line(0,1){168}}% single bond at 1 axial
1824  \putlratom{-42}{178}{\@memberb}% left & right type
1825  \else%
1826  \yl@xdiff=42
1827  \yl@ydiff=-10
1828  \put(0,0){\line(0,1){168}}% single bond at 1 axial
1829  \putlratom{-42}{178}{\@memberb}% left & right type
1830 \fi\fi\fi\fi}%
\@chairiII
1831 % %%%%%%%%%%%%%%%%
1832 % % subst. on 2 %
1833 % %%%%%%%%%%%%%%%%
1834 \def\@chairiII{%
1835 \if\@tmpb a%single bond
1836  \yl@xdiff=-10
1837  \yl@ydiff=13
1838  \put(0,0){\line(3,1){190}}% single bond at 6 equatorial
1839  \putratom{200}{50}{\@memberb}% right type
1840 \else\if\@tmpb b%single bond

1841  \yl@xdiff=-10
1842  \yl@ydiff=0
1843  \put(0,0){\line(3,4){120}}%          % bond 1 to 6
1844  \putratom{130}{160}{\@memberb}% left type
1845 \else\if\@tmpb S%single bond
1846  \ifx\@tmpc\empty%
1847  \yl@xdiff=-10
1848  \yl@ydiff=-10
1849  \put(0,0){\line(1,1){120}}% single bond at 1
1850  \putratom{130}{130}{\@memberb}% left type
1851  \else\if\@tmpc a%(a) axial
1852  \yl@xdiff=-10
1853  \yl@ydiff=0
1854  \put(0,0){\line(3,4){120}}%          % bond 1 to 6
1855  \putratom{130}{160}{\@memberb}% left type
1856  \else\if\@tmpc e%(e) beta
1857  \yl@xdiff=-10
1858  \yl@ydiff=13
1859  \put(0,0){\line(3,1){190}}% single bond at 6 equatorial
1860  \putratom{200}{50}{\@memberb}% right type
1861  \fi\fi\fi%
1862 \else \if\@tmpb D%double bond
1863  \yl@xdiff=-10
1864  \yl@ydiff=-10
1865  \putratom{130}{130}{\@memberb}% left type
1866  \put(-10,10){\line(1,1){120}}% double bond at 1
1867  \put(10,-10){\line(1,1){120}}% double bond at 1
1868  \else%
1869  \yl@xdiff=-10
1870  \yl@ydiff=-10
1871  \putratom{130}{130}{\@memberb}% left type
1872  \put(0,0){\line(1,1){120}}% single bond at 1
1873 \fi\fi\fi\fi}%
\@chairigVIII
1874 % %%%%%%%%%%%%%%%
1875 % % subst. on 8 %
1876 % %%%%%%%%%%%%%%%
1877 \def\@chairiVIII{%
1878 \if\@tmpb a%single bond
1879  \yl@xdiff=16
1880  \yl@ydiff=36
1881  \put(0,0){\line(-5,3){144}}% single bond at 1 equatorial
1882  \putlatom{-160}{50}{\@memberb}% left type
1883 \else\if\@tmpb b%single bond
1884  \yl@xdiff=-10
1885  \yl@ydiff=0
1886  \put(0,0){\line(3,4){120}}%          % bond 1 to 6
1887  \putratom{130}{160}{\@memberb}% left type
1888 \else\if\@tmpb S%single bond

1889  \ifx\@tmpc\empty%
1890  \yl@xdiff=4
1891  \yl@ydiff=36
1892  \put(0,0){\line(-5,3){144}}% single bond at 1 equatorial
1893  \putlatom{-140}{50}{\@memberb}% left type
1894  \else\if\@tmpc e% right-hand
1895  \yl@xdiff=-10
1896  \yl@ydiff=0
1897  \put(0,0){\line(3,4){120}}%          % bond 1 to 6
1898  \putratom{130}{160}{\@memberb}% left type
1899  \else\if\@tmpc a% left-hand
1900  \yl@xdiff=16
1901  \yl@ydiff=36
1902  \put(0,0){\line(-5,3){144}}% single bond at 1 equatorial
1903  \putlatom{-160}{50}{\@memberb}% left type
1904  \fi\fi\fi%
1905 \else \if\@tmpb D%double bond
1906  \yl@xdiff=4
1907  \yl@ydiff=26
1908  \putlatom{-140}{60}{\@memberb}% left type
1909  \put(10,10){\line(-5,3){144}}% single bond at 1 equatorial
1910  \put(0,-10){\line(-5,3){144}}% single bond at 1 equatorial
1911  \else%
1912  \yl@xdiff=4
1913  \yl@ydiff=36
1914  \put(0,0){\line(-5,3){144}}% single bond at 1 equatorial
1915  \putlatom{-140}{50}{\@memberb}% left type
1916 \fi\fi\fi\fi}%
\@chairiIX
1917 % %%%%%%%%%%%%%%%
1918 % % subst. on 9 %
1919 % %%%%%%%%%%%%%%%
1920 \def\@chairiIX{%
1921 \if\@tmpb a%single bond
1922  \yl@xdiff=16
1923  \yl@ydiff=36
1924  \put(0,0){\line(-5,3){144}}% single bond at 1 equatorial
1925  \putlatom{-160}{50}{\@memberb}% left type
1926 \else\if\@tmpb b%single bond
1927  \yl@xdiff=-16
1928  \yl@ydiff=36
1929  \put(0,0){\line(5,3){144}}% single bond at 6 equatorial
1930  \putratom{160}{50}{\@memberb}% left type
1931 \else\if\@tmpb S%single bond
1932  \ifx\@tmpc\empty%
1933  \yl@xdiff=4
1934  \yl@ydiff=36
1935  \put(0,0){\line(-5,3){144}}% single bond at 1 equatorial
1936  \putlatom{-140}{50}{\@memberb}% left type

1937  \else\if\@tmpc e% right-hand
1938  \yl@xdiff=-16
1939  \yl@ydiff=36
1940  \put(0,0){\line(5,3){144}}% single bond at 6 equatorial
1941  \putratom{160}{50}{\@memberb}% left type
1942  \else\if\@tmpc a% left-hand
1943  \yl@xdiff=16
1944  \yl@ydiff=36
1945  \put(0,0){\line(-5,3){144}}% single bond at 1 equatorial
1946  \putlatom{-160}{50}{\@memberb}% left type
1947  \fi\fi\fi%
1948 \else \if\@tmpb D%double bond
1949  \yl@xdiff=4
1950  \yl@ydiff=36
1951  \putlatom{-140}{50}{\@memberb}% left type
1952  \put(10,10){\line(-5,3){144}}% single bond at 1 equatorial
1953  \put(0,-10){\line(-5,3){144}}% single bond at 1 equatorial
1954  \else%
1955  \yl@xdiff=4
1956  \yl@ydiff=36
1957  \put(0,0){\line(-5,3){144}}% single bond at 1 equatorial
1958  \putlatom{-140}{50}{\@memberb}% left type
1959 \fi\fi\fi\fi}%

1960 ⟨/ccycle⟩