summaryrefslogtreecommitdiff
path: root/psfiles/bridge.ps
blob: 392f5ed53507a1db98db0d006af7b9267b44c7b7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
%!PS-Adobe-3.0
%%Title: ~/tmp/tutorial/bridge
%%Creator: Xcircuit v2.3
%%CreationDate: Wed Jul 18 11:20:21 2001
%%Pages: 1
%%BoundingBox: 114 302 498 490
%%DocumentNeededResources: font Helvetica font Times-Roman font Times-RomanISO 
%%+ font HelveticaISO font Symbol 
%%EndComments
%%BeginProlog
%
%  PostScript prolog for output from xcircuit
%  Version: 2.3
%
%  Electrical circuit (and otherwise general) drawing program
%
%  Written by Tim Edwards 8/5/93--5/16/01  (tim@bach.ece.jhu.edu)
%  The Johns Hopkins University
%
%%BeginResource: procset XCIRCproc 2.3 1
% supporting definitions --- these are the primary xcircuit types.

/XCIRCsave save def
/topmat matrix currentmatrix def

/fontslant { /slant exch def [1 0 slant 1 0 0] 
    exch findfont exch makefont dup length dict /ndict exch def
    { 1 index /FID ne { ndict 3 1 roll put } { pop pop } ifelse } forall
    ndict definefont pop} def
/ul { dup type /stringtype eq showflag 1 eq and { gsave 
   currentpoint topmat setmatrix 0 0 moveto 2 index stringwidth pop (_)
   false charpath flattenpath pathbbox grestore exch pop 1 index
   sub setlinewidth exch pop currentpoint 3 -1 roll add moveto 0
   rlineto stroke moveto } if } def
/ol { dup type /stringtype eq showflag 1 eq and { gsave gsave
   currentpoint topmat setmatrix 2 index stringwidth pop 3 index
   true charpath flattenpath pathbbox grestore exch pop
   exch pop topmat setmatrix (_) true charpath pathbbox grestore
   exch pop 1 index sub setlinewidth exch pop currentpoint
   exch 4 1 roll exch sub add moveto pop 0 rlineto stroke
   moveto } if } def
/stW { gsave currentpoint newpath moveto true charpath flattenpath
	pathbbox pop exch pop sub grestore } def
/Ts {mark Tabs aload pop counttomark 1 add array astore /Tabs exch def Tabs
	0 currentpoint pop put} def
/Tbn {mark Tabs aload pop counttomark dup 2 add 1 roll cleartomark 1 sub} def
/Tb { 0 1 Tbn {Tabs exch get dup currentpoint pop lt
	{currentpoint exch pop moveto exit} {pop} ifelse } for } def
/Tf { Tbn -1 0 {Tabs exch get dup currentpoint pop gt
	{currentpoint exch pop moveto exit} {pop} ifelse } for } def
/qS { (aa) stW (a a) stW sub 4 div 0 Kn } def
/hS { qS qS } def
/pspc 0 def
/cf0 { scalefont setfont } bind def
/Kn { dup kY add /kY exch def rmoveto } bind def
/ss { /fscale fscale 0.67 mul def currentfont 0.67 cf0 0 fscale0 fscale mul
	0.33 mul neg Kn} def
/Ss { /fscale fscale 0.67 mul def currentfont 0.67 cf0 0 fscale0 fscale mul
	0.67 mul Kn } def
/ns { 0 kY neg Kn /kY 0 def /fscale 1.0 def xfont0 1.0 cf0 } def
/CR { ns 0 /Bline Bline fscale0 neg add def Bline moveto } def
/cf { dup type /realtype ne {1.0} if exch findfont exch kY 0 eq
	{ 40 mul dup /fscale0 exch def cf0 /xfont0 currentfont def}
	{fscale0 mul fscale mul cf0} ifelse } def
