summaryrefslogtreecommitdiff
path: root/2081/CH12
diff options
context:
space:
mode:
Diffstat (limited to '2081/CH12')
-rwxr-xr-x2081/CH12/EX12.1/Ex12_1.sce6
-rwxr-xr-x2081/CH12/EX12.10/Ex12_10.sce25
-rwxr-xr-x2081/CH12/EX12.12/Ex12_12.sce4
-rwxr-xr-x2081/CH12/EX12.13/Ex12_13.sce7
-rwxr-xr-x2081/CH12/EX12.15/Ex12_15.sce12
-rwxr-xr-x2081/CH12/EX12.17/Ex12_17.sce10
-rwxr-xr-x2081/CH12/EX12.18/Ex12_18.sce9
-rwxr-xr-x2081/CH12/EX12.19/Ex12_19.sce16
-rwxr-xr-x2081/CH12/EX12.3/Ex12_3.sce12
-rwxr-xr-x2081/CH12/EX12.4/Ex12_4.sce12
-rwxr-xr-x2081/CH12/EX12.5/Ex12_5.sce9
-rwxr-xr-x2081/CH12/EX12.6/Ex12_6.sce6
-rwxr-xr-x2081/CH12/EX12.7/Ex12_7.sce15
-rwxr-xr-x2081/CH12/EX12.8/Ex12_8.sce4
14 files changed, 147 insertions, 0 deletions
diff --git a/2081/CH12/EX12.1/Ex12_1.sce b/2081/CH12/EX12.1/Ex12_1.sce
new file mode 100755
index 000000000..ebe304123
--- /dev/null
+++ b/2081/CH12/EX12.1/Ex12_1.sce
@@ -0,0 +1,6 @@
+Bt=400*10^6
+Bc=100
+Gp=Bt/Bc//processing gain
+k=log10(Gp)/log10(2)
+printf('At 19.2 kbps the processing gain = %.f\n',Gp)
+printf('minimum no. of PN bits k= %.f',k)
diff --git a/2081/CH12/EX12.10/Ex12_10.sce b/2081/CH12/EX12.10/Ex12_10.sce
new file mode 100755
index 000000000..ad38704e6
--- /dev/null
+++ b/2081/CH12/EX12.10/Ex12_10.sce
@@ -0,0 +1,25 @@
+Bc=1.2288*10^6
+Rb=9.6*10^3//baseband data rate
+Gp=Bc/Rb//processing gain
+GpdB=10*log10(Gp)//processing gain in dB
+
+Rb1=4.8*10^3
+Gp1=Bc/Rb1
+Gp1dB=10*log10(Gp1)
+
+Rb2=2.4*10^3
+Gp2=Bc/Rb2
+Gp2dB=10*log10(Gp2)
+
+Rb3=1.2*10^3
+Gp3=Bc/Rb3
+Gp3dB=10*log10(Gp3)
+
+Rb4=19.2*10^3
+Gp4=Bc/Rb4
+Gp4dB=10*log10(Gp4)
+disp(GpdB,'processing gain in dB Gp(dB) at the baseband data rate of 9.6kbps')
+disp(Gp1dB,'processing gain in dB Gp(dB) at the baseband data rate of 4.8kbps')
+disp(Gp2dB,'processing gain in dB Gp(dB) at the baseband data rate of 2.4kbps')
+disp(Gp3dB,'processing gain in dB Gp(dB) at the baseband data rate of 1.2kbps')
+disp(Gp4dB,'processing gain in dB Gp(dB) at the baseband data rate of 19.2kbps')
diff --git a/2081/CH12/EX12.12/Ex12_12.sce b/2081/CH12/EX12.12/Ex12_12.sce
new file mode 100755
index 000000000..0d4fe6050
--- /dev/null
+++ b/2081/CH12/EX12.12/Ex12_12.sce
@@ -0,0 +1,4 @@
+N=(2^42-1)
+TDR=19200//transmission data rate
+t=N/TDR;
+printf('time taken to transit the complete long code= %.2f years',(t/(60*60*24*365)))
diff --git a/2081/CH12/EX12.13/Ex12_13.sce b/2081/CH12/EX12.13/Ex12_13.sce
new file mode 100755
index 000000000..b81030380
--- /dev/null
+++ b/2081/CH12/EX12.13/Ex12_13.sce
@@ -0,0 +1,7 @@
+Prm=-85
+Ptm=-76-Prm
+Ptrm=5
+Diff=Ptm-Ptrm
+t1dB=1.25
+t=Diff*t1dB//time for adjusting
+disp(t,'time needed to adjust mobile transmitter level in msecs')
diff --git a/2081/CH12/EX12.15/Ex12_15.sce b/2081/CH12/EX12.15/Ex12_15.sce
new file mode 100755
index 000000000..499e628c8
--- /dev/null
+++ b/2081/CH12/EX12.15/Ex12_15.sce
@@ -0,0 +1,12 @@
+d1=1*10^3//dist.direct sig. from A
+d11=1.5*10^3//dist.A and building
+d12=0.5*10^3//dist.mobile and building
+d2=d11+d12//dist.reflected sig.
+d3=3*10^3//dist.direct sig. from B
+c=3*10^8
+D1=(d3-d1)
+t1=D1/c//delay direct signal from A
+D2=(d3-d2)
+t2=D2/c//delay reflected signal from A
+printf('time delay for direct signal from A= %.2f microsecs',t1*10^6)
+printf('\ntime delay for reflected signal from A= %.2f microsecs',t2*10^6)
diff --git a/2081/CH12/EX12.17/Ex12_17.sce b/2081/CH12/EX12.17/Ex12_17.sce
new file mode 100755
index 000000000..566b90709
--- /dev/null
+++ b/2081/CH12/EX12.17/Ex12_17.sce
@@ -0,0 +1,10 @@
+Y=4
+d1=100
+B=1//(say)
+Ptm=1//(say)
+Prm1=B*Ptm/(d1)^Y
+d2=10000
+Prm2=B*Ptm/(d2)^Y
+Prm1IPrm2=Prm1/Prm2//expected differnce in recieved power level
+Prm1IPrm2dB=10*log10(Prm1IPrm2)
+printf('expected differnce in recieved power level=%.f dB',-Prm1IPrm2dB)
diff --git a/2081/CH12/EX12.18/Ex12_18.sce b/2081/CH12/EX12.18/Ex12_18.sce
new file mode 100755
index 000000000..bcc9cbd99
--- /dev/null
+++ b/2081/CH12/EX12.18/Ex12_18.sce
@@ -0,0 +1,9 @@
+EbINodB=-1.59//shannon limit in (AWGN)
+EbINo=10^(EbINodB/10)
+M=1/EbINo//theoretical mobile users
+
+EbINodB1=6
+EbINo1=10^(EbINodB1/10)
+M1=1/EbINo1//practical mobile users
+printf('theoretical number of mobile users,M= %.2f Gp',M)
+printf('\npractical number of mobile users,M= %.2f Gp for Eb/No=6dB',M1)
diff --git a/2081/CH12/EX12.19/Ex12_19.sce b/2081/CH12/EX12.19/Ex12_19.sce
new file mode 100755
index 000000000..22bf02a97
--- /dev/null
+++ b/2081/CH12/EX12.19/Ex12_19.sce
@@ -0,0 +1,16 @@
+Bc=1.25*10^6
+Rb=9.6*10^3
+Gp=Bc/Rb
+GpdB=10*log10(Gp)
+
+EbINodB=6
+EbINo=10^(EbINodB/10)
+
+p=0.5//interference factor
+a=.85//power control accuracy factor
+v=.6//voice activity factor
+Y=2.55//improvement from sectorisation
+M=(Gp/(EbINo))*(1/(1+p))*a*(1/v)*Y//no. of mobile users per cell
+Ns=3
+Nmps=M/Ns
+disp(Nmps,'no. of mobile users per sector')
diff --git a/2081/CH12/EX12.3/Ex12_3.sce b/2081/CH12/EX12.3/Ex12_3.sce
new file mode 100755
index 000000000..3c3d458aa
--- /dev/null
+++ b/2081/CH12/EX12.3/Ex12_3.sce
@@ -0,0 +1,12 @@
+Rc=10*10^6//code rate
+Bc=Rc//RF bandwidth=code rate
+Rb=4.8*10^3//info. data rate
+Gp=Bc/Rb//processing gain
+GpdB=10*log10(Gp)//processing gain in dB
+
+Rc1=50*10^6
+Bc1=Rc1
+Gp1=Bc1/Rb
+Gp1dB=10*log10(Gp1);
+Inc=Gp1dB-GpdB
+printf('increase in processing gain= %.1f dB',Inc+0.1);
diff --git a/2081/CH12/EX12.4/Ex12_4.sce b/2081/CH12/EX12.4/Ex12_4.sce
new file mode 100755
index 000000000..0ea7b47b4
--- /dev/null
+++ b/2081/CH12/EX12.4/Ex12_4.sce
@@ -0,0 +1,12 @@
+Bc=1.25*10^6
+Rb=9600
+
+SrmindB=3
+Srmin=10^(SrmindB/10)
+Mmax=(Bc/Rb)*(1/Srmin)//maximum no. of simultaneous users
+
+SrmaxdB=9
+Srmax=10^(SrmaxdB/10)
+Mmin=(Bc/Rb)*(1/Srmax)//minimum no. of simultaneous users
+
+mprintf('A single cell IS-95 CDMA system can support from %i to %f users',Mmin,Mmax)
diff --git a/2081/CH12/EX12.5/Ex12_5.sce b/2081/CH12/EX12.5/Ex12_5.sce
new file mode 100755
index 000000000..543a7a8f3
--- /dev/null
+++ b/2081/CH12/EX12.5/Ex12_5.sce
@@ -0,0 +1,9 @@
+ImaipNodB=6
+ImaipNo=10^(ImaipNodB/10)
+NopImai=1/ImaipNo
+SINRdB=8
+SINR=10^(SINRdB/10)//signal to noise ratio
+Q=128//total spreading factor
+a=.55//relative intercellular interfernce factor
+M=Q/((1+a)*(1+NopImai)*SINR)
+disp(M,'users per cell')
diff --git a/2081/CH12/EX12.6/Ex12_6.sce b/2081/CH12/EX12.6/Ex12_6.sce
new file mode 100755
index 000000000..2e2d6690e
--- /dev/null
+++ b/2081/CH12/EX12.6/Ex12_6.sce
@@ -0,0 +1,6 @@
+Gv=2.5//interfernce reduction factor
+Ga=2.5//antenna sectorisation gain factor
+a=1.6//interfence increase factor
+Pf=(Gv*Ga)/a
+PfdB=10*log10(Pf)
+disp(PfdB,'perfomance improvement factor Pf in dB')
diff --git a/2081/CH12/EX12.7/Ex12_7.sce b/2081/CH12/EX12.7/Ex12_7.sce
new file mode 100755
index 000000000..2f78fb35b
--- /dev/null
+++ b/2081/CH12/EX12.7/Ex12_7.sce
@@ -0,0 +1,15 @@
+Bc=1.25*10^6
+Rb=9600
+PfdB=6
+Pf=10^(PfdB/10)
+SrmindB=3
+Srmin=10^(SrmindB/10)
+Mmax=((Bc/Rb)*(1/Srmin))*(Pf)//maximum users
+
+SrmaxdB=9
+Srmax=10^(SrmaxdB/10)
+Mmin=((Bc/Rb)*(1/Srmax))*(Pf)//minimum users
+
+
+mprintf('A single cell IS-95 CDMA system can support from %i to %f users',Mmin,Mmax)
+
diff --git a/2081/CH12/EX12.8/Ex12_8.sce b/2081/CH12/EX12.8/Ex12_8.sce
new file mode 100755
index 000000000..9f97a1f66
--- /dev/null
+++ b/2081/CH12/EX12.8/Ex12_8.sce
@@ -0,0 +1,4 @@
+BW=1.25*10^6
+CR=1.2288*10^6//chip rate
+BWef=CR/BW
+disp(BWef,'bandwidth efficiency in chips/s/Hz')