#importing modules
import math
from __future__ import division
#Variable declaration
M=28; #atomic weight of Si
N=6.023*10**23; #avagadro number
a=5.3*10**-10; #lattice constant(m)
n=4;
#Calculations
V=a**3; #volume(m**3)
m=M/(N*10**3); #mass(kg)
rho=n*m/V; #volume density(kg/m**3)
#Result
print "volume density is",round(rho,2),"kg/m**3"
print "answer in the book is wrong"
#importing modules
import math
from __future__ import division
#Variable declaration
M=55.85; #atomic weight
N=6.023*10**23; #avagadro number
a=2.9*10**-8; #lattice constant(m)
rho=7.87; #volume density(gm/cc)
#Calculations
n=rho*N*a**3/M; #number of atoms per unit cell
#Result
print "number of atoms per unit cell is",int(n)
print "the lattice is BCC"
#importing modules
import math
from __future__ import division
#Variable declaration
M=120; #atomic mass
N=6.023*10**23; #avagadro number
n=2;
g=20; #mass(gm)
#Calculations
u=n*M/N;
nu=g/u; #number of unit cells
#Result
print "number of unit cells is",round(nu/10**22,3),"*10**22"
#importing modules
import math
from __future__ import division
from fractions import gcd
#Variable declaration
a=1;
b=2;
c=float("inf"); #intercepts
#Calculation
lcm=a*b/gcd(a,b);
h=int(lcm/a);
k=int(lcm/b);
l=int(lcm/c); #miller indices
#Result
print "miller indices are (",h,k,l,")"
#importing modules
import math
from __future__ import division
from fractions import gcd
#Variable declaration
a=2;
b=3;
c=6; #intercepts
#Calculation
lcm_ab=a*b/gcd(a,b); #lcm of a and b
lcm=lcm_ab*c/gcd(lcm_ab,c); #lcm of a,b and c
h=int(lcm/a);
k=int(lcm/b);
l=int(lcm/c); #miller indices
#Result
print "miller indices are (",h,k,l,")"
#importing modules
import math
from __future__ import division
from fractions import gcd
#Variable declaration
a=4;
b=3;
c=float("inf"); #intercepts
#Calculation
lcm=a*b/gcd(a,b);
h=int(lcm/a);
k=int(lcm/b);
l=int(lcm/c); #miller indices
#Result
print "miller indices are (",h,k,l,")"
#importing modules
import math
from __future__ import division
from fractions import gcd
#Variable declaration
h=1;
k=-3;
l=2; #miller indices
#Calculation
lcm_hk=h*k/gcd(h,k); #lcm of h and k
lcm=lcm_hk*l/gcd(lcm_hk,l); #lcm of h,k and l
l1=int(lcm/h);
l2=int(lcm/k);
l3=int(lcm/l); #intercepts
#Result
print "ratio of intercepts is",l1,l2,l3
#importing modules
import math
from __future__ import division
#Variable declaration
a=1.2;
b=1.8;
c=2.0; #crystal primitives
x=2;
y=3;
z=1; #intercepts
h=1.2; #intercept on X axis
#Calculations
h1=a/x;
k1=b/y;
l1=c/z;
k=h*h1/k1; #intercept on Y axis
l=h*l1/h1; #intercept on Z-axis
#Result
print "intercept on Y axis is",k,"angstrom"
print "intercept on Z axis is",l,"angstrom"
#importing modules
import math
from __future__ import division
#Variable declaration
r=1.246; #atomic radius(angstrom)
h1=2; #intercept on X axis
k1=0; #intercept on Y axis
l1=0; #intercept on Z-axis
h2=2; #intercept on X axis
k2=2; #intercept on Y axis
l2=0; #intercept on Z-axis
h3=1; #intercept on X axis
k3=1; #intercept on Y axis
l3=1; #intercept on Z-axis
#Calculations
a=2*math.sqrt(2)*r; #lattice constant
d1=a/math.sqrt(h1**2+k1**2+l1**2); #interplanar spacing in 1st plane(angstrom)
d2=a/math.sqrt(h2**2+k2**2+l2**2); #interplanar spacing in 2nd plane(angstrom)
d3=a/math.sqrt(h3**2+k3**2+l3**2); #interplanar spacing in 3rd plane(angstrom)
#Result
print "interplanar spacing in 1st plane is",round(d1,3),"angstrom"
print "interplanar spacing in 2nd plane is",d2,"angstrom"
print "interplanar spacing in 3rd plane is",round(d3,4),"angstrom"
#importing modules
import math
from __future__ import division
#Variable declaration
h1=0; #intercept on X axis
k1=1; #intercept on Y axis
l1=1; #intercept on Z-axis
h2=1; #intercept on X axis
k2=0; #intercept on Y axis
l2=1; #intercept on Z-axis
h3=1; #intercept on X axis
k3=1; #intercept on Y axis
l3=2; #intercept on Z-axis
#Calculations
d1=h1**2+k1**2+l1**2; #interplanar spacing in 1st plane(angstrom)
d2=h2**2+k2**2+l2**2; #interplanar spacing in 2nd plane(angstrom)
d3=h3**2+k3**2+l3**2; #interplanar spacing in 3rd plane(angstrom)
#Result
print "interplanar spacing in 1st plane is a/math.sqrt(",d1,") angstrom"
print "interplanar spacing in 2nd plane is a/math.sqrt(",d2,") angstrom"
print "interplanar spacing in 3rd plane is a/math.sqrt(",d3,") angstrom"
#importing modules
import math
from __future__ import division
#Variable declaration
a=4.2; #lattice constant(angstrom)
h=3; #intercept on X axis
k=2; #intercept on Y axis
l=1; #intercept on Z-axis
#Calculations
d=a/math.sqrt(h**2+k**2+l**2); #interplanar spacing(angstrom)
#Result
print "interplanar spacing is",round(d,2),"angstrom"
#importing modules
import math
from __future__ import division
from fractions import gcd
#Variable declaration
a1=1;
b1=1;
c1=1; #intercepts in 1st case
a2=2;
b2=3;
c2=6; #intercepts in 2nd case
#Calculation
lcm_a1b1=a1*b1/gcd(a1,b1); #lcm of a1 and b1
lcm1=lcm_ab*c1/gcd(lcm_a1b1,c1); #lcm of a1,b1 and c1
h1=int(lcm1/a1);
k1=int(lcm1/b1);
l1=int(lcm1/c1); #miller indices in 1st case
lcm_a2b2=a2*b2/gcd(a2,b2); #lcm of a2 and b2
lcm2=lcm_a2b2*c2/gcd(lcm_a2b2,c2); #lcm of a2,b2 and c2
h2=int(lcm2/a2);
k2=int(lcm2/b2);
l2=int(lcm2/c2); #miller indices in 2nd case
#Result
print "miller indices in 1st case are (",h1,k1,l1,")"
print "miller indices in 2nd case are (",h2,k2,l2,")"
#importing modules
import math
from __future__ import division
#Variable declaration
M=63.5; #atomic weight(gm/mol)
N=6.023*10**23; #avagadro number
r=1.278*10**-8; #atomic radius(cm)
n=4;
#Calculations
m=M/N; #mass(g)
a=4*r/math.sqrt(2); #lattice constant(cm)
V=a**3; #volume(m**3)
rho=n*m/V; #density of crystal(g/cm**3)
#Result
print "density of crystal is",round(rho,3),"gm/cm**3"
#importing modules
import math
from __future__ import division
#Variable declaration
r=1; #assume
#Calculations
a=4*r/math.sqrt(3); #lattice constant
R=(a-(2*r))/2; #minimum radius
#Result"
print "minimum radius is",round(R,3),"r"
#importing modules
import math
from __future__ import division
#Variable declaration
r=1; #assume
#Calculations
a=4*r/math.sqrt(2); #lattice constant
R=(a/2)-r; #maximum radius
#Result"
print "maximum radius is",round(R,3),"r"
#importing modules
import math
from __future__ import division
#Variable declaration
r1=1.258*10**-10; #atomic radius(m)
r2=1.292*10**-10; #atomic radius(m)
n1=2;
n2=4;
#Calculations
a1=4*r1/math.sqrt(3); #lattice constant(m)
V1=a1**3/n1; #volume(m**3)
a2=2*math.sqrt(2)*r2; #lattice constant(m)
V2=a2**3/n2; #volume(m**3)
V=(V1-V2)*100/V1; #percent volume change
#Result"
print "percent volume change is",round(V,1),"%"
#importing modules
import math
from __future__ import division
#Variable declaration
a=0.356*10**-9; #cube edge(m)
M=12.01; #atomic weight
N=6.023*10**26; #avagadro number
#Calculations
n=8/a**3; #number of atoms
m=M/N; #mass(kg)
rho=m*n; #density of diamond(kg/m**3)
#Result"
print "number of atoms is",round(n/10**29,2),"*10**29"
print "density of diamond is",round(rho,1),"kg/m**3"
print "answer in the book is wrong"
#importing modules
import math
from __future__ import division
#Variable declaration
a=0.27*10**-9; #lattice constant(m)
c=0.494*10**-9; #height of cell(m)
M=65.37; #atomic weight
N=6.023*10**26; #avagadro number
n=6; #number of atoms
#Calculations
V=3*math.sqrt(3)*a**2*c/2; #volume of unit cell(m**3)
rho=n*M/(N*V); #density of zinc(kg/m**3)
#Result"
print "volume of unit cell is",round(V*10**29,3),"*10**-29 m**3"
print "density of zinc is",int(rho),"kg/m**3"
print "answer in the book is wrong"
#importing modules
import math
from __future__ import division
#Variable declaration
a1=5.43*10**-8; #lattice constant(cm)
M1=28.1; #atomic weight
N=6.023*10**23; #avagadro number
n1=8; #number of atoms
a2=5.65*10**-8; #lattice constant(cm)
M2=144.6; #atomic weight
n2=4; #number of atoms
#Calculations
rho1=n1*M1/(N*a1**3); #density of Si(gm/cm**3)
rho2=n2*M2/(N*a2**3); #density of GaAs(gm/cm**3)
#Result"
print "density of Si is",round(rho1,2),"gm/cm**3"
print "density of GaAs is",round(rho2,3),"gm/cm**3"
print "answer in the book varies due to rounding off errors"
#importing modules
import math
from __future__ import division
#Variable declaration
rho=6250; #density(kg/m**3)
M=60.2; #molecular weight
N=6.02*10**26; #avagadro number
n=4; #number of atoms
#Calculations
a=(n*M/(rho*N))**(1/3); #lattice constant(m)
#Result
print "lattice constant is",int(a*10**10),"angstrom"
#importing modules
import math
from __future__ import division
#Variable declaration
r=1.278*10**-8; #atomic radius(cm)
M=63.54; #molecular weight
N=6.02*10**23; #avagadro number
n=4; #number of atoms
#Calculations
a=4*r/math.sqrt(2); #lattice constant(cm)
rho=n*M*10**3/(N*a**3); #density(kg/m**3)
#Result
print "density of copper is",int(rho),"kg/m**3"
print "answer in the book is wrong"
#importing modules
import math
from __future__ import division
#Variable declaration
rho=7870; #density(kg/m**3)
M=55.8; #molecular weight
N=6.02*10**26; #avagadro number
n=2; #number of atoms
#Calculations
a=(n*M/(rho*N))**(1/3); #lattice constant(m)
#Result
print "lattice constant is",round(a*10**10,3),"angstrom"
#importing modules
import math
from __future__ import division
#Variable declaration
rho=6.23; #density(gm/cc)
M=60; #molecular weight
N=6.023*10**23; #avagadro number
n=4; #number of atoms
#Calculations
a=(n*M/(rho*N))**(1/3); #lattice constant(cm)
r=a*math.sqrt(2)*10**8/4; #radius of atom(angstrom)
#Result
print "radius of atom is",round(r,3),"angstrom"
#importing modules
import math
from __future__ import division
#Variable declaration
rho=2.48; #density(gm/cc)
M=58; #molecular weight
N=6.023*10**23; #avagadro number
n=4; #number of atoms
#Calculations
a=(n*M/(rho*N))**(1/3); #lattice constant(cm)
r=a*math.sqrt(2)*10**8/4; #radius of atom(angstrom)
d=2*r; #distance between ions(angstrom)
#Result
print "distance between ions is",round(d,1),"angstrom"
#importing modules
import math
from __future__ import division
#Variable declaration
rho=8.96; #density(gm/cc)
M=63.5; #molecular weight
N=6.02*10**23; #avagadro number
n=4; #number of atoms
#Calculations
a=(n*M/(rho*N))**(1/3); #lattice constant(cm)
d=a/math.sqrt(2)*10**8; #distance between ions(angstrom)
#Result
print "distance between ions is",round(d,2),"angstrom"
#importing modules
import math
from __future__ import division
#Variable declaration
rho=5.96; #density(gm/cc)
M=50; #molecular weight
N=6.023*10**23; #avagadro number
n=2; #number of atoms
#Calculations
a=(n*M/(rho*N))**(1/3); #lattice constant(cm)
r=a*math.sqrt(3)/4; #radius of atom(angstrom)
pf=n*(4/3)*math.pi*r**3/a**3; #packing factor
#Result
print "packing factor is",round(pf,2)
#importing modules
import math
from __future__ import division
#Variable declaration
a=1; #assume
n=2; #number of atoms
#Calculations
r=a*math.sqrt(3)/4; #radius of atom
V=4*math.pi*r**3/3; #volume
f=n*V*100/a**3; #packing fraction
#Result
print "packing fraction is",int(f),"%"
#importing modules
import math
from __future__ import division
#Variable declaration
Vd=3*10**22; #density(gm/cc)
n=8*(1/8); #number of atoms
#Calculations
a=(n/Vd)**(1/3); #lattice constant(cm)
#Result
print "lattice constant is",round(a*10**8,2),"angstrom"