#Given
u1 =1.48 #refractive index of cladding
u2 =1.5 #refractive index of core
u =1
#Calculation
import math
theta = math.asin (u1/u2)*180/3.14
Fr =((u2 -u1)/u2)*100
A= math.asin ( math.sqrt (u2**2- u1**2) )
NA=math.sin(A)
#Result
print"(i) Critical angle is",round(theta,2),"degree"
print"(ii)Fractional refractive index is",round(Fr,2),"% of light"
print"(iii) Acceptance angle is",round(A,2),"radian"
print"(iv) Numerical aperture is",round(NA,2)
#Given
uf=1.5
A1=0.005
u=1.45
#Calculation
import math
uc=uf*(1-A1)
x=uc/uf
A=math.asin(x)*180/3.14
X=math.sqrt((uf**2)-(uc**2))
A11=math.asin(X)*180/3.14
Na=X
#Result
print"(a) Refractive index is",round(uc,2)
print"(b) Critical internal reflacting angle is",round(A,2),"Degree"
print"(c) Acceptance angle is",round(A11,4),"Degree"
print"(d) Numerical aperature is",round(Na,4)
#Given
NA =0.22 # Numerical Aperatur e
Fr =0.012
#Calculation
import math
u1=NA/ math.sqrt (Fr *(2 - Fr))
u2= math.sqrt (u1**2- NA**2)
#result
print"Refractive index of core is",round(u1,2)
print"Refractive index of clad is",round(u2,2)
#Given
u1 =1.62 #refractive index of core
u2 =1.52 # refractive index of clad
#Calculation
import math
A= math.asin ( math.sqrt (u1**2- u2**2) )*180/3.14
NA=math.sin(A*3.14/180.0)
#Result
print"Acceptance length is",round(A,2),"Degree"
print"Numerical aperature is",round(NA,4)
#Given
Na=0.20
u=1.59
uw=1.33
#Calculation
import math
uc=math.sqrt(Na**2+u**2)
NA=(math.sqrt(uc**2-u**2))/uw
A= math.asin(NA)*180/3.14
#Result
print"Acceptance angle is", round(A,1),"Degree"
#Given
uc=1.45
uf=1.5
ua=1
#Calculation
import math
a=math.asin(uc/uf)*180/3.14
NA=math.sqrt(uf**2-uc**2)
N=math.asin(NA)*180/3.14
#Result
print"Critical angle is",round(a,1) ,"Degree"
print"Acceptance angle is",round(N,2),"Degree"
print"Nemerical aperature is",round(NA,3)
#Given
w=0.850 #micro m
NA=0.22
a=50/2.0 #micro m
#Calculation
import math
V=2*math.pi*a*NA/w
N=V**2/4.0
#Result
print"V numver is", round(V,2)
print"Number of modes is",round(N,2)
#Given
NA=0.16
uc=1.45
d=0.6 #M
w=9*10**-7
#Calculation
import math
V=math.pi*d*NA/w
#Result
print"Normalized frequency is",round(V*10**-5,2),"*10**5"
#Given
uc=1.52
d=29*10**-6
a=0.007
w=1.3*10**-6
#Calculation
import math
u=uc-(uc*a)
V=(math.pi*d/w)*math.sqrt(uc**2-u**2)
N=V**2/2.0
#Result
print"(i) The fiber V-number is",round(V,2)
print"(ii) The number of modes is",round(N,0),"Modes"
#Given
uf=1.48
uc=1.46
w=0.82 #micro m
a=25
#Calculation
import math
V=2*math.pi*a*math.sqrt(uf**2-uc**2)/w
N=V**2/2.0
print"Number of modes is", round(N,0)
#Given
uf=1.48
u=1.46
c=3*10**8
#Calculation
a=(uf-u)/uf
af=uf*1000*a/(c*(1-a))
t=af*20
#Result
print"Dispersion per kilometer of length is", round(af*10**9,1),"ns"
print"Total dispersion is",round(t*10**6,2),"ms"
#Given
a=40 #ps/nm-Km
w=1.5 #nm
b=20 #Km
#Calculation
A=a*w*b
#Result
print"Material dispersion is",A*10**-3,"ns"
#Given
d=6.6 #ps/nm-Km
w=1.5 #nm
l=20 #Km
#Calculation
import math
A=d*w*l
#Result
print"Wavelength dispersion is",A,"ps"
#Givem
uc=1.5
c=3.0*10**5 #Km/s
z=6
#Calculation
u=uc/100.0
a=(uc*z/c)*(uc/(uc-u)-1)
#Result
print"Delay difference is", round(a*10**8,1),"m sec"
#Given
a=3.5 #db/Km
P1=0.5 #mW
L=4
b=25.11
#Calculation
import math
N=a*L
P0=P1/b
#Result
print "Power level is",round(P0*10**3,1),"micro W"
#Given
uc=1.558
a=0.026
z=10**3 #m
c=3*10**8
#Calculation
D=uc*a*z/(c*(1-a))
D1=D*10
#Result
print"Dispersion/Km is",round(D*10**8,1),"n sec"
print"Total dispersion in 10 Km is",round(D1*10**8,1),"n sec"
#Given
uc=1.5
a=0.026
c=3*10**8
#Calculation
A=(uc*a**2*1000)/(8*c)
#Result
print"Maximum dispersion is",round(A*10**9,2),"ns/Km"