#importing modules
import math
from __future__ import division
#Variable declaration
alpha=0.01; #angle(radian)
n=10; #number of fringe
lamda=6000*10**-8; #wavelength(cm)
#Calculation
#for dark fringe 2*u*t*cos(alpha)=n*lam
#t=xtan(alpha)
x=(n*lamda)/(2*alpha); #distance of 10th fringe from edge of wedge(cm)
#Result
print "distance of 10th fringe from edge of wedge is",x,"cm"
#importing modules
import math
from __future__ import division
#Variable declaration
t=5*10**-5; #thickness of soap film(cm)
u=1.33;
#Calculation
#for constructive interference of reflected light
#2*u*t*cos(r)=(2*n+1)(lam/2), where n=0,1,2,3
#for normal incidence r=0, cos(r)=1
#for n=0 lamda=lamda1
lamda1=4*u*t; #wavelength for zero order(cm)
#for n=1 lamda=lamda2
lamda2=4*u*t*(1/3); #wavelength for first order(cm)
#for n=2 lamda=lamda3
lamda3=4*u*t*(1/5); #wavelength for second order(cm)
#for n=3 lamda=lamda4
lamda4=4*u*t*(1/7); #wavelength for third order(cm)
#Result
print "wavelength that is strongly reflected in visible spectrum is",lamda3*10**8,"angstrom"
#importing modules
import math
from __future__ import division
#Variable declaration
n=10; #10th dark ring
D10=0.5; #diameter of ring(cm)
lamda=5000*10**-8; #wavelength of light(cm)
#Calculation
R=(D10**2)/(4*n*lamda); #radius of curvature of lens(cm)
D50=math.sqrt(4*50*R*lamda); #diameter of 50th dark ring(cm)
r50=D50/2; #radius of 50th dark ring(cm)
#Result
print "radius of 50th dark ring is",round(r50,2),"cm"
#importing modules
import math
from __future__ import division
#Variable declaration
i=45; #angle of incidence(degrees)
mew=1.33; #refractive index
lamda=5000; #wavelength(angstrom)
#Calculation
i=i*(math.pi/180); #angle of incidence(radian)
sin_r=math.sin(i)/mew; #value of sin(r)
r=math.asin(sin_r); #angle of refraction(radian)
r1=r*(180/math.pi); #angle of refraction(degrees)
#for bright fringe 2*u*t*cos(r)=(2*n+1)(lamda/2)
#for minimum thickness n=0
t=lamda/(4*mew*math.cos(r)); #minimum thickness(angstrom)
#Result
print "minimum thickness of film is",int(t),"angstrom"
#importing modules
import math
from __future__ import division
#Variable declaration
lamda=5500*10**-8; #wavelength(cm)
V=0.2; #volume of oil drop(cc)
A=100*100; #surface area(sq.cm)
#Calculation
#since both reflections occur at surface of denser medium
#condition for brightness for min thickness, n=1
#for normal incidence r=0, cos(r)=1
t=V/A; #thickness of film(cm)
mew0=lamda/(2*t); #refractive index of oil
#Result
print "refractive index of oil is",mew0
#importing modules
import math
from __future__ import division
#Variable declaration
lamda=6300; #wavelength of light(angstrom)
mew=1.5; #refractive index
n=10;
#Calculation
#condition for dark 2*u*t=n*lam
#condition for bright 2*u*t=(2*n-1)(lam/2)
#when t=0 n=0 order dark band will come and at edge 10th bright band will come
t=(((2*n)-1)*(lamda))/(4*mew); #thickness of air film(angstrom)
#Result
print "thickness of air film is",t,"angstrom"
#importing modules
import math
from __future__ import division
#Variable declaration
mewg=1.5; #refractive index of glass
mewo=1.3; #refractive index of oil
lamda1=7000; #wavelength(angstrom)
lamda2=5000; #wavelength(angstrom)
r=0; #for nth minimum
#Calculation
#here reflection occurs both time at surface of denser medium
#condition for distructive interference in reflected side
#2*u*t*cos(r)=(2*n-1)(lam1/2), for nth min.
#2*u*t=(2*n+1)(lam1/2), n=0,1,2,3
#for (n+1)th min.
#2*u*t=(2*(n+1)+1)(lam2/2), n=0,1,2,3
t=(2/(4*mewo))*((lamda1*lamda2)/(lamda1-lamda2)); #thickness of layer(angstrom)
#Result
print "thickness of layer is",int(t),"angstrom"
#importing modules
import math
from __future__ import division
#Variable declaration
Dn=1.40; #diameter of 10th ring(cm)
D=1.27; #changed diameter(cm)
#Calculation
#when mew=1
#(Dn^2)=4*n*lam*R=(1.40^2)
#when mew=mew1
#(D^2)=(4*n*lam*R)/u1=(1.27^2)
mewl=((Dn**2)/(D**2)); #refractive index of liquid
#Result
print "refractive index of liquid is",round(mewl,4)
#importing modules
import math
from __future__ import division
#Variable declaration
B=0.5; #fringe width(cm)
mew=1.4; #refractive index
#Calculation
alpha=((math.pi*10)/(60*60*180)); #converting into radian
lamda=2*B*alpha*mew; #wavelength of light(cm)
#Result
print "wavelength of light used is",int(lamda*10**8),"angstrom"
print "answer given in the book varies due to rounding off errors"
#importing modules
import math
from __future__ import division
#Variable declaration
lamda=6000*10**-8; #wavelengh of light(cm)
mew=1.5; #refractive index
#Calculation
#condition for dark fringe is 2*t=n*lam
#but B=(lam/(2*alpha*u))
#delta_t=alpha*x
delta_t=(10*lamda)/(2*mew); #difference t2-t1(cm)
#Result
print "difference t2-t1 is",delta_t,"cm"
#importing modules
import math
from __future__ import division
#Variable declaration
lamda=5890; #wavelength of light(angstrom)
mew=1.5; #refractive index
r=60; #angle of refraction(degrees)
#Calculation
#condition for dark is 2*mew*t*cos(r)=n*lamda
r=60*(math.pi/180); #angle of refraction(radian)
#for n=1
t=(lamda)/(2*mew*math.cos(r)); #smallest thickness of glass plate(angstrom)
#Result
print "smallest thickness of glass plate is",int(t),"angstrom"
#importing modules
import math
from __future__ import division
#Variable declaration
aplusb=1/1250; #transmission grating(lines/cm)
n=2; #order of spectral line
theta=30; #deviation angle(degrees)
#Calculation
theta=theta*(math.pi/180); #deviation angle(radian)
#(a+b)sin(theta)=n*lamda
lamda=(aplusb*math.sin(theta))/n; #wavelength of spectral line(cm)
#Result
print "wavelength of spectral line is",lamda,"cm"
#importing modules
import math
from __future__ import division
#Variable declaration
lamda=5893*10**-8; #wavelength(cm)
aplusb=2.54/2540; #grating(lines/cm)
#Calculation
#n=nmax, if sin(theta)=1
nmax=(aplusb/lamda); #maximum order
#Result
print "maximum order is",int(nmax)
#importing modules
import math
from __future__ import division
#Variable declaration
n=2; #second order
aplusb=1/5000; #transmission grating(lines/cm)
lamda=5893*10**-8; #wavelength(cm)
f=30; #focal length(cm)
#Calculation
dtheta=(2.5*3.14)/(180*60); #change in angular displacement(radian)
#dlamda=((a+b)cos(theta)/n)dtheta
costheta=math.sqrt(1-(((n*lamda)/aplusb)**2));
dlamda=(dtheta*aplusb*costheta)/n; #difference in wavelength(cm)
dl=f*dtheta; #linear separation(cm)
#Result
print "difference in wavelength of two yellow lines",round(dlamda*10**8),"angstrom"
print "linear separation is",round(dl*10**2,2),"*10**-2 cm"
#importing modules
import math
from __future__ import division
#Variable declaration
lamda1=5400*10**-8; #wavelength1(cm)
lamda2=4050*10**-8; #wavelength(cm)
theta=30; #angle of diffraction(degrees)
#Calculation
#nth order of lamda1 is superimposed on (n+1)th order of lamda2 for theta=30
#(a+b)sin(30)=n*5400*10^-8=(n+1)*4050*10^-8
n=(lamda2/(lamda1-lamda2)); #nth order
theta=30*(math.pi/180); #angle of diffraction(radian)
N=math.sin(theta)/(n*lamda1); #lines/cm in grating
#Result
print "lines/cm in grating is",int(N),"lines/cm"