In [1]:

```
# To find the intermodulation frequencies generated
# Given data
f1=1930# # First carrier frequency
f2=1932# # second carrier frequency
F1=1920# # Lower frequency of the band
F2=1940# # Upper frequency of the band
for n in range(0,4):
x1=(2*n+1)*f1-2*n*f2
if x1 <= F2:
print '\n IF frequency %0.0f MHz lies inside the band'%(x1)#
else:
print '\n IF frequency %0.0f MHz lies outside the band'%(x1)#
for n in range(0,4):
x2=(2*n+2)*f1-(2*n+1)*f2
if x2 <= F2:
print '\n IF frequency %0.0f MHz lies inside the band'%(x2)#
else:
print '\n IF frequency %0.0f MHz lies outside the band'%(x2)#
for n in range(0,4):
x3=(2*n+1)*f2-2*n*f1
if x3 <= F2 :
print '\n IF frequency %0.0f MHz lies inside the band'%(x3)#
else:
print '\n IF frequency %0.0f MHz lies outside the band'%(x3)#
for n in range(0,4):
x4=(2*n+2)*f2-(2*n+1)*f1
if x4 <= F2:
print '\n IF frequency %0.0f MHz lies inside the band'%(x4)#
else:
print '\n IF frequency %0.0f MHz lies outside the band'%(x4)#
```

In [2]:

```
# To find number of channels available
# Given data
Bt=12.5*10**6# # Total spectrum allocation in Hz
Bguard=10*10**3# # Guard band allocated in Hz
Bc=30*10**3# # Channel bandwidth in Hz
# The number of channels available
N=(Bt-2*Bguard)/Bc# # The number of channels available
# Displaying the result in command window
print '\n The number of channels available in FDMA system = %0.0f'%(N)#
```

In [3]:

```
# To find number of simultaneous users accommodated in GSm
# Given data
m=8# # Maximum speech channels supported by single radio channel
Bc=200*10**3# # Radio channel bandwidth in Hz
Bt=25*10**6# # Total spectrum allocated for forward link
Bguard=0# # Guard band allocated in Hz
# The number of simultaneous users accommodated in GSm
N=(m*(Bt-2*Bguard))/Bc# # The number of simultaneous users
# Displaying the result in command window
print '\n The number of simultaneous users accommodated in GSM system = %0.0f'%(N)#
```

In [4]:

```
# To find a)the time duration of a bit b)the time duration of a slot c)the time duration of a frame d)how long must a user occupying single time slot wait between two successive transmission
# Given data
N=8# # Number of time slots in each frame
Nb=156.25# # Number of in each time slot
DR=270.833*10**3# # Data rate of transmission in channel
# a)To find the time duration of a bit
Tb=1/DR# # The time duration of a bit in sec
# b)To find the time duration of a slot
Tslot=Nb*Tb# # The time duration of a slot
# c)To find the time duration of a frame
Tf=N*Tslot# # The time duration of a frame
#d) The waiting time between two successive transmission
Tw=Tf# # The arrival time of new frame for its next transmission
# Displaying the result in command window
print '\n The time duration of a bit = %0.3f microseconds'%(Tb*10**6)#
print '\n The time duration of a slot = %0.3f ms'%(Tslot*10**3)#
print '\n The time duration of a frame = %0.3f ms'%(Tf*10**3)#
print '\n The arrival time of new frame for its next transmission = %0.3f ms'%(Tw*10**3)#
```

In [5]:

```
# To find the frame efficiency
# Given data
Btrail=6# # Number of trailing bits per slot
Bg=8.25# # Number of guard bits per slot
Btrain=26# # Number of training bits per slot
Nb=2# # Number of burst
Bburst=58# # Number of bits in each burst
Nslot=8# # Number of slots in each frame
N=Btrail+Bg+Btrain+2*Bburst# # Total number of bits in each slot
Nf=Nslot*N# # Total number of bits in a frame
bOH=Nslot*Btrail+Nslot*Bg+Nslot*Btrain# # Number of overhead bits per frame
# To find the frame efficiency
nf=(1-(bOH/Nf))*100# # Frame efficiency
# Displaying the result in command window
print '\n The frame efficiency = %0.2f percentage'%(nf)#
```

