From 7f60ea012dd2524dae921a2a35adbf7ef21f2bb6 Mon Sep 17 00:00:00 2001 From: prashantsinalkar Date: Tue, 10 Oct 2017 12:27:19 +0530 Subject: initial commit / add all books --- 3630/CH12/EX12.1/Ex12_1.sce | 10 ++++++++++ 3630/CH12/EX12.10/Ex12_10.sce | 9 +++++++++ 3630/CH12/EX12.11/Ex12_11.sce | 10 ++++++++++ 3630/CH12/EX12.12/Ex12_12.sce | 18 ++++++++++++++++++ 3630/CH12/EX12.13/Ex12_13.sce | 12 ++++++++++++ 3630/CH12/EX12.14/Ex12_14.sce | 12 ++++++++++++ 3630/CH12/EX12.15/Ex12_15.sce | 11 +++++++++++ 3630/CH12/EX12.16/Ex12_16.sce | 28 ++++++++++++++++++++++++++++ 3630/CH12/EX12.17/Ex12_17.sce | 6 ++++++ 3630/CH12/EX12.2/Ex12_2.png | Bin 0 -> 11744 bytes 3630/CH12/EX12.2/Ex12_2.sce | 15 +++++++++++++++ 3630/CH12/EX12.3/Ex12_3.png | Bin 0 -> 22052 bytes 3630/CH12/EX12.3/Ex12_3.sce | 12 ++++++++++++ 3630/CH12/EX12.4/Ex12_4.sce | 12 ++++++++++++ 3630/CH12/EX12.7/Ex12_7.sce | 17 +++++++++++++++++ 3630/CH12/EX12.8/Ex12_8.png | Bin 0 -> 22816 bytes 3630/CH12/EX12.8/Ex12_8.sce | 27 +++++++++++++++++++++++++++ 3630/CH12/EX12.9/Ex12_9.sce | 16 ++++++++++++++++ 18 files changed, 215 insertions(+) create mode 100644 3630/CH12/EX12.1/Ex12_1.sce create mode 100644 3630/CH12/EX12.10/Ex12_10.sce create mode 100644 3630/CH12/EX12.11/Ex12_11.sce create mode 100644 3630/CH12/EX12.12/Ex12_12.sce create mode 100644 3630/CH12/EX12.13/Ex12_13.sce create mode 100644 3630/CH12/EX12.14/Ex12_14.sce create mode 100644 3630/CH12/EX12.15/Ex12_15.sce create mode 100644 3630/CH12/EX12.16/Ex12_16.sce create mode 100644 3630/CH12/EX12.17/Ex12_17.sce create mode 100644 3630/CH12/EX12.2/Ex12_2.png create mode 100644 3630/CH12/EX12.2/Ex12_2.sce create mode 100644 3630/CH12/EX12.3/Ex12_3.png create mode 100644 3630/CH12/EX12.3/Ex12_3.sce create mode 100644 3630/CH12/EX12.4/Ex12_4.sce create mode 100644 3630/CH12/EX12.7/Ex12_7.sce create mode 100644 3630/CH12/EX12.8/Ex12_8.png create mode 100644 3630/CH12/EX12.8/Ex12_8.sce create mode 100644 3630/CH12/EX12.9/Ex12_9.sce (limited to '3630/CH12') diff --git a/3630/CH12/EX12.1/Ex12_1.sce b/3630/CH12/EX12.1/Ex12_1.sce new file mode 100644 index 000000000..108bae9df --- /dev/null +++ b/3630/CH12/EX12.1/Ex12_1.sce @@ -0,0 +1,10 @@ +clc; +Idss=0.003; +Vgs=-2; +Vgsoff=-6; +Id=Idss*(1-(Vgs/Vgsoff))^2; +disp('mA',Id*1000,"Id=");//The answers vary due to round off error + + + + diff --git a/3630/CH12/EX12.10/Ex12_10.sce b/3630/CH12/EX12.10/Ex12_10.sce new file mode 100644 index 000000000..925a6737c --- /dev/null +++ b/3630/CH12/EX12.10/Ex12_10.sce @@ -0,0 +1,9 @@ +clc; +Vdd=30; +Rd=1100; +Rs=10000; +Idq=[0.0015 0.002]; +Vdsqmax=Vdd-Idq(1,1)*(Rd+Rs); +Vdsqmin=Vdd-Idq(1,2)*(Rd+Rs); +disp('V',Vdsqmax,"Vsdqmax=") +disp('V',Vdsqmin,"Vsdqmin=") diff --git a/3630/CH12/EX12.11/Ex12_11.sce b/3630/CH12/EX12.11/Ex12_11.sce new file mode 100644 index 000000000..e9fe3b1a4 --- /dev/null +++ b/3630/CH12/EX12.11/Ex12_11.sce @@ -0,0 +1,10 @@ +clc; +Vgs1=-3; +Vgs2=-5; +Gm0=0.006; +Vgsoff=-8; +Gm1=Gm0*(1-(Vgs1/Vgsoff)); +Gm2=Gm0*(1-(Vgs2/Vgsoff)); +disp('uS',Gm1*1000000,"Gm1=") +disp('uS',Gm2*1000000,"Gm2=") + diff --git a/3630/CH12/EX12.12/Ex12_12.sce b/3630/CH12/EX12.12/Ex12_12.sce new file mode 100644 index 000000000..56f16d100 --- /dev/null +++ b/3630/CH12/EX12.12/Ex12_12.sce @@ -0,0 +1,18 @@ +Vgs1=-5; +Vgs2=-0.75; +Gm01=0.006; +Gm02=0.002; +Vgsoff1=-8; +Vgsoff2=-2; +Gm1=Gm01*(1-(Vgs1/Vgsoff1)); +Gm2=Gm02*(1-(Vgs2/Vgsoff2)); +RD=8200; +RL=100000; +rD=(RD*RL)/(RD+RL); +Avmax=rD*Gm1; +Avmin=rD*Gm2; +disp(' ',Avmax,"Avmax=")//The answers vary due to round off error +disp(' ',Avmin,"Avmin=")//The answers vary due to round off error + + + diff --git a/3630/CH12/EX12.13/Ex12_13.sce b/3630/CH12/EX12.13/Ex12_13.sce new file mode 100644 index 000000000..2be84c28d --- /dev/null +++ b/3630/CH12/EX12.13/Ex12_13.sce @@ -0,0 +1,12 @@ +clc; +rD=7580; +rS=2200; +Gm1=1/444; +Gm2=1/1000; +Avmax=rD/(rS+(1/Gm1)); +Avmin=rD/(rS+(1/Gm2)); +disp(' ',Avmax,"Avmax=")//The answers vary due to round off error +disp(' ',Avmin,"Avmin=")//The answers vary due to round off error + + + diff --git a/3630/CH12/EX12.14/Ex12_14.sce b/3630/CH12/EX12.14/Ex12_14.sce new file mode 100644 index 000000000..8b6b2a10c --- /dev/null +++ b/3630/CH12/EX12.14/Ex12_14.sce @@ -0,0 +1,12 @@ +clc; +Hfe=200; +re=22.7; +R1=10000; +R2=2200; +Req=(R1*R2)/(R1+R2); +X1=Hfe*re; +ZinBJT=(Req*X1)/(Req+X1); +ZinJFET=(R1*R2)/(R1+R2); +disp('kOhm',ZinBJT/1000,"ZinBJT=")//The answers vary due to round off error +disp('kOhm',ZinJFET/1000,"ZinJFET=")//The answers vary due to round off error + diff --git a/3630/CH12/EX12.15/Ex12_15.sce b/3630/CH12/EX12.15/Ex12_15.sce new file mode 100644 index 000000000..5aa775385 --- /dev/null +++ b/3630/CH12/EX12.15/Ex12_15.sce @@ -0,0 +1,11 @@ +RD=8200; +Zin=1290; +rD1=(RD*Zin)/(RD+Zin); +Gm=0.002; +AvBJT=Gm*rD1; +Zin=1800; +rD2=(RD*Zin)/(RD+Zin); +AvJFET=Gm*rD2; +disp(' ',AvBJT,"AvBJT=")//The answers vary due to round off error +disp(' ',AvJFET,"AvJFET=")//The answers vary due to round off error + diff --git a/3630/CH12/EX12.16/Ex12_16.sce b/3630/CH12/EX12.16/Ex12_16.sce new file mode 100644 index 000000000..d34f867f5 --- /dev/null +++ b/3630/CH12/EX12.16/Ex12_16.sce @@ -0,0 +1,28 @@ +clc; +Vgs1=-0.5 +Vgs2=-5; +Gm01=0.002; +Gm02=0.006; +Vgsoff1=-2; +Vgsoff2=-8; +Gm1=Gm01*(1-(Vgs1/Vgsoff1)); +Gm2=Gm02*(1-(Vgs2/Vgsoff2)); +Rs=5100; +RL=20000; +rS=(Rs*RL)/(Rs+RL); +Avmin=rS/(rS+(1/Gm1)); +Avmax=rS/(rS+(1/Gm2)); +disp(' ',Avmax,"Avmax=")//The answers vary due to round off error +disp(' ',Avmin,"Avmin=")//The answers vary due to round off error +Gm11=1/667; +Gm22=1/444; +Zoutmax=(Rs/Gm11)/(Rs+(1/Gm11)); +Zoutmin=(Rs/Gm22)/(Rs+(1/Gm22)); +disp('Ohm',Zoutmax,"Zoutmax=")//The answers vary due to round off error +disp('Ohm',Zoutmin,"Zoutmin=")//The answers vary due to round off error +R1=1000000; +R2=1000000; +Zin=(R1*R2)/(R1+R2); +disp('KOhm',Zin/1000,"Zin=")//The answers vary due to round off error + + diff --git a/3630/CH12/EX12.17/Ex12_17.sce b/3630/CH12/EX12.17/Ex12_17.sce new file mode 100644 index 000000000..70782f8db --- /dev/null +++ b/3630/CH12/EX12.17/Ex12_17.sce @@ -0,0 +1,6 @@ +clc; +yos=0.00005; +rd=1/yos; //minimum value +Rd=1000; +Zout=(Rd*rd)/(Rd+rd); +disp('Ohm',Zout,"Zout=")//The answers vary due to round off error diff --git a/3630/CH12/EX12.2/Ex12_2.png b/3630/CH12/EX12.2/Ex12_2.png new file mode 100644 index 000000000..a58efd693 Binary files /dev/null and b/3630/CH12/EX12.2/Ex12_2.png differ diff --git a/3630/CH12/EX12.2/Ex12_2.sce b/3630/CH12/EX12.2/Ex12_2.sce new file mode 100644 index 000000000..a1d4f163f --- /dev/null +++ b/3630/CH12/EX12.2/Ex12_2.sce @@ -0,0 +1,15 @@ +clc; +Idss=0.003; +Vgs=[0 -1 -3 -5]; +Vgsoff=-6; +Id=zeros(1,5); +Id(1,1)=Idss*(1-(Vgs(1,1)/Vgsoff))^2; +Id(1,2)=Idss*(1-(Vgs(1,2)/Vgsoff))^2; +Id(1,3)=Idss*(1-(Vgs(1,3)/Vgsoff))^2; +Id(1,4)=Idss*(1-(Vgs(1,4)/Vgsoff))^2; +Vgs1=[0 -1 -3 -5 -6]; +plot(Vgs1,Id*1000) +xlabel('Vgs(V)') +ylabel('Id(mA)') + + diff --git a/3630/CH12/EX12.3/Ex12_3.png b/3630/CH12/EX12.3/Ex12_3.png new file mode 100644 index 000000000..4a5f107c4 Binary files /dev/null and b/3630/CH12/EX12.3/Ex12_3.png differ diff --git a/3630/CH12/EX12.3/Ex12_3.sce b/3630/CH12/EX12.3/Ex12_3.sce new file mode 100644 index 000000000..28331aacc --- /dev/null +++ b/3630/CH12/EX12.3/Ex12_3.sce @@ -0,0 +1,12 @@ +clc; +Vgs1=[-6 -4 -2 0]; +Id1=[0 0.556 2.222 5]; +Vgs2=[-0.5 -0.4 -0.2 0]; +Id2=[0 0.04 0.36 1]; +plot(Vgs1,Id1) +xgrid +set(gca(),"auto_clear","off") +plot2d(Vgs2,Id2) +xlabel('Vgs(V)') +ylabel('Id(mA)') + diff --git a/3630/CH12/EX12.4/Ex12_4.sce b/3630/CH12/EX12.4/Ex12_4.sce new file mode 100644 index 000000000..a07b203fc --- /dev/null +++ b/3630/CH12/EX12.4/Ex12_4.sce @@ -0,0 +1,12 @@ +clc; +Vgs=-5; +Vgg=Vgs; +Idss=0.016; +Vgsoff=-8; +Id=Idss*(1-(Vgs/Vgsoff))^2; +Vdd=10; +Rd=2200; +VDS=Vdd-Id*Rd; +disp('V',Vgs,"Vgs=") +disp('mA',Id*1000,"Id=") +disp('V',VDS,"VDS=") diff --git a/3630/CH12/EX12.7/Ex12_7.sce b/3630/CH12/EX12.7/Ex12_7.sce new file mode 100644 index 000000000..85875fb3e --- /dev/null +++ b/3630/CH12/EX12.7/Ex12_7.sce @@ -0,0 +1,17 @@ +clc; +//from example 12.7 Idqmax and Idqmin +Idqmax=0.006; +Idqmin=0.0015; +Vdd=10; +Rs=500; +Rd=500; +Vdsqmax=Vdd-Idqmin*(Rs+Rd); +Vdsqmin=Vdd-Idqmax*(Rs+Rd); +disp('V',Vdsqmax,"Vsdqmax=") +disp('V',Vdsqmin,"Vsdqmin=") +disp('The value of Vdsq will fall between Vdsqmax and Vdsqmin') + + + + + diff --git a/3630/CH12/EX12.8/Ex12_8.png b/3630/CH12/EX12.8/Ex12_8.png new file mode 100644 index 000000000..9724022e3 Binary files /dev/null and b/3630/CH12/EX12.8/Ex12_8.png differ diff --git a/3630/CH12/EX12.8/Ex12_8.sce b/3630/CH12/EX12.8/Ex12_8.sce new file mode 100644 index 000000000..16c2d7bfa --- /dev/null +++ b/3630/CH12/EX12.8/Ex12_8.sce @@ -0,0 +1,27 @@ +clc; +R2=1500000; +R1=1500000; +Vdd=30; +Vg=Vdd*(R2/(R1+R2)); +Rs=10000; +Id=Vg/Rs; +Vgsoff=-8; +Idss=0.016; +Vgs1=-8:1:0; +Id1=Idss*(1-(Vgs1/Vgsoff)).^2; +Vgsoff=-2; +Idss=0.004; +Vgs2=-2:1:0; +Id2=Idss*(1-(Vgs2/Vgsoff)).^2; +plot2d(Vgs1,Id1*1000) +xgrid +set(gca(),"auto_clear","off") +plot2d(Vgs2,Id2*1000) +set(gca(),"auto_clear","off") +Vgs3=-6:1:0; +Id3=((Vgs3.*-0.1)+1.5); +plot2d(Vgs3,Id3) +xlabel('Vgs(V)') +ylabel('Id(mA)') +xtitle('The voltage -divider dc bias line') + diff --git a/3630/CH12/EX12.9/Ex12_9.sce b/3630/CH12/EX12.9/Ex12_9.sce new file mode 100644 index 000000000..58de35897 --- /dev/null +++ b/3630/CH12/EX12.9/Ex12_9.sce @@ -0,0 +1,16 @@ +clc; +Idqmax=0.002; +Idqmin=0.0015; +Vgsmax=-5; +Vgsmin=-0.5; +Vdd=30; +R1=1500000; +R2=1500000; +Vg=Vdd*(R2/(R1+R2)); +Vs=Vg-Vgsmax; +Rs=10000; +Idq1=Vs/Rs; +Idq2=(Vg-Vgsmin)/(Rs); +disp('mA',Idq1*1000,"Idq1=") +disp('mA',Idq2*1000,"Idq2=") +disp('Result Is verified', ," ") -- cgit