Chapter 5 : Optical Sources Laser

Example 1: PgNo-193

In [65]:
import math

# variable declaration
t=0.1*math.pow(10,-6) # pulse broading in sec
d=12 # disance in km
B=1/(2*t) # max bandwidth MHz

# Calculations
ds=t/d #dispersion in ns/km
bl=B*d # bandwidth length product

# Results
print ('%s %.1f %s' %(" The max bandwidth = ",B/pow(10,6),"MHz"))
print ('%s %.3f %s' %("\n The dispersion = ",ds*pow(10,9),"ns/km"))
print ('%s %.1f %s' %("\n bandwidth length product = ",bl/pow(10,6),"MHz km"))
 The max bandwidth =  5.0 MHz

 The dispersion =  8.333 ns/km

 bandwidth length product =  60.0 MHz km

Example 2: PgNo-194

In [66]:
import math
# Variable initialisation
t=0.1*math.pow(10,-6) # pulse broadening in sec
d=15 # disance in km
B=1/(2*t) # max bandwidth MHz
ds=t/d # dispersion in ns/km
bl=B*d # bandwidth length product

# Results
print ('%s %.1f %s' %(" The max bandwidth = ",B/pow(10,6),"MHz"))
print ('%s %.3f %s' %("\n The dispersion = ",ds*pow(10,9),"ns/km"))
print ('%s %.1f %s' %("\n bandwidth length product = ",bl/pow(10,6),"MHz km"))
 The max bandwidth =  5.0 MHz

 The dispersion =  6.667 ns/km

 bandwidth length product =  75.0 MHz km

Example 3: PgNo-197

In [67]:
import math

# Variable declaration
n1=1.465 # core refractive index
n2=1.45 #cladding refractive index
c=3*math.pow(10,8) # the speed of light in m/s
NA=math.sqrt(math.pow(n1,2)-math.pow(n2,2)) # numerical aperture
Mp=math.pow(NA,2)/(2*n1*c) # multipath pulse broadening in ns/km
bl=(1/math.pow(NA,2))*(2*n1*c) # bandwidth length product in GHz km

# Results
print ('%s %.2f' %(" The numerical aperture = ", NA))
print ('%s %.2f %s' %("\n The multipath pulse broadening = ",Mp*pow(10,9),"ns/km"))
print ('%s %.1f %s' %("\n The bandwidth length product = ",bl/pow(10,9),"GHz km"))
 The numerical aperture =  0.21

 The multipath pulse broadening =  0.05 ns/km

 The bandwidth length product =  20.1 GHz km

Example 4: PgNo-199

In [68]:
import math

# Variable declaration
ds=0.020 # material dispersion
c=3*math.pow(10,8) # the speed of light m/s
y=1.3  #wavelength in um
M=ds/(c*y) # material dispersion parameter in ps/nm/km
w=6 # spectral width in nm
l=1 # length in km
rm=w*l*M # rms pulse broadening in ns/km

# Results
print ('%s %.2f %s' %(" The material dispersion parameter = ",M*math.pow(10,12),"ps/nm/km"))
print ('%s %.2f %s' %("\n The rms pulse broadening = ",rm*math.pow(10,9),"ns/km"))
 The material dispersion parameter =  51.28 ps/nm/km

 The rms pulse broadening =  0.31 ns/km

Example 5: PgNo-201

In [69]:
import math

# Variable initialisation
wr=0.0014   # relative spectral width in nm
y=1.3*math.pow(10,-6)    # wavelength in m
w=wr*y      # spectral width in nm
ds=0.020    # material dispersion
c=3*math.pow(10,8) # the speed of light in m/s
M=ds/(c*y)  # material dispersion parameter in ps/nm/km
l=1         # length in km
rm=w*l*M    # rms pulse broadening in ns/km

print ('%s %.3f %s' %(" The rms pulse broadening = ",rm*pow(10,9)*pow(10,3),"ns/km"))
 The rms pulse broadening =  0.093 ns/km

Example 6: PgNo-205

In [70]:
import math

