single_fit.py (2465B)
1 #!/usr/bin/env python3.9 2 3 from my_plot import * 4 from method import * 5 from model import * 6 7 global p0; 8 p0 = [0.9, 0.2, 0.81, 0.04, 0.02, -1, 0.84, 1.55] # in GeV 9 10 def SND(): 11 data = np.loadtxt('../data/SND-VFF.txt') 12 x_data = data[:, 0] 13 y_data = data[:, 1] 14 cov_stat = (np.eye(len(x_data)) * data[:, 2])**2 15 cov_relsyst = (np.eye(len(x_data)) * np.array([0.032 if i<=2 else 0.013 for i in range(len(x_data))]))**2 16 17 var_str = "m_q g_q m_w g_w e_w a b c" 18 p, dp, chi_sq = t0_fit(model, var_str, x_data, y_data, p0, cov_stat,\ 19 cov_relsyst, way=1) 20 21 sigma = np.diag(cov_stat) 22 my_plot('wrong-SND', x_data, y_data, p, dp, chi_sq, sigma) 23 24 def CMD2(): 25 data = np.loadtxt('../data/CMD2-VFF.txt') 26 x_data = data[:, 0] 27 y_data = data[:, 1] 28 cov_stat = (np.eye(len(x_data)) * data[:, 2])**2 29 30 cov_relsyst = [] 31 for i in range(len(x_data)): 32 if i<=43: 33 cov_relsyst.append(0.006) 34 elif i>43 and i<=53: 35 cov_relsyst.append(0.007) 36 else: 37 cov_relsyst.append(0.008) 38 cov_relsyst = (np.eye(len(x_data)) * np.array(cov_relsyst))**2 39 40 41 var_str = "m_q g_q m_w g_w e_w a b c" 42 p, dp, chi_sq = t0_fit(model, var_str, x_data, y_data, p0, cov_stat,\ 43 cov_relsyst, way=1) 44 45 sigma = np.sqrt(np.diag(cov_stat)) 46 my_plot('wrong-CMD2', x_data, y_data, p, dp, chi_sq, sigma) 47 48 def KLOE(): 49 data = np.loadtxt('../data/KLOE-VFF.txt') 50 x_data = data[:, 0] 51 y_data = data[:, 1] 52 cov_relsyst = np.loadtxt('../data/KLOE-RelSystCov.txt') 53 cov_stat = np.loadtxt('../data/KLOE-StatCov.txt') 54 55 var_str = "m_q g_q m_w g_w e_w a b c" 56 p, dp, chi_sq = t0_fit(model, var_str, x_data, y_data, p0, cov_stat,\ 57 cov_relsyst, way=1) 58 59 sigma = np.sqrt(np.diag(cov_stat)) 60 my_plot('wrong-KLOE', x_data, y_data, p, dp, chi_sq, sigma) 61 62 def BABAR(): 63 data = np.loadtxt('../data/BABAR-VFF.txt') 64 x_data = data[:, 0] 65 y_data = data[:, 1] 66 cov_relsyst = np.loadtxt('../data/BABAR-RelSystCov.txt') 67 cov_stat = np.loadtxt('../data/BABAR-StatCov.txt') 68 69 var_str = "m_q g_q m_w g_w e_w a b c" 70 p, dp, chi_sq = t0_fit(model, var_str, x_data, y_data, p0, cov_stat,\ 71 cov_relsyst, way=1) 72 73 sigma = np.sqrt(np.diag(cov_stat)) 74 my_plot('wrong-BABAR', x_data, y_data, p, dp, chi_sq, sigma) 75 76 def main(): 77 SND() 78 CMD2() 79 KLOE() 80 BABAR() 81 82 if __name__ == "__main__": 83 main()