Compare commits

..

7 Commits

Author SHA1 Message Date
kenryuS b6ee54382b fixed t-1 2026-06-13 22:07:36 +09:00
kenryuS a329a7cc12 fixed a-2 2026-06-13 21:18:16 +09:00
kenryuS 16b80bf79a fixed most of tables in a-2 2026-06-03 02:28:35 +09:00
kenryuS 4a26cb8a07 turnin t-1 2026-05-26 14:43:19 +09:00
kenryuS e7505aac6c checkpoint t-1 2026-05-26 13:17:41 +09:00
kenryuS f0a14ef737 fixes on a-2 2026-05-19 09:30:27 +09:00
kenryuS 904560f125 finished a-2 2026-05-19 04:16:34 +09:00
40 changed files with 5626 additions and 731 deletions
+477 -647
View File
File diff suppressed because it is too large Load Diff
+10 -27
View File
@@ -1,10 +1,13 @@
set output "exp1.tex" set output "exp1.tex"
set encoding utf8 set encoding utf8
set terminal epslatex color font "Arial,12" fontscale 1.0 size 16cm,10cm set terminal epslatex monochrome font "Arial,11" fontscale 1.0 size 12cm,8cm
set style data lines set style data lines
set style line 1 linetype 1 linewidth 1 linecolor rgb "magenta" #set dashtype 1 ". "
set style line 2 linetype 1 linewidth 1 linecolor rgb "blue" #set dashtype 2 (2,4,2,6)
set style line 3 linetype 3 linewidth 1 linecolor rgb "green" #set dashtype 3 ".._"
set style line 1
set style line 2 dashtype 2
set style line 3 dashtype 1
set style line 91 linetype 1 linewidth 1 linecolor rgb "black" set style line 91 linetype 1 linewidth 1 linecolor rgb "black"
set style line 92 linetype 1 linewidth 0.5 linecolor rgb "gray20" set style line 92 linetype 1 linewidth 0.5 linecolor rgb "gray20"
set style line 93 linetype 1 linewidth 0.5 linecolor rgb "gray60" set style line 93 linetype 1 linewidth 0.5 linecolor rgb "gray60"
@@ -28,29 +31,9 @@ x linetype 1 title "", \
x / 2.2 linetype 2 title "", \ x / 2.2 linetype 2 title "", \
x / 3.3 linetype 3 title "", \ x / 3.3 linetype 3 title "", \
'exp1-theory.dat' using 1:($2 * 1000):($3 * 1000):($4 * 1000) linetype 1 linewidth 2 title "Theory (1.0k Ohm)" with yerrorbars, \ 'exp1-theory.dat' using 1:($2 * 1000):($3 * 1000):($4 * 1000) linetype 1 linewidth 2 title "Theory (1.0k Ohm)" with yerrorbars, \
'exp1-result.dat' using 1:($2 * 1000) title "Result (1.0k Ohm)" with points, \ 'exp1-result.dat' using 1:($2 * 1000) title "Result (1.0k Ohm)" with points pt "x", \
'exp1-theory.dat' using 5:($6 * 1000):($7 * 1000):($8 * 1000) linetype 2 linewidth 2 title "Theory (2.2k Ohm)" with yerrorbars, \ 'exp1-theory.dat' using 5:($6 * 1000):($7 * 1000):($8 * 1000) linetype 2 linewidth 4 title "Theory (2.2k Ohm)" with yerrorbars, \
'exp1-result.dat' using 3:($4 * 1000) title "Result (2.2k Ohm)" with points, \ 'exp1-result.dat' using 3:($4 * 1000) title "Result (2.2k Ohm)" with points, \
'exp1-theory.dat' using 9:($10 * 1000):($11 * 1000):($12 * 1000) linetype 3 linewidth 2 title "Theory (3.3k Ohm)" with yerrorbars, \ 'exp1-theory.dat' using 9:($10 * 1000):($11 * 1000):($12 * 1000) linetype 3 linewidth 4 title "Theory (3.3k Ohm)" with yerrorbars, \
'exp1-result.dat' using 5:($6 * 1000) title "Result (3.3k Ohm)" with points 'exp1-result.dat' using 5:($6 * 1000) title "Result (3.3k Ohm)" with points
#set multiplot layout 2,2 rowsfirst spacing 0.05
#
#set xlabel "Supply Voltage (V)"
#set ylabel "Current (mA)" offset 1.0
#
#set label "1.0k Ohm" at graph 0.05,0.9 left boxed bs 2 front
#plot 'exp1-theory.dat' using 1:($2 * 1000):($3 * 1000):($4 * 1000) linetype 1 title "Theory" with yerrorlines, \
#'exp1-result.dat' using 1:($2 * 1000) title "Result" with points
#unset label
#set label "2.2k Ohm" at graph 0.05,0.9 left boxed bs 2 front
#plot 'exp1-theory.dat' using 5:($6 * 1000):($7 * 1000):($8 * 1000) linetype 1 title "Theory" with yerrorlines, \
#'exp1-result.dat' using 3:($4 * 1000) title "Result" with points
#set origin 0.2,0
#unset label
#set label "3.3k Ohm" at graph 0.05,0.9 left boxed bs 2 front
#plot 'exp1-theory.dat' using 9:($10 * 1000):($11 * 1000):($12 * 1000) linetype 1 title "Theory" with yerrorlines, \
#'exp1-result.dat' using 5:($6 * 1000) title "Result" with points
#
#unset multiplot
+26 -34
View File
@@ -22,7 +22,7 @@
\providecommand\rotatebox[2]{#2}% \providecommand\rotatebox[2]{#2}%
\@ifundefined{ifGPcolor}{% \@ifundefined{ifGPcolor}{%
\newif\ifGPcolor \newif\ifGPcolor
\GPcolortrue \GPcolorfalse
}{}% }{}%
\@ifundefined{ifGPblacktext}{% \@ifundefined{ifGPblacktext}{%
\newif\ifGPblacktext \newif\ifGPblacktext
@@ -82,48 +82,40 @@
\setlength{\fboxrule}{0.5pt}% \setlength{\fboxrule}{0.5pt}%
\setlength{\fboxsep}{1pt}% \setlength{\fboxsep}{1pt}%
\definecolor{tbcol}{rgb}{1,1,1}% \definecolor{tbcol}{rgb}{1,1,1}%
\begin{picture}(9070.00,5668.00)% \begin{picture}(6802.00,4534.00)%
\gplgaddtomacro\gplbacktext{% \gplgaddtomacro\gplbacktext{%
\colorrgb{0.00,0.00,0.00}%% \csname LTb\endcsname%%
\put(744,768){\makebox(0,0)[r]{\strut{}$0$}}% \put(682,704){\makebox(0,0)[r]{\strut{}$0$}}%
\colorrgb{0.00,0.00,0.00}%% \put(682,1426){\makebox(0,0)[r]{\strut{}$2$}}%
\put(744,1700){\makebox(0,0)[r]{\strut{}$2$}}% \put(682,2148){\makebox(0,0)[r]{\strut{}$4$}}%
\colorrgb{0.00,0.00,0.00}%% \put(682,2869){\makebox(0,0)[r]{\strut{}$6$}}%
\put(744,2632){\makebox(0,0)[r]{\strut{}$4$}}% \put(682,3591){\makebox(0,0)[r]{\strut{}$8$}}%
\colorrgb{0.00,0.00,0.00}%% \put(682,4313){\makebox(0,0)[r]{\strut{}$10$}}%
\put(744,3563){\makebox(0,0)[r]{\strut{}$6$}}% \put(814,484){\makebox(0,0){\strut{}$0$}}%
\colorrgb{0.00,0.00,0.00}%% \put(2491,484){\makebox(0,0){\strut{}$3$}}%
\put(744,4495){\makebox(0,0)[r]{\strut{}$8$}}% \put(4169,484){\makebox(0,0){\strut{}$6$}}%
\colorrgb{0.00,0.00,0.00}%% \put(5846,484){\makebox(0,0){\strut{}$9$}}%
\put(744,5427){\makebox(0,0)[r]{\strut{}$10$}}%
\colorrgb{0.00,0.00,0.00}%%
\put(888,528){\makebox(0,0){\strut{}$0$}}%
\colorrgb{0.00,0.00,0.00}%%
\put(3213,528){\makebox(0,0){\strut{}$3$}}%
\colorrgb{0.00,0.00,0.00}%%
\put(5537,528){\makebox(0,0){\strut{}$6$}}%
\colorrgb{0.00,0.00,0.00}%%
\put(7862,528){\makebox(0,0){\strut{}$9$}}%
}% }%
\gplgaddtomacro\gplfronttext{% \gplgaddtomacro\gplfronttext{%
\csname LTb\endcsname%% \csname LTb\endcsname%%
\put(1959,5244){\makebox(0,0)[l]{\strut{}Theory (1.0k Ohm)}}% \put(1801,4140){\makebox(0,0)[l]{\strut{}Theory (1.0k Ohm)}}%
\csname LTb\endcsname%% \csname LTb\endcsname%%
\put(1959,5004){\makebox(0,0)[l]{\strut{}Result (1.0k Ohm)}}% \put(1801,3920){\makebox(0,0)[l]{\strut{}Result (1.0k Ohm)}}%
\put(2493,1798){\makebox(0,0){\strut{}x}}%
\put(4173,2895){\makebox(0,0){\strut{}x}}%
\put(5848,3992){\makebox(0,0){\strut{}x}}%
\put(1374,3920){\makebox(0,0){\strut{}x}}%
\put(1801,3700){\makebox(0,0)[l]{\strut{}Theory (2.2k Ohm)}}%
\csname LTb\endcsname%% \csname LTb\endcsname%%
\put(1959,4764){\makebox(0,0)[l]{\strut{}Theory (2.2k Ohm)}}% \put(1801,3480){\makebox(0,0)[l]{\strut{}Result (2.2k Ohm)}}%
\put(1801,3260){\makebox(0,0)[l]{\strut{}Theory (3.3k Ohm)}}%
\csname LTb\endcsname%% \csname LTb\endcsname%%
\put(1959,4524){\makebox(0,0)[l]{\strut{}Result (2.2k Ohm)}}% \put(1801,3040){\makebox(0,0)[l]{\strut{}Result (3.3k Ohm)}}%
\csname LTb\endcsname%% \put(341,2508){\rotatebox{-270.00}{\makebox(0,0){\strut{}Current (mA)}}}%
\put(1959,4284){\makebox(0,0)[l]{\strut{}Theory (3.3k Ohm)}}% \put(3609,154){\makebox(0,0){\strut{}Supply Voltage (V)}}%
\csname LTb\endcsname%%
\put(1959,4044){\makebox(0,0)[l]{\strut{}Result (3.3k Ohm)}}%
\csname LTb\endcsname%%
\put(372,3097){\rotatebox{-270.00}{\makebox(0,0){\strut{}Current (mA)}}}%
\put(4762,168){\makebox(0,0){\strut{}Supply Voltage (V)}}%
}% }%
\gplbacktext \gplbacktext
\put(0,0){\includegraphics[width={453.50bp},height={283.40bp}]{./assets/a-2/exp1}}% \put(0,0){\includegraphics[width={340.10bp},height={226.70bp}]{./assets/a-2/exp1}}%
\gplfronttext \gplfronttext
\end{picture}% \end{picture}%
\endgroup \endgroup
+15
View File
@@ -0,0 +1,15 @@
set encoding utf8
set terminal epslatex monochrome font "Arial,11" fontscale 1.0 size 12cm,8cm
set style data lines
set dashtype 1 ".."
set dashtype 2 "-.-"
set style line 1 linewidth 1 linecolor rgb "magenta"
set style line 2 linewidth 1 linecolor rgb "blue" dashtype 1
set style line 3 linewidth 1 linecolor rgb "green" dashtype 2
set style line 91 linewidth 1 linecolor rgb "black"
set style line 92 linewidth 0.5 linecolor rgb "gray20"
set style line 93 linewidth 0.5 linecolor rgb "gray60"
set style textbox 2 opaque fc "light-blue"
set border ls 91
set grid xtics ls 92, ls 93
set grid ytics ls 92, ls 93
+5
View File
@@ -0,0 +1,5 @@
1.9, 12
2.0, 16
2.1, 20
2.2, 28
2.3, 49
+656
View File
@@ -0,0 +1,656 @@
%!PS-Adobe-2.0 EPSF-2.0
%%Title: exp1.tex
%%Creator: gnuplot 6.0 patchlevel 4
%%CreationDate: Sat Jun 13 21:52:51 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.tex)
/Subject (gnuplot plot)
/Creator (gnuplot 6.0 patchlevel 4)
% /Producer (gnuplot)
% /Keywords ()
/CreationDate (Sat Jun 13 21:52:51 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
682 704 M
5723 0 V
stroke
1.000 UL
LTb
682 704 M
63 0 V
5660 0 R
-63 0 V
stroke
0.500 UL
LTb
682 1907 M
5723 0 V
stroke
1.000 UL
LTb
682 1907 M
63 0 V
5660 0 R
-63 0 V
stroke
0.500 UL
LTb
682 3110 M
5723 0 V
stroke
1.000 UL
LTb
682 3110 M
63 0 V
5660 0 R
-63 0 V
stroke
0.500 UL
LTb
682 4313 M
5723 0 V
stroke
1.000 UL
LTb
682 4313 M
63 0 V
5660 0 R
-63 0 V
stroke
0.500 UL
LTb
682 704 M
0 3609 V
stroke
1.000 UL
LTb
682 704 M
0 63 V
0 3546 R
0 -63 V
stroke
0.500 UL
LTb
2113 704 M
0 3609 V
stroke
1.000 UL
LTb
2113 704 M
0 63 V
0 3546 R
0 -63 V
stroke
0.500 UL
LTb
3544 704 M
0 3609 V
stroke
1.000 UL
LTb
3544 704 M
0 63 V
0 3546 R
0 -63 V
stroke
0.500 UL
LTb
4974 704 M
0 3609 V
stroke
1.000 UL
LTb
4974 704 M
0 63 V
0 3546 R
0 -63 V
stroke
0.500 UL
LTb
6405 704 M
0 3609 V
stroke
1.000 UL
LTb
6405 704 M
0 63 V
0 3546 R
0 -63 V
stroke
1.000 UL
LTb
682 4313 N
682 704 L
5723 0 V
0 3609 V
-5723 0 V
Z stroke
1.000 UP
1.000 UL
LTb
% Begin plot #1
1.000 UP
2.000 UL
LTb
1401 1913 M
356 598 V
359 346 V
355 63 V
359 37 V
355 28 V
359 23 V
355 20 V
358 18 V
356 17 V
358 18 V
354 16 V
357 15 V
1401 1913 Circle
1757 2511 Circle
2116 2857 Circle
2471 2920 Circle
2830 2957 Circle
3185 2985 Circle
3544 3008 Circle
3899 3028 Circle
4257 3046 Circle
4613 3063 Circle
4971 3081 Circle
5325 3097 Circle
5682 3112 Circle
LTw
% End plot #1
2.000 UL
LTb
1.000 UL
LTb
682 4313 N
682 704 L
5723 0 V
0 3609 V
-5723 0 V
Z stroke
1.000 UP
1.000 UL
LTb
stroke
grestore
end
showpage
%%Trailer
+17
View File
@@ -0,0 +1,17 @@
load '../common.gnuplot'
set output "exp1.tex"
set xtics 0, 2, 8
set ytics 0, 1, 3
set xrange [0:8]
set yrange [0:3]
set key top left Left reverse
set xlabel "Supply Voltage (V)"
set ylabel "LED Voltage (V)"
set pointsize 1
set style line 4 linetype 1 pointtype 6 linewidth 2
plot 'forward.dat' using 3:2 title "" with linespoints ls 4
+107
View File
@@ -0,0 +1,107 @@
% GNUPLOT: LaTeX picture with Postscript
\begingroup
\fontfamily{Arial}%
\selectfont
\makeatletter
\providecommand\color[2][]{%
\GenericError{(gnuplot) \space\space\space\@spaces}{%
Package color not loaded in conjunction with
terminal option `colourtext'%
}{See the gnuplot documentation for explanation.%
}{Either use 'blacktext' in gnuplot or load the package
color.sty in LaTeX.}%
\renewcommand\color[2][]{}%
}%
\providecommand\includegraphics[2][]{%
\GenericError{(gnuplot) \space\space\space\@spaces}{%
Package graphicx or graphics not loaded%
}{See the gnuplot documentation for explanation.%
}{The gnuplot epslatex terminal needs graphicx.sty or graphics.sty.}%
\renewcommand\includegraphics[2][]{}%
}%
\providecommand\rotatebox[2]{#2}%
\@ifundefined{ifGPcolor}{%
\newif\ifGPcolor
\GPcolorfalse
}{}%
\@ifundefined{ifGPblacktext}{%
\newif\ifGPblacktext
\GPblacktexttrue
}{}%
% define a \g@addto@macro without @ in the name:
\let\gplgaddtomacro\g@addto@macro
% define empty templates for all commands taking text:
\gdef\gplbacktext{}%
\gdef\gplfronttext{}%
\makeatother
\ifGPblacktext
% no textcolor at all
\def\colorrgb#1{}%
\def\colorgray#1{}%
\else
% gray or color?
\ifGPcolor
\def\colorrgb#1{\color[rgb]{#1}}%
\def\colorgray#1{\color[gray]{#1}}%
\expandafter\def\csname LTw\endcsname{\color{white}}%
\expandafter\def\csname LTb\endcsname{\color{black}}%
\expandafter\def\csname LTa\endcsname{\color{black}}%
\expandafter\def\csname LT0\endcsname{\color[rgb]{1,0,0}}%
\expandafter\def\csname LT1\endcsname{\color[rgb]{0,1,0}}%
\expandafter\def\csname LT2\endcsname{\color[rgb]{0,0,1}}%
\expandafter\def\csname LT3\endcsname{\color[rgb]{1,0,1}}%
\expandafter\def\csname LT4\endcsname{\color[rgb]{0,1,1}}%
\expandafter\def\csname LT5\endcsname{\color[rgb]{1,1,0}}%
\expandafter\def\csname LT6\endcsname{\color[rgb]{0,0,0}}%
\expandafter\def\csname LT7\endcsname{\color[rgb]{1,0.3,0}}%
\expandafter\def\csname LT8\endcsname{\color[rgb]{0.5,0.5,0.5}}%
\else
% gray
\def\colorrgb#1{\color{black}}%
\def\colorgray#1{\color[gray]{#1}}%
\expandafter\def\csname LTw\endcsname{\color{white}}%
\expandafter\def\csname LTb\endcsname{\color{black}}%
\expandafter\def\csname LTa\endcsname{\color{black}}%
\expandafter\def\csname LT0\endcsname{\color{black}}%
\expandafter\def\csname LT1\endcsname{\color{black}}%
\expandafter\def\csname LT2\endcsname{\color{black}}%
\expandafter\def\csname LT3\endcsname{\color{black}}%
\expandafter\def\csname LT4\endcsname{\color{black}}%
\expandafter\def\csname LT5\endcsname{\color{black}}%
\expandafter\def\csname LT6\endcsname{\color{black}}%
\expandafter\def\csname LT7\endcsname{\color{black}}%
\expandafter\def\csname LT8\endcsname{\color{black}}%
\fi
\fi
\setlength{\unitlength}{0.0500bp}%
\ifx\gptboxheight\undefined%
\newlength{\gptboxheight}%
\newlength{\gptboxwidth}%
\newsavebox{\gptboxtext}%
\fi%
\setlength{\fboxrule}{0.5pt}%
\setlength{\fboxsep}{1pt}%
\definecolor{tbcol}{rgb}{1,1,1}%
\begin{picture}(6802.00,4534.00)%
\gplgaddtomacro\gplbacktext{%
\csname LTb\endcsname%%
\put(550,704){\makebox(0,0)[r]{\strut{}$0$}}%
\put(550,1907){\makebox(0,0)[r]{\strut{}$1$}}%
\put(550,3110){\makebox(0,0)[r]{\strut{}$2$}}%
\put(550,4313){\makebox(0,0)[r]{\strut{}$3$}}%
\put(682,484){\makebox(0,0){\strut{}$0$}}%
\put(2113,484){\makebox(0,0){\strut{}$2$}}%
\put(3544,484){\makebox(0,0){\strut{}$4$}}%
\put(4974,484){\makebox(0,0){\strut{}$6$}}%
\put(6405,484){\makebox(0,0){\strut{}$8$}}%
}%
\gplgaddtomacro\gplfronttext{%
\csname LTb\endcsname%%
\put(209,2508){\rotatebox{-270.00}{\makebox(0,0){\strut{}LED Voltage (V)}}}%
\put(3543,154){\makebox(0,0){\strut{}Supply Voltage (V)}}%
}%
\gplbacktext
\put(0,0){\includegraphics[width={340.10bp},height={226.70bp}]{./assets/t-1/exp1}}%
\gplfronttext
\end{picture}%
\endgroup
+628
View File
@@ -0,0 +1,628 @@
%!PS-Adobe-2.0 EPSF-2.0
%%Title: exp2.tex
%%Creator: gnuplot 6.0 patchlevel 4
%%CreationDate: Sat Jun 13 21:54:46 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 (exp2.tex)
/Subject (gnuplot plot)
/Creator (gnuplot 6.0 patchlevel 4)
% /Producer (gnuplot)
% /Keywords ()
/CreationDate (Sat Jun 13 21:54:46 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
814 1606 M
5591 0 V
stroke
1.000 UL
LTb
814 1606 M
63 0 V
5528 0 R
-63 0 V
stroke
0.500 UL
LTb
814 2509 M
5591 0 V
stroke
1.000 UL
LTb
814 2509 M
63 0 V
5528 0 R
-63 0 V
stroke
0.500 UL
LTb
814 3411 M
5591 0 V
stroke
1.000 UL
LTb
814 3411 M
63 0 V
5528 0 R
-63 0 V
stroke
0.500 UL
LTb
814 4313 M
5591 0 V
stroke
1.000 UL
LTb
814 4313 M
63 0 V
5528 0 R
-63 0 V
stroke
0.500 UL
LTb
2212 704 M
0 3609 V
stroke
1.000 UL
LTb
2212 704 M
0 63 V
0 3546 R
0 -63 V
stroke
0.500 UL
LTb
3610 704 M
0 3609 V
stroke
1.000 UL
LTb
3610 704 M
0 63 V
0 3546 R
0 -63 V
stroke
0.500 UL
LTb
5007 704 M
0 3609 V
stroke
1.000 UL
LTb
5007 704 M
0 63 V
0 3546 R
0 -63 V
stroke
0.500 UL
LTb
6405 704 M
0 3609 V
stroke
1.000 UL
LTb
6405 704 M
0 63 V
0 3546 R
0 -63 V
stroke
1.000 UL
LTb
814 4313 N
814 704 L
5591 0 V
0 3609 V
-5591 0 V
Z stroke
1.000 UP
1.000 UL
LTb
% Begin plot #1
1.000 UP
2.000 UL
LTb
5018 3394 M
4313 2942 L
3605 2490 L
2899 2052 L
2194 1585 L
5018 3394 Circle
4313 2942 Circle
3605 2490 Circle
2899 2052 Circle
2194 1585 Circle
LTw
% End plot #1
2.000 UL
LTb
1.000 UL
LTb
814 4313 N
814 704 L
5591 0 V
0 3609 V
-5591 0 V
Z stroke
1.000 UP
1.000 UL
LTb
stroke
grestore
end
showpage
%%Trailer
+15
View File
@@ -0,0 +1,15 @@
load '../common.gnuplot'
set output "exp2.tex"
set xtics -3,1,0
set ytics -3,1,0
set xrange [-4:0]
set yrange [-4:0]
set key top left Left reverse
set xlabel "Supply Voltage (V)"
set ylabel "LED Voltage (V)"
set style line 1 pointtype 6 linewidth 2
plot 'reverse.dat' using 1:($3 - $2) title "" with linespoints ls 1
+106
View File
@@ -0,0 +1,106 @@
% GNUPLOT: LaTeX picture with Postscript
\begingroup
\fontfamily{Arial}%
\selectfont
\makeatletter
\providecommand\color[2][]{%
\GenericError{(gnuplot) \space\space\space\@spaces}{%
Package color not loaded in conjunction with
terminal option `colourtext'%
}{See the gnuplot documentation for explanation.%
}{Either use 'blacktext' in gnuplot or load the package
color.sty in LaTeX.}%
\renewcommand\color[2][]{}%
}%
\providecommand\includegraphics[2][]{%
\GenericError{(gnuplot) \space\space\space\@spaces}{%
Package graphicx or graphics not loaded%
}{See the gnuplot documentation for explanation.%
}{The gnuplot epslatex terminal needs graphicx.sty or graphics.sty.}%
\renewcommand\includegraphics[2][]{}%
}%
\providecommand\rotatebox[2]{#2}%
\@ifundefined{ifGPcolor}{%
\newif\ifGPcolor
\GPcolorfalse
}{}%
\@ifundefined{ifGPblacktext}{%
\newif\ifGPblacktext
\GPblacktexttrue
}{}%
% define a \g@addto@macro without @ in the name:
\let\gplgaddtomacro\g@addto@macro
% define empty templates for all commands taking text:
\gdef\gplbacktext{}%
\gdef\gplfronttext{}%
\makeatother
\ifGPblacktext
% no textcolor at all
\def\colorrgb#1{}%
\def\colorgray#1{}%
\else
% gray or color?
\ifGPcolor
\def\colorrgb#1{\color[rgb]{#1}}%
\def\colorgray#1{\color[gray]{#1}}%
\expandafter\def\csname LTw\endcsname{\color{white}}%
\expandafter\def\csname LTb\endcsname{\color{black}}%
\expandafter\def\csname LTa\endcsname{\color{black}}%
\expandafter\def\csname LT0\endcsname{\color[rgb]{1,0,0}}%
\expandafter\def\csname LT1\endcsname{\color[rgb]{0,1,0}}%
\expandafter\def\csname LT2\endcsname{\color[rgb]{0,0,1}}%
\expandafter\def\csname LT3\endcsname{\color[rgb]{1,0,1}}%
\expandafter\def\csname LT4\endcsname{\color[rgb]{0,1,1}}%
\expandafter\def\csname LT5\endcsname{\color[rgb]{1,1,0}}%
\expandafter\def\csname LT6\endcsname{\color[rgb]{0,0,0}}%
\expandafter\def\csname LT7\endcsname{\color[rgb]{1,0.3,0}}%
\expandafter\def\csname LT8\endcsname{\color[rgb]{0.5,0.5,0.5}}%
\else
% gray
\def\colorrgb#1{\color{black}}%
\def\colorgray#1{\color[gray]{#1}}%
\expandafter\def\csname LTw\endcsname{\color{white}}%
\expandafter\def\csname LTb\endcsname{\color{black}}%
\expandafter\def\csname LTa\endcsname{\color{black}}%
\expandafter\def\csname LT0\endcsname{\color{black}}%
\expandafter\def\csname LT1\endcsname{\color{black}}%
\expandafter\def\csname LT2\endcsname{\color{black}}%
\expandafter\def\csname LT3\endcsname{\color{black}}%
\expandafter\def\csname LT4\endcsname{\color{black}}%
\expandafter\def\csname LT5\endcsname{\color{black}}%
\expandafter\def\csname LT6\endcsname{\color{black}}%
\expandafter\def\csname LT7\endcsname{\color{black}}%
\expandafter\def\csname LT8\endcsname{\color{black}}%
\fi
\fi
\setlength{\unitlength}{0.0500bp}%
\ifx\gptboxheight\undefined%
\newlength{\gptboxheight}%
\newlength{\gptboxwidth}%
\newsavebox{\gptboxtext}%
\fi%
\setlength{\fboxrule}{0.5pt}%
\setlength{\fboxsep}{1pt}%
\definecolor{tbcol}{rgb}{1,1,1}%
\begin{picture}(6802.00,4534.00)%
\gplgaddtomacro\gplbacktext{%
\csname LTb\endcsname%%
\put(682,1606){\makebox(0,0)[r]{\strut{}$-3$}}%
\put(682,2509){\makebox(0,0)[r]{\strut{}$-2$}}%
\put(682,3411){\makebox(0,0)[r]{\strut{}$-1$}}%
\put(682,4313){\makebox(0,0)[r]{\strut{}$0$}}%
\put(2212,484){\makebox(0,0){\strut{}$-3$}}%
\put(3610,484){\makebox(0,0){\strut{}$-2$}}%
\put(5007,484){\makebox(0,0){\strut{}$-1$}}%
\put(6405,484){\makebox(0,0){\strut{}$0$}}%
}%
\gplgaddtomacro\gplfronttext{%
\csname LTb\endcsname%%
\put(209,2508){\rotatebox{-270.00}{\makebox(0,0){\strut{}LED Voltage (V)}}}%
\put(3609,154){\makebox(0,0){\strut{}Supply Voltage (V)}}%
}%
\gplbacktext
\put(0,0){\includegraphics[width={340.10bp},height={226.70bp}]{./assets/t-1/exp2}}%
\gplfronttext
\end{picture}%
\endgroup
+13
View File
@@ -0,0 +1,13 @@
0, 1.005, 1.005
0, 1.502, 1.503
0.213, 1.790, 2.004
0.658, 1.842, 2.501
1.128, 1.873, 3.002
1.603, 1.896, 3.499
2.084, 1.915, 4.000
2.565, 1.932, 4.497
3.051, 1.947, 4.998
3.534, 1.961, 5.495
4.020, 1.976, 5.996
4.504, 1.989, 6.49
4.992, 2.002, 6.99
Binary file not shown.

After

Width:  |  Height:  |  Size: 139 KiB

+666
View File
@@ -0,0 +1,666 @@
%!PS-Adobe-2.0 EPSF-2.0
%%Title: ip.tex
%%Creator: gnuplot 6.0 patchlevel 4
%%CreationDate: Tue May 26 00:18:01 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 (ip.tex)
/Subject (gnuplot plot)
/Creator (gnuplot 6.0 patchlevel 4)
% /Producer (gnuplot)
% /Keywords ()
/CreationDate (Tue May 26 00:18:01 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
1210 704 M
5195 0 V
stroke
1.000 UL
LTb
1210 704 M
63 0 V
5132 0 R
-63 0 V
stroke
0.500 UL
LTb
1210 1306 M
5195 0 V
stroke
1.000 UL
LTb
1210 1306 M
63 0 V
5132 0 R
-63 0 V
stroke
0.500 UL
LTb
1210 1907 M
5195 0 V
stroke
1.000 UL
LTb
1210 1907 M
63 0 V
5132 0 R
-63 0 V
stroke
0.500 UL
LTb
1210 2509 M
5195 0 V
stroke
1.000 UL
LTb
1210 2509 M
63 0 V
5132 0 R
-63 0 V
stroke
0.500 UL
LTb
1210 3110 M
5195 0 V
stroke
1.000 UL
LTb
1210 3110 M
63 0 V
5132 0 R
-63 0 V
stroke
0.500 UL
LTb
1210 3712 M
5195 0 V
stroke
1.000 UL
LTb
1210 3712 M
63 0 V
5132 0 R
-63 0 V
stroke
0.500 UL
LTb
1210 4313 M
5195 0 V
stroke
1.000 UL
LTb
1210 4313 M
63 0 V
5132 0 R
-63 0 V
stroke
0.500 UL
LTb
1210 704 M
0 3609 V
stroke
1.000 UL
LTb
1210 704 M
0 63 V
0 3546 R
0 -63 V
stroke
0.500 UL
LTb
2595 704 M
0 3609 V
stroke
1.000 UL
LTb
2595 704 M
0 63 V
0 3546 R
0 -63 V
stroke
0.500 UL
LTb
3981 704 M
0 3609 V
stroke
1.000 UL
LTb
3981 704 M
0 63 V
0 3546 R
0 -63 V
stroke
0.500 UL
LTb
5366 704 M
0 3609 V
stroke
1.000 UL
LTb
5366 704 M
0 63 V
0 3546 R
0 -63 V
stroke
1.000 UL
LTb
1210 4313 N
0 -3609 V
5195 0 V
0 3609 V
-5195 0 V
Z stroke
1.000 UP
1.000 UL
LTb
% Begin plot #1
2.000 UL
LTb
1210 704 M
157 98 V
328 212 V
346 231 V
350 237 V
355 243 V
354 247 V
358 252 V
356 254 V
358 259 V
357 260 V
360 265 V
stroke
LTw
% End plot #1
2.000 UL
LTb
1.000 UL
LTb
1210 4313 N
0 -3609 V
5195 0 V
0 3609 V
-5195 0 V
Z stroke
1.000 UP
1.000 UL
LTb
stroke
grestore
end
showpage
%%Trailer
+10
View File
@@ -0,0 +1,10 @@
load '../common.gnuplot'
set output "ip.tex"
set xtics 0, 4, 12
set xrange [0:15]
set yrange [0:0.03]
set xlabel "Forward Current (mA)"
set ylabel "Power (W)"
plot 'forward.dat' using ($1 / 470 * 1000):(($1 * $2)/470) linetype 1 linewidth 2 title "" with lines
+109
View File
@@ -0,0 +1,109 @@
% GNUPLOT: LaTeX picture with Postscript
\begingroup
\fontfamily{Arial}%
\selectfont
\makeatletter
\providecommand\color[2][]{%
\GenericError{(gnuplot) \space\space\space\@spaces}{%
Package color not loaded in conjunction with
terminal option `colourtext'%
}{See the gnuplot documentation for explanation.%
}{Either use 'blacktext' in gnuplot or load the package
color.sty in LaTeX.}%
\renewcommand\color[2][]{}%
}%
\providecommand\includegraphics[2][]{%
\GenericError{(gnuplot) \space\space\space\@spaces}{%
Package graphicx or graphics not loaded%
}{See the gnuplot documentation for explanation.%
}{The gnuplot epslatex terminal needs graphicx.sty or graphics.sty.}%
\renewcommand\includegraphics[2][]{}%
}%
\providecommand\rotatebox[2]{#2}%
\@ifundefined{ifGPcolor}{%
\newif\ifGPcolor
\GPcolorfalse
}{}%
\@ifundefined{ifGPblacktext}{%
\newif\ifGPblacktext
\GPblacktexttrue
}{}%
% define a \g@addto@macro without @ in the name:
\let\gplgaddtomacro\g@addto@macro
% define empty templates for all commands taking text:
\gdef\gplbacktext{}%
\gdef\gplfronttext{}%
\makeatother
\ifGPblacktext
% no textcolor at all
\def\colorrgb#1{}%
\def\colorgray#1{}%
\else
% gray or color?
\ifGPcolor
\def\colorrgb#1{\color[rgb]{#1}}%
\def\colorgray#1{\color[gray]{#1}}%
\expandafter\def\csname LTw\endcsname{\color{white}}%
\expandafter\def\csname LTb\endcsname{\color{black}}%
\expandafter\def\csname LTa\endcsname{\color{black}}%
\expandafter\def\csname LT0\endcsname{\color[rgb]{1,0,0}}%
\expandafter\def\csname LT1\endcsname{\color[rgb]{0,1,0}}%
\expandafter\def\csname LT2\endcsname{\color[rgb]{0,0,1}}%
\expandafter\def\csname LT3\endcsname{\color[rgb]{1,0,1}}%
\expandafter\def\csname LT4\endcsname{\color[rgb]{0,1,1}}%
\expandafter\def\csname LT5\endcsname{\color[rgb]{1,1,0}}%
\expandafter\def\csname LT6\endcsname{\color[rgb]{0,0,0}}%
\expandafter\def\csname LT7\endcsname{\color[rgb]{1,0.3,0}}%
\expandafter\def\csname LT8\endcsname{\color[rgb]{0.5,0.5,0.5}}%
\else
% gray
\def\colorrgb#1{\color{black}}%
\def\colorgray#1{\color[gray]{#1}}%
\expandafter\def\csname LTw\endcsname{\color{white}}%
\expandafter\def\csname LTb\endcsname{\color{black}}%
\expandafter\def\csname LTa\endcsname{\color{black}}%
\expandafter\def\csname LT0\endcsname{\color{black}}%
\expandafter\def\csname LT1\endcsname{\color{black}}%
\expandafter\def\csname LT2\endcsname{\color{black}}%
\expandafter\def\csname LT3\endcsname{\color{black}}%
\expandafter\def\csname LT4\endcsname{\color{black}}%
\expandafter\def\csname LT5\endcsname{\color{black}}%
\expandafter\def\csname LT6\endcsname{\color{black}}%
\expandafter\def\csname LT7\endcsname{\color{black}}%
\expandafter\def\csname LT8\endcsname{\color{black}}%
\fi
\fi
\setlength{\unitlength}{0.0500bp}%
\ifx\gptboxheight\undefined%
\newlength{\gptboxheight}%
\newlength{\gptboxwidth}%
\newsavebox{\gptboxtext}%
\fi%
\setlength{\fboxrule}{0.5pt}%
\setlength{\fboxsep}{1pt}%
\definecolor{tbcol}{rgb}{1,1,1}%
\begin{picture}(6802.00,4534.00)%
\gplgaddtomacro\gplbacktext{%
\csname LTb\endcsname%%
\put(1078,704){\makebox(0,0)[r]{\strut{}$0$}}%
\put(1078,1306){\makebox(0,0)[r]{\strut{}$0.005$}}%
\put(1078,1907){\makebox(0,0)[r]{\strut{}$0.01$}}%
\put(1078,2509){\makebox(0,0)[r]{\strut{}$0.015$}}%
\put(1078,3110){\makebox(0,0)[r]{\strut{}$0.02$}}%
\put(1078,3712){\makebox(0,0)[r]{\strut{}$0.025$}}%
\put(1078,4313){\makebox(0,0)[r]{\strut{}$0.03$}}%
\put(1210,484){\makebox(0,0){\strut{}$0$}}%
\put(2595,484){\makebox(0,0){\strut{}$4$}}%
\put(3981,484){\makebox(0,0){\strut{}$8$}}%
\put(5366,484){\makebox(0,0){\strut{}$12$}}%
}%
\gplgaddtomacro\gplfronttext{%
\csname LTb\endcsname%%
\put(209,2508){\rotatebox{-270.00}{\makebox(0,0){\strut{}Power (W)}}}%
\put(3807,154){\makebox(0,0){\strut{}Forward Current (mA)}}%
}%
\gplbacktext
\put(0,0){\includegraphics[width={340.10bp},height={226.70bp}]{./assets/t-1/ip}}%
\gplfronttext
\end{picture}%
\endgroup
+3
View File
@@ -0,0 +1,3 @@
#!/usr/bin/env bash
sed -i -e 's|{'$1'}|{./assets/t-1/'$1'}|g' $1.tex
+6
View File
@@ -0,0 +1,6 @@
-0.992, 0.000, -1.019
-1.497, 0.000, -1.520
-2.003, 0.000, -2.021
-2.508, 0.000, -2.506
-3.013, 0.000, -3.023
+704
View File
@@ -0,0 +1,704 @@
%!PS-Adobe-2.0 EPSF-2.0
%%Title: vi.tex
%%Creator: gnuplot 6.0 patchlevel 4
%%CreationDate: Tue May 26 00:20:40 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 (vi.tex)
/Subject (gnuplot plot)
/Creator (gnuplot 6.0 patchlevel 4)
% /Producer (gnuplot)
% /Keywords ()
/CreationDate (Tue May 26 00:20:40 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
814 704 M
5591 0 V
stroke
1.000 UL
LTb
814 704 M
63 0 V
5528 0 R
-63 0 V
stroke
0.500 UL
LTb
814 1426 M
5591 0 V
stroke
1.000 UL
LTb
814 1426 M
63 0 V
5528 0 R
-63 0 V
stroke
0.500 UL
LTb
814 2148 M
5591 0 V
stroke
1.000 UL
LTb
814 2148 M
63 0 V
5528 0 R
-63 0 V
stroke
0.500 UL
LTb
814 2869 M
5591 0 V
stroke
1.000 UL
LTb
814 2869 M
63 0 V
5528 0 R
-63 0 V
stroke
0.500 UL
LTb
814 3591 M
5591 0 V
stroke
1.000 UL
LTb
814 3591 M
63 0 V
5528 0 R
-63 0 V
stroke
0.500 UL
LTb
814 4313 M
5591 0 V
stroke
1.000 UL
LTb
814 4313 M
63 0 V
5528 0 R
-63 0 V
stroke
0.500 UL
LTb
814 704 M
0 3609 V
stroke
1.000 UL
LTb
814 704 M
0 63 V
0 3546 R
0 -63 V
stroke
0.500 UL
LTb
1932 704 M
0 3106 V
0 440 R
0 63 V
stroke
1.000 UL
LTb
1932 704 M
0 63 V
0 3546 R
0 -63 V
stroke
0.500 UL
LTb
3050 704 M
0 3106 V
0 440 R
0 63 V
stroke
1.000 UL
LTb
3050 704 M
0 63 V
0 3546 R
0 -63 V
stroke
0.500 UL
LTb
4169 704 M
0 3609 V
stroke
1.000 UL
LTb
4169 704 M
0 63 V
0 3546 R
0 -63 V
stroke
0.500 UL
LTb
5287 704 M
0 3609 V
stroke
1.000 UL
LTb
5287 704 M
0 63 V
0 3546 R
0 -63 V
stroke
0.500 UL
LTb
6405 704 M
0 3609 V
stroke
1.000 UL
LTb
6405 704 M
0 63 V
0 3546 R
0 -63 V
stroke
1.000 UL
LTb
814 4313 N
814 704 L
5591 0 V
0 3609 V
-5591 0 V
Z stroke
1.000 UP
1.000 UL
LTb
% Begin plot #1
2.000 UL
LTb
2.000 UL
LTb
1078 4140 M
591 0 V
3062 704 M
1111 0 V
644 33 V
116 68 V
70 72 V
51 73 V
43 74 V
38 74 V
33 75 V
32 74 V
33 74 V
29 75 V
29 75 V
stroke
LTw
% End plot #1
% Begin plot #2
2.000 UL
LTb
LT1
2.000 UL
LTb
LT1
1078 3920 M
591 0 V
5063 1570 M
224 289 V
223 289 V
224 577 V
224 1516 V
stroke
LTw
% End plot #2
2.000 UL
LTb
1.000 UL
LTb
814 4313 N
814 704 L
5591 0 V
0 3609 V
-5591 0 V
Z stroke
1.000 UP
1.000 UL
LTb
stroke
grestore
end
showpage
%%Trailer
+14
View File
@@ -0,0 +1,14 @@
load '../common.gnuplot'
set output "vi.tex"
set xtics 0, 0.5, 2.5
set xrange [0:2.5]
set yrange [0:50]
set key top left Left reverse
set xlabel "Forward Voltage (V)"
set ylabel "Forward Current (mA)"
plot 'forward.dat' using 2:($1/470 * 1000) linetype 1 linewidth 2 title "Measured Value" with lines, \
'datasheet.dat' using 1:2 linetype 2 linewidth 2 title "Datasheet Value" with lines
+112
View File
@@ -0,0 +1,112 @@
% GNUPLOT: LaTeX picture with Postscript
\begingroup
\fontfamily{Arial}%
\selectfont
\makeatletter
\providecommand\color[2][]{%
\GenericError{(gnuplot) \space\space\space\@spaces}{%
Package color not loaded in conjunction with
terminal option `colourtext'%
}{See the gnuplot documentation for explanation.%
}{Either use 'blacktext' in gnuplot or load the package
color.sty in LaTeX.}%
\renewcommand\color[2][]{}%
}%
\providecommand\includegraphics[2][]{%
\GenericError{(gnuplot) \space\space\space\@spaces}{%
Package graphicx or graphics not loaded%
}{See the gnuplot documentation for explanation.%
}{The gnuplot epslatex terminal needs graphicx.sty or graphics.sty.}%
\renewcommand\includegraphics[2][]{}%
}%
\providecommand\rotatebox[2]{#2}%
\@ifundefined{ifGPcolor}{%
\newif\ifGPcolor
\GPcolorfalse
}{}%
\@ifundefined{ifGPblacktext}{%
\newif\ifGPblacktext
\GPblacktexttrue
}{}%
% define a \g@addto@macro without @ in the name:
\let\gplgaddtomacro\g@addto@macro
% define empty templates for all commands taking text:
\gdef\gplbacktext{}%
\gdef\gplfronttext{}%
\makeatother
\ifGPblacktext
% no textcolor at all
\def\colorrgb#1{}%
\def\colorgray#1{}%
\else
% gray or color?
\ifGPcolor
\def\colorrgb#1{\color[rgb]{#1}}%
\def\colorgray#1{\color[gray]{#1}}%
\expandafter\def\csname LTw\endcsname{\color{white}}%
\expandafter\def\csname LTb\endcsname{\color{black}}%
\expandafter\def\csname LTa\endcsname{\color{black}}%
\expandafter\def\csname LT0\endcsname{\color[rgb]{1,0,0}}%
\expandafter\def\csname LT1\endcsname{\color[rgb]{0,1,0}}%
\expandafter\def\csname LT2\endcsname{\color[rgb]{0,0,1}}%
\expandafter\def\csname LT3\endcsname{\color[rgb]{1,0,1}}%
\expandafter\def\csname LT4\endcsname{\color[rgb]{0,1,1}}%
\expandafter\def\csname LT5\endcsname{\color[rgb]{1,1,0}}%
\expandafter\def\csname LT6\endcsname{\color[rgb]{0,0,0}}%
\expandafter\def\csname LT7\endcsname{\color[rgb]{1,0.3,0}}%
\expandafter\def\csname LT8\endcsname{\color[rgb]{0.5,0.5,0.5}}%
\else
% gray
\def\colorrgb#1{\color{black}}%
\def\colorgray#1{\color[gray]{#1}}%
\expandafter\def\csname LTw\endcsname{\color{white}}%
\expandafter\def\csname LTb\endcsname{\color{black}}%
\expandafter\def\csname LTa\endcsname{\color{black}}%
\expandafter\def\csname LT0\endcsname{\color{black}}%
\expandafter\def\csname LT1\endcsname{\color{black}}%
\expandafter\def\csname LT2\endcsname{\color{black}}%
\expandafter\def\csname LT3\endcsname{\color{black}}%
\expandafter\def\csname LT4\endcsname{\color{black}}%
\expandafter\def\csname LT5\endcsname{\color{black}}%
\expandafter\def\csname LT6\endcsname{\color{black}}%
\expandafter\def\csname LT7\endcsname{\color{black}}%
\expandafter\def\csname LT8\endcsname{\color{black}}%
\fi
\fi
\setlength{\unitlength}{0.0500bp}%
\ifx\gptboxheight\undefined%
\newlength{\gptboxheight}%
\newlength{\gptboxwidth}%
\newsavebox{\gptboxtext}%
\fi%
\setlength{\fboxrule}{0.5pt}%
\setlength{\fboxsep}{1pt}%
\definecolor{tbcol}{rgb}{1,1,1}%
\begin{picture}(6802.00,4534.00)%
\gplgaddtomacro\gplbacktext{%
\csname LTb\endcsname%%
\put(682,704){\makebox(0,0)[r]{\strut{}$0$}}%
\put(682,1426){\makebox(0,0)[r]{\strut{}$10$}}%
\put(682,2148){\makebox(0,0)[r]{\strut{}$20$}}%
\put(682,2869){\makebox(0,0)[r]{\strut{}$30$}}%
\put(682,3591){\makebox(0,0)[r]{\strut{}$40$}}%
\put(682,4313){\makebox(0,0)[r]{\strut{}$50$}}%
\put(814,484){\makebox(0,0){\strut{}$0$}}%
\put(1932,484){\makebox(0,0){\strut{}$0.5$}}%
\put(3050,484){\makebox(0,0){\strut{}$1$}}%
\put(4169,484){\makebox(0,0){\strut{}$1.5$}}%
\put(5287,484){\makebox(0,0){\strut{}$2$}}%
\put(6405,484){\makebox(0,0){\strut{}$2.5$}}%
}%
\gplgaddtomacro\gplfronttext{%
\csname LTb\endcsname%%
\put(1801,4140){\makebox(0,0)[l]{\strut{}Measured Value}}%
\put(1801,3920){\makebox(0,0)[l]{\strut{}Datasheet Value}}%
\put(209,2508){\rotatebox{-270.00}{\makebox(0,0){\strut{}Forward Current (mA)}}}%
\put(3609,154){\makebox(0,0){\strut{}Forward Voltage (V)}}%
}%
\gplbacktext
\put(0,0){\includegraphics[width={340.10bp},height={226.70bp}]{./assets/t-1/vi}}%
\gplfronttext
\end{picture}%
\endgroup
+837
View File
@@ -0,0 +1,837 @@
%!PS-Adobe-2.0 EPSF-2.0
%%Title: vp.tex
%%Creator: gnuplot 6.0 patchlevel 4
%%CreationDate: Mon May 25 10:28:08 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 true 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 (vp.tex)
/Subject (gnuplot plot)
/Creator (gnuplot 6.0 patchlevel 4)
% /Producer (gnuplot)
% /Keywords ()
/CreationDate (Mon May 25 10:28:08 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.00 0.00 0.00 C
0.500 UL
LTb
LCb setrgbcolor
[] 0 setdash
0.20 0.20 0.20 C
1210 704 M
5195 0 V
stroke
1.000 UL
LTb
LCb setrgbcolor
[] 0 setdash
0.00 0.00 0.00 C
1210 704 M
63 0 V
5132 0 R
-63 0 V
stroke
LTb
LCb setrgbcolor
[] 0 setdash
0.00 0.00 0.00 C
0.500 UL
LTb
LCb setrgbcolor
[] 0 setdash
0.20 0.20 0.20 C
1210 1306 M
5195 0 V
stroke
1.000 UL
LTb
LCb setrgbcolor
[] 0 setdash
0.00 0.00 0.00 C
1210 1306 M
63 0 V
5132 0 R
-63 0 V
stroke
LTb
LCb setrgbcolor
[] 0 setdash
0.00 0.00 0.00 C
0.500 UL
LTb
LCb setrgbcolor
[] 0 setdash
0.20 0.20 0.20 C
1210 1907 M
5195 0 V
stroke
1.000 UL
LTb
LCb setrgbcolor
[] 0 setdash
0.00 0.00 0.00 C
1210 1907 M
63 0 V
5132 0 R
-63 0 V
stroke
LTb
LCb setrgbcolor
[] 0 setdash
0.00 0.00 0.00 C
0.500 UL
LTb
LCb setrgbcolor
[] 0 setdash
0.20 0.20 0.20 C
1210 2509 M
5195 0 V
stroke
1.000 UL
LTb
LCb setrgbcolor
[] 0 setdash
0.00 0.00 0.00 C
1210 2509 M
63 0 V
5132 0 R
-63 0 V
stroke
LTb
LCb setrgbcolor
[] 0 setdash
0.00 0.00 0.00 C
0.500 UL
LTb
LCb setrgbcolor
[] 0 setdash
0.20 0.20 0.20 C
1210 3110 M
5195 0 V
stroke
1.000 UL
LTb
LCb setrgbcolor
[] 0 setdash
0.00 0.00 0.00 C
1210 3110 M
63 0 V
5132 0 R
-63 0 V
stroke
LTb
LCb setrgbcolor
[] 0 setdash
0.00 0.00 0.00 C
0.500 UL
LTb
LCb setrgbcolor
[] 0 setdash
0.20 0.20 0.20 C
1210 3712 M
5195 0 V
stroke
1.000 UL
LTb
LCb setrgbcolor
[] 0 setdash
0.00 0.00 0.00 C
1210 3712 M
63 0 V
5132 0 R
-63 0 V
stroke
LTb
LCb setrgbcolor
[] 0 setdash
0.00 0.00 0.00 C
0.500 UL
LTb
LCb setrgbcolor
[] 0 setdash
0.20 0.20 0.20 C
1210 4313 M
5195 0 V
stroke
1.000 UL
LTb
LCb setrgbcolor
[] 0 setdash
0.00 0.00 0.00 C
1210 4313 M
63 0 V
5132 0 R
-63 0 V
stroke
LTb
LCb setrgbcolor
[] 0 setdash
0.00 0.00 0.00 C
0.500 UL
LTb
LCb setrgbcolor
[] 0 setdash
0.20 0.20 0.20 C
1210 704 M
0 3609 V
stroke
1.000 UL
LTb
LCb setrgbcolor
[] 0 setdash
0.00 0.00 0.00 C
1210 704 M
0 63 V
0 3546 R
0 -63 V
stroke
LTb
LCb setrgbcolor
[] 0 setdash
0.00 0.00 0.00 C
0.500 UL
LTb
LCb setrgbcolor
[] 0 setdash
0.20 0.20 0.20 C
2249 704 M
0 3609 V
stroke
1.000 UL
LTb
LCb setrgbcolor
[] 0 setdash
0.00 0.00 0.00 C
2249 704 M
0 63 V
0 3546 R
0 -63 V
stroke
LTb
LCb setrgbcolor
[] 0 setdash
0.00 0.00 0.00 C
0.500 UL
LTb
LCb setrgbcolor
[] 0 setdash
0.20 0.20 0.20 C
3288 704 M
0 3609 V
stroke
1.000 UL
LTb
LCb setrgbcolor
[] 0 setdash
0.00 0.00 0.00 C
3288 704 M
0 63 V
0 3546 R
0 -63 V
stroke
LTb
LCb setrgbcolor
[] 0 setdash
0.00 0.00 0.00 C
0.500 UL
LTb
LCb setrgbcolor
[] 0 setdash
0.20 0.20 0.20 C
4327 704 M
0 3609 V
stroke
1.000 UL
LTb
LCb setrgbcolor
[] 0 setdash
0.00 0.00 0.00 C
4327 704 M
0 63 V
0 3546 R
0 -63 V
stroke
LTb
LCb setrgbcolor
[] 0 setdash
0.00 0.00 0.00 C
0.500 UL
LTb
LCb setrgbcolor
[] 0 setdash
0.20 0.20 0.20 C
5366 704 M
0 3609 V
stroke
1.000 UL
LTb
LCb setrgbcolor
[] 0 setdash
0.00 0.00 0.00 C
5366 704 M
0 63 V
0 3546 R
0 -63 V
stroke
LTb
LCb setrgbcolor
[] 0 setdash
0.00 0.00 0.00 C
0.500 UL
LTb
LCb setrgbcolor
[] 0 setdash
0.20 0.20 0.20 C
6405 704 M
0 3609 V
stroke
1.000 UL
LTb
LCb setrgbcolor
[] 0 setdash
0.00 0.00 0.00 C
6405 704 M
0 63 V
0 3546 R
0 -63 V
stroke
LTb
LCb setrgbcolor
[] 0 setdash
0.00 0.00 0.00 C
1.000 UL
LTb
LCb setrgbcolor
[] 0 setdash
0.00 0.00 0.00 C
1210 4313 N
0 -3609 V
5195 0 V
0 3609 V
-5195 0 V
Z stroke
1.000 UP
1.000 UL
LTb
LCb setrgbcolor
[] 0 setdash
0.00 0.00 0.00 C
% Begin plot #1
2.000 UL
LTb
LCb setrgbcolor
[] 0 setdash
0.58 0.00 0.83 C
3298 704 M
1033 0 V
599 98 V
108 212 V
64 231 V
48 237 V
39 243 V
36 247 V
31 252 V
29 254 V
31 259 V
27 260 V
27 265 V
stroke
LTw
% End plot #1
2.000 UL
LTb
LCb setrgbcolor
[] 0 setdash
1.000 UL
LTb
0.00 0.00 0.00 C
1210 4313 N
0 -3609 V
5195 0 V
0 3609 V
-5195 0 V
Z stroke
LCb setrgbcolor
LTb
1.000 UP
1.000 UL
LTb
0.00 0.00 0.00 C
stroke
grestore
end
showpage
%%Trailer
+13
View File
@@ -0,0 +1,13 @@
load '../common.gnuplot'
set output "vp.tex"
set xtics 0, 0.5, 2.5
set xrange [0:2.5]
set yrange [0:0.03]
set key top left Left reverse
set xlabel "Forward Voltage (V)"
set ylabel "Power (W)"
plot 'forward.dat' using 2:(($1 * $2)/470) linetype 1 linewidth 2 title "" with lines
+123
View File
@@ -0,0 +1,123 @@
% GNUPLOT: LaTeX picture with Postscript
\begingroup
\fontfamily{Arial}%
\selectfont
\makeatletter
\providecommand\color[2][]{%
\GenericError{(gnuplot) \space\space\space\@spaces}{%
Package color not loaded in conjunction with
terminal option `colourtext'%
}{See the gnuplot documentation for explanation.%
}{Either use 'blacktext' in gnuplot or load the package
color.sty in LaTeX.}%
\renewcommand\color[2][]{}%
}%
\providecommand\includegraphics[2][]{%
\GenericError{(gnuplot) \space\space\space\@spaces}{%
Package graphicx or graphics not loaded%
}{See the gnuplot documentation for explanation.%
}{The gnuplot epslatex terminal needs graphicx.sty or graphics.sty.}%
\renewcommand\includegraphics[2][]{}%
}%
\providecommand\rotatebox[2]{#2}%
\@ifundefined{ifGPcolor}{%
\newif\ifGPcolor
\GPcolortrue
}{}%
\@ifundefined{ifGPblacktext}{%
\newif\ifGPblacktext
\GPblacktexttrue
}{}%
% define a \g@addto@macro without @ in the name:
\let\gplgaddtomacro\g@addto@macro
% define empty templates for all commands taking text:
\gdef\gplbacktext{}%
\gdef\gplfronttext{}%
\makeatother
\ifGPblacktext
% no textcolor at all
\def\colorrgb#1{}%
\def\colorgray#1{}%
\else
% gray or color?
\ifGPcolor
\def\colorrgb#1{\color[rgb]{#1}}%
\def\colorgray#1{\color[gray]{#1}}%
\expandafter\def\csname LTw\endcsname{\color{white}}%
\expandafter\def\csname LTb\endcsname{\color{black}}%
\expandafter\def\csname LTa\endcsname{\color{black}}%
\expandafter\def\csname LT0\endcsname{\color[rgb]{1,0,0}}%
\expandafter\def\csname LT1\endcsname{\color[rgb]{0,1,0}}%
\expandafter\def\csname LT2\endcsname{\color[rgb]{0,0,1}}%
\expandafter\def\csname LT3\endcsname{\color[rgb]{1,0,1}}%
\expandafter\def\csname LT4\endcsname{\color[rgb]{0,1,1}}%
\expandafter\def\csname LT5\endcsname{\color[rgb]{1,1,0}}%
\expandafter\def\csname LT6\endcsname{\color[rgb]{0,0,0}}%
\expandafter\def\csname LT7\endcsname{\color[rgb]{1,0.3,0}}%
\expandafter\def\csname LT8\endcsname{\color[rgb]{0.5,0.5,0.5}}%
\else
% gray
\def\colorrgb#1{\color{black}}%
\def\colorgray#1{\color[gray]{#1}}%
\expandafter\def\csname LTw\endcsname{\color{white}}%
\expandafter\def\csname LTb\endcsname{\color{black}}%
\expandafter\def\csname LTa\endcsname{\color{black}}%
\expandafter\def\csname LT0\endcsname{\color{black}}%
\expandafter\def\csname LT1\endcsname{\color{black}}%
\expandafter\def\csname LT2\endcsname{\color{black}}%
\expandafter\def\csname LT3\endcsname{\color{black}}%
\expandafter\def\csname LT4\endcsname{\color{black}}%
\expandafter\def\csname LT5\endcsname{\color{black}}%
\expandafter\def\csname LT6\endcsname{\color{black}}%
\expandafter\def\csname LT7\endcsname{\color{black}}%
\expandafter\def\csname LT8\endcsname{\color{black}}%
\fi
\fi
\setlength{\unitlength}{0.0500bp}%
\ifx\gptboxheight\undefined%
\newlength{\gptboxheight}%
\newlength{\gptboxwidth}%
\newsavebox{\gptboxtext}%
\fi%
\setlength{\fboxrule}{0.5pt}%
\setlength{\fboxsep}{1pt}%
\definecolor{tbcol}{rgb}{1,1,1}%
\begin{picture}(6802.00,4534.00)%
\gplgaddtomacro\gplbacktext{%
\colorrgb{0.00,0.00,0.00}%%
\put(1078,704){\makebox(0,0)[r]{\strut{}$0$}}%
\colorrgb{0.00,0.00,0.00}%%
\put(1078,1306){\makebox(0,0)[r]{\strut{}$0.005$}}%
\colorrgb{0.00,0.00,0.00}%%
\put(1078,1907){\makebox(0,0)[r]{\strut{}$0.01$}}%
\colorrgb{0.00,0.00,0.00}%%
\put(1078,2509){\makebox(0,0)[r]{\strut{}$0.015$}}%
\colorrgb{0.00,0.00,0.00}%%
\put(1078,3110){\makebox(0,0)[r]{\strut{}$0.02$}}%
\colorrgb{0.00,0.00,0.00}%%
\put(1078,3712){\makebox(0,0)[r]{\strut{}$0.025$}}%
\colorrgb{0.00,0.00,0.00}%%
\put(1078,4313){\makebox(0,0)[r]{\strut{}$0.03$}}%
\colorrgb{0.00,0.00,0.00}%%
\put(1210,484){\makebox(0,0){\strut{}$0$}}%
\colorrgb{0.00,0.00,0.00}%%
\put(2249,484){\makebox(0,0){\strut{}$0.5$}}%
\colorrgb{0.00,0.00,0.00}%%
\put(3288,484){\makebox(0,0){\strut{}$1$}}%
\colorrgb{0.00,0.00,0.00}%%
\put(4327,484){\makebox(0,0){\strut{}$1.5$}}%
\colorrgb{0.00,0.00,0.00}%%
\put(5366,484){\makebox(0,0){\strut{}$2$}}%
\colorrgb{0.00,0.00,0.00}%%
\put(6405,484){\makebox(0,0){\strut{}$2.5$}}%
}%
\gplgaddtomacro\gplfronttext{%
\csname LTb\endcsname%%
\put(209,2508){\rotatebox{-270.00}{\makebox(0,0){\strut{}Power (W)}}}%
\put(3807,154){\makebox(0,0){\strut{}Forward Voltage (V)}}%
}%
\gplbacktext
\put(0,0){\includegraphics[width={340.10bp},height={226.70bp}]{./assets/t-1/vp}}%
\gplfronttext
\end{picture}%
\endgroup
+19 -3
View File
@@ -1,4 +1,4 @@
@book{ac-theory:ohm, @inbook{ac-theory:ohm,
title={基礎からの交流理論}, title={基礎からの交流理論},
author={小郷 寛 and 小亀 英己 and 石亀 篤司}, author={小郷 寛 and 小亀 英己 and 石亀 篤司},
publisher={電気学会 and オーム社}, publisher={電気学会 and オーム社},
@@ -6,13 +6,21 @@
month={04}, month={04},
pages={1} pages={1}
} }
@inbook{ac-theory:kirchhoff-law, @inbook{ac-theory:kirchhoff-law-v,
title={基礎からの交流理論}, title={基礎からの交流理論},
author={小郷 寛 and 小亀 英己 and 石亀 篤司}, author={小郷 寛 and 小亀 英己 and 石亀 篤司},
publisher={電気学会 and オーム社}, publisher={電気学会 and オーム社},
year={2023}, year={2023},
month={04}, month={04},
pages={11-16} pages={11-13}
}
@inbook{ac-theory:kirchhoff-law-i,
title={基礎からの交流理論},
author={小郷 寛 and 小亀 英己 and 石亀 篤司},
publisher={電気学会 and オーム社},
year={2023},
month={04},
pages={13-16}
} }
@inbook{ac-theory:superposition, @inbook{ac-theory:superposition,
title={基礎からの交流理論}, title={基礎からの交流理論},
@@ -30,3 +38,11 @@
month={04}, month={04},
pages={145} pages={145}
} }
@online{resistor-overload-example,
title={Resistor Overload},
author={ouimetn},
url={https://youtu.be/xPaN4xG0px4},
year={2012},
month={08},
urldate={2026-05-18}
}
+40
View File
@@ -0,0 +1,40 @@
@inbook{intro-electronic:pn-junction,
title={電子回路概論},
author={高木 茂孝 and 堀桂 太郎},
publisher={実教出版株式会社},
year={2025},
month={04},
pages={17-18}
}
@inbook{intro-electronic:diode,
title={電子回路概論},
author={高木 茂孝 and 堀桂 太郎},
publisher={実教出版株式会社},
year={2025},
month={04},
pages={19-21}
}
@inbook{intro-electronic:diode-circuit,
title={電子回路概論},
author={高木 茂孝 and 堀桂 太郎},
publisher={実教出版株式会社},
year={2025},
month={04},
pages={23-25}
}
@inbook{intro-electronic:led,
title={電子回路概論},
author={高木 茂孝 and 堀桂 太郎},
publisher={実教出版株式会社},
year={2025},
month={04},
pages={30}
}
@online{led-datasheet,
title={OSG8HA3Z74A},
author={OptoSupply},
url={https://akizukidenshi.com/goodsaffix/OSG8HA3Z74A.pdf},
year={2021},
month={01},
urldate={2025-05-25}
}
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+4 -3
View File
@@ -67,15 +67,16 @@
\input{sections/a-2/reflection} \input{sections/a-2/reflection}
\resetrefcounter \resetrefcounter
\newpage
\section{まとめ} \section{まとめ}
今回の実験より以下の事が分かった: 今回の実験より以下の事が分かった:
\begin{itemize} \begin{itemize}
\item{abc} \item{電気回路の諸定理・諸法則は現実でも成り立つこと}
\item{abc} \item{線形回路は重ね合わせの理で簡単に解を求めれること}
\item{abc} \item{ブラックボックスな線形回路はテブナンの定理で等価電圧源に置き換えれること}
\end{itemize} \end{itemize}
\printbibliography[title={参考文献}]{} \printbibliography[title={参考文献}]{}
+61
View File
@@ -0,0 +1,61 @@
\documentclass[japanese,xelatex,a4paper,10.5pt,ja=standard]{bxjsarticle}
\usepackage{tex/preamble}
\usepackage{tex/experiment-title}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{multirow}
\usepackage{subcaption}
\usepackage{pgfmath}
\usepackage{pgffor}
\usepackage{tex/depD-bib}
\usepackage{tex/depD-format}
\reportauthor{柴田健琉}
\reporttitle{LEDの回路}
\reportdate{2026年}{05月}{19日}
\turnindate{2026年}{05月}{26日}
\schoolyear{2026}
\grade{3}
\department{電子制御工学科}
\subject{電子制御工学実験1}
\reportid{T-1}
\expgroup{-}
\seatingnum{15}
\addExperimentDate{2026年 05月 19日}
\addbibresource{./bibs/t-1.bib}
\begin{document}
\experimentTitle
\section{実験目的}
今回の実験では発光ダイオード(LED)の特性と回路での実装方法を確認するために行った.
\input{./sections/t-1/theory}
\resetrefcounter
\input{./sections/t-1/exp-detail}
\resetrefcounter
\input{./sections/t-1/exp-result}
\resetrefcounter
\input{./sections/t-1/reflection}
\resetrefcounter
\section{まとめ}
今回の実験で以下の事柄を確認した:
\begin{itemize}
\item {ダイオードの非線形性により電圧・電流の変化が一定でない}
\item {ダイオードの整流作用により逆電圧を殆ど遮断する}
\item {LEDの光度は電力に比例して増加する}
\item {LEDには電流制限抵抗が必要であること}
\end{itemize}
\printbibliography[title={参考文献}]{}
\end{document}
+13 -13
View File
@@ -7,7 +7,7 @@
\begin{figure}[tbh] \begin{figure}[tbh]
\centering \centering
\input{assets/a-2/exp1} \input{assets/a-2/exp1}
\caption{Voltage v.s. Current of Differenct Resistors with Theoretical Values and Error Ranges} \caption{Voltage v.s. Current of Differenct Resistors with Theoretical Values and $\pm 5\%$ Error Ranges}
\label{fig:v-i-r} \label{fig:v-i-r}
\end{figure} \end{figure}
@@ -25,14 +25,14 @@ $E_1 = 15.000 \ \text{V}, \ E_2 = 3.005 \ \text{V}$の時,各抵抗での電
\begin{table}[ht] \begin{table}[ht]
\centering \centering
\caption{Result of Experiment \# 2 with Circuit (a)} \caption{Voltage and Current on each Resistors in Circuit (a)}
\label{tab:exp2-res1} \label{tab:exp2-res1}
\begin{tabular}{c|c|c} \begin{tabular}{crr}
\hline \hline
Resistor & Voltage $[\text{V}]$ & Current $[\text{mA}]$ \\ Resistor & Voltage $[\text{V}]$ & Current $[\text{mA}]$ \\
\hline \hline
$R_1$ & 10.69 & -3.28 \\ $R_1$ & 10.69 & 3.28 \\
$R_2$ & 1.30 & 1.31 \\ $R_2$ & 1.30 & -1.31 \\
$R_3$ & 4.30 & 1.98 \\ $R_3$ & 4.30 & 1.98 \\
\hline \hline
\end{tabular} \end{tabular}
@@ -48,14 +48,14 @@ $E_1 = 15.000 \ \text{V}, \ E_2 = -3.007 \ \text{V}$の時,各抵抗での電
\begin{table}[ht] \begin{table}[ht]
\centering \centering
\caption{Result of Experiment \# 2 with Circuit (b)} \caption{Voltage and Current on each Resistors in Circuit (b)}
\label{tab:exp2-res2} \label{tab:exp2-res2}
\begin{tabular}{c|c|c} \begin{tabular}{crr}
\hline \hline
Resistor & Voltage $[\text{V}]$ & Current $[\text{mA}]$ \\ Resistor & Voltage $[\text{V}]$ & Current $[\text{mA}]$ \\
\hline \hline
$R_1$ & 14.10 & 4.33 \\ $R_1$ & 14.10 & 4.33 \\
$R_2$ & -3.89 & -3.93 \\ $R_2$ & 3.89 & -3.93 \\
$R_3$ & 0.89 & 0.40 \\ $R_3$ & 0.89 & 0.40 \\
\hline \hline
\end{tabular} \end{tabular}
@@ -76,9 +76,9 @@ $E_1 = 15.000 \ \text{V}$での各抵抗にかかった電流・電圧は\cref{t
\begin{table}[ht] \begin{table}[ht]
\centering \centering
\caption{Result of Experiment \# 3 with $E_1$ as Voltage Source} \caption{Voltage and Current of each Resistors in Circuit (a) with $E_1$ as Voltage Source}
\label{tab:exp3-res1} \label{tab:exp3-res1}
\begin{tabular}{c|c|c} \begin{tabular}{crr}
\hline \hline
Resistor & Voltage $[\text{V}]$ & Current $[\text{mA}]$ \\ Resistor & Voltage $[\text{V}]$ & Current $[\text{mA}]$ \\
\hline \hline
@@ -95,9 +95,9 @@ $E_2 = 3.004 \ \text{V}$での各抵抗にかかった電流・電圧は\cref{ta
\begin{table}[ht] \begin{table}[ht]
\centering \centering
\caption{Result of Experiment \# 3 with $E_2$ as Voltage Source} \caption{Voltage and Current of each Resistors in Circuit (a) with $E_2$ as Voltage Source}
\label{tab:exp3-res2} \label{tab:exp3-res2}
\begin{tabular}{c|c|c} \begin{tabular}{crr}
\hline \hline
Resistor & Voltage $[\text{V}]$ & Current $[\text{mA}]$ \\ Resistor & Voltage $[\text{V}]$ & Current $[\text{mA}]$ \\
\hline \hline
@@ -118,7 +118,7 @@ $E_2 = 3.004 \ \text{V}$での各抵抗にかかった電流・電圧は\cref{ta
\centering \centering
\caption{Voltage and Current of Load} \caption{Voltage and Current of Load}
\label{tab:exp4-res} \label{tab:exp4-res}
\begin{tabular}{c|c|c} \begin{tabular}{crr}
\hline \hline
Circuit & Voltage $[\text{V}]$ & Current $[\text{mA}]$ \\ Circuit & Voltage $[\text{V}]$ & Current $[\text{mA}]$ \\
\hline \hline
+314
View File
@@ -1 +1,315 @@
\section{考察} \section{考察}
\subsection{実験1}
\cref{fig:v-i-r}より測定値はすべて$\pm 5\ \%$の抵抗値の誤差に収まっている.
理想値の曲線は$I = \frac{V}{R}$なので測定値はオームの法則(\cref{equ:ohm})に従っているといえる.
\subsubsection{抵抗器の制限について}
オームの法則は実験で使用した抵抗器よりも低い抵抗値を持つものでも成り立つはずだが定格電力の制限で手順書では使用しなかった.
試しに,実験で使用した抵抗値が$\frac{1}{10}$で定格電力が1/4 Wの抵抗を用いて同じ実験を行なった場合を考える.
オームの法則により,3,6,9 Vでの電流と電力は\cref{tab:v-i-r-tenth}となる.
\begin{table}[!ht]
\centering
\caption{Current and Power of Resistors with Tenth of Resistance}
\label{tab:v-i-r-tenth}
\begin{tabular}{c|r|r|r|r|r|r}
\hline
\multirow{2}{5em}{Voltage $[\text{V}]$} & \multicolumn{2}{c|}{$100 \ \Omega$} & \multicolumn{2}{c|}{$220 \ \Omega$} & \multicolumn{2}{c}{$330 \ \Omega$} \\
\cline{2-7}
& Current (mA) & Power (W) & Current (mA) & Power (W) & Current (mA) & Power (W) \\
\hline
3 & 30 & 0.09 & 13.64 & 0.041 & 9.09 & 0.027 \\
6 & 60 & 0.36 & 27.27 & 0.16 & 18.18 & 0.11 \\
9 & 90 & 0.81 & 40.91 & 0.37 & 27.27 & 0.25 \\
\hline
\end{tabular}
\end{table}
一部で1/4 = 0.25 W を超過してしまう条件がある.
これらの値は理想的な抵抗を使用した場合なので現実ではかろうじて超過しなかったり,僅かながら超える条件があるだろう.
抵抗器はその性質上,電力の一部を熱に変換して発熱しながら電流を制限する.
定格電力を超えての使用は抵抗器が焼損・破裂する可能性があるので注意すること\supercite{resistor-overload-example}
\subsection{実験2}
実験結果\cref{tab:exp2-res1}\cref{tab:exp2-res2}より接点(b)での電流の総和はそれぞれ\cref{tab:current-in-b}となった.
\begin{table}[!ht]
\centering
\caption{Applying Kirchhoff's Current Law at Point (b) to each Circuits}
\label{tab:current-in-b}
\begin{tabular}{cr}
\hline
Circuit & Current $[\text{mA}]$ \\
\hline
(a) & 0.01 \\
(b) & 0.80 \\
\hline
\end{tabular}
\end{table}
また,各回路の閉路abef,bcde,acdfでの電圧の和は\cref{tab:voltage-in-loops}となった.
\begin{table}[!ht]
\centering
\caption{Applying Kirchhoff's Voltage Law to each Loops}
\label{tab:voltage-in-loops}
\begin{tabular}{crr}
\hline
Loop & Circuit (a) $[\text{V}]$ & Circuit (b) $[\text{V}]$ \\
\hline
abef & 0.010 & 0.010 \\
bcde & -0.005 & 0.007 \\
acdf & 0.005 & -0.017 \\
\hline
\end{tabular}
\end{table}
これらから,実験回路はおおかたキルヒホッフの法則に従っているといえる.
しかし,回路(b)の電流則と閉路acdfでは真の値である0からかなり離れてしまった.
これには2つの実験回路での測定方法の差異や測定機器・抵抗値の誤差などが考えられる.
\subsection{実験3}
実験結果\cref{tab:exp3-res1}\cref{tab:exp3-res2}\cref{fig:cd-exp2-a}より,電流の向きに注意しながら重ね合わせると
\begin{align}
V_{R_1} &= 12.40 \ \text{V} - 1.71 \ \text{V} = 10.69 \ \text{V} \\
V_{R_2} &= 2.61 \ \text{V} - 1.29 \ \text{V} = 1.32 \ \text{V} \\
V_{R_3} &= 2.59 \ \text{V} + 1.70 \ \text{V} = 4.29 \ \text{V} \\
I_{R_1} &= 3.81 \ \text{mA} - 0.52 \ \text{mA} = 3.29 \ \text{mA} \\
I_{R_2} &= -2.61 \ \text{mA} + 1.32 \ \text{mA} = -1.29 \ \text{mA} \\
I_{R_3} &= 1.19 \ \text{mA} + 0.78 \ \text{mA} = 1.97 \ \text{mA}
\end{align}
それぞれの誤差率は\cref{tab:exp3-exp2-diff}の通りである.
\begin{table}[!ht]
\centering
\caption{Percentage Differences of Experiment \# 3 from Experiment \# 2 on Circuit (a)}
\label{tab:exp3-exp2-diff}
\begin{tabular}{cr}
\hline
Measurement & Difference $(\%)$ \\
\hline
$V_{R_1}$ & 0.00 \\
$V_{R_2}$ & +1.54 \\
$V_{R_3}$ & -0.23 \\
$I_{R_1}$ & +0.30 \\
$I_{R_2}$ & -1.53 \\
$I_{R_3}$ & -0.51 \\
\hline
\end{tabular}
\end{table}
この誤差は前節の測定方法の差異が影響していると思われる.
\subsubsection{電源の除去法について}
この重ね合わせの理を適用する際の電源の除去法は電圧源と電流源で違ってくる.
電圧源は短絡除去,電流源は開放除去である.
これは\cref{fig:v-c-s-removal}のように電圧源は直列接続,電流源は並列接続であるため,電圧・電流をなくし,抵抗値を変化させないような除去を行なっている.
\begin{figure}[tbh]
\centering
\begin{minipage}[h]{0.9\linewidth}
\centering
\begin{circuitikz}
\draw (0,0) to [battery1, l={$E$},invert] ++(0,2) to [R={$R_i$}] ++(0,2);
\draw (0,0) to [short, -o] ++(2,0);
\draw (0,4) to [short, -o] ++(2,0);
\draw (3.25,2) node {\Huge $\Rightarrow$};
\draw (5,0) -- (5,2) to [R={$R_i$}] ++(0,2);
\draw (5,0) to [short, -o] ++(2,0);
\draw (5,4) to [short, -o] ++(2,0);
\end{circuitikz}
\subcaption{Voltage Source}
\label{fig:vs-removal}
\end{minipage}
\begin{minipage}[h]{0.9\linewidth}
\centering
\begin{circuitikz}
\draw (0,0) to [isourceAM, l={$I$}] ++(0,2);
\draw (2,0) to [R={$R_i$}] ++(0,2);
\draw (0,0) to [short, -*] ++(2,0) to [short, -o] ++(2,0);
\draw (0,2) to [short, -*] ++(2,0) to [short, -o] ++(2,0);
\draw (5,1) node {\Huge $\Rightarrow$};
\draw (8,0) to [R={$R_i$}] ++(0,2);
\draw (6,0) to [short, o-*] ++(2,0) to [short, -o] ++(2,0);
\draw (6,2) to [short, o-*] ++(2,0) to [short, -o] ++(2,0);
\end{circuitikz}
\subcaption{Current Source}
\label{fig:cs-removal}
\end{minipage}
\caption{Removal of Voltage and Current Source}
\label{fig:v-c-s-removal}
\end{figure}
\subsection{実験4}
実験結果\cref{tab:exp4-res}から誤差率\cref{tab:exp4-diff}を求める.
\begin{table}[!ht]
\centering
\caption{Percentage Differences of Original and Equivalent Circuit of Experiment \# 4}
\label{tab:exp4-diff}
\begin{tabular}{cr}
\hline
Measurement & Difference $[\%]$ \\
\hline
Voltage & -0.73 \\
Current & -0.38 \\
\hline
\end{tabular}
\end{table}
比較的小さな誤差に収まったが,可変抵抗の抵抗値が少し触れるだけで変化してしまうため設定が難しく,誤差が出てしまった.
\subsubsection{テブナンの定理の証明}
\cref{fig:thevenin-proof-open-circuit}のような回路$N$を考える.
この回路には複数の電圧源・電流源があり内部インピーダンスは$Z_0$である.
そして,この回路の開放電圧を$V_0$とする.
次に\cref{fig:thevenin-proof-load}のように負荷インピーダンス$Z_L$を接続する.
この時,回路には電流$I$が流れる.
そして\cref{fig:thevenin-proof-ec}を考える.
この回路は負荷インピーダンスだけでなく,$V_0$と同じ電圧を持つ2つの電源を互いに打ち消し合うように接続する.
重ね合わせの理を適用して\cref{fig:thevenin-proof-d1}\cref{fig:thevenin-proof-d2}のように電圧源$V_1$$V_2$をそれぞれ独立させる.
電流$I$$I_1$$I_2$の和として表わせれる.
\cref{fig:thevenin-proof-d1}では点Aでの電位が等しいため電流が流れない,よって$I_1 = 0$である.
\cref{fig:thevenin-proof-d2}では回路Nの電圧源を短絡,電流源を開放して内部インピーダンス$Z_0$を得る.
この時,$I_2$はオームの法則より\cref{equ:thevenin-proof-d2-I2}で表わせれる.
\begin{equation}\label{equ:thevenin-proof-d2-I2}
I_2 = \frac{V_2}{Z_0 + Z_L} = \frac{V_0}{Z_0 + Z_L}
\end{equation}
結果的に$I_1$$I_2$の和である電流$I$$0 + \frac{V_0}{Z_0 + Z_L}$\cref{equ:thevenin}が得られる.
\cref{fig:thevenin-proof-d2}の回路を変形し電圧源となる部分を抜き出したのが\cref{fig:thevenin-proof-evs}である\supercite{ac-theory:thevenin}
\begin{figure}[tbh]
\centering
\begin{minipage}[h]{0.45\linewidth}
\centering
\begin{circuitikz}
\draw (0,0) node[fourport] (N) {$N$};
\draw ($(N.center) + (0,-0.5)$) node[vsourceAMshape,scale=0.5,rotate=180](Vi){};
\draw ($(N.center) + (0,0)$) node[isourceAMshape,scale=0.5](Ci){};
\draw (Vi.right) -- ++(-0.25,0);
\draw (Vi.left) -- ++(0.25,0);
\draw (Ci.left) -- ++(-0.25,0);
\draw (Ci.right) -- ++(0.25,0);
\draw ($(N.center) + (0,0.25)$) node[above] {$Z_0$};
\draw (N.port3) to [short, -o] ++(1,0) node[above]{A} coordinate (A);
\draw (N.port2) to [short, -o] ++(1,0) node[right]{B} coordinate (B);
\draw[->] ($(B) + (0,0.1)$) -- ($(A) + (0,-0.1)$);
\draw ($(A)!0.5!(B)$) node[right]{$V_0$};
\end{circuitikz}
\subcaption{Open Circuit}
\label{fig:thevenin-proof-open-circuit}
\end{minipage}
\begin{minipage}[h]{0.45\linewidth}
\centering
\begin{circuitikz}
\draw (0,0) node[fourport] (N) {$N$};
\draw ($(N.center) + (0,-0.5)$) node[vsourceAMshape,scale=0.5,rotate=180](Vi){};
\draw ($(N.center) + (0,0)$) node[isourceAMshape,scale=0.5](Ci){};
\draw (Vi.right) -- ++(-0.25,0);
\draw (Vi.left) -- ++(0.25,0);
\draw (Ci.left) -- ++(-0.25,0);
\draw (Ci.right) -- ++(0.25,0);
\draw ($(N.center) + (0,0.25)$) node[above] {$\dot{Z_0}$};
\draw (N.port3) to [short, -o, i={$I$}] ++(1,0) node[above]{A} coordinate (A);
\draw (N.port2) to [short, -o] ++(1,0) node[right]{B} coordinate (B);
\draw (A) -- ++(1,0) to [R={$Z_L$}] ++(0,-2) -- ++(-1,0) -- (B);
\end{circuitikz}
\subcaption{Connected to Load}
\label{fig:thevenin-proof-load}
\end{minipage}
\begin{minipage}[h]{0.45\linewidth}
\centering
\begin{circuitikz}
\draw (0,0) node[fourport] (N) {$N$};
\draw ($(N.center) + (0,-0.5)$) node[vsourceAMshape,scale=0.5,rotate=180](Vi){};
\draw ($(N.center) + (0,0)$) node[isourceAMshape,scale=0.5](Ci){};
\draw (Vi.right) -- ++(-0.25,0);
\draw (Vi.left) -- ++(0.25,0);
\draw (Ci.left) -- ++(-0.25,0);
\draw (Ci.right) -- ++(0.25,0);
\draw ($(N.center) + (0,0.25)$) node[above] {$\dot{Z_0}$};
\draw (N.port3) to [short, -o, i={$I$}] ++(1,0) node[above]{A} coordinate (A);
\draw (N.port2) to [short, -o] ++(1,0) node[right]{B} coordinate (B);
\draw (A) to [battery1,l={$V_1=V_0$}] ++(1,0) to [R={$Z_L$}] ++(0,-2) to [battery1,l={$V_2=V_0$},invert] ++(-1,0) -- (B);
\end{circuitikz}
\subcaption{Equivalent Circuit}
\label{fig:thevenin-proof-ec}
\end{minipage}
\begin{minipage}[h]{0.45\linewidth}
\centering
\begin{circuitikz}
\draw (0,0) node[fourport] (N) {$N$};
\draw ($(N.center) + (0,-0.5)$) node[vsourceAMshape,scale=0.5,rotate=180](Vi){};
\draw ($(N.center) + (0,0)$) node[isourceAMshape,scale=0.5](Ci){};
\draw (Vi.right) -- ++(-0.25,0);
\draw (Vi.left) -- ++(0.25,0);
\draw (Ci.left) -- ++(-0.25,0);
\draw (Ci.right) -- ++(0.25,0);
\draw ($(N.center) + (0,0.25)$) node[above] {$\dot{Z_0}$};
\draw (N.port3) to [short, -o, i={$I_1$}] ++(1,0) node[above]{A} coordinate (A);
\draw (N.port2) to [short, -o] ++(1,0) node[right]{B} coordinate (B);
\draw (A) to [battery1,l={$V_1=V_0$}] ++(1,0) to [R={$Z_L$}] ++(0,-2) -- ++(-1,0) -- (B);
\end{circuitikz}
\subcaption{Decomposition 1}
\label{fig:thevenin-proof-d1}
\end{minipage}
\begin{minipage}[h]{0.45\linewidth}
\centering
\begin{circuitikz}
\draw (0,0) node[fourport] (N) {$N$};
\draw ($(N.center) + (0,-0.5)$) node[shortshape,scale=0.5,rotate=180](Vi){};
\draw ($(N.center) + (0,0)$) node[openshape,scale=0.5](Ci){};
\draw (Vi.right) -- ++(-0.25,0);
\draw (Vi.left) -- ++(0.25,0);
\draw (Ci.left) to [short, o-] ++(-0.25,0);
\draw (Ci.right) to [short, o-] ++(0.25,0);
\draw ($(N.center) + (0,0.25)$) node[above] {$\dot{Z_0}$};
\draw (N.port3) to [short, -o, i={$I_2$}] ++(1,0) node[above]{A} coordinate (A);
\draw (N.port2) to [short, -o] ++(1,0) node[right]{B} coordinate (B);
\draw (A) -- ++(1,0) to [R={$Z_L$}] ++(0,-2) to [battery1,l={$V_2=V_0$},invert] ++(-1,0) -- (B);
\end{circuitikz}
\subcaption{Decomposition 2}
\label{fig:thevenin-proof-d2}
\end{minipage}
\begin{minipage}[h]{0.45\linewidth}
\centering
\begin{circuitikz}
\draw (0,0) to [battery1={$V_0$},invert] ++(0,1.5) to [R={$Z_0$}] ++(0,1.5);
\draw (0,3) to [short, -o] ++(2,0) node[below]{A};
\draw (0,0) to [short, -o] ++(2,0) node[above]{B};
\end{circuitikz}
\vspace{2em}
\subcaption{Thevenin's Equivalent Voltage Source}
\label{fig:thevenin-proof-evs}
\end{minipage}
\caption{}
\end{figure}
+89 -4
View File
@@ -2,14 +2,14 @@
\subsection{オームの法則} \subsection{オームの法則}
ある抵抗値を持つ抵抗器$R \ [\Omega]$に対し電圧$V \ [\text{V}]$を印加すると抵抗に電流$I \ [\text{A}]$が流れる. ある抵抗値を持つ抵抗器$R \ [\Omega]$に対し端子間電圧$V \ [\text{V}]$を印加すると抵抗に電流$I \ [\text{A}]$が流れる.
この時,$V, R, I$には次の関係式が成り立つ. この時,$V, R, I$には次の関係式が成り立つ.
\begin{equation}\label{equ:ohm} \begin{equation}\label{equ:ohm}
V = RI V = RI
\end{equation} \end{equation}
\cref{equ:ohm}で表されるこの関係をオームの法則という. \cref{equ:ohm}で表されるこの関係をオームの法則という\supercite{ac-theory:ohm}
電圧は電流に比例するのでV-I図は\cref{fig:v-i-example}のようになる. 電圧は電流に比例するのでV-I図は\cref{fig:v-i-example}のようになる.
@@ -40,11 +40,96 @@
この法則には2つの性質が定義されている. この法則には2つの性質が定義されている.
第一法則は電流則とも呼ばれ,回路中の接点の電流の入出流の関係が定義されている. 第一法則は電流則とも呼ばれ,\cref{fig:kirchhoff-i}のように回路中の接点の電流の入出流の関係が定義されている.
具体的には,\cref{equ:kirchhoff-i}に示すように流入(または流出)を正として総和した電流は常に零である,または,接点に流れ込む電流と流れ出る電流は等しい\supercite{ac-theory:kirchhoff-law-i}
第二法則は電圧則とも呼ばれ, \begin{equation}\label{equ:kirchhoff-i}
\sum_{k = 0} i_{k} = 0
\end{equation}
\newpage
第二法則は電圧則とも呼ばれ,\cref{fig:kirchhoff-v}のように回路の1つのループ(閉路)での電圧降下の関係が定義されている.
具体的には,\cref{equ:kirchhoff-v}に示すように回路内の任意の閉路について,その閉路に向定め,各枝の電圧を閉路向きに総和したとき,その和は常に零である\supercite{ac-theory:kirchhoff-law-v}
\begin{equation}\label{equ:kirchhoff-v}
\sum_{k = 0} v_{k} = 0
\end{equation}
\begin{figure}[tbh]
\centering
\begin{minipage}[h]{0.45\linewidth}
\centering
\begin{circuitikz}
\draw (135:3) to [short, -*, i={$i_1$}] (0,0);
\draw (-135:3) to [short, i={$i_2$}] (0,0);
\draw (0,0) to [short, i={$i_3$}] (45:3);
\draw (0,0) to [short, i={$i_5$}] (0:3);
\draw (0,0) to [short, i={$i_4$}] (-45:3);
\draw (0,0) node[below] {A};
\end{circuitikz}
\vspace{5.4em}
\subcaption{Current Law}
\label{fig:kirchhoff-i}
\end{minipage}
\begin{minipage}[h]{0.45\linewidth}
\centering
\begin{circuitikz}
\draw (90:3) node[above] {A} coordinate(p1) to [R, i={$i_1$}] (162:3) node[left] {B} coordinate(p2);
\draw (p2) to [battery1, i={$i_2$}] (234:3) node[left] {C} coordinate(p3);
\draw (p3) to [R, i={$i_3$}] (306:3) node[right] {D} coordinate(p4);
\draw (18:3) node[right] {E} coordinate(p5) to [battery1, i={$i_4$}] (p4);
\draw (p5) to [R, i={$i_5$}] (p1);
\draw (0,0) node {\Huge$\circlearrowleft$};
\end{circuitikz}
\subcaption{Voltage Law}
\label{fig:kirchhoff-v}
\end{minipage}
\caption{Kirchhoff's Laws}
\end{figure}
\subsection{重ね合わせの理} \subsection{重ね合わせの理}
電気回路に電圧源,電流源,抵抗器,キャパシタ,インダクタが複数個存在する場合,その回路は線形であり,電流・電圧源が単独で存在する場合の回路網の電流・電圧分布を求め,それらを重ね(加え)合わせた値は同時に存在する場合の値と等しい.ただし,取り去られる電流源は開放除去,電圧源は短絡除去する\supercite{ac-theory:superposition}
\subsection{テブナンの定理} \subsection{テブナンの定理}
電源を含む線形回路の端子開放電圧が$V_0$で内部インピーダンスが$Z_0$であった場合にインピーダンス$Z$を端子に接続したとき,流れる電流$I$\cref{equ:thevenin}となる.
\begin{equation}\label{equ:thevenin}
I = \frac{V_0}{Z_0 + Z}
\end{equation}
\newpage
\begin{figure}[tbh]
\centering
\begin{minipage}[h]{0.45\linewidth}
\centering
\begin{circuitikz}
\draw (0,0) node[fourport] (X) {$X$};
\draw (X.center) node {$Z_0$};
\draw (X.port3) to [short, -o] ++(1,0) node[above]{A} coordinate(A);
\draw (X.port2) to [short, -o] ++(1,0) node[below]{B} coordinate(B);
\ctikzset{resistors/scale=0.4}
\draw (B) to [R={$Z$}] (A);
\draw[->] ($(B) + (0.25,0.1)$) -- ($(A) + (0.25,-0.1)$);
\node at ($($(A)!0.5!(B)$) + (0.5,0)$) {$V$};
\end{circuitikz}
\subcaption{Current on Linear Circuit with Load}
\label{fig:thevenin-example}
\end{minipage}
\begin{minipage}[h]{0.45\linewidth}
\centering
\begin{circuitikz}
\draw (0,0) to [battery1={$V_t$},invert] ++(0,2) to [R={$Z_t$}] ++(0,2);
\draw (0,4) to [short, -o] ++(2,0) node[below]{A};
\draw (0,0) to [short, -o] ++(2,0) node[above]{B};
\end{circuitikz}
\subcaption{Thevenin's Equivalent Voltage Source}
\end{minipage}
\caption{Thevenin's Theorem}
\label{fig:thevenin}
\end{figure}
+48
View File
@@ -0,0 +1,48 @@
\section{実験手順・条件}
\subsection{実験器具}
\begin{itemize}
\item {ブレッドボード}
\item {緑色LED OSG8HA3Z74A}
\item {抵抗器 $470 \ \Omega \pm 5 \ \%$ 1/4 W}
\item {Analog Devices, ADALM2000}
\end{itemize}
\subsection{実験回路}
\begin{figure}[tbh]
\centering
\begin{circuitikz}
\ctikzset{multipoles/dipchip/width=2.5}
\draw (0,0) node[dipchip, num pins=12, hide numbers, no topmark, external pins width=0](AD){ADALM2000};
\node [left, font=\small, align=right] at (AD.bpin 12) {V+};
\node [left, font=\small, align=right] at (AD.bpin 11) {V-};
\node [left, font=\small, align=right] at (AD.bpin 10) {1+};
\node [left, font=\small, align=right] at (AD.bpin 9) {1-};
\node [left, font=\small, align=right] at (AD.bpin 8) {2+};
\node [left, font=\small, align=right] at (AD.bpin 7) {2-};
\draw (AD.bpin 12) -- ++(1,0) to [full led] ++(2,0) to [R={$470 \ \Omega$}] ++(2,0) -- ++($(AD.bpin 11) - (AD.bpin 12)$) -- (AD.bpin 11);
\draw (AD.bpin 10) -- ++(0.5,0) to [short, -*] ++($(AD.bpin 12) - (AD.bpin 10)$);
\draw (AD.bpin 9) -- ++(0.75,0) to [short, -*] ++($(AD.bpin 11) - (AD.bpin 9)$);
\draw (AD.bpin 8) -- ++(3,0) to [short, -*] ++($(AD.bpin 12) - (AD.bpin 8)$);
\draw (AD.bpin 7) -- ++(1,0) to [short, -*] ++($(AD.bpin 11) - (AD.bpin 7)$);
\end{circuitikz}
\caption{Circuit Diagram for Experiments}
\label{fig:cd-exps}
\end{figure}
\subsection{実験1}
\begin{enumerate}
\item {ADALM2000を用いて1 Vから7 Vまでの電圧を回路に印加する}
\item {抵抗の電圧降下と回路の電圧を記録する}
\end{enumerate}
\subsection{実験2}
\begin{enumerate}
\item {ADALM2000を用いて1 Vから3 Vまでの逆電圧を回路に印加する}
\item {抵抗の電圧降下と回路の電圧を記録する}
\end{enumerate}
+27
View File
@@ -0,0 +1,27 @@
\section{実験結果}
\subsection{実験1}
電源電圧を1 Vから0.5 V刻みで7 Vまで変化させた.
電源電圧とLEDの電圧降下の関係を\cref{fig:exp1-res}に示した.
電源電圧を高くするにつれ, LEDの電圧降下は2 V付近となり, 変化量が少なくなった.
\begin{figure}[tbh]
\centering
\input{assets/t-1/exp1}
\caption{Supply Voltage v.s. LED Forward Voltage}
\label{fig:exp1-res}
\end{figure}
\subsection{実験2}
電源電圧を1 Vから0.5 V刻みで3 Vまで変化させた.
電源電圧とLEDの逆電圧の関係を\cref{fig:exp2-res}に示した.
抵抗器には電圧が掛からず, 電圧は全てLEDで降下した.
\begin{figure}[tbh]
\centering
\input{assets/t-1/exp2}
\caption{Reverse Supply Voltage v.s. LED Reverse Voltage}
\label{fig:exp2-res}
\end{figure}
+65
View File
@@ -0,0 +1,65 @@
\section{考察}
\subsection{消費電力と明かるさ}
\begin{figure}[tbh]
\centering
\input{./assets/t-1/ip}
\caption{Forward Current v.s. Power Usage of LED}
\label{fig:led-current-power}
\end{figure}
実験中, LEDは2 V未満では点灯せず, 2 Vからは電源電圧を高くするにつれ光が強くなっていった.
LEDの消費電力は\cref{equ:led-power}で算出される.
\begin{equation}\label{equ:led-power}
\begin{split}
P &= V_{F} I_{F} \quad [\text{W}] \\
I_{F} &= \frac{V_R}{R} \qquad [\text{A}]
\end{split}
\end{equation}
ここで$V_{R}$は抵抗器の端子間電圧, $V_{F}$はLEDの順電圧, $R$は抵抗器の抵抗値である.
\cref{equ:led-power}を今回の実験のパラメータを使用して順電流についてグラフに表したものが\cref{fig:led-current-power}である.
電流が流れている間の順電圧はほぼ一定なので電力は電流と比例していると言える.
そして, この関係はデータシート\supercite{led-datasheet}\cref{fig:i-rl-datasheet}で示されたLEDの電流と相対光度の0 \text{mA} - 10 \text{mA}の領域での関係と類似している.
よって, 消費電力が高くなるにつれ明かるさも同じように増していくと言える.
\begin{figure}[tbh]
\centering
\includegraphics[width=10cm]{./assets/t-1/i-l_datasheet.png}
\caption{Forward Current v.s. Relative Intensitiy from Datasheet\supercite{led-datasheet}}
\label{fig:i-rl-datasheet}
\end{figure}
\subsection{抵抗の必要性}
定電圧源をLEDに直接接続すると電源電圧と等しい順電圧が掛かる.
ダイオードは一定の順電圧を超えると半導体が導体のように振る舞い, 急激に電流を流す性質を持っている.
この時, 回路中にLEDしか無い場合, 短絡したような状態となり大電流が流れてしまう.
そして, 順電流が最大定格電流を超えてしまうとLEDが破損してしまう.
なのでLEDにはなにかしら電流を制限する素子を直列に接続する必要がある.
\subsection{LEDの非線形性}
LEDのみならず多くの半導体素子は単純な多項式で電流と電圧の関係を表すことができない.
この性質を非線形という. 非線形な関係は変化率が刻々と変わる.
V-I特性の変化率の逆数が微分抵抗となる.
この微分抵抗が大きいと電圧に対する電流の変化が小さく, 微分抵抗が小さいと電圧に対する電流の変化が大きくなる\supercite{intro-electronic:diode}.
\begin{figure}[tbh]
\centering
\input{./assets/t-1/vi}
\caption{Measured and Reference $V_F$ - $I_F$ Characteristic of LED}
\label{fig:led-vi}
\end{figure}
\cref{fig:led-vi}に実測値とデータシート\supercite{led-datasheet}の値の一部を表示した.
データシートの値と実測値には大きな差が見られた.
これはデータシートでのノミナル値, 順電流$I_F$が20 mAとなる順電圧$V_F$が2.1 Vでのグラフを特性図として表示している.
そしてLEDの順電圧には1.8 Vから2.6 Vの振れ幅がある.
よって, 今回用意したLEDは順電流20 mAに達っする順電圧がノミナル値の2.1 Vより大きい個体を使用したということが推測できる.
このことを踏まえるとデータシートが掲載しているのは微分抵抗が小さい部分で, 今回の実験で得た値は\\データシート上の順電圧1.9 V以下での微分抵抗が高い部分を含んだ結果となった.
+249
View File
@@ -0,0 +1,249 @@
\section{理論}
\subsection{ダイオード}
ダイオードとは半導体の接合による電子の移動方向を制限する素子である.
多くの場合, 単にダイオードと呼ばれるものは, 2種類の半導体を接合したpn接合ダイオードのことである.
pn接合ダイオードとは正孔を多くもつp形半導体と自由電子が多いn形半導体を組み合わせたダイオードである.
これら半導体を接合すると接合面と呼ぶ境界線で少数のn形半導体内の自由電子がp形半導体の正孔を埋める. この移動を拡散と言い, 電子が正孔を埋めることを再結合と言う.
そして, 接合面には空乏層と呼ばれる電気的に中立で絶縁体の振舞いをする層が形成される\supercite{intro-electronic:pn-junction}.
\begin{figure}[tbh]
\centering
\begin{minipage}[h]{0.3\linewidth}
\centering
\vspace{2.65em}
\begin{tikzpicture}[scale=0.5]
\filldraw[fill=blue!45] (0,0) rectangle ++(3,2);
\filldraw[fill=blue!90] (3,0) rectangle ++(3,2);
\draw (1.5,0) node[below] {p-Type};
\draw (4.5,0) node[below] {n-Type};
\pgfmathsetseed{7}
\foreach \i in {1,2,3,4,5} {
\draw
let
\n1 = {0.25 + random(1,10) * 3/15},
\n2 = {0.125 + random(1,10) * 2/15}
in
(\n1, \n2) node[text=white,circle] {+};
};
\pgfmathsetseed{8}
\draw ({random(1,10) * 3/15}, rnd * 2) node[text=white,circle] {-};
\draw ({random(1,10) * 3/15 + 3}, rnd * 2) node[text=white,circle] {+};
\pgfmathsetseed{7}
\foreach \i in {1,2,3,4,5} {
\draw
let
\n1 = {5.75 - random(1,10) * 3/15},
\n2 = {0.125 + random(1,10) * 2/15}
in
(\n1, \n2) node[text=white,circle] {-};
};
\end{tikzpicture}
\subcaption{Structure}
\label{fig:pn-junction:structure}
\end{minipage}
\begin{minipage}[h]{0.3\linewidth}
\centering
\vspace{2.65em}
\begin{tikzpicture}[scale=0.5]
\filldraw[fill=blue!45] (0,0) rectangle ++(3,2);
\filldraw[fill=blue!90] (3,0) rectangle ++(3,2);
\draw (1.5,0) node[below] {p-Type};
\draw (4.5,0) node[below] {n-Type};
\pgfmathsetseed{7}
\foreach \i in {1,2,3,4,5} {
\draw
let
\n1 = {0.25 + random(1,10) * 3/15},
\n2 = {0.125 + random(1,10) * 2/15}
in
(\n1, \n2) node[text=white,circle](p\i) {+};
};
\pgfmathsetseed{8}
\draw ({random(1,10) * 3/15}, rnd * 2) node[text=white,circle] {-};
\draw ({random(1,10) * 3/15 + 3}, rnd * 2) node[text=white,circle] {+};
\pgfmathsetseed{7}
\foreach \i in {1,2,3,4,5} {
\draw
let
\n1 = {5.75 - random(1,10) * 3/15},
\n2 = {0.125 + random(1,10) * 2/15}
in
(\n1, \n2) node[text=white,circle](n\i) {-};
};
\draw[-{Stealth},thick,draw=red!80] (p1.center) -- ++(0.75,0);
\draw[-{Stealth},thick,draw=red!80] (p2.center) -- ++(0.75,0);
\draw[-{Stealth},thick,draw=red!80] (p5.center) -- ++(0.75,0);
\draw[-{Stealth},thick,draw=red!80] (n1.center) -- ++(-0.75,0);
\draw[-{Stealth},thick,draw=red!80] (n2.center) -- ++(-0.75,0);
\draw[-{Stealth},thick,draw=red!80] (n5.center) -- ++(-0.75,0);
\end{tikzpicture}
\subcaption{Diffusion}
\label{fig:pn-junction:diffusion}
\end{minipage}
\begin{minipage}[h]{0.3\linewidth}
\centering
\begin{tikzpicture}[scale=0.5]
\def\seed{13}
\filldraw[fill=blue!45] (0,0) rectangle ++(2,2);
\filldraw[fill=blue!90] (4,0) rectangle ++(2,2);
\draw (2,0) rectangle ++(1,2);
\draw (3,0) rectangle ++(1,2);
\draw (1,0) node[below] {p-Type};
\draw (5,0) node[below] {n-Type};
\draw (3, 2.75) node[above](dl) {Depletion Layer};
\draw[-{Stealth},thick] ($(dl.south) + (0,0.2)$) -- (3,2.2);
\pgfmathsetseed{\seed}
\foreach \i in {1,2} {
\draw
let
\n1 = {0.25 + random(1,10) * 2/15},
\n2 = {0.25 + random(1,10) * 2/15}
in
(\n1, \n2) node[text=white,circle] {+};
};
\draw ({random(1,10) * 2/15}, rnd * 2) node[text=white,circle] {-};
\draw ({random(1,10) * 2/10 + 3}, rnd * 2) node[text=white,circle] {+};
\pgfmathsetseed{\seed}
\foreach \i in {1,2} {
\draw
let
\n1 = {5.75 - random(1,10) * 2/15},
\n2 = {0.25 + random(1,10) * 2/15}
in
(\n1, \n2) node[text=white,circle] {-};
};
\end{tikzpicture}
\subcaption{Depletion Layer}
\label{fig:pn-junction:depletion-layer}
\end{minipage}
\caption{pn-Junction}
\label{fig:pn-junction}
\end{figure}
この接合に電圧を印加する時, 極性の違いで以下の状態となる:
\begin{itemize}
\item {電圧がn形半導体に電子を, p形半導体に正孔を供給し, 空乏層を消失させる(\cref{fig:pn-junction-voltage:forward})}
\item {電圧がn形半導体の電子を, p形半導体の正孔を外側へ引き寄せ, 空乏層をさらに広げる(\cref{fig:pn-junction-voltage:reverse})}
\end{itemize}
そして, 電流はそれぞれの状態で導通, 遮断となる. これがダイオードの性質の一つである整流作用である\supercite{intro-electronic:diode}.
\begin{figure}[tbh]
\centering
\begin{minipage}[h]{0.45\linewidth}
\centering
\begin{circuitikz}[scale=0.5]
\filldraw[fill=blue!45] (0,0) rectangle ++(3,2);
\filldraw[fill=blue!90] (3,0) rectangle ++(3,2);
\draw (1.5,0) node[below] {p-Type};
\draw (4.5,0) node[below] {n-Type};
\pgfmathsetseed{7}
\foreach \i in {1,2,3,4,5} {
\draw
let
\n1 = {0.25 + random(1,10) * 3/15},
\n2 = {0.125 + random(1,10) * 2/15}
in
(\n1, \n2) node[text=white,circle](p\i) {+};
\draw[-{Stealth},thick,draw=red!80] (p\i.center) -- ++(0.75,0);
};
\pgfmathsetseed{8}
\draw ({random(1,10) * 3/15}, rnd * 2) node[text=white,circle] {-};
\draw ({random(1,10) * 3/15 + 3}, rnd * 2) node[text=white,circle] {+};
\pgfmathsetseed{7}
\foreach \i in {1,2,3,4,5} {
\draw
let
\n1 = {5.75 - random(1,10) * 3/15},
\n2 = {0.125 + random(1,10) * 2/15}
in
(\n1, \n2) node[text=white,circle](n\i) {-};
\draw[-{Stealth},thick,draw=red!80] (n\i.center) -- ++(-0.75,0);
};
\draw (-2,-2) to [battery1, l_={$V_F$}, i_={$I_F$}] (8,-2);
\draw (-2,-2) -- (-2,1) -- (0,1) node[above left] {$+$};
\draw (8,-2) -- (8,1) -- (6,1) node[above right] {$-$};
\end{circuitikz}
\subcaption{Forward Voltage}
\label{fig:pn-junction-voltage:forward}
\end{minipage}
\begin{minipage}[h]{0.45\linewidth}
\centering
\begin{circuitikz}[scale=0.5]
\def\seed{13}
\filldraw[fill=blue!45] (0,0) rectangle ++(1,2);
\filldraw[fill=blue!90] (5,0) rectangle ++(1,2);
\draw (1,0) rectangle ++(2,2);
\draw (3,0) rectangle ++(2,2);
\draw (0.5,0) node[below] {p-Type};
\draw (5.5,0) node[below] {n-Type};
\pgfmathsetseed{\seed}
\foreach \i in {1,2} {
\draw
let
\n1 = {0.2 + random(1,10) * 1/15},
\n2 = {0.25 + random(1,10) * 2/15}
in
(\n1, \n2) node[text=white,circle] {+};
};
\draw[-{Stealth},draw=red!80] (0.7, 1.4) node[text=white,circle] {-} -- ++(1,0);
\draw[-{Stealth},draw=red!80] (5.4, 1.5) node[text=white,circle] {+} -- ++(-1,0);
\pgfmathsetseed{\seed}
\foreach \i in {1,2} {
\draw
let
\n1 = {5.8 - random(1,10) * 1/15},
\n2 = {0.25 + random(1,10) * 2/15}
in
(\n1, \n2) node[text=white,circle] {-};
};
\draw (8,-2) to [battery1,l={$V_R$}, i={$I_R \lll I_F$}] (-2,-2);
\draw (-2,-2) -- (-2,1) -- (0,1) node[above left] {$-$};
\draw (8,-2) -- (8,1) -- (6,1) node[above right] {$+$};
\end{circuitikz}
\subcaption{Reverse Voltage}
\label{fig:pn-junction-voltage:reverse}
\end{minipage}
\caption{Applying Voltage across pn-Junction}
\label{fig:pn-junction-voltage}
\end{figure}
ダイオードには極性があり, p形半導体の方をアノード, n形半導体の方をカソードと呼ぶ.
これらダイオードは電流を流し始めるまでに一定電圧以上を掛ける必要がある. この電圧を順電圧と呼ぶ.
一般的なシリコンダイオードの順電圧は0.6 V程度である.
また, 順電圧に至るまで電流が流れない領域のことを不感領域と言う\supercite{intro-electronic:diode}.
順電圧を増加させると順電流が急激に増加する, これがダイオードの非線形性である.
半導体素子の多くは単純なオームの法則に従わない. 回路計算する際にはテブナンの定理などを駆使していく必要がある\supercite{intro-electronic:diode-circuit}.
\begin{figure}[tbh]
\centering
\begin{circuitikz}
\draw (0,0) node[above]{Anode} to [D*, o-o] ++(3,0) node[above]{Cathode};
\end{circuitikz}
\caption{Circuit Diagram of Diode}
\label{fig:diode}
\end{figure}
\subsection{発光ダイオード}
発光ダイオード(LED)とは, 順電圧を掛ける時に光を放つダイオードである.
主に低電力・高効率な照明や表示灯に使用されている.
光は電子と正孔が再結合し消滅する時に発生する. この明かるさは電流に比例する.
LEDの順電圧はシリコンダイオードよりも高く, 2 V以上の物が多い\supercite{intro-electronic:led}.
\begin{figure}[tbh]
\centering
\begin{circuitikz}
\draw (0,0) node[above]{Anode} to [full led, o-o] ++(3,0) node[above]{Cathode};
\end{circuitikz}
\caption{Circuit Diagram of LED}
\end{figure}
+25
View File
@@ -0,0 +1,25 @@
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{depD-format}
\usepackage{cleveref}
\renewcommand\figurename{Fig. }
\renewcommand\tablename{Table }
\renewcommand\theequation{\thesection-\arabic{equation}}
\renewcommand\thefigure{\thesection-\arabic{figure}}
\renewcommand\thetable{\thesection-\arabic{table}}
\crefdefaultlabelformat{#1}
\crefname{figure}{Fig.}{Fig.}
\Crefname{figure}{Fig.}{Fig.}
\crefname{table}{Table}{Tables}
\Crefname{table}{Table}{Tables}
\crefname{equation}{Eq.}{Eq.}
\Crefname{equation}{Eq.}{Eq.}
\creflabelformat{equation}{(#1)}
\newcommand\resetrefcounter{
\setcounter{equation}{0}
\setcounter{figure}{0}
\setcounter{table}{0}
}