Chapter4-Nuclear Reactors and Nuclear Power

Ex1-pg121

In [1]:
## Example 4.1
import math
#calculate the

## Given data
## Number of neutrons absorbed by Uranium-238 in resonances for every neutron absorbed in Uranium-235
n_resonance = 0.254;
## Number of neutrons absorbed by Uranium-238 at thermal energy for every neutron absorbed in Uranium-235
n_th = 0.64;
m = 1;                  ## Amount of Uranium-235 consumed in kg
A_U = 235;              ## Atomic mass number of Uranium-235
A_Pu = 239;             ## Atomic mass number of Plutonium-239

## 1.
## Calculation 
C = n_resonance+n_th;
## Result
print'%s %.2f %s'%('\n Conversion ratio of the reactor = ',C,' \n');

## 2. 
## Calculation 
amt_Pu = m*C*A_Pu/A_U;
## Result
print'%s %.2f %s'%('\n Amount of Plutonium-239 produced in the reactor = ',amt_Pu,' kg \n');
 Conversion ratio of the reactor =  0.89  


 Amount of Plutonium-239 produced in the reactor =  0.91  kg 

Ex2-pg127

In [2]:
## Example 4.2
import math
#calculate the

## Given data
wP0 = 1.;                ## Total fuel consumption rate in terms of kg/day
M = 500.;                ## Amount of Plutonium-239 in kg at startup of the reactor
breeding_gain = 0.15;   ## Breeding gain of the reactor

## 1.
print'%s %.2f %s'%(" The Fast breeder reactor produces ",breeding_gain,"kg of plutonium-239 more for every kilogram consumed \n");
## Calculation
## 1 year = 365 days
production_rate = math.ceil(breeding_gain*365);
## Result
print'%s %.2f %s %.2f %s '%("\n Production rate of plutonium-239 = ",breeding_gain," kg/day"and " = ",production_rate," kg/year");

## 2.
## Calculation 
t_Dl = M/production_rate;
t_De = math.log(2)*t_Dl;
## Result
print'%s %.2f %s'%(" \n Linear doubling time of plutonium fuel in the reactor = ",t_Dl," years \n");
print'%s %.2f %s'%(" \n Exponential doubling time of plutonium fuel in the reactor = ",t_De," years \n");
 The Fast breeder reactor produces  0.15 kg of plutonium-239 more for every kilogram consumed 


 Production rate of plutonium-239 =  0.15  =  55.00  kg/year 
 
 Linear doubling time of plutonium fuel in the reactor =  9.09  years 

 
 Exponential doubling time of plutonium fuel in the reactor =  6.30  years 

Ex3-pg128

In [3]:
## Example 4.3
import math
#calculate the

## Given data
power = 3300.;         ## Reactor power in MW
time = 750.;           ## Reactor operation time in days
amt_UO2 = 98.;         ## Amount of Uranium dioxide (UO2) in metric tons
atwt_U = 238.;         ## As the enrichment of Uranium-235 is 3 w/o the majority portion is Uranium-238
molwt_O = 16.;          ## Molecular weight of Oxygen


## 1.
amt_U = amt_UO2*atwt_U/(atwt_U+2*molwt_O);  ## Amount of uranium in tonne
total_burnup = power*time;                  ## Total burnup in MWd
## Calculation 
specific_burnup = total_burnup/amt_U;
## Result
print'%s %.2f %s'%(" \n Specific burnup = ",specific_burnup," MWd/tonne \n");

## 2.
## Due to fission of 1.05 g of Uranium-235, 1 MWd of energy is released.
m = 1.05;
P = 10**6;
maxth_burnup = P/m;                         ## Theoritical maximum burnup 
## Calculation of Fractional burnup
bet = specific_burnup/maxth_burnup;
## Result
print'%s %.2f %s'%(" \n Fractional burnup = ",bet*100," percent \n");
## Due to approximation of specific burnup value, there is a slight change in fractional burnup value as compared to the textbook value.
 
 Specific burnup =  28650.75  MWd/tonne 

 
 Fractional burnup =  3.01  percent 

Ex4-pg133

In [4]:
## Example 4.4
import math
#calculate the