# Initialisation of variables
n1=1.46 # core refractive index
dl=0.01 # relative index difference
L=10*math.pow(10,3) # optical length in meter
c=3*math.pow(10,8)  # the speed of light in m/s

# calculations
dt=(L*n1*dl)/c #delay difference in s
dT=dt*math.pow(10,9)  # delay difference in ns
rm=(L*n1*dl)/(2*math.sqrt(3)*c) # rms pulse broadening s
rM=rm*math.pow(10,9) # rms pulse broadening ns
bt=0.2/rm # max bit rate in bit/sec
bT=bt/math.pow(10,6) # max bit rate in M bits/sec
bl=bt*L # bandwidth length product in Hz meter
bL=(bt*L)/(math.pow(10,6)*math.pow(10,3))  #bandwidth length product in MHz km

# Results
print ('%s %.2f %s' %(" The delay difference = ",dT,"ns"))
print ('%s %.2f %s' %("\n The rms pulse broadening = ",rM,"ns"))
print ('%s %.2f %s' %("\n The max bit rate = ",bT,"M bits/sec"))
print ('%s %.2f %s' %("\n The bandwidth length product = ",bL,"MHz km"))
 The delay difference =  486.67 ns

 The rms pulse broadening =  140.49 ns

 The max bit rate =  1.42 M bits/sec

 The bandwidth length product =  14.24 MHz km

Example 7: PgNo-208

In [71]:
import math

# Variable declaration
n1=1.5 # core refractive index
dl=0.01 # relative index difference
L=6*math.pow(10,3) # optical length in meter
c=3*math.pow(10,8) # the speed of light in m/s

# calculations
rm=(L*n1*dl)/(2*math.sqrt(3)*c) # rms pulse broadening s
rM=rm*math.pow(10,9) # rms pulse broadening ns
bt=0.2/rm # max bit rate in bit/sec
bT=bt/math.pow(10,6) # max bit rate in M bits/sec

# Results
print ('%s %.2f %s' %(" The rms pulse broadening = ",rM,"ns"))
print ('%s %.4f %s' %("\n The max bit rate = ",bT,"M bits/sec"))
 The rms pulse broadening =  86.60 ns

 The max bit rate =  2.3094 M bits/sec

Example 8: PgNo-209

In [72]:
import math

# Variable declaration
n1=1.4  # core refractive index
dl=0.012 # relative index difference
L=6*math.pow(10,3) # optical length in meter
c=3*math.pow(10,8) # the speed of light in m/s

# Calculations
dt=(L*n1*dl)/c # delay difference in s
dT=dt*math.pow(10,9) # delay difference in ns
rm=(L*n1*dl)/(2*math.sqrt(3)*c) # rms pulse broadening s
rM=rm*math.pow(10,9) # rms pulse broadening ns
bt=0.2/rm # max bit rate in bit/sec
bT=bt/math.pow(10,6) # max bit rate in M bits/sec

# Results
print ('%s %.f %s' %(" The delay difference = ",dT,"ns"))
print ('%s %.1f %s' %("\n The rms pulse broadening = ",rM,"ns"))
print ('%s %.3f %s' %("\n The max bit rate = ",bT,"M bits/sec"))
 The delay difference =  336 ns

 The rms pulse broadening =  97.0 ns

 The max bit rate =  2.062 M bits/sec

Example 9: PgNo-211

In [73]:
import math

# variable initialisation
n1=1.5 #core refractive index
c=3*math.pow(10,8) # the speed of light m/s
w=6*math.pow(10,-6) # rms spectral width in m
M=200   # material dispersion parameter in ps/nm/km
NA=0.25 # numerical aperture
w=50   # spectral width in nm
L=1    # length in m

# calculations
rm=w*L*M # rms pulse broadening in s/km
rM=rm/math.pow(10,3) # rms pulse broadening in ns/km due to material dispersion
rm1=(L*1000*math.pow((NA),2))/(4*math.sqrt(3)*n1*c) # rms pulse broadening in ns/km due to material dispersion in sec/m
rM1=rm1*math.pow(10,9) # rms pulse broadening in ns/km due to intermodel dispersion in ns/km
rmt=math.sqrt(math.pow(rM,2)+math.pow(rM1,2)) # total rms pulse broadening in ns/km
bl=0.2/(rmt*math.pow(10,-9)) # bandwidth length product in Hz km
bL=bl/math.pow(10,6) # bandwidth length product in MHz km

# Results
print ('%s %.2f %s' %(" The total rms pulse broadening = ",rmt,"ns/km"))
print ('%s %.2f %s' %("\n The bandwidth length product = ",bL,"MHz km"))
 The total rms pulse broadening =  22.40 ns/km

 The bandwidth length product =  8.93 MHz km

Example 10: PgNo-214

In [74]:
import math

# Variable declaration
yo=1320.0 # zero dispersion wavelength in nm
y=1290.0  # dispersion wavelength in nm
so=0.092 # dispersion slop
dt=(y*so/4)*(1-math.pow((yo/y),4)) #toal first order dispersion at 1290 nm in ps/nm/km
yo1=1310.0 # zero dispersion wavelength in um
y1=1550.0  # dispersion wavelength in nm
so=0.092 # dispersion slope
dt1=(y1*so/4)*(1-math.pow((yo1/y1),4)) # toal first order dispersion at 1550 nm in ps/nm/km
DM=13.5 # profile dispersion in ps/nm/km
DP=0.4  # profile dispersion in ps/nm/km
DW=dt1-(DM+DP) # wavelength dispersion in ps/nm/km

# Results
print ('%s %.2f %s' %(" The total first order dispersion at 1290 nm = ",dt,"ps/nm/km"))
print ('%s %.2f %s' %("\n The total first order dispersion at 1550 nm = ",dt1,"ps/nm/km"))
print ('%s %.2f %s' %("\n The wavelength dispersion at 1550 nm = ",DW,"ps/nm/km"))
 The total first order dispersion at 1290 nm =  -2.86 ps/nm/km

 The total first order dispersion at 1550 nm =  17.46 ps/nm/km

 The wavelength dispersion at 1550 nm =  3.56 ps/nm/km

Example 11: PgNo-218

In [75]:
import math

# variable declaration
L=6*math.pow(10,-2) # beat length in m
dy=6*math.pow(10,-9) # spectral width in m
y=1.3*math.pow(10,-6) # operating wavelength in m

# Calculations
BF=y/(L) # model birefrigence in um
Lc=math.pow(y,2)/(BF*dy) # coherence length in m
db=2*math.pi/(L) #difference beween two propagation constants
dB=(2*math.pi*BF)/y

# Results
print ('%s %.2f %s' %(" The model birefrigence = ",BF*pow(10,6),"um"))
print ('%s %.1f %s' %("\n The coherence length= ",Lc,"m"))
print ('%s %.2f' %("\n The difference beween two propagation constants= ", db))
print ('%s %.2f' %("\n The difference beween two propagation constants= ", dB))
 The model birefrigence =  21.67 um

 The coherence length=  13.0 m

 The difference beween two propagation constants=  104.72

 The difference beween two propagation constants=  104.72

Example 12: PgNo-219

In [76]:
import math

# Variable initialisation
y=0.85*math.pow(10,-6) # operating wavelength in m
L=0.5*math.pow(10,-3) # beat length in m
BF=y/(L) # model birefrigence in um
L1=75 # beat length in m
BF1=y/(L1) #model birefrigence in um

# Results
print ('%s %.4f %s' %(" The model birefrigenceat 0.5 nm = ",BF,"*10^-3"))
print ('%s %.3f %s' %("\n The model birefrigence at 75 m = ",BF1*math.pow(10,8),"*10^-8"))
 The model birefrigenceat 0.5 nm =  0.0017 *10^-3

 The model birefrigence at 75 m =  1.133 *10^-8

Example 13: PgNo-222

In [77]:
import math

# Variable declaration
Lc=100000 # coherence length in m
y=1.32*math.pow(10,-6) # operating wavelength in m
dy=1.5*math.pow(10,-9) # spectral width in m
BF=math.pow(y,2)/(Lc*dy) # model birefrigence in um
L=y/BF # beat length in m

# Results
print ('%s %.2f %s' %(" The beat length= ",L,"m"))
 The beat length=  113.64 m

Example 14: PgNo-225

In [78]:
import math

#Variable initialisation
n1=1.46 # core refractive index
NA=0.25 # numerical aperture
c=3*math.pow(10,5) # the speed of light km/s
L=7  # length in km
si=math.pow(NA,2)/(4*math.sqrt(3)*n1*c) # intermodel pulse broadening ns/km
st=si*L # total intermodel pulse broadening
BW=0.187/st # bandwidth in MHz

# Results
print ('%s %.2f %s' %(" The intermodel pulse broadening = ",st*math.pow(10,9),"ns/km"))
print ('%s %.4f %s' %("\n The bandwidth = ",BW/math.pow(10,6),"MHz"))
 The intermodel pulse broadening =  144.17 ns/km

 The bandwidth =  1.2971 MHz

Example 15: PgNo-227

In [79]:
import math

# Variable initialisation
n1=1.46 # core refractive index
df=0.025
L=500 # length in m
c=3*math.pow(10,8) # the speed of light in m/s
dt=(n1*L*math.pow(df,2))/(8*c) # max dispersion in ns/m

# Results
print ('%s %.4f %s' %(" The  max dispersion = ",dt*math.pow(10,9),"ns/m"))
print ("\n The answer in the textbook is wrong ")
 The  max dispersion =  0.1901 ns/m

 The answer in the textbook is wrong 

Example 16: PgNo-229

In [80]:
import math

# Variable initialisation
dy=15 # spectral width in nm
L=25 # optical length in km
ps=1.60 #pulse spreads in ns/km
pS=1.6 # pulse spreads in ns/km
d=pS/(dy*L) # material dispersion in ns/km^2/nm

# Results
print ('%s %.4f %s' %(" The  max dispersion = ",d,"ns/km^2/nm"))
 The  max dispersion =  0.0043 ns/km^2/nm

Example 17: PgNo-231

In [81]:
import math

#Variable declaration
n1=1.46 # core refractive index
NA=0.2 # numerical aperture
L=1.5*math.pow(10,3) # length in m
c=3*math.pow(10,8) # the spee of light in m/s
dt=(L*math.pow(NA,2))/(2*c*n1) #intermodel dispersion in ns/km

# Results
print ('%s %.3f %s' %(" The intermodel dispersion = ",dt*math.pow(10,9),"ns/km"))
 The intermodel dispersion =  68.493 ns/km

Example 18: PgNo-234

In [82]:
import math

# variable initialisation
BLP=250*math.pow(10,6) # bandwidth length product in Hz
tr=0.32/BLP  # intermodel pulse width broadening
md=75    # material dispersion in ps/nm.km
tm=2.25  # pulse broadening due to material dispersion in ns/km
tc=math.sqrt(math.pow((tr*math.pow(10,9)),2)+math.pow(tm,2)) # combine pulse broadening in ns/km
Ba=0.32/tm*math.pow(10,9)  # actual BLP in Hz.km
Bac=Ba/math.pow(10,6) # actual BLP in MHz.km

# Results
print ('%s %.2f %s' %(" The intermodel pulse width broadening = ",tr*pow(10,9),"ns/km"))
print ('%s %.2f %s' %("\n pulse broadening due to material dispersion = ",tm,"ns/km"))
print ('%s %.4f %s' %("\n The combine pulse broadening = ",tc,"ns/km"))
print ('%s %.2f %s' %("\n The actual BLP = ",Bac,"MHz.km"))
 The intermodel pulse width broadening =  1.28 ns/km

 pulse broadening due to material dispersion =  2.25 ns/km

 The combine pulse broadening =  2.5886 ns/km

 The actual BLP =  142.22 MHz.km

Example 19: PgNo-235

In [83]:
import math

# Variable declaration
L=40 # length in m
Ny=.75 # in ps/nm
dy=8  # spectral width in nm
t_mat=L*Ny*dy  # chromatic/material dispersion in ps
t_mat1=t_mat/1000 # chromatic/material dispersion in ns

# Results
print ('%s %.2f %s' %(" The chromatic/material dispersion = ",t_mat1,"ns"))
 The chromatic/material dispersion =  0.24 ns

Example 20: PgNo-237

In [84]:
import math

# Variable initialisation
y=1.3 # operating wavelength in um
md=2.80 # material dispersion in ns
wd=0.50 # waveguide dispersion in ns
wt=0.60 # width of transmitted pulse in ns

# Calculations
td=math.sqrt(math.pow(md,2)+math.pow(wd,2)) # total dispersion in ns
dt=wt+td  # received pulse width in ns
br=1/(5*dt*math.pow(10,-9)) # max bit rate bit/sec
Br=br/math.pow(10,6) # max bit rate in mbps

# Results
print ('%s %.4f %s' %(" The received pulse width = ",dt,"ns"))
print ('%s %.4f %s' %("\n The  max bit rate = ",Br,"mbps"))
 The received pulse width =  3.4443 ns

 The  max bit rate =  58.0671 mbps

Example 21: PgNo-239

In [85]:
import math

# Variable declaration
y=0.85  #  operating wavelength in um
md=2.75 # material dispersion in ns
wd=0.45 # waveguide dispersion in ns
wt=0.50 # width of transmitted pulse in ns

# Calculations
td=math.sqrt(math.pow(md,2)+math.pow(wd,2)) # total dispersion in ns
dt=wt+td # received pulse width in ns
br=1/(5*dt*math.pow(10,-9)) # max bit rate bit/sec
Br=br/math.pow(10,6) # max bit rate in mbps

# Results
print ('%s %.4f %s' %(" The received pulse width = ",dt,"ns"))
print ('%s %.2f %s' %("\n The  max bit rate = ",Br,"mbps"))
 The received pulse width =  3.2866 ns

 The  max bit rate =  60.85 mbps

Example 22: PgNo-241

In [86]:
import math

# Variable initialisation
n1=1.46 #  core refractive index
df=0.025
L=1500 # length in meter
c=3*math.pow(10,8) # the speed of ligth in m/s
md=(n1*L*df)/(c*(1-df)) # max dispersion in sec
Md=md*math.pow(10,9) # max dispersion in ns

# Results
print ('%s %.2f %s' %(" The max dispersion = ",Md,"ns"))
 The max dispersion =  187.18 ns

Example 23: PgNo-243

In [87]:
import math

# Variable initialisation
n1=1.5 #  core refractive index
L=1000 # length in meter
NA=0.22 # numerical aperture

# Calculations
dl=math.pow((NA/n1),2)/2;
c=3*math.pow(10,8) # the speed of ligth in m/s
dt=(L*n1*dl)/c #intermodel dispersion in sec
dT=dt*math.pow(10,9) # intermodel dispersion in ns

# Results
print ('%s %.2f %s' %(" The max dispersion = ",dT,"ns"))
 The max dispersion =  53.78 ns

Example 24: PgNo-246

In [88]:
import math

# Variable declaration
w=30.0 #  line width in nm
L=1.5 # length in km
d1=6.0  # in ns/km
d2=85.0 # in ps/km/nm
d3=d2/1000 # in ns/km/nm
dt=d1*L # intermodel dispersion in ns
dt1=w*d3*L # intramodel dispersion in ns
dT=math.sqrt(math.pow(dt,2)+math.pow(dt1,2)) # total dispersion in ns

# Results
print ('%s %.1f %s' %(" The max dispersion = ",dt,"ns"))
print ('%s %.3f %s' %("\n The max dispersion = ",dt1,"ns"))
print ('%s %.3f %s' %("\n The max dispersion = ",dT,"ns"))
print ("\n answer in the textbook is wrong ")
 The max dispersion =  9.0 ns

 The max dispersion =  3.825 ns

 The max dispersion =  9.779 ns

 answer in the textbook is wrong 

