#importing modules
import math
from __future__ import division
#Variable declaration
n1=1.48; #refractive index of core
n2=1.45; #refractive index of cladding
#Calculation
NA=math.sqrt((n1**2)-(n2**2)); #numerical aperture
theta0=math.asin(NA); #acceptance angle(radian)
theta0=theta0*180/math.pi; #acceptance angle(degrees)
theta0_m=60*(theta0-int(theta0));
thetac=math.asin(n2/n1); #critical angle(radian)
thetac=thetac*180/math.pi; #critical angle(degrees)
thetac_m=60*(thetac-int(thetac));
delta=(n1-n2)/n1; #fractional refractive indices change
#Result
print "numerical aperture is",round(NA,4)
print "acceptance angle is",int(theta0),"degrees",round(theta0_m),"minutes"
print "critical angle is",int(thetac),"degrees",int(thetac_m),"minutes"
print "fractional refractive indices change is",round(delta,2)
#importing modules
import math
from __future__ import division
#Variable declaration
n1=1.563; #refractive index of core
n2=1.498; #refractive index of cladding
#Calculation
NA=math.sqrt((n1**2)-(n2**2)); #numerical aperture
theta0=math.asin(NA); #acceptance angle(radian)
theta0=theta0*180/math.pi; #acceptance angle(degrees)
theta0_m=60*(theta0-int(theta0));
#Result
print "numerical aperture is",round(NA,3)
print "acceptance angle is",int(theta0),"degrees",round(theta0_m,1),"minutes"
print "answer varies due to rounding off errors"
#importing modules
import math
from __future__ import division
#Variable declaration
n1=1.563; #refractive index of core
n2=1.498; #refractive index of cladding
#Calculation
delta=(n1-n2)/n1; #fractional refractive indices change
#Result
print "fractional refractive indices change is",round(delta,4)
#importing modules
import math
from __future__ import division
#Variable declaration
n1=1.55; #refractive index of core
n2=1.50; #refractive index of cladding
#Calculation
NA=math.sqrt((n1**2)-(n2**2)); #numerical aperture
#Result
print "numerical aperture is",round(NA,4)
#importing modules
import math
from __future__ import division
#Variable declaration
NA=0.39; #numerical aperture
n1_n2=0.05; #difference in refractive indices
#Calculation
x=NA**2/n1_n2;
n2=(x-n1_n2)/2; #refractive index of cladding
n1=n2+n1_n2; #refractive index of core
#Result
print "refractive index of core is",n1
print "refractive index of cladding is",n2
#importing modules
import math
from __future__ import division
#Variable declaration
n1=1.55; #refractive index of core
n2=1.50; #refractive index of cladding
#Calculation
NA=math.sqrt((n1**2)-(n2**2)); #numerical aperture
#Result
print "numerical aperture is",round(NA,4)
#importing modules
import math
from __future__ import division
#Variable declaration
n1=1.48; #refractive index of core
n2=1.45; #refractive index of cladding
#Calculation
NA=math.sqrt((n1**2)-(n2**2)); #numerical aperture
theta0=math.asin(NA); #acceptance angle(radian)
theta0=theta0*180/math.pi; #acceptance angle(degrees)
theta0_m=60*(theta0-int(theta0));
#Result
print "numerical aperture is",round(NA,4)
print "acceptance angle is",int(theta0),"degrees",round(theta0_m),"minutes"
#importing modules
import math
from __future__ import division
#Variable declaration
NA=0.33; #numerical aperture
delta=0.02; #fractional refractive indices change
#Calculation
x=1-delta
y=math.sqrt(1-x**2);
n1=NA/y; #refractive index of core
n2=n1*x; #refractive index of cladding
#Result
print "refractive index of core is",round(n1,4)
print "refractive index of cladding is",round(n2,3)
#importing modules
import math
from __future__ import division
#Variable declaration
NA=0.20; #numerical aperture
n2=1.59; #refractive index of cladding
n0=1.33; #refractive index of water
#Calculation
n1=math.sqrt(NA**2+n2**2); #refractive index of core
theta0=math.asin(NA/n0); #acceptance angle(radian)
theta0=theta0*180/math.pi; #acceptance angle(degrees)
theta0_m=60*(theta0-int(theta0));
theta0_s=60*(theta0_m-int(theta0_m));
#Result
print "acceptance angle is",int(theta0),"degrees",int(theta0_m),"minutes",round(theta0_s,1),"seconds"
print "answer varies due to rounding off errors"
#importing modules
import math
from __future__ import division
#Variable declaration
n1=1.45; #refractive index of core
n2=1.44; #refractive index of cladding
#Calculation
delta=(n1-n2)/n1; #fractional refractive indices change
#Result
print "fractional refractive indices change is",round(delta*10**3,4),"*10**-3"
#importing modules
import math
from __future__ import division
#Variable declaration
n1=1.50; #refractive index of core
delta=4/100; #fractional refractive indices change
#Calculation
n2=n1-(n1*delta); #refractive index of cladding
NA=math.sqrt((n1**2)-(n2**2)); #numerical aperture
theta0=math.asin(NA); #acceptance angle(radian)
theta0=theta0*180/math.pi; #acceptance angle(degrees)
theta0_m=60*(theta0-int(theta0));
thetac=math.asin(n2/n1); #critical angle(radian)
thetac=thetac*180/math.pi; #critical angle(degrees)
thetac_m=60*(thetac-int(thetac));
#Result
print "refractive index of cladding is",n2
print "numerical aperture is",round(NA,2)
print "acceptance angle is",int(theta0),"degrees",int(theta0_m),"minutes"
print "critical angle is",int(thetac),"degrees",int(thetac_m),"minutes"
#importing modules
import math
from __future__ import division
#Variable declaration
n1=1.563; #refractive index of core
n2=1.498; #refractive index of cladding
#Calculation
NA=math.sqrt((n1**2)-(n2**2)); #numerical aperture
theta0=math.asin(NA); #acceptance angle(radian)
theta0=theta0*180/math.pi; #acceptance angle(degrees)
theta0_m=60*(theta0-int(theta0));
#Result
print "numerical aperture is",round(NA,3)
print "acceptance angle is",int(theta0),"degrees",round(theta0_m,1),"minutes"
print "answer varies due to rounding off errors"