Advertisement
Guest User

Untitled

a guest
Jan 17th, 2019
106
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.50 KB | None | 0 0
  1. # g(x)
  2. def fit_exp(x,C,a):
  3. return C*1-np.exp(-2*x)
  4.  
  5. select = hist_hitmiss_y > 0
  6.  
  7. chi2_object = Chi2Regression(fit_exp, hist_hitmiss_x[select], hist_hitmiss_y[select], hist_hitmiss_sy[select])
  8. minuit_hitmiss = Minuit(chi2_object, pedantic=False,print_level=2, C = 2., a=2.)
  9. minuit_hitmiss.migrad();
  10. chi2_hitmiss = minuit_hitmiss.fval
  11. ndof_hitmiss = len(hist_hitmiss_x) - len(minuit_hitmiss.args)
  12. prob_hitmiss = stats.chi2.sf(chi2_hitmiss, ndof_hitmiss)
  13. C,a = minuit_hitmiss.args
  14.  
  15. C_error = minuit_hitmiss.values['C'], minuit_hitmiss.errors['C']
  16. a_error = minuit_hitmiss.values['a'], minuit_hitmiss.errors['a']
  17. # plot g(x)
  18. x_axis2 = np.linspace(xmin, xmax, 500)
  19. y_axis2 = fit_exp(x_axis2, *minuit_hitmiss.args)
  20. #y_axis2 = fit_exp(x_axis2,C, a)
  21. ax2.plot(x_axis2, y_axis2, 'g-', label='Fit')
  22.  
  23. # define the figure text
  24. d_hitmiss = {'Entries': len(x_hitmiss),
  25. 'Mean': x_hitmiss.mean(),
  26. 'Std': x_hitmiss.std(ddof=1),
  27. 'Chi2': chi2_hitmiss,
  28. 'ndof': ndof_hitmiss,
  29. 'Prob': prob_hitmiss,
  30. 'aa': [minuit_hitmiss.values['a'], minuit_hitmiss.errors['a']],
  31. 'C': [abs(minuit_hitmiss.values['C']), minuit_hitmiss.errors['C']]
  32. }
  33. # add figure text
  34. text2 = nice_string_output(d_hitmiss, extra_spacing=2, decimals=3)
  35. add_text_to_ax(0.02, 0.97, text2, ax2, fontsize=14)
  36.  
  37. # add legend
  38. ax2.legend(loc='best')
  39. fig2.tight_layout()
  40.  
  41. # save figure
  42. if save_plots:
  43. fig.savefig("Hist_fit_exp.pdf", dpi=600)
  44.  
  45. # show the figure
  46. fig2
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement