#import modules
import math
from __future__ import division
#Variable declaration
V=60000; #working voltage(V)
#Calculation
lamda_min=12400/V; #Wavelength emitted(Angstrom)
#Result
print "Wavelength emitted is",round(lamda_min,1),"Angstrom"
#import modules
import math
from __future__ import division
#Variable declaration
V=12400; #Volatage applied(V)
I=0.002; #current drop(A)
e=1.6*10**-19; #the charge on electron(C)
#Calculation
n=I/e; #number of electrons
v=(5.93*10**5)*(math.sqrt(V)); #striking speed(m/s)
lamda_min=12400/V; #shortest wavelength is(Angstrom)
#Result
print "number of electrons striking per second is",n,"s-1"
print "the speed with which they strike is",round(v/1e+7,1),"*10^7 m/s"
print "shortest wavelength is",lamda_min,"Angstrom"
#import modules
import math
from __future__ import division
#Variable declaration
lamda_min=1; #shortest wavelength(Angstrom)
#Calculation
V=(12400/lamda_min)/1000; #minimum applied voltage(kV)
#Result
print "The minimum applied voltage is",V,"kV"
#import modules
import math
from __future__ import division
#Variable declaration
I=0.005; #current(A)
V=100*10**3; #potential difference(V)
#Calculation
v=(5.93*10**5)*(math.sqrt(V)); #Maximum speed of electrons(m/s)
IP=V*I; #incident power(W)
P=0.999*IP; #power converted into heat(W)
H=P/4.18; #rate of production of heat(cal/s)
#Result
print "Maximum speed of electrons is",round(v/1e+8,2),"*10^8 m/s"
print "rate of production of heat is",int(H),"cal/s"
print "answer for maximum speed of electrons given in the book is wrong"
#import modules
import math
from __future__ import division
#Variable declaration
V=30000; #potential difference(V)
lamda_min=0.414*10**-10; #short wavelength limit(m)
e=1.602*10**-19; #the charge on electron(C)
c=3*10**8; #speed of light(m/s)
#Calculation
h=(e*V*lamda_min)/c; #Planck's constant(Js)
#Result
print "The Planck's constant is",round(h/1e-34,2),"*10^-34 Js"
#import modules
import math
from __future__ import division
#Variable declaration
lamda=1.43*10**-10; #wavelength(m)
Z=74; #atomic number
R=10.97*10**6; #Rydberg constant(1/m)
#Calculation
b=74-math.sqrt(36/(5*R*lamda)); #nuclear screening constant
#Result
print "nuclear screening constant is",round(b,2)
#import modules
import math
from __future__ import division
#Variable declaration
mewm=0.6; #mass adsoption coeffcient(cm^2/g)
rho=2.7; #density of aluminium(g/cm^3)
#Calculation
mew=rho*mewm; #linear adsorption coefficent of aluminium (1/cm)
T=0.693/mew; #hvl(cm)
x=(math.log(20))*(1/mew); #thickness(cm)
#Result
print "linear adsorption coefficent of aluminium is",mew,"cm-1"
print "the hvl is",round(T,3),"cm"
print "the thickness is",round(x,2),"cm"
#import modules
import math
from __future__ import division
#Variable declaration
theta=12; #glancing angle(degrees)
n=1;
d=3.04*10**-10; #grating space(m)
#Calculation
theta=theta*math.pi/180; #glancing angle(radian)
lamda=(2*d*math.sin(theta))/n; #wavelength of X-rays(m)
theta3=(3*lamda)/(2*d); #angle for third order reflection(radian)
theta3=theta3*180/math.pi; #angle for third order reflection(degrees)
#Result
print "wavelength of X-rays is",round(lamda/10**-10,2),"Angstrom"
print "angle for third order reflection is",round(theta3,2),"degrees"
print "answers given in the book are wrong"
#import modules
import math
from __future__ import division
#Variable declaration
d=1.181; #distance of seperation(Angstrom)
lamda=1.540; #wavelength(Angstrom)
#Calculation
n=2*d/lamda; #sin(D) = 1 for max value
#Result
print "the orders of bragg reflection observed are",int(n)
#import modules
import math
from __future__ import division
#Variable declaration
lamda=0.6; #wavelength(angstrom)
theta1=6.45;
theta2=9.15;
theta3=13; #angles(degree)
#Calculation
lamda=lamda*10**-10; ##wavelength(m)
theta1=theta1*math.pi/180;
theta2=theta2*math.pi/180;
theta3=theta3*math.pi/180; #angles(radian)
d_a=lamda/(2*math.sin(theta1)); #interplanar spacing for 6.45 degrees(m)
d_b=lamda/(2*math.sin(theta2));
d_c=lamda/(2*math.sin(theta3));
#Result
print "interplanar spacing for 6.45 degrees is",round(d_a/1e-10,2),"*10^-10 m"
print "interplanar spacing for 9.15 degrees is",round(d_b/1e-10,3),"*10^-10 m"
print "interplanar spacing for 13 degrees is",round(d_c/1e-10,2),"*10^-10 m"
print "answers given in the book vary due to rounding off errors"
#import modules
import math
from __future__ import division
#Variable declaration
lamda=3*10**-10; #wavelength(m)
theta=40; #angle(degree)
n=1;
#Calculation
theta=theta*math.pi/180; #angle(radian)
d=n*lamda/(2*math.sin(theta)); #spacing between planes(m)
a=2*d; #lattice constant(m)
V=a**3; #volume of unit cell(m^3)
#Result
print "spacing between planes is",round(d/10**-10,2),"AU"
print "volume of unit cell is",round(V/1e-28,3),"*10^-28 m^3"
#import modules
import math
from __future__ import division
#Variable declaration
theta1=5.4;
theta2=7.6;
theta3=9.4; #angles in degree
#Calculation
theta1=theta1*math.pi/180;
theta2=theta2*math.pi/180;
theta3=theta3*math.pi/180; #angles(radian)
d1=1/(2*math.sin(theta1));
d2=1/(2*math.sin(theta2));
d3=1/(2*math.sin(theta3));
m=min(d1,d2,d3);
d1=d1/m;
d2=d2/m;
d3=d3/m;
#Result
print "d1:d2:d3 =",d1,d2,d3
#import modules
import math
from __future__ import division
#Variable declaration
V=50000; #applied voltage(V)
rho=1.99*10**3; #density(kg/m^3)
n=4;
Na=6.02*10**26; #Avgraodo number(per kg mole)
M=74.6; #molecular mass
lamda=0.248*10**-10; #wavelength(m)
#Calculation
lamda_min=12400/V; #short wavelength limit(Angstrom)
a=(n*M/(Na*rho))**(1/3); #lattice constant(m)
d=a/2;
theta=math.asin(lamda/(2*d)); #glancing angle(radian)
theta=theta*180/math.pi; #glancing angle(degrees)
deg=int(theta); #glancing angle(degrees)
t=60*(theta-deg);
m=int(t); #glancing angle(minutes)
#Result
print "short wavelength limit is",lamda_min,"Angstrom"
print "glancing angle is",deg,"degrees",m,"minutes"
print "answer for glancing angle in minutes given in the book is wrong"
#import modules
import math
from __future__ import division
#Variable declaration
lamda=1.54; #wavelength(angstrom)
theta=15.9; #angle(degrees)
M=58.45; #molecular weight
rho=2.164; #density(g/cm^3)
n=2; #for NaCl molecule
#Calculation
theta=theta*math.pi/180; #angle(radian)
d=lamda/(2*math.sin(theta)); #lattice spacing(angstrom)
dm=d*10**-8; ##lattice spacing(cm)
Na=M/(2*rho*dm**3); #Avogadro number(per gm mole)
#Result
print "lattice spacing is",round(d,2),"angstrom"
print "Avogadro number is",round(Na/1e+23,2),"*10^23 per gm mole"
#import modules
import math
from __future__ import division
#Variable declaration
theta=60; #angle(degree)
lamda=0.254; #wavelength(angstrom)
#Calculation
theta=theta*math.pi/180; #angle(radian)
dlamda=0.024*(1-math.cos(theta)); #amount of increase in wavelength(angstrom)
lamda1=lamda-dlamda; #primary X-ray wavelength(angstrom)
#Result
print "primary X-ray wavelength is",lamda1,"angstrom"
#import modules
import math
from __future__ import division
#Variable declaration
theta=32; #angle(degree)
lamda=1.54*10**-10; #wavelength(angstrom)
h=2;
k=2;
l=0; #lattice constants
#Calculation
theta=theta*math.pi/180; #angle(radian)
d=lamda/(2*math.sin(theta)); #interplanar spacing(m)
a=d*math.sqrt(h**2+k**2+l**2); #lattice parameter(m)
r=math.sqrt(2)*a/4; #radius of atom(m)
#Result
print "lattice parameter is",round(a/1e-10,1),"*10^-10 m"
print "radius of atom is",round(r/1e-10,2),"*10^-10 m"