import math
#Variable declaration
k = 1.38*10**-23 #Boltzmann constant(eV/K)
e = 1.6*10**-19 #Electronic charge(C)
T1 = 500 #First temperature for metal(K)
T2 = 1000 #Second temperature for metal(K)
Ev = 1 #Average energy required to create a vacancy in metal(eV)
#Calculations
x = k/e
#n_500 = N*exp(-Ev/T1*k) ---(1)
#n_1000 = N*exp(-Ev/T2*k) ---(2)
#Dividing (1) by (2), we get the following expression
n = math.exp(Ev/(T2*x))
#Result
print "Ratio of vacancies=",round((n/1E+5),3),"*10^5"
import math
#Variable declaration
n1_by_N = 1.*10**-10 #frequency of vacancy sites at 500 C
T1 = 500.+273. #K
T2 = 1000.+273. #K
#Calculations
x = math.exp((T1/T2)*math.log(n1_by_N))
#Result
print "Frequency of vacancy sites at 1000 C =",round((x/1E-7),4),"*10^-7"
#Variable declaration
r = 2.82*10**-10 #interionic distance(m)
n = 5*10**11 #density of Schottky defect(per m^3)
T = 25+273 #temperature(K)
k = 8.625*10**-5 #Boltzmann constant(/K)
#Calculations
v = (2*r)**3 #volume of one unit cell(m^3)
N = 4/v #density of ion pairs
Es = 2*k*T*2.303*math.log10(N/n)
#Result
print "The average energy required for creation of one Schottky defect is",round(Es,3),"eV"
#Variable declaration
T1 = 20+273 #K
T2 = 300+273 #K
Ef = 1.4 #average energy for creating a Freknel defect(eV)
k = 8.625*10**-5 #Boltzmann constant(J/K)
N = 1 #For simplicity assume total number of metal ions to be unity
Ni = 1 #For simplicity assume total number of metal ions to be unity
#Calculations
n1 = (N*Ni)**0.5*math.exp(-Ef/(2*k*T1))
n2 = (N*Ni)**0.5*math.exp(-Ef/(2*k*T2))
x = n1/n2
#Result
print "The ratio of the number of Frenkel defects is",round((x/1E-6),2),"*10^-6 or",round(((1/x)/1E+5),2),"*10^5"