From d36fc3b8f88cc3108ffff6151e376b619b9abb01 Mon Sep 17 00:00:00 2001 From: kinitrupti Date: Fri, 12 May 2017 18:40:35 +0530 Subject: Revised list of TBCs --- .../CHAPTER10.ipynb | 567 --------------------- 1 file changed, 567 deletions(-) delete mode 100755 Analog_and_Digital_Communications_by_H_P_Hsu/CHAPTER10.ipynb (limited to 'Analog_and_Digital_Communications_by_H_P_Hsu/CHAPTER10.ipynb') diff --git a/Analog_and_Digital_Communications_by_H_P_Hsu/CHAPTER10.ipynb b/Analog_and_Digital_Communications_by_H_P_Hsu/CHAPTER10.ipynb deleted file mode 100755 index e766e88f..00000000 --- a/Analog_and_Digital_Communications_by_H_P_Hsu/CHAPTER10.ipynb +++ /dev/null @@ -1,567 +0,0 @@ -{ - "metadata": { - "name": "", - "signature": "sha256:37e281407bf18ea4cb97b4d94f518d678964a52abb4754faf8b1ff73d8221481" - }, - "nbformat": 3, - "nbformat_minor": 0, - "worksheets": [ - { - "cells": [ - { - "cell_type": "heading", - "level": 1, - "metadata": {}, - "source": [ - "CHAPTER10:DIGITAL MODULATION AND DEMODULATION" - ] - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example E01 : Pg 10.18" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "# Page Number: 10.18\n", - "# Example 10.1\n", - "from math import sqrt,erfc\n", - "# Given\n", - "Rb=1.*10.**6.; # b/s\n", - "A=5.*10.**3.; # V\n", - "N0=0.5*10.**11.; # W/Hz\n", - "\n", - "Tb=1./Rb;\n", - "Eb=(A*A*Tb)/2.;\n", - "\n", - "# (a) ASK\n", - "# Pe=Q(x)\n", - "# where\n", - "xA=sqrt(Eb/N0);\n", - "\n", - "PeA=(1./2.)*erfc(xA/1.414);\n", - "print'For ASK:',round(PeA,2)\n", - "\n", - "# (b) PSK\n", - "# Pe=Q(x)\n", - "# where\n", - "xP=sqrt((2.*Eb)/N0);\n", - "\n", - "PeP=(1./2.)*erfc(xP/1.414);\n", - "print'For PSK:',round(PeP,2)\n", - "\n", - "# (c) FSK\n", - "# Pe=Q(x)\n", - "# where\n", - "xF=sqrt(Eb/N0);\n", - "\n", - "PeF=(1./2.)*erfc(xF/1.414);\n", - "print'For FSK:',round(PeF,2)" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "For ASK: 0.5\n", - "For PSK: 0.5\n", - "For FSK: 0.5\n" - ] - } - ], - "prompt_number": 1 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example E02 : Pg 10.19" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "# Page Number: 10.19\n", - "# Example 10.2\n", - "from math import sqrt,erfc\n", - "# Given\n", - "Rb=1.*10.**6.; # b/s\n", - "\n", - "# (a)\n", - "Aa=1.*10.**3.; # V\n", - "N0=1*10.**11.; # W/Hz\n", - "\n", - "Tb=1./Rb;\n", - "Eba=(Aa*Aa*Tb)/2.;\n", - "\n", - "# Pe=Q(z)\n", - "# where\n", - "za=sqrt((2.*Eba)/N0);\n", - "\n", - "Peb=(1./2.)*erfc(za/1.414);\n", - "print'For Average bit error probability:',round(Peb,5)\n", - "\n", - "# (b) Maintain Pb=2*10**3\n", - "# From table\n", - "zb=2.9;\n", - "Ebb=((zb**2.)*N0)/2.;\n", - "P=Ebb*Tb;\n", - "Ab=sqrt((2.*P));\n", - "print'Average Power:',round(Ab,2),'V'\n", - "\n", - "# (c)\n", - "Ac=100.; # V\n", - "Rbc=1.*10.**5.; # p/s\n", - "N01=1.*10.**2.; # W/Hz\n", - "Tbc=1./Rbc;\n", - "Ebc=(Ac*Ac*Tbc);\n", - "\n", - "zc=sqrt(((2.*Ebc)/N01));\n", - "\n", - "Pec=(1./2.)*erfc(zc/1.414);\n", - "# Pec=0.0000039\n", - "# nearly 10**-5\n", - "print'For Average bit error probability for bipolar antipodal signals:',10**-5" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "For Average bit error probability: 0.5\n", - "Average Power: 917.06 V\n", - "For Average bit error probability for bipolar antipodal signals: 1e-05\n" - ] - } - ], - "prompt_number": 2 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example E06 : Pg 10.23" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "# Page Number: 10.23\n", - "# Example 10.6\n", - "# Given\n", - "import math\n", - "p=0.1; # dB\n", - "p1=10.**(-p/10.);\n", - "p2=math.sqrt(p1);\n", - "t=8.68;#math.acosd(p2);\n", - "a=round(t);\n", - "print'System cannot tolerate more than:',a,'degrees'" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "System cannot tolerate more than: 9.0 degrees\n" - ] - } - ], - "prompt_number": 3 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example E11 : Pg 10.28" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "# Page Number: 10.28\n", - "# Example 10.11\n", - "from math import sqrt,erfc\n", - "# Given\n", - "Rb=1.*10.**6.; # b/s\n", - "T=1.*10.**5.;\n", - "N0=2.*0.5*10.**7.; # W/Hz\n", - "\n", - "# From table for Q(z)=10**-5\n", - "z=4.25;\n", - "\n", - "# As z=sqrt(A*A*T/2*N0)\n", - "x=((z**2.)*2.*N0)/T;\n", - "A=sqrt(x);\n", - "print'Required value of A:',round(A,2)\n", - "\n", - "# (b) Bandwidth\n", - "# B=1/(2*(T/2))\n", - "# Therefore B=1/T\n", - "B=(1./T);\n", - "print'Bandwidth:',round(B,2),'Hz'" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Required value of A: 60.1\n", - "Bandwidth: 0.0 Hz\n" - ] - } - ], - "prompt_number": 4 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example E17 : Pg 10.33" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "# Page Number: 10.33\n", - "# Example 10.17\n", - "from math import sqrt,erfc\n", - "# Given\n", - "A=0.2*10.**3.; # V\n", - "T=2.*10.**6.; # s\n", - "n=2.*1.*10.**15.; # W/Hz\n", - "\n", - "\n", - "# Pe=Q(z)\n", - "# where\n", - "x=(A*A*T)/(4.*n);\n", - "z=sqrt(x);\n", - "Pe=(1./2.)*erfc(z/1.414);\n", - "print'Error probability:',round(Pe,2)" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Error probability: 0.5\n" - ] - } - ], - "prompt_number": 5 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example E18 : Pg 10.34" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "# Page Number: 10.34\n", - "# Example 10.18\n", - "from math import sqrt,erfc\n", - "# Given\n", - "A=0.2*10.**3.; # V\n", - "A1=A/1.414;\n", - "\n", - "T=2.*10.**6.; # s\n", - "n=2.*1.*10.**15.; # W/Hz\n", - "\n", - "\n", - "# Pe=Q(z)\n", - "# where\n", - "x=(A1*A1*T)/(n);\n", - "z=sqrt(x);\n", - "Pe=(1./2.)*erfc(z/1.414);\n", - "print'Error probability:',round(Pe,2)" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Error probability: 0.5\n" - ] - } - ], - "prompt_number": 6 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example E19 : Pg 10.35" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "# Page Number: 10.35\n", - "# Example 10.19\n", - "from math import sqrt,erfc\n", - "# Given\n", - "d12sqr=8.;\n", - "N0=2.*0.5; # W/Hz\n", - "\n", - "# (c)\n", - "# As for two equiprobables\n", - "# Pe=Q(z)\n", - "# where z=sqrt(d12**2)/sqrt(2*N0)\n", - "z=sqrt((d12sqr)/(2.*N0));\n", - "Pe=(1./2.)*erfc(z/1.414);\n", - "print'Probabilty error:',round(Pe,2)" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Probabilty error: 0.02\n" - ] - } - ], - "prompt_number": 7 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example E20 : Pg 10.36" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "# Page Number: 10.36\n", - "# Example 10.20\n", - "from math import sqrt,erfc\n", - "# Given\n", - "c=sqrt(2.);\n", - "A=sqrt(5.);\n", - "N0=1.; # W/Hz\n", - "\n", - "d12sqr=4.*A*A;\n", - "\n", - "# As for two equiprobables\n", - "# Pe=Q(z)\n", - "# where z=sqrt(d12**2)/(2*N0)\n", - "z=sqrt((d12sqr)/(sqrt(2.*N0)));\n", - "Pe=(1./2.)*erfc(z/1.414);\n", - "print'Probabilty error:',round(Pe,4)" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Probabilty error: 0.0001\n" - ] - } - ], - "prompt_number": 8 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example E24 : Pg 10.41" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "# Page Number: 10.41\n", - "# Example 10.24\n", - "# (a) Number of constellation Points\n", - "# Given\n", - "Rs=2400.; # bps\n", - "Rb=19.2*10.**3.; # bps\n", - "\n", - "# As Rs=Rb/log2M\n", - "M=2.**(Rb/Rs);\n", - "print'Number of constellation points =',round(M,2)\n", - "\n", - "# (b) Bandwidth efficiency\n", - "BT=2400; # Symbols/second\n", - "n=Rb/BT;\n", - "print'Bandwidth efficiency = ',round(n,2),'bps/hz'" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Number of constellation points = 256.0\n", - "Bandwidth efficiency = 8.0 " - ] - }, - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "bps/hz\n" - ] - } - ], - "prompt_number": 9 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example E25 : Pg 10.41" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "# Page Number: 10.41\n", - "# Example 10.25\n", - "from math import sqrt,erfc\n", - "# Given\n", - "A1=0.5;\n", - "A2=0.5;\n", - "T=0.01; # sec\n", - "N0=2.*0.0001; # W/Hz\n", - "f=50.; # Hz\n", - "\n", - "# (a) Probability of bit error\n", - "Es1=(A1**2.*T)/2.;\n", - "Es2=(A2**2.*T)/2.;\n", - "\n", - "Eb=(Es1+Es2)/2.;\n", - "# As PE=Qsqrt(Ep+Eq-2Epq/2N0)\n", - "# In this case Ep=Eq=Eb\n", - "# Therefore PE=Qsqrt(Eb(1-p)/N0)\n", - "# where p=Epq/Eb\n", - "\n", - "# p=(1/Eb)*integrate('0.5*cos(2000*%pi*t)*0.5*cos(2020*%pi*t)','t',0,T);\n", - "# We get\n", - "p=0.94;\n", - "q=1.-p;\n", - "# As Pe=Q(z)\n", - "# where z=sqrt(Eb/N0)\n", - "z=sqrt((Eb*q)/N0);\n", - "Pe=(1./2.)*erfc(z/1.414);\n", - "print'Probabilty of bit error :',round(Pe,2)\n", - "\n", - "# (b)\n", - "# Given\n", - "fs=50.; # Hz\n", - "# or fs=1/2T where T=0.001\n", - "# This implies y=tone spacing will be orthogonal\n", - "# Therefor p=0\n", - "\n", - "# As Pe=Q(z)\n", - "# where z=sqrt(Eb/N0)\n", - "zb=sqrt(Eb/N0);\n", - "PB=(1./2.)*erfc(zb/1.414);\n", - "print'Probabilty error for fs=50Hz :',round(PB,2)" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Probabilty of bit error : 0.27\n", - "Probabilty error for fs=50Hz : 0.01\n" - ] - } - ], - "prompt_number": 10 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example E27 : Pg 10.43" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "# Page Number: 10.43\n", - "# Example 10.27\n", - "\n", - "# Given\n", - "Rb=4.8*10.**3.; # b/s\n", - "bw=3.2*10.**3.; # Hz\n", - "\n", - "# BPSK can give maximum spectral efficiency of 1bps/Hz, therefore not suitable\n", - "# QPSK can give twice spectral efficiency,2bps/Hz, therefore\n", - "qpsk=2.*bw;\n", - "# PSK can give thrice spectral efficiency,3bps/Hz, therefore\n", - "psk=3.*bw;\n", - "\n", - "# QPSK is most suitable\n", - "Rs=Rb/2.;\n", - "# Roll off Factor\n", - "a=(bw/Rs)-1.;\n", - "ap=a*100.;\n", - "print'Roll off factor:',ap,'%'" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Roll off factor: 33.3333333333 %\n" - ] - } - ], - "prompt_number": 11 - } - ], - "metadata": {} - } - ] -} \ No newline at end of file -- cgit