/ctmk { counttomark dup 2 add -1 roll pop } bind def
/label { gsave translate 0 0 moveto dup scale /rotval exch def /just exch def
	just 16 and 0 gt {0 1 dtransform gsave pagemat setmatrix idtransform
	exch grestore 1 0 dtransform gsave pagemat setmatrix idtransform
	exch grestore dup 0 eq {pop mul 0 gt} {3 1 roll pop pop 0 lt} ifelse
	{-1 /just just dup 3 and 1 ne {3 xor} if def} {1} ifelse exch 0 lt
	{-1 /just just dup 12 and 4 ne {12 xor} if def} {1} ifelse scale }
	if /showflag 0 def /fspc pspc def /Bline 0 def /Tabs 0 array def
	/fscale 1.0 def /kY 0 def
	gsave dup 1 add copy 0 exch {exch dup type /stringtype eq {true
	charpath flattenpath} {exec} ifelse } repeat pop pathbbox grestore
	3 -1 roll pop 3 1 roll just 1 and 0 gt {just 2 and 0 gt {exch pop
	neg fspc sub} {exch sub	0.5 mul neg} ifelse} {pop neg fspc add}
	ifelse exch Bline exch just 4 and 0 gt {just 8 and 0 gt {exch pop
	neg fspc sub} {add 0.5 mul neg} ifelse} {pop neg fspc add} ifelse
	/showflag 1 def rotval rotate Kn currentpoint translate
	/Bline 0 def /Tabs 0 array def /fscale 1.0 def /kY 0 def
	{dup type /stringtype eq {show}{exec} ifelse} repeat grestore } def
/pinlabel { hlevel 0 eq { /pspc 20 def label /pspc 0 def }
	{ pop pop pop pop pop {pop} repeat } ifelse } def
/pinglobal { pinlabel } def
/infolabel { pinlabel } def

/scb { setrgbcolor } bind def  /sce { defColor aload pop scb } bind def
/cRedef {/defColor currentcolor 3 array astore def} def
/begingate { /hlevel hlevel 1 add def /defColor currentcolor sce 3 array
	astore def gsave sce translate 0 0 moveto dup 0 lt
	{neg 1 sub -1 1 scale} if rotate dup scale } bind def
/makeparm  {3 string cvs dup length 1 add string /tstr exch def tstr exch
	1 exch putinterval tstr 0 (v) putinterval tstr cvn} bind def
/beginparm { -1 1 {makeparm exch def} for
	dup type /arraytype eq { aload length -1 1 {makeparm exch def}
	for } if begingate } bind def
/endgate { /hlevel hlevel 1 sub def grestore defColor aload pop cRedef
	scb} bind def

/hlevel 0 def
/tmpa [1 0 0 1 0 0] def
/gar {8 8 true tmpa {<c0 c0 00 00 0c 0c 00 00>} imagemask} bind
{8 8 true tmpa {<30 70 60 02 03 07 06 20>} imagemask} bind
{8 8 true tmpa {<0c 1e 1e 0c c0 e1 e1 c0>} imagemask} bind
{8 8 true tmpa {<0f 0f 0f 0f f0 f0 f0 f0>} imagemask} bind
{8 8 true tmpa {<3f f3 e1 e1 f3 3f 1e 1e>} imagemask} bind
{8 8 true tmpa {<df cf 8f 9f fd fc f8 f9>} imagemask} bind
{8 8 true tmpa {<ff 3f 3f ff ff f3 f3 ff>} imagemask} bind 7 array astore def
/ppaint { gsave clip tmpa dup setmatrix pathbbox neg exch neg 4 2 roll
  neg 4 -1 roll 2 copy gt {exch} if 8 div ceiling 8 mul 4 2 roll neg 2 copy
  gt {exch} if 8 div ceiling 8 mul 3 -1 roll -8 5 -1 roll
  { 3 index exch 5 exch put dup -8 3 index { 3 index
  exch 4 exch put 3 index exec } for } for pop pop pop pop grestore } bind def