In [6]:

```
from __future__ import division
from math import exp
# To determine the maximum throughput using ALOHA and slotted ALOHA
#The maximum throughput using ALOHA
Rmax=1/2# #Maximum rate of arrival calculated by equating ALOHA throughput formula derivative to zero
T=Rmax*exp(-1)# #The maximum throughput using ALOHA
# Displaying the result in command window
print '\n The maximum throughput using ALOHA = %0.4f'%(T)#
#The maximum throughput using slotted ALOHA
Rmax=1# #Maximum rate of arrival calculated by equating slotted ALOHA throughput formula derivative to zero
T=Rmax*exp(-1)# #The maximum throughput using slotted ALOHA
# Displaying the result in command window
print '\n The maximum throughput using slotted ALOHA = %0.4f'%(T)#
```

In [7]:

```
from __future__ import division
from math import log10
# To evaluate 4 different radio standards and to choose the one with maximum capacity
# Given data
ABc=30*10**3# # Channel bandwidth of system A
ACImin=18# # The tolerable value of carrier to interference ratio for system A
BBc=25*10**3# # Channel bandwidth of system B
BCImin=14# # The tolerable value of carrier to interference ratio for system B
CBc=12.5*10**3# # Channel bandwidth of system C
CCImin=12# # The tolerable value of carrier to interference ratio for system C # Value of CCImin is given wrong in book
DBc=6.25*10**3# # Channel bandwidth of system D
DCImin=9# # The tolerable value of carrier to interference ratio for system D
Bc=6.25*10**3# # Bandwidth of particular system
ACIeq=ACImin+20*log10(Bc/ABc)# # Minimum C/I for system A when compared to the (C/I)min for particular system
BCIeq=BCImin+20*log10(Bc/BBc)# # Minimum C/I for system B when compared to the (C/I)min for particular system
CCIeq=CCImin+20*log10(Bc/CBc)# # Minimum C/I for system C when compared to the (C/I)min for particular system
DCIeq=DCImin+20*log10(Bc/DBc)# # Minimum C/I for system D when compared to the (C/I)min for particular system
# Displaying the result in command window
print '\n Minimum C/I for system A when compared to the (C/I)min for particular system = %0.3f dB'%(ACIeq)#
print '\n Minimum C/I for system B when compared to the (C/I)min for particular system = %0.2f dB'%(BCIeq)#
print '\n Minimum C/I for system C when compared to the (C/I)min for particular system = %0.0f dB'%(CCIeq)#
print '\n Minimum C/I for system D when compared to the (C/I)min for particular system = %0.0f dB'%(DCIeq)#
print '\n \n Based on comparison, the smallest value of C/I should be selected for maximum capacity. So, System B offers the best capacity.'
```

In [8]:

```
# To determine the maximum number of users using a)omnidirectional base station antenna and no voice activity b)three-sectors at the base station and voice activity detection
# Given data
W=1.25*10**6# # Total RF bandwidth in Hz
R=9600# # Baseband information bit rate in bps
EbNo=10# # Minimum acceptable SNR in dB
# a)Maximum number of users using omnidirectional base station antenna and no voice activity
N1=1+(W/R)/EbNo# # Maximum number of users using omnidirectional
# b)Maximum number of users using three-sectors at the base station antenna and voice activity with alpha=3/8
alpha=3/8# # Voice activity factor
Ns=1+(1/alpha)*((W/R)/EbNo)# # Maximum number of users
N2=3*Ns# # Maximum number of users using three-sectors
# Displaying the result in command window
print '\n Maximum number of users using omnidirectional base station antenna and no voice activity = %0.0f'%(N1)#
print '\n Maximum number of users using three-sectors at the base station antenna and voice activity (with alpha=3/8) = %0.0f'%(N2)#
```