9 changed files with 20953 additions and 0 deletions
-
13021examples/cider/cider-gnuplot/DC.12.qj1.ascii
-
22examples/cider/cider-gnuplot/README
-
1220examples/cider/cider-gnuplot/TR.200.q2.ascii
-
6235examples/cider/cider-gnuplot/TR.300.d1.ascii
-
5examples/cider/cider-gnuplot/clean.sh
-
113examples/cider/cider-gnuplot/passq.cir
-
112examples/cider/cider-gnuplot/passq1.cir
-
113examples/cider/cider-gnuplot/winq.cir
-
112examples/cider/cider-gnuplot/winq1.cir
13021
examples/cider/cider-gnuplot/DC.12.qj1.ascii
File diff suppressed because it is too large
View File
File diff suppressed because it is too large
View File
@ -0,0 +1,22 @@ |
|||
|
|||
To run gnuplot xycontour tests. |
|||
------------------------------- |
|||
|
|||
The gnuplot command in ngspice is: |
|||
|
|||
gnuplot <file> xycontour <expr> |
|||
|
|||
xycontour is a new flag. Only a single <expr> is allowed to be plotted |
|||
in a contour diagram. With <expr1> vs <expr2> only <expr1> is plotted. |
|||
|
|||
ngspice passq.cir |
|||
|
|||
This plots xy contour diagrams for 2d Cider save file data. |
|||
On visualc Windows in a cmd shell, run 'winq.cir'. |
|||
|
|||
ngspice passq1.cir |
|||
|
|||
This checks that gnuplot <file> xycontour <expr> works with 1d data. |
|||
The xycontour flag is just ignored. |
|||
On visualc Windows in a cmd shell, run 'winq1.cir'. |
|||
|
|||
1220
examples/cider/cider-gnuplot/TR.200.q2.ascii
File diff suppressed because it is too large
View File
File diff suppressed because it is too large
View File
6235
examples/cider/cider-gnuplot/TR.300.d1.ascii
File diff suppressed because it is too large
View File
File diff suppressed because it is too large
View File
@ -0,0 +1,5 @@ |
|||
#!/bin/sh |
|||
set -v |
|||
|
|||
rm -f new*.plt new*.data new*.eps new*.png |
|||
rm -f tnew*.plt tnew*.data tnew*.eps tnew*.png |
|||
@ -0,0 +1,113 @@ |
|||
Turnoff transient of pass transistor |
|||
|
|||
M1 11 2 3 4 mmod w=20um |
|||
Cs 1 0 6.0pF |
|||
Cl 3 0 6.0pF |
|||
R1 3 6 200k |
|||
Vin 6 0 dc 0 |
|||
Vdrn 1 11 dc 0 |
|||
Vg 2 0 dc 5 pwl 0 5 0.1n 0 1 0 |
|||
Vb 4 0 dc 0.0 |
|||
|
|||
*.tran 0.05ns 0.2ns 0.0ns 0.05ns |
|||
*.print tran v(1) i(Vdrn) |
|||
.ic v(1)=0 v(3)=0 |
|||
*.option acct bypass=1 |
|||
.option bypass=1 |
|||
|
|||
.model mmod numos |
|||
+ x.mesh l=0.0 n=1 |
|||
+ x.mesh l=0.6 n=4 |
|||
+ x.mesh l=0.7 n=5 |
|||
+ x.mesh l=1.0 n=7 |
|||
+ x.mesh l=1.2 n=11 |
|||
+ x.mesh l=3.2 n=21 |
|||
+ x.mesh l=3.4 n=25 |
|||
+ x.mesh l=3.7 n=27 |
|||
+ x.mesh l=3.8 n=28 |
|||
+ x.mesh l=4.4 n=31 |
|||
+ |
|||
+ y.mesh l=-.05 n=1 |
|||
+ y.mesh l=0.0 n=5 |
|||
+ y.mesh l=.05 n=9 |
|||
+ y.mesh l=0.3 n=14 |
|||
+ y.mesh l=2.0 n=19 |
|||
+ |
|||
+ region num=1 material=1 y.l=0.0 |
|||
+ material num=1 silicon |
|||
+ mobility material=1 concmod=sg fieldmod=sg |
|||
+ mobility material=1 elec major |
|||
+ mobility material=1 elec minor |
|||
+ mobility material=1 hole major |
|||
+ mobility material=1 hole minor |
|||
+ |
|||
+ region num=2 material=2 y.h=0.0 x.l=0.7 x.h=3.7 |
|||
+ material num=2 oxide |
|||
+ |
|||
+ elec num=1 x.l=3.8 x.h=4.4 y.l=0.0 y.h=0.0 |
|||
+ elec num=2 x.l=0.7 x.h=3.7 iy.l=1 iy.h=1 |
|||
+ elec num=3 x.l=0.0 x.h=0.6 y.l=0.0 y.h=0.0 |
|||
+ elec num=4 x.l=0.0 x.h=4.4 y.l=2.0 y.h=2.0 |
|||
+ |
|||
+ doping unif p.type conc=2.5e16 x.l=0.0 x.h=4.4 y.l=0.0 y.h=2.0 |
|||
+ doping unif p.type conc=1e16 x.l=0.0 x.h=4.4 y.l=0.0 y.h=0.05 |
|||
+ doping unif n.type conc=1e20 x.l=0.0 x.h=1.1 y.l=0.0 y.h=0.2 |
|||
+ doping unif n.type conc=1e20 x.l=3.3 x.h=4.4 y.l=0.0 y.h=0.2 |
|||
+ |
|||
+ models concmob fieldmob |
|||
+ method ac=direct onec |
|||
|
|||
.end |
|||
|
|||
.control |
|||
tran 0.05ns 0.2ns 0.0ns 0.05ns |
|||
print v(1) i(Vdrn) |
|||
plot v(1) i(Vdrn) |
|||
gnuplot tmp v(1) i(Vdrn) |
|||
|
|||
shell 'rm -f new*.plt new*.data new*,png new*.eps' |
|||
shell 'ls' |
|||
shell 'sleep 1' |
|||
|
|||
load $inputdir/DC.12.qj1.ascii |
|||
gnuplot new0 xycontour phip |
|||
shell 'sleep 1' |
|||
set gnuplot_terminal=png |
|||
gnuplot new1 xycontour psi |
|||
shell 'sleep 1' |
|||
set gnuplot_terminal=eps |
|||
gnuplot new2 xycontour ex |
|||
shell 'sleep 1' |
|||
set gnuplot_terminal=png/quit |
|||
gnuplot new3 xycontour ey |
|||
shell 'sleep 1' |
|||
set gnuplot_terminal=eps/quit |
|||
gnuplot new4 xycontour phin |
|||
shell 'sleep 1' |
|||
set gnuplot_terminal=xterm |
|||
gnuplot new5 xycontour vac.psi |
|||
shell 'sleep 1' |
|||
unset gnuplot_terminal |
|||
gnuplot new6 xycontour sqrt((ex * ex) + (ey * ey)) |
|||
shell 'sleep 1' |
|||
gnuplot new7 xycontour sqrt(jpx * jpx + jpy * jpy) |
|||
shell 'sleep 1' |
|||
gnuplot new8 xycontour ex ey |
|||
shell 'sleep 1' |
|||
gnuplot new9 xycontour x |
|||
shell 'sleep 1' |
|||
gnuplot new10 xycontour abs(y + x + n + p) |
|||
shell 'sleep 1' |
|||
gnuplot new11 xycontour Y |
|||
shell 'sleep 1' |
|||
|
|||
load $inputdir/TR.300.d1.ascii |
|||
gnuplot newb0 xycontour dop |
|||
shell 'sleep 1' |
|||
gnuplot newb1 xycontour p vs n |
|||
shell 'sleep 1' |
|||
gnuplot tmp xycontour abs((3.0,4.0)) |
|||
shell 'sleep 1' |
|||
|
|||
quit |
|||
.endc |
|||
@ -0,0 +1,112 @@ |
|||
Turnoff transient of pass transistor |
|||
|
|||
M1 11 2 3 4 mmod w=20um |
|||
Cs 1 0 6.0pF |
|||
Cl 3 0 6.0pF |
|||
R1 3 6 200k |
|||
Vin 6 0 dc 0 |
|||
Vdrn 1 11 dc 0 |
|||
Vg 2 0 dc 5 pwl 0 5 0.1n 0 1 0 |
|||
Vb 4 0 dc 0.0 |
|||
|
|||
*.tran 0.05ns 0.2ns 0.0ns 0.05ns |
|||
*.print tran v(1) i(Vdrn) |
|||
.ic v(1)=0 v(3)=0 |
|||
*.option acct bypass=1 |
|||
.option bypass=1 |
|||
|
|||
.model mmod numos |
|||
+ x.mesh l=0.0 n=1 |
|||
+ x.mesh l=0.6 n=4 |
|||
+ x.mesh l=0.7 n=5 |
|||
+ x.mesh l=1.0 n=7 |
|||
+ x.mesh l=1.2 n=11 |
|||
+ x.mesh l=3.2 n=21 |
|||
+ x.mesh l=3.4 n=25 |
|||
+ x.mesh l=3.7 n=27 |
|||
+ x.mesh l=3.8 n=28 |
|||
+ x.mesh l=4.4 n=31 |
|||
+ |
|||
+ y.mesh l=-.05 n=1 |
|||
+ y.mesh l=0.0 n=5 |
|||
+ y.mesh l=.05 n=9 |
|||
+ y.mesh l=0.3 n=14 |
|||
+ y.mesh l=2.0 n=19 |
|||
+ |
|||
+ region num=1 material=1 y.l=0.0 |
|||
+ material num=1 silicon |
|||
+ mobility material=1 concmod=sg fieldmod=sg |
|||
+ mobility material=1 elec major |
|||
+ mobility material=1 elec minor |
|||
+ mobility material=1 hole major |
|||
+ mobility material=1 hole minor |
|||
+ |
|||
+ region num=2 material=2 y.h=0.0 x.l=0.7 x.h=3.7 |
|||
+ material num=2 oxide |
|||
+ |
|||
+ elec num=1 x.l=3.8 x.h=4.4 y.l=0.0 y.h=0.0 |
|||
+ elec num=2 x.l=0.7 x.h=3.7 iy.l=1 iy.h=1 |
|||
+ elec num=3 x.l=0.0 x.h=0.6 y.l=0.0 y.h=0.0 |
|||
+ elec num=4 x.l=0.0 x.h=4.4 y.l=2.0 y.h=2.0 |
|||
+ |
|||
+ doping unif p.type conc=2.5e16 x.l=0.0 x.h=4.4 y.l=0.0 y.h=2.0 |
|||
+ doping unif p.type conc=1e16 x.l=0.0 x.h=4.4 y.l=0.0 y.h=0.05 |
|||
+ doping unif n.type conc=1e20 x.l=0.0 x.h=1.1 y.l=0.0 y.h=0.2 |
|||
+ doping unif n.type conc=1e20 x.l=3.3 x.h=4.4 y.l=0.0 y.h=0.2 |
|||
+ |
|||
+ models concmob fieldmob |
|||
+ method ac=direct onec |
|||
|
|||
.end |
|||
|
|||
.control |
|||
tran 0.05ns 0.2ns 0.0ns 0.05ns |
|||
|
|||
shell 'rm -f tnew*.plt tnew*.data tnew*,png tnew*.eps' |
|||
shell 'ls' |
|||
shell 'sleep 1' |
|||
|
|||
gnuplot tnewp0 v(1) i(Vdrn) |
|||
shell 'sleep 1' |
|||
set gnuplot_terminal=png |
|||
gnuplot tnewp1 vb#branch |
|||
shell 'sleep 1' |
|||
set gnuplot_terminal=eps |
|||
gnuplot tnewp2 vg#branch |
|||
shell 'sleep 1' |
|||
set gnuplot_terminal=png/quit |
|||
gnuplot tnewp3 i(vb) i(vg) |
|||
shell 'sleep 1' |
|||
set gnuplot_terminal=eps/quit |
|||
gnuplot tnewp4 i(vin) |
|||
shell 'sleep 1' |
|||
set gnuplot_terminal=xterm |
|||
gnuplot tnewp5 i(vb) i(vg) |
|||
shell 'sleep 1' |
|||
set gnuplot_terminal=xterm |
|||
gnuplot tnewp6 i(vin) |
|||
shell 'sleep 1' |
|||
unset gnuplot_terminal |
|||
|
|||
load $inputdir/TR.200.q2.ascii |
|||
gnuplot newa0 xycontour n p |
|||
shell 'sleep 1' |
|||
set gnuplot_terminal=png |
|||
gnuplot newa1 xycontour phiv phip phin |
|||
shell 'sleep 1' |
|||
set gnuplot_terminal=eps |
|||
gnuplot newa2 xycontour dop |
|||
shell 'sleep 1' |
|||
set gnuplot_terminal=png/quit |
|||
gnuplot newa3 xycontour n |
|||
shell 'sleep 1' |
|||
set gnuplot_terminal=eps/quit |
|||
gnuplot newa4 xycontour p |
|||
shell 'sleep 1' |
|||
set gnuplot_terminal=xterm |
|||
gnuplot newa5 xycontour mun mup |
|||
shell 'sleep 1' |
|||
unset gnuplot_terminal |
|||
|
|||
quit |
|||
.endc |
|||
@ -0,0 +1,113 @@ |
|||
Turnoff transient of pass transistor |
|||
|
|||
M1 11 2 3 4 mmod w=20um |
|||
Cs 1 0 6.0pF |
|||
Cl 3 0 6.0pF |
|||
R1 3 6 200k |
|||
Vin 6 0 dc 0 |
|||
Vdrn 1 11 dc 0 |
|||
Vg 2 0 dc 5 pwl 0 5 0.1n 0 1 0 |
|||
Vb 4 0 dc 0.0 |
|||
|
|||
*.tran 0.05ns 0.2ns 0.0ns 0.05ns |
|||
*.print tran v(1) i(Vdrn) |
|||
.ic v(1)=0 v(3)=0 |
|||
*.option acct bypass=1 |
|||
.option bypass=1 |
|||
|
|||
.model mmod numos |
|||
+ x.mesh l=0.0 n=1 |
|||
+ x.mesh l=0.6 n=4 |
|||
+ x.mesh l=0.7 n=5 |
|||
+ x.mesh l=1.0 n=7 |
|||
+ x.mesh l=1.2 n=11 |
|||
+ x.mesh l=3.2 n=21 |
|||
+ x.mesh l=3.4 n=25 |
|||
+ x.mesh l=3.7 n=27 |
|||
+ x.mesh l=3.8 n=28 |
|||
+ x.mesh l=4.4 n=31 |
|||
+ |
|||
+ y.mesh l=-.05 n=1 |
|||
+ y.mesh l=0.0 n=5 |
|||
+ y.mesh l=.05 n=9 |
|||
+ y.mesh l=0.3 n=14 |
|||
+ y.mesh l=2.0 n=19 |
|||
+ |
|||
+ region num=1 material=1 y.l=0.0 |
|||
+ material num=1 silicon |
|||
+ mobility material=1 concmod=sg fieldmod=sg |
|||
+ mobility material=1 elec major |
|||
+ mobility material=1 elec minor |
|||
+ mobility material=1 hole major |
|||
+ mobility material=1 hole minor |
|||
+ |
|||
+ region num=2 material=2 y.h=0.0 x.l=0.7 x.h=3.7 |
|||
+ material num=2 oxide |
|||
+ |
|||
+ elec num=1 x.l=3.8 x.h=4.4 y.l=0.0 y.h=0.0 |
|||
+ elec num=2 x.l=0.7 x.h=3.7 iy.l=1 iy.h=1 |
|||
+ elec num=3 x.l=0.0 x.h=0.6 y.l=0.0 y.h=0.0 |
|||
+ elec num=4 x.l=0.0 x.h=4.4 y.l=2.0 y.h=2.0 |
|||
+ |
|||
+ doping unif p.type conc=2.5e16 x.l=0.0 x.h=4.4 y.l=0.0 y.h=2.0 |
|||
+ doping unif p.type conc=1e16 x.l=0.0 x.h=4.4 y.l=0.0 y.h=0.05 |
|||
+ doping unif n.type conc=1e20 x.l=0.0 x.h=1.1 y.l=0.0 y.h=0.2 |
|||
+ doping unif n.type conc=1e20 x.l=3.3 x.h=4.4 y.l=0.0 y.h=0.2 |
|||
+ |
|||
+ models concmob fieldmob |
|||
+ method ac=direct onec |
|||
|
|||
.end |
|||
|
|||
.control |
|||
tran 0.05ns 0.2ns 0.0ns 0.05ns |
|||
print v(1) i(Vdrn) |
|||
plot v(1) i(Vdrn) |
|||
gnuplot tmp v(1) i(Vdrn) |
|||
|
|||
shell 'rm -f new*.plt new*.data new*,png new*.eps' |
|||
shell 'ls' |
|||
shell 'timeout /t 1' |
|||
|
|||
load $inputdir/DC.12.qj1.ascii |
|||
gnuplot new0 xycontour phip |
|||
shell 'timeout /t 1' |
|||
set gnuplot_terminal=png |
|||
gnuplot new1 xycontour psi |
|||
shell 'timeout /t 1' |
|||
set gnuplot_terminal=eps |
|||
gnuplot new2 xycontour ex |
|||
shell 'timeout /t 1' |
|||
set gnuplot_terminal=png/quit |
|||
gnuplot new3 xycontour ey |
|||
shell 'timeout /t 1' |
|||
set gnuplot_terminal=eps/quit |
|||
gnuplot new4 xycontour phin |
|||
shell 'timeout /t 1' |
|||
set gnuplot_terminal=xterm |
|||
gnuplot new5 xycontour vac.psi |
|||
shell 'timeout /t 1' |
|||
unset gnuplot_terminal |
|||
gnuplot new6 xycontour sqrt((ex * ex) + (ey * ey)) |
|||
shell 'timeout /t 1' |
|||
gnuplot new7 xycontour sqrt(jpx * jpx + jpy * jpy) |
|||
shell 'timeout /t 1' |
|||
gnuplot new8 xycontour ex ey |
|||
shell 'timeout /t 1' |
|||
gnuplot new9 xycontour x |
|||
shell 'timeout /t 1' |
|||
gnuplot new10 xycontour abs(y + x + n + p) |
|||
shell 'timeout /t 1' |
|||
gnuplot new11 xycontour Y |
|||
shell 'timeout /t 1' |
|||
|
|||
load $inputdir/TR.300.d1.ascii |
|||
gnuplot newb0 xycontour dop |
|||
shell 'timeout /t 1' |
|||
gnuplot newb1 xycontour p vs n |
|||
shell 'timeout /t 1' |
|||
gnuplot tmp xycontour abs((3.0,4.0)) |
|||
shell 'timeout /t 1' |
|||
|
|||
quit |
|||
.endc |
|||
@ -0,0 +1,112 @@ |
|||
Turnoff transient of pass transistor |
|||
|
|||
M1 11 2 3 4 mmod w=20um |
|||
Cs 1 0 6.0pF |
|||
Cl 3 0 6.0pF |
|||
R1 3 6 200k |
|||
Vin 6 0 dc 0 |
|||
Vdrn 1 11 dc 0 |
|||
Vg 2 0 dc 5 pwl 0 5 0.1n 0 1 0 |
|||
Vb 4 0 dc 0.0 |
|||
|
|||
*.tran 0.05ns 0.2ns 0.0ns 0.05ns |
|||
*.print tran v(1) i(Vdrn) |
|||
.ic v(1)=0 v(3)=0 |
|||
*.option acct bypass=1 |
|||
.option bypass=1 |
|||
|
|||
.model mmod numos |
|||
+ x.mesh l=0.0 n=1 |
|||
+ x.mesh l=0.6 n=4 |
|||
+ x.mesh l=0.7 n=5 |
|||
+ x.mesh l=1.0 n=7 |
|||
+ x.mesh l=1.2 n=11 |
|||
+ x.mesh l=3.2 n=21 |
|||
+ x.mesh l=3.4 n=25 |
|||
+ x.mesh l=3.7 n=27 |
|||
+ x.mesh l=3.8 n=28 |
|||
+ x.mesh l=4.4 n=31 |
|||
+ |
|||
+ y.mesh l=-.05 n=1 |
|||
+ y.mesh l=0.0 n=5 |
|||
+ y.mesh l=.05 n=9 |
|||
+ y.mesh l=0.3 n=14 |
|||
+ y.mesh l=2.0 n=19 |
|||
+ |
|||
+ region num=1 material=1 y.l=0.0 |
|||
+ material num=1 silicon |
|||
+ mobility material=1 concmod=sg fieldmod=sg |
|||
+ mobility material=1 elec major |
|||
+ mobility material=1 elec minor |
|||
+ mobility material=1 hole major |
|||
+ mobility material=1 hole minor |
|||
+ |
|||
+ region num=2 material=2 y.h=0.0 x.l=0.7 x.h=3.7 |
|||
+ material num=2 oxide |
|||
+ |
|||
+ elec num=1 x.l=3.8 x.h=4.4 y.l=0.0 y.h=0.0 |
|||
+ elec num=2 x.l=0.7 x.h=3.7 iy.l=1 iy.h=1 |
|||
+ elec num=3 x.l=0.0 x.h=0.6 y.l=0.0 y.h=0.0 |
|||
+ elec num=4 x.l=0.0 x.h=4.4 y.l=2.0 y.h=2.0 |
|||
+ |
|||
+ doping unif p.type conc=2.5e16 x.l=0.0 x.h=4.4 y.l=0.0 y.h=2.0 |
|||
+ doping unif p.type conc=1e16 x.l=0.0 x.h=4.4 y.l=0.0 y.h=0.05 |
|||
+ doping unif n.type conc=1e20 x.l=0.0 x.h=1.1 y.l=0.0 y.h=0.2 |
|||
+ doping unif n.type conc=1e20 x.l=3.3 x.h=4.4 y.l=0.0 y.h=0.2 |
|||
+ |
|||
+ models concmob fieldmob |
|||
+ method ac=direct onec |
|||
|
|||
.end |
|||
|
|||
.control |
|||
tran 0.05ns 0.2ns 0.0ns 0.05ns |
|||
|
|||
shell 'rm -f tnew*.plt tnew*.data tnew*,png tnew*.eps' |
|||
shell 'ls' |
|||
shell 'timeout /t 1' |
|||
|
|||
gnuplot tnewp0 v(1) i(Vdrn) |
|||
shell 'timeout /t 1' |
|||
set gnuplot_terminal=png |
|||
gnuplot tnewp1 vb#branch |
|||
shell 'timeout /t 1' |
|||
set gnuplot_terminal=eps |
|||
gnuplot tnewp2 vg#branch |
|||
shell 'timeout /t 1' |
|||
set gnuplot_terminal=png/quit |
|||
gnuplot tnewp3 i(vb) i(vg) |
|||
shell 'timeout /t 1' |
|||
set gnuplot_terminal=eps/quit |
|||
gnuplot tnewp4 i(vin) |
|||
shell 'timeout /t 1' |
|||
set gnuplot_terminal=xterm |
|||
gnuplot tnewp5 i(vb) i(vg) |
|||
shell 'timeout /t 1' |
|||
set gnuplot_terminal=xterm |
|||
gnuplot tnewp6 i(vin) |
|||
shell 'timeout /t 1' |
|||
unset gnuplot_terminal |
|||
|
|||
load $inputdir/TR.200.q2.ascii |
|||
gnuplot newa0 xycontour n p |
|||
shell 'timeout /t 1' |
|||
set gnuplot_terminal=png |
|||
gnuplot newa1 xycontour phiv phip phin |
|||
shell 'timeout /t 1' |
|||
set gnuplot_terminal=eps |
|||
gnuplot newa2 xycontour dop |
|||
shell 'timeout /t 1' |
|||
set gnuplot_terminal=png/quit |
|||
gnuplot newa3 xycontour n |
|||
shell 'timeout /t 1' |
|||
set gnuplot_terminal=eps/quit |
|||
gnuplot newa4 xycontour p |
|||
shell 'timeout /t 1' |
|||
set gnuplot_terminal=xterm |
|||
gnuplot newa5 xycontour mun mup |
|||
shell 'timeout /t 1' |
|||
unset gnuplot_terminal |
|||
|
|||
quit |
|||
.endc |
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue