÷ƒ’À;è TeX output 1996.10.21:1032‹ÿÿÿÿ ¤çРýI0a ˜ÏŸ ý´0c‘R%óDÓítG®G®cmr17¹M4–ñòMacros“for“Electric“Circuit“Diagrams“in“L‘úKGŸýıó¯i]G®G®cmcsc17¿aŽ‘ ¯¹T‘ý[™Ÿ5 EŽ‘;gX“DosŽcumenŒqtsŽŸ#áÒ’ÆuœóX«Q cmr12ºJ.–ê¨D.“Aplevic¬rhŽŽŽŽŽŸfj’ÏìV‘ÿVersion‘ê¨4.1ŽŸ%û ‘R%ó°ìKffffcmbx14É1Ž‘,+¹InŽïtroqductionŽ©ç‘R%óKñ`y cmr10°This–YòdošGcumen¸ãt“describ˜es“a“set“of“macros,›Œ:written“in“the“óò"V cmbx10Êm4“°macro“language[4Ž‘],˜for“proGducing“electricŽ¤ ‘R%circuits–ˆæand“other“diagrams“in“L‘üffŸþµUó Œ-ø cmcsc10ËaŽ‘‹°T‘þU>ŸŒEŽ‘ãxX“doGcumenš¸ãts.‘-¢The“macros“ev‘ÿqÇaluate“to“dra˜wing“commands“in“Êpic°,Ž¡‘R%a–Ð}draš¸ãwing“language[5Ž‘]“whic˜h“is“v˜ery“simple“to“learn.‘EThe“result“is“a“system“with“the“adv‘ÿqÇan˜tages“andŽ¡‘R%disadv‘ÿqÇanš¸ãtages–æ:of“T‘þU>Ÿ'EŽ‘ãxX“itself,‘üswhic˜h“is“macro-based,–üsnon-wysiwyg,“and–æ:whic˜h“uses“ordinary“c˜haracterŽ¡‘R%input.Ž¡‘#R%A‘collection–of“basic“compGonenš¸ãts“and“con˜v˜en˜tions“for“their“in˜ternal“structure“are“describGed.‘Z±F‘ÿ*ªorŽ¡‘R%particular–5ddraš¸ãwings“it“is“often“con˜v˜enien˜t“to“create“new“macros,‘mhor“com˜binations“of“them,‘mhusingŽ¡‘R%consisten•¸ãt›çrcon“v“en“tions,‘ ùso˜macros˜suc“h˜as˜these˜are˜only˜a˜starting˜pGoin“t.‘(The˜IEEE‘çLstandard[1Ž‘]Ž¡‘R%has–—¨bšGeen“follo•¸ãw“ed.‘8¿The–—¨macros“describ˜ed“here“makš¸ãe“extensiv˜e“use“of“the“features“of“Êpic“°and“ha˜v˜eŽ¡‘R%bšGeen–UUdesigned,“where“p˜ossible,“to“b˜e“an“extension“of“the“language.ŽŸ R`‘R%É2Ž‘,+¹Macro‘LËusageŽ¦‘R%°The–‰9diagram“source“ le“is“preproGcessed“as“illustrated“in“Fig.“1.‘ sThe“source,‘Ö2together“with“theŽ¡‘R%pre-de ned– macros,›#is“ rst“passed“through“Êm4°,˜and“then“through“a“Êpic“°inš¸ãterpreter“whic˜h“proGducesŽ¡‘R%a–UUó!ßêZó°in¸ãterpreterŽŽï pa 2583 833ï pa 3083 833ïfpïsh 1.000ï pa 2983 808ï pa 3083 833ï pa 2983 858ï pa 2983 808ïfpï pa 3083 667ï pa 2833 667ïfpïsh 1.000ï pa 2983 642ï pa 3083 667ï pa 2983 692ï pa 2983 642ïfpï pa 2833 667ï pa 2833 500ïfpïar 2833 250 375 250 0 6.28319’Â=Ÿ8cÌ.texŽŽ’ÄaŸ8c° lesŽŽï pa 3083 1000ï pa 3583 1000ï pa 3583 500ï pa 3083 500ï pa 3083 1000ïfp’ãí£Ÿ8ZóL‘üffŸþµUËaŽ‘‹°T‘þU>ŸŒEŽ‘ãxXŽŽï pa 3583 750ï pa 3917 750ïfpïsh 1.000ï pa 3817 725ï pa 3917 750ï pa 3817 775ï pa 3817 725ïfpï pa 3917 1000ï pa 4417 1000ï pa 4417 500ï pa 3917 500ï pa 3917 1000ïfp’"¦TŸ2ZóÌ.dviŽŽ’&¿Ÿ>Zó° leŽŽŽŽŽŸ`6Z‘]›¶Figure–UU1:‘qÇInclusion“of“ gures“and“macros“in“the“L‘üffŸþµUËaŽ‘‹°T‘þU>ŸŒEŽ‘ãxX“doGcumen¸ãtŽŽŽŸQ±‘#R%The–UU le,“Ìcct.m4,“°saš¸ãy‘ÿ*ª,“is“proGcessed“as“sho˜wn:ŽŸ†ï‘ÒÌm4–?ý$HOME/lib/libcct.m4“cct.m4“>“cct.picŽ¡Ÿê‘R%°after–ÛÀwhicš¸ãh“the“Ì.pic“° le“m˜ust“bGe“con˜v˜erted“to“a“Ì.tex“° le“con˜taining,›ý[for“example,˜Êtpic“°spGecials,Ž¡‘R%L‘üffŸþµUËaŽ‘‹°T‘þU>ŸŒEŽ‘ãxX–œÒgraphics,›®±(or“other“graphics“commands,˜suc¸ãh“as“for“Êmfpic°[6Ž›]“or“ÊPST‘ÿ «ric®9ks°[8Ž˜])“whic¸ãh“L‘üffŸþµUËaŽ‘‹°T‘þU>ŸŒEŽ‘ãxXŽ¡‘R%will›%#con•¸ãv“ert˜or˜include˜in˜a˜Ì.dvi˜° le.‘á0The˜Ì.dvi˜° le˜is˜then˜to˜bGe˜view“ed˜or˜prin“ted˜b“y˜a˜driv“erŽ¡‘R%capable–ÿyof“inš¸ãterpreting“an˜y“Ì\special“°commands“inserted“b˜y“the“Êpic“°prošGcessor.‘ p4In“the“ab˜o•¸ãv“eŽ¡‘R%example,‘UUÌ$Ž‘•RHOME/lib–UU°is“the“directory“in“whicš¸ãh“ les“Ìgpic.m4“°and“Ìlibcct.m4“°ha˜v˜e“bGeen“installed.ŽŸ R`‘R%É3Ž‘,+¹The–LËPic“proqcessorŽ¦‘R%°The–°LÊpic“°language“de nes“the“folloš¸ãwing“elemen˜tary“graphics“ob‘Ž8jects:‘'µÌline,–?ýbox,“arc,“arrow,Ž¡‘R%ellipse,–?ýcircle,“spline,–‘í°text›…Ïstring,“and˜bloGc•¸ãks˜con“taining˜simpler˜ob‘Ž8jects.‘4In˜addition,‘‘íloGcalŽŽŸ’é1ŽŽŒ‹* ¤çРýI0a ˜ÏŸ ýŠ0a‘R%°and–j·global“v‘ÿqÇariables,›™£elemen¸ãtary“mathematical“functions,˜structured“ob‘Ž8jects,˜loGoping“and“branc¸ãhing,Ž¤ ‘R%and–sñelemenš¸ãtary“macro“and“ le“facilities“are“a˜v‘ÿqÇailable.‘Í›The“graphics“ob‘Ž8jects“are“dra˜wn“b˜y“absoluteŽ¡‘R%lošGcation,‘…òor–|9relativ¸ãe“to“previously-de ned“ob‘Ž8jects“or“lo˜cations.‘ærAš¸ãt“all“times“a“curren˜t“loGcation“andŽ¡‘R%dra¸ãwing–UUdirection“are“de ned.Ž¡‘#R%T‘ÿ*ªo›Ócon•¸ãv“ert˜Êpic˜°to˜T‘ÿ*ªeX‘Åinput˜one˜can˜use[3Ž‘]˜Êgpic‘’ -t˜°with˜a˜prin“ter˜driv“er˜that˜understands˜ÊtpicŽ¡‘R%°spGecials,–UUtš¸ãypically[7Ž‘]“Êdvips°.‘qÇTh˜us,“for“the“previous“example“the“commandŽ©[ë‘$Ìgpic–?ý-t“cct.pic“>“cct.texŽ¡Ÿ ¿{‘R%°creates–@ a“ le“for“inclusion“in“the“L‘üffŸþµUËaŽ‘‹°T‘þU>ŸŒEŽ‘ãxX“došGcumen¸ãt.‘j®ÊPic“°pro˜cessors“con¸ãtain“basic“macro“facilities,‘DMsoŽ¡‘R%some–UUof“the“concepts“applied“here“require“only“a“Êpic“°proGcessor.Ž¡‘#R%With–òõjudicious“use“of“macros“the“features“of“bšGoth“Êm4“°and“Êpic“°can“b˜e“exploited.‘Pü(The“fastidiousŽ¡‘R%migh•¸ãt›ûÙobserv“e˜that˜there˜are˜3˜languages˜bGeing˜scram“bled:‘¾ÏÊm4°,–%zÊpic°,“and˜the˜Êtpic,“tex˜°or˜otherŽ¡‘R%output,›Ћnot–¯Xto“men¸ãtion“the“meta-language“of“the“macros,˜and“that“this“mixture“migh¸ãt“bGe“a“problem,Ž¡‘R%but–UUexpGerience“implies“otherwise.)Ž¡‘#R%A‘†mÊpic–†y°manš¸ãual[5Ž‘]“can“bGe“obtained“b˜y“emailing“to“Ìnetlib@research.att.com“°with“the“messageŽ¡‘R%b•Go“dy›UUÌsend–?ý116“from“research/cstr,˜°or˜b¸ãy˜ftp˜asŽ¦‘R%Ìftp://netlib.att.com/netlib/att/cs/cstr/116.ps.Z.Ž¦‘#R%°F‘ÿ*ªurther– yexplanation“is“a¸ãv‘ÿqÇailable,›¥for“example,˜from“the“Êgpic“°`man'“page,˜part“of“the“GNU‘ fÊgro Ž¡‘R%°pacš¸ãk‘ÿqÇage.‘†ªF‘ÿ*ªor–öa“discussion“of“the“use“of“\little“languages"“in“doGcumen˜t“proGduction,‘3^and“of“pic“inŽ¡‘R%particular,–UUsee“Chapter“9“of“[2Ž‘].ŽŸ îr‘R%É4Ž‘,+¹Basic›LËt•Žïw“o-terminal˜elemen“tsŽŸç‘R%°All–dfundamenš¸ãtal“t˜w˜o-terminal“elemen˜t“macros“ha˜v˜e“bGeen“constructed“according“to“the“con˜v˜en˜tionsŽ¡‘R%describ•Ged‘UUb“elo¸ãw.Ž¡‘#R%First,‘„all–Ïdraš¸ãwing“macros“ha˜v˜e“default“argumen˜ts,‘„so“that“only“argumen˜ts“di eren˜t“from“defaultŽ¡‘R%need–UUbšGe“sp˜eci ed.‘qÇThe“argumenš¸ãts“are“giv˜en“in“Sec.“14.Ž¡‘#R%Consider–UUthe“resistor“shoš¸ãwn“in“Fig.“2,“whic˜h“also“serv˜es“as“a“useful“example“of“Êpic“°commands.ŽŸnV柟Hן-‘Sïpn 28ïpa 0 500ï pa 1000 500ï pa 1083 333ï pa 1250 667ï pa 1417 333ï pa 1583 667ï pa 1750 333ï pa 1917 667ï pa 2000 500ï pa 3000 500ïfpïpn 6ï pa 1000 667ï pa 2000 667ï pa 2000 333ï pa 1000 333ï pa 1000 667ïdt 0.050ï pa 1500 667ï pa 1500 867ï pa 1600 967ï pa 1700 967ïspïsh 1.000ï pa 1475 767ï pa 1500 667ï pa 1525 767ï pa 1475 767ïfp‘zÛØŸH šó"p®0J cmsl10Ílast–UU°[“]ŽŽïpa 0 550ïpa 0 750ïfpïsh 1.000ï pa -24 650ïpa 0 550ï pa 25 650ï pa -24 650ïfp‘îoŸ>ZóÍR1.startŽŽï pa 3000 550ï pa 3000 750ïfpïsh 1.000ï pa 2975 650ï pa 3000 550ï pa 3025 650ï pa 2975 650ïfp’ÉvvŸ>ZóR1.endŽŽïpa 0 450ïpa 0 0ïfpï pa 3000 450ï pa 3000 0ïfpïpa 0 50ï pa 1300 50ïfpïsh 1.000ï pa 100 75ïpa 0 50ï pa 100 25ï pa 100 75ïfp‘aþnŸÄ8elen‘™˜‰ffŽŽŽï pa 1700 50ï pa 3000 50ïfpïsh 1.000ï pa 2900 25ï pa 3000 50ï pa 2900 75ï pa 2900 25ïfpï pa 500 450ï pa 500 150ïfpï pa 2500 450ï pa 2500 150ïfpï pa 500 200ï pa 1250 200ïfpïsh 1.000ï pa 600 225ï pa 500 200ï pa 600 175ï pa 600 225ïfp‘]E‰Ÿ›Fdimen‘™˜‰ffŽŽŽï pa 1750 200ï pa 2500 200ïfpïsh 1.000ï pa 2400 175ï pa 2500 200ï pa 2400 225ï pa 2400 175ïfpŽŽŽŸ^7)‘`ñF°Figure–UU2:‘qÇResistor“(with“labšGel“ó  b> cmmi10³RÇ°1),“sho¸ãwing“the“enclosing“blo˜c¸ãkŽŽŽŸ¼/‘#R%The–8 rst“line“of“a“source“ le“bGegins“with“Ì.PS‘8 °with“optional“further“argumen¸ãts,‘=íand“the“last“lineŽ¤ ‘R%is–UUnormally“Ì.PE°.“The“ rst“part“of“the“source“for“Fig.“2“is“shoš¸ãwn“bGelo˜w:ŽŸ[ë‘R%ó&ߤN cmtt9Ñ.PSŽ¡‘"~çcct_initŽ¡‘"~çlinewid–¹–=“2.0Ž¡‘"~çlinethick_(2.0)ŽŸ‘R%R1:‘¹–resistorŽ¦‘#R%°These–UUlines“and“the“remaining“source“lines“are“explained“bGelo¸ãw:Ž¦‘ ‹1.ŽŽŽ‘-R%The–áL rst“line“in•¸ãv“ok“es–áLan“almost-emptš¸ãy“macro“whic˜h“initializes“loGcal“v‘ÿqÇariables“used“b˜y“someŽ¤ ‘-R%circuit-elemenš¸ãt–ì€macros.‘NÖThis“macro“can“bGe“customized“to“set“line“thic˜knesses,‘xmaxim˜um“pageŽ¡‘-R%sizes,–UUscale“parameters,“or“other“global“quan¸ãtities“as“desired.ŽŽŸ’é2ŽŽŒ‹¯ ¤çРýI0a ˜ÏŸ ýŠ0a‘ ‹°2.ŽŽŽ‘-R%By–äÅdefault,‘ûHthe“size“of“t•¸ãw“o-terminal›äÅelemen“ts˜is˜a˜m“ultiple˜of˜the˜Êpic˜°v‘ÿqÇariable˜Ìlinewid,‘ûH°whic“hŽ¤ ‘-R%has–initial“v›ÿqÇalue“0³:°5‘ª¨in.,‘AEso“the“v˜alue“2³:°0“is“assigned“to“this“v˜ariable“to“mak¸ãe“a“suitably“bigŽ¡‘-R%diagram–à for“this“manš¸ãual.‘)The“b•Go“dy–à size“of“an“elemen˜t“is“determined“b˜y“the“macro“Ìdimen‘¡E‰ff&fŽ‘Ç«°,Ž¡‘-R%whicš¸ãh–¶Hev‘ÿqÇaluates“b˜y“default“to“Ìlinewid,‘Ö°and“the“default“elemen˜t“length“length“is“Ìelen‘¡E‰ff&fŽ‘Ç«,‘Ö°whic˜hŽ¡‘-R%is–å­Ìdimen‘¡E‰ff&fŽ‘Ç«*3/2“°b¸ãy“default.›LThese“dimensions“can“all“bGe“customized“if“necessary–ÿ*ª.˜(F“or‘å­resistors,Ž¡‘-R%the–UUlength“of“the“b•Go“dy–UUis“Ìdimen‘¡E‰ff&fŽ›Ç«/2,“°and“the“width“is“Ìdimen‘¡E‰ff&fŽ˜/6.°)Ž¤3f‘ ‹3.ŽŽŽ‘-R%The–UUmacro“Ìlinethick‘¡E‰ff&fŽ‘°sets“the“thicš¸ãkness“of“subsequen˜t“lines“(to“2.0pt“in“the“example).Ž¡‘ ‹4.ŽŽŽ‘-R%The–l=sequence“of“draš¸ãwing“commands“to“whic˜h“a“t˜w˜o-terminal“macro“is“expanded“bGegins“withŽ¤ ‘-R%the–À™command“Ì`line–?ýinvis“ó !",š cmsy10¶–ª¨“Ž‘ê¤Ì'–À™°where“the“part“folloš¸ãwing“Ì`line‘?ýinvis'“°is“the“ rst“argumen˜tŽ¡‘-R%of–ð…the“macro“if“it“exists,‘Qotherwise“this“part“spGeci es“length“Ìelen‘¡E‰ff&fŽ‘¸0°in“the“curren¸ãt“direction.Ž¡‘-R%The–¯inš¸ãvisible“line“is“ rst“dra˜wn,‘@Æand“the“elemen˜t“is“dra˜wn“on“top“of“the“line.‘¦ÖThe“curren˜tŽ¡‘-R%direction–UUis“initially“to“the“righš¸ãt,“so“in“the“example“the“resistor“is“dra˜wn“to“the“righ˜t.Ž©3f‘ ‹5.ŽŽŽ‘-R%The–¯elemenš¸ãt|rather“the“initially-dra˜wn“in˜visible“line|can“bGe“giv˜en“a“name“(ÌR1“°in“the“exam-Ž¡‘-R%ple,‘¹Uso–’Uthat“pGoinš¸ãts“ÌR1.start“°and“ÌR1.end“°are“de ned“as“sho˜wn,‘¹Ualso“ÌR1.center“°is“de ned).‘0ÇPicŽ¡‘-R%place–2Ònames“bšGegin“with“an“upp˜er-case“letter,‘9¹whereas“v‘ÿqÇariable“names“b˜egin“with“a“lo•¸ãw“er-caseŽ¡‘-R%letter.Ž¦‘ ‹6.ŽŽŽ‘-R%The–[Íelemenš¸ãt“b•Go“dy–[Íis“enclosed“b˜y“a“bloGc˜k,‘kwhic˜h“later“can“bšGe“referenced“for“placing“lab˜elsŽ¡‘-R%around–œthe“elemenš¸ãt.‘ÍœThe“bloGc˜k“correspGonds“to“an“in˜visible“rectangle“of“whic˜h“the“top“andŽ¡‘-R%bGottom–ëWare“horizonš¸ãtal,‘P×and“the“sides“of“whic˜h“are“v˜ertical,‘P×regardless“of“the“direction“inŽ¡‘-R%whicš¸ãh–ithe“elemen˜t“is“dra˜wn.‘®DIn“the“diagram“a“dotted“bGo˜x“has“bGeen“dra˜wn“to“sho˜w“the“bloGc˜kŽ¡‘-R%bGoundaries.Ž¦‘ ‹7.ŽŽŽ‘-R%The–Á¨last“sub-elemen•¸ãt,›ܼiden“tical–Á¨to“the“ rst,˜in“eacš¸ãh“t˜w˜o-terminal“elemen˜t“is“an“in˜visible“lineŽ¡‘-R%that–UUcan“also“bšGe“referenced“later“to“place“lab˜els“or“other“elemen¸ãts.Ž¤fΑ#R%T‘ÿ*ªo–±proGduce“Fig.“2“the“folloš¸ãwing“em˜bGellishmen˜ts“w˜ere“included“after“the“previously-sho˜wn“source:Ž¡‘"~çÑthinlines_Ž¤ ‘"~çbox–¹–dotted“wid“last“[].wid“ht“last“[].ht“at“last“[]Ž©‘"~çspline–¹–<-“down“0.2“then“down“0.1“right“0.1“then“right“0.1“\Ž¡‘0«©from–¹–last“[].sŽ¡‘"~ç"{\sl–¹–last}“[“]"“ljustŽ¦‘"~çarrow–¹–<-“down“0.2“from“R1.start+(0,-0.05);“"{\sl“R1.start}"“belowŽ¡‘"~çarrow–¹–<-“down“0.2“from“R1.end+(0,-0.05);“"{\sl“R1.end}"“belowŽ¦‘"~çdimension_(from–¹–R1.start“to“R1.end,0.45,{\sl“elen\_},0.4)Ž¡‘"~çdimension_(right_–¹–dimen_“from“R1.c-(dimen_/2,0),0.3,Ž¡‘0«©{\sl‘¹–dimen\_},0.5)Ž¡‘R%.PEŽŸfΑ#R%°These–UUlines“ha•¸ãv“e–UUthe“follo¸ãwing“explanation.ŽŸfÍ‘#R$¶ŽŽŽ‘-R%°The–õ1line“thicš¸ãkness“is“set“to“the“default“thin“v‘ÿqÇalue“of“0.4pt,‘land“the“bGo˜x“displa˜ying“the“elemen˜tŽ¤ ‘-R%b•Go“dy›–[blo“c•¸ãk˜is˜dra“wn.‘4ØNotice˜ho“w˜the˜width˜and˜heigh“t˜can˜b•Ge˜sp“eci ed,‘¦œand˜the˜b“o•¸ãx˜cen“treŽ¡‘-R%pšGositioned–UUat“the“cen¸ãtre“of“the“blo˜c¸ãk.ŽŸ3f‘#R$¶ŽŽŽ‘-R%°The–\next“paragraph“draš¸ãws“t˜w˜o“ob‘Ž8jects,‘%[a“spline“with“an“arro˜whead,‘%[and“a“string“left“justi edŽ¡‘-R%at–à?the“end“of“the“spline.‘…Other“string-pšGositioning“mo˜di ers“than“Ìljust“°are“Ìrjust,‘ùabove,Ž¡‘-R%°and–ܯÌbelow.‘I°Lines“to“bšGe“read“b¸ãy“Êpic“°can“b˜e“con•¸ãtin“ued›ܯb“y˜putting˜a˜bac“kslash˜as˜the˜righ“tmostŽ¡‘-R%cš¸ãharacter.‘· Where–lsmeaningful,‘r:ÌPic“°ob‘Ž8jects“ha˜v˜e“pre-de ned“compass“corners,‘r:including“Ì.s“°inŽ¡‘-R%the–t­example,›¡›others“bGeing“Ì.n,˜.e,˜.w,˜.ne,˜.nw,˜.sw,˜.se,˜.c,˜.start,˜.end.‘&å°F‘ÿ*ªurthermoreŽ¡‘-R%an•¸ãy›ûïpGosition,‘%–suc“h˜as˜ÌR1.c˜°in˜the˜example,‘%–has˜an˜³x°-co•Gordinate˜and˜³y[Ù°-co“ordinate˜usable˜inŽ¡‘-R%expressions–UUas,“for“example,“ÌR1.c.x“°and“ÌR1.c.y.ŽŽŸ’é°3ŽŽŒ‹#M ¤çРýI0a ˜ÏŸ ýŠ0a‘#R$¶ŽŽŽ‘-R%°The–AŸnext“paragraph“draš¸ãws“the“arro˜ws“and“labGels“at“the“ends“of“the“resistor.‘6¤P˜ositions“onŽ¤ ‘-R%the–wÙdraš¸ãwing“can“bGe“de ned“in“man˜y“w˜a˜ys,‘Àzincluding“referring“to“a“corner“of“an“ob‘Ž8ject“orŽ¡‘-R%ob‘Ž8ject-name,–UUor“b¸ãy“adding“paired“arithmetic“expressions“to“a“pGosition“as“illustrated.ŽŸç0‘#R$¶ŽŽŽ‘-R%°The–¡™last“paragraph“in•¸ãv“ok“es–¡™a“macro“for“dimensioning“diagrams.‘V’Lines“can“bšGe“brok¸ãen“b˜eforeŽ¡‘-R%a–UUmacro“argumen¸ãt“bšGecause“Êm4“°ignores“white“space“b˜efore“argumen¸ãts.ŽŸ!‘R%É5Ž‘,+¹Macro‘LËargumenŽïtsŽŸç‘R%°Fig.–yŽ3“is“a“table“of“the“2-terminal“elemenš¸ãts“included“with“this“pac˜k‘ÿqÇage,‘‚all“dra˜wn“with“the“curren˜tŽ¡‘R%direction–°½to“the“righ•¸ãt,‘–whic“h–°½is“the“default“pic“draš¸ãwing“direction.‘ƒþSome“elemen˜ts“are“includedŽ¡‘R%more–ˆêthan“once“to“illustrate“their“argumenš¸ãts.‘ †In“the“Êm4“°language,‘•Ïmacro“argumen˜ts“are“includedŽ yÖ þ”Ô!‘@Tïpn 11ï pa 38 125ï pa 288 125ï pa 308 83ï pa 350 167ï pa 392 83ï pa 433 167ï pa 475 83ï pa 517 167ï pa 538 125ï pa 788 125ïfp‘dOŸ /¿ÌresistorŽŽï pa 38 425ï pa 163 425ï pa 183 383ï pa 225 467ï pa 267 383ï pa 308 467ï pa 350 383ï pa 392 467ï pa 433 383ï pa 475 467ï pa 517 383ï pa 558 467ï pa 600 383ï pa 642 467ï pa 663 425ï pa 788 425ïfp‘dOŸ Þ$resistor(,6)ŽŽï pa 38 725ï pa 288 725ïfpï#ar 319 725 31 31 -3.141593 0.000000ï#ar 381 725 31 31 -3.141593 0.000000ï#ar 444 725 31 31 -3.141593 0.000000ï#ar 506 725 31 31 -3.141593 0.000000ï pa 538 725ï pa 788 725ïfp‘d<îŸ6ŒˆinductorŽŽï pa 38 1025ï pa 271 1025ïfpï#ar 316 1004 50 50 2.705260 7.155850ï#ar 380 1004 50 50 2.268928 7.155850ï#ar 445 1004 50 50 2.268928 7.155850ï#ar 509 1004 50 50 2.268928 6.719518ï pa 554 1025ï pa 788 1025ïfp‘d<îŸL:¤inductor(,W)ŽŽï pa 38 1325ï pa 288 1325ïfpï$ar 319 1325 31 31 -3.141593 0.000000ï$ar 381 1325 31 31 -3.141593 0.000000ï$ar 444 1325 31 31 -3.141593 0.000000ï$ar 506 1325 31 31 -3.141593 0.000000ï pa 538 1325ï pa 788 1325ïfpï pa 288 1273ï pa 538 1273ïfpï pa 288 1242ï pa 538 1242ïfp‘d<îŸaé inductor(,,,M)ŽŽï pa 38 1625ï pa 206 1625ïfpï#ar 252 1604 50 50 2.705260 7.155850ï#ar 316 1604 50 50 2.268928 7.155850ï#ar 380 1604 50 50 2.268928 7.155850ï#ar 445 1604 50 50 2.268928 7.155850ï#ar 509 1604 50 50 2.268928 7.155850ï#ar 573 1604 50 50 2.268928 6.719518ï pa 619 1625ï pa 788 1625ïfpï pa 202 1533ï pa 623 1533ïfpï pa 202 1502ï pa 623 1502ïfp‘d<îŸw—minductor(,W,6,M)ŽŽï pa 38 1925ï pa 388 1925ïfpï pa 388 2008ï pa 388 1842ïfpï pa 438 2008ï pa 438 1842ïfpï pa 438 1925ï pa 788 1925ïfp‘d<î EÒcapacitorŽŽï pa 38 2225ï pa 388 2225ïfpï pa 388 2288ï pa 388 2163ïfpï%ar 546 2225 125 125 2.617994 3.665191ï pa 421 2225ï pa 788 2225ïfp‘d<î ¢ô6capacitor(,C)ŽŽï pa 38 2525ï pa 369 2525ïfpï pa 369 2525ï pa 456 2525ïfpïsh 1.000ï pa 356 2482ï pa 456 2525ï pa 356 2568ï pa 356 2482ïfpï pa 456 2575ï pa 456 2475ïfpï pa 456 2525ï pa 788 2525ïfp‘d<î ¸¢SdiodeŽŽï pa 38 2825ï pa 369 2825ïfpï pa 369 2825ï pa 456 2825ïfpïsh 1.000ï pa 356 2782ï pa 456 2825ï pa 356 2868ï pa 356 2782ïfpï pa 431 2875ï pa 456 2875ï pa 456 2775ï pa 481 2775ïfpï pa 456 2825ï pa 788 2825ïfp‘d<î ÎP·diode(,Z)ŽŽï pa 38 3125ï pa 326 3125ïfpï pa 326 3125ï pa 413 3125ïfpïsh 1.000ï pa 313 3082ï pa 413 3125ï pa 313 3168ï pa 313 3082ïfpï pa 499 3125ï pa 413 3125ïfpïsh 1.000ï pa 513 3168ï pa 413 3125ï pa 513 3082ï pa 513 3168ïfpï pa 388 3175ï pa 413 3175ï pa 413 3075ï pa 438 3075ïfpï pa 499 3125ï pa 788 3125ïfp‘d<î ãÿdiode(,BD)ŽŽï pa 38 3425ï pa 373 3425ïfpï pa 373 3467ï pa 373 3383ïfpï pa 392 3425ï pa 392 3363ï pa 433 3363ï pa 433 3488ï pa 392 3488ï pa 392 3425ïfpï pa 452 3467ï pa 452 3383ïfpï pa 452 3425ï pa 788 3425ïfp‘d<î ù­€xtalŽŽï pa 38 3725ï pa 288 3725ïfpïar 413 3725 125 125 0 6.28319ï pa 538 3725ï pa 788 3725ïfp‘d<î [äsourceŽŽï pa 38 4025ï pa 288 4025ïfpïar 413 4025 125 125 0 6.28319ï pa 319 4025ï pa 506 4025ïfpïsh 1.000ï pa 406 4000ï pa 506 4025ï pa 406 4050ï pa 406 4000ïfpï pa 538 4025ï pa 788 4025ïfp‘d<î % source(,I)ŽŽï pa 38 4325ï pa 288 4325ïfpïar 413 4325 125 125 0 6.28319‘gò :¸e¶ŽŽ‘p– :¸e°+ŽŽï pa 538 4325ï pa 788 4325ïfp‘d<î :¸eÌsource(,V)ŽŽï pa 38 4625ï pa 288 4625ïfpïar 413 4625 125 125 0 6.28319ï$ar 371 4625 42 42 -3.141593 0.000000ï#ar 454 4625 42 42 0.000000 3.141593ï pa 538 4625ï pa 788 4625ïfp‘d<î PfÊsource(,AC)ŽŽï pa 3038 125ï pa 3288 125ïfpïar 3413 125 125 125 0 6.28319’ïäóŸ /¿³°AŽŽï pa 3538 125ï pa 3788 125ïfp’= JŸ /¿Ìsource(,"$Ž–?ý\mu$Ž“A")ŽŽï pa 3038 425ï pa 3263 425ïfpï pa 3263 425ï pa 3413 275ï pa 3563 425ïfpï pa 3263 425ï pa 3413 575ï pa 3563 425ï pa 3788 425ïfp’= JŸ Þ$consourceŽŽï pa 3038 725ï pa 3263 725ïfpï pa 3263 725ï pa 3413 575ï pa 3563 725ïfpï pa 3263 725ï pa 3413 875ï pa 3563 725ï pa 3788 725ïfpï pa 3300 725ï pa 3525 725ïfpïsh 1.000ï pa 3425 700ï pa 3525 725ï pa 3425 750ï pa 3425 700ïfp’= JŸ6Œˆconsource(,I)ŽŽï pa 3038 1025ï pa 3263 1025ïfpï pa 3263 1025ï pa 3413 875ï pa 3563 1025ïfpï pa 3263 1025ï pa 3413 1175ï pa 3563 1025ï pa 3788 1025ïfp’íFÈŸL:¤¶ŽŽ’ø0xŸL:¤°+ŽŽ’= JŸL:¤Ìconsource(,V)ŽŽï pa 3038 1325ï pa 3392 1325ïfpï pa 3392 1263ï pa 3392 1388ïfpï pa 3433 1200ï pa 3433 1450ïfpï pa 3433 1325ï pa 3787 1325ïfp’= JŸaé batteryŽŽï pa 3038 1625ï pa 3308 1625ïfpï pa 3308 1563ï pa 3308 1688ïfpï pa 3350 1500ï pa 3350 1750ïfpï pa 3392 1563ï pa 3392 1688ïfpï pa 3433 1500ï pa 3433 1750ïfpï pa 3475 1563ï pa 3475 1688ïfpï pa 3517 1500ï pa 3517 1750ïfpï pa 3517 1625ï pa 3787 1625ïfp’= JŸw—mbattery(,3)ŽŽï pa 3038 1925ï pa 3288 1925ïfpï pa 3288 1925ï pa 3288 1875ï pa 3538 1875ï pa 3538 1975ï pa 3288 1975ï pa 3288 1925ïfpï pa 3538 1925ï pa 3788 1925ïfp’= J EÒeboxŽŽï pa 3038 2225ï pa 3163 2225ïfpï pa 3163 2225ï pa 3163 2075ï pa 3663 2075ï pa 3663 2375ï pa 3163 2375ï pa 3163 2225ïfpï pa 3663 2225ï pa 3788 2225ïfp’= J ¢ô6ebox(,.5,.3)ŽŽïsh 1.000ïar 3038 2525 20 20 0 6.28319ïsh 1.000ïar 3788 2525 20 20 0 6.28319’= J ¸¢SgapŽŽï pa 3038 2825ï pa 3329 2825ïfpï pa 3329 2825ï pa 3454 2700ïfpï pa 3496 2825ï pa 3788 2825ïfp’= J ÎP·switchŽŽï pa 3038 3125ï pa 3329 3125ïfpï pa 3329 3125ï pa 3454 3000ïfpï(ar 3224 3192 233 233 -0.938114 -0.196350ïsh 1.000ï pa 3394 3050ï pa 3362 3004ï pa 3415 3022ï pa 3394 3050ïfpï pa 3496 3125ï pa 3788 3125ïfp’= J ãÿswitch(,,O)ŽŽï pa 3038 3325ï pa 3329 3325ïfpï pa 3329 3325ï pa 3454 3450ïfpï&ar 3214 3277 237 237 0.065450 0.719948ïsh 1.000ï pa 3429 3345ï pa 3450 3293ï pa 3464 3347ï pa 3429 3345ïfpï pa 3496 3325ï pa 3788 3325ïfp’= J ù­€switch(,R,C)ŽŽï pa 3038 3725ï pa 3163 3725ïfpï pa 3663 3725ï pa 3163 3975ï pa 3163 3475ï pa 3663 3725ï pa 3788 3725ïfp’= J [äampŽŽï pa 3038 4225ï pa 3267 4225ïfpï pa 3383 4400ï pa 3267 4400ï pa 3267 4050ï pa 3383 4050ïfpï'ar 3383 4225 175 175 -1.570796 1.570796ï pa 3558 4225ï pa 3787 4225ïfp’= J 3~tdelayŽŽŽŽŽ i:‘k_ñ°Figure–UU3:‘qÇ2-terminal“elemen¸ãt“macros,“with“some“v‘ÿqÇariationsŽŽŽŸõi‘R%within–Nparenš¸ãtheses“whic˜h“follo˜w“the“macro“name,‘Âwithout“spaces“bGet˜w˜een“the“name“and“the“opGeningŽ¡‘R%paren¸ãthesis.Ž¡‘#R%The–…¯ rst“argumenš¸ãt“of“the“t˜w˜o-terminal“elemen˜ts,›¯7if“included,˜de nes“the“line“direction“and“lengthŽ¡‘R%along–Cwhicš¸ãh“the“elemen˜t“is“dra˜wn.‘\ÁOther“argumen˜ts“of“sev˜eral“macros“are“used“to“proGduce“v‘ÿqÇarian˜tsŽ¡‘R%of–UUthe“default“elemen•¸ãts.‘qÇTh“us,–UUfor“example,Ž¡‘#R%Ìresistor(up‘¡E‰ff&fŽ‘ ¨1.25)Ž¡‘R%°draš¸ãws–BÊa“resistor“1.25“units“long“up“from“the“curren˜t“pGosition.‘k™The“name“Ìup‘¡E‰ff&fŽ‘ u°is“a“macro“that“resetsŽ¡‘R%the–UUcurrenš¸ãt“macro“and“Ìpic“°directional“parameters“to“pGoin˜t“up.Ž¡‘#R%Instead–UUof“de ning“a“direction“and“distance“as“abGo•¸ãv“e,–UUsome“v‘ÿqÇarianš¸ãts“of“the“ rst“argumen˜t“areŽŽŸ’é4ŽŽŒ‹5 ¤çРýI0a ˜ÏŸ ýŠ0a‘#R%Ìup‘¡E‰ff&fŽ‘ ¨1.25‘?ýfrom‘UUÍpGositionŽ¤ ‘#R%Ìto‘UUÍpGositionŽ¡‘#R%Ìfrom–UUÍpšGosition“Ìto“Íp˜ositionŽ¡‘#R%Ìwith–UUÍcorner‘ Ìat“ÍpGositionŽ¡‘R%°where–UUfor“a“line,“the“Ícorner‘ °is“one“of“Ì.start°,“Ì.end°,“or“Ì.center°.Ž¡‘#R%A‘ÔpšGosition–äma¸ãy“b˜e“absolute,›ŸÇsuc¸ãh“as“Í(expression,˜expression)°,˜or“Í(p•Gosition,p“osition)°,˜where‘ätheŽ¡‘R%latter–‚tak¸ães“the“x-cošGordinate“from“the“ rst“p˜osition,‘¬Wand“the“y-co˜ordinate“from“the“second.‘+^P¸ãositionsŽ¡‘R%can–UUbGe“named,“th¸ãusŽ¡‘#R%ÌNode1:– ú(0,0);›?ýNode2:“(1,1);˜inductor˜from˜Node1˜to˜Node2,Ž¡‘R%°or,–UUfor“example,Ž¡‘#R%ÌAmp1:‘ úopamp–?ýwith“.In1“at“Here;“line“up“0.5“from“Amp1.OutŽ¡‘R%°where–œeÌAmp1“°bšGecomes“the“name“for“a“blo˜cš¸ãk“con˜taining“pGositions“ÌIn1“°and“ÌOut“°prede ned“in“the“opampŽ¡‘R%macro.‘m{Referring–Hpto“ÌAmp1“°is“the“same“as“ÌAmp1.center,›K°a“compass“corner“can“bGe“used,˜e.g.“ÌAmp1.nŽ¡‘R%°for–UUthe“top,“and“ÌAmp1.In1“°is“the“named“pšGosition“within“the“blo˜c¸ãk.Ž¡‘#R%The–UUname“ÌHere“°is“the“default“for“the“currenš¸ãt“dra˜wing“pGosition.Ž¡‘#R%Another–UUpšGossibilit¸ãy“for“de ning“p˜ositions“isŽ¡‘#R%Íexpression›UUÌof–?ýthe“way“between˜Íp•Gosition˜Ìand˜Íp“ositionŽ¡‘R%°whic¸ãh–UUis“abbreviated“asŽ¡‘#R%Íexpression–UUÌ<“ÍpšGosition“Ì,“Íp˜osition“Ì>Ž¡‘R%°but–%Ccare“has“to“bGe“used“in“giving“this“construction“to“Ìm4°,‘Y?since“the“comma“maš¸ãy“ha˜v˜e“to“bGe“putŽ¡‘R%within–UUquotes,“Ì`,'“°to“distinguish“it“from“the“Ìm4“°argumen¸ãt-separator.Ž¡‘#R%Pš¸ãositions–UUcan“refer“to“previously-dra˜wn“elemen˜tary“ÊPic“°ob‘Ž8jects“within“the“curren˜t“bloGc˜k,“e.g.Ž¡‘#R%Ìresistor–?ýfrom“1st“line.start“to“3rd“last“[].s,Ž¡‘R%°and–{† nally‘ÿ*ª,‘…pšGositions“can“b˜e“calculated“using“v‘ÿqÇariables,‘…whicš¸ãh“m˜ust“bGegin“with“a“lo˜w˜er-case“letter,Ž¡‘R%and–UUof“whicš¸ãh“the“scopGe“is“the“curren˜t“bloGc˜k.‘qÇTh˜us,“for“example,Ž¡‘#R%Ìtheta–?ý=“atan2(B.y-A.y,B.x-A.x)Ž¡‘#R%line–?ýto“Here+(3*cos(theta),3*sin(theta)).Ž¡‘#R%°A‘ÈŠÌPic–Èê°man¸ãual“should“bGe“consulted“for“more“examples,›%Ïand“for“other“facilities,˜suc¸ãh“as“theŽ¡‘R%branc•¸ãhing‘UUfacilit“y‘ÿ*ª,Ž¡‘#R%Ìif–UUÍexpression“Ìthen›?ý¶f“Ían¸ãything‘0˜¶g˜Ìelse˜¶f“Ían¸ãything‘0˜¶g°,Ž¡‘R%the–UUloGoping“facilit¸ãy‘ÿ*ª,Ž¡‘#R%Ìfor–UUÍv‘ÿqÇariable‘ä¼Ì=“Íexpression“Ìto“Íexpression“Ìby“Íexpression“Ìdo‘?ý¶f“Ían¸ãything‘0˜¶gÌ,Ž¡‘R%°opGerating-system–UUcommands,“string“handling,“and“ le“inclusion.Ž©!Ä‘R%É6Ž‘,+¹Branc•Žïh-curren“t‘LËarro“wsŽŸç‘R%°The‘UUmacroŽŸ‘$Ìb_current(label,position,direction)Ž¡ŸX‘R%°draš¸ãws–Ían“arro˜w“on“the“last-dra˜wn“t˜w˜o-terminal“elemen˜t“(i.e.“line),‘3+in˜w˜ard“b˜y“default,‘3+out˜w˜ard“ifŽ¡‘R%the–röthird“argumenš¸ãt“is“non-blank.‘Ê©The“ rst“argumen˜t“is“an“optional“labGel,‘º]of“whic˜h“the“defaultŽ¡‘R%pšGosition–1±is“the“macro“Ìabove‘¡E‰ff&fŽ‘Ç«,‘8Ò°whic¸ãh“ev‘ÿqÇaluates“to“ab˜o•¸ãv“e–1±if“the“currenš¸ãt“direction“is“righ˜t,‘8Òor“to“ljust,Ž¡‘R%bGeloš¸ãw,‘þrjust–Ü·if“the“curren˜t“direction“is“respGectiv˜ely“do˜wn,–þleft,“up.‘íA‘Ü”non-blank–Ü·second“argumen˜tŽ¡‘R%spšGeci es–žsanother“relativ¸ãe“p˜osition,›°ºfor“example“Ìbelow‘¡E‰ff&fŽ‘Ç«,˜°whic¸ãh“places“the“labšGel“b˜elo¸ãw“with“resp˜ectŽ¡‘R%to– ]the“curren¸ãt“direction,›)or“an“absolute“pGosition,˜for“example“Ìbelow,˜°or“Ìljust,˜°with“respGect“to“theŽ¡‘R%arro¸ãwhead.Ž¦‘R%É7Ž‘,+¹LabqelsŽŸç‘R%°Macros–UUfor“labGelling“t•¸ãw“o-terminal›UUelemen“ts˜are˜included:ŽŽŸ’é5ŽŽŒ‹Sû ¤çРýI0a ˜ÏŸ þ7óÏ ÿH<’Ÿh‘m ïpn 8ïpa 0 42ï pa 625 42ïpa 646 0ï pa 688 83ïpa 729 0ï pa 771 83ïpa 813 0ï pa 854 83ï pa 875 42ï pa 1500 42ïfpïpa 0 42ï pa 450 42ïfpïsh 1.000ï pa 350 17ï pa 450 42ï pa 350 67ï pa 350 17ïfp‘/[Ÿÿ0K³iŽŽŸ›‘ö÷\Ìresistor(right‘¡E‰ff&fŽ‘ ¨1.5)ŽŸ ‘ö÷\b‘¡E‰ff&fŽ‘Ç«current(i)ŽŽŽŽï pa 1500 875ï pa 875 875ï pa 854 917ï pa 813 833ï pa 771 917ï pa 729 833ï pa 688 917ï pa 646 833ï pa 625 875ïpa 0 875ïfpï pa 1500 875ï pa 1050 875ïfpïsh 1.000ï pa 1150 900ï pa 1050 875ï pa 1150 850ï pa 1150 900ïfp‘MÆ^ŸGc–³iŽŽŸRàñ‘ö÷\Ìresistor(left‘¡E‰ff&fŽ‘ ¨1.5)ŽŸ ‘ö÷\b‘¡E‰ff&fŽ‘Ç«current(i)ŽŽŽŽï pa 0 1708ï pa 625 1708ï pa 646 1667ï pa 688 1750ï pa 729 1667ï pa 771 1750ï pa 813 1667ï pa 854 1750ï pa 875 1708ï pa 1500 1708ïfpï pa 0 1708ï pa 450 1708ïfpïsh 1.000ï pa 350 1683ï pa 450 1708ï pa 350 1733ï pa 350 1683ïfp‘/[ ƒ–â³iŽŽ <‘ö÷\Ìresistor(right‘¡E‰ff&fŽ‘ ¨1.5)ŽŸ ‘ö÷\b‘¡E‰ff&fŽ–Ç«current(i,below‘¡E‰ff&fŽ“)ŽŽŽŽï pa 3500 42ï pa 2875 42ï pa 2854 83ï pa 2813 0ï pa 2771 83ï pa 2729 0ï pa 2688 83ï pa 2646 0ï pa 2625 42ï pa 2000 42ïfpï pa 3500 42ï pa 3050 42ïfpïsh 1.000ï pa 3150 67ï pa 3050 42ï pa 3150 17ï pa 3150 67ïfp’ÞP›Ÿÿ0K³iŽŽŸ›’‡™Ìresistor(left‘¡E‰ff&fŽ‘ ¨1.5)ŽŸ ’‡™b‘¡E‰ff&fŽ–Ç«current(i,below‘¡E‰ff&fŽ“)ŽŽŽŽï pa 2000 875ï pa 2625 875ï pa 2646 833ï pa 2688 917ï pa 2729 833ï pa 2771 917ï pa 2813 833ï pa 2854 917ï pa 2875 875ï pa 3500 875ïfpï pa 2000 875ï pa 2450 875ïfpïsh 1.000ï pa 2350 850ï pa 2450 875ï pa 2350 900ï pa 2350 850ïfp’«¹™ŸGc–³iŽŽŸRàñ’‡™Ìresistor(right‘¡E‰ff&fŽ‘ ¨1.5)ŽŸ ’‡™b‘¡E‰ff&fŽ‘Ç«current(i,below)ŽŽŽŽï pa 3500 1708ï pa 2875 1708ï pa 2854 1750ï pa 2813 1667ï pa 2771 1750ï pa 2729 1667ï pa 2688 1750ï pa 2646 1667ï pa 2625 1708ï pa 2000 1708ïfpï pa 3500 1708ï pa 3050 1708ïfpïsh 1.000ï pa 3150 1733ï pa 3050 1708ï pa 3150 1683ï pa 3150 1733ïfp’ÞP› ƒ–â³iŽŽ <’‡™Ìresistor(left‘¡E‰ff&fŽ‘ ¨1.5)ŽŸ ’‡™b‘¡E‰ff&fŽ‘Ç«current(i,below)ŽŽŽŽŽŽŽ µÑ§’¤µ°Figure–UU4:‘qÇIllustrating“Ìb‘¡E‰ff&fŽ‘Ç«currentŽŽŽŸÎK‘$llabel(arg1,arg2,arg3)Ž¤ ‘$clabel(arg1,arg2,arg3)Ž¡‘$rlabel(arg1,arg2,arg3)Ž¡‘$dlabel(long,lat,arg1,arg2,arg3)Ž¡Ÿ 1Û‘R%°The–×Ý rst“places“the“three“argumen•¸ãts,›øwhic“h–×Ýare“treated“as“math-moGde“strings,˜on“the“left“side“ofŽ¤ ‘R%the– ;elemenš¸ãt“bloGc˜k“ó'ý': cmti10Òwith›NÐr–ÿ}'esp“e“ct˜to˜the˜curr“ent˜dir“e“ction:‘w up,–\¡down,“left,“right.‘X¿°The– ;second“places“theŽ¡‘R%argumenš¸ãts–!•along“the“cen˜tre,‘+ïand“the“third“along“the“righ˜t“side.‘`‡Th˜us“a“simple“circuit“example“withŽ¡‘R%labGels‘UUisŽŸÎK‘R%Ñ.PSŽ¡‘R%cct_initŽ¡‘R%define(`dimen_',0.75)Ž¡‘R%loopwid–¹–=“1;“loopht“=“0.75Ž¡‘ÅQsource(up_–¹–loopht);“llabel(-,v_s,+)Ž¡‘ÅQresistor(right_–¹–loopwid);“llabel(,R,);“b_current(i)Ž¡‘ÅQinductor(down_–¹–loopht,W);“rlabel(,L,)Ž¡‘ÅQcapacitor(left_–¹–loopwid,C);“llabel(+,v_C,-);“rlabel(,C,)Ž¡‘R%.PEŽŸÎK‘R%°whic¸ãh–áprošGduces“Fig.“5.‘KThe“macro“Ìdlabel“°p˜erforms“the“ab˜o•¸ãv“e–áfunctions“for“an“obliquely-dra¸ãwn“ele-ŽŸw‹ìŸ–MŸ ®8’¼½¸ïpn 11ï pa 188 813ï pa 188 625ïfpïar 188 438 188 188 0 6.28319ï pa 188 250ï pa 188 63ïfp‘–HŸ6N¶ŽŽ‘ô¨Ÿ!Ϊ³vŸÿó 0e—rcmmi7´sŽŽŽ‘–HŸ md°+ŽŽï pa 188 63ï pa 500 63ïpa 531 0ï pa 594 125ïpa 656 0ï pa 719 125ïpa 781 0ï pa 844 125ï pa 875 63ï pa 1188 63ïfp‘-ãŸü'³RŽŽï pa 188 63ï pa 429 63ïfpïsh 1.000ï pa 329 37ï pa 429 63ï pa 329 88ï pa 329 37ïfp‘ªèŸ¢iŽŽï pa 1188 63ï pa 1188 225ïfpï$ar 1219 293 75 75 -2.007129 2.443461ï$ar 1219 389 75 75 -2.443461 2.443461ï$ar 1219 486 75 75 -2.443461 2.443461ï$ar 1219 582 75 75 -2.443461 2.007129ï pa 1188 650ï pa 1188 813ïfp‘Jó?Ÿ!ΪLŽŽï pa 1188 813ï pa 725 812ïfpï pa 725 719ï pa 725 906ïfpï%ar 488 812 188 188 -0.523599 0.523599ï pa 675 812ï pa 188 812ïfp‘7LÜŸBÕô°+ŽŽ‘+ïwŸI¡;³vŸÿ´CŽŽŽ‘$KŸBÕô¶ŽŽ‘-ÊpŸ0N³CŽŽŽŽŽŸgÁ9’”•L°Figure–UU5:‘qÇA“lošGop“with“lab˜elled“elemen¸ãtsŽŽŽŸõ^‘R%menš¸ãt,‘¥ placing–xùthe“three“macro“argumen˜ts“at“Ìvec‘¡E‰ff&fŽ–Ç«(-long,lat),›¥ vec‘¡E‰ff&fŽ“(0,lat),˜°and‘xùÌvec‘¡E‰ff&fŽ“(long,lat)ŽŸ ‘R%°respGectiv•¸ãely›UUrelativ“e˜to˜the˜cen“tre˜of˜the˜elemen“t.ŽŸ!‘R%É8Ž‘,+¹Diagram‘LËscalingŽŸç‘R%°The–UU nished“size“of“a“diagram“or“of“elemen¸ãts“whithin“it“can“bGe“easily“adjusted.ŽŽŸ’é6ŽŽŒ‹b@ ¤çРýI0a ˜ÏŸ ýŠ0a‘#R%°First,–uthe›« line,“e.g.˜`.PS‘ª±4.5'˜scales˜the˜en•¸ãtire˜dra“wing˜to˜a˜width˜of˜4.5in,‘uno˜matter˜whatŽ¤ ‘R%absolute–UUlengths“are“in“the“in¸ãterior.Ž¡‘#R%Second,›Þ¶resetting–ÃÍpGosition,––x°or,“when˜the˜bloGc•¸ãk˜con“tains˜a˜pre-de ned˜loGcation,‘–xusing˜Íelemen“t˜Ìwith˜ÍloGcation˜ÌatŽ¡‘R%ÍpGosition.‘qÇ°Macro–UUargumenš¸ãts“are“giv˜en“for“eac˜h“elemen˜t“in“Sec.“14.Ž¡‘#R%The–?aopšGerational“ampli er“is“enclosed“in“a“blo˜cš¸ãk“con˜taining“the“three“pre-de ned“in˜ternal“loGcationsŽ¡‘R%shoš¸ãwn–¶won“the“diagram,–Ö=ÌIn1,“In2,“°and‘¶wÌOut°,“whic˜h–¶wcan“bGe“referenced“in“later“commands,‘Ö=for“exampleŽ¡‘R%as–L`Ìlast‘?ý[].Out°.'‘`The“ rst“argumen¸ãt“de nes“the“direction“and“length“of“the“opamp,‘*but“the“pGositionŽ¡‘R%is–c—determined“either“bš¸ãy“pre-de ned“enclosing“bloGc˜k“of“the“opamp,‘“ñor“b˜y“a“construction“suc˜h“as“`ÌopampŽ¡‘R%with–?ý.In1“at“Here°'–'“whicš¸ãh“places“the“in˜ternal“pšGosition“ÌIn1“°at“the“sp˜eci ed“lo˜cation.‘è€There“areŽ¡‘R%optional–UUsecond“and“third“argumenš¸ãts“for“whic˜h“the“defaults“are“Ì$Ž–•R-$Ž“°and‘UUÌ$Ž“+$Ž“°respGectiv˜ely‘ÿ*ª.Ž¡‘#R%The– vtransformer“has“pre-de ned“inš¸ãternal“loGcations“ÌP1,–S>P2,“S1,“°and– vÌS2.‘Ó*°The“ rst“argumen˜tŽ¡‘R%spšGeci es–0Âthe“direction“and“distance“from“ÌP1“°to“ÌP2°,‘8with“p˜osition“determined“b¸ãy“the“enclosing“blo˜c¸ãkŽ¡‘R%as–Úfor“opamps.‘‰UThe“second“argumen¸ãt“places“the“secondary“side“of“the“transformer“to“the“left“orŽ¡‘R%righš¸ãt–UUof“the“dra˜wing“direction.ŽŸe6Ÿ¨»¬ŸõV‘8ë¹ïpn 11ï pa 83 317ï pa 83 442ïfpïpa 0 442ï pa 167 442ïfpï pa 28 463ï pa 139 463ïfpï pa 48 483ï pa 119 483ïfpï pa 1000 317ï pa 1167 317ïfpï pa 1028 337ï pa 1139 337ïfpï pa 1048 358ï pa 1119 358ïfpï pa 2908 317ï pa 2408 567ï pa 2408 67ï pa 2908 317ï pa 3033 317ïfp’°?¨ŸYó%©±Ê cmsy9ÐŽŽ’°?¨Ÿ"¡ó#o´‹Ç cmr9Î+ŽŽïpn 6ï pa 2408 192ï pa 2308 92ï pa 2208 42ïspïsh 1.000ï pa 2355 103ï pa 2408 192ï pa 2320 139ï pa 2355 103ïfp’™~Ÿ0KÌIn1ŽŽïsh 1.000ïar 2408 192 20 20 0 6.28319ï pa 2408 442ï pa 2308 542ï pa 2208 592ïspïsh 1.000ï pa 2320 495ï pa 2408 442ï pa 2355 530ï pa 2320 495ïfp’™~Ÿ,ï¯In2ŽŽïsh 1.000ïar 2408 442 20 20 0 6.28319ïsh 1.000ïar 3033 317 20 20 0 6.28319’ÓRŸýOutŽŽï pa 2283 567ï pa 3033 567ï pa 3033 67ï pa 2283 67ï pa 2283 567ïdt 0.050ïpn 11ï pa 4533 150ï pa 4533 192ïfpï$ar 4533 223 31 31 -1.570796 1.570796ï$ar 4533 285 31 31 -1.570796 1.570796ï$ar 4533 348 31 31 -1.570796 1.570796ï$ar 4533 410 31 31 -1.570796 1.570796ï pa 4533 442ï pa 4533 483ïfpï pa 4606 192ï pa 4606 442ïfpï pa 4669 192ï pa 4669 442ïfpï pa 4742 483ï pa 4742 442ïfpï#ar 4742 410 31 31 1.570796 4.712389ï#ar 4742 348 31 31 1.570796 4.712389ï#ar 4742 285 31 31 1.570796 4.712389ï#ar 4742 223 31 31 1.570796 4.712389ï pa 4742 192ï pa 4742 150ïfpïpn 6ï pa 4533 483ï pa 4742 483ï pa 4742 150ï pa 4533 150ï pa 4533 483ïdt 0.050ï pa 4533 150ï pa 4433 50ï pa 4333 0ïspïsh 1.000ï pa 4480 62ï pa 4533 150ï pa 4445 97ï pa 4480 62ïfp’,l]Ÿ'P1ŽŽïsh 1.000ïar 4533 150 20 20 0 6.28319ï pa 4533 483ï pa 4433 583ï pa 4333 633ïspïsh 1.000ï pa 4445 536ï pa 4533 483ï pa 4480 572ï pa 4445 536ïfp’.¥=Ÿ/æZóÌbi‘¡E‰ff&fŽ‘Ç«tr(,,,E)ŽŽŽŽŽŸ\츑_üa°Figure–UU7:‘qÇBipGolar“transistor“v‘ÿqÇarianš¸ãts“(curren˜t“direction“up˜w˜ard)ŽŽŽŸL‘R%the–@Õdevice.‘jòSome“FETs“with“pre-de ned“in¸ãternal“loGcations“ÍS,“D,“°and“ÍG‘@аare“also“included,‘Dïwith“theŽ¤ ‘R%same–½#argumenš¸ãts“as“Ìbi‘¡E‰ff&fŽ‘Ç«tr,‘×°as“sho˜wn“in“Fig.“8.‘©0The“n˜um˜bšGer“of“p˜ossible“semiconductor“sym¸ãb˜ols“isŽ¡‘R%vš¸ãery–UUlarge,“so“these“macros“m˜ust“bGe“regarded“as“protot˜ypGes.Ž ¢Öa ÿj¦ŒŸ ®8’–•"ïpn 11ï pa 350 500ï pa 350 350ïfpï pa 350 350ï pa 175 350ïfpï pa 175 375ï pa 175 125ïfpï pa 175 150ï pa 350 150ïpa 350 0ïfpïpa 0 350ï pa 175 350ïfpïpa 0 350ï pa 153 350ïfpïsh 1.000ï pa 70 322ï pa 153 350ï pa 70 378ï pa 70 322ïfp‘„dŸ,I«ÍSŽŽ‘õî<ŸrGŽŽ‘y¹Ÿü'DŽŽ‘â:TŸ:½ÖÌj‘¡E‰ff&fŽ–Ç«fet(up‘¡E‰ff&fŽ‘ ¨dimen‘¡E‰ff&fŽ“)ŽŽï pa 350 1275ï pa 175 1275ïfpï pa 175 1300ï pa 175 1050ïfpï pa 175 1075ï pa 350 1075ïfpï pa 0 1275ï pa 175 1275ïfpï pa 175 1275ï pa 22 1275ïfpïsh 1.000ï pa 105 1303ï pa 22 1275ï pa 105 1247ï pa 105 1303ïfp‘„dŸdKìÍSŽŽ‘õî<Ÿ^KìGŽŽ‘y¹ŸI×ÁDŽŽ‘ðùŸtŽÊÌj‘¡E‰ff&fŽ‘Ç«fet(,,P,)ŽŽï pa 1350 475ï pa 1350 375ïfpï pa 1350 375ï pa 1175 375ïfpï pa 1350 375ï pa 1210 375ïfpïsh 1.000ï pa 1293 403ï pa 1210 375ï pa 1293 347ï pa 1293 403ïfpï pa 1350 475ï pa 1175 475ïfpï pa 1175 500ï pa 1175 425ïfpï pa 1175 400ï pa 1175 350ïfpï pa 1175 325ï pa 1175 250ïfpï pa 1175 275ï pa 1350 275ïfpï pa 1000 475ï pa 1125 475ï pa 1125 275ïfp‘^É‚Ÿ*{AÍSŽŽ‘>3ZŸ${AGŽŽ‘]¾×ŸÍDŽŽ‘H‡Ÿ:½ÖÌe‘¡E‰ff&fŽ‘Ç«fetŽŽï pa 1350 1275ï pa 1350 1175ïfpï pa 1350 1175ï pa 1175 1175ïfpï pa 1175 1175ï pa 1315 1175ïfpïsh 1.000ï pa 1232 1147ï pa 1315 1175ï pa 1232 1203ï pa 1232 1147ïfpï pa 1350 1275ï pa 1175 1275ïfpï pa 1175 1300ï pa 1175 1225ïfpï pa 1175 1200ï pa 1175 1150ïfpï pa 1175 1125ï pa 1175 1050ïfpï pa 1175 1075ï pa 1350 1075ïfpï pa 1000 1275ï pa 1125 1275ï pa 1125 1075ïfp‘^É‚ŸdKìÍSŽŽ‘>3ZŸ^KìGŽŽ‘]¾×ŸI×ÁDŽŽ‘8ÇŸtŽÊÌe‘¡E‰ff&fŽ‘Ç«fet(,,P,)ŽŽï pa 2350 475ï pa 2350 375ïfpï pa 2350 375ï pa 2175 375ïfpï pa 2350 375ï pa 2210 375ïfpïsh 1.000ï pa 2293 403ï pa 2210 375ï pa 2293 347ï pa 2293 403ïfpï pa 2350 475ï pa 2175 475ïfpï pa 2175 500ï pa 2175 250ïfpï pa 2175 275ï pa 2350 275ïfpï pa 2000 475ï pa 2125 475ï pa 2125 275ïfp’§¡Ÿ*{AÍSŽŽ’†xyŸ${AGŽŽ’¦öŸÍDŽŽ’Ì.Ÿ:½ÖÌd‘¡E‰ff&fŽ‘Ç«fetŽŽï pa 2350 1275ï pa 2350 1175ïfpï pa 2350 1175ï pa 2175 1175ïfpï pa 2175 1175ï pa 2315 1175ïfpïsh 1.000ï pa 2232 1147ï pa 2315 1175ï pa 2232 1203ï pa 2232 1147ïfpï pa 2350 1275ï pa 2175 1275ïfpï pa 2175 1300ï pa 2175 1050ïfpï pa 2175 1075ï pa 2350 1075ïfpï pa 2000 1275ï pa 2125 1275ï pa 2125 1075ïfp’§¡ŸdKìÍSŽŽ’†xyŸ^KìGŽŽ’¦öŸI×ÁDŽŽ’ 7ŸtŽÊÌd‘¡E‰ff&fŽ‘Ç«fet(,,P,)ŽŽŽŽŽ “g­‘OŸì°Figure–UU8:‘qÇJFET,“insulated-gate“enhancemen¸ãt“and“depletion“MOSFETSŽŽŽŸ™_‘#R%Some– }other“non-t•¸ãw“o-terminal– }macros“are“Ìdot“°whicš¸ãh“has“an“optional“argumen˜t“`Ìat“ÍloGcation°',‘theŽ¡‘R%line-thic¸ãkness–f¯os,›jZthe“ ll“macro,˜and“Ìhop,˜°whicš¸ãh“is“useful“to“sho˜w“non-touc˜hing“cross-o˜v˜ers“ofŽ¡‘R%conductors.ŽŸ ßu‘R%É10Ž‘4êDirectionsŽŸç‘R%°Aside–¡from“its“blošGc¸ãk-structure“capabilities,–Ålo˜oping,“and›¡macros,“Êpic˜°has˜a˜v¸ãery˜useful˜concept˜of˜theŽ¡‘R%curren•¸ãt›„rpGoin“t˜and˜curren“t˜direction,‘:the˜latter˜unfortunately˜limited˜to˜Ìup,–?ýdown,“left,“right.Ž¡‘R%°Ob‘Ž8jects–Ÿ:can“bšGe“dra¸ãwn“at“absolute“lo˜cations“or“placed“relativš¸ãe“to“previously-dra˜wn“ob‘Ž8jects.‘OvTheseŽ¡‘R%Ì.m4–Ô¾°macros“need“to“knoš¸ãw“the“curren˜t“direction“so“whenev˜er“Ìup,–?ýdown,“left,“right–Ô¾°are“used“theyŽ¡‘R%should–UUbGe“written“as“Ìup‘¡E‰ff&fŽ–Ç«,›?ýdown‘¡E‰ff&fŽ“,˜left‘¡E‰ff&fŽ“,˜right‘¡E‰ff&fŽ‘°whic¸ãh–UUare“macros.Ž¡‘#R%T‘ÿ*ªo–Y‘dra¸ãw“circuit“ob‘Ž8jects“in“other“than“the“standard“four“directions,‘‹ìthe“macros“ÌPoint‘¡E‰ff&fŽ‘Ç«(ó(ßêîTh˜us,‘ªÐ`Ìline‘?ýtoŽ¡‘R%rvec‘¡E‰ff&fŽ‘Ç«(x,0)°'–UUdraš¸ãws“a“line“of“length“Ìx“°in“the“curren˜t“direction.Ž¤ ‘#R%Fig.–Ö”9“shoš¸ãws“a“circuit“dra˜wn“using“the“abGo˜v˜e“macros.‘õ…The“source“for“the“ gure“is“bGelo˜w,‘öäandŽ¡‘R%illustrates–šZthat“some“hand-placemenš¸ãt“of“labGels“using“Ìdlabel“°ma˜y“bGe“useful“when“elemen˜ts“are“dra˜wnŽ¡‘R%other–UUthan“horizonš¸ãtal“or“v˜ertically‘ÿ*ª.ŽŸL‘R%Ñ.PSŽ¡‘R%thicklines_Ž¡‘R%define(`elen_',`dimen_')Ž¡‘R%define(`sourcerad_',`dimen_*0.2')ŽŽŸ’é°8ŽŽŒ‹ Œz ¤çРýI0a ˜ÏŸ þ5¤| ÿJ‹å’–&0ïpn 11ïsh 1.000ïar 1181 870 20 20 0 6.28319ï pa 1181 870ï pa 1372 1201ïfpï pa 1280 1254ï pa 1464 1148ïfpï(ar 1507 1434 213 213 -2.617994 -1.570796ï pa 1401 1250ï pa 1606 1606ïfp‘l»TŸ_O³CŸÿóÙ“ Rcmr7±3ŽŽŽïsh 1.000ïar 1606 1606 20 20 0 6.28319ï pa 1606 1606ï pa 1224 1606ïfpï pa 1224 1500ï pa 1224 1712ïfpï&ar 955 1606 213 213 -0.523599 0.523599ï pa 1167 1606ï pa 756 1606ïfp‘Y¦ä €V³CŸÿ±2ŽŽŽïsh 1.000ïar 756 1606 20 20 0 6.28319ï pa 1181 870ï pa 990 1201ïfpï pa 898 1148ï pa 1082 1254ïfpï'ar 855 1434 213 213 -1.570796 -0.523599ï pa 962 1250ï pa 756 1606ïfp‘NKŸWïß³CŸÿ±1ŽŽŽïsh 1.000ïar 1181 20 20 20 0 6.28319ï pa 1181 20ï pa 1181 233ïfpï$ar 1181 286 53 53 -1.570796 1.570796ï$ar 1181 392 53 53 -1.570796 1.570796ï$ar 1181 498 53 53 -1.570796 1.570796ï$ar 1181 604 53 53 -1.570796 1.570796ï pa 1181 658ï pa 1181 870ïfp‘JmîŸ*üI³LŸÿ±1ŽŽŽï pa 1606 1606ï pa 1790 1712ïfpï%ar 1836 1739 53 53 -2.617994 0.523599ï%ar 1928 1792 53 53 -2.617994 0.523599ï%ar 2020 1845 53 53 -2.617994 0.523599ï%ar 2112 1898 53 53 -2.617994 0.523599ï pa 2158 1925ï pa 2342 2031ïfp’‡lÅ ˆI=³LŸÿ±3ŽŽŽïsh 1.000ïar 2342 2031 20 20 0 6.28319ïsh 1.000ïar 20 2031 20 20 0 6.28319ï pa 20 2031ï pa 204 1925ïfpï#ar 250 1898 53 53 2.617994 5.759587ï#ar 342 1845 53 53 2.617994 5.759587ï#ar 434 1792 53 53 2.617994 5.759587ï#ar 526 1739 53 53 2.617994 5.759587ï pa 572 1712ï pa 756 1606ïfp‘Êš ‹w³LŸÿ±2ŽŽŽï pa 20 2031ï pa 969 2031ï pa 1004 1960ï pa 1075 2102ï pa 1146 1960ï pa 1217 2102ï pa 1287 1960ï pa 1358 2102ï pa 1394 2031ï pa 2342 2031ïfp‘OO³  Ž³RŸÿ±2ŽŽŽï pa 1181 20ï pa 1655 842ï pa 1734 837ï pa 1647 969ï pa 1805 959ï pa 1718 1092ï pa 1876 1082ï pa 1789 1214ï pa 1868 1210ï pa 2342 2031ïfp’‚±øŸFῳRŸÿ±3ŽŽŽï pa 1181 20ï pa 1514 597ïfpïsh 1.000ï pa 1486 497ï pa 1514 597ï pa 1442 522ï pa 1486 497ïfp‘mÕŸ*³yŽŽï pa 20 2031ï pa 252 1629ïfpï pa 252 1629ï pa 341 1474ïfpïar 426 1327 170 170 0 6.28319ï pa 511 1180ï pa 601 1026ïfp‘ µŸmyH¶ŽŽ‘[ŸOhÏ°+ŽŽ‘ öäŸYaù³uŽŽï pa 601 1026ï pa 668 908ï pa 625 842ï pa 783 851ï pa 696 719ï pa 854 729ï pa 767 596ï pa 925 606ï pa 881 540ï pa 949 422ïfp‘(“/Ÿ1_RŸÿ±1ŽŽŽï pa 949 422ï pa 1181 20ïfpŽŽŽ ³‚T‘s*°Figure–UU9:‘qÇIllustrating“elemenš¸ãts“dra˜wn“at“oblique“anglesŽŽŽŸÑØ‘R%Ñlinewid–¹–=“0.85Ž©‘R%Ct:dotŽ¤ ‘"~çPoint_(-60);–¹–capacitor(,C);“dlabel(0.14,0.14,,,C_3)Ž¡‘R%Cr:dotŽ¡‘"~çleft_;–¹–capacitor(,C);“dlabel(0.14,0.14,C_2,,)Ž¡‘R%Cl:dotŽ¡‘"~çdown_;–¹–capacitor(from“Ct“to“Cl,C);“dlabel(0.14,0.14,C_1,,)Ž¦‘R%T:dot(at‘¹–Ct+(0,elen_))Ž¡‘"~çinductor(from–¹–T“to“Ct);“dlabel(0.12,-0.1,,,L_1)Ž¦‘"~çPoint_(-30);–¹–inductor(from“Cr“to“Cr+vec_(elen_,0))Ž¡‘0«©dlabel(0,-0.07,,L_3,)Ž¡‘R%R:dotŽ¡‘R%L:dot(–¹–at“(Cl-(Cos(30)*(elen_),0),R)“)Ž¦‘"~çinductor(from–¹–L“to“Cl);“dlabel(0,-0.12,,L_2,)Ž¦‘"~çright_;–¹–resistor(from“L“to“R);“rlabel(,R_2,)Ž¦‘"~çresistor(from–¹–T“to“R);“dlabel(0,0.15,,R_3,)“;“b_current(y,ljust)Ž¦‘"~çline–¹–from“L“to“0.2Ž¡‘"~çsource(to–¹–0.5);“dlabel(sourcerad_+0.07,0.1,-,,+)Ž¡‘0«©dlabel(0,sourcerad_+0.07,,u,)Ž¡‘"~çresistor(to–¹–0.8);“dlabel(0,0.15,,R_1,)Ž¡‘"~çline–¹–to“TŽ¡‘R%.PEŽŸÑØ‘#R%°The›JßabGo•¸ãv“e˜source˜also˜illustrates˜that˜since˜Êm4˜°macro˜argumen“ts˜are˜separated˜b“y˜commas,Ž¤ ‘R%anš¸ãy–commas“that“are“in˜tegral“parts“of“the“argumen˜ts“m˜ust“bGe“protected“either“b˜y“paren˜theses“as“inŽ¡‘R%Ìinductor(from–?ýCr“to“Cr+vec‘¡E‰ff&fŽ–Ç«(elen‘¡E‰ff&fŽ“,0))–UU°or“bš¸ãy“m˜ultiple“single“quotes,“Ì``,''.ŽŸ и‘R%É11Ž‘4êLogic‘LËgatesŽŸç‘R%°Fig.–›'10“shoš¸ãws“a“3-input“NOR‘šÓgate,‘ìœwith“the“enclosing“bloGc˜k“and“pre-de ned“in˜ternal“loGcationsŽ¡‘R%ÌOut,›·(In1°{ÌIn3°.‘ÂõGate–pdmacros“ha•¸ãv“e–pdan“optional“argumen¸ãt,˜an“in¸ãteger“from“0“to“³N›‡°where“³N˜°canŽ¡‘R%bšGe–ÊWup“to“appro¸ãximately“5,‘ç˜de ning“lo˜cations“ÌIn1,‘瘶–ª¨“Ž‘\–ÌIn³N‘ˆâ:“°By“default“³N‘¡6°=‘Š2³;“°except“for“macrosŽŽŸ’é9ŽŽŒ‹ ¨Š ¤çРýI0a ˜ÏŸ ýëUŸ• ’¢f+ïpn 28ïpa 590 0ïpa 123 0ïfpï)ar -1141 600 1400 1400 -0.442911 0.442911ï pa 123 1200ï pa 590 1200ïfpï)ar 590 1026 1026 1026 -1.570796 -0.428121ï&ar 590 174 1026 1026 0.428121 1.570796ïar 1673 600 150 150 0 6.28319ïpn 6ï pa 123 1200ï pa 1823 1200ï pa 1823 0ïpa 123 0ï pa 123 1200ïdt 0.050ïsh 1.000ïar 1823 600 40 40 0 6.28319ï pa 1823 600ï pa 2023 700ïfpïsh 1.000ï pa 1902 667ï pa 1823 600ï pa 1924 622ï pa 1902 667ïfp’’3¬Ÿ4½ÖÍOutŽŽïsh 1.000ïar 200 200 40 40 0 6.28319ï pa 200 200ïpa 0 300ïfpïsh 1.000ï pa 99 222ï pa 200 200ï pa 122 267ï pa 99 222ïfp‘ñ wŸÕ€In1ŽŽïsh 1.000ïar 258 600 40 40 0 6.28319ï pa 258 600ï pa 58 700ïfpïsh 1.000ï pa 158 622ï pa 258 600ï pa 180 667ï pa 158 622ïfp‘õ:Ÿ4½ÖIn2ŽŽïsh 1.000ïar 200 1000 40 40 0 6.28319ï pa 200 1000ï pa 0 1100ïfpïsh 1.000ï pa 99 1022ï pa 200 1000ï pa 122 1067ï pa 99 1022ïfp‘ñ wŸQ¦tIn3ŽŽŽŽŽŸh«’œõ°Figure–UU10:‘qÇIllustrating“ÌNOR‘¡E‰ff&fŽ‘Ç«gate(3)ŽŽŽŸבR%NOT‘¡E‰ff&fŽ›Ç«gate–%ø°and“ÌBUFFER‘¡E‰ff&fŽ˜gate“°whicš¸ãh“ha˜v˜e“one“input“ÌIn1°,‘/qunless“they“are“giv˜en“an“argumen˜t,‘/qwhic˜h“isŽ¤ ‘R%treated–:×as“the“line“spGeci cation“of“a“t•¸ãw“o-terminal›:×elemen“t.‘hòFig.˜11˜sho“ws˜these˜and˜the˜other˜basicŽ Hn ÿ´Ä‘k8}ïpn 11ï pa 200 300ïpa 0 300ïpa 0 0ïpa 200 0ïfpï%ar 200 150 150 150 -1.570796 1.570796‘63ן þ*ÌAND‘¡E‰ff&fŽ‘Ç«gateŽŽï pa 117 400ïpa 0 400ïfpï&ar -315 550 350 350 -0.442911 0.442911ïpa 0 700ï pa 117 700ïfpï&ar 117 656 256 256 -1.570796 -0.428121ï$ar 117 444 256 256 0.428121 1.570796‘63ן)æÈOR‘¡E‰ff&fŽ‘Ç«gateŽŽï pa 175 950ï pa 0 1050ïpa 0 850ï pa 175 950ïfp‘63ןFÏBUFFER‘¡E‰ff&fŽ‘Ç«gateŽŽï pa 167 1200ï pa 50 1200ïfpï'ar -265 1350 350 350 -0.442911 0.442911ï pa 50 1500ï pa 167 1500ïfpï'ar 167 1456 256 256 -1.570796 -0.428121ï%ar 167 1244 256 256 0.428121 1.570796ï'ar -315 1350 350 350 -0.442911 0.442911‘63ןc·»XOR‘¡E‰ff&fŽ‘Ç«gateŽŽï pa 2600 300ï pa 2400 300ï pa 2400 0ï pa 2600 0ïfpï&ar 2600 150 150 150 -1.570796 1.570796ïar 2787 150 38 38 0 6.28319’ã¦jŸ þ*NAND‘¡E‰ff&fŽ‘Ç«gateŽŽï pa 2517 400ï pa 2400 400ïfpï&ar 2084 550 350 350 -0.442911 0.442911ï pa 2400 700ï pa 2517 700ïfpï'ar 2517 656 256 256 -1.570796 -0.428121ï%ar 2517 444 256 256 0.428121 1.570796ïar 2787 550 38 38 0 6.28319’ã¦jŸ)æÈNOR‘¡E‰ff&fŽ‘Ç«gateŽŽï pa 2575 950ï pa 2400 1050ï pa 2400 850ï pa 2575 950ïfpïar 2613 950 38 38 0 6.28319’ã¦jŸFÏNOT‘¡E‰ff&fŽ‘Ç«gateŽŽï pa 2567 1200ï pa 2450 1200ïfpï'ar 2134 1350 350 350 -0.442911 0.442911ï pa 2450 1500ï pa 2567 1500ïfpï(ar 2567 1456 256 256 -1.570796 -0.428121ï&ar 2567 1244 256 256 0.428121 1.570796ï'ar 2084 1350 350 350 -0.442911 0.442911ïar 2838 1350 38 38 0 6.28319’ã¦jŸc·»NXOR‘¡E‰ff&fŽ‘Ç«gateŽŽŽŽŽŸ~Yu’ µL°Figure–UU11:‘qÇBasic“logic“gate“libraryŽŽŽŸ¤‘R%logic–Øgates“included“in“library“Ìliblog.m4°.‘\žThese“gates“are“tš¸ãypically“not“t˜w˜o-terminal“elemen˜ts“andŽ¡‘R%are–óXnormally“draš¸ãwn“horizon˜tally“or“v˜ertically“(although“arbitrary“directions“ma˜y“bGe“set“with“e.g.Ž¡‘R%ÌPoint‘¡E‰ff&fŽ‘Ç«(ÓdegreesÌ)°).‘¼·Eacš¸ãh–nPgate“is“con˜tained“in“a“bloGc˜k“of“t˜ypical“heigh˜t“Ì6*L‘¡E‰ff&fŽ›Ç«unit“°where“ÌL‘¡E‰ff&fŽ˜unitŽ¡‘R%°is–ïa“macro“inš¸ãtended“to“establish“line“separation“for“an“imaginary“grid“on“whic˜h“the“elemen˜ts“areŽ¡‘R%sup•Gerimp“osed.Ž¤ ‘#R%The–ËLfolloš¸ãwing“source“proGduces“the“³S‘“RÇ°- ip- op“sho˜wn“in“Fig.“12“to“illustrate“c˜hange“of“direction.Ž¡‘R%Note–â‘that“when“a“gate“is“rotated,‘ù…its“input“lošGcations“retain“their“p˜ositions“relativ¸ãe“to“the“gate“b˜o˜dy‘ÿ*ª.ŽŸבR%Ñ.PSŽ¡‘R%log_initŽ¡‘R%S:‘¹–NOR_gateŽ¡‘ÅQleft_Ž¡‘R%R:–¹–NOR_gate“at“S+(0,-L_unit*9)Ž¡‘ÅQline–¹–right_“L_unit*3“from“S.Out“;“line“to“(Here,R.In2)“then“to“R.In2Ž¡‘ÅQline–¹–left_“L_unit*3“from“R.Out“;“line“to“(Here,S.In2)“then“to“S.In2Ž¡‘ÅQline–¹–left_“4*L_unit“from“S.In1“;“"$S$sp_"“rjustŽ¡‘ÅQline–¹–right_“4*L_unit“from“R.In1“;“"sp_$R$"“ljustŽ¡‘R%.PEŽŸ[9§Ÿµè›’ψ ïpn 11ïpa 291 0ïpa 174 0ïfpï&ar -141 150 350 350 -0.442911 0.442911ï pa 174 300ï pa 291 300ïfpï&ar 291 256 256 256 -1.570796 -0.428121ï#ar 291 44 256 256 0.428121 1.570796ïar 562 150 38 38 0 6.28319ï pa 483 750ï pa 599 750ïfpï$ar 916 600 350 350 2.698682 3.584504ï pa 599 450ï pa 483 450ïfpï$ar 483 494 256 256 1.570796 2.713471ï&ar 483 706 256 256 -2.713471 -1.570796ïar 212 600 38 38 0 6.28319ï pa 599 150ï pa 749 150ïfpï pa 749 150ï pa 749 525ï pa 574 525ïfpï pa 174 600ï pa 24 600ïfpï pa 24 600ï pa 24 225ï pa 200 225ïfpï pa 200 75ïpa 0 75ïfp‘÷ÌŸ’£³SŽŽï pa 574 675ï pa 774 675ïfp‘:(ÇŸ2ïkRŽŽŽŽŽŸH%ž’¹–¦°Figure‘UU12:‘qdzS‘“RÇ°- ip- opŽŽŽŸ k‘#R%A›UUgo•Go“d˜strategy˜for˜dra•¸ãwing˜complex˜logic˜circuits˜migh“t˜bGe˜summarized˜as˜follo“ws:ŽŸב#R$¶ŽŽŽ‘-R%°Establish–[Gthe“absolute“lošGcations“of“gates“and“other“ma‘Ž8jor“comp˜onenš¸ãts“(e.g.“c˜hips)“relativ˜e“toŽŸ ‘-R%a–UUgrid“of“mesh“size“commensurate“with“ÌL‘¡E‰ff&fŽ‘Ç«unit°,“whic¸ãh“is“an“absolute“length.ŽŽŸ’æ€10ŽŽŒ‹ ¸v ¤çРýI0a ˜ÏŸ ýŠ0a‘#R$¶ŽŽŽ‘-R%°Draš¸ãw–rÝminor“compGonen˜ts“or“bloGc˜ks“relativ˜e“to“the“ma‘Ž8jor“ones,‘º?using“parametrized“relativ˜eŽ© ‘-R%distances.Ž¤‘#R$¶ŽŽŽ‘-R%°Draš¸ãw–UUconnecting“lines“relativ˜e“to“the“compGonen˜ts“and“previously-dra˜wn“lines.Ž¡‘#R$¶ŽŽŽ‘-R%°W‘ÿ*ªrite–UUmacros“for“repGeated“constructs.Ž¡‘#R$¶ŽŽŽ‘-R%°T‘ÿ*ªune–Ð7the“diagram“bš¸ãy“making“absolute“loGcations“relativ˜e,‘ê×and“b˜y“tuning“the“parameters.‘EhSomeŽ¦‘-R%useful–UUmacros“for“this“are“the“folloš¸ãwing,“whic˜h“are“in“units“of“ÌL‘¡E‰ff&fŽ‘Ç«unit°:Ž¡‘CR%ÌAND‘¡E‰ff&fŽ–Ç«ht,‘?ýAND‘¡E‰ff&fŽ“wd°:‘qÇthe–UUheigh¸ãt“and“width“of“basic“AND“and“OR“gatesŽ¤‘CR%ÌBUF‘¡E‰ff&fŽ–Ç«ht,‘?ýBUF‘¡E‰ff&fŽ“wd°:‘qÇthe–UUheigh¸ãt“and“width“of“basic“bu ersŽ¡‘CR%ÌN‘¡E‰ff&fŽ‘Ç«diam°:‘qÇthe–UUdiameter“of“NOT“circlesŽ¤‘R%A–UUuseful“exercise“migh¸ãt“bšGe“to“repro˜duce“the“example“of“Fig.“13.Ž ¬` ÿa‘ª‘FëáŸpnûó)m#½R cmss10ÔCŽŽ‘A¤ÃŸ4ÏA0ŽŽ‘A¤ÃŸ!8A1ŽŽ‘A¤ÃŸ sA2ŽŽ‘Di{ïpn 11ï pa 200 100ï pa 575 100ïfpï pa 750 100ï pa 575 200ïpa 575 0ï pa 750 100ïfpïar 788 100 38 38 0 6.28319ï pa 825 100ï pa 1075 100ïfpïar 1113 100 38 38 0 6.28319ï pa 1325 100ï pa 1150 200ï pa 1150 0ï pa 1325 100ïfpï pa 200 400ï pa 575 400ïfpï pa 750 400ï pa 575 500ï pa 575 300ï pa 750 400ïfpïar 788 400 38 38 0 6.28319ï pa 825 400ï pa 1075 400ïfpïar 1113 400 38 38 0 6.28319ï pa 1325 400ï pa 1150 500ï pa 1150 300ï pa 1325 400ïfpï pa 200 700ï pa 575 700ïfpï pa 750 700ï pa 575 800ï pa 575 600ï pa 750 700ïfpïar 788 700 38 38 0 6.28319ï pa 825 700ï pa 1075 700ïfpïar 1113 700 38 38 0 6.28319ï pa 1325 700ï pa 1150 800ï pa 1150 600ï pa 1325 700ïfpï pa 788 1525ï pa 613 1625ï pa 613 1425ï pa 788 1525ïfpï pa 517 850ï pa 400 850ïfpï%ar 84 1000 350 350 -0.442911 0.442911ï pa 400 1150ï pa 517 1150ïfpï'ar 517 1106 256 256 -1.570796 -0.428121ï$ar 517 894 256 256 0.428121 1.570796ïar 787 1000 38 38 0 6.28319ï pa 1142 1150ï pa 1025 1150ïfpï&ar 709 1300 350 350 -0.442911 0.442911ï pa 1025 1450ï pa 1142 1450ïfpï(ar 1142 1406 256 256 -1.570796 -0.428121ï&ar 1142 1194 256 256 0.428121 1.570796ïar 1412 1300 38 38 0 6.28319ï pa 2775 363ï pa 2575 363ï pa 2575 63ï pa 2775 63ïfpï&ar 2775 213 150 150 -1.570796 1.570796ï pa 2775 1338ï pa 2575 1338ï pa 2575 1038ï pa 2775 1038ïfpï'ar 2775 1188 150 150 -1.570796 1.570796ï pa 3375 1113ï pa 3175 1113ï pa 3175 813ï pa 3375 813ïfpï&ar 3375 963 150 150 -1.570796 1.570796ï pa 3866 137ï pa 3749 137ïfpï&ar 3433 288 350 350 -0.442911 0.442911ï pa 3749 438ï pa 3866 438ïfpï'ar 3866 394 256 256 -1.570796 -0.428121ï%ar 3866 181 256 256 0.428121 1.570796ïar 4137 288 38 38 0 6.28319ï pa 3866 963ï pa 3749 963ïfpï'ar 3433 1113 350 350 -0.442911 0.442911ï pa 3749 1263ï pa 3866 1263ïfpï(ar 3866 1219 256 256 -1.570796 -0.428121ï&ar 3866 1006 256 256 0.428121 1.570796ïar 4137 1113 38 38 0 6.28319’† ˜ ‡ìUó*ÅUé cmssi10ÕT‘ÿ*ªo–UUother“latchesŽŽï pa 426 925ï pa 200 925ïfp‘­ŸEzÔDŽŽï pa 426 1075ï pa 200 1075ïfp‘íŸOéˆEŽŽïsh 1.000ïar 301 1075 20 20 0 6.28319ï pa 301 1075ï pa 301 1375ï pa 1051 1375ïfpï pa 200 1525ï pa 613 1525ïfpïsh 1.000ïar 950 100 20 20 0 6.28319ï pa 950 100ï pa 950 250ïfpï pa 950 250ï pa 1825 250ïfpï pa 1825 250ï pa 1825 1725ïfpïsh 1.000ï pa 1850 1625ï pa 1825 1725ï pa 1800 1625ï pa 1850 1625ïfpïsh 1.000ïar 950 400 20 20 0 6.28319ï pa 950 400ï pa 950 550ïfpï pa 950 550ï pa 1700 550ïfpï pa 1700 550ï pa 1700 1725ïfpïsh 1.000ï pa 1725 1625ï pa 1700 1725ï pa 1675 1625ï pa 1725 1625ïfpïsh 1.000ïar 950 700 20 20 0 6.28319ï pa 950 700ï pa 950 850ïfpï pa 950 850ï pa 1575 850ïfpï pa 1575 850ï pa 1575 1725ïfpïsh 1.000ï pa 1600 1625ï pa 1575 1725ï pa 1550 1625ï pa 1600 1625ïfpïsh 1.000ïar 950 1000 20 20 0 6.28319ï pa 950 1000ï pa 950 1225ï pa 1051 1225ïfpï pa 2575 100ï pa 2075 100ïfpï pa 2075 100ï pa 2075 1725ïfpïsh 1.000ï pa 2100 1625ï pa 2075 1725ï pa 2050 1625ï pa 2100 1625ïfpï pa 2575 175ï pa 2200 175ïfpï pa 2200 175ï pa 2200 1725ïfpïsh 1.000ï pa 2225 1625ï pa 2200 1725ï pa 2175 1625ï pa 2225 1625ïfpï pa 2575 250ï pa 2325 250ïfpï pa 2325 250ï pa 2325 1725ïfpïsh 1.000ï pa 2350 1625ï pa 2325 1725ï pa 2300 1625ï pa 2350 1625ïfpï pa 2575 325ï pa 2450 325ïfpï pa 2450 325ï pa 2450 1725ïfpïsh 1.000ï pa 2475 1625ï pa 2450 1725ï pa 2425 1625ï pa 2475 1625ïfpï pa 1325 100ï pa 2075 100ïfpïsh 1.000ïar 2075 100 20 20 0 6.28319ï pa 1325 400ï pa 2200 400ïfpïsh 1.000ïar 2200 400 20 20 0 6.28319ï pa 1325 700ï pa 2325 700ïfpïsh 1.000ïar 2325 700 20 20 0 6.28319ï pa 825 1000ï pa 2450 1000ïfpïsh 1.000ïar 2450 1000 20 20 0 6.28319ï pa 2575 1075ï pa 2075 1075ïfpïsh 1.000ïar 2075 1075 20 20 0 6.28319ï pa 2575 1150ï pa 2200 1150ïfpïsh 1.000ïar 2200 1150 20 20 0 6.28319ï pa 2575 1225ï pa 2325 1225ïfpïsh 1.000ïar 2325 1225 20 20 0 6.28319ï pa 1450 1300ï pa 2575 1300ïfpïsh 1.000ïar 1950 1300 20 20 0 6.28319ï pa 1950 1300ï pa 1950 1725ïfpïsh 1.000ï pa 1975 1625ï pa 1950 1725ï pa 1925 1625ï pa 1975 1625ïfpï pa 2925 213ï pa 3775 213ïfpï pa 4174 288ï pa 4299 288ïfpïsh 1.000ïar 4299 288 20 20 0 6.28319ï pa 4299 288ï pa 4424 288ïfp’EGŸ Q7ŽŽï pa 4299 288ï pa 4299 538ï pa 3050 763ïfpï pa 3050 763ï pa 3050 888ï pa 3175 888ïfpï pa 3775 363ï pa 3050 363ïfpï pa 3050 363ï pa 3050 488ï pa 4299 863ïfpï pa 4299 863ï pa 4299 1113ï pa 4174 1113ïfpï pa 3525 963ï pa 3650 963ïfpï pa 3650 963ï pa 3650 1038ï pa 3775 1038ïfpï pa 2925 1188ï pa 3775 1188ïfpï pa 3175 1038ï pa 3050 1038ïfpï pa 3050 1038ï pa 3050 1725ïfpïsh 1.000ï pa 3075 1625ï pa 3050 1725ï pa 3025 1625ï pa 3075 1625ïfpïsh 1.000ïar 3050 1525 20 20 0 6.28319ï pa 3050 1525ï pa 788 1525ïfpŽŽŽ œ|’—ƒ„°Figure–UU13:‘qÇMulti-function“latc¸ãh“circuitŽŽŽŸ+ý‘R%É12Ž‘4êDevŽïelopqer's‘LËnotesŽŸç‘R%°Because–S–Êgpic“°or“its“equiv‘ÿqÇalenš¸ãt“w˜ere“not“then“a˜v‘ÿqÇailable,‘Sðsev˜eral“y˜ears“ago“in“the“course“of“writing“aŽ¦‘R%b•Go“ok›³iI‘³@to“ok˜a˜few˜da•¸ãys˜o ˜to˜write˜a˜Êpic°-lik“e˜in“terpreter˜Ê(dpic)˜°that˜proGduced˜latex˜picture˜ob‘Ž8jects.Ž¦‘R%More–­frecenš¸ãtly“the“in˜terpreter“has“bGeen“upgraded“to“generate“Êmfpic“°or“ÊPST‘ÿ «ric®9ks“°commands,‘ÃjtheŽ¦‘R%latter–]hmš¸ãy“preference“bGecause“of“the“qualit˜y“and“ exibilit˜y“of“resulting“graphics,‘Žþincluding“facilities“forŽ¦‘R%colour–bëand“rotations.‘šŠV›ÿ*ªery“recen¸ãtly˜,‘fQFig“3.1“output“has“bšGeen“added.‘šŠI‘bèpreferred“the“more-p˜o•¸ãw“erfulŽ¦‘R%Êm4–yû°macro“proGcessor“to“Êpic“°macros,›ƒ%and“therefore“Êm4°,˜whicš¸ãh“comes“with“man˜y“Unix“systems“andŽ¦‘R%a–Ƹfree“vš¸ãersion“of“whic˜h“is“a˜v‘ÿqÇailable,‘ãis“required“here.‘ÅñIf“starting“o˜v˜er“toGda˜y“w˜ould“I‘Æ›not“just“startŽ¦‘R%with–ÏÇthe“Êgpic“°source“and“cš¸ãhange“its“bac˜k“end?›áGo•Go“d‘ÏÇquestion.˜Ma¸ãyb“e.˜Another–ÏÇquestion“migh¸ãtŽ¦‘R%bGe,‘¸¿whš¸ãy–¤Ýnot“use“ÊPST‘ÿ «ric®9ks“°(or“Êmfpic°)“alone?‘`_Muc˜h“can“bGe“done“that“w˜a˜y“using“macros,‘¸¿but“theŽ¦‘R%Êpic–ŒÃ°language“is“extremely“simple“to“learn,‘šŸespGecially“for“bacš¸ãkslashophobics“lik˜e“me.‘The“languageŽ¦‘R%has›UUsto•Go“d˜the˜test˜of˜time,˜it˜has˜built-in˜lo“oping˜and˜blo“c•¸ãk-structure˜constructs˜lik“eŽ¡‘$Ìdrawing–?ýcommands“...Ž¦‘$[drawing‘?ýcommands...Ž¦‘3ÒA:[...Ž¦‘C’ B:boxŽ¦‘>R ]Ž¦‘$]–?ýwith“.A.B.bottom“at“2nd“last“ellipse.topŽŸ±È‘R%°that–Ý•comš¸ãbine“pGo˜w˜er“with“simplicit˜y‘ÿ*ª,‘?¤and“it“allo˜ws“the“simple“computation“of“geometries“usingŽ¦‘R%elemen¸ãtary‘UUfunctions.ŽŽŸ’æ€11ŽŽŒ‹ Ì ¤çРýI0a ˜ÏŸ ýŠ0a‘#R%ÊGpic–û°and“Êdpic“°pass“unaltered“anš¸ãy“line“bGeginning“with“a“Ì\“°c˜haracter,‘% allo˜wing“T›ÿ*ªeX‘ìor“PST˜ric¸ãksŽ¤ ‘R%macros–UUto“bGe“in•¸ãv“ok“ed,–UUfor“example“to“set“parameters“suc¸ãh“as“colour“or“ ll“v‘ÿqÇalues.Ž¡‘#R%Using–ì¾the“Êmfpic“°output“of“Êdpic“°it“is“pšGossible“to“pro˜duce“Metafon¸ãt“alphab˜ets“of“circuit“elemen¸ãtsŽ¡‘R%or–their“sub-compGonen•¸ãts,‘‹ÿthereb“y›essen“tially˜remo“ving˜depGendence˜on˜device˜driv“ers,‘‹ÿbut˜with˜theŽ¡‘R%complication–UUof“treating“evš¸ãery“graphic“sub-compGonen˜t“as“a“T‘þU>Ÿ'EŽ‘ãxX“bGo˜x.Ž¡‘#R%The–Ä$Êx g‘í°output“of“Êdpic“°alloš¸ãws“elemen˜ts“to“bGe“de ned“and“ ne-tuned,‘×and“then“using“theŽ¡‘R%in•¸ãteractiv“e–ùÀgraphics“of“Êx g,‘"Û°quicš¸ãkly“assem˜bled“in˜to“a“circuit.‘_Ho˜w˜ev˜er,‘"Ûthe“elemen˜ts“should“no˜wŽ¡‘R%ha•¸ãv“e–†Þall“bšGoundary“p˜oin¸ãts“and“p˜oin¸ãts“of“connection“on“the“grid“p˜oin¸ãts,›“@or“at“least“the“grid“lines,˜ofŽ¡‘R%the–UUdraš¸ãwing“can˜v‘ÿqÇas.‘qÇF‘ÿ*ªurther“re nemen˜t“of“the“elemen˜ts“migh˜t“still“bGe“required.Ž¡‘#R%Because–ƒkthe“set“of“common“circuit“compšGonen¸ãts“and“p˜otenš¸ãtial“macros“is“h˜uge,‘Îðan“industrial-Ž¡‘R%strength–òÍsystem“dev¸ãelopšGed“from“the“one“describ˜ed“here“wš¸ãould“probably“require“a“com˜bination“ofŽ¡‘R%all–29of“the“tecš¸ãhniques“describGed,‘9?including“the“abilit˜y“to“dynamically“de ne“and“build“c˜haracter“setsŽ¡‘R%from‘UUmacros.ŽŸ ‘R%É13Ž‘4êBugsŽŸç‘R%ÊInitialization:‘4…°If–¶´the“ rst“elemenš¸ãt“macro“ev‘ÿqÇaluated“is“non-t˜w˜o-terminal“or“is“within“a“Pic“bloGc˜k,Ž¡‘R%then–UUlater“macros“ev‘ÿqÇaluated“outside“the“bloGcš¸ãk“ma˜y“proGduce“the“error“messageŽ¤ë‘$Ìthere–?ýis“no“variable“`rp_ang'Ž¡‘R%°bšGecause–¹ÉÌrp‘¡E‰ff&fŽ‘Ç«ang“°is“not“de ned“in“the“outer-most“scop˜e“of“the“diagram.‘Ÿ#T‘ÿ*ªo“cure“this“problem,‘ÒæputŽ© ‘R%the‘UUlineŽ¡‘$Ìcct_initŽ¡‘R%°immediately–¡¬after“the“.PS‘¡Vline,‘ôÁor“prior“to“the“ rst“bloGcš¸ãk.‘VËIt“is“en˜tirely“pšGermissible“to“mo˜difyŽ¦‘R%Ìcct‘¡E‰ff&fŽ‘Ç«init–d°to“include“commonly-used“diagram“initializations,‘<¨sucš¸ãh“as“the“Ìthicklines‘¡E‰ff&fŽ‘Ö°statemen˜t,Ž¦‘R%and–m6to“in•¸ãv“ok“e–m6cct‘™˜‰ffŽ‘™šinit“at“the“bGeginning“of“ev¸ãery“diagram.‘¹jF‘ÿ*ªor“completeness,‘³.macros“Ìgen‘¡E‰ff&fŽ‘Ç«init,Ž¦‘R%log‘¡E‰ff&fŽ–Ç«init,›UUdarrow‘¡E‰ff&fŽ“init˜°are˜also˜pro¸ãvided˜for˜cases˜where˜the˜circuit˜library˜is˜not˜included.Ž¦‘#R%ÊCommas:‘–°Rememš¸ãbGer–©ŸŒEŽ‘ãxX“,“for“example“theŽ¦‘R%diagramŽŽŸ’æ€12ŽŽŒ‹ ê" ¤çРýI0a ˜ÏŸ ýŠ0a‘R%Ì.PSŽ¤ ‘$box‘?ý"\stringA"Ž¡‘R%.PEŽ©ö_‘R%°with–UUthe“LaT‘ÿ*ªeX“macroŽŸD—‘ÒÌ\newcommand{\stringA}{%Ž¡‘$Circuit–?ýcontaining“planar“inductor“and“capacitor}Ž¦‘#R%ÊCurren®9t‘lÈdirection:‘DR°Some–úlmacros,› ›particularly“those“for“labGels,˜do“unexpGected“things“if“care“isŽ¡‘R%not–½´takš¸ãen“to“pre-set“the“curren˜t“direction“using“macros“Ìright‘¡E‰ff&fŽ–Ç«,›Üleft‘¡E‰ff&fŽ“,˜up‘¡E‰ff&fŽ“,˜down‘¡E‰ff&fŽ“,˜°or‘½´Ìrpoint‘¡E‰ff&fŽ“(¶Ì).Ž¡‘R%°Thš¸ãus–UUfor“t˜w˜o-terminal“macros“it“is“go•Go“d–UUpractice“to“write,“e.g.Ž¡‘#R%Ìresistor(up‘¡E‰ff&fŽ‘ ¨from–?ýA“to“B);“rlabel(,R‘¡E‰ff&fŽ‘Ç«1)Ž¡‘R%°rather‘UUthanŽ¡‘#R%Ìresistor(from–?ýA“to“B);“rlabel(,R‘¡E‰ff&fŽ‘Ç«1),Ž¡‘R%°whicš¸ãh–I\proGduce“di eren˜t“results“if“the“last-de ned“dra˜wing“direction“is“not“up.‘mÊIt“migh˜t“bšGe“p˜ossibleŽ¡‘R%to–UUcš¸ãhange“the“labGel“macros“to“a˜v˜oid“this“problem“without“sacri cing“ease“of“use.ŽŸ él‘R%É14Ž‘4êList–LËof“macrosŽŸç‘R%°The–0folloš¸ãwing“table“lists“the“macros“in“libraries“darro˜w.m4,–f¿libGcct.m4,“liblog.m4,“libgen.m4,“andŽ¡‘R% les–UUgpic.m4,“mfpic.m4,“and“pstric¸ãks.m4.Ž¡‘#R%Inš¸ãternal–âmacros“de ned“within“the“libraries“bGegin“with“the“c˜haracters“m4,‘M„and“are“not“listedŽ¡‘R%here.Ž¡‘#R%The–UUlibraries“use“the“follo¸ãwing“Êpic“°v‘ÿqÇariables:Ž©D—‘$Ìm4dllŽ¡‘$m4dlwŽ¡‘$m4iŽ¡‘$m4jŽ¡‘$m4t1Ž¡‘$m4t2Ž¡‘$m4tmpŽ¡‘$rp_angŽ¡‘$rp_htŽ¡‘$rp_lenŽ¡‘$rp_wid.Ž¦‘#R%°The–UUlibrary“in“whicš¸ãh“eac˜h“macro“is“found“is“sho˜wn,“and“a“brief“description.Ž¦‘R%ÌAND‘¡E‰ff&fŽ‘Ç«gate(ÓnÌ)‘bÒ?°log‘ª§basic–UU`and'“gate,“2“or“Ín“°inputsŽŽ¡‘R%ÌAND‘¡E‰ff&fŽ‘Ç«ht‘}0°log‘ª§heigh¸ãt–UUof“basic“`and'“and“`or'“gatesŽŽ¡‘R%ÌAND‘¡E‰ff&fŽ‘Ç«wd‘}0°log‘ª§width–UUof“basic“`and'“and“`or'“gatesŽŽ¡‘R%ÌBUFFER‘¡E‰ff&fŽ‘Ç«gate(ÓlinespecÌ)‘.R]°log‘ª§basic–UUbu er,“1“input“or“as“a“2-terminal“elemen¸ãtŽŽ¡‘R%ÌBUF‘¡E‰ff&fŽ‘Ç«ht‘}0°log‘ª§basic–UUbu er“gate“heigh¸ãtŽŽ¡‘R%ÌBUF‘¡E‰ff&fŽ‘Ç«wd‘}0°log‘ª§basic–UUbu er“gate“widthŽŽ¡‘R%ÌCos(ÓintegerÌ)‘\ð°gen‘qÄcosine–UUfunction,“Íin¸ãteger‘ °degreesŽŽ¡‘R%ÌE‘¡E‰ff&fŽ’•ÙÏ°gen‘qÄthe–UUconstan¸ãt“³eŽŽ¡‘R%ÌG‘¡E‰ff&fŽ‘Ç«hht‘¡E‰ff&fŽ’‚R-°log‘ª§gate‘UUhalf-heigh¸ãtŽŽ¡‘R%ÌHOMELIB‘¡E‰ff&fŽ‘vYá°all‘ã‹directory–UUcon¸ãtaining“librariesŽŽ¡‘R%ÌL‘¡E‰ff&fŽ‘Ç«unit‘}0°log‘ª§logic-elemen¸ãt–UUgrid“sizeŽŽ¡‘R%ÌNAND‘¡E‰ff&fŽ‘Ç«gate(ÓnÌ)‘]’B°log‘ª§`nand'–UUgate,“2“or“Ín“°inputsŽŽ¡‘R%ÌNOR‘¡E‰ff&fŽ‘Ç«gate(ÓnÌ)‘bÒ?°log‘ª§`nor'–UUgate,“2“or“Ín“°inputsŽŽ¡‘R%ÌNOT‘¡E‰ff&fŽ‘Ç«gate(ÓlinespecÌ)‘>T°log‘ª§`not'–UUgate,“1“input“or“as“a“2-terminal“elemen¸ãtŽŽ¡‘R%ÌNXOR‘¡E‰ff&fŽ‘Ç«gate(ÓnÌ)‘]’B°log‘ª§`nxor'–UUgate,“2“or“Ín“°inputsŽŽ¡‘R%ÌN‘¡E‰ff&fŽ‘Ç«diam‘}0°log‘ª§diameter–UUof“`not'“circlesŽŽŽŸ’æ€13ŽŽŒ‹ù> ¤çРýI0a ˜ÏŸ ýŠ0a‘R%ÌOR‘¡E‰ff&fŽ‘Ç«gate(ÓnÌ)‘h<°log‘ª§`or'–UUgate,“2“or“Ín“°inputsŽŽ¤ ‘R%ÌPoint‘¡E‰ff&fŽ‘Ç«(ÓintegerÌ)‘MÒK°gen‘qÄsets–UUdirection“cosines“in“degreesŽŽ¡‘R%ÌRect‘¡E‰ff&fŽ‘Ç«(ÓradiusÌ,ÓangleÌ)‘8ÒW°gen‘qÄ(deg)–UUpGolar-to-rectangular“con•¸ãv“ersionŽŽ¡‘R%ÌSin(ÓintegerÌ)‘\ð°gen‘qÄsine–UUfunction,“Íin¸ãteger‘ °degreesŽŽ¡‘R%ÌXOR‘¡E‰ff&fŽ‘Ç«gate(ÓnÌ)‘bÒ?°log‘ª§`xor'–UUgate,“2“or“Ín“°inputsŽŽ¡‘R%Ìabove‘¡E‰ff&fŽ’€ÙÛ°gen‘qÄstring–UUpšGosition“ab˜o•¸ãv“e›UUrelativ“e˜to˜curren“t˜directionŽŽ¡‘R%Ìabs‘¡E‰ff&fŽ‘Ç«(ÓnumberÌ)‘]’B°gen‘qÄabsolute–UUv‘ÿqÇalue“functionŽŽ¡‘R%Ìamp(ÓlinespecÌ)‘VÙó°cct‘ª©ampli erŽŽ¡‘R%Ìbattery(ÓlinespecÌ,n)‘7Z°cct‘ª©n-cell–UUbattery‘ÿ*ª,“default“1“cellŽŽ¡‘R%Ìbelow‘¡E‰ff&fŽ’€ÙÛ°gen‘qÄstring–UUpGosition“relativš¸ãe“to“curren˜t“directionŽŽ¡‘R%Ìbi‘¡E‰ff&fŽ‘Ç«tr(ÓlinespecÌ,L|R,P,E)‘#Òc°cct‘ª©left–UUor“righš¸ãt,“N“or“P-t˜ypšGe“bip˜olar“transistor,“without“or“with“en•¸ãv“elop˜eŽŽ¡‘R%Ìb‘¡E‰ff&fŽ‘Ç«current(ÓlabelÌ,ÓposÌ,ÓdirÌ)‘’f°cct‘ª©draš¸ãw–UUand“labGel“branc˜h-curren˜t“arro˜wŽŽ¡‘R%Ìcapacitor(ÓlinespecÌ,C)‘,Ú °cct‘ª©capacitor,–UUstraghš¸ãt“or“curv˜ed-plateŽŽ¡‘R%Ìclabel(ÓlabelÌ,ÓlabelÌ,ÓlabelÌ)‘Ú°cct‘ª©cen¸ãtre–UUtriple“labGelŽŽ¡‘R%Ìconsource(ÓlinespecÌ,V|I)‘"Z°cct‘ª©blank–UUor“vš¸ãoltage“or“curren˜t-con˜trolled“sourceŽŽ¡‘R%Ìcross(–?ýat“ÓlocationÌ)‘7Z°gen‘qÄplots–UUa“small“crossŽŽ¡‘R%Ìcrosswd‘¡E‰ff&fŽ‘vYá°gen‘qÄcross‘UUdimensionŽŽ¡‘R%Ìcsdim‘¡E‰ff&fŽ’€ÙÛ°cct‘ª©con¸ãtrolled-source‘UUwidthŽŽ¡‘R%Ìd‘¡E‰ff&fŽ‘Ç«fet(ÓlinespecÌ,L|R,P,E)‘#Òc°cct‘ª©left–UUor“righš¸ãt,“N“or“P“depletion“MOSFET,“without“or“with“en˜v˜elopGeŽŽ¡‘R%Ìdarrow(ÓlinespecÌ,t,t,ÓwidthÌ)‘š°darro•¸ãw‘mdouble‘UUarro“wŽŽ¡‘R%Ìdelay(ÓlinespecÌ)‘LYù°cct‘ª©dela•¸ãy‘UUelemen“tŽŽ¡‘R%Ìdelay‘¡E‰ff&fŽ‘Ç«rad‘¡E‰ff&fŽ‘mR9°cct‘ª©dela¸ãy‘UUradiusŽŽ¡‘R%Ìdend(–?ýat“ÓlocationÌ)‘<š°darro¸ãw‘mclose–UU(or“start)“double“lineŽŽ¡‘R%Ìdiff‘¡E‰ff&fŽ‘Ç«(ÓaÌ,ÓbÌ)‘h<°gen‘qÄdi erence‘UUfunctionŽŽ¡‘R%Ìdimen‘¡E‰ff&fŽ’€ÙÛ°cct‘ª©size–UUparameter“for“circuit“elemen¸ãtsŽŽ¡‘R%Ìdimension‘¡E‰ff&fŽ‘Ç«(ÓlinespecÌ,ÓoffsetÌ,ÓlabelÌ,Ólabel–?ýwidÌ,Ótic“offsetÌ)ŽŽ¡’¯kñ°gen‘qÄmacro–UUfor“dimensioning“diagramsŽŽ¡‘R%Ìdiode(Ólinespec‘?ýÌ,Z|BD)‘,Ú °cct‘ª©dioGde,–UUnormal“or“zener“or“bi-directionalŽŽ¡‘R%Ìdlabel(ÓlongÌ,ÓlatÌ,ÓlabelÌ,ÓlabelÌ,ÓlabelÌ)ŽŽ¡’¯kñ°cct‘ª©general–UUtriple“labGelŽŽ¡‘R%Ìdleft’€ÙÛ°darro¸ãw‘mdouble–UUline“left“turnŽŽ¡‘R%Ìdline(ÓlinespecÌ,t,t,ÓwidthÌ)‘Ú°darro¸ãw‘mdouble‘UUlineŽŽ¡‘R%Ìdlinewid‘qä°darro¸ãw‘mwidth–UUof“double“linesŽŽ¡‘R%Ìdn‘¡E‰ff&fŽ’™Ò°gen‘qÄsets–UUdoš¸ãwn“relativ˜e“to“curren˜t-directionŽŽ¡‘R%Ìdot(–?ýat“ÓlocationÌ)‘AÙÿ°gen‘qÄdra¸ãw–UUa“dotŽŽ¡‘R%Ìdotrad‘¡E‰ff&fŽ‘{™Þ°gen‘qÄdot‘UUradiusŽŽ¡‘R%Ìdown‘¡E‰ff&fŽ’†Ø°gen‘qÄsets–UUcurrenš¸ãt“direction“to“do˜wnŽŽ¡‘R%Ìdright‘{™Þ°darro•¸ãw‘mdouble›UUarro“w˜righ“t˜turnŽŽ¡‘R%Ìdtee(`ÓdirectionÌ')‘AÙÿ°darro•¸ãw‘mdouble›UUarro“w˜tee˜junctionŽŽ¡‘R%Ìdtor‘¡E‰ff&fŽ’†Ø°gen‘qÄdegrees–UUto“radians“con•¸ãv“ersion‘UUconstan“tŽŽ¡‘R%Ìe‘¡E‰ff&fŽ’•ÙÏ°gen‘qÄ.e–UUrelativš¸ãe“to“curren˜t“directionŽŽ¡‘R%Ìe‘¡E‰ff&fŽ‘Ç«fet(ÓlinespecÌ,L|R,P,E)‘#Òc°cct‘ª©left–UUor“righš¸ãt,“N“or“P“enhancemen˜t“MOSFET,“without“or“with“en˜v˜elopGeŽŽ¡‘R%Ìebox(ÓlinespecÌ,ÓlengthÌ,ÓhtÌ)‘°cct‘ª©t•¸ãw“o-terminal›UUbGo“x˜elemen“t˜with˜adjustable˜dimensionsŽŽ¡‘R%Ìeleminit‘¡E‰ff&fŽ‘Ç«(ÓlinespecÌ)‘8ÒW°cct‘ª©in¸ãternal–UUline“initializationŽŽ¡‘R%Ìelen‘¡E‰ff&fŽ’†Ø°cct‘ª©default–UUelemen¸ãt“lengthŽŽ¡‘R%Ìfill‘¡E‰ff&fŽ‘Ç«(ÓnumberÌ)‘XRE°gen‘qÄ ll–UUmacro,“0=blac¸ãk,“1=whiteŽŽ¡‘R%Ìgamp(ÓlinespecÌ)‘Q™ö°cct‘ª©general‘UUampli erŽŽ¡‘R%Ìgap(ÓlinespecÌ)‘VÙó°cct‘ª©gap–UUwith“dotsŽŽ¡‘R%Ìglabel‘¡E‰ff&fŽ‘{™Þ°cct‘ª©in¸ãternal–UUgeneral“labGellerŽŽ¡‘R%Ìgpic‘¡E‰ff&fŽ’†Ø°gpic‘ª§de ned–UUto“signify“gpic“is“bGeing“usedŽŽ¡‘R%Ìgrid‘¡E‰ff&fŽ‘Ç«(ÓxÌ,ÓyÌ)‘h<°log‘ª§absolute–UUgrid“loGcationŽŽ¡‘R%Ìground(–?ýat“ÓlocationÌ,T)‘'š°cct‘ª©ground,–UUwithout“stem“for“non¸ãblank“2nd“argŽŽ¡‘R%Ìhop(L|R,at‘?ýÓlocationÌ)‘2°cct‘ª©conductor–UUcrossing“another“to“left“or“righ¸ãtŽŽŽŸ’æ€14ŽŽŒ‹ ¤çРýI0a ˜ÏŸ ýŠ0a‘R%Ìhoprad‘¡E‰ff&fŽ‘{™Þ°cct‘ª©hop‘UUradiusŽŽ¤ ‘R%Ìht‘¡E‰ff&fŽ’™Ò°gen‘qÄheigh•¸ãt›UUrelativ“e˜to˜curren“t˜directionŽŽ¡‘R%Ìinductor(ÓlinespecÌ,W,ÓnÌ,M)‘°cct‘ª©inductor,–UUnarro¸ãw“or“wide,“4“or“Ín“°arcs,“without“or“with“magnetic“coreŽŽ¡‘R%Ìintegrator(ÓlinespecÌ)‘2°cct‘ª©in¸ãtegrating‘UUampli erŽŽ¡‘R%Ìj‘¡E‰ff&fŽ‘Ç«fet(ÓlinespecÌ,L|R,P,E)‘#Òc°cct‘ª©left–UUor“righš¸ãt,“N“or“P“JFET,“without“or“with“en˜v˜elopGeŽŽ¡‘R%Ìleft‘¡E‰ff&fŽ’†Ø°gen‘qÄleft–UUwith“respGect“to“curren¸ãt“directionŽŽ¡‘R%Ìlinethick‘¡E‰ff&fŽ‘Ç«(ÓnumberÌ)‘>T°gen‘qÄset–UUline“thicš¸ãkness“in“pGoin˜tsŽŽ¡‘R%Ìljust‘¡E‰ff&fŽ’€ÙÛ°gen‘qÄljust–UUwith“respGect“to“curren¸ãt“directionŽŽ¡‘R%Ìllabel(ÓlabelÌ,ÓlabelÌ,ÓlabelÌ)‘Ú°cct‘ª©triple–UUlable“on“left“side“of“the“elemen¸ãtŽŽ¡‘R%Ìloc‘¡E‰ff&fŽ‘Ç«(ÓxÌ,‘?ýÓyÌ)‘h<°gen‘qÄloGcation–UUadjusted“for“curren¸ãt“directionŽŽ¡‘R%Ìlt‘¡E‰ff&fŽ’™Ò°gen‘qÄleft–UUwith“respGect“to“curren¸ãt“directionŽŽ¡‘R%Ìmanhattan‘kÙç°gen‘qÄsets–UUdirection“cosines“for“left,“righš¸ãt,“up,“do˜wnŽŽ¡‘R%Ìmfpic‘¡E‰ff&fŽ’€ÙÛ°mfpic‘ Gde ned–UUto“signify“mfpic“is“bGeing“usedŽŽ¡‘R%Ìn‘¡E‰ff&fŽ’•ÙÏ°gen‘qÄ.n–UUwith“respGect“to“curren¸ãt“directionŽŽ¡‘R%Ìne‘¡E‰ff&fŽ’™Ò°gen‘qÄ.ne–UUwith“respGect“to“curren¸ãt“directionŽŽ¡‘R%Ìneg‘¡E‰ff&fŽ’‹YÕ°gen‘qÄunary‘UUnegationŽŽ¡‘R%Ìnw‘¡E‰ff&fŽ’™Ò°gen‘qÄ.nš¸ãw–UUwith“respGect“to“curren˜t“directionŽŽ¡‘R%Ìopamp(ÓlinespecÌ,ÓlabelÌ,ÓlabelÌ)‘ Z°cct‘ª©opšGerational–UUampli er“with“¶³;“°+“or“other“in¸ãternal“lab˜elsŽŽ¡‘R%Ìpoint‘¡E‰ff&fŽ‘Ç«(ÓangleÌ)‘XRE°gen‘qÄ(radians)–UUset“direction“cosinesŽŽ¡‘R%Ìpolar‘¡E‰ff&fŽ‘Ç«(ÓxÌ,ÓyÌ)‘bÒ?°gen‘qÄrectangular-to–UUpGolar“con•¸ãv“ersionŽŽ¡‘R%Ìprod‘¡E‰ff&fŽ‘Ç«(ÓaÌ,ÓbÌ)‘h<°gen‘qÄbinary‘UUm¸ãultiplicationŽŽ¡‘R%Ìproject(ÓxÌ,(ÓyÌ,(ÓzÌ)‘Gü°gen‘qÄ3D–UUto“2D“pro‘Ž8jectionŽŽ¡‘R%Ìpsset‘¡E‰ff&fŽ‘Ç«(ÓPSTricks‘?ýsettingsÌ)‘Ri°gen‘qÄset–UUPST‘ÿ*ªric¸ãks“parametersŽŽ¡‘R%Ìpstricks‘¡E‰ff&fŽ‘qä°pstricš¸ãks‘øßde ned–UUto“signify“PST‘ÿ*ªric˜ks“is“bGeing“usedŽŽ¡‘R%Ìpt‘¡E‰ff&fŽ’™Ò°gen‘qÄbig–UUpGoin¸ãt“sizeŽŽ¡‘R%Ìrect‘¡E‰ff&fŽ‘Ç«(ÓradiusÌ,ÓangleÌ)‘8ÒW°gen‘qÄ(radians)–UUpGolar-rectangular“con•¸ãv“ersionŽŽ¡‘R%Ìresistor(ÓlinespecÌ,n)‘2°cct‘ª©resistor,–UUn“pGeaks,“default“3ŽŽ¡‘R%Ìright‘¡E‰ff&fŽ’€ÙÛ°gen‘qÄset–UUcurrenš¸ãt“direction“righ˜tŽŽ¡‘R%Ìrjust‘¡E‰ff&fŽ’€ÙÛ°gen‘qÄrighš¸ãt–UUjustify“with“respGect“to“curren˜t“directionŽŽ¡‘R%Ìrlabel(ÓlabelÌ,ÓlabelÌ,ÓlabelÌ)‘Ú°cct‘ª©triple–UUlable“on“righš¸ãt“side“of“the“elemen˜tŽŽ¡‘R%Ìrpoint‘¡E‰ff&fŽ‘Ç«(ÓangleÌ)‘SH°gen‘qÄ(radians)–UUset“direction“cosinesŽŽ¡‘R%Ìrpos‘¡E‰ff&fŽ‘Ç«(ÓpositionÌ)‘MÒK°gen‘qÄHere–UU+“ÍpGositionŽŽ¡‘R%Ìrt‘¡E‰ff&fŽ’™Ò°gen‘qÄrighš¸ãt–UUwith“respGect“to“curren˜t“directionŽŽ¡‘R%Ìrtod‘¡E‰ff&fŽ’†Ø°gen‘qÄconstan¸ãt,‘UUdegrees/radianŽŽ¡‘R%Ìrvec‘¡E‰ff&fŽ‘Ç«(ÓxÌ,ÓyÌ)‘h<°gen‘qÄloGcation–UUrelativš¸ãe“to“curren˜t“directionŽŽ¡‘R%Ìs‘¡E‰ff&fŽ’•ÙÏ°gen‘qÄ.s–UUwith“respGect“to“curren¸ãt“directionŽŽ¡‘R%Ìse‘¡E‰ff&fŽ’™Ò°gen‘qÄ.se–UUwith“respGect“to“curren¸ãt“directionŽŽ¡‘R%Ìsetview(ÓazimuthÌ,Ó(radians)‘?ýelevationÌ)ŽŽ¡’¯kñ°gen‘qÄset–UUpro‘Ž8jection“viewpGoin¸ãtŽŽ¡‘R%Ìshadebox(Óbox‘?ýspecificationÌ)‘ Z°gen‘qÄbGo¸ãx–UUwith“edge“shadingŽŽ¡‘R%Ìsign‘¡E‰ff&fŽ‘Ç«(ÓnumberÌ)‘XRE°gen‘qÄsign‘UUfunctionŽŽ¡‘R%Ìsource(ÓlinespecÌ,V|I|AC|ÓstringÌ)ŽŽ¡’¯kñ°cct‘ª©source,–UUblank“or“vš¸ãoltage“or“curren˜t“or“A˜C“or“labGelledŽŽ¡‘R%Ìsourcerad‘¡E‰ff&fŽ‘kÙç°cct‘ª©source‘UUradiusŽŽ¡‘R%Ìsp‘¡E‰ff&fŽ’™Ò°gen‘qÄev‘ÿqÇaluates–UUto“medium“space“for“gpic“stringsŽŽ¡‘R%Ìsum‘¡E‰ff&fŽ‘Ç«(ÓaÌ,ÓbÌ)‘mR9°gen‘qÄbinary‘UUsumŽŽ¡‘R%Ìsvec‘¡E‰ff&fŽ‘Ç«(ÓxÌ,ÓyÌ)‘h<°log‘ª§scaled–UUand“rotated“grid“coGordinate“v¸ãectorŽŽ¡‘R%Ìsw‘¡E‰ff&fŽ’™Ò°gen‘qÄ.sw–UUwith“respGect“to“curren¸ãt“directionŽŽ¡‘R%Ìswitch(ÓlinespecÌ,L|R,C|O)‘°cct‘ª©SPST–UUswitcš¸ãh“left“or“righ˜t,“blank“or“closing“or“opGening“arro˜wŽŽ¡‘R%Ìthicklines‘¡E‰ff&fŽ‘Ç«(ÓnumberÌ)‘8ÒW°gen‘qÄset–UUline“thicš¸ãkness“in“pGoin˜tsŽŽ¡‘R%Ìthinlines‘¡E‰ff&fŽ‘Ç«(ÓnumberÌ)‘>T°gen‘qÄset–UUline“thicš¸ãkness“in“pGoin˜tsŽŽ¡‘R%Ìtransformer(ÓlinespecÌ,L|R,n)‘ Z°cct‘ª©2-winding–UUtransformer,“left“or“righ¸ãt,“n“arcsŽŽ¡‘R%Ìtwopi‘¡E‰ff&fŽ’€ÙÛ°gen‘qÄ2³ŽŽŽŸ’怰15ŽŽŒ‹z ¤çРýI0a ˜ÏŸ ýŠ0a‘R%Ìup‘¡E‰ff&fŽ’™Ò°gen‘qÄset–UUcurren¸ãt“direction“upŽŽ¤ ‘R%Ìup‘¡E‰ff&fŽ‘hð‰ff&fŽ’™Ò°gen‘qÄup–UUwith“respGect“to“curren¸ãt“directionŽŽ¡‘R%Ìvec‘¡E‰ff&fŽ‘Ç«(ÓxÌ,ÓyÌ)‘mR9°gen‘qÄpšGosition–UUrotated“with“resp˜ect“to“curren¸ãt“directionŽŽ¡‘R%Ìvrot‘¡E‰ff&fŽ‘Ç«(ÓxÌ,ÓyÌ,ÓxcosineÌ,ÓycosineÌ)‘l°gen‘qÄrotation‘UUopGeratorŽŽ¡‘R%Ìvscal‘¡E‰ff&fŽ‘Ç«(ÓnumberÌ,ÓxÌ,ÓyÌ)‘>T°gen‘qÄv¸ãector–UUscale“opGeratorŽŽ¡‘R%Ìw‘¡E‰ff&fŽ’•ÙÏ°gen‘qÄ.w–UUwith“respGect“to“curren¸ãt“directionŽŽ¡‘R%Ìwid‘¡E‰ff&fŽ’‹YÕ°gen‘qÄwidth–UUwith“respGect“to“curren¸ãt“directionŽŽ¡‘R%Ìxtal(ÓlinespecÌ)‘Q™ö°cct‘ª©quartz‘UUcrystalŽŽ¡Ÿ!Ä‘R%ÉReferencesŽŸç‘R%°[1]ŽŽ‘#à`Graphic–UUsym¸ãbGols“for“electrical“and“electronic“diagrams,“1975.‘nïIEEE“Std“315-1975.Ž¤‘R%[2]ŽŽ‘#à`J.‘UUBen¸ãtley‘ÿ*ª.‘nïÒMor–ÿ}'e›“çPr“o“gr“amming˜Pe“arls°.‘nïAddison-W–ÿ*ªesley“,–UUNew“Y‘ÿ*ªork,“1988.Ž¡‘R%[3]ŽŽ‘#à`The–UUF›ÿ*ªree“Soft•¸ãw“are–UUF˜oundation.‘nïGpic“man“page,“1992.Ž¡‘R%[4]ŽŽ‘#à`B.–’W.“Kernighan“and“D.“M.“Ric¸ãhie.›ÇThe“M4“macro“proGcessor.˜T‘ÿ*ªec¸ãhnical“repšGort,‘'Bell“Lab˜orato-Ž© ‘#à`ries,‘UU1977.Ž¡‘R%[5]ŽŽ‘#à`B.–ÙšW.“Kernighan“and“D.“M.“Ricš¸ãhie.‘ùPIC|A‘Ùxgraphics“language“for“t˜ypGesetting,‘ú¬user“man˜ual.Ž¦‘#à`T›ÿ*ªec¸ãhnical–UURepGort“116,“A˜T&T“Bell“LabGoratories,“1991.Ž¡‘R%[6]ŽŽ‘#à`T.–UULeathrum.‘nïPictures“in“T‘þU>Ÿ'EŽ‘ãxX“with“metafon¸ãt,“1992.Ž¡‘R%[7]ŽŽ‘#à`T.›UURokic•¸ãki.‘nïD“VIPS:˜A˜T‘þU>Ÿ'EŽ‘ãxX‘ªªdriv“er.‘nïT‘ÿ*ªec“hnical˜repGort,˜Stanford,˜1994.Ž¡‘R%[8]ŽŽ‘#à`T.–UUV‘ÿ*ªan“Zandt.‘nïPSTric¸ãks“user's“guide,“1993.ŽŽŸ’æ€16ŽŽŒø(³ƒ’À;è¤çкM ó*ÅUé cmssi10ó)m#½R cmss10ó(ßê cmmi10óÙ“ Rcmr7óKñ`y cmr10ù/ªßßßß