## Given data
ratpower = 1075.;                ## Output rated electrical power in MWe of the reactor
delpower_yr = 255000.;           ## Net output power delivered in one year in terms of MWd
time_refuel = 28.;               ## Number of days the plant was shutdown for refuelling
time_repairs = 45.;              ## Number of days the plant was shutdown for repairs
time_convrepairs = 18.;          ## Number of days the plant was shutdown for conventional repairs

## 1.
## 1 year = 365 days
ratpower_yr = ratpower*365.;      ## Net output rated power in one year in terms of MWd
## Calculation
cap_factor = delpower_yr/ratpower_yr;
## Result
print'%s %.2f %s'%(" \n Plant capacity factor = ",math.ceil(cap_factor*100)," percent\n");

## 2.
## Number of days the plant was shutdown in one year 
total_shutdown = time_refuel+time_repairs+time_convrepairs;
## Number of days the plant was operable in one year
total_operation = 365.-total_shutdown;
## Calculation
ava_factor = total_operation/365.;
## Result
print'%s %.2f %s'%(" \n Plant availability factor = ",ava_factor*100," percent\n");
 
 Plant capacity factor =  65.00  percent

 
 Plant availability factor =  75.07  percent

Ex5-pg195

In [5]:
## Example 4.5
import math
#calculate the

## Given data 
t = 30.;                         ## Time of uranium sufficiency in years 
## Assuming once through Light Water Reactor (LWR)fuel cycle
U_LWR = 0.0055;                 ## Uranium Utilization factor for LWR
## Assuming once through Liquid Metal cooled Fast Breeder Reactor (LMFBR) fuel cycle
U_LMFBR = 0.67;                 ## Uranium Utilization factor for LMFBR
## Estimation 
est_time = 30.*U_LMFBR/U_LWR;
## Result
print'%s %.2f %s'%("The time for which Uranium would fuel LMFBR = ",math.ceil(est_time)," years \n");
The time for which Uranium would fuel LMFBR =  3655.00  years 

Ex6-pg204

In [6]:
## Example 4.6
import math
#calculate the

## Given data
A_U = 238.;              ## Atomic Mass number of Uranium
A_O = 16.;               ## Atomic Mass number of Oxygen
amt_UO2 = 33000.;        ## Amount of Uranium dioxide (UO2) present in kilogram(kg)
x_P = 0.032;            ## Enrichment of 3.2 w/o uranium product
x_T = 0.002;            ## Enrichemnt of 0.2 w/o residual tails
## From Figure 4.45
x_F = 0.00711;          ## Enrichemnt of 0.711 w/o feed

## 1.
## Estimation of enriched uranium in kg
M_P = A_U*amt_UO2/(A_U+2*A_O);
## Estimation of amount of Uranium feed in kg
M_F = ((x_P-x_T)/(x_F-x_T))*M_P;
## Result
print'%s %.2f %s'%(" \n The amount of uranium feed required per reload = ",math.ceil(M_F)," kg \n");

## 2.
V_x_P = (1.-2.*x_P)*math.log((1.-x_P)/x_P);         ## Value function of uranium product with enrichemnt of 3.2 w/o
V_x_F = (1.-2.*x_F)*math.log((1.-x_F)/x_F);         ## Value function of feed with enrichemnt of 0.711 w/o
V_x_T = (1.-2.*x_T)*math.log((1.-x_T)/x_T);         ## Value function of tallings with enrichemnt of 0.2 w/o
rate_SWU = 130.75;                          ## Enrichment cost in dollars per SWU
## Calculation 
SWU = M_P*(V_x_P-V_x_T)-M_F*(V_x_F-V_x_T);  ## Separative Work (SWU) in kg
enrich_cost = math.ceil(SWU)*rate_SWU;           ## Enrichment cost in dollars
## Result
print'%s %.2f %s'%("\n The enrichment cost = $ ",math.ceil(enrich_cost)," \n");
## Due to approximation of Separative Work Unit(SWU), there is a difference in the value of enrichment cost on comparison with the textbook value.
 
 The amount of uranium feed required per reload =  170777.00  kg 


 The enrichment cost = $  18052522.00