Example 25: PgNo-248

In [89]:
import math

# Variable initialisation
n1=1.55  # core refractive index
n2=1.48  # cladding refractive index
l=150   # fiber length in m
c=3*math.pow(10,8) #the speed of light in m/s

# calculations
dl=(math.pow(n1,2)-math.pow(n2,2))/(2*n1)
dL=0.068
dt=(l*n1*dL)/(c) # intermodel dispersion in s
dT=dt*math.pow(10,9) # intermodel dispersion in ns

# Results
print ('%s %.2f %s' %(" The intermodel dispersion = ",dT,"ns"))
 The intermodel dispersion =  52.70 ns

Example 26: PgNo-249

In [90]:
import math

# Initialisation of variables
n1=1.42 # core refractive index
dl=0.02
c=3*math.pow(10,8) # the speed of light in m/s
dt=(n1*dl)/c # intermodel disersion in sec/m
dt1=dt*1000 # intermodel disersion in sec/km
dt2=dt1*math.pow(10,9) # intermodel disersion in ns/km
# Results
print ('%s %.3f %s' %(" The intermodel dispersion per km = ",dt2,"ns/km"))
 The intermodel dispersion per km =  94.667 ns/km

Example 27: PgNo-251

In [91]:
# Results
print (" Dwg=n2*(dl/cy)*V(d^2(Vb)/dV^2)")
print ("\n Dwg=n2*(dl/cy)*V(d^2(V(1-exp(-V))))/dv^2")
print ("\n =CV(Z-V)exp(-V)")
print ("\n where C=n2(dl/cy)")
print ("\n waveguide dispersion will be zero , when V=2")
 Dwg=n2*(dl/cy)*V(d^2(Vb)/dV^2)

 Dwg=n2*(dl/cy)*V(d^2(V(1-exp(-V))))/dv^2

 =CV(Z-V)exp(-V)

 where C=n2(dl/cy)

 waveguide dispersion will be zero , when V=2

Example 28: PgNo-255

In [92]:
import math

# variable initialisation
y=900.0   # operating wavelength in nm
yo=1343.0 # wavelength in nm
so=0.095 # in ps/nm^2-km
L=150.0  #  in km
dy=50.0  # in nm

# calculations
Dy=(so*y/4)*(1-math.pow((yo/y),4)) # inps/nm-km
Dy1=Dy*(-1) # do not consider -ve sign
dt=Dy1*L*dy # pulse spreading in ps
dt1=dt/1000 # pulse spreading in ns

# Results
print ('%s %.3f %s' %(" The pulse spreading = ",dt1,"ns"))
 The pulse spreading =  634.567 ns

Example 29: PgNo-260

In [93]:
import math

# Initialisation of variables
n1=1.48 #  core refractive index
y=900  # operating wavelength in nm
yo=1343 # wavelength in nm
so=0.095 # in ps/nm^2-km
L=1.5 # in km
dy=50 # in nm
dl=0.002
c=3*math.pow(10,8) # the speed of ligth in m/s

# calculations
Dm=(so*y/4)*(1-math.pow((yo/y),4))# inps/nm-km
Dm1=Dm*(-1) # do not consider -ve sign
Vd=0.26
Dw=((n1*dl)/(c*y*math.pow(10,-9)))*(Vd);
DW=Dw*math.pow(10,6)# in ps/nm-km
dt=DW*L*dy #  pulse spreading in ps
dt1=dt/100 # pulse spreading in ns

# Results
print ('%s %.4f %s' %(" The pulse spreading = ",dt1,"ps"))
 The pulse spreading =  2.1378 ps

Example 30: PgNo-263

In [94]:
import math

# Initialisation of variables
a=4.1*math.pow(10,-6) # core radius in um
dl=0.0036
y1=1.310*math.pow(10,-6) # operating wavelength in um
y2=1.550*math.pow(10,-6)# operating wavelength in um
n1=1.4677# core refrative index at y=1.310
n2=1.4682# core refrative index at y=1.550

