From b1f5c3f8d6671b4331cef1dcebdf63b7a43a3a2b Mon Sep 17 00:00:00 2001 From: priyanka Date: Wed, 24 Jun 2015 15:03:17 +0530 Subject: initial commit / add all books --- 401/CH13/EX13.1/Example13_1.sce | 18 +++++++++++++++ 401/CH13/EX13.2/Example13_2.sce | 23 +++++++++++++++++++ 401/CH13/EX13.3/Example13_3.sce | 33 ++++++++++++++++++++++++++ 401/CH13/EX13.4/Example13_4.sce | 22 ++++++++++++++++++ 401/CH13/EX13.5/Example13_5.sce | 51 +++++++++++++++++++++++++++++++++++++++++ 401/CH13/EX13.6/Example13_6.sce | 20 ++++++++++++++++ 6 files changed, 167 insertions(+) create mode 100755 401/CH13/EX13.1/Example13_1.sce create mode 100755 401/CH13/EX13.2/Example13_2.sce create mode 100755 401/CH13/EX13.3/Example13_3.sce create mode 100755 401/CH13/EX13.4/Example13_4.sce create mode 100755 401/CH13/EX13.5/Example13_5.sce create mode 100755 401/CH13/EX13.6/Example13_6.sce (limited to '401/CH13') diff --git a/401/CH13/EX13.1/Example13_1.sce b/401/CH13/EX13.1/Example13_1.sce new file mode 100755 index 000000000..32b4ac7ad --- /dev/null +++ b/401/CH13/EX13.1/Example13_1.sce @@ -0,0 +1,18 @@ +//Example 13.1 +//Program to estimate the maximum temperature change that could +//be allowed for the local oscillator laser + +clear; +clc ; +close ; + +//Given data +IF=1.5*10^6; //Hz - NOMINAL IF +del_f=19*10^6; //Hz/C - OUTPUT FREQUENCY CHANGE + +//Maximum temperature change that could be allowed +f=0.1*IF; +Max_temp_change=f/del_f; + +//Displaying the Result in Command Window +printf("\n\n\t Maximum temperature change that could be allowed for the local oscillator laser is %0.3f C .",Max_temp_change); \ No newline at end of file diff --git a/401/CH13/EX13.2/Example13_2.sce b/401/CH13/EX13.2/Example13_2.sce new file mode 100755 index 000000000..149ff0874 --- /dev/null +++ b/401/CH13/EX13.2/Example13_2.sce @@ -0,0 +1,23 @@ +//Example 13.2 +//Program to determine the operating bandwidth of the receiver + +clear; +clc ; +close ; + +//Given data +SNL=-85.45; //dBm - SHOT NOISE LIMIT +eeta=0.86; //*100 percent - EFFICIENCY FOR IDEAL RECEIVER +Lambda=1.54*10^(-6); //metre - OPERATING WAVELENGTH +SNR=12; //dB - SIGNAL TO NOISE RATIO +h= 6.626*10^(-34); //J/K - PLANK's CONSTANT +c=2.998*10^8; //m/s - VELOCITY OF LIGHT IN VACCUM + +//Incoming Signal Power +Ps=10^(SNL/10); + +//Operating bandwidth of the receiver +B=eeta*Ps*Lambda/(h*c*10^(SNR/10)); + +//Displaying the Result in Command Window +printf("\n\n\t Operating bandwidth of the receiver, B = %0.1f GHz.",B/10^9); \ No newline at end of file diff --git a/401/CH13/EX13.3/Example13_3.sce b/401/CH13/EX13.3/Example13_3.sce new file mode 100755 index 000000000..d729c9102 --- /dev/null +++ b/401/CH13/EX13.3/Example13_3.sce @@ -0,0 +1,33 @@ +//Example 13.3 +//Program to calculate the number of received photons per bit for: +//(a)ASK heterodyne synchronous detection +//(b)ASK heterodyne asynchronous detection +//(c)PSK homodyne detection + +clear; +clc ; +close ; + +//Given data +eeta=1; //*100 percent - EFFICIENCY FOR IDEAL RECEIVER +BER=10^(-9); //BIT ERROR RATE + +//Number of received photons per bit for: +printf("\n\n\t Number of received photons per bit for:"); +//(a)ASK heterodyne synchronous detection +Np=(erfinv(1-2*BER))^2*4/eeta; //erfc(x)=1-erf(x) + +//Displaying the Result in Command Window +printf("\n\n\t (a)ASK heterodyne synchronous detection = %1.0f.",Np/2); + +//(b)ASK heterodyne asynchronous detection +Np=-log(2*BER)*4/eeta; + +//Displaying the Result in Command Window +printf("\n\n\t (b)ASK heterodyne asynchronous detection = %1.0f.",Np/2); + +//(c)PSK homodyne detection +Np=(erfinv(1-2*BER))^2/2; //erfc(x)=1-erf(x) + +//Displaying the Result in Command Window +printf("\n\n\t (c)PSK homodyne detection = %1.0f.",Np); \ No newline at end of file diff --git a/401/CH13/EX13.4/Example13_4.sce b/401/CH13/EX13.4/Example13_4.sce new file mode 100755 index 000000000..860e83aad --- /dev/null +++ b/401/CH13/EX13.4/Example13_4.sce @@ -0,0 +1,22 @@ +//Example 13.4 +//Program to calculate the minimum incoming power level + +clear; +clc ; +close ; + +//Given data +K=1; //CONSTANT FOR HETERODYNE DETECTION +Z=1; //CONSTANT FOR FSK MODULAION SCHEME +eeta=1; //*100 percent - QUANTUM EFFICIENCY +Bt=400*10^6; //bps - TRANSMISSION RATE +BER=10^(-9); //BIT ERROR RATE +h= 6.626*10^(-34); //J/K - PLANK's CONSTANT +c=2.998*10^8; //m/s - VELOCITY OF LIGHT IN VACCUM +Lambda=1.55*10^(-6); //metre - OPERATING WAVELENGTH + +//Minimum incoming peak power level +Ps=(erfinv(1-2*BER))^2*2*h*c*Bt/Lambda; //erfc(x)=1-erf(x) + +//Displaying the Result in Command Window +printf("\n\n\t Minimum incoming peak power level is %0.1f nW or %0.1f dBm.",Ps/10^(-9),10*log10(Ps/(1*10^(-3)))); \ No newline at end of file diff --git a/401/CH13/EX13.5/Example13_5.sce b/401/CH13/EX13.5/Example13_5.sce new file mode 100755 index 000000000..0ace692e3 --- /dev/null +++ b/401/CH13/EX13.5/Example13_5.sce @@ -0,0 +1,51 @@ +//Example 13.5 +//Program to calculate the absolute maximum repeater spacing for the +//following ideal receiver types: +//(a)ASK heterodyne synchronous detection +//(b)PSK homodyne detection + +clear; +clc ; +close ; + +//Given data +Np=36; //Average photons per bit - FROM EXAMPLE 13.3 +h= 6.626*10^(-34); //J/K - PLANK's CONSTANT +c=2.998*10^8; //m/s - VELOCITY OF LIGHT IN VACCUM +Lambda=1.55*10^(-6); //metre - OPERATING WAVELENGTH + +//(a)ASK heterodyne synchronous detection +Np=36; //Average photons per bit - FROM EXAMPLE 13.3 +//For 50 Mbit/s Transmission Rate +Bt=50*10^6; //bit/sec - GIVEN TRANSMISSION RATE +Ps=Np*h*c*Bt/Lambda; +Max_system_margin=4-10*log10(Ps/(1*10^(-3))); +Max_repeater_spacing=Max_system_margin/0.2; +//Displaying the Result in Command Window +printf("\n\n\t (a)ASK : Maximum repeater spacing for %1.0f Mbit/s transmission rate is %1.0f km.",Bt/10^6,Max_repeater_spacing); + +//For 1 Gbit/s Transmission Rate +Bt=1*10^9; //bit/sec - GIVEN TRANSMISSION RATE +Ps=Np*h*c*Bt/Lambda; +Max_system_margin=4-10*log10(Ps/(1*10^(-3))); +Max_repeater_spacing=Max_system_margin/0.2; +//Displaying the Result in Command Window +printf("\n\n\t Maximum repeater spacing for %1.0f Gbit/s transmission rate is %1.0f km.",Bt/10^9,Max_repeater_spacing); + +//(b)PSK homodyne detection +Np=9; //Average photons per bit - FROM EXAMPLE 13.3 +//For 50 Mbit/s Transmission Rate +Bt=50*10^6; //bit/sec - GIVEN TRANSMISSION RATE +Ps=Np*h*c*Bt/Lambda; +Max_system_margin=4-10*log10(Ps/(1*10^(-3))); +Max_repeater_spacing=Max_system_margin/0.2; +//Displaying the Result in Command Window +printf("\n\n\t (b)PSK : Maximum repeater spacing for %1.0f Mbit/s transmission rate is %1.0f km.",Bt/10^6,Max_repeater_spacing); + +//For 1 Gbit/s Transmission Rate +Bt=1*10^9; //bit/sec - GIVEN TRANSMISSION RATE +Ps=Np*h*c*Bt/Lambda; +Max_system_margin=4-10*log10(Ps/(1*10^(-3))); +Max_repeater_spacing=Max_system_margin/0.2; +//Displaying the Result in Command Window +printf("\n\n\t Maximum repeater spacing for %1.0f Gbit/s transmission rate is %1.0f km.",Bt/10^9,Max_repeater_spacing); \ No newline at end of file diff --git a/401/CH13/EX13.6/Example13_6.sce b/401/CH13/EX13.6/Example13_6.sce new file mode 100755 index 000000000..08d964798 --- /dev/null +++ b/401/CH13/EX13.6/Example13_6.sce @@ -0,0 +1,20 @@ +//Example 13.6 +//Program to estimate the minimum transmitter power requirement for +//an optical coherent WDM + +clear; +clc ; +close ; + +//Given data +Np=150; //photons per bit - RECEPTION +h= 6.626*10^(-34); //J/K - PLANK's CONSTANT +c=2.998*10^8; //m/s - VELOCITY OF LIGHT IN VACCUM +B_fib=20*10^12; //Hz - OPTICAL BANDWIDTH +Lambda=1.3*10^(-6); //metre - SHORTEST WAVELENGTH + +//Minimum transmitter power requirement for an optical coherent WDM +Ptx=Np*h*c*B_fib/Lambda; + +//Displaying the Result in Command Window +printf("\n\n\t Minimum transmitter power requirement for an optical coherent WDM is %0.1f mW or %1.0f dBm .",Ptx/10^(-3), 10*log10(Ptx/(1*10^(-3)))); \ No newline at end of file -- cgit