/setstyles {
  currentlinewidth mul setlinewidth /style exch def
  style 1 and 0 gt not {closepath} if
  style 2 and 0 gt {currentlinewidth 4 mul dup 2 array astore 0 setdash} if 
  style 4 and 0 gt {0.5 currentlinewidth 4 mul 2 array astore 0 setdash} if 
  style dup 256 ge exch 480 lt and { gsave 1 setgray eofill grestore } if
  style 16 and 0 gt { gsave style 224 and -5 bitshift dup 7 lt
	{gar exch get ppaint} { pop eofill } ifelse grestore } if
  style 8 and 0 gt style 512 eq or { newpath } { stroke } ifelse grestore } def

/polygon { gsave /num exch def moveto num 1 sub {lineto} repeat setstyles } def
/xcarc   { gsave newpath arc setstyles } def
/elb { matrix currentmatrix 7 -1 roll 7 -1 roll translate 5 1 roll 4 -1 roll
	3 index div 1 scale } def
/ele { 0 4 1 roll 0 4 1 roll } bind def
/ellipse { gsave elb newpath ele arc setmatrix setstyles } def
/pellip  { elb ele arc setmatrix } def
/nellip  { elb ele arcn setmatrix } def
/spline  { gsave moveto curveto setstyles } def
/polyc   { {lineto} repeat } bind def
/beginpath { gsave moveto } bind def
/endpath { setstyles } bind def
/bop	 { 1 setlinecap 0 setlinejoin 6 setmiterlimit 0 0 0 scb cRedef } def
/insertion {/PSobj save def /showpage {} def bop translate} def
/end_insert {PSobj restore} def
/setpagemat {/pagemat matrix currentmatrix def} def
/inchscale  {setpagemat 0.375 mul dup scale} def
/cmscale    {setpagemat 0.35433071 mul dup scale} def

%%EndResource
%%EndProlog

/Times-Roman findfont dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding ISOLatin1Encoding def currentdict end
/Times-RomanISO exch definefont pop

/Helvetica findfont dup length dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding ISOLatin1Encoding def currentdict end
/HelveticaISO exch definefont pop

% XCircuit output starts here.

/inductor {
% -14 -64 29 112 bbox
begingate
1  1.00 20 -28 20 -44 0 -48 0 -24 spline
1  1.00 -20 -20 -20 -32 0 -28 0 -24 spline
1  1.00 20 32 20 16 0 12 0 36 spline
1  1.00 20 12 20 -4 0 -8 0 16 spline
1  1.00 20 -8 20 -24 0 -28 0 -4 spline
1  1.00 -20 20 -20 8 0 12 0 16 spline
1  1.00 -20 0 -20 -12 0 -8 0 -4 spline
1  1.00 0 -48 0 -64 2 polygon
1  1.00 0 36 0 48 2 polygon
1.000 0.000 0.000 scb
(l.1) {/Times-Roman cf} 2 9 0 1.00 0 48 pinlabel
(l.2) {/Times-Roman cf} 2 13 0 1.00 0 -64 pinlabel
sce
(spice:L%i %pl.1 %pl.2 1.0U) {/Times-Roman cf} 2 0 0 1.00 -208 -160 infolabel
sce
(sim:l %pl.1 %pl.2) {/Times-Roman cf} 2 0 0 1.00 -208 -208 infolabel
endgate
} def

/Transformer {
% -62 -64 108 112 bbox
(?)  1 beginparm
1.00 0 -48 0 inductor
1  1.00 -16 48 -16 -64 2 polygon
1  1.00 0 48 0 -64 2 polygon
1.00 180 32 -16 inductor
1.000 0.000 0.000 scb
(1) {/Helvetica cf} 2 25 0 1.00 -48 48 pinlabel
(2) {/Helvetica cf} 2 29 0 1.00 -48 -64 pinlabel
(3) {/Helvetica cf} 2 25 0 1.00 32 48 pinlabel
(4) {/Helvetica cf} 2 29 0 1.00 32 -64 pinlabel
sce
mark v1 (pcb:T) {/Times-Roman cf} ctmk 20 0 1.00 -96 -160 infolabel
endgate
} def

/circle {
% -6 -12 28 24 bbox
% trivial
begingate
1  1.00 16 0 6 0.00 360.00 xcarc
1  1.00 0 0 10 0 2 polygon
1.000 0.000 0.000 scb
(out) {/Times-Roman cf} 2 4 0 1.00 16 0 pinlabel
(out) {/Times-Roman cf} 2 7 0 1.00 0 0 pinlabel
endgate
} def

/Diode {
% -18 -48 36 96 bbox
(?)  1 beginparm
248  1.00 -18 -16 0 16 18 -16 3 polygon
1  1.00 0 -48 0 -16 2 polygon
1  1.00 0 48 0 16 2 polygon
1  1.00 -18 16 18 16 2 polygon
1.000 0.000 0.000 scb
(1) {/Times-Roman cf} 2 9 0 1.00 0 48 pinlabel
(2) {/Times-Roman cf} 2 13 0 1.00 0 -48 pinlabel
sce
mark v1 (pcb:D) {/Helvetica cf} ctmk 20 0 1.00 -64 -144 infolabel
mark ( %p1 %p2 diode) v1 (spice:D) {/Times-Roman cf} ctmk 4 0 1.00 -64 -192
endgate
} def

/rectifier {
% -112 -48 192 192 bbox
begingate
1.00 315 -64 96 Diode
1.00 225 32 96 Diode
1.00 225 -64 0 Diode
1.00 315 32 0 Diode
1  1.00 -30 130 -16 144 -2 130 3 polygon
1  1.00 66 62 80 48 66 34 3 polygon
1  1.00 -2 -34 -16 -48 -30 -34 3 polygon
1  1.00 -98 34 -112 48 -98 62 3 polygon
endgate
} def

/dot {
% -10 -10 20 20 bbox
% trivial
begingate
248  1.00 0 0 6 0.00 360.00 xcarc
1.000 0.000 0.000 scb
(x) {/Times-Roman cf} 2 29 0 1.00 0 0 pinlabel
endgate
} def

/jumper {
% -4 -14 18 28 bbox
% trivial
begingate
1  1.00 0 0 10 -90.00 90.00 xcarc
1  1.00 0 10 0 16 2 polygon
1  1.00 0 -10 0 -16 2 polygon
1.000 0.000 0.000 scb
(a) {/Times-Roman cf} 2 1 0 1.00 0 16 pinlabel
(a) {/Times-Roman cf} 2 13 0 1.00 0 -16 pinlabel
endgate
} def

/gnd {
% -32 -60 64 68 bbox
% trivial
begingate
1  1.00 0 0 0 -32 2 polygon
1  1.00 -32 -32 32 -32 2 polygon
1  1.00 -18 -46 18 -46 2 polygon
1  1.00 -4 -60 4 -60 2 polygon
1.000 0.000 0.000 scb
(GND) {/Times-Roman cf} 2 1 0 1.00 0 0 pinglobal
endgate
} def

/Capacitor {
% -32 -64 186 128 bbox
(1.0)  (p)  (?)  3 beginparm
1  1.00 0 -64 0 -6 2 polygon
1  1.00 0 64 0 6 2 polygon
1  1.00 -32 6 32 6 2 polygon
1  1.00 -32 -6 32 -6 2 polygon
1.000 0.000 0.000 scb
(1) {/Times-Roman cf} 2 9 0 1.00 0 64 pinlabel
(2) {/Times-Roman cf} 2 13 0 1.00 0 -64 pinlabel
sce
mark v2 v1 ( %p1 %p2 ) v3 (spice:C) {/Times-RomanISO cf} ctmk 4 0 1.00 -208 
-160 infolabel
sce
(sim:c %p1 %p2) {/Times-Roman cf} 2 4 0 1.00 -208 -208 infolabel
mark (F) v2 {hS} v1 {/Times-RomanISO cf} ctmk 20 0 1.00 48 0 label
sce
mark v3 (pcb:C) {/Times-Roman cf} ctmk 20 0 1.00 -208 -256 infolabel
endgate
} def

/Polarized {
% -32 -64 176 128 bbox
(1.0)  (p)  (?)  3 beginparm
1  1.00 0 -64 0 -6 2 polygon
1  1.00 0 64 0 6 2 polygon
1  1.00 -32 6 32 6 2 polygon
1  1.00 0 -80 74 66.00 114.00 xcarc
1.000 0.000 0.000 scb
(1) {/Times-Roman cf} 2 9 0 1.00 0 64 pinlabel
(2) {/Times-Roman cf} 2 13 0 1.00 0 -64 pinlabel
sce
mark v2 v1 ( %p1 %p2 ) v3 (spice:C) {/Times-RomanISO cf} ctmk 4 0 1.00 -208 
-160 infolabel
sce
(sim:e %p1 %p2) {/Times-Roman cf} 2 4 0 1.00 -208 -208 infolabel
mark (F) v2 {hS} v1 {/Times-RomanISO cf} ctmk 20 0 1.00 48 0 label
sce
mark v3 (pcb:C) {/Times-Roman cf} ctmk 20 0 1.00 -208 -256 infolabel
endgate
} def

%%Page: 1 1
%%PageOrientation: Portrait
/pgsave save def bop
% 529 953 offsets
1.0000 inchscale
2.6000 setlinewidth

1.00 0 497 1065 Transformer
1  1.00 449 1113 449 1193 401 1193 3 polygon
1  1.00 449 1001 449 937 401 937 3 polygon
1.00 -1 401 1193 circle
1.00 -1 401 937 circle
1.000 0.000 0.000 scb
(+) {/Symbol cf} (V) {/Helvetica cf} 4 23 0 1.00 385 1193 pinlabel
(-) {/Symbol cf} (V) {/Helvetica cf} 4 23 0 1.00 385 937 pinlabel
sce
1.00 0 785 1017 rectifier
1  1.00 529 1113 529 1193 769 1193 769 1161 4 polygon
1  1.00 529 1001 529 937 769 937 769 969 4 polygon
1.00 0 769 969 dot
1.00 0 769 1161 dot
1  1.00 673 1065 641 1065 641 953 3 polygon
1  1.00 641 921 641 873 1201 873 3 polygon
1  1.00 865 1065 1201 1065 2 polygon
1  1.00 961 1065 961 1033 2 polygon
1  1.00 1041 1065 1041 1033 2 polygon
1  1.00 961 905 961 873 2 polygon
1  1.00 1041 905 1041 873 2 polygon
1.00 0 1041 873 dot
1.00 0 961 873 dot
1.00 0 961 1065 dot
1.00 0 1041 1065 dot
1.00 0 865 1065 dot
1.00 0 673 1065 dot
1.00 -1 641 937 jumper
1.00 0 641 873 gnd
1.00 0 641 873 dot
1.00 0 1201 873 circle
1.00 0 1201 1065 circle
1.000 0.000 0.000 scb
(Vout) {0 -80 Kn} {/Helvetica cf} 3 28 0 1.00 1217 1065 pinlabel
sce
(+) {/Symbol cf} 2 20 0 1.00 1249 1065 label
(-) {/Symbol cf} 2 20 0 1.00 1249 873 label
(Bridge Rectifier) {/Helvetica cf} 2 24 0 1.00 369 1273 label
1.00 -1 961 969 [(1.0) (\265) ] Capacitor
1.00 0 1041 969 [(10) (\265) ] Polarized
(1N914) {hS} (\327) {hS} (4) {/HelveticaISO cf} 6 24 0 1.00 849 1145 label
pgsave restore showpage

%%Trailer
XCIRCsave restore
%%EOF