# Calculations
v1=(2*3.14*a*n1*math.sqrt(2*dl))/y1# normalised frequency at y=1.310
v2=(2*3.14*a*n2*math.sqrt(2*dl))/y2# normalised frequency at y=1.550
wo=a*(0.65+(1.619/math.pow(v1,1.5))+2.879/math.pow(v1,3))
wp=wo-a*(0.016+1.567/math.pow(v1,7))
wo1=a*(0.65+(1.619/math.pow(v2,1.5))+2.879/math.pow(v2,3))
wp1=wo-a*(0.016+1.567/math.pow(v2,7))

# Results
print ('%s %.4f %s' %(" The value of wo = ",wo*pow(10,6),"um"))
print ('%s %.4f %s' %("\n The value of wp = ",wp*pow(10,6),"um"))
print ('%s %.4f %s' %("\n The value of wo1 = ",wo1*pow(10,6),"um"))
print ('%s %.4f %s' %("\n The value of wp1 = ",wp1*pow(10,6),"um"))
 The value of wo =  5.2031 um

 The value of wp =  5.1253 um

 The value of wo1 =  6.2264 um

 The value of wp1 =  5.0980 um

Example 31: PgNo-268

In [95]:
import math

# Initialisation of variables
y=1.30*math.pow(10,-6) #  operating wavelength in m
dn1=math.pow(10,-6)
dn2=math.pow(10,-5)

# Calculations
db1=(dn1*2*3.14)/y# in per m
db2=(dn2*2*3.14)/y# in per m
Lp1=(2*3.14)/(db1)# beat length in m
Lp2=(2*3.14)/(db2)# beat length in m

# Results
print ('%s %.2f %s' %(" The max core radius = ",db1,"um"))
print ('%s %.2f %s' %("\n The max core radius = ",db2,"um"))
print ('%s %.2f %s' %("\n The beat length = ",Lp1,"m"))
print ('%s %.1f %s' %("\n The beat length = ",Lp2*100,"cm"))
print ("\n Hence, range of beat length; 13cm-1.3m")
 The max core radius =  4.83 um

 The max core radius =  48.31 um

 The beat length =  1.30 m

 The beat length =  13.0 cm

 Hence, range of beat length; 13cm-1.3m

Example 32: PgNo-269

In [96]:
import math

# Variable initialisation
n1=1.48     #  core refractive index
dl=0.0027
a=4.4*math.pow(10,-6) # radius in m
y=1.32*math.pow(10,-6) # operating wavelength in m
n2=n1*(1-dl)
c=3*math.pow(10,8) # the speed of ligth in m/s
v=(2*3.14*a*n1*math.sqrt(2*dl))/y
VD=0.080+0.549*math.pow((2.834-v),2)
DW=(-1)*(n2*dl*VD)/(c*y) # wavelength dispersion in s /um/m
Dw=DW*math.pow(10,6)  # wavelength dispersion in ps /nm/km

# Results
print ('%s %.4f %s' %(" The wavelength dispersion =  ",Dw,"ps n/m/km"))
 The wavelength dispersion =   -2.5213 ps n/m/km

Example 33: PgNo-271

In [97]:
import math

#Variable initialisation
n1=1.48 #  core refractive index
dl=0.01 #  refractive index difference
c=3*math.pow(10,8) # the speed of light in m/s
y=1.55 # wavelength in um
DM=7.0 # in ps/nm-km
DW=(-1)*DM # in ps/nm-km

# calculations
X=math.pow(-10,12)*(n1*dl)/(c*y)# in ps/nm/km
Z=(DW/X)-0.08
V=2.834-math.sqrt(-Z/0.549)
a=(V*y)/(2*math.pi*n1*math.sqrt(2*dl))# core radius in um

# Results
print ('%s %.2f %s' %(" The core radius = ",a,"um"))
 The core radius =  2.47 um