void PDF_ADS_DK_Kpi_2var::setCorrelations(config c)
{
	resetCorrelations();
	switch(c)
	{
		case babar:
      corSource = "PRD 82 (2010) 072006";
			corStatMatrix[1][0] = 0.;
			corSystMatrix[1][0] = 0.;
			break;

		case belle:
      corSource = "PRL 106 (2011) 231803";
			corSource = "FERMILAB-PUB-09-549-E";
			corStatMatrix[1][0] = 0.;
			corSystMatrix[1][0] = 0.;
			break;

		case cdf:
      corSource = "PRD 84 (2011) 091504";
			corStatMatrix[1][0] = 0.;
			corSystMatrix[1][0] = 0.;
			break;

		case lhcb:
      corSource = "PLB 712 (2012) 203";
			corStatMatrix[1][0] = 0.;
			corSystMatrix[1][0] = 0.;
			break;

		default:
			cout << "PDF_ADS_DK_Kpi_2var::setCorrelations() : ERROR : config "+ConfigToTString(c)+" not found." << endl;
			exit(1);
	}
}
void PDF_Dmixing_CLEO2D::setCorrelations(config c)
{
    resetCorrelations();
    switch(c)
    {
    case cleo2009: {
        corSource = "arXiv:0903.4853 - CLEO 2009";
        corStatMatrix[1][0] = -0.067;
        break;
    }
    case cleo2014: {
        corSource = "CLEO 2014 (1401.1904)";
        corStatMatrix[1][0] = 0.201;
        break;
    }
    case cleo2015: {
        corSource = "Guy";
        corStatMatrix[1][0] = 0.4;
        break;
    }
    default: {
        cout << "PDF_Dmixing_CLEO2D::setCorrelations() : ERROR : config "+ConfigToTString(c)+" not found." << endl;
        exit(1);
    }
    }
}
///
/// Set the correlations manually after the PDF object was created already.
/// This way one can make easy toy studies.
/// The default is to not set any systematic correlations (systCor=zero).
/// Alternatively one can use pre-defined systematics correlaions (e.g. systCor=lumi1fbPapercFit).
///
void PDF_CrossCorTest1::setCorrelations(config c)
{
	resetCorrelations();
	switch(c)
	{
		case manual:{
						corSource = "manual";
						break;
					}
		case lumi1fbPapercFit:{
								  corSource = "PAPER 25.6.2014 After bug fix, mail by Manuel, stat. manually parsed from logfile";
								  // the logfile: /afs/cern.ch/work/m/mschille/public/cFit-v3c/paper-dsk-v3c-w-constraints-w-combo-fixed-kfactordebugged-Bd2DsKFixed] $ vi nominal.log
								  //                      c      s       sb    
								  double dataStat[]  = { 1.000, -0.008,  0.045,  // c
									  -0.008,  1.000, -0.002,  // s
									  0.045, -0.002,  1.000 }; // sb
								  corStatMatrix = TMatrixDSym(nObs,dataStat);
								  //                      c     s      sb  
								  double dataSyst[]  = { 1.  , -0.04,  0.03,   // c
									  -0.04,  1.  , -0.09,   // s
									  0.03, -0.09,  1.   }; // sb
								  corSystMatrix = TMatrixDSym(nObs,dataSyst);
								  break;
							  }
		default:{
					cout << "PDF_CrossCorTest1::setCorrelations() : ERROR : config cCor not found." << ConfigToTString(c) << endl;
					exit(1);
				}
	}
}  
void PDF_CrossCorTest3::setCorrelations(config c)
{
  resetCorrelations();
	copyMeasurementCovariance();
  switch(c)
  {
    case lumi1fbPapercFit:{
      corSource = "cross correlations";
			corStatMatrix[0][3] = -0.084;	// c_dsk_obs	: d_dsk_obs
			corStatMatrix[0][4] = -0.103;	// c_dsk_obs	: db_dsk_obs
			corStatMatrix[1][3] =  0.117;	// s_dsk_obs	: d_dsk_obs
			corStatMatrix[1][4] =  0.067;	// s_dsk_obs	: db_dsk_obs
			corStatMatrix[2][3] = -0.022;	// sb_dsk_obs	: d_dsk_obs
			corStatMatrix[2][4] = -0.032;	// sb_dsk_obs	: db_dsk_obs
			corSystMatrix[0][3] = -0.22;	// c_dsk_obs	: d_dsk_obs
			corSystMatrix[0][4] = -0.22;	// c_dsk_obs	: db_dsk_obs
			corSystMatrix[1][3] =  0.17;	// s_dsk_obs	: d_dsk_obs
			corSystMatrix[1][4] =  0.17;	// s_dsk_obs	: db_dsk_obs
			corSystMatrix[2][3] = -0.14;	// sb_dsk_obs	: d_dsk_obs
			corSystMatrix[2][4] = -0.14;	// sb_dsk_obs	: db_dsk_obs
      break;
		}
    default:{
      cout << "PDF_CrossCorTest3::setCorrelations() : ERROR : config "+ConfigToTString(c)+" not found." << endl;
      exit(1);
    }
  }
}
void PDF_ADS_DKstz_Kpi::setCorrelations(config c)
{
	resetCorrelations();
	switch(c)
	{
		case lumi3fb:{
						 corSource = "3fb-1 LHCb-ANA-2012-118-v3.1";
             double myCorData[] = { 1.000,  0.091,  0.083,  // AdKpi
                                    0.091,  1.000, -0.081,  // Rd+
                                   -0.083, -0.081,  1.000}; // Rd-

						 corStatMatrix = TMatrixDSym(nObs,myCorData);

             double myCorData2[] = { 1.000,  0.008,  0.008,  // AdKpi
                                     0.008,  1.000,  0.997,  // Rd+
                                     0.008,  0.997,  1.000}; // Rd-
						 corSystMatrix = TMatrixDSym(nObs,myCorData2);
						 break;
					 }
		default:{
					cout << "PDF_ADS_DzKstz_Kpi::setCorrelations() : ERROR : config "+ConfigToTString(c)+" not found." << endl;
					exit(1);
				}
	}
}
void PDF_Dmixing_xy::setCorrelations(config c)
{
	resetCorrelations();
	switch(c)
	{
		case hfagLP2011:{
							corSource = "HFAG LP2011 CPV allowed http://www.slac.stanford.edu/xorg/hfag/charm/LP11/results_mix+cpv.html";
							corStatMatrix[1][0] =  0.037; // xD, yD
							corSystMatrix[1][0] =  0.0;   // xD, yD
							break;
						}
		case hfag:{
					  corSource = "HFAG 2014 CPV allowed http://www.slac.stanford.edu/xorg/hfag/charm/CHARM13/results_mix+cpv.html";
					  corStatMatrix[1][0] = -0.218; // xD, yD
					  corSystMatrix[1][0] =  0.0;   // xD, yD
					  break;
				  }
		case lhcb2012:{
			          //added by sam harnew - the above numbers seem to be the Nov2013 results at http://www.slac.stanford.edu/xorg/hfag/charm/CHARM13/results_mix_cpv.html
					  corSource = "HFAG 2014 CPV allowed"; // (From website, above looks to be 2013???!) http://www.slac.stanford.edu/xorg/hfag/charm/FPCP14/results_mix_cpv.html";
					  corStatMatrix[1][0] = -0.27; // xD, yD
					  corSystMatrix[1][0] =  0.0;   // xD, yD
					  break;
				  }
		default:{
					cout << "PDF_Dmixing_xy::setCorrelations() : ERROR : config "+ConfigToTString(c)+" not found." << endl;
					exit(1);
				}
	}
}
void PDF_D_HFAGfit_4D::setCorrelations(config c)
{
	resetCorrelations();
	switch(c)
	{
		case hfagFP2014:{
							corSource = "HFAG FP2014, CPV allowed";
							//                       3       4       9       10
							double dataStat[]  = { 1.000,  0.404, -0.149, -0.162,   // dD_kpi_obs   = 3
                                     0.404,  1.000, -0.026, -0.025,   // rD_kpi_obs   = 4
                                    -0.149, -0.026,  1.000,  0.716,   // AcpDpipi_obs = 9
                                    -0.162, -0.025,  0.716,  1.000 }; // AcpDKK_obs   = 10
							corStatMatrix = TMatrixDSym(nObs,dataStat);
							// no syst cor
							break;
						}
		case hfagCHARM2015:{
							corSource = "HFAG CHARM2015, CPV allowed";
							//                       3       4       9       10
							double dataStat[]  = { 1.000,  0.439, -0.200, -0.237,   // dD_kpi_obs   = 3
																		 0.439,  1.000, -0.078, -0.067,   // rD_kpi_obs   = 4
																		-0.200, -0.078,  1.000,  0.726,   // AcpDpipi_obs = 9
																		-0.237, -0.067,  0.726,  1.000 }; // AcpDKK_obs   = 10
							corStatMatrix = TMatrixDSym(nObs,dataStat);
							// no syst cor
							break;
						}
		default:{
					cout << "PDF_D_HFAGfit_4D::setCorrelations() : ERROR : config cCor not found." << ConfigToTString(c) << endl;
					exit(1);
				}
	}
}
void PDF_CrossCor_Dh_K3pi_vs_DK_KSKpi::setCorrelations(config c)
{
  resetCorrelations();
	copyMeasurementCovariance();
  switch(c)
  {
    case ckm2014:{
      corSource = "cross correlations";
			float c = 0.95;
			corSystMatrix[ 1][1+nObs1] = c;	// 
			corSystMatrix[ 1][1+nObs1] = c;	// 
			corSystMatrix[ 2][1+nObs1] = c;	// 
			corSystMatrix[ 2][1+nObs1] = c;	// 
			corSystMatrix[ 1][2+nObs1] = c;	// 
			corSystMatrix[ 1][2+nObs1] = c;	// 
			corSystMatrix[ 2][2+nObs1] = c;	// 
			corSystMatrix[ 2][2+nObs1] = c;	//
      break;
		}
    default:{
      cout << "PDF_CrossCor_Dh_K3pi_vs_DK_KSKpi::setCorrelations() : ERROR : config "+ConfigToTString(c)+" not found." << endl;
      exit(1);
    }
  }
}
void PDF_GLWADS_DKDpi_hh_Dmix_newVars_uv::setCorrelations(config c)
{
	resetCorrelations();
	switch(c)
	{
		case lumi3fb:
			{
						corSource = "3fb-1 ANA v7 - lifted from gammadini "; // https://twiki.cern.ch/twiki/pub/LHCbPhysics/B2D0K/LHCb-ANA-2014-071-v7.pdf (see Vavas email 04/08/15)

						// lifted from gammadini
						const double statCorrelations[144] = {
							1.0   ,-0.0474, 0.0023, 0.0012, 0.0093, 0.0053, 0.0078, 0.1024,-0.0032, 0.0006, 0.0009, 0.0003,
						 -0.0474, 1.0   , 0.0043, 0.0025, 0.0174, 0.0100, 0.0144, 0.0155,-0.0431, 0.0002, 0.0001, 0.0000,
							0.0023, 0.0043, 1.0   , 0.0043,-0.0069, 0.0158, 0.0243,-0.0003, 0.0001,-0.0144,-0.0001,-0.001,
							0.0012, 0.0025, 0.0043, 1.0   , 0.0160,-0.0359, 0.0143,-0.0010,-0.0000,-0.0002,-0.0382,-0.0021,
							0.0093, 0.0174,-0.0069, 0.0160, 1.0   , 0.0639, 0.0917,-0.0002,-0.0002,-0.0013, 0.0000,-0.0011,
							0.0053, 0.0100, 0.0158,-0.0359, 0.0639, 1.0   , 0.0530,-0.0001,-0.0001, 0.0001,-0.0029,-0.0005,
							0.0078, 0.0144, 0.0243, 0.0143, 0.0917, 0.053, 1.0    ,-0.0001,-0.0001, 0.0002, 0.0000,-0.0004,
							0.1024, 0.0155,-0.0003,-0.0010,-0.0002,-0.0001,-0.0001, 1.0   ,-0.0219, 0.0399, 0.0245,-0.1136,
						 -0.0032,-0.0431, 0.0001,-0.0000,-0.0002,-0.0001,-0.0001,-0.0219, 1.0   ,-0.0055,-0.0025, 0.0114,
							0.0006, 0.0002,-0.0144,-0.0002,-0.0013, 0.0001, 0.0002, 0.0399,-0.0055, 1.0   , 0.0597,-0.3165,
							0.0009, 0.0001,-0.0001,-0.0382, 0.0000,-0.0029, 0.0000, 0.0245,-0.0025, 0.0597, 1.0   ,-0.1756,
							0.0003, 0.0000,-0.001, -0.0021,-0.0011,-0.0005,-0.0004,-0.1136, 0.0114,-0.3165,-0.1756, 1.0   };

						corStatMatrix = TMatrixDSym( nObs, statCorrelations );

						// lifted from gammadini
						const double systCorrelations[144] = {
							1.00,  0.36, -0.06,  0.27,  0.30,  0.04,  0.09,  0.78, -0.43, -0.04,  0.23, -0.14,
							0.36,  1.00, -0.03,  0.31,  0.22, -0.06, -0.55,  0.59, -0.47, -0.01,  0.12, -0.04,
						 -0.06, -0.03,  1.00, -0.02, -0.80,  0.09,  0.09, -0.10, -0.06,  0.03, -0.28,  0.07,
							0.27,  0.31, -0.02,  1.00,  0.19, -0.42, -0.01,  0.35, -0.28, -0.22,  0.11, -0.07,
							0.30,  0.22, -0.80,  0.19,  1.00,  0.11,  0.09,  0.37, -0.21, -0.16,  0.20, -0.13,
							0.04, -0.06,  0.09, -0.42,  0.11,  1.00,  0.30, -0.03,  0.06, -0.08, -0.03, -0.09,
							0.09, -0.55,  0.09, -0.01,  0.09,  0.30,  1.00, -0.11,  0.05, -0.01, -0.02, -0.02,
							0.78,  0.59, -0.10,  0.35,  0.37, -0.03, -0.11,  1.00, -0.57, -0.14,  0.33, -0.22,
						 -0.43, -0.47, -0.06, -0.28, -0.21,  0.06,  0.05, -0.57,  1.00,  0.19,  0.10,  0.02,
						 -0.04, -0.01,  0.03, -0.22, -0.16, -0.08, -0.01, -0.14,  0.19,  1.00,  0.17,  0.21,
							0.23,  0.12, -0.28,  0.11,  0.20, -0.03, -0.02,  0.33,  0.10,  0.17,  1.00, -0.11,
						 -0.14, -0.04,  0.07, -0.07, -0.13, -0.09, -0.02, -0.22,  0.02,  0.21, -0.11,  1.00};

						corSystMatrix = TMatrixDSym( nObs, systCorrelations );

						break;
			}
		default:
			{
				cout << "PDF_GLWADS_DKDpi_hh_Dmix_newVars_uv::setCorrelations() : ERROR : config "+ConfigToTString(c)+" not found." << endl;
				exit(1);
			}
	}
}
void PDF_GLW_Dpi::setCorrelations(config c)
{
  resetCorrelations();
  switch(c)
  {
    case lumi1fb:
      // no correlations
      break;
    default: 
      cout << "PDF_GLW_Dpi::setCorrelations() : ERROR : config "+ConfigToTString(c)+" not found." << endl;
      exit(1);    
  }
}  
void PDF_GLWADS_DKDpi_KSKpi::setCorrelations(config c)
{
	resetCorrelations();
	switch(c)
	{
		case lumi3fbFullDP:{
							   // corSource = "3fb-1, values are guesses based on error propagation of the yields, full Dalitz, see OtherFiles/KSKpi_ADS.py";
							   // double myCorData[] = {  1.   ,-0.22,  0.18,  0.   , 0.   ,-0.02,  0.04,  // rfavsup_dpi_kskpi_obs
							   //                        -0.22 , 1.  ,  0.  ,  0.04 , 0.   , 0.01,  0.  ,  // rfav_dkdpi_kskpi_obs 
							   //                         0.18 , 0.  ,  1.  ,  0.   , 0.22 , 0.  ,  0.01,  // rsup_dkdpi_kskpi_obs 
							   //                         0.   , 0.04,  0.  ,  1.   , 0.   , 0.  ,  0.  ,  // afav_dk_kskpi_obs    
							   //                         0.   , 0.  ,  0.22,  0.   , 1.   , 0.  ,  0.  ,  // asup_dk_kskpi_obs    
							   //                        -0.02 , 0.01,  0.  ,  0.   , 0.   , 1.  ,  0.  ,  // afav_dpi_kskpi_obs   
							   //                         0.04 , 0.  ,  0.01,  0.   , 0.   , 0.  ,  1.  }; // asup_dpi_kskpi_obs
							   // corStatMatrix = TMatrixDSym(nObs,myCorData);
							   corSource = "3fb-1, values from the paper draft";
							   double myCorData[] = {  1.   ,-0.16 , 0.16  ,0.   , 0.  ,  0.  ,  0.  ,  // rfavsup_dpi_kskpi_obs
								   -0.16 , 1.   , 0.11  ,0.   , 0.  ,  0.  ,  0.  ,  // rfav_dkdpi_kskpi_obs 
								   0.16 , 0.11 , 1.    ,0.   , 0.  ,  0.  ,  0.  ,  // rsup_dkdpi_kskpi_obs 
								   0.   , 0.   , 0.    ,1.   , 0.  ,  0.  ,  0.  ,  // afav_dk_kskpi_obs    
								   0.   , 0.   , 0.    ,0.   , 1.  ,  0.  ,  0.  ,  // asup_dk_kskpi_obs    
								   0.   , 0.   , 0.    ,0.   , 0.  ,  1.  ,  0.  ,  // afav_dpi_kskpi_obs   
								   0.   , 0.   , 0.    ,0.   , 0.  ,  0.  ,  1.  }; // asup_dpi_kskpi_obs
							   corStatMatrix = TMatrixDSym(nObs,myCorData);

							   // no systematics correlation
							   break;
						   }
		case lumi3fb:{
						 corSource = "3fb-1, values from the paper draft";
						 double myCorData[] = {  1.   ,-0.13 , 0.16  ,0.   , 0.  ,  0.  ,  0.  ,  // rfavsup_dpi_kskpi_obs
							 -0.13 , 1.   , 0.15  ,0.   , 0.  ,  0.  ,  0.  ,  // rfav_dkdpi_kskpi_obs 
							 0.16 , 0.15 , 1.    ,0.   , 0.  ,  0.  ,  0.  ,  // rsup_dkdpi_kskpi_obs 
							 0.   , 0.   , 0.    ,1.   , 0.  ,  0.  ,  0.  ,  // afav_dk_kskpi_obs    
							 0.   , 0.   , 0.    ,0.   , 1.  ,  0.  ,  0.  ,  // asup_dk_kskpi_obs    
							 0.   , 0.   , 0.    ,0.   , 0.  ,  1.  ,  0.  ,  // afav_dpi_kskpi_obs   
							 0.   , 0.   , 0.    ,0.   , 0.  ,  0.  ,  1.  }; // asup_dpi_kskpi_obs
						 corStatMatrix = TMatrixDSym(nObs,myCorData);
						 // no systematics correlation
						 break;
					 }
		case zero:{
					  corSource = "zero";
					  break;
				  }
		default:{
					cout << "PDF_GLWADS_DKDpi_KSKpi::setCorrelations() : ERROR : config "+ConfigToTString(c)+" not found." << endl;
					exit(1);
				}    
	}
}  
void PDF_ADS_DK_Kpi::setCorrelations(config c)
{
	resetCorrelations();
	switch(c)
	{
		case lumi1fb:
			corSource = "1fb-1 LHCb-PAPER-2012-001";
			break;

		default: 
			cout << "PDF_ADS_DK_Kpi::setCorrelations() : ERROR : config "+ConfigToTString(c)+" not found." << endl;
			exit(1);    
	}
}  
void PDF_GLWADS_DKDpi_K3pi_newVars::setCorrelations(config c)
{
	resetCorrelations();
	switch(c)
	{
		case lumi3fb:
			{
				corSource = "3fb-1 ANA v7 - lifted from gammadini "; // https://twiki.cern.ch/twiki/pub/LHCbPhysics/B2D0K/LHCb-ANA-2014-071-v7.pdf (see Vavas email 04/08/15)

				// lifted from gammadini
				const double statCorrelations[81] = {
					1.0   ,-0.0618, 0.0018, 0.0088, 0.0064, 0.0821,-0.0040, 0.0020, 0.0028,
				 -0.0618, 1.0   , 0.0050, 0.0202, 0.0166, 0.0135,-0.0218,-0.0001, 0.0005,
					0.0018, 0.0050, 1.0   ,-0.0197, 0.0239,-0.0011, 0.0000,-0.0182,-0.0023,
					0.0088, 0.0202,-0.0197, 1.0   , 0.0968,-0.0001,-0.0001,-0.0041,-0.0004,
					0.0064, 0.0166, 0.0239, 0.0968, 1.0   ,-0.0005,-0.0001,-0.0009, 0.0012,
					0.0821, 0.0135,-0.0011,-0.0001,-0.0005, 1.0   ,-0.0464, 0.0409,-0.0990,
				 -0.0040,-0.0218, 0.0000,-0.0001,-0.0001,-0.0464, 1.0   ,-0.0041, 0.0116,
					0.0020,-0.0001,-0.0182,-0.0041,-0.0009, 0.0409,-0.0041, 1.0   ,-0.3080,
					0.0028, 0.0005,-0.0023,-0.0004, 0.0012,-0.0990, 0.0116,-0.3080, 1.0   };

				corStatMatrix = TMatrixDSym( nObs, statCorrelations );

				// lifted from gammadini
				const double systCorrelations[144] = {
					1.00,  0.36, -0.06,  0.27,  0.30,  0.04,  0.09,  0.78, -0.43, -0.04,  0.23, -0.14,
					0.36,  1.00, -0.03,  0.31,  0.22, -0.06, -0.55,  0.59, -0.47, -0.01,  0.12, -0.04,
				 -0.06, -0.03,  1.00, -0.02, -0.80,  0.09,  0.09, -0.10, -0.06,  0.03, -0.28,  0.07,
					0.27,  0.31, -0.02,  1.00,  0.19, -0.42, -0.01,  0.35, -0.28, -0.22,  0.11, -0.07,
					0.30,  0.22, -0.80,  0.19,  1.00,  0.11,  0.09,  0.37, -0.21, -0.16,  0.20, -0.13,
					0.04, -0.06,  0.09, -0.42,  0.11,  1.00,  0.30, -0.03,  0.06, -0.08, -0.03, -0.09,
					0.09, -0.55,  0.09, -0.01,  0.09,  0.30,  1.00, -0.11,  0.05, -0.01, -0.02, -0.02,
					0.78,  0.59, -0.10,  0.35,  0.37, -0.03, -0.11,  1.00, -0.57, -0.14,  0.33, -0.22,
				 -0.43, -0.47, -0.06, -0.28, -0.21,  0.06,  0.05, -0.57,  1.00,  0.19,  0.10,  0.02,
				 -0.04, -0.01,  0.03, -0.22, -0.16, -0.08, -0.01, -0.14,  0.19,  1.00,  0.17,  0.21,
					0.23,  0.12, -0.28,  0.11,  0.20, -0.03, -0.02,  0.33,  0.10,  0.17,  1.00, -0.11,
				 -0.14, -0.04,  0.07, -0.07, -0.13, -0.09, -0.02, -0.22,  0.02,  0.21, -0.11,  1.00};

				corSystMatrix = TMatrixDSym( nObs, systCorrelations );

				break;
			}
		default:
			{
				 cout << "PDF_GLWADS_DKDpi_K3pi_newVars::setCorrelations() : ERROR : config "+ConfigToTString(c)+" not found." << endl;
				 exit(1);
			}
	}
}
Example #14
0
void PDF_gamma::setCorrelations(config c)
{
	resetCorrelations();
	switch(c)
	{
		case year2014:{
				      corSource = "no correlations for 1 obs";
				      break;
			      }
		default:{ 
				cout << "PDF_gamma::setCorrelations() : ERROR : config "+ConfigToTString(c)+" not found." << endl;
				exit(1);
			}    
	}
}
void PDF_D_KSKpi_RWS::setCorrelations(config c)
{
  resetCorrelations();
  switch(c)
  {
    case lhcb:{
			corSource = "no correlations";
      break;
		}
    default:{
      cout << "PDF_D_KSKpi_RWS::setCorrelations() : ERROR : config "+ConfigToTString(c)+" not found." << endl;
      exit(1);
		}
  }
}
void PDF_GLW_DK_pipipi0_2var::setCorrelations(config c)
{
	resetCorrelations();
	switch(c)
	{
		case lhcb:
			corSource = "no correlation";
			corStatMatrix[1][0] = 0.;
			corSystMatrix[1][0] = 0.;
			break;

		default:
			cout << "PDF_GLW_DK_pipipi0_2var::setCorrelations() : ERROR : config "+ConfigToTString(c)+" not found." << endl;
			exit(1);
	}
}
void PDF_GLWADS_DKDpi_hh_2012::setCorrelations(config c)
{
	resetCorrelations();
	switch(c)
	{
		case lumi3fb:{
				corSource = "ANA v2 20.11.2014 ExpNll/3fbGLWADScorCorrectOrder.py";
				double dataStat[]  = { 
					 1.00 , -0.17 , -0.31 ,  0.00 ,  0.00 , -0.00 ,  0.00 , -0.00 , -0.01 , -0.11 ,  0.00 ,  0.01 ,  0.00 ,
					-0.17 ,  1.00 ,  0.06 ,  0.00 , -0.00 ,  0.00 , -0.00 , -0.00 , -0.03 ,  0.03 ,  0.00 , -0.00 ,  0.00 ,
					-0.31 ,  0.06 ,  1.00 , -0.00 , -0.00 , -0.00 ,  0.00 , -0.01 , -0.00 ,  0.04 ,  0.00 , -0.01 ,  0.00 ,
					 0.00 ,  0.00 , -0.00 ,  1.00 , -0.28 , -0.33 , -0.19 , -0.08 , -0.05 ,  0.00 , -0.03 ,  0.00 , -0.05 ,
					 0.00 , -0.00 , -0.00 , -0.28 ,  1.00 ,  0.09 ,  0.05 ,  0.02 ,  0.01 , -0.00 ,  0.01 , -0.00 ,  0.01 ,
					-0.00 ,  0.00 , -0.00 , -0.33 ,  0.09 ,  1.00 ,  0.06 , -0.01 ,  0.02 , -0.00 ,  0.01 , -0.00 ,  0.02 ,
					 0.00 , -0.00 ,  0.00 , -0.19 ,  0.05 ,  0.06 ,  1.00 ,  0.02 , -0.04 , -0.00 ,  0.01 , -0.00 ,  0.01 ,
					-0.00 , -0.00 , -0.01 , -0.08 ,  0.02 , -0.01 ,  0.02 ,  1.00 ,  0.00 , -0.00 ,  0.00 ,  0.00 ,  0.00 ,
					-0.01 , -0.03 , -0.00 , -0.05 ,  0.01 ,  0.02 , -0.04 ,  0.00 ,  1.00 , -0.00 ,  0.00 , -0.00 ,  0.00 ,
					-0.11 ,  0.03 ,  0.04 ,  0.00 , -0.00 , -0.00 , -0.00 , -0.00 , -0.00 ,  1.00 ,  0.10 , -0.02 ,  0.02 ,
					 0.00 ,  0.00 ,  0.00 , -0.03 ,  0.01 ,  0.01 ,  0.01 ,  0.00 ,  0.00 ,  0.10 ,  1.00 , -0.00 , -0.05 ,
					 0.01 , -0.00 , -0.01 ,  0.00 , -0.00 , -0.00 , -0.00 ,  0.00 , -0.00 , -0.02 , -0.00 ,  1.00 , -0.04 ,
					 0.00 ,  0.00 ,  0.00 , -0.05 ,  0.01 ,  0.02 ,  0.01 ,  0.00 ,  0.00 ,  0.02 , -0.05 , -0.04 ,  1.00 
				};
				corStatMatrix = TMatrixDSym(nObs,dataStat);
				double dataSyst[]  = { 
					 1.00 ,  0.26 ,  0.03 ,  0.00 ,  0.00 , -0.18 , -0.15 , -0.07 , -0.09 , -0.13 , -0.05 , -0.09 ,  0.07 ,
					 0.26 ,  1.00 ,  0.48 ,  0.00 , -0.02 , -0.12 , -0.24 , -0.04 , -0.16 ,  0.13 , -0.07 ,  0.06 ,  0.01 ,
					 0.03 ,  0.48 ,  1.00 ,  0.00 , -0.00 ,  0.34 , -0.05 ,  0.06 ,  0.20 ,  0.50 , -0.02 ,  0.37 , -0.22 ,
					 0.00 ,  0.00 ,  0.00 ,  1.00 ,  0.65 , -0.03 , -0.38 , -0.07 , -0.14 ,  0.01 , -0.14 , -0.03 , -0.33 ,
					 0.00 , -0.02 , -0.00 ,  0.65 ,  1.00 , -0.20 , -0.11 ,  0.02 , -0.06 , -0.03 , -0.11 , -0.08 , -0.53 ,
					-0.18 , -0.12 ,  0.34 , -0.03 , -0.20 ,  1.00 ,  0.22 , -0.40 , -0.01 ,  0.17 ,  0.01 ,  0.46 ,  0.20 ,
					-0.15 , -0.24 , -0.05 , -0.38 , -0.11 ,  0.22 ,  1.00 ,  0.14 ,  0.16 ,  0.10 ,  0.08 ,  0.06 , -0.11 ,
					-0.07 , -0.04 ,  0.06 , -0.07 ,  0.02 , -0.40 ,  0.14 ,  1.00 ,  0.66 ,  0.15 ,  0.67 , -0.31 , -0.72 ,
					-0.09 , -0.16 ,  0.20 , -0.14 , -0.06 , -0.01 ,  0.16 ,  0.66 ,  1.00 ,  0.21 ,  0.54 , -0.22 , -0.59 ,
					-0.13 ,  0.13 ,  0.50 ,  0.01 , -0.03 ,  0.17 ,  0.10 ,  0.15 ,  0.21 ,  1.00 , -0.09 ,  0.33 , -0.22 ,
					-0.05 , -0.07 , -0.02 , -0.14 , -0.11 ,  0.01 ,  0.08 ,  0.67 ,  0.54 , -0.09 ,  1.00 , -0.48 , -0.51 ,
					-0.09 ,  0.06 ,  0.37 , -0.03 , -0.08 ,  0.46 ,  0.06 , -0.31 , -0.22 ,  0.33 , -0.48 ,  1.00 ,  0.26 ,
					 0.07 ,  0.01 , -0.22 , -0.33 , -0.53 ,  0.20 , -0.11 , -0.72 , -0.59 , -0.22 , -0.51 ,  0.26 ,  1.00
				};
				corSystMatrix = TMatrixDSym(nObs,dataSyst);
				break;
		}
		default:{
				cout << "PDF_GLWADS_DKDpi_hh_2012::setCorrelations() : ERROR : config "+ConfigToTString(c)+" not found." << endl;
				exit(1);    
			}
	}
}  
void PDF_GGSZ_DstK::setCorrelations(config c)
{
	resetCorrelations();
	switch(c)
	{
		// for HFAG average
    case babar:{
							  corSource = "HFAG";
							  // no syst correlation avaialble
                //                     xm      ym      xp      yp
							  double dataStat[]  = { 1.   , -0.010,  0.000,  0.000,		// xm
                                      -0.010,  1.   ,  0.000,  0.000,		// ym
                                       0.000,  0.000,  1.   , -0.030,		// xp
                                       0.000,  0.000, -0.030,  1.     };// yp
							  corStatMatrix = TMatrixDSym(nObs,dataStat);
							  //                     xm      ym      xp      yp
							  double dataSyst[]  = { 1.   , -0.020,  0.440, -0.500,		// xm
                                      -0.020,  1.   , -0.600,  0.190,		// ym
                                       0.440, -0.600,  1.   , -0.440,		// xp
                                      -0.500,  0.190, -0.440,  1.     };// yp
							  corSystMatrix = TMatrixDSym(nObs,dataSyst);
							  break;
						  }
    case belle:{
							  corSource = "HFAG";
							  // no syst correlation avaialble
                //                     xm      ym      xp      yp
							  double dataStat[]  = { 1.   ,  0.161,  0.000,  0.000,		// xm
                                       0.161,  1.   ,  0.000,  0.000,		// ym
                                       0.000,  0.000,  1.   , -0.010,		// xp
                                       0.000,  0.000, -0.010,  1.     };// yp
							  corStatMatrix = TMatrixDSym(nObs,dataStat);
							  //                     xm      ym      xp      yp
							  double dataSyst[]  = { 1. ,  0.0,  0.0,  0.0,   // xm
                                       0.0,  1. ,  0.0,  0.0,   // ym
                                       0.0,  0.0,  1. ,  0.0,   // xp
                                       0.0,  0.0,  0.0,  1.   };// yp
							  corSystMatrix = TMatrixDSym(nObs,dataSyst);
							  break;
						  }
		default:{
					cout << "PDF_GGSZ_DstK::setCorrelations() : ERROR : config not found: " << ConfigToTString(c) << endl;
					exit(1);
				}
	}
}
void PDF_GLWADS_DK_hh_newVars::setCorrelations(config c)
{
    resetCorrelations();
    switch(c)
    {
    case lumi3fb:
    {
        corSource = "3fb-1 ANA v7 - lifted from gammadini "; // https://twiki.cern.ch/twiki/pub/LHCbPhysics/B2D0K/LHCb-ANA-2014-071-v7.pdf (see Vavas email 04/08/15)

        // lifted from gammadini
        const double statCorrelations[49] = {
            1.0   , 0.0023, 0.0012, 0.0078, 0.1024, 0.0006, 0.0009,
            0.0023, 1.0,    0.0043, 0.0243,-0.0003,-0.0144,-0.0001,
            0.0012, 0.0043, 1.0   , 0.0143,-0.0010,-0.0002,-0.0382,
            0.0078, 0.0243, 0.0143, 1.0   ,-0.0001, 0.0002, 0.0000,
            0.1024,-0.0003,-0.0010,-0.0001, 1.0   , 0.0399, 0.0245,
            0.0006,-0.0144,-0.0002, 0.0002, 0.0399, 1.0   , 0.0597,
            0.0009,-0.0001,-0.0382, 0.0000, 0.0245, 0.0597, 1.0
        };

        corStatMatrix = TMatrixDSym( nObs, statCorrelations );

        // lifted from gammadini
        const double systCorrelations[49] = {
            1.00, -0.06,  0.27,  0.09,  0.78,  0.23, -0.04,
            -0.06,  1.00, -0.02,  0.09, -0.10, -0.28,  0.03,
            0.27, -0.02,  1.00, -0.01,  0.35,  0.11, -0.22,
            0.09,  0.09, -0.01,  1.00, -0.11, -0.02, -0.01,
            0.78, -0.10,  0.35, -0.11,  1.00,  0.33, -0.14,
            0.23, -0.28,  0.11, -0.02,  0.33,  1.00,  0.17,
            -0.04,  0.03, -0.22, -0.01, -0.14,  0.17,  1.00
        };

        corSystMatrix = TMatrixDSym( nObs, systCorrelations );

        break;
    }
    default:
    {
        cout << "PDF_GLWADS_DK_hh_newVars::setCorrelations() : ERROR : config "+ConfigToTString(c)+" not found." << endl;
        exit(1);
    }
    }
}
void PDF_D_hhpi0_dilution::setCorrelations(config c)
{
	resetCorrelations();
	switch(c)
	{
		case cleo:{
							corSource = "1410.3964";
							break;
						}
		case cleo2015:{
							corSource = "1504.05878";
							break;
						}
		default:{
					cout << "PDF_D_hhpi0_dilution::setCorrelations() : ERROR : config "+ConfigToTString(c)+" not found." << endl;
					exit(1);
				}
	}
}
void PDF_D_KSKpi_noDmix::setCorrelations(config c)
{
	resetCorrelations();
	switch(c)
	{
		case cleo:{
					  corSource = "chosen by eye to match the 2D histogram of CLEO, 1203.3804";
					  corStatMatrix[1][2] = 0.60;
					  break;
				  }
		case cleoFullDP:{
							corSource = "none";
							break;
						}
		default:{
					cout << "PDF_D_KSKpi_noDmix::setCorrelations() : ERROR : config "+ConfigToTString(c)+" not found." << endl;
					exit(1);
				}
	}
}
void PDF_ADS_DKDpi_K3pi_Dmix_newVars::setCorrelations(config c)
{
	resetCorrelations();
	switch(c)
	{
		case lumi3fb:
			{
				corSource = "3fb-1 ANA v7 - lifted from gammadini "; // https://twiki.cern.ch/twiki/pub/LHCbPhysics/B2D0K/LHCb-ANA-2014-071-v7.pdf (see Vavas email 04/08/15)

				// lifted from gammadini
				const double statCorrelations[36] = {
					1.0   ,-0.0618, 0.0064, 0.0821,-0.0040, 0.0028,  // aads_dk_k3pi_obs
				 -0.0618, 1.0   , 0.0166, 0.0135,-0.0218, 0.0005,  // aads_dpi_k3pi_obs
					0.0064, 0.0166, 1.0   ,-0.0005,-0.0001, 0.0012,  // afav_dk_k3pi_obs
					0.0821, 0.0135,-0.0005, 1.0   ,-0.0464,-0.0990,  // rads_dk_k3pi_obs
				 -0.0040,-0.0218,-0.0001,-0.0464, 1.0   , 0.0116,  // rads_dpi_k3pi_obs
					0.0028, 0.0005, 0.0012,-0.0990, 0.0116, 1.0   }; // rkp_k3pi_obs

				corStatMatrix = TMatrixDSym( nObs, statCorrelations );

				// lifted from gammadini

        const double systCorrelations[36] = {
           1.00, -0.09,  0.02,  0.87,  0.05, -0.13,   // aads_dk_k3pi_obs
          -0.09,  1.00,  0.05,  0.10,  0.46,  0.17,   // aads_dpi_k3pi_obs
           0.02,  0.05,  1.00,  0.02, -0.02,  0.00,   // afav_dk_k3pi_obs
           0.87,  0.10,  0.02,  1.00,  0.14, -0.04,   // rads_dk_k3pi_obs
           0.05,  0.46, -0.02,  0.14,  1.00,  0.13,   // rads_dpi_k3pi_obs
          -0.13,  0.17,  0.00, -0.04,  0.13,  1.00};  // rkp_k3pi_obs

				corSystMatrix = TMatrixDSym( nObs, systCorrelations );

				break;
			}
		default:
			{
				 cout << "PDF_ADS_DKDpi_K3pi_Dmix_newVars::setCorrelations() : ERROR : config "+ConfigToTString(c)+" not found." << endl;
				 exit(1);
			}
	}
}
void PDF_Dmixing::setCorrelations(config c)
{
	resetCorrelations();
	switch(c)
	{
		case lumi1fb:{
						 corSource = "1fb-1 LHCb-PAPER-2012-038";
						 corStatMatrix[1][0] = -0.954; // RD, yprime
						 corStatMatrix[2][0] = +0.882; // RD, xprimesq
						 corStatMatrix[2][1] = -0.973; // yprime, xprimesq

						 corSystMatrix[1][0] = 0.;
						 corSystMatrix[2][0] = 0.;
						 corSystMatrix[2][1] = 0.;
						 break;
					 }
		default:{
					cout << "PDF_Dmixing::setCorrelations() : ERROR : config "+ConfigToTString(c)+" not found." << endl;
					exit(1);
				}
	}
}
void PDF_GLW_DK_2var::setCorrelations(config c)
{
	resetCorrelations();
	switch(c)
	{
		case cdf:
			corSource = "FERMILAB-PUB-09-549-E";
			corStatMatrix[1][0] = 0.;
			corSystMatrix[1][0] = 0.;
			break;

		case lhcb:
			corSource = "1fb-1 LHCb-PAPER-2012-001";
			corStatMatrix[1][0] = 0.;
			corSystMatrix[1][0] = 0.;
			break;

		default:
			cout << "PDF_GLW_DK_2var::setCorrelations() : ERROR : config "+ConfigToTString(c)+" not found." << endl;
			exit(1);
	}
}
Example #25
0
void PDF_D_Cleo::setCorrelations(config c)
{
    resetCorrelations();
    switch(c)
    {
    case cleo:
    {
        corSource = "Cleo 2009 ARXIV:0903.4853";
        corStatMatrix[0][ 1] = -0.067;
        corStatMatrix[0][ 2] = 0.078 ;
        corStatMatrix[0][ 3] = 0.045 ;
        corStatMatrix[0][ 4] = -0.082;
        corStatMatrix[0][ 5] = -0.020;
        corStatMatrix[0][ 6] = -0.014;
        corStatMatrix[0][ 7] = 0.002 ;
        corStatMatrix[0][ 8] = 0.008 ;
        corStatMatrix[0][ 9] = 0.071 ;
        corStatMatrix[0][10] = 0.325 ;
        corStatMatrix[0][11] = -0.134;
        corStatMatrix[0][12] = 0.051 ;

        corStatMatrix[1][ 2] = 0.127 ;
        corStatMatrix[1][ 3] = 0.256 ;
        corStatMatrix[1][ 4] = -0.008;
        corStatMatrix[1][ 5] = 0.140 ;
        corStatMatrix[1][ 6] = 0.188 ;
        corStatMatrix[1][ 7] = -0.023;
        corStatMatrix[1][ 8] = 0.096 ;
        corStatMatrix[1][ 9] = 0.244 ;
        corStatMatrix[1][10] = -0.031;
        corStatMatrix[1][11] = -0.126;
        corStatMatrix[1][12] = -0.032;

        corStatMatrix[2][ 3] = 0.455 ;
        corStatMatrix[2][ 4] = 0.080 ;
        corStatMatrix[2][ 5] = -0.059;
        corStatMatrix[2][ 6] = -0.046;
        corStatMatrix[2][ 7] = -0.014;
        corStatMatrix[2][ 8] = 0.060 ;
        corStatMatrix[2][ 9] = 0.018 ;
        corStatMatrix[2][10] = 0.098 ;
        corStatMatrix[2][11] = -0.138;
        corStatMatrix[2][12] = 0.150 ;

        corStatMatrix[3][ 4] = -0.033;
        corStatMatrix[3][ 5] = 0.377 ;
        corStatMatrix[3][ 6] = 0.467 ;
        corStatMatrix[3][ 7] = 0.004 ;
        corStatMatrix[3][ 8] = -0.027;
        corStatMatrix[3][ 9] = 0.142 ;
        corStatMatrix[3][10] = 0.131 ;
        corStatMatrix[3][11] = -0.295;
        corStatMatrix[3][12] = 0.114 ;

        corStatMatrix[4][ 5] = -0.189;
        corStatMatrix[4][ 6] = -0.188;
        corStatMatrix[4][ 7] = -0.001;
        corStatMatrix[4][ 8] = 0.005 ;
        corStatMatrix[4][ 9] = -0.037;
        corStatMatrix[4][10] = 0.001 ;
        corStatMatrix[4][11] = 0.047 ;
        corStatMatrix[4][12] = -0.006;

        corStatMatrix[5][ 6] = 0.945 ;
        corStatMatrix[5][ 7] = 0.004 ;
        corStatMatrix[5][ 8] = -0.015;
        corStatMatrix[5][ 9] = 0.107 ;
        corStatMatrix[5][10] = -0.014;
        corStatMatrix[5][11] = -0.146;
        corStatMatrix[5][12] = 0.012 ;

        corStatMatrix[6][ 7] = 0.005 ;
        corStatMatrix[6][ 8] = -0.004;
        corStatMatrix[6][ 9] = 0.121 ;
        corStatMatrix[6][10] = -0.002;
        corStatMatrix[6][11] = -0.071;
        corStatMatrix[6][12] = 0.008 ;

        corStatMatrix[7][ 8] = 0.006 ;
        corStatMatrix[7][ 9] = -0.005;
        corStatMatrix[7][10] = 0.008 ;
        corStatMatrix[7][11] = 0.001 ;
        corStatMatrix[7][12] = -0.002;

        corStatMatrix[8][ 9] = 0.005 ;
        corStatMatrix[8][10] = -0.028;
        corStatMatrix[8][11] = -0.024;
        corStatMatrix[8][12] = 0.008 ;

        corStatMatrix[9][10] = 0.104 ;
        corStatMatrix[9][11] = 0.047 ;
        corStatMatrix[9][12] = -0.001;

        corStatMatrix[10][11] = -0.054;
        corStatMatrix[10][12] = -0.006;

        corStatMatrix[11][12] = 0.028;
        break;
    }

    default:
        cout << "PDF_D_Cleo::setCorrelations() : ERROR : config "+ConfigToTString(c)+" not found." << endl;
        exit(1);
    }
}
void PDF_GLWADS_DKDpi_K3pi::setCorrelations(config c)
{
	resetCorrelations();
	switch(c)
	{
		case lumi1fb:{
						 corSource = "1fb-1, ExpNll/sept2012K3PIResult.root";
						 TString File = this->dir+"/ExpNll/sept2012K3PIResult.root";
						 if ( !FileExists(File) ){cout << "PDF_GLWADS_DKDpi_K3pi::setCorrelations : ERROR : File not found : " << File << endl; exit(1);}
						 TFile *fr = TFile::Open(File);
						 RooFitResult *r = (RooFitResult*)fr->Get("fitresult_model_reducedData_binned");
						 assert(r);
						 for ( int i=0; i<nObs; i++ )
							 for ( int j=0; j<nObs; j++ )
							 {
								 RooRealVar* pObs1 = (RooRealVar*)((RooArgList*)observables)->at(i);
								 RooRealVar* pObs2 = (RooRealVar*)((RooArgList*)observables)->at(j);
								 corStatMatrix[i][j] = r->correlation(obsTmkToMalcolm(pObs1->GetName()),obsTmkToMalcolm(pObs2->GetName()));
							 }
						 // no systematics correlation
						 fr->Close();
						 delete r;
						 delete fr;
						 break;
					 }
		case lumi1fbSystCor:{
								corSource = "1fb-1, ExpNll/sept2012K3PIResult.root, Malcolm's toys";
								TString File = this->dir+"/ExpNll/sept2012K3PIResult.root";
								if ( !FileExists(File) ){cout << "PDF_GLWADS_DKDpi_K3pi::setCorrelations : ERROR : File not found : " << File << endl; exit(1);}
								TFile *fr = TFile::Open(File);
								RooFitResult *r = (RooFitResult*)fr->Get("fitresult_model_reducedData_binned");
								assert(r);
								for ( int i=0; i<nObs; i++ )
									for ( int j=0; j<nObs; j++ ){
										RooRealVar* pObs1 = (RooRealVar*)((RooArgList*)observables)->at(i);
										RooRealVar* pObs2 = (RooRealVar*)((RooArgList*)observables)->at(j);
										corStatMatrix[i][j] = r->correlation(obsTmkToMalcolm(pObs1->GetName()),obsTmkToMalcolm(pObs2->GetName()));
									}
								// systematics correlations
								SystCor_K3pi mySystCor;
								for ( int i=0; i<nObs; i++ )
									for ( int j=0; j<nObs; j++ ){
										RooRealVar* tmkObs1 = (RooRealVar*)((RooArgList*)observables)->at(i);
										RooRealVar* tmkObs2 = (RooRealVar*)((RooArgList*)observables)->at(j);
										corSystMatrix[i][j] = mySystCor.getCor(obsTmkToMalcolm(tmkObs1->GetName()), obsTmkToMalcolm(tmkObs2->GetName()));
									}
								fr->Close();
								delete r;
								delete fr;
								break;
							}
		case zero:{
					  corSource = "zero";
					  break;
				  }
		default:{
					cout << "PDF_GLWADS_DKDpi_K3pi::setCorrelations() : ERROR : config "+ConfigToTString(c)+" not found." << endl;
					exit(1);
				}
	}
}
void PDF_GGSZ_DKstz::setCorrelations(config c)
{
	resetCorrelations();
	switch(c)
	{
    case lumi3fb: {
							  corSource = "no correlations";
                break;
              }
    case lumi3fb_estimate:{
							  corSource = "estimate";
							  //                     xm      ym      xp      yp
							  double dataStat[]  = { 1.   , -0.247,  0.038, -0.003,		// xm
								                      -0.247,  1.   , -0.011,  0.012,		// ym
								                       0.038, -0.011,  1.   ,  0.002,		// xp
								                      -0.003,  0.012,  0.002,  1.     };// yp
							  corStatMatrix = TMatrixDSym(nObs,dataStat);
							  //                     xm      ym      xp      yp
							  double dataSyst[]  = { 1.   ,  0.005, -0.025,  0.070,   // xm
								                       0.005,  1.   ,  0.009, -0.141,   // ym
								                      -0.025,  0.009,  1.   ,  0.008,   // xp
								                       0.070, -0.141,  0.008,  1.     };// yp
							  corSystMatrix = TMatrixDSym(nObs,dataSyst);
							  break;
						  }
    case lhcb:{
							  corSource = "MI GGSZ from Sneha's email"; // Sneha's mail 22/01/16
							  //                     xm      ym      xp      yp
							  double dataStat[]  = { 1.   ,  0.13 ,  0.00 , -0.01 ,		// xm
								                       0.13 ,  1.   , -0.01 ,  0.02 ,		// ym
								                       0.00 , -0.01 ,  1.   ,  0.13 ,		// xp
								                      -0.01 ,  0.02 ,  0.13 ,  1.     };// yp
							  corStatMatrix = TMatrixDSym(nObs,dataStat);
							  //                     xm      ym      xp      yp
							  double dataSyst[]  = { 1.   ,  0.00 ,  0.00 ,  0.00 ,   // xm
								                       0.00 ,  1.   ,  0.00 ,  0.00 ,   // ym
								                       0.00 ,  0.00 ,  1.   ,  0.00 ,   // xp
								                       0.00 ,  0.00 ,  0.00 ,  1.     };// yp
							  corSystMatrix = TMatrixDSym(nObs,dataSyst);
							  break;
						  }
    // for HFAG
    case belle:{
							  corSource = "estimate";
							  //                     xm      ym      xp      yp
							  double dataStat[]  = { 1.  ,  0.07,  0.00, -0.00,		// xm
								                       0.07,  1.  , -0.00,  0.00,		// ym
								                       0.00,  0.00,  1.  , -0.07,		// xp
								                       0.00,  0.00, -0.07,  1.    };// yp
							  corStatMatrix = TMatrixDSym(nObs,dataStat);
							  //                     xm      ym      xp      yp
							  double dataSyst[]  = { 1.  ,  0.00,  0.00,  0.00,   // xm
								                       0.00,  1.  ,  0.00,  0.00,   // ym
								                       0.00,  0.00,  1.  ,  0.00,   // xp
								                       0.00,  0.00,  0.00,  1.    };// yp
							  corSystMatrix = TMatrixDSym(nObs,dataSyst);
							  break;
						  }
		default:{
					cout << "PDF_GGSZ::setCorrelations() : ERROR : config not found: " << ConfigToTString(c) << endl;
					exit(1);
				}
	}
}
void PDF_D_CleoNoK2pi::setCorrelations(config c)
{
	resetCorrelations();
	switch(c)
	{
		case cleo:
			{
				corSource = "Cleo 2009 ARXIV:0903.4853";

				corStatMatrix[0][ 1] = -0.067;
				corStatMatrix[0][ 2] = -0.082;
				corStatMatrix[0][ 3] = -0.020;
				corStatMatrix[0][ 4] = -0.014;
				corStatMatrix[0][ 5] = 0.002 ;
				corStatMatrix[0][ 6] = 0.008 ;
				corStatMatrix[0][ 7] = 0.071 ;
				corStatMatrix[0][ 8] = 0.325 ;

				corStatMatrix[1][ 2] = -0.008;
				corStatMatrix[1][ 3] = 0.140 ;
				corStatMatrix[1][ 4] = 0.188 ;
				corStatMatrix[1][ 5] = -0.023;
				corStatMatrix[1][ 6] = 0.096 ;
				corStatMatrix[1][ 7] = 0.244 ;
				corStatMatrix[1][ 8] = -0.031;

				corStatMatrix[2][ 3] = -0.189;
				corStatMatrix[2][ 4] = -0.188;
				corStatMatrix[2][ 5] = -0.001;
				corStatMatrix[2][ 6] = 0.005 ;
				corStatMatrix[2][ 7] = -0.037;
				corStatMatrix[2][ 8] = 0.001 ;

				corStatMatrix[3][ 4] = 0.945 ;
				corStatMatrix[3][ 5] = 0.004 ;
				corStatMatrix[3][ 6] = -0.015;
				corStatMatrix[3][ 7] = 0.107 ;
				corStatMatrix[3][ 8] = -0.014;

				corStatMatrix[4][ 5] = 0.005 ;
				corStatMatrix[4][ 6] = -0.004;
				corStatMatrix[4][ 7] = 0.121 ;
				corStatMatrix[4][ 8] = -0.002;

				corStatMatrix[5][ 6] = 0.006 ;
				corStatMatrix[5][ 7] = -0.005;
				corStatMatrix[5][ 8] = 0.008 ;

				corStatMatrix[6][ 7] = 0.005 ;
				corStatMatrix[6][ 8] = -0.028;

				corStatMatrix[7][ 8] = 0.104 ;

				break;
			}

		default: 
			cout << "PDF_D_CleoNoK2pi::setCorrelations() : ERROR : config "+ConfigToTString(c)+" not found." << endl;
			exit(1);    
	}
}