tprak

Theoretical Physics Practical Training
git clone git://popovic.xyz/tprak.git
Log | Files | Refs

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()