SHARE
TWEET

mat model ver 3.0

allekco Oct 29th, 2019 101 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. import math
  2. import pylab
  3. from matplotlib import mlab
  4.  
  5.  
  6. p = 9678.1 #кг/м^3
  7. m = 0.61 * 0.000001
  8. energy = [0.01, 0.1, 1, 10, 100, 1000, 10000, 100000, 1000000, 10000000]
  9. sigma_t_o = [4, 4, 4, 4, 5, 1, 6, 6, 6, 6]
  10. sigma_c_o = [3*10**(-4), 10**(-4), 3*10**(-5), 10**(-5), 5*10**(-6), 6*10**(-6),
  11.              10**(-5), 3*10**(-5), 10**(-4), 10**(-4)]
  12. sigma_f_238 = [3*10**(-5), 10**(-5), 3*10**(-6), 7*10**(-7), 10**(-6), 3*10**(-4),
  13.                2*10**(-4), 5*10**(-5), 3*10**(-2), 2]
  14. sigma_c_238 = [4, 1,  5*10**(-1), 9*10**(-1), 3*10, 4, 9*10**(-1), 2*10**(-1), 1*10**(-1), 2*10**(-4)]
  15. sigma_f_235 = [10**3, 300, 80, 70, 20, 9, 3, 2, 1, 2]
  16. sigma_c_235 = [200, 40, 10, 70, 10, 4, 1, 0.6, 0.1, 10**(-3)]
  17. for i in range(10):
  18.     sigma_t_o[i] = sigma_t_o[i] * 10**(-28)   #metres^2
  19.     sigma_c_o[i] = sigma_c_o[i] * 10**(-28)
  20.     sigma_c_235[i] = sigma_c_235[i] * 10**(-28)
  21.     sigma_c_238[i] = sigma_c_238[i] * 10**(-28)
  22.     sigma_f_235[i] = sigma_f_235[i] * 10**(-28)
  23.     sigma_f_238[i] = sigma_f_238[i] * 10**(-28)
  24.  
  25. Na = 6.022*10**23
  26. Mr = ((0.007*235 + 0.993*238)*0.001)
  27. Mr_UO2 = 0.27
  28. N_238_nat = Na*19050/Mr
  29. N_235_nat = Na*18700/Mr
  30. N_o = Na*p/Mr_UO2
  31. Rf_nat = []
  32. Rc_nat = []
  33. Rf_o = []
  34. Rc_o = []
  35. fi1 = 5.0*10**13/0.0001 # 1/(metr^2*sec)
  36. fi2 = 2.5*10**13/0.0001
  37. for i in range(10):
  38.     if energy[i] < 1:
  39.         fi = fi1
  40.     else:
  41.         fi = fi2
  42.     Rf_nat.append(fi * (N_235_nat * sigma_f_235[i] + N_238_nat * sigma_f_238[i]))
  43.  
  44. for i in range(10):
  45.     if energy[i] < 1:
  46.         fi = fi1
  47.     else:
  48.         fi = fi2
  49.     Rc_nat.append(fi * (N_235_nat * sigma_c_235[i] + N_238_nat * sigma_c_238[i]))
  50.  
  51. for i in range(10):
  52.     if energy[i] < 1:
  53.         fi = fi1
  54.     else:
  55.         fi = fi2
  56.     Rf_o.append(fi * (32.4 * N_o * sigma_f_238[i] + 0.9 * N_o * sigma_f_235[i]))
  57.  
  58. for i in range(10):
  59.     if energy[i] < 1:
  60.         fi = fi1
  61.     else:
  62.         fi = fi2
  63.     Rc_o.append(fi * (32.4 * N_o * sigma_c_238[i]+ 0.9 * N_o * sigma_c_235[i])
  64.                 + 33.3 * N_o * sigma_c_o[i])
  65.  
  66.  
  67. pylab.subplot(2, 2, 1) #Текущая ячейка - 1; Две строки, три столбца
  68. pylab.plot(energy, Rc_nat)
  69. pylab.grid(linestyle='--', linewidth=0.5)
  70. pylab.xlabel('Neutron Energy (eV)')
  71. pylab.ylabel('R capture')
  72. pylab.xscale('log')
  73. pylab.yscale('log')
  74. pylab.title("R capture for nature uran")
  75.  
  76. pylab.subplot(2, 2, 2)
  77. pylab.plot(energy, Rc_o)
  78. pylab.grid(linestyle='--', linewidth=0.5)
  79. pylab.xlabel('Neutron Energy (eV)')
  80. pylab.ylabel('R capture')
  81. pylab.xscale('log')
  82. pylab.yscale('log')
  83. pylab.title("R capture for UO2")
  84.  
  85. pylab.subplot(2, 2, 3)
  86. pylab.plot(energy, Rf_nat)
  87. pylab.grid(linestyle='--', linewidth=0.5)
  88. pylab.xlabel('Neutron Energy (eV)')
  89. pylab.ylabel('R fission')
  90. pylab.xscale('log')
  91. pylab.yscale('log')
  92. pylab.title("R fission for nature uran")
  93.  
  94. pylab.subplot(2, 2, 4)
  95. pylab.plot(energy, Rf_o)
  96. pylab.grid(linestyle='--', linewidth=0.5)
  97. pylab.xlabel('Neutron Energy (eV)')
  98. pylab.ylabel('R fission')
  99. pylab.xscale('log')
  100. pylab.yscale('log')
  101. pylab.title("R fission for UO2")
  102.  
  103. pylab.show()
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top