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
|
%%BeginProlog
%
% PostScript prolog for output from xcircuit
% Version: 2.0
%
% Electrical circuit (and otherwise general) drawing program
%
% Written by Tim Edwards 8/5/93--2/25/99 (tim@bach.ece.jhu.edu)
% The Johns Hopkins University
%
%%BeginResource: procset XCIRCproc 2.0 2
% 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
/cf { dup type /realtype eq {40 mul /fscale exch def} if dup /xfont exch def
findfont fscale scalefont setfont } def
/Ss { gsave 0.67 dup scale gsave mty neg rmoveto
glevel 1 add /glevel exch def } def
/ss { gsave 0.67 dup scale gsave mty 0.5 mul rmoveto
glevel 1 add /glevel exch def } def
/ns { currentpoint transform % preserve x position!
glevel {grestore} repeat /glevel 0 def
itransform pop currentpoint pop sub 0 rmoveto } def
/ul { showflag 1 eq { 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 { showflag 1 eq { 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 true charpath flattenpath pathbbox pop exch pop sub
grestore } def
/bs { stW 0 rmoveto } def
/pspc 0 def
/qS { (aa) stW (a a) stW sub 4 div 0 rmoveto } def
/hS { qS qS } def
/textx { dup 1 add copy 0 exch { exch dup type /stringtype eq
{stringwidth pop add}{exec} ifelse } repeat neg ns } def
/mty { 0 topmat setmatrix (A) true charpath flattenpath pathbbox exch
pop exch sub exch pop neg grestore } def
/texty { gsave 2 copy pop exec mty } def
/tcenter { textx grestore 0.5 mul 0 rmoveto } def
/tright { textx grestore fspc sub 0 rmoveto } def
/tmiddle { texty 0.5 mul rmoveto } def
/ttop { texty fspc sub rmoveto } def
/tshow {{ dup type /stringtype eq {show}{exec} ifelse} repeat ns } def
/label { gsave translate 0 0 moveto rotate /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
/glevel 0 def /showflag 0 def /fspc pspc def
just 1 and 0 gt {gsave just 2 and 0 gt {tright}{tcenter} ifelse}
{fspc 0 rmoveto} ifelse
just 4 and 0 gt {just 8 and 0 gt {ttop}{tmiddle} ifelse}
{0 fspc rmoveto} ifelse
/showflag 1 def tshow grestore } def
/pinlabel { hlevel 0 eq { /pspc 20 def label /pspc 0 def }
{ pop pop pop pop {pop} repeat } ifelse } def
/pinglobal { pinlabel } def
/infolabel { pinlabel } def
/begingate { /hlevel hlevel 1 add def gsave 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 } 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 { newpath } { stroke } ifelse grestore } def
/scb { gsave setrgbcolor } bind def /sce { grestore } bind 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 setgray } 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
% XCircuit output starts here.
/dot {
% -10 -10 20 20 bbox
begingate
248 1.00 0 0 6 0.00 360.00 xcarc
endgate
} def
/circle {
% -6 -12 28 24 bbox
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 1.000 cf} 2 4 0 16 0 pinlabel
(out) {/Times-Roman 1.000 cf} 2 7 0 0 0 pinlabel
sce
endgate
} def
/gnd {
% -32 -60 64 68 bbox
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 1.000 cf} 2 1 0 0 0 pinglobal
sce
endgate
} def
/resistor {
% -14 -64 151 128 bbox
(1.0) (k) 2 beginparm
% fundamental
1 1.00 0 64 0 36 2 polygon
1 1.00 0 -64 0 -36 2 polygon
1 1.00 0 -36 14 -30 -14 -18 14 -6 -14 6 14 18 -14 30 0 36 8 polygon
1.000 0.000 0.000 scb
(r.1) {/Times-Roman 1.000 cf} 2 9 0 0 64 pinlabel
(r.2) {/Times-Roman 1.000 cf} 2 13 0 0 -64 pinlabel
sce
(spice:R%i %pr.1 %pr.2 %v"1.0"%v"k") {/Times-Roman 1.000 cf} 2 0 0 -208 -160 infolabel
(sim:r %pr.1 %pr.2) {/Times-Roman 1.000 cf} 2 0 0 -208 -208 infolabel
(W) {/Symbol 1.000 cf} v2 {hS} v1 {/Helvetica 1.000 cf} 6 20 0 32 0 label
endgate
} def
/polarized {
% -32 -64 177 128 bbox
(1.0) (p) 2 beginparm
% fundamental
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
(t) {/Times-Roman 1.000 cf} 2 9 0 0 64 pinlabel
(b) {/Times-Roman 1.000 cf} 2 13 0 0 -64 pinlabel
sce
(spice:C%i %pt %pb %v"1.0"%v"p") {/Times-Roman 1.000 cf} 2 0 0 -208 -160 infolabel
(sim:e %pt %pb %pb) {/Times-Roman 1.000 cf} 2 0 0 -208 -208 infolabel
(F) v2 {hS} v1 {/Helvetica 1.000 cf} 5 20 0 48 0 label
endgate
} def
/source {
% -32 -64 64 128 bbox
% hidden
begingate
1 1.00 0 0 32 0.00 360.00 xcarc
1 1.00 0 32 0 64 2 polygon
1 1.00 0 -32 0 -64 2 polygon
endgate
} def
/acsource {
% -32 -64 211 128 bbox
(5) (0) (1) (k) 4 beginparm
% fundamental
1.00 0 0 0 source
1 0.80 0 -48 0 48 -16 0 16 0 spline
1.000 0.000 0.000 scb
(s.p) {/Times-Roman 1.000 cf} 2 9 0 0 64 pinlabel
(s.m) {/Times-Roman 1.000 cf} 2 13 0 0 -64 pinlabel
sce
(spice:V%i %ps.m %ps.p SIN\(%v"0" %v"5" %v"1"%v"k"\)) {/Helvetica 1.000 cf} 2 20 0 -336 -160 infolabel
(offset) {ss} (V) {hS} v2 {/Helvetica 1.000 cf} 6 20 0 48 0 label
(p-p) {ss} (V) {hS} v1 {/Helvetica 1.000 cf} 6 20 0 48 48 label
(Hz) v4 {hS} v3 {/Helvetica 1.000 cf} 5 20 0 48 -48 label
endgate
} def
%%Page: 1 1
%%PageOrientation: Portrait
/pgsave save def bop
% 912 464 offsets
1.0000 inchscale
2.6000 setlinewidth
1 1.00 528 528 528 592 784 592 3 polygon
1 1.00 528 400 528 336 784 336 3 polygon
1 1.00 784 464 976 464 2 polygon
1 1.00 784 336 976 336 2 polygon
1.00 0 784 336 dot
1.00 0 784 464 dot
1.00 0 976 464 circle
1.00 0 976 336 circle
1.00 -1 464 336 circle
1 1.00 464 336 528 336 2 polygon
1 1.00 528 592 464 592 2 polygon
1.00 -1 464 592 circle
1.00 0 640 336 gnd
1.00 0 640 336 dot
1.00 0 528 336 dot
1.00 0 528 592 dot
1.000 0.000 0.000 scb
(Vin) {/Helvetica 1.000 cf} 2 23 0 448 592 pinlabel
(Vout) {/Helvetica 1.000 cf} 2 20 0 992 464 pinlabel
sce
1.00 0 784 528 [(10) (k) ] resistor
1.00 0 784 400 [(1.0) (u) ] polarized
1.00 0 528 464 [(5) (0) (5) (k) ] acsource
pgsave restore showpage
%%Trailer
XCIRCsave restore
%%EOF
|