diff --git a/assets/a-3/100kOhm-1nF-100mH.png b/assets/a-3/100kOhm-1nF-100mH.png new file mode 100644 index 0000000..8cab071 Binary files /dev/null and b/assets/a-3/100kOhm-1nF-100mH.png differ diff --git a/assets/a-3/RC-10kOhm-1nF-15t.png b/assets/a-3/RC-10kOhm-1nF-15t.png new file mode 100644 index 0000000..492b1a1 Binary files /dev/null and b/assets/a-3/RC-10kOhm-1nF-15t.png differ diff --git a/assets/a-3/RC-10kOhm-1nF-1t.png b/assets/a-3/RC-10kOhm-1nF-1t.png new file mode 100644 index 0000000..fede19f Binary files /dev/null and b/assets/a-3/RC-10kOhm-1nF-1t.png differ diff --git a/assets/a-3/RC-10kOhm-1nF-5t.png b/assets/a-3/RC-10kOhm-1nF-5t.png new file mode 100644 index 0000000..27f78f6 Binary files /dev/null and b/assets/a-3/RC-10kOhm-1nF-5t.png differ diff --git a/assets/a-3/RL-10kOhm-100mH-0.5t.png b/assets/a-3/RL-10kOhm-100mH-0.5t.png new file mode 100644 index 0000000..21d1f1e Binary files /dev/null and b/assets/a-3/RL-10kOhm-100mH-0.5t.png differ diff --git a/assets/a-3/RL-10kOhm-100mH-25t.png b/assets/a-3/RL-10kOhm-100mH-25t.png new file mode 100644 index 0000000..6138534 Binary files /dev/null and b/assets/a-3/RL-10kOhm-100mH-25t.png differ diff --git a/assets/a-3/RL-10kOhm-100mH.png b/assets/a-3/RL-10kOhm-100mH.png new file mode 100644 index 0000000..e426ab4 Binary files /dev/null and b/assets/a-3/RL-10kOhm-100mH.png differ diff --git a/assets/a-3/exp1-bode.eps b/assets/a-3/exp1-bode.eps new file mode 100644 index 0000000..a0e8c3e --- /dev/null +++ b/assets/a-3/exp1-bode.eps @@ -0,0 +1,1338 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: exp1-bode.tex +%%Creator: gnuplot 6.0 patchlevel 4 +%%CreationDate: Tue Jul 14 18:21:42 2026 +%%DocumentFonts: +%%BoundingBox: 50 50 390 276 +%%EndComments +%%BeginProlog +/gnudict 256 dict def +gnudict begin +% +% The following true/false flags may be edited by hand if desired. +% The unit line width and grayscale image gamma correction may also be changed. +% +/Color false def +/Blacktext true def +/Solid false def +/Dashlength 1 def +/Landscape false def +/Level1 false def +/Level3 false def +/Rounded false def +/ClipToBoundingBox false def +/SuppressPDFMark false def +/TransparentPatterns false def +/gnulinewidth 5.000 def +/userlinewidth gnulinewidth def +/Gamma 1.0 def +/BackgroundColor {-1.000 -1.000 -1.000} def +% +/vshift -73 def +/dl1 { + 10.0 Dashlength userlinewidth gnulinewidth div mul mul mul + Rounded { currentlinewidth 0.75 mul sub dup 0 le { pop 0.01 } if } if +} def +/dl2 { + 10.0 Dashlength userlinewidth gnulinewidth div mul mul mul + Rounded { currentlinewidth 0.75 mul add } if +} def +/hpt_ 31.5 def +/vpt_ 31.5 def +/hpt hpt_ def +/vpt vpt_ def +/doclip { + ClipToBoundingBox { + newpath 50 50 moveto 390 50 lineto 390 276 lineto 50 276 lineto closepath + clip + } if +} def +% +% Gnuplot Prolog Version 5.2 (Dec 2017) +% +%/SuppressPDFMark true def +% +/M {moveto} bind def +/L {lineto} bind def +/R {rmoveto} bind def +/V {rlineto} bind def +/N {newpath moveto} bind def +/Z {closepath} bind def +/C {setrgbcolor} bind def +/f {rlineto fill} bind def +/g {setgray} bind def +/Gshow {show} def % May be redefined later in the file to support UTF-8 +/vpt2 vpt 2 mul def +/hpt2 hpt 2 mul def +/Lshow {currentpoint stroke M 0 vshift R + Blacktext {gsave 0 setgray textshow grestore} {textshow} ifelse} def +/Rshow {currentpoint stroke M dup stringwidth pop neg vshift R + Blacktext {gsave 0 setgray textshow grestore} {textshow} ifelse} def +/Cshow {currentpoint stroke M dup stringwidth pop -2 div vshift R + Blacktext {gsave 0 setgray textshow grestore} {textshow} ifelse} def +/UP {dup vpt_ mul /vpt exch def hpt_ mul /hpt exch def + /hpt2 hpt 2 mul def /vpt2 vpt 2 mul def} def +/DL {Color {setrgbcolor Solid {pop []} if 0 setdash} + {pop pop pop 0 setgray Solid {pop []} if 0 setdash} ifelse} def +/BL {stroke userlinewidth 2 mul setlinewidth + Rounded {1 setlinejoin 1 setlinecap} if} def +/AL {stroke userlinewidth 2 div setlinewidth + Rounded {1 setlinejoin 1 setlinecap} if} def +/UL {dup gnulinewidth mul /userlinewidth exch def + dup 1 lt {pop 1} if 10 mul /udl exch def} def +/PL {stroke userlinewidth setlinewidth + Rounded {1 setlinejoin 1 setlinecap} if} def +3.8 setmiterlimit +% Classic Line colors (version 5.0) +/LCw {1 1 1} def +/LCb {0 0 0} def +/LCa {0 0 0} def +/LC0 {1 0 0} def +/LC1 {0 1 0} def +/LC2 {0 0 1} def +/LC3 {1 0 1} def +/LC4 {0 1 1} def +/LC5 {1 1 0} def +/LC6 {0 0 0} def +/LC7 {1 0.3 0} def +/LC8 {0.5 0.5 0.5} def +% Default dash patterns (version 5.0) +/LTB {BL [] LCb DL} def +/LTw {PL [] 1 setgray} def +/LTb {PL [] LCb DL} def +/LTa {AL [1 udl mul 2 udl mul] 0 setdash LCa setrgbcolor} def +/LT0 {PL [] LC0 DL} def +/LT1 {PL [2 dl1 3 dl2] LC1 DL} def +/LT2 {PL [1 dl1 1.5 dl2] LC2 DL} def +/LT3 {PL [6 dl1 2 dl2 1 dl1 2 dl2] LC3 DL} def +/LT4 {PL [1 dl1 2 dl2 6 dl1 2 dl2 1 dl1 2 dl2] LC4 DL} def +/LT5 {PL [4 dl1 2 dl2] LC5 DL} def +/LT6 {PL [1.5 dl1 1.5 dl2 1.5 dl1 1.5 dl2 1.5 dl1 6 dl2] LC6 DL} def +/LT7 {PL [3 dl1 3 dl2 1 dl1 3 dl2] LC7 DL} def +/LT8 {PL [2 dl1 2 dl2 2 dl1 6 dl2] LC8 DL} def +/SL {[] 0 setdash} def +/Pnt {stroke [] 0 setdash gsave 1 setlinecap M 0 0 V stroke grestore} def +/Dia {stroke [] 0 setdash 2 copy vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke + Pnt} def +/Pls {stroke [] 0 setdash vpt sub M 0 vpt2 V + currentpoint stroke M + hpt neg vpt neg R hpt2 0 V stroke + } def +/Box {stroke [] 0 setdash 2 copy exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke + Pnt} def +/Crs {stroke [] 0 setdash exch hpt sub exch vpt add M + hpt2 vpt2 neg V currentpoint stroke M + hpt2 neg 0 R hpt2 vpt2 V stroke} def +/TriU {stroke [] 0 setdash 2 copy vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke + Pnt} def +/Star {2 copy Pls Crs} def +/BoxF {stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath fill} def +/TriUF {stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath fill} def +/TriD {stroke [] 0 setdash 2 copy vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke + Pnt} def +/TriDF {stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath fill} def +/DiaF {stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath fill} def +/Pent {stroke [] 0 setdash 2 copy gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore Pnt} def +/PentF {stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath fill grestore} def +/Circle {stroke [] 0 setdash 2 copy + hpt 0 360 arc stroke Pnt} def +/CircleF {stroke [] 0 setdash hpt 0 360 arc fill} def +/C0 {BL [] 0 setdash 2 copy moveto vpt 90 450 arc} bind def +/C1 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + vpt 0 360 arc closepath} bind def +/C2 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath} bind def +/C3 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + vpt 0 360 arc closepath} bind def +/C4 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc closepath} bind def +/C5 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc + 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc} bind def +/C6 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 270 arc closepath fill + vpt 0 360 arc closepath} bind def +/C7 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 270 arc closepath fill + vpt 0 360 arc closepath} bind def +/C8 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath} bind def +/C9 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 450 arc closepath fill + vpt 0 360 arc closepath} bind def +/C10 {BL [] 0 setdash 2 copy 2 copy moveto vpt 270 360 arc closepath fill + 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath} bind def +/C11 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath} bind def +/C12 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath} bind def +/C13 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath} bind def +/C14 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 360 arc closepath fill + vpt 0 360 arc} bind def +/C15 {BL [] 0 setdash 2 copy vpt 0 360 arc closepath fill + vpt 0 360 arc closepath} bind def +/Rec {newpath 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto + neg 0 rlineto closepath} bind def +/Square {dup Rec} bind def +/Bsquare {vpt sub exch vpt sub exch vpt2 Square} bind def +/S0 {BL [] 0 setdash 2 copy moveto 0 vpt rlineto BL Bsquare} bind def +/S1 {BL [] 0 setdash 2 copy vpt Square fill Bsquare} bind def +/S2 {BL [] 0 setdash 2 copy exch vpt sub exch vpt Square fill Bsquare} bind def +/S3 {BL [] 0 setdash 2 copy exch vpt sub exch vpt2 vpt Rec fill Bsquare} bind def +/S4 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def +/S5 {BL [] 0 setdash 2 copy 2 copy vpt Square fill + exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def +/S6 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill Bsquare} bind def +/S7 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill + 2 copy vpt Square fill Bsquare} bind def +/S8 {BL [] 0 setdash 2 copy vpt sub vpt Square fill Bsquare} bind def +/S9 {BL [] 0 setdash 2 copy vpt sub vpt vpt2 Rec fill Bsquare} bind def +/S10 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt Square fill + Bsquare} bind def +/S11 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt2 vpt Rec fill + Bsquare} bind def +/S12 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill Bsquare} bind def +/S13 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy vpt Square fill Bsquare} bind def +/S14 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy exch vpt sub exch vpt Square fill Bsquare} bind def +/S15 {BL [] 0 setdash 2 copy Bsquare fill Bsquare} bind def +/D0 {gsave translate 45 rotate 0 0 S0 stroke grestore} bind def +/D1 {gsave translate 45 rotate 0 0 S1 stroke grestore} bind def +/D2 {gsave translate 45 rotate 0 0 S2 stroke grestore} bind def +/D3 {gsave translate 45 rotate 0 0 S3 stroke grestore} bind def +/D4 {gsave translate 45 rotate 0 0 S4 stroke grestore} bind def +/D5 {gsave translate 45 rotate 0 0 S5 stroke grestore} bind def +/D6 {gsave translate 45 rotate 0 0 S6 stroke grestore} bind def +/D7 {gsave translate 45 rotate 0 0 S7 stroke grestore} bind def +/D8 {gsave translate 45 rotate 0 0 S8 stroke grestore} bind def +/D9 {gsave translate 45 rotate 0 0 S9 stroke grestore} bind def +/D10 {gsave translate 45 rotate 0 0 S10 stroke grestore} bind def +/D11 {gsave translate 45 rotate 0 0 S11 stroke grestore} bind def +/D12 {gsave translate 45 rotate 0 0 S12 stroke grestore} bind def +/D13 {gsave translate 45 rotate 0 0 S13 stroke grestore} bind def +/D14 {gsave translate 45 rotate 0 0 S14 stroke grestore} bind def +/D15 {gsave translate 45 rotate 0 0 S15 stroke grestore} bind def +/DiaE {stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke} def +/BoxE {stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke} def +/TriUE {stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke} def +/TriDE {stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke} def +/PentE {stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore} def +/CircE {stroke [] 0 setdash + hpt 0 360 arc stroke} def +/Opaque {gsave closepath 1 setgray fill grestore 0 setgray closepath} def +/DiaW {stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V Opaque stroke} def +/BoxW {stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V Opaque stroke} def +/TriUW {stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V Opaque stroke} def +/TriDW {stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V Opaque stroke} def +/PentW {stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + Opaque stroke grestore} def +/CircW {stroke [] 0 setdash + hpt 0 360 arc Opaque stroke} def +/BoxFill {gsave Rec 1 setgray fill grestore} def +/Density { + /Fillden exch def + currentrgbcolor + /ColB exch def /ColG exch def /ColR exch def + /ColR ColR Fillden mul Fillden sub 1 add def + /ColG ColG Fillden mul Fillden sub 1 add def + /ColB ColB Fillden mul Fillden sub 1 add def + ColR ColG ColB setrgbcolor} def +/BoxColFill {gsave Rec PolyFill} def +/PolyFill {gsave Density fill grestore grestore} def +/h {rlineto rlineto rlineto closepath gsave fill grestore stroke} bind def +% +% PostScript Level 1 Pattern Fill routine for rectangles +% Usage: x y w h s a XX PatternFill +% x,y = lower left corner of box to be filled +% w,h = width and height of box +% a = angle in degrees between lines and x-axis +% XX = 0/1 for no/yes cross-hatch +% +/PatternFill {gsave /PFa [ 9 2 roll ] def + PFa 0 get PFa 2 get 2 div add PFa 1 get PFa 3 get 2 div add translate + PFa 2 get -2 div PFa 3 get -2 div PFa 2 get PFa 3 get Rec + TransparentPatterns {} {gsave 1 setgray fill grestore} ifelse + clip + currentlinewidth 0.5 mul setlinewidth + /PFs PFa 2 get dup mul PFa 3 get dup mul add sqrt def + 0 0 M PFa 5 get rotate PFs -2 div dup translate + 0 1 PFs PFa 4 get div 1 add floor cvi + {PFa 4 get mul 0 M 0 PFs V} for + 0 PFa 6 get ne { + 0 1 PFs PFa 4 get div 1 add floor cvi + {PFa 4 get mul 0 2 1 roll M PFs 0 V} for + } if + stroke grestore} def +% +/languagelevel where + {pop languagelevel} {1} ifelse +dup 2 lt + {/InterpretLevel1 true def + /InterpretLevel3 false def} + {/InterpretLevel1 Level1 def + 2 gt + {/InterpretLevel3 Level3 def} + {/InterpretLevel3 false def} + ifelse } + ifelse +% +% PostScript level 2 pattern fill definitions +% +/Level2PatternFill { +/Tile8x8 {/PaintType 2 /PatternType 1 /TilingType 1 /BBox [0 0 8 8] /XStep 8 /YStep 8} + bind def +/KeepColor {currentrgbcolor [/Pattern /DeviceRGB] setcolorspace} bind def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke} +>> matrix makepattern +/Pat1 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke + 0 4 M 4 8 L 8 4 L 4 0 L 0 4 L stroke} +>> matrix makepattern +/Pat2 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop 0 0 M 0 8 L + 8 8 L 8 0 L 0 0 L fill} +>> matrix makepattern +/Pat3 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop -4 8 M 8 -4 L + 0 12 M 12 0 L stroke} +>> matrix makepattern +/Pat4 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop -4 0 M 8 12 L + 0 -4 M 12 8 L stroke} +>> matrix makepattern +/Pat5 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop -2 8 M 4 -4 L + 0 12 M 8 -4 L 4 12 M 10 0 L stroke} +>> matrix makepattern +/Pat6 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop -2 0 M 4 12 L + 0 -4 M 8 12 L 4 -4 M 10 8 L stroke} +>> matrix makepattern +/Pat7 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop 8 -2 M -4 4 L + 12 0 M -4 8 L 12 4 M 0 10 L stroke} +>> matrix makepattern +/Pat8 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop 0 -2 M 12 4 L + -4 0 M 12 8 L -4 4 M 8 10 L stroke} +>> matrix makepattern +/Pat9 exch def +/Pattern1 {PatternBgnd KeepColor Pat1 setpattern} bind def +/Pattern2 {PatternBgnd KeepColor Pat2 setpattern} bind def +/Pattern3 {PatternBgnd KeepColor Pat3 setpattern} bind def +/Pattern4 {PatternBgnd KeepColor Landscape {Pat5} {Pat4} ifelse setpattern} bind def +/Pattern5 {PatternBgnd KeepColor Landscape {Pat4} {Pat5} ifelse setpattern} bind def +/Pattern6 {PatternBgnd KeepColor Landscape {Pat9} {Pat6} ifelse setpattern} bind def +/Pattern7 {PatternBgnd KeepColor Landscape {Pat8} {Pat7} ifelse setpattern} bind def +} def +% +% +%End of PostScript Level 2 code +% +/PatternBgnd { + TransparentPatterns {} {gsave 1 setgray fill grestore} ifelse +} def +% +% Substitute for Level 2 pattern fill codes with +% grayscale if Level 2 support is not selected. +% +/Level1PatternFill { +/Pattern1 {0.250 Density} bind def +/Pattern2 {0.500 Density} bind def +/Pattern3 {0.750 Density} bind def +/Pattern4 {0.125 Density} bind def +/Pattern5 {0.375 Density} bind def +/Pattern6 {0.625 Density} bind def +/Pattern7 {0.875 Density} bind def +} def +% +% Now test for support of Level 2 code +% +Level1 {Level1PatternFill} {Level2PatternFill} ifelse +% +/Symbol-Oblique /Symbol findfont [1 0 .167 1 0 0] makefont +dup length dict begin {1 index /FID eq {pop pop} {def} ifelse} forall +currentdict end definefont pop +% +Level1 SuppressPDFMark or +{} { +/SDict 10 dict def +systemdict /pdfmark known not { + userdict /pdfmark systemdict /cleartomark get put +} if +SDict begin [ + /Title (exp1-bode.tex) + /Subject (gnuplot plot) + /Creator (gnuplot 6.0 patchlevel 4) +% /Producer (gnuplot) +% /Keywords () + /CreationDate (Tue Jul 14 18:21:42 2026) + /DOCINFO pdfmark +end +} ifelse +% +% Support for boxed text - Ethan A Merritt Sep 2016 +% +/InitTextBox { userdict /TBy2 3 -1 roll put userdict /TBx2 3 -1 roll put + userdict /TBy1 3 -1 roll put userdict /TBx1 3 -1 roll put + /Boxing true def } def +/ExtendTextBox { dup type /stringtype eq + { Boxing { gsave dup false charpath pathbbox + dup TBy2 gt {userdict /TBy2 3 -1 roll put} {pop} ifelse + dup TBx2 gt {userdict /TBx2 3 -1 roll put} {pop} ifelse + dup TBy1 lt {userdict /TBy1 3 -1 roll put} {pop} ifelse + dup TBx1 lt {userdict /TBx1 3 -1 roll put} {pop} ifelse + grestore } if } + {} ifelse} def +/PopTextBox { newpath TBx1 TBxmargin sub TBy1 TBymargin sub M + TBx1 TBxmargin sub TBy2 TBymargin add L + TBx2 TBxmargin add TBy2 TBymargin add L + TBx2 TBxmargin add TBy1 TBymargin sub L closepath } def +/DrawTextBox { PL PopTextBox stroke /Boxing false def} def +/FillTextBox { gsave PopTextBox fill grestore /Boxing false def} def +0 0 0 0 InitTextBox +/TBxmargin 20 def +/TBymargin 20 def +/Boxing false def +/textshow { ExtendTextBox Gshow } def +% +end +%%EndProlog +%%Page: 1 1 +gnudict begin +gsave +doclip +50 50 translate +0.050 0.050 scale +0 setgray +newpath +1.000 UL +LTb +LCb setrgbcolor +[] 0 setdash +0.500 UL +LTb +1342 2487 M +5063 0 V +stroke +1.000 UL +LTb +1342 2487 M +63 0 V +5000 0 R +-63 0 V +stroke +1342 2624 M +31 0 V +5032 0 R +-31 0 V +-5032 81 R +31 0 V +5032 0 R +-31 0 V +-5032 57 R +31 0 V +5032 0 R +-31 0 V +-5032 44 R +31 0 V +5032 0 R +-31 0 V +-5032 36 R +31 0 V +5032 0 R +-31 0 V +-5032 31 R +31 0 V +5032 0 R +-31 0 V +-5032 26 R +31 0 V +5032 0 R +-31 0 V +-5032 24 R +31 0 V +5032 0 R +-31 0 V +stroke +0.500 UL +LTb +1342 2944 M +5063 0 V +stroke +1.000 UL +LTb +1342 2944 M +63 0 V +5000 0 R +-63 0 V +stroke +1342 3081 M +31 0 V +5032 0 R +-31 0 V +-5032 80 R +31 0 V +5032 0 R +-31 0 V +-5032 57 R +31 0 V +5032 0 R +-31 0 V +-5032 45 R +31 0 V +5032 0 R +-31 0 V +-5032 36 R +31 0 V +5032 0 R +-31 0 V +-5032 30 R +31 0 V +5032 0 R +-31 0 V +-5032 27 R +31 0 V +5032 0 R +-31 0 V +-5032 23 R +31 0 V +5032 0 R +-31 0 V +stroke +0.500 UL +LTb +1342 3400 M +5063 0 V +stroke +1.000 UL +LTb +1342 3400 M +63 0 V +5000 0 R +-63 0 V +stroke +1342 3537 M +31 0 V +5032 0 R +-31 0 V +-5032 81 R +31 0 V +5032 0 R +-31 0 V +-5032 57 R +31 0 V +5032 0 R +-31 0 V +-5032 44 R +31 0 V +5032 0 R +-31 0 V +-5032 36 R +31 0 V +5032 0 R +-31 0 V +-5032 31 R +31 0 V +5032 0 R +-31 0 V +-5032 26 R +31 0 V +5032 0 R +-31 0 V +-5032 24 R +31 0 V +5032 0 R +-31 0 V +stroke +0.500 UL +LTb +1342 3857 M +5063 0 V +stroke +1.000 UL +LTb +1342 3857 M +63 0 V +5000 0 R +-63 0 V +stroke +1342 3994 M +31 0 V +5032 0 R +-31 0 V +-5032 80 R +31 0 V +5032 0 R +-31 0 V +-5032 57 R +31 0 V +5032 0 R +-31 0 V +-5032 45 R +31 0 V +5032 0 R +-31 0 V +-5032 36 R +31 0 V +5032 0 R +-31 0 V +-5032 30 R +31 0 V +5032 0 R +-31 0 V +-5032 27 R +31 0 V +5032 0 R +-31 0 V +-5032 23 R +31 0 V +5032 0 R +-31 0 V +stroke +0.500 UL +LTb +1342 4313 M +5063 0 V +stroke +1.000 UL +LTb +1342 4313 M +63 0 V +5000 0 R +-63 0 V +stroke +0.500 UL +LTb +1342 2487 M +0 1826 V +stroke +1.000 UL +LTb +1342 2487 M +0 63 V +0 1763 R +0 -63 V +stroke +1716 2487 M +0 31 V +0 1795 R +0 -31 V +1934 2487 M +0 31 V +0 1795 R +0 -31 V +2089 2487 M +0 31 V +0 1795 R +0 -31 V +2210 2487 M +0 31 V +0 1795 R +0 -31 V +98 -1795 R +0 31 V +0 1795 R +0 -31 V +83 -1795 R +0 31 V +0 1795 R +0 -31 V +72 -1795 R +0 31 V +0 1795 R +0 -31 V +63 -1795 R +0 31 V +0 1795 R +0 -31 V +stroke +0.500 UL +LTb +2583 2487 M +0 1543 V +0 220 R +0 63 V +stroke +1.000 UL +LTb +2583 2487 M +0 63 V +0 1763 R +0 -63 V +stroke +2957 2487 M +0 31 V +0 1795 R +0 -31 V +3175 2487 M +0 31 V +0 1795 R +0 -31 V +3330 2487 M +0 31 V +0 1795 R +0 -31 V +3451 2487 M +0 31 V +0 1795 R +0 -31 V +98 -1795 R +0 31 V +0 1795 R +0 -31 V +83 -1795 R +0 31 V +0 1795 R +0 -31 V +72 -1795 R +0 31 V +0 1795 R +0 -31 V +64 -1795 R +0 31 V +0 1795 R +0 -31 V +stroke +0.500 UL +LTb +3824 2487 M +0 1543 V +0 220 R +0 63 V +stroke +1.000 UL +LTb +3824 2487 M +0 63 V +0 1763 R +0 -63 V +stroke +4198 2487 M +0 31 V +0 1795 R +0 -31 V +4417 2487 M +0 31 V +0 1795 R +0 -31 V +4572 2487 M +0 31 V +0 1795 R +0 -31 V +4692 2487 M +0 31 V +0 1795 R +0 -31 V +98 -1795 R +0 31 V +0 1795 R +0 -31 V +83 -1795 R +0 31 V +0 1795 R +0 -31 V +72 -1795 R +0 31 V +0 1795 R +0 -31 V +64 -1795 R +0 31 V +0 1795 R +0 -31 V +stroke +0.500 UL +LTb +5066 2487 M +0 1543 V +0 220 R +0 63 V +stroke +1.000 UL +LTb +5066 2487 M +0 63 V +0 1763 R +0 -63 V +stroke +5439 2487 M +0 31 V +0 1795 R +0 -31 V +5658 2487 M +0 31 V +0 1795 R +0 -31 V +5813 2487 M +0 31 V +0 1795 R +0 -31 V +5933 2487 M +0 31 V +0 1795 R +0 -31 V +98 -1795 R +0 31 V +0 1795 R +0 -31 V +83 -1795 R +0 31 V +0 1795 R +0 -31 V +72 -1795 R +0 31 V +0 1795 R +0 -31 V +64 -1795 R +0 31 V +0 1795 R +0 -31 V +stroke +0.500 UL +LTb +6307 2487 M +0 1826 V +stroke +1.000 UL +LTb +6307 2487 M +0 63 V +0 1763 R +0 -63 V +stroke +1.000 UL +LTb +1342 4313 N +0 -1826 V +5063 0 V +0 1826 V +-5063 0 V +Z stroke +1.000 UP +1.000 UL +LTb +% Begin plot #1 +1.000 UP +1.000 UL +LTb +1.000 UP +1.000 UL +LTb +LTw +% End plot #1 +2.000 UL +LTb +1.000 UL +LTb +1342 4313 N +0 -1826 V +5063 0 V +0 1826 V +-5063 0 V +Z stroke +1.000 UP +1.000 UL +LTb +1.000 UL +LTb +0.500 UL +LTb +946 704 M +5459 0 V +stroke +1.000 UL +LTb +946 704 M +63 0 V +5396 0 R +-63 0 V +stroke +0.500 UL +LTb +946 1108 M +5459 0 V +stroke +1.000 UL +LTb +946 1108 M +63 0 V +5396 0 R +-63 0 V +stroke +0.500 UL +LTb +946 1345 M +5459 0 V +stroke +1.000 UL +LTb +946 1345 M +63 0 V +5396 0 R +-63 0 V +stroke +0.500 UL +LTb +946 1513 M +5459 0 V +stroke +1.000 UL +LTb +946 1513 M +63 0 V +5396 0 R +-63 0 V +stroke +0.500 UL +LTb +946 1643 M +5459 0 V +stroke +1.000 UL +LTb +946 1643 M +63 0 V +5396 0 R +-63 0 V +stroke +0.500 UL +LTb +946 1749 M +5459 0 V +stroke +1.000 UL +LTb +946 1749 M +63 0 V +5396 0 R +-63 0 V +stroke +0.500 UL +LTb +946 1839 M +5459 0 V +stroke +1.000 UL +LTb +946 1839 M +63 0 V +5396 0 R +-63 0 V +stroke +0.500 UL +LTb +946 1917 M +5459 0 V +stroke +1.000 UL +LTb +946 1917 M +63 0 V +5396 0 R +-63 0 V +stroke +0.500 UL +LTb +946 1986 M +5459 0 V +stroke +1.000 UL +LTb +946 1986 M +63 0 V +5396 0 R +-63 0 V +stroke +0.500 UL +LTb +946 2047 M +5459 0 V +stroke +1.000 UL +LTb +946 2047 M +63 0 V +5396 0 R +-63 0 V +stroke +0.500 UL +LTb +2284 704 M +0 1343 V +stroke +1.000 UL +LTb +2284 704 M +0 63 V +0 1280 R +0 -63 V +stroke +0.500 UL +LTb +3220 704 M +0 1343 V +stroke +1.000 UL +LTb +3220 704 M +0 63 V +0 1280 R +0 -63 V +stroke +0.500 UL +LTb +3623 704 M +0 1343 V +stroke +1.000 UL +LTb +3623 704 M +0 63 V +0 1280 R +0 -63 V +stroke +0.500 UL +LTb +4558 704 M +0 1343 V +stroke +1.000 UL +LTb +4558 704 M +0 63 V +0 1280 R +0 -63 V +stroke +0.500 UL +LTb +4961 704 M +0 1343 V +stroke +1.000 UL +LTb +4961 704 M +0 63 V +0 1280 R +0 -63 V +stroke +0.500 UL +LTb +5896 704 M +0 1343 V +stroke +1.000 UL +LTb +5896 704 M +0 63 V +0 1280 R +0 -63 V +stroke +0.500 UL +LTb +6299 704 M +0 1343 V +stroke +1.000 UL +LTb +6299 704 M +0 63 V +0 1280 R +0 -63 V +stroke +0.500 UL +LTb +946 704 M +0 1343 V +stroke +1.000 UL +LTb +946 704 M +0 63 V +0 1280 R +0 -63 V +stroke +1349 704 M +0 31 V +0 1312 R +0 -31 V +1585 704 M +0 31 V +0 1312 R +0 -31 V +1752 704 M +0 31 V +0 1312 R +0 -31 V +1881 704 M +0 31 V +0 1312 R +0 -31 V +1987 704 M +0 31 V +0 1312 R +0 -31 V +2077 704 M +0 31 V +0 1312 R +0 -31 V +2155 704 M +0 31 V +0 1312 R +0 -31 V +2223 704 M +0 31 V +0 1312 R +0 -31 V +stroke +0.500 UL +LTb +2284 704 M +0 1343 V +stroke +1.000 UL +LTb +2284 704 M +0 63 V +0 1280 R +0 -63 V +2687 704 M +0 31 V +0 1312 R +0 -31 V +2923 704 M +0 31 V +0 1312 R +0 -31 V +3090 704 M +0 31 V +0 1312 R +0 -31 V +3220 704 M +0 31 V +0 1312 R +0 -31 V +3326 704 M +0 31 V +0 1312 R +0 -31 V +3415 704 M +0 31 V +0 1312 R +0 -31 V +3493 704 M +0 31 V +0 1312 R +0 -31 V +3561 704 M +0 31 V +0 1312 R +0 -31 V +stroke +0.500 UL +LTb +3623 704 M +0 1343 V +stroke +1.000 UL +LTb +3623 704 M +0 63 V +0 1280 R +0 -63 V +4025 704 M +0 31 V +0 1312 R +0 -31 V +4261 704 M +0 31 V +0 1312 R +0 -31 V +4428 704 M +0 31 V +0 1312 R +0 -31 V +4558 704 M +0 31 V +0 1312 R +0 -31 V +4664 704 M +0 31 V +0 1312 R +0 -31 V +4753 704 M +0 31 V +0 1312 R +0 -31 V +4831 704 M +0 31 V +0 1312 R +0 -31 V +4900 704 M +0 31 V +0 1312 R +0 -31 V +stroke +0.500 UL +LTb +4961 704 M +0 1343 V +stroke +1.000 UL +LTb +4961 704 M +0 63 V +0 1280 R +0 -63 V +5364 704 M +0 31 V +0 1312 R +0 -31 V +5599 704 M +0 31 V +0 1312 R +0 -31 V +5766 704 M +0 31 V +0 1312 R +0 -31 V +5896 704 M +0 31 V +0 1312 R +0 -31 V +6002 704 M +0 31 V +0 1312 R +0 -31 V +6092 704 M +0 31 V +0 1312 R +0 -31 V +6169 704 M +0 31 V +0 1312 R +0 -31 V +6238 704 M +0 31 V +0 1312 R +0 -31 V +stroke +0.500 UL +LTb +6299 704 M +0 1343 V +stroke +1.000 UL +LTb +6299 704 M +0 63 V +0 1280 R +0 -63 V +stroke +946 2047 N +946 704 L +5459 0 V +0 1343 V +-5459 0 V +Z stroke +1.000 UP +1.000 UL +LTb +% Begin plot #1 +1.000 UP +1.000 UL +LTb +LTw +% End plot #1 +2.000 UL +LTb +1.000 UL +LTb +946 2047 N +946 704 L +5459 0 V +0 1343 V +-5459 0 V +Z stroke +1.000 UP +1.000 UL +LTb +stroke +grestore +end +showpage +%%Trailer diff --git a/assets/a-3/exp1-bode.png b/assets/a-3/exp1-bode.png new file mode 100644 index 0000000..d4bbd97 Binary files /dev/null and b/assets/a-3/exp1-bode.png differ diff --git a/assets/a-3/exp1-bode.tex b/assets/a-3/exp1-bode.tex new file mode 100644 index 0000000..f661cb5 Binary files /dev/null and b/assets/a-3/exp1-bode.tex differ diff --git a/assets/a-3/exp2-1.gnuplot b/assets/a-3/exp2-1.gnuplot new file mode 100644 index 0000000..2bf9daa --- /dev/null +++ b/assets/a-3/exp2-1.gnuplot @@ -0,0 +1,34 @@ +set output "exp1-bode.png" + +#load '../common.gnuplot' + +set terminal png + +unset key +set key center rmargin box height 1 + +set log x +set log y +set xrange [1e2:2e6] + +set multiplot layout 2,1 rowsfirst + +set xlabel +set ylabel "Impedance (Ohm)" +set format x "" +set format y "%.1g" + +plot "exp2-1_1nF-Z.txt" u 1:2 title "1nF" with points, "exp2-1_100uF-Z.txt" u 1:2 title "100uF" with points + +unset log y +set xtics add ("1k" 1e3, "10k" 1e4, "100k" 1e5, "1M" 1e6) +set yrange [-30:120] +set ytics 30 +set xlabel "Frequency (Hz)" +set ylabel "Phase (deg)" +set format y " %.0f" + +plot "exp2-1_1nF.txt" u 1:4 title "1nF" with points, "exp2-1_100uF.txt" u 1:4 title "100uF" with points + +unset multiplot + diff --git a/assets/a-3/exp2-1_100uF-Z.txt b/assets/a-3/exp2-1_100uF-Z.txt new file mode 100644 index 0000000..a332d8d --- /dev/null +++ b/assets/a-3/exp2-1_100uF-Z.txt @@ -0,0 +1,7 @@ +1000, 54484.076433 +5000, 54484.076433 +10000, 51530.120482 +50000, 50703.030303 +100000, 50133.333333 +500000, 49848.484848 +1000000, 49901.234568 diff --git a/assets/a-3/exp2-1_100uF.txt b/assets/a-3/exp2-1_100uF.txt new file mode 100644 index 0000000..afe7fce --- /dev/null +++ b/assets/a-3/exp2-1_100uF.txt @@ -0,0 +1,7 @@ +1000, 1.82, 1.57, 0 +5000, 1.82, 1.57, 0 +10000, 1.82, 1.66, 0 +50000, 1.78, 1.65, 0 +100000, 1.76, 1.65, 0 +500000, 1.75, 1.65, -1 +1000000, 1.72, 1.62, -4 diff --git a/assets/a-3/exp2-1_1nF-Z.txt b/assets/a-3/exp2-1_1nF-Z.txt new file mode 100644 index 0000000..a669a8e --- /dev/null +++ b/assets/a-3/exp2-1_1nF-Z.txt @@ -0,0 +1,7 @@ +1000, 156231.481481 +5000, 31626.168224 +10000, 15887.947269 +50000, 3139.245283 +100000, 1581.730769 +500000, 319.676113 +1000000, 167.779070 diff --git a/assets/a-3/exp2-1_1nF.txt b/assets/a-3/exp2-1_1nF.txt new file mode 100644 index 0000000..2326f2e --- /dev/null +++ b/assets/a-3/exp2-1_1nF.txt @@ -0,0 +1,7 @@ +1000, 3.59, 1.08/1000, 90 +5000, 3.60, 5.35/1000, 100 +10000, 3.59, 10.62/1000, 90 +50000, 3.54, 53/1000, 88 +100000, 3.50, 104/1000, 88 +500000, 3.36, 494/1000, 80 +1000000, 3.07, 860/1000, 70 diff --git a/assets/a-3/exp2-2-Z.txt b/assets/a-3/exp2-2-Z.txt new file mode 100644 index 0000000..2249bee --- /dev/null +++ b/assets/a-3/exp2-2-Z.txt @@ -0,0 +1,7 @@ +1000, 563.356164 +5000, 2678.253968 +10000, 5084.545455 +50000, 12690.000000 +100000, 83928.571429 +500000, 31064.761905 +1000000, 14391.150442 diff --git a/assets/a-3/exp2-2.gnuplot b/assets/a-3/exp2-2.gnuplot new file mode 100644 index 0000000..9f661bd --- /dev/null +++ b/assets/a-3/exp2-2.gnuplot @@ -0,0 +1,33 @@ +set output "exp2-bode.png" + +#load '../common.gnuplot' + +set terminal png + +unset key +set key top left box height 1 width 2 + +set log x +set log y +set xrange [1e2:2e6] + +set multiplot layout 2,1 rowsfirst + +set xlabel +set ylabel "Impedance (Ohm)" +set format x "" +set format y "%.1g" + +plot "exp2-2-Z.txt" u 1:2 title "100mH" with points + +unset log y +set xtics add ("1k" 1e3, "10k" 1e4, "100k" 1e5, "1M" 1e6) +set yrange [-100:100] +set ytics 40 +set xlabel "Frequency (Hz)" +set ylabel "Phase (deg)" +set format y " %.0f" + +plot "exp2-2.txt" u 1:4 title "100mH" with points + +unset multiplot diff --git a/assets/a-3/exp2-2.txt b/assets/a-3/exp2-2.txt new file mode 100644 index 0000000..8d8705f --- /dev/null +++ b/assets/a-3/exp2-2.txt @@ -0,0 +1,7 @@ +1000, 3.50, 0.292, -75 +5000, 3.59, 0.063, -87 +10000, 3.57, 0.033, -88 +50000, 3.51, 0.013, -88 +100000, 3.50, 0.00196, -90 +500000, 3.47, 0.00525, 90 +1000000, 3.46, 0.0113, 85 diff --git a/assets/a-3/exp2-bode.png b/assets/a-3/exp2-bode.png new file mode 100644 index 0000000..e9175c6 Binary files /dev/null and b/assets/a-3/exp2-bode.png differ