コード例 #1
0
ファイル: calccorr.C プロジェクト: XuQiao/HI
void calccorr(int i=1,string t="ptccentc"){
float const PI = acos(-1.0);
const int ncent = 8;
const int npt = 10;
if(i==0) TString dire="north";
else TString dire="south";
//TFile *f=TFile::Open("merged_AnapAumbst.root");
TFile *f=TFile::Open("merged_AnapAumbcentral.root");
//TFile *f=TFile::Open("merged_AnapAumbcentral_PC3Sigma2.root");
//TFile *f=TFile::Open("merged_PUlow_AnapAumbcentral.root");
//TFile *f=TFile::Open("merged_PUhigh_AnapAumbcentral.root");
TH1F* kforebbcw[ncent][npt];
TH1F* hforebbcw[ncent][npt];
TH1F* kbackbbcw2[ncent][npt];
TH1F* kforebbcw_In;
TH1F* hforebbcw_In;
TH1F* kbackbbcw2_In;
double ptbin[npt+1] = {0.2,0.5,1.0,1.5,2.0,2.5,3.0,3.5,4.0,4.5,5.0};
double centbin[ncent+1] = {0,1,2,3,4,5,6,7,8,9,30};
TString type = t.c_str();
if(type=="ptIn25_4"){
double selptbin[] = {2.5,4.0};
double selcentbin[ncent+1] = {0,0.01,0.05,0.1,0.2,0.3,0.4,0.6,1.0};
}
else if(type=="ptIn"){
double selptbin[] = {1.0,3.0};
double selcentbin[ncent+1] = {0,0.01,0.05,0.1,0.2,0.3,0.4,0.6,1.0};
}
else if(type=="ptcoarser"){
double selptbin[] = {0.2,1.0,2.0,3.0,5.0};
double selcentbin[ncent+1] = {0,0.01,0.05,0.1,0.2,0.3,0.4,0.6,1.0};
}
else if(type=="ptfiner"){
double selptbin[] = {0.2,0.5,1.0,1.5,2.0,2.5,3.0,3.5,4.0,4.5,5.0};
double selcentbin[ncent+1] = {0,0.01,0.05,0.1,0.2,0.3,0.4,0.6,1.0};
}
else if(type=="centIn"){
double selptbin[] = {0.2,0.5,1.0,1.5,2.0,2.5,3.0,3.5,4.0,4.5,5.0};
double selcentbin[] = {0,1.0};
}
else if(type=="ptccentc"){
double selptbin[] = {0.5,3.0};
double selcentbin[ncent+1] = {0,1,2,3,4,5,6,7,8,9,30};
double selcentbin[] = {0,0.05};
}
else{exit(0);};

/*double ptmin = 1.0; double ptmax = 3.0;//has to be boundary
for(int ipt=0; ipt<npt; ipt++){
if(ptmin >= ptbin[ipt] && ptmin < ptbin[ipt+1]){int xptmin = ipt; continue;}
if(ptmax >= ptbin[ipt] && ptmax < ptbin[ipt+1]){int xptmax = ipt; continue;}
}*/
  ofstream fsout(Form("stat_central_%s_%s.txt",type.Data(),dire.Data()));
  ofstream fout(Form("c2_central_%s_%s_pAu.dat",type.Data(),dire.Data()));
for(int icent=0; icent<ncent; icent++){
for(int ipt=0; ipt<npt; ipt++){
kforebbcw[icent][ipt] = (TH1F*)f->Get(Form("kfore%sbbcw_%d_%d",dire.Data(),icent,ipt));
hforebbcw[icent][ipt] = (TH1F*)f->Get(Form("hfore%sbbcw_%d_%d",dire.Data(),icent,ipt));
kbackbbcw2[icent][ipt] = (TH1F*)f->Get(Form("kback%sbbcw2_%d_%d",dire.Data(),icent,ipt));
}
}
int ncent_a = sizeof(selcentbin)/sizeof(double)-1;
int npt_a = sizeof(selptbin)/sizeof(double)-1;
for(int icent_a=0;icent_a<ncent_a;icent_a++){
for(int icent_b=0; icent_b<ncent+1; icent_b++)
if(selcentbin[icent_a] == centbin[icent_b]) break;
int xcentmin = icent_b;
for(int icent_b=0; icent_b<ncent+1; icent_b++)
if(selcentbin[icent_a+1] == centbin[icent_b]) break;
int xcentmax = icent_b;
if((xcentmin == ncent+1) || (xcentmax == ncent+1)) exit(0);
for(int ipt_a=0;ipt_a<npt_a;ipt_a++){
for(int ipt_b=0; ipt_b<npt+1; ipt_b++)
if(selptbin[ipt_a] == ptbin[ipt_b]) break;
int xptmin = ipt_b;
for(int ipt_b=0; ipt_b<npt+1; ipt_b++)
if(selptbin[ipt_a+1] == ptbin[ipt_b]) break;
int xptmax = ipt_b;
if((xptmin == npt+1) || (xptmax == npt+1)) exit(0);
cout<<xcentmin<<"\t"<<xcentmax<<"\t"<<endl;
cout<<xptmin<<"\t"<<xptmax<<"\t"<<endl;
kforebbcw_In = (TH1F*)kforebbcw[xcentmin][xptmin]->Clone();
hforebbcw_In = (TH1F*)hforebbcw[xcentmin][xptmin]->Clone();
kbackbbcw2_In = (TH1F*)kbackbbcw2[xcentmin][xptmin]->Clone();
kforebbcw_In->Reset();
hforebbcw_In->Reset();
kbackbbcw2_In->Reset();
for(int icent=xcentmin; icent<xcentmax; icent++){
for(int ipt=xptmin; ipt<xptmax; ipt++){
kforebbcw_In->Add(kforebbcw[icent][ipt]);
hforebbcw_In->Add(hforebbcw[icent][ipt]);
kbackbbcw2_In->Add(kbackbbcw2[icent][ipt]);
}
}
kforebbcw_In->Rebin(2);
hforebbcw_In->Rebin(2);
kbackbbcw2_In->Rebin(2);


TH1F* hpp;
TH1F* hbackpp;
  hpp = (TH1F*)kforebbcw_In->Clone();
  hbackpp = (TH1F*)kbackbbcw2_In->Clone();
  float nbackpp = hbackpp->Integral()/2.0/PI;
  float nforepp = hpp->Integral()/2.0/PI;
  //float ntrig0 = ptforedis_0->Integral(11,30);
   for(int i=0; i<20; i++){
     float pp_cont = 1.0*hpp->GetBinContent(i+1);
     //float pp0_err = 1.0*hpp->GetBinError(i+1);
     float weight2 = sqrt(1.0*hforebbcw_In->GetBinContent(i+1));

     float backpp_cont = 1.0*hbackpp->GetBinContent(i+1);
    
     float con = pp_cont/backpp_cont*nbackpp/nforepp;
     float err = weight2/backpp_cont*nbackpp/nforepp;

     hpp->SetBinContent(i+1, con);
     hpp->SetBinError(i+1, err);

     if(i==0) fsout<<pp_cont<<" "<<weight2<<" "<<con<<" "<<err<<endl;
   }
  TF1 *fun0 = new TF1("fun0","[0]*(1+2*[1]*cos(x)+2*[2]*cos(2*x)+2*[3]*cos(3*x)+2*[4]*cos(4*x))", -0.5*PI, 1.5*PI);

  fun0->SetLineColor(1);
  hpp->Fit("fun0","NORQ");

  TF1 *fun1 = new TF1("fun1","[0]*(1+2*[1]*cos(x))",   -0.5*PI, 1.5*PI);
  TF1 *fun2 = new TF1("fun2","[0]*(1+2*[1]*cos(2*x))", -0.5*PI, 1.5*PI);
  TF1 *fun3 = new TF1("fun3","[0]*(1+2*[1]*cos(3*x))", -0.5*PI, 1.5*PI);
  TF1 *fun4 = new TF1("fun4","[0]*(1+2*[1]*cos(4*x))", -0.5*PI, 1.5*PI);

const double ptmean[npt] = {0.360943, 0.691833, 1.1911, 1.69654, 2.20117, 2.70571, 3.2097, 3.71372, 4.21814, 4.72014};
  fout//<<fun0->GetParameter(1)<<" "<<fun0->GetParError(1)<<" "
      <<ptmean[ipt_a]<<" "<<fun0->GetParameter(2)<<" "<<fun0->GetParError(2)<<" "<<0.05*fun0->GetParameter(2)<<" "<<endl;
      //<<fun0->GetParameter(3)<<" "<<fun0->GetParError(3)<<endl;
}
}
  fout.close();
  fsout.close();

/*  
  cout<<"*************** v2 ***********"<<endl;
  float v2_0 = funvn0->GetParameter(1)/(zym_pp0 + funvn0->GetParameter(0));
  float v2_1 = funvn1->GetParameter(1)/(zym_pp1 + funvn1->GetParameter(0));
  float v2_2 = funvn2->GetParameter(1)/(zym_pp2 + funvn2->GetParameter(0));
  float v2_3 = funvn3->GetParameter(1)/(zym_pp3 + funvn3->GetParameter(0));
  

  cout<<v2_0<<" "<<v2_1<<" "<<v2_2<<" "<<v2_3<<endl;
 
  
  cout<<funvn0->GetParameter(0)*funvn0->GetParameter(1)<<" "
      <<funvn1->GetParameter(0)*funvn1->GetParameter(1)<<" "
      <<funvn2->GetParameter(0)*funvn2->GetParameter(1)<<" "
      <<funvn3->GetParameter(0)*funvn3->GetParameter(1)<<endl;
  

  cout<<"*************** v2 ***********"<<endl;
  cout<<funvn0->GetParameter(2)<<" "<<funvn1->GetParameter(2)<<" "<<funvn2->GetParameter(2)<<" "<<funvn3->GetParameter(2)<<endl;

  cout<<"*************** v3 ***********"<<endl;
  cout<<funvn0->GetParameter(3)<<" "<<funvn1->GetParameter(3)<<" "<<funvn2->GetParameter(3)<<" "<<funvn3->GetParameter(3)<<endl;
*/
}
コード例 #2
0
ファイル: calccorr.C プロジェクト: XuQiao/phenix
void calccorr(int i=0, string t){
if(i==0) TString dire = "north";
if(i==1) TString dire = "south";

  float const PI = acos(-1.0);
const int nntrk = 10;
const int npt = 10;
TFile *f=TFile::Open("merged.root");
TH1F* kforebbcw[nntrk][npt];
TH1F* hforebbcw[nntrk][npt];
TH1F* kbackbbcw2[nntrk][npt];
TH1F* kforebbcw_In;
TH1F* hforebbcw_In;
TH1F* kbackbbcw2_In;
double ptbin[npt+1] = {0.2,0.5,1.0,1.5,2.0,2.5,3.0,3.5,4.0,4.5,5.0};
double ntrkbin[nntrk+1] = {0,1,2,3,4,5,6,7,8,9,10};
TString type = t.c_str();
if(type=="ptIn25_4"){
double selptbin[] = {2.5,4.0};
double selntrkbin[] = {0,1,2,3,10};
}
else if(type=="ptIn"){
double selptbin[] = {1.0,3.0};
double selntrkbin[] = {0,1,2,3,10};
}
else if(type=="ptcoarser"){
double selptbin[] = {0.2,1.0,2.0,3.0,5.0};
double selntrkbin[] = {0,1,2,3,10};
}
else if(type=="ptfiner"){
double selptbin[] = {0.2,0.5,1.0,1.5,2.0,2.5,3.0,3.5,4.0,4.5,5.0};
double selntrkbin[] = {0,1,2,3,10};
}
else if(type=="ntrkIn"){
double selptbin[] = {0.2,0.5,1.0,1.5,2.0,2.5,3.0,3.5,4.0,4.5,5.0};
double selntrkbin[] = {0,10};
}
else{exit(0);};

/*double ptmin = 1.0; double ptmax = 3.0;//has to be boundary
for(int ipt=0; ipt<npt; ipt++){
if(ptmin >= ptbin[ipt] && ptmin < ptbin[ipt+1]){int xptmin = ipt; continue;}
if(ptmax >= ptbin[ipt] && ptmax < ptbin[ipt+1]){int xptmax = ipt; continue;}
}*/
  ofstream fsout(Form("stat_%s_%s.txt",type.Data(),dire.Data()));
  ofstream fout(Form("c1_c2_%s_%s.dat",type.Data(),dire.Data()));
for(int intrk=0; intrk<nntrk; intrk++){
for(int ipt=0; ipt<npt; ipt++){
kforebbcw[intrk][ipt] = (TH1F*)f->Get(Form("kfore%sbbcw_%d_%d",dire.Data(),intrk,ipt));
hforebbcw[intrk][ipt] = (TH1F*)f->Get(Form("hfore%sbbcw_%d_%d",dire.Data(),intrk,ipt));
kbackbbcw2[intrk][ipt] = (TH1F*)f->Get(Form("kback%sbbcw2_%d_%d",dire.Data(),intrk,ipt));
}
}
int nntrk_a = sizeof(selntrkbin)/sizeof(double)-1;
int npt_a = sizeof(selptbin)/sizeof(double)-1;
for(int intrk_a=0;intrk_a<nntrk_a;intrk_a++){
for(int intrk_b=0; intrk_b<nntrk+1; intrk_b++)
if(selntrkbin[intrk_a] == ntrkbin[intrk_b]) break;
int xntrkmin = intrk_b;
for(int intrk_b=0; intrk_b<nntrk+1; intrk_b++)
if(selntrkbin[intrk_a+1] == ntrkbin[intrk_b]) break;
int xntrkmax = intrk_b;
if((xntrkmin == nntrk+1) || (xntrkmax == nntrk+1)) exit(0);
for(int ipt_a=0;ipt_a<npt_a;ipt_a++){
for(int ipt_b=0; ipt_b<npt+1; ipt_b++)
if(selptbin[ipt_a] == ptbin[ipt_b]) break;
int xptmin = ipt_b;
for(int ipt_b=0; ipt_b<npt+1; ipt_b++)
if(selptbin[ipt_a+1] == ptbin[ipt_b]) break;
int xptmax = ipt_b;
if((xptmin == npt+1) || (xptmax == npt+1)) exit(0);
cout<<xntrkmin<<"\t"<<xntrkmax<<"\t"<<endl;
cout<<xptmin<<"\t"<<xptmax<<"\t"<<endl;
kforebbcw_In = (TH1F*)kforebbcw[xntrkmin][xptmin]->Clone();
hforebbcw_In = (TH1F*)hforebbcw[xntrkmin][xptmin]->Clone();
kbackbbcw2_In = (TH1F*)kbackbbcw2[xntrkmin][xptmin]->Clone();
kforebbcw_In->Reset();
hforebbcw_In->Reset();
kbackbbcw2_In->Reset();
for(int intrk=xntrkmin; intrk<xntrkmax; intrk++){
for(int ipt=xptmin; ipt<xptmax; ipt++){
kforebbcw_In->Add(kforebbcw[intrk][ipt]);
hforebbcw_In->Add(hforebbcw[intrk][ipt]);
kbackbbcw2_In->Add(kbackbbcw2[intrk][ipt]);
}
}
kforebbcw_In->Rebin(2);
hforebbcw_In->Rebin(2);
kbackbbcw2_In->Rebin(2);


TH1F* hpp;
TH1F* hbackpp;
  hpp = (TH1F*)kforebbcw_In->Clone();
  hbackpp = (TH1F*)kbackbbcw2_In->Clone();
  float nbackpp = hbackpp->Integral()/2.0/PI;
  float nforepp = hpp->Integral()/2.0/PI;
  //float ntrig0 = ptforedis_0->Integral(11,30);
   for(int i=0; i<20; i++){
     float pp_cont = 1.0*hpp->GetBinContent(i+1);
     //float pp0_err = 1.0*hpp->GetBinError(i+1);
     float weight2 = sqrt(1.0*hforebbcw_In->GetBinContent(i+1));

     float backpp_cont = 1.0*hbackpp->GetBinContent(i+1);
    
     float con = pp_cont/backpp_cont*nbackpp/nforepp;
     float err = weight2/backpp_cont*nbackpp/nforepp;

     hpp->SetBinContent(i+1, con);
     hpp->SetBinError(i+1, err);

     if(i==0) fsout<<pp_cont<<" "<<weight2<<" "<<con<<" "<<err<<endl;
   }
  TF1 *fun0 = new TF1("fun0","[0]*(1+2*[1]*cos(x)+2*[2]*cos(2*x)+2*[3]*cos(3*x)+2*[4]*cos(4*x))", -0.5*PI, 1.5*PI);

  fun0->SetLineColor(1);
  hpp->Fit("fun0","NORQ");

  TF1 *fun1 = new TF1("fun1","[0]*(1+2*[1]*cos(x))",   -0.5*PI, 1.5*PI);
  TF1 *fun2 = new TF1("fun2","[0]*(1+2*[1]*cos(2*x))", -0.5*PI, 1.5*PI);
  TF1 *fun3 = new TF1("fun3","[0]*(1+2*[1]*cos(3*x))", -0.5*PI, 1.5*PI);
  TF1 *fun4 = new TF1("fun4","[0]*(1+2*[1]*cos(4*x))", -0.5*PI, 1.5*PI);

  fout<<fun0->GetParameter(1)<<" "<<fun0->GetParError(1)<<" "
      <<fun0->GetParameter(2)<<" "<<fun0->GetParError(2)<<" "
      <<fun0->GetParameter(3)<<" "<<fun0->GetParError(3)<<endl;
}
}
  fout.close();
  fsout.close();

/*  
  cout<<"*************** v2 ***********"<<endl;
  float v2_0 = funvn0->GetParameter(1)/(zym_pp0 + funvn0->GetParameter(0));
  float v2_1 = funvn1->GetParameter(1)/(zym_pp1 + funvn1->GetParameter(0));
  float v2_2 = funvn2->GetParameter(1)/(zym_pp2 + funvn2->GetParameter(0));
  float v2_3 = funvn3->GetParameter(1)/(zym_pp3 + funvn3->GetParameter(0));
  

  cout<<v2_0<<" "<<v2_1<<" "<<v2_2<<" "<<v2_3<<endl;
 
  
  cout<<funvn0->GetParameter(0)*funvn0->GetParameter(1)<<" "
      <<funvn1->GetParameter(0)*funvn1->GetParameter(1)<<" "
      <<funvn2->GetParameter(0)*funvn2->GetParameter(1)<<" "
      <<funvn3->GetParameter(0)*funvn3->GetParameter(1)<<endl;
  

  cout<<"*************** v2 ***********"<<endl;
  cout<<funvn0->GetParameter(2)<<" "<<funvn1->GetParameter(2)<<" "<<funvn2->GetParameter(2)<<" "<<funvn3->GetParameter(2)<<endl;

  cout<<"*************** v3 ***********"<<endl;
  cout<<funvn0->GetParameter(3)<<" "<<funvn1->GetParameter(3)<<" "<<funvn2->GetParameter(3)<<" "<<funvn3->GetParameter(3)<<endl;
*/
}
コード例 #3
0
ファイル: plotsouthcornew2.C プロジェクト: XuQiao/phenix
void plotsouthcornew2(){
  gStyle->SetOptTitle(0);
  gStyle->SetOptStat(0);
  gStyle->SetStripDecimals(0);
  gStyle->SetErrorX(0);

  float const PI = acos(-1.0);

  TFile *f=new TFile("output_test_pc1.root");
  TH1F *kforesouthbbcwnew_0_1 = kforesouthbbcw_0_0->Clone();
  TH1F *kforesouthbbcwnew_0_2 = kforesouthbbcw_0_1->Clone();
  TH1F *kforesouthbbcwnew_0_3 = kforesouthbbcw_0_2->Clone();
  TH1F *kforesouthbbcwnew_0_4 = kforesouthbbcw_0_3->Clone();

  TH1F *kforesouthbbcwnew_1_1 = kforesouthbbcw_1_0->Clone();
  TH1F *kforesouthbbcwnew_1_2 = kforesouthbbcw_1_1->Clone();
  TH1F *kforesouthbbcwnew_1_3 = kforesouthbbcw_1_2->Clone();
  TH1F *kforesouthbbcwnew_1_4 = kforesouthbbcw_1_3->Clone();

  TH1F *kforesouthbbcwnew_2_1 = kforesouthbbcw_2_0->Clone();
  TH1F *kforesouthbbcwnew_2_2 = kforesouthbbcw_2_1->Clone();
  TH1F *kforesouthbbcwnew_2_3 = kforesouthbbcw_2_2->Clone();
  TH1F *kforesouthbbcwnew_2_4 = kforesouthbbcw_2_3->Clone();

  TH1F *kforesouthbbcwnew_3_1 = kforesouthbbcw_3_0->Clone();
  TH1F *kforesouthbbcwnew_3_2 = kforesouthbbcw_3_1->Clone();
  TH1F *kforesouthbbcwnew_3_3 = kforesouthbbcw_3_2->Clone();
  TH1F *kforesouthbbcwnew_3_4 = kforesouthbbcw_3_3->Clone();

  TH1F *kforesouthbbcwnew_4_1 = kforesouthbbcw_4_0->Clone();
  TH1F *kforesouthbbcwnew_4_2 = kforesouthbbcw_4_1->Clone();
  TH1F *kforesouthbbcwnew_4_3 = kforesouthbbcw_4_2->Clone();
  TH1F *kforesouthbbcwnew_4_4 = kforesouthbbcw_4_3->Clone();

  TH1F *kforesouthbbcwnew_5_1 = kforesouthbbcw_5_0->Clone();
  TH1F *kforesouthbbcwnew_5_2 = kforesouthbbcw_5_1->Clone();
  TH1F *kforesouthbbcwnew_5_3 = kforesouthbbcw_5_2->Clone();
  TH1F *kforesouthbbcwnew_5_4 = kforesouthbbcw_5_3->Clone();

  kforesouthbbcwnew_0_1->Add(kforesouthbbcwnew_0_4);
  kforesouthbbcwnew_0_1->Add(kforesouthbbcwnew_0_3);
  kforesouthbbcwnew_0_1->Add(kforesouthbbcwnew_0_2);

  kforesouthbbcwnew_1_3->Add(kforesouthbbcwnew_1_4);
  kforesouthbbcwnew_1_2->Add(kforesouthbbcwnew_1_3);
  kforesouthbbcwnew_1_1->Add(kforesouthbbcwnew_1_2);

  kforesouthbbcwnew_2_3->Add(kforesouthbbcwnew_2_4);
  kforesouthbbcwnew_2_2->Add(kforesouthbbcwnew_2_3);
  kforesouthbbcwnew_2_1->Add(kforesouthbbcwnew_2_2);

  kforesouthbbcwnew_3_3->Add(kforesouthbbcwnew_3_4);
  kforesouthbbcwnew_3_2->Add(kforesouthbbcwnew_3_3);
  kforesouthbbcwnew_3_1->Add(kforesouthbbcwnew_3_2);

  kforesouthbbcwnew_4_3->Add(kforesouthbbcwnew_4_4);
  kforesouthbbcwnew_4_2->Add(kforesouthbbcwnew_4_3);
  kforesouthbbcwnew_4_1->Add(kforesouthbbcwnew_4_2);

  kforesouthbbcwnew_5_3->Add(kforesouthbbcwnew_5_4);
  kforesouthbbcwnew_5_2->Add(kforesouthbbcwnew_5_3);
  kforesouthbbcwnew_5_1->Add(kforesouthbbcwnew_5_2);

  kforesouthbbcwnew_0_1->Rebin(2);
  kforesouthbbcwnew_1_1->Rebin(2);
  kforesouthbbcwnew_2_1->Rebin(2);
  kforesouthbbcwnew_3_1->Rebin(2);
  kforesouthbbcwnew_4_1->Rebin(2);
  kforesouthbbcwnew_5_1->Rebin(2);

  kforesouthbbcwnew_2_1->Add(kforesouthbbcwnew_0_1);
  kforesouthbbcwnew_2_1->Add(kforesouthbbcwnew_1_1);
  //weight square
  TH1F *hforesouthbbcwnew_0_1 = hforesouthbbcw_0_0->Clone();
  TH1F *hforesouthbbcwnew_0_2 = hforesouthbbcw_0_1->Clone();
  TH1F *hforesouthbbcwnew_0_3 = hforesouthbbcw_0_2->Clone();
  TH1F *hforesouthbbcwnew_0_4 = hforesouthbbcw_0_3->Clone();

  TH1F *hforesouthbbcwnew_1_1 = hforesouthbbcw_1_0->Clone();
  TH1F *hforesouthbbcwnew_1_2 = hforesouthbbcw_1_1->Clone();
  TH1F *hforesouthbbcwnew_1_3 = hforesouthbbcw_1_2->Clone();
  TH1F *hforesouthbbcwnew_1_4 = hforesouthbbcw_1_3->Clone();

  TH1F *hforesouthbbcwnew_2_1 = hforesouthbbcw_2_0->Clone();
  TH1F *hforesouthbbcwnew_2_2 = hforesouthbbcw_2_1->Clone();
  TH1F *hforesouthbbcwnew_2_3 = hforesouthbbcw_2_2->Clone();
  TH1F *hforesouthbbcwnew_2_4 = hforesouthbbcw_2_3->Clone();

  TH1F *hforesouthbbcwnew_3_1 = hforesouthbbcw_3_0->Clone();
  TH1F *hforesouthbbcwnew_3_2 = hforesouthbbcw_3_1->Clone();
  TH1F *hforesouthbbcwnew_3_3 = hforesouthbbcw_3_2->Clone();
  TH1F *hforesouthbbcwnew_3_4 = hforesouthbbcw_3_3->Clone();

  TH1F *hforesouthbbcwnew_4_1 = hforesouthbbcw_4_0->Clone();
  TH1F *hforesouthbbcwnew_4_2 = hforesouthbbcw_4_1->Clone();
  TH1F *hforesouthbbcwnew_4_3 = hforesouthbbcw_4_2->Clone();
  TH1F *hforesouthbbcwnew_4_4 = hforesouthbbcw_4_3->Clone();

  TH1F *hforesouthbbcwnew_5_1 = hforesouthbbcw_5_0->Clone();
  TH1F *hforesouthbbcwnew_5_2 = hforesouthbbcw_5_1->Clone();
  TH1F *hforesouthbbcwnew_5_3 = hforesouthbbcw_5_2->Clone();
  TH1F *hforesouthbbcwnew_5_4 = hforesouthbbcw_5_3->Clone();

  hforesouthbbcwnew_0_1->Add(hforesouthbbcwnew_0_4);
  hforesouthbbcwnew_0_1->Add(hforesouthbbcwnew_0_3);
  hforesouthbbcwnew_0_1->Add(hforesouthbbcwnew_0_2);

  hforesouthbbcwnew_1_3->Add(hforesouthbbcwnew_1_4);
  hforesouthbbcwnew_1_2->Add(hforesouthbbcwnew_1_3);
  hforesouthbbcwnew_1_1->Add(hforesouthbbcwnew_1_2);

  hforesouthbbcwnew_2_3->Add(hforesouthbbcwnew_2_4);
  hforesouthbbcwnew_2_2->Add(hforesouthbbcwnew_2_3);
  hforesouthbbcwnew_2_1->Add(hforesouthbbcwnew_2_2);

  hforesouthbbcwnew_3_3->Add(hforesouthbbcwnew_3_4);
  hforesouthbbcwnew_3_2->Add(hforesouthbbcwnew_3_3);
  hforesouthbbcwnew_3_1->Add(hforesouthbbcwnew_3_2);

  hforesouthbbcwnew_4_3->Add(hforesouthbbcwnew_4_4);
  hforesouthbbcwnew_4_2->Add(hforesouthbbcwnew_4_3);
  hforesouthbbcwnew_4_1->Add(hforesouthbbcwnew_4_2);

  hforesouthbbcwnew_5_3->Add(hforesouthbbcwnew_5_4);
  hforesouthbbcwnew_5_2->Add(hforesouthbbcwnew_5_3);
  hforesouthbbcwnew_5_1->Add(hforesouthbbcwnew_5_2);

  hforesouthbbcwnew_0_1->Rebin(2);
  hforesouthbbcwnew_1_1->Rebin(2);
  hforesouthbbcwnew_2_1->Rebin(2);
  hforesouthbbcwnew_3_1->Rebin(2);
  hforesouthbbcwnew_4_1->Rebin(2);
  hforesouthbbcwnew_5_1->Rebin(2);

  hforesouthbbcwnew_2_1->Add(hforesouthbbcwnew_0_1);
  hforesouthbbcwnew_2_1->Add(hforesouthbbcwnew_1_1);

  TH1F *kbacksouthbbcw2new_0_1 = kbacksouthbbcw2_0_0->Clone();
  TH1F *kbacksouthbbcw2new_0_2 = kbacksouthbbcw2_0_1->Clone();
  TH1F *kbacksouthbbcw2new_0_3 = kbacksouthbbcw2_0_2->Clone();
  TH1F *kbacksouthbbcw2new_0_4 = kbacksouthbbcw2_0_3->Clone();

  TH1F *kbacksouthbbcw2new_1_1 = kbacksouthbbcw2_1_0->Clone();
  TH1F *kbacksouthbbcw2new_1_2 = kbacksouthbbcw2_1_1->Clone();
  TH1F *kbacksouthbbcw2new_1_3 = kbacksouthbbcw2_1_2->Clone();
  TH1F *kbacksouthbbcw2new_1_4 = kbacksouthbbcw2_1_3->Clone();

  TH1F *kbacksouthbbcw2new_2_1 = kbacksouthbbcw2_2_0->Clone();
  TH1F *kbacksouthbbcw2new_2_2 = kbacksouthbbcw2_2_1->Clone();
  TH1F *kbacksouthbbcw2new_2_3 = kbacksouthbbcw2_2_2->Clone();
  TH1F *kbacksouthbbcw2new_2_4 = kbacksouthbbcw2_2_3->Clone();

  TH1F *kbacksouthbbcw2new_3_1 = kbacksouthbbcw2_3_0->Clone();
  TH1F *kbacksouthbbcw2new_3_2 = kbacksouthbbcw2_3_1->Clone();
  TH1F *kbacksouthbbcw2new_3_3 = kbacksouthbbcw2_3_2->Clone();
  TH1F *kbacksouthbbcw2new_3_4 = kbacksouthbbcw2_3_3->Clone();

  TH1F *kbacksouthbbcw2new_4_1 = kbacksouthbbcw2_4_0->Clone();
  TH1F *kbacksouthbbcw2new_4_2 = kbacksouthbbcw2_4_1->Clone();
  TH1F *kbacksouthbbcw2new_4_3 = kbacksouthbbcw2_4_2->Clone();
  TH1F *kbacksouthbbcw2new_4_4 = kbacksouthbbcw2_4_3->Clone();

  TH1F *kbacksouthbbcw2new_5_1 = kbacksouthbbcw2_5_0->Clone();
  TH1F *kbacksouthbbcw2new_5_2 = kbacksouthbbcw2_5_1->Clone();
  TH1F *kbacksouthbbcw2new_5_3 = kbacksouthbbcw2_5_2->Clone();
  TH1F *kbacksouthbbcw2new_5_4 = kbacksouthbbcw2_5_3->Clone();

  kbacksouthbbcw2new_0_1->Add(kbacksouthbbcw2new_0_4);
  kbacksouthbbcw2new_0_1->Add(kbacksouthbbcw2new_0_3);
  kbacksouthbbcw2new_0_1->Add(kbacksouthbbcw2new_0_2);

  kbacksouthbbcw2new_1_3->Add(kbacksouthbbcw2new_1_4);
  kbacksouthbbcw2new_1_2->Add(kbacksouthbbcw2new_1_3);
  kbacksouthbbcw2new_1_1->Add(kbacksouthbbcw2new_1_2);

  kbacksouthbbcw2new_2_3->Add(kbacksouthbbcw2new_2_4);
  kbacksouthbbcw2new_2_2->Add(kbacksouthbbcw2new_2_3);
  kbacksouthbbcw2new_2_1->Add(kbacksouthbbcw2new_2_2);

  kbacksouthbbcw2new_3_3->Add(kbacksouthbbcw2new_3_4);
  kbacksouthbbcw2new_3_2->Add(kbacksouthbbcw2new_3_3);
  kbacksouthbbcw2new_3_1->Add(kbacksouthbbcw2new_3_2);

  kbacksouthbbcw2new_4_3->Add(kbacksouthbbcw2new_4_4);
  kbacksouthbbcw2new_4_2->Add(kbacksouthbbcw2new_4_3);
  kbacksouthbbcw2new_4_1->Add(kbacksouthbbcw2new_4_2);

  kbacksouthbbcw2new_5_3->Add(kbacksouthbbcw2new_5_4);
  kbacksouthbbcw2new_5_2->Add(kbacksouthbbcw2new_5_3);
  kbacksouthbbcw2new_5_1->Add(kbacksouthbbcw2new_5_2);

  kbacksouthbbcw2new_0_1->Rebin(2);
  kbacksouthbbcw2new_1_1->Rebin(2);
  kbacksouthbbcw2new_2_1->Rebin(2);
  kbacksouthbbcw2new_3_1->Rebin(2);
  kbacksouthbbcw2new_4_1->Rebin(2);
  kbacksouthbbcw2new_5_1->Rebin(2);

  kbacksouthbbcw2new_2_1->Add(kbacksouthbbcw2new_0_1);
  kbacksouthbbcw2new_2_1->Add(kbacksouthbbcw2new_1_1);

  ofstream fsout("60-88-stat.txt");

  TH1F *hdAusouth0 = kforesouthbbcwnew_0_1->Clone();
  TH1F *hbackdAusouth0 = kbacksouthbbcw2new_0_1->Clone();
  float nbackdAusouth0 = hbackdAusouth0->Integral()/2.0/PI;
  float nforedAusouth0 = hdAusouth0->Integral()/2.0/PI;
  //float ntrig0 = ptforedis_0->Integral(11,30);
  for(int i=0; i<20; i++){
      float dAusouth0_cont = 1.0*hdAusouth0->GetBinContent(i+1);
     //float dAusouth0_err = 1.0*hdAusouth0->GetBinError(i+1);
     float weight2 = sqrt(1.0*hforesouthbbcwnew_0_1->GetBinContent(i+1));

     float backdAusouth0_cont = 1.0*hbackdAusouth0->GetBinContent(i+1);
    
     float con = dAusouth0_cont/backdAusouth0_cont*nbackdAusouth0/nforedAusouth0;
     float err = weight2/backdAusouth0_cont*nbackdAusouth0/nforedAusouth0;

     hdAusouth0->SetBinContent(i+1, con);
     hdAusouth0->SetBinError(i+1, err);

     if(i==0) fsout<<dAusouth0_cont<<" "<<weight2<<" "<<con<<" "<<err<<endl;
   }

  TH1F *hdAusouth1 = kforesouthbbcwnew_1_1->Clone();
  TH1F *hbackdAusouth1 = kbacksouthbbcw2new_1_1->Clone();
  float nbackdAusouth1 = hbackdAusouth1->Integral()/2.0/PI;
  float nforedAusouth1 = hdAusouth1->Integral()/2.0/PI;
  //float ntrig1 = ptforedis_1->Integral(11,30);
  for(int i=0; i<20; i++){
    float dAusouth1_cont = 1.0*hdAusouth1->GetBinContent(i+1);
    //float dAusouth1_err = 1.0*hdAusouth1->GetBinError(i+1);
    float weight2 = sqrt(1.0*hforesouthbbcwnew_1_1->GetBinContent(i+1));

    float backdAusouth1_cont = 1.0*hbackdAusouth1->GetBinContent(i+1);
    float con = dAusouth1_cont/backdAusouth1_cont*nbackdAusouth1/nforedAusouth1;
    float err = weight2/backdAusouth1_cont*nbackdAusouth1/nforedAusouth1;
    hdAusouth1->SetBinContent(i+1, con);
    hdAusouth1->SetBinError(i+1, err);
    
    if(i==0) fsout<<dAusouth1_cont<<" "<<weight2<<" "<<con<<" "<<err<<endl;
  }

  TH1F *hdAusouth2 = kforesouthbbcwnew_2_1->Clone();
  TH1F *hbackdAusouth2 = kbacksouthbbcw2new_2_1->Clone();
  float nbackdAusouth2 = hbackdAusouth2->Integral()/2.0/PI;
  float nforedAusouth2 = hdAusouth2->Integral()/2.0/PI;
  //float ntrig2 = ptforedis_2->Integral(11,30);
  for(int i=0; i<20; i++){
    float dAusouth2_cont = 1.0*hdAusouth2->GetBinContent(i+1);
    //float dAusouth2_err = 1.0*hdAusouth2->GetBinError(i+1);

    float weight2 = sqrt(1.0*hforesouthbbcwnew_2_1->GetBinContent(i+1));

    float backdAusouth2_cont = 1.0*hbackdAusouth2->GetBinContent(i+1);
    float con = dAusouth2_cont/backdAusouth2_cont*nbackdAusouth2/nforedAusouth2;
    float err = weight2/backdAusouth2_cont*nbackdAusouth2/nforedAusouth2;
    hdAusouth2->SetBinContent(i+1, con);
    hdAusouth2->SetBinError(i+1, err);
    
    if(i==0) fsout<<dAusouth2_cont<<" "<<weight2<<" "<<con<<" "<<err<<endl;
  }

  TH1F *hdAusouth3 = kforesouthbbcwnew_3_1->Clone();
  TH1F *hbackdAusouth3 = kbacksouthbbcw2new_3_1->Clone();
  float nbackdAusouth3 = hbackdAusouth3->Integral()/2.0/PI;
  float nforedAusouth3 = hdAusouth3->Integral()/2.0/PI;
  float ntrig3 = ptforedis_3->Integral(11,30);
  for(int i=0; i<20; i++){
    float dAusouth3_cont = 1.0*hdAusouth3->GetBinContent(i+1);
    //float dAusouth3_err = 1.0*hdAusouth3->GetBinError(i+1);
    float weight2 = sqrt(1.0*hforesouthbbcwnew_3_1->GetBinContent(i+1));

    float backdAusouth3_cont = 1.0*hbackdAusouth3->GetBinContent(i+1);
    float con = dAusouth3_cont/backdAusouth3_cont*nbackdAusouth3/nforedAusouth3;
    float err = weight2/backdAusouth3_cont*nbackdAusouth3/nforedAusouth3;
    hdAusouth3->SetBinContent(i+1, con);
    hdAusouth3->SetBinError(i+1, err);

    if(i==0) fsout<<dAusouth3_cont<<" "<<weight2<<" "<<con<<" "<<err<<endl;
  }

  TH1F *hdAusouth4 = kforesouthbbcwnew_4_1->Clone();
  TH1F *hbackdAusouth4 = kbacksouthbbcw2new_4_1->Clone();
  float nbackdAusouth4 = hbackdAusouth4->Integral()/2.0/PI;
  float nforedAusouth4 = hdAusouth4->Integral()/2.0/PI;
  //float ntrig4 = ptforedis_4->Integral(11,30);
  for(int i=0; i<20; i++){
    float dAusouth4_cont = 1.0*hdAusouth4->GetBinContent(i+1);
    //float dAusouth4_err = 1.0*hdAusouth4->GetBinError(i+1);

    float weight2 = sqrt(1.0*hforesouthbbcwnew_4_1->GetBinContent(i+1));

    float backdAusouth4_cont = 1.0*hbackdAusouth4->GetBinContent(i+1);
    float con = dAusouth4_cont/backdAusouth4_cont*nbackdAusouth4/nforedAusouth4;
    float err = weight2/backdAusouth4_cont*nbackdAusouth4/nforedAusouth4;

    hdAusouth4->SetBinContent(i+1, con);
    hdAusouth4->SetBinError(i+1, err);

    if(i==0) fsout<<dAusouth4_cont<<" "<<weight2<<" "<<con<<" "<<err<<endl;
  }

 
  TH1F *hdAusouth5 = kforesouthbbcwnew_5_1->Clone();
  TH1F *hbackdAusouth5 = kbacksouthbbcw2new_5_1->Clone();
  float nbackdAusouth5 = hbackdAusouth5->Integral()/2.0/PI;
  float nforedAusouth5 = hdAusouth5->Integral()/2.0/PI;
  //float ntrig5 = ptforedis_5->Integral(11,30);
  for(int i=0; i<20; i++){
    float dAusouth5_cont = 1.0*hdAusouth5->GetBinContent(i+1);
    //float dAusouth5_err = 1.0*hdAusouth5->GetBinError(i+1);

    float weight2 = sqrt(1.0*hforesouthbbcwnew_5_1->GetBinContent(i+1));

    float backdAusouth5_cont = 1.0*hbackdAusouth5->GetBinContent(i+1);
    float con = dAusouth5_cont/backdAusouth5_cont*nbackdAusouth5/nforedAusouth5;
    float err = weight2/backdAusouth5_cont*nbackdAusouth5/nforedAusouth5;

    hdAusouth5->SetBinContent(i+1, con);
    hdAusouth5->SetBinError(i+1, err);

    if(i==0) fsout<<dAusouth5_cont<<" "<<weight2<<" "<<con<<" "<<err<<endl;
  }

  fsout.close();

  float ytop=0.97, ybot=0.07;
  float bot_r = 0.082, top_r = 0.042;
  float ny = 1.0/(1-bot_r-0.02)+1.0/(1-top_r-0.02)+1.0/(1.0-0.04);
  float ygap = (ytop-ybot)/ny;
  float ygap1 = ytop - 1.0/(1-top_r-0.02)*ygap;
  float ygap2 = ytop - 1.0/(1-top_r-0.02)*ygap - 1.0/(1.0-0.04)*ygap;
  float xleft=0.07, xright=0.98, xmiddle=1.0/(0.84/0.85+1.0)*(xright-xleft)+xleft;
  c1=new TCanvas("c1","c1", 600,750);
  c1->SetFillColor(10);
  c1->SetFillColor(10);
  c1->SetFillColor(10);
  c1->SetBorderMode(0);
  c1->SetBorderSize(2);
  c1->cd();
  TPad *c1_1 = new TPad("c1_1", "c1_1",xleft,ygap1,xmiddle,ytop);
  c1_1->SetFillColor(10);
  c1_1->SetFillColor(10);
  c1_1->SetBorderMode(0);
  c1_1->SetBorderSize(2);
  c1_1->SetFrameFillColor(0);
  c1_1->SetFrameBorderMode(0);
  c1_1->SetFrameBorderMode(0);
  c1_1->Draw();
  c1_1->cd();
  //c1_1->Range(-0.658827,-4.65723,3.04092,1.94982);
  //c1_1->SetFillColor(10);
  //c1_1->SetBorderMode(0);
  //c1_1->SetBorderSize(2);
  //c1_1->SetLogy();
  gPad->SetLeftMargin(0.130);
  gPad->SetRightMargin(0.02);
  gPad->SetBottomMargin(0.02);
  gPad->SetTopMargin(top_r);
  gPad->SetTicks(1,1);
  

  float ymax0 = 1.097;//hdAusouth0->GetMaximum()*1.1;
  float ymax1 = 1.097;//hdAusouth1->GetMaximum()*1.1;
  float ymax2 = 1.097;//hdAusouth2->GetMaximum()*1.1;
  float ymax3 = 1.097;//hdAusouth3->GetMaximum()*1.1;
  float ymax4 = 1.097;//hdAusouth4->GetMaximum()*1.1;
  float ymax5 = 1.097;//hdAusouth5->GetMaximum()*1.1;


  float ymin0 = 0.928;//hdAusouth0->GetMinimum()*0.9;
  float ymin1 = 0.928;//hdAusouth1->GetMinimum()*0.9;
  float ymin2 = 0.928;//hdAusouth2->GetMinimum()*0.9;
  float ymin3 = 0.928;//hdAusouth3->GetMinimum()*0.9;
  float ymin4 = 0.928;//hdAusouth4->GetMinimum()*0.9;
  float ymin5 = 0.928;//hdAusouth5->GetMinimum()*0.9;

  hdAusouth0->SetMinimum(ymin0);
  hdAusouth0->SetMaximum(ymax0);

  hdAusouth0->SetMarkerStyle(20);
  hdAusouth0->SetMarkerSize(1.3);
  
  hdAusouth0->SetMarkerColor(4);
  hdAusouth0->GetYaxis()->SetLabelSize(0.06);
  hdAusouth0->GetXaxis()->SetLabelSize(0.00);
  //hdAusouth0->GetYaxis()->SetTitleSize(0.6);
  //hdAusouth0->GetXaxis()->SetTitleSize(0.0);
  
  hdAusouth0->Draw("PE");
  TF1 *fun0 = new TF1("fun0","[0]*(1+2*[1]*cos(x)+2*[2]*cos(2*x)+2*[3]*cos(3*x)+2*[4]*cos(4*x))", -0.5*PI, 1.5*PI);

  fun0->SetLineColor(1);
  hdAusouth0->Fit("fun0","R");


  TF1 *fun01 = new TF1("fun01","[0]*(1+2*[1]*cos(x))",   -0.5*PI, 1.5*PI);
  TF1 *fun02 = new TF1("fun02","[0]*(1+2*[1]*cos(2*x))", -0.5*PI, 1.5*PI);
  TF1 *fun03 = new TF1("fun03","[0]*(1+2*[1]*cos(3*x))", -0.5*PI, 1.5*PI);
  TF1 *fun04 = new TF1("fun04","[0]*(1+2*[1]*cos(4*x))", -0.5*PI, 1.5*PI);

  fun01->SetParameters(fun0->GetParameter(0), fun0->GetParameter(1));
  fun02->SetParameters(fun0->GetParameter(0), fun0->GetParameter(2));
  fun03->SetParameters(fun0->GetParameter(0), fun0->GetParameter(3));
  fun04->SetParameters(fun0->GetParameter(0), fun0->GetParameter(4));

  fun01->SetLineColor(3);
  fun02->SetLineColor(2);
  fun03->SetLineColor(6);
  fun04->SetLineColor(9);

  fun01->SetLineStyle(2);
  fun02->SetLineStyle(3);
  fun03->SetLineStyle(4);
  fun04->SetLineStyle(5);

  fun01->Draw("same");
  fun02->Draw("same");
  fun03->Draw("same");
  fun04->Draw("same");

  

  TLatex *t11=new TLatex(-1.0,0.88*(ymax0-ymin0)+ymin0, "a)");
  t11->SetTextSize(0.08);
  t11->Draw();

  TMarker *m0 = new TMarker(-0.3, 0.91*(ymax0-ymin0)+ymin0, 20);
  m0->SetMarkerSize(1.3);
  m0->SetMarkerColor(4);
  m0->Draw();

  TLatex *t11=new TLatex(-0.0,0.88*(ymax0-ymin0)+ymin0, "He3+Au 0-5% (BbcQs)");
  t11->SetTextSize(0.08);
  t11->Draw();

  TLatex *t11=new TLatex(-1.2,0.78*(ymax0-ymin0)+ymin0, "1.0<p_{T,trig}<3.0 GeV/c");
  t11->SetTextSize(0.08);
  t11->Draw();

  TLatex *t11=new TLatex(-1.0,0.66*(ymax0-ymin0)+ymin0, "|#eta_{trig}|<0.35");
  t11->SetTextSize(0.08);
  t11->Draw();

  TLatex *t11=new TLatex(-1.2,0.58*(ymax0-ymin0)+ymin0, "-3.7<#eta_{asso}<-3.1");
  t11->SetTextSize(0.08);
  //t11->Draw();

  TLatex *t11=new TLatex(-1.2,0.05*(ymax0-ymin0)+ymin0, "Asso: Au-going, -3.7<#eta<-3.1");
  t11->SetTextSize(0.08);
  t11->SetTextColor(2);
  t11->Draw();

  //TGaxis *A1 = new TGaxis(-1.5708,-0.0019,-1.5708,0.028,-0.0019,-0.028,510,"");
  //A1->SetLabelSize(0.0195);
  //A1->SetLabelOffset(0.01);
  //A1->Draw();

  c1->cd();
  TPad *c1_2 = new TPad("c1_2", "c1_2",xmiddle,ygap1,xright,ytop);
  c1_2->SetFillColor(10);
  c1_2->Draw();
  c1_2->cd();
  c1_2->Range(-0.658827,-4.65723,3.04092,1.94982);
  c1_2->SetFillColor(10);
  c1_2->SetBorderMode(0);
  c1_2->SetBorderSize(2);
  //c1_2->SetLogy();
  gPad->SetLeftMargin(0.12);
  gPad->SetRightMargin(0.02);
  gPad->SetBottomMargin(0.02);
  gPad->SetTopMargin(top_r);
  gPad->SetTicks(1,1);
  c1_2->SetFrameFillColor(0);
  c1_2->SetFrameBorderMode(0);
  c1_2->SetFrameBorderMode(0);

  //float ymax1 = 1.2*hsouth1->GetMaximum();
  hdAusouth1->SetMinimum(ymin1);
  hdAusouth1->SetMaximum(ymax1);

  hdAusouth1->SetMarkerStyle(20);
  hdAusouth1->SetMarkerSize(1.3);
  hdAusouth1->SetMarkerColor(4);

  hdAusouth1->GetYaxis()->SetLabelSize(0.06);
  hdAusouth1->GetXaxis()->SetLabelSize(0.00);

  hdAusouth1->Draw("PE");

  TF1 *fun1 = new TF1("fun1","[0]*(1+2*[1]*cos(x)+2*[2]*cos(2*x)+2*[3]*cos(3*x)+2*[4]*cos(4*x))", -0.5*PI, 1.5*PI);
  fun1->SetLineColor(1);
  hdAusouth1->Fit("fun1","R");

  TF1 *fun11 = new TF1("fun11","[0]*(1+2*[1]*cos(x))",   -0.5*PI, 1.5*PI);
  TF1 *fun12 = new TF1("fun12","[0]*(1+2*[1]*cos(2*x))", -0.5*PI, 1.5*PI);
  TF1 *fun13 = new TF1("fun13","[0]*(1+2*[1]*cos(3*x))", -0.5*PI, 1.5*PI);
  TF1 *fun14 = new TF1("fun14","[0]*(1+2*[1]*cos(4*x))", -0.5*PI, 1.5*PI);

  fun11->SetParameters(fun1->GetParameter(0), fun1->GetParameter(1));
  fun12->SetParameters(fun1->GetParameter(0), fun1->GetParameter(2));
  fun13->SetParameters(fun1->GetParameter(0), fun1->GetParameter(3));
  fun14->SetParameters(fun1->GetParameter(0), fun1->GetParameter(4));

  fun11->SetLineColor(3);
  fun12->SetLineColor(2);
  fun13->SetLineColor(6);
  fun14->SetLineColor(9);

  fun11->SetLineStyle(2);
  fun12->SetLineStyle(3);
  fun13->SetLineStyle(4);
  fun14->SetLineStyle(5);

  TLegend *leg1 = new TLegend(0.22,0.02,0.82,0.13);
  leg1->SetFillColor(10);
  leg1->SetLineStyle(4000);
  leg1->SetLineColor(10);
  leg1->SetLineWidth(0.);
  leg1->SetTextSize(0.08);
  leg1->SetBorderSize(0);
  leg1->AddEntry(fun0,"1+#Sigma2c_{n}cos(n#Delta#phi)","L");
  leg1->Draw();

  fun11->Draw("same");
  fun12->Draw("same");
  fun13->Draw("same");
  fun14->Draw("same");

  /*
  TLatex *t11=new TLatex(-0.5,0.06*(ymax1-ymin1)+ymin1, "1+#Sigma2*c_{n}*cos(n#Delta#phi)");
  t11->SetTextSize(0.08);
  t11->Draw();
  TLine *l3 = new TLine(-1.5, 0, 4.6, 0);
  l3->SetLineWidth(2);
  l3->SetLineStyle(2);
  l3->Draw();
  */

  

  TLegend *leg2 = new TLegend(0.18,0.52,0.42,0.82);
  leg2->SetFillColor(10);
  leg2->SetLineStyle(4000);
  leg2->SetLineColor(10);
  leg2->SetLineWidth(0.);
  leg2->SetTextSize(0.07);
  leg2->SetBorderSize(0);
  leg2->AddEntry(fun11,"1+2c_{1}cos(#Delta#phi)","L");
  leg2->AddEntry(fun12,"1+2c_{2}cos(2#Delta#phi)","L");
  leg2->AddEntry(fun13,"1+2c_{3}cos(3#Delta#phi)","L");
  leg2->AddEntry(fun14,"1+2c_{4}cos(4#Delta#phi)","L");
  leg2->Draw();

  TLatex *t11=new TLatex(-1.0,0.88*(ymax1-ymin1)+ymin1, "b)");
  t11->SetTextSize(0.08);
  t11->Draw();

  TMarker *m0 = new TMarker(-0.3, 0.91*(ymax1-ymin1)+ymin1, 20);
  m0->SetMarkerSize(1.3);
  m0->SetMarkerColor(4);
  m0->Draw();

  TLatex *t11=new TLatex(-0.0,0.88*(ymax1-ymin1)+ymin1, "He3+Au 5-10%");
  t11->SetTextSize(0.08);
  t11->Draw();

  TMarker *m4 = new TMarker(-0.3, 0.80*ymax0, 24);
  m4->SetMarkerSize(1.3);
  m4->SetMarkerColor(2);
  //m4->Draw();

  TLatex *t11=new TLatex(-0.0,0.77*ymax0, "PP");
  t11->SetTextSize(0.08);
  //t11->Draw();

  TMarker *m25 = new TMarker(0.8, 0.80*ymax0, 20);
  m25->SetMarkerSize(1.3);
  m25->SetMarkerColor(2);
  //m25->Draw();

  TLatex *t25=new TLatex(1.1,0.77*ymax0, "Diff");
  t25->SetTextSize(0.08);
  //t25->Draw();

  TLatex *t42=new TLatex(-1.2,0.67*ymax0, "p_{T,trig}: 1.0-1.5 GeV/c");
  t42->SetTextSize(0.08);
  //t42->Draw();

  c1->cd();
  TPad *c1_3 = new TPad("c1_3", "c1_3",xleft,ygap2,xmiddle,ygap1);
  c1_3->SetFillColor(10);
  c1_3->Draw();
  c1_3->cd();
  c1_3->Range(-0.658827,-4.65723,3.04092,1.94982);
  c1_3->SetFillColor(10);
  c1_3->SetBorderMode(0);
  c1_3->SetBorderSize(2);
  //c1_3->SetLogy();
  gPad->SetLeftMargin(0.130);
  gPad->SetRightMargin(0.02);
  gPad->SetBottomMargin(0.02);
  gPad->SetTopMargin(0.02);
  gPad->SetTicks(1,1);
  c1_3->SetFrameFillColor(0);
  c1_3->SetFrameBorderMode(0);
  c1_3->SetFrameBorderMode(0);

  hdAusouth2->SetMinimum(ymin2);
  hdAusouth2->SetMaximum(ymax2);


  hdAusouth2->SetMarkerStyle(20);
  hdAusouth2->SetMarkerSize(1.3);
  hdAusouth2->SetMarkerColor(4);
  hdAusouth2->GetYaxis()->SetLabelSize(0.06);
  hdAusouth2->GetXaxis()->SetLabelSize(0.00);
  hdAusouth2->Draw("PE");

  TF1 *fun2 = new TF1("fun2","[0]*(1+2*[1]*cos(x)+2*[2]*cos(2*x)+2*[3]*cos(3*x)+2*[4]*cos(4*x))", -0.5*PI, 1.5*PI);
  fun2->SetLineColor(1);
  hdAusouth2->Fit("fun2","R");

  TF1 *fun21 = new TF1("fun21","[0]*(1+2*[1]*cos(x))",   -0.5*PI, 1.5*PI);
  TF1 *fun22 = new TF1("fun22","[0]*(1+2*[1]*cos(2*x))", -0.5*PI, 1.5*PI);
  TF1 *fun23 = new TF1("fun23","[0]*(1+2*[1]*cos(3*x))", -0.5*PI, 1.5*PI);
  TF1 *fun24 = new TF1("fun24","[0]*(1+2*[1]*cos(4*x))", -0.5*PI, 1.5*PI);

  fun21->SetParameters(fun2->GetParameter(0), fun2->GetParameter(1));
  fun22->SetParameters(fun2->GetParameter(0), fun2->GetParameter(2));
  fun23->SetParameters(fun2->GetParameter(0), fun2->GetParameter(3));
  fun24->SetParameters(fun2->GetParameter(0), fun2->GetParameter(4));

  fun21->SetLineColor(3);
  fun22->SetLineColor(2);
  fun23->SetLineColor(6);
  fun24->SetLineColor(9);

  fun21->SetLineStyle(2);
  fun22->SetLineStyle(3);
  fun23->SetLineStyle(4);
  fun24->SetLineStyle(5);

  fun21->Draw("same");
  fun22->Draw("same");
  fun23->Draw("same");
  fun24->Draw("same");

  TLine *l3 = new TLine(-1.5, 0, 4.6, 0);
  l3->SetLineWidth(2);
  l3->SetLineStyle(2);
  l3->Draw();

  TLatex *t11=new TLatex(-1.0,0.88*(ymax2-ymin2)+ymin2, "c)");
  t11->SetTextSize(0.08);
  t11->Draw();

  TMarker *m0 = new TMarker(-0.3, 0.91*(ymax2-ymin2)+ymin2, 20);
  m0->SetMarkerSize(1.3);
  m0->SetMarkerColor(4);
  m0->Draw();

  TLatex *t11=new TLatex(-0.0,0.88*(ymax2-ymin2)+ymin2, "He3+Au 10-20%");
  t11->SetTextSize(0.08);
  t11->Draw();

  TMarker *m4 = new TMarker(-0.3, 0.80*ymax1, 24);
  m4->SetMarkerSize(1.3);
  m4->SetMarkerColor(2);
  //m4->Draw();

  TLatex *t11=new TLatex(-0.0,0.77*ymax1, "PP");
  t11->SetTextSize(0.08);
  //t11->Draw();

  TMarker *m35 = new TMarker(0.8, 0.80*ymax1, 20);
  m35->SetMarkerSize(1.3);
  m35->SetMarkerColor(2);
  //m35->Draw();

  TLatex *t35=new TLatex(1.1,0.77*ymax1, "Diff");
  t35->SetTextSize(0.08);
  //t35->Draw();

  TLatex *t42=new TLatex(-1.2,0.67*ymax1, "p_{T,trig}: 1.5-2.0 GeV/c");
  t42->SetTextSize(0.08);
  //t42->Draw();

  c1->cd();
  TPad *c1_4 = new TPad("c1_4", "c1_4",xmiddle,ygap2,xright,ygap1);
  c1_4->SetFillColor(10);
  c1_4->Draw();
  c1_4->cd();
  c1_4->Range(-0.658827,-4.65723,3.04092,1.94982);
  c1_4->SetFillColor(10);
  c1_4->SetBorderMode(0);
  c1_4->SetBorderSize(2);
  //c1_4->SetLogy();
  gPad->SetLeftMargin(0.12);
  gPad->SetRightMargin(0.02);
  gPad->SetBottomMargin(0.02);
  gPad->SetTopMargin(0.02);
  gPad->SetTicks(1,1);
  c1_4->SetFrameFillColor(0);
  c1_4->SetFrameBorderMode(0);
  c1_4->SetFrameBorderMode(0);

  hdAusouth3->SetMinimum(ymin3);
  hdAusouth3->SetMaximum(ymax3);

  hdAusouth3->SetMarkerStyle(20);
  hdAusouth3->SetMarkerSize(1.3);
  hdAusouth3->SetMarkerColor(4);

  hdAusouth3->GetYaxis()->SetLabelSize(0.06);
  hdAusouth3->GetXaxis()->SetLabelSize(0.00);
  hdAusouth3->Draw("PE");

  TF1 *fun3 = new TF1("fun3","[0]*(1+2*[1]*cos(x)+2*[2]*cos(2*x)+2*[3]*cos(3*x)+2*[4]*cos(4*x))", -0.5*PI, 1.5*PI);
  fun3->SetLineColor(1);
  hdAusouth3->Fit("fun3","R");

  TF1 *fun31 = new TF1("fun31","[0]*(1+2*[1]*cos(x))",   -0.5*PI, 1.5*PI);
  TF1 *fun32 = new TF1("fun32","[0]*(1+2*[1]*cos(2*x))", -0.5*PI, 1.5*PI);
  TF1 *fun33 = new TF1("fun33","[0]*(1+2*[1]*cos(3*x))", -0.5*PI, 1.5*PI);
  TF1 *fun34 = new TF1("fun34","[0]*(1+2*[1]*cos(4*x))", -0.5*PI, 1.5*PI);

  fun31->SetParameters(fun3->GetParameter(0), fun3->GetParameter(1));
  fun32->SetParameters(fun3->GetParameter(0), fun3->GetParameter(2));
  fun33->SetParameters(fun3->GetParameter(0), fun3->GetParameter(3));
  fun34->SetParameters(fun3->GetParameter(0), fun3->GetParameter(4));

  fun31->SetLineColor(3);
  fun32->SetLineColor(2);
  fun33->SetLineColor(6);
  fun34->SetLineColor(9);

  fun31->SetLineStyle(2);
  fun32->SetLineStyle(3);
  fun33->SetLineStyle(4);
  fun34->SetLineStyle(5);

  fun31->Draw("same");
  fun32->Draw("same");
  fun33->Draw("same");
  fun34->Draw("same");

  TLatex *t11=new TLatex(-1.0,0.88*(ymax3-ymin3)+ymin3, "d)");
  t11->SetTextSize(0.08);
  t11->Draw();

  TMarker *m0 = new TMarker(-0.3, 0.91*(ymax3-ymin3)+ymin3, 20);
  m0->SetMarkerSize(1.3);
  m0->SetMarkerColor(4);
  m0->Draw();

  TLatex *t11=new TLatex(-0.0,0.88*(ymax3-ymin3)+ymin3, "He3+Au 20-40%");
  t11->SetTextSize(0.08);
  t11->Draw();

  TMarker *m4 = new TMarker(-0.3, 0.80*ymax1, 24);
  m4->SetMarkerSize(1.3);
  m4->SetMarkerColor(2);
  //m4->Draw();

  TLatex *t11=new TLatex(-0.0,0.77*ymax1, "PP");
  t11->SetTextSize(0.08);
  //t11->Draw();

  TMarker *m45 = new TMarker(0.8, 0.80*ymax1, 20);
  m45->SetMarkerSize(1.3);
  m45->SetMarkerColor(2);
  //m45->Draw();

  TLatex *t45=new TLatex(1.1,0.77*ymax1, "Diff");
  t45->SetTextSize(0.08);
  //t45->Draw();

  TLatex *t42=new TLatex(-1.2,0.67*ymax1, "p_{T,trig}: 2.0-2.5 GeV/c");
  t42->SetTextSize(0.08);
  //t42->Draw();

  /*
  TLatex *t43=new TLatex(-1.2,0.67*ymax1, "Au-going(BBC)~CNT");
  t43->SetTextSize(0.08);
  t43->Draw();
  */

  c1->cd();
  TPad *c1_5 = new TPad("c1_5", "c1_5",xleft,ybot,xmiddle,ygap2);
  c1_5->SetFillColor(10);
  c1_5->Draw();
  c1_5->cd();
  //c1_5->Range(-0.658827,-4.65723,3.04092,1.94982);
  c1_5->SetFillColor(10);
  c1_5->SetBorderMode(0);
  c1_5->SetBorderSize(2);
  //c1_5->SetLogy();
  gPad->SetLeftMargin(0.130);
  gPad->SetRightMargin(0.02);
  gPad->SetBottomMargin(bot_r);
  gPad->SetTopMargin(0.02);
  gPad->SetTicks(1,1);
  c1_5->SetFrameFillColor(0);
  c1_5->SetFrameBorderMode(0);
  c1_5->SetFrameBorderMode(0);

  hdAusouth4->SetMinimum(ymin4);
  hdAusouth4->SetMaximum(ymax4);

  hdAusouth4->SetMarkerStyle(20);
  hdAusouth4->SetMarkerSize(1.3);
  hdAusouth4->SetMarkerColor(4);

  hdAusouth4->GetYaxis()->SetLabelSize(0.06);
  hdAusouth4->GetXaxis()->SetLabelSize(0.06);
  hdAusouth4->Draw("PE");

  TF1 *fun4 = new TF1("fun4","[0]*(1+2*[1]*cos(x)+2*[2]*cos(2*x)+2*[3]*cos(3*x)+2*[4]*cos(4*x))", -0.5*PI, 1.5*PI);

  fun4->SetLineColor(1);
  hdAusouth4->Fit("fun4","R");

  TF1 *fun41 = new TF1("fun41","[0]*(1+2*[1]*cos(x))",   -0.5*PI, 1.5*PI);
  TF1 *fun42 = new TF1("fun42","[0]*(1+2*[1]*cos(2*x))", -0.5*PI, 1.5*PI);
  TF1 *fun43 = new TF1("fun43","[0]*(1+2*[1]*cos(3*x))", -0.5*PI, 1.5*PI);
  TF1 *fun44 = new TF1("fun44","[0]*(1+2*[1]*cos(4*x))", -0.5*PI, 1.5*PI);

  fun41->SetParameters(fun4->GetParameter(0), fun4->GetParameter(1));
  fun42->SetParameters(fun4->GetParameter(0), fun4->GetParameter(2));
  fun43->SetParameters(fun4->GetParameter(0), fun4->GetParameter(3));
  fun44->SetParameters(fun4->GetParameter(0), fun4->GetParameter(4));

  fun41->SetLineColor(3);
  fun42->SetLineColor(2);
  fun43->SetLineColor(6);
  fun44->SetLineColor(9);

  fun41->SetLineStyle(2);
  fun42->SetLineStyle(3);
  fun43->SetLineStyle(4);
  fun44->SetLineStyle(5);

  fun41->Draw("same");
  fun42->Draw("same");
  fun43->Draw("same");
  fun44->Draw("same");

  TLatex *t51=new TLatex(-1.0,0.88*(ymax4-ymin4)+ymin4, "e)");
  t51->SetTextSize(0.08);
  t51->Draw();

  TMarker *m51 = new TMarker(-0.3, 0.91*(ymax4-ymin4)+ymin4, 20);
  m51->SetMarkerSize(1.3);
  m51->SetMarkerColor(4);
  m51->Draw();

  TLatex *t52=new TLatex(-0.0,0.88*(ymax4-ymin4)+ymin4, "He3+Au 40-60%");
  t52->SetTextSize(0.08);
  t52->Draw();

  TMarker *m52 = new TMarker(-0.3, 0.80*ymax2, 24);
  m52->SetMarkerSize(1.3);
  m52->SetMarkerColor(2);
  //m52->Draw();

  TLatex *t53=new TLatex(-0.0,0.77*ymax2, "PP");
  t53->SetTextSize(0.08);
  //t53->Draw();

  TMarker *m55 = new TMarker(0.8, 0.80*ymax2, 20);
  m55->SetMarkerSize(1.3);
  m55->SetMarkerColor(2);
  //m55->Draw();

  TLatex *t55=new TLatex(1.1,0.77*ymax2, "Diff");
  t55->SetTextSize(0.08);
  //t55->Draw();

  TLatex *t54=new TLatex(-1.2,0.67*ymax2, "p_{T,trig}: 2.5-3.0 GeV/c");
  t54->SetTextSize(0.08);
  //t54->Draw();

  c1->cd();
  TPad *c1_6 = new TPad("c1_6", "c1_6",xmiddle,ybot,xright,ygap2);
  c1_6->SetFillColor(10);
  c1_6->Draw();
  c1_6->cd();
  //c1_6->Range(-0.658827,-4.65723,3.04092,1.94982);
  c1_6->SetFillColor(10);
  c1_6->SetBorderMode(0);
  c1_6->SetBorderSize(2);
  //c1_6->SetLogy();
  gPad->SetLeftMargin(0.12);
  gPad->SetRightMargin(0.02);
  gPad->SetBottomMargin(bot_r);
  gPad->SetTopMargin(0.02);
  gPad->SetTicks(1,1);
  c1_6->SetFrameFillColor(0);
  c1_6->SetFrameBorderMode(0);
  c1_6->SetFrameBorderMode(0);


  //hdAusouth5->Scale(1.24);
  
  hdAusouth5->SetMinimum(ymin5);
  hdAusouth5->SetMaximum(ymax5);

  hdAusouth5->SetMarkerStyle(20);
  hdAusouth5->SetMarkerSize(1.3);
  hdAusouth5->SetMarkerColor(4);

  hdAusouth5->GetYaxis()->SetLabelSize(0.06);
  hdAusouth5->GetXaxis()->SetLabelSize(0.06);
  hdAusouth5->Draw("PE");

  TF1 *fun5 = new TF1("fun5","[0]*(1+2*[1]*cos(x)+2*[2]*cos(2*x)+2*[3]*cos(3*x)+2*[4]*cos(4*x))", -0.5*PI, 1.5*PI);

  fun5->SetLineColor(1);

  hdAusouth5->Fit("fun5","R");


  TF1 *fun51 = new TF1("fun51","[0]*(1+2*[1]*cos(x))",   -0.5*PI, 1.5*PI);
  TF1 *fun52 = new TF1("fun52","[0]*(1+2*[1]*cos(2*x))", -0.5*PI, 1.5*PI);
  TF1 *fun53 = new TF1("fun53","[0]*(1+2*[1]*cos(3*x))", -0.5*PI, 1.5*PI);
  TF1 *fun54 = new TF1("fun54","[0]*(1+2*[1]*cos(4*x))", -0.5*PI, 1.5*PI);

  fun51->SetParameters(fun5->GetParameter(0), fun5->GetParameter(1));
  fun52->SetParameters(fun5->GetParameter(0), fun5->GetParameter(2));
  fun53->SetParameters(fun5->GetParameter(0), fun5->GetParameter(3));
  fun54->SetParameters(fun5->GetParameter(0), fun5->GetParameter(4));

  fun51->SetLineColor(3);
  fun52->SetLineColor(2);
  fun53->SetLineColor(6);
  fun54->SetLineColor(9);

  fun51->SetLineStyle(2);
  fun52->SetLineStyle(3);
  fun53->SetLineStyle(4);
  fun54->SetLineStyle(5);

  fun51->Draw("same");
  fun52->Draw("same");
  fun53->Draw("same");
  fun54->Draw("same");


  TLatex *t61=new TLatex(-1.0,0.88*(ymax5-ymin5)+ymin5, "f)");
  t61->SetTextSize(0.08);
  t61->Draw();
  
  TMarker *m61 = new TMarker(-0.3, 0.91*(ymax5-ymin5)+ymin5, 20);
  m61->SetMarkerSize(1.3);
  m61->SetMarkerColor(4);
  m61->Draw();
  
  TLatex *t62=new TLatex(-0.0,0.88*(ymax5-ymin5)+ymin5, "He3+Au 60-88%");
  t62->SetTextSize(0.08);
  t62->Draw();
  
  TMarker *m62 = new TMarker(-0.3, 0.80*ymax2, 24);
  m62->SetMarkerSize(1.3);
  m62->SetMarkerColor(2);
  //m62->Draw();
  
  TLatex *t63=new TLatex(-0.0,0.77*ymax2, "PP");
  t63->SetTextSize(0.08);
  //t63->Draw();

  TMarker *m65 = new TMarker(0.8, 0.80*ymax2, 20);
  m65->SetMarkerSize(1.3);
  m65->SetMarkerColor(2);
  //m65->Draw();

  TLatex *t65=new TLatex(1.1,0.77*ymax2, "Diff");
  t65->SetTextSize(0.08);
  //t65->Draw();

  TLatex *t64=new TLatex(-1.2,0.67*ymax2, "p_{T,trig}: 3.0-3.5 GeV/c");
  t64->SetTextSize(0.08);
  //t64->Draw();

  c1->cd();

  TLatex *tx1=new TLatex(0.30,0.05, "#Delta#phi");
  tx1->SetTextSize(0.04);
  tx1->Draw();

  TLatex *tx2=new TLatex(0.75,0.05, "#Delta#phi");
  tx2->SetTextSize(0.04);
  tx2->Draw();

  TLatex *ty1 = new TLatex(0.05,0.78, "C(#Delta#phi)");
  ty1->SetTextSize(0.04);
  ty1->SetTextAngle(90);
  ty1->Draw();

  TLatex *ty2 = new TLatex(0.05,0.50, "C(#Delta#phi)");
  ty2->SetTextSize(0.04);
  ty2->SetTextAngle(90);
  ty2->Draw();

  TLatex *ty3 = new TLatex(0.05,0.20, "C(#Delta#phi)");
  ty3->SetTextSize(0.04);
  ty3->SetTextAngle(90);
  ty3->Draw();


  ofstream fout("c1_c2_cent_south.dat");
  fout<<fun0->GetParameter(1)<<" "<<fun0->GetParError(1)<<" "
      <<fun0->GetParameter(2)<<" "<<fun0->GetParError(2)<<" "
      <<fun0->GetParameter(3)<<" "<<fun0->GetParError(3)<<endl;
  fout<<fun1->GetParameter(1)<<" "<<fun1->GetParError(1)<<" "
      <<fun1->GetParameter(2)<<" "<<fun1->GetParError(2)<<" "
      <<fun1->GetParameter(3)<<" "<<fun1->GetParError(3)<<endl;
  fout<<fun2->GetParameter(1)<<" "<<fun2->GetParError(1)<<" "
      <<fun2->GetParameter(2)<<" "<<fun2->GetParError(2)<<" "
      <<fun2->GetParameter(3)<<" "<<fun2->GetParError(3)<<endl;
  fout<<fun3->GetParameter(1)<<" "<<fun3->GetParError(1)<<" "
      <<fun3->GetParameter(2)<<" "<<fun3->GetParError(2)<<" "
      <<fun3->GetParameter(3)<<" "<<fun3->GetParError(3)<<endl;
  fout<<fun4->GetParameter(1)<<" "<<fun4->GetParError(1)<<" "
      <<fun4->GetParameter(2)<<" "<<fun4->GetParError(2)<<" "
      <<fun4->GetParameter(3)<<" "<<fun4->GetParError(3)<<endl;
  fout<<fun5->GetParameter(1)<<" "<<fun5->GetParError(1)<<" "
      <<fun5->GetParameter(2)<<" "<<fun5->GetParError(2)<<" "
      <<fun5->GetParameter(3)<<" "<<fun5->GetParError(3)<<endl;
  fout.close();

  /*
  cout<<"*************** v2 ***********"<<endl;
  float v2_0 = funvn0->GetParameter(1)/(zym_dAusouth0 + funvn0->GetParameter(0));
  float v2_1 = funvn1->GetParameter(1)/(zym_dAusouth1 + funvn1->GetParameter(0));
  float v2_2 = funvn2->GetParameter(1)/(zym_dAusouth2 + funvn2->GetParameter(0));
  float v2_3 = funvn3->GetParameter(1)/(zym_dAusouth3 + funvn3->GetParameter(0));
  

  cout<<v2_0<<" "<<v2_1<<" "<<v2_2<<" "<<v2_3<<endl;
  */
  /*
  cout<<funvn0->GetParameter(0)*funvn0->GetParameter(1)<<" "
      <<funvn1->GetParameter(0)*funvn1->GetParameter(1)<<" "
      <<funvn2->GetParameter(0)*funvn2->GetParameter(1)<<" "
      <<funvn3->GetParameter(0)*funvn3->GetParameter(1)<<endl;
  */

  //cout<<"*************** v2 ***********"<<endl;
  //cout<<funvn0->GetParameter(2)<<" "<<funvn1->GetParameter(2)<<" "<<funvn2->GetParameter(2)<<" "<<funvn3->GetParameter(2)<<endl;

  //cout<<"*************** v3 ***********"<<endl;
  //cout<<funvn0->GetParameter(3)<<" "<<funvn1->GetParameter(3)<<" "<<funvn2->GetParameter(3)<<" "<<funvn3->GetParameter(3)<<endl;
}
コード例 #4
0
void fix_file (const std::wstring& in, const std::wstring& out)
{
    std::wcout << L"in:" << in << L"\nout:" << out << L'\n';
    rsc::istream fsin(in);
    rsc::ostream fsout(out);

    int count = 0;
    bool quote = false;
    char16_t before = L'\0';
    char16_t current, after;
    fsin.get(current);
    while (!fsin.eof())
    {
        fsin.get(after);

        if (is_double_quote(current))
            quote = !quote;

        if (!quote)
        {
            // not in quote, do nothing
        }
        else if (is_floating_vowel(current))
        {
            if (is_long_tail(before))
            {
                count++;
                current = move_floating_left(current);
            }
        }
        else if (is_floating_vowel(current))
        {
            if (is_long_tail(before))
            {
                count++;
                current = move_floating_left(current);
            }
        }
        else if (is_tone_marker(current))
        {
            if (is_floating_vowel(before))
            {
                if (is_long_tail(before))
                {
                    count++;
                    current = move_tone_marker_left_height(current);
                }
            }
            else if (is_long_tail(before))
            {
                if (is_backward_floating_vowel(after))
                {
                    count++;
                    current = move_tone_marker_left_height(current);
                }
                else
                {
                    count++;
                    current = move_tone_marker_left_low(current);
                }
            }
            else if (!is_backward_floating_vowel(after))
            {
                count++;
                current = move_tone_marker_low(current);
            }
        }
        else if (is_lower_foot(current))
        {
            if (is_lower_vowel(after))
            {
                count++;
                current = strip_lower_foot(current);
            }
        }
        else if (is_lower_vowel(current))
        {
            if (is_lower_tail(before))
            {
                count++;
                current = move_lower_vowel_left(current);
            }
        }

        fsout.put(current);

        if (!quote)
        {
        }
        else if (is_digit(current))
        {
            if (is_argument(before) && is_argument(after))
            {
                count++;
                fsout.put(argument_prefix());
            }
        }

        before = current;
        current = after;
    } // while

    if (count > 0)
        std::wcout << L'\n';
    std::wcout << L"fixed:" << count << std::endl;
}