ROOT logo
TH2D *GetCorrectionsJpsiMean(TString map){
  if (gSystem->AccessPathName(gSystem->ExpandPathName(map.Data()))){
    Warning("ConfigHFE","Centrality map not found: %s",map.Data());
    printf("ConfigHFE: Centrality map not found: %s\n",map.Data());
    return kFALSE;
  }
  printf("File %s\n",map.Data());
  TFile *f = TFile::Open(map.Data());
  if(!f->IsOpen()) return kFALSE;
  f->ls();
  return (TH2D*)f->Get("centroidCentEta");
}
TH2D *GetCorrectionsJpsiWidth(TString map){
  if (gSystem->AccessPathName(gSystem->ExpandPathName(map.Data()))){
    Warning("ConfigHFE","Centrality map not found: %s",map.Data());
    printf("ConfigHFE: Centrality map not found: %s\n",map.Data());
    return kFALSE;
  }
  printf("File %s\n",map.Data());
  TFile *f = TFile::Open(map.Data());
  if(!f->IsOpen()) return kFALSE;
  f->ls();
  return (TH2D*)f->Get("widthCentEta");
}
TF1* GetCentralityCorrection(TString listname="LHC11h"){
  
  TString etaMap="$ALICE_ROOT/PWGHF/hfe/macros/configs/PbPb/CentCorrMapsTPC.root";
  
  if (gSystem->AccessPathName(gSystem->ExpandPathName(etaMap.Data()))){
    Error("ConfigHFEpbpb","Eta map not found: %s",etaMap.Data());
    return 0;
  }
  
  TFile f(etaMap.Data());
  if (!f.IsOpen()) return 0;
  gROOT->cd();
  TList *keys=f.GetListOfKeys();
  
  for (Int_t i=0; i<keys->GetEntries(); ++i){
    TString kName=keys->At(i)->GetName();
    TPRegexp reg(kName);
    if (reg.MatchB(listname)){
      printf("Using Eta Correction Function: %s\n",kName.Data());
      return (TF1*)f.Get(kName.Data());
    }
  }
  return 0;
}
TF1* GetEtaCorrection(TString listname="LHC11h"){
  
  TString etaMap="$ALICE_ROOT/PWGHF/hfe/macros/configs/PbPb/EtaCorrMapsTPC.root";
  
  if (gSystem->AccessPathName(gSystem->ExpandPathName(etaMap.Data()))){
    Error("ConfigHFEpbpb","Eta map not found: %s",etaMap.Data());
    return 0;
  }
  
  TFile f(etaMap.Data());
  if (!f.IsOpen()) return 0;
  gROOT->cd();
  TList *keys=f.GetListOfKeys();
  
  for (Int_t i=0; i<keys->GetEntries(); ++i){
    TString kName=keys->At(i)->GetName();
    TPRegexp reg(kName);
    if (reg.MatchB(listname)){
      printf("Using Eta Correction Function: %s\n",kName.Data());
      return (TF1*)f.Get(kName.Data());
    }
  }
  return 0;
}
TF1* Getv2Contamination_30_40(){
  
  TString v2Map="$ALICE_ROOT/PWGHF/hfe/macros/configs/PbPb/raw_TF1_pi_v2_3040.root";
  //TString v2Map="$TRAIN_ROOT/bailhach_backgroundhfe/raw_TF1_pi_v2_3040.root";
  TString trainRoot=gSystem->Getenv("TRAIN_ROOT");

  if (gSystem->AccessPathName(gSystem->ExpandPathName(v2Map.Data()))){
    //Error("ConfigPbPb2010_Cent","v2 map not found: %s",v2Map.Data());
    return 0;
  }

  TFile f(v2Map.Data());
  if (!f.IsOpen()) return 0;
  gROOT->cd();
  TF1 *fg = (TF1 *) f.Get("flogisticTadd");
  return fg;

}

TF1* Getv2Contamination_40_50(){
  
  TString v2Map="$ALICE_ROOT/PWGHF/hfe/macros/configs/PbPb/raw_TF1_pi_v2_4050.root";
  //TString v2Map="$TRAIN_ROOT/bailhach_backgroundhfe/raw_TF1_pi_v2_4050.root";
  TString trainRoot=gSystem->Getenv("TRAIN_ROOT");

  if (gSystem->AccessPathName(gSystem->ExpandPathName(v2Map.Data()))){
    //Error("ConfigPbPb2010_Cent","v2 map not found: %s",v2Map.Data());
    return 0;
  }

  TFile f(v2Map.Data());
  if (!f.IsOpen()) return 0;
  gROOT->cd();
  TF1 *fg = (TF1 *) f.Get("flogisticTadd");
  return fg;

}


TF1* Getv2Contamination_20_30(){
  
  TString v2Map="$ALICE_ROOT/PWGHF/hfe/macros/configs/PbPb/raw_TF1_pi_v2_2030.root";
  //TString v2Map="$TRAIN_ROOT/bailhach_backgroundhfe/raw_TF1_pi_v2_2030.root";
  TString trainRoot=gSystem->Getenv("TRAIN_ROOT");

  if (gSystem->AccessPathName(gSystem->ExpandPathName(v2Map.Data()))){
    //Error("ConfigPbPb2010_Cent","v2 map not found: %s",v2Map.Data());
    return 0;
  }

  TFile f(v2Map.Data());
  if (!f.IsOpen()) return 0;
  gROOT->cd();
  TF1 *fg = (TF1 *) f.Get("flogisticTadd");
  return fg;

}

Double_t Contamination_40_50(const Double_t *x, const Double_t *par) 
{
  
  if(x[0] < 2.5) return 0.0326072;
  Double_t value = -0.00908646-0.00201815*x[0]+0.0026871*x[0]*x[0];
  if(x[0] >= 2.5) return value;

  
}
AliAnalysisTaskFlowTPCTOFEPSP* ConfigHFE_FLOW_TOFTPC(Bool_t useMC, TString appendix,Int_t trigger,Int_t aodfilter=-1,Bool_t scalarProduct=kFALSE,Bool_t cutPileup=kTRUE,Int_t variableMr = 1,Int_t tpcCls=110, Double_t tpcClsr=60.,Int_t tpcClspid=80, Int_t itsCls=4, Int_t pixellayer=2, Double_t dcaxy=100., Double_t dcaz=200.,  Double_t tofsig=30., Double_t *tpcdedx=NULL, Int_t vzero=1, Int_t debuglevel=0, Double_t etarange=80, Bool_t withetacorrection=kFALSE, Bool_t withmultcorrection=kFALSE, Double_t ITSclustersback=0,Double_t minTPCback=-2.0,Double_t maxTPCback=5.0)
{
  //
  // HFE flow task 
  //
  Double_t tpcsharedfraction=11;
  Double_t chi2peritscl=36.;

  // multEst = 0 or 10 (VZERO centrality, good, bad runs for Jpsi), = 1 (GetNumberOfESDtracks, Theo)
  Int_t variableM = variableMr;
  if(variableMr==10) variableM = 0;

  printf("Summary settings flow task\n");
  printf("filter %d\n",aodfilter);
  printf("TPC number of tracking clusters %d\n",tpcCls);
  printf("TPC ratio clusters %f\n",tpcClsr*0.01);
  printf("TPC number of pid clusters %d\n",tpcClspid);
  printf("Maximal fraction of TPC shared cluster %f\n",tpcsharedfraction*0.01);
  printf("ITS number of clusters %d\n",itsCls);
  printf("Maximal chi2 per ITS cluster %f\n",chi2peritscl);
  printf("Requirement on the pixel layer %d\n",pixellayer);
  printf("dcaxy %f\n",dcaxy*0.01);
  printf("dcaz %f\n",dcaz*0.01);
  printf("TOF sigma %f\n",tofsig*0.1);
  printf("TPC min sigma cut 0: %f\n",tpcdedx[0]);
  printf("TPC min sigma cut 1: %f\n",tpcdedx[1]);
  printf("TPC min sigma cut 2: %f\n",tpcdedx[2]);
  printf("TPC min sigma cut 3: %f\n",tpcdedx[3]);
  printf("TPC min sigma cut 4: %f\n",tpcdedx[4]);
  printf("TPC min sigma cut 5: %f\n",tpcdedx[5]);
  printf("TPC min sigma cut 6: %f\n",tpcdedx[6]);
  printf("TPC min sigma cut 7: %f\n",tpcdedx[7]);
  printf("VZERO event plane %d\n",vzero);
  printf("Debug level %d\n",debuglevel);
  printf("Etarange %f\n",etarange*0.01);
  printf("TPC dE/dx Eta correction %d\n",withetacorrection);
  printf("TPC dE/dx multiplicity correction %d\n",withmultcorrection);
  printf("Number of ITS back clusters %d\n",(Int_t)ITSclustersback);
  printf("Min TPC back %f\n",minTPCback);
  printf("Max TPC back %f\n",maxTPCback);
  printf("PileUp cut %d\n",cutPileup);
  printf("Scalar Product %d\n",scalarProduct);
  printf("Multiplicity Esimator %d\n",variableM);

  // Cut HFE
  AliHFEcuts *hfecuts = new AliHFEcuts("hfeCuts","HFE Standard Cuts");
  hfecuts->CreateStandardCuts();
  hfecuts->SetEtaRange(etarange*0.01);
  hfecuts->SetMinNClustersTPC(tpcCls);
  hfecuts->SetMinNClustersTPCPID(tpcClspid);
  hfecuts->SetMinRatioTPCclusters(tpcClsr*0.01);
  hfecuts->SetTPCmodes(AliHFEextraCuts::kFound, AliHFEextraCuts::kFoundOverFindable);
  hfecuts->SetFractionOfSharedTPCClusters(tpcsharedfraction*0.01);
  hfecuts->SetMinNClustersITS(itsCls);
  hfecuts->SetCutITSpixel(pixellayer);
  hfecuts->SetCheckITSLayerStatus(kFALSE);
  hfecuts->SetMaxImpactParam(dcaxy*0.01,dcaz*0.01);
  hfecuts->SetPtRange(0.1,10.);
  hfecuts->SetAcceptKinkMothers();
      
  hfecuts->SetVertexRange(10.);
  hfecuts->SetUseSPDVertex(kTRUE);
  hfecuts->SetUseCorrelationVertex();
  
  hfecuts->SetTOFPIDStep(kTRUE);

  // Cut HFE background
  AliESDtrackCuts *hfeBackgroundCuts = new AliESDtrackCuts();
  hfeBackgroundCuts->SetName("backgroundcuts");
  //hfeBackgroundCuts->SetAcceptKinkDaughters(kFALSE);
  hfeBackgroundCuts->SetRequireTPCRefit(kTRUE);
  hfeBackgroundCuts->SetRequireITSRefit(kTRUE);
  if(ITSclustersback>0) hfeBackgroundCuts->SetMinNClustersITS(ITSclustersback);
  hfeBackgroundCuts->SetEtaRange(-0.8,0.8);
  hfeBackgroundCuts->SetRequireSigmaToVertex(kTRUE);
  hfeBackgroundCuts->SetMaxChi2PerClusterTPC(3.5);
  hfeBackgroundCuts->SetMinNClustersTPC(100);
  hfeBackgroundCuts->SetPtRange(0.5,1e10);
  
  // Name
  printf("appendix %s\n", appendix.Data());
  
  // The task
  AliAnalysisTaskFlowTPCTOFEPSP *task = new AliAnalysisTaskFlowTPCTOFEPSP(Form("HFE_%s", appendix.Data()));
  //task->SelectCollisionCandidates(trigger); 
  task->SetTriggerUsed(trigger);
  task->SetDebugLevel(1);
  task->SetVariableMultiplicity(variableM);
  //task->GetPIDQAManager()->SetHighResolutionEtaHistos();
  task->GetPIDQAManager()->SetMidResolutionHistos();
  //task->GetPIDQAManager()->SetFillMultiplicity();
  task->SetHFECuts(hfecuts);
  task->SetHFEBackgroundCuts(hfeBackgroundCuts);
  if(aodfilter > 0) {
    printf("ON AOD filter %d\n",aodfilter);
    task->SetFilter(aodfilter);
  }
  else {
    printf("Default AOD filter 1<<4\n");
  }
  if(useMC) {
    task->SetMCPID(kTRUE);
    //task->SetUseMCReactionPlane(kTRUE);
    task->SetAfterBurnerOn(kTRUE);
    task->SetV1V2V3V4V5(0.0,0.2,0.0,0.0,0.0);
  }
  if(vzero>=1) task->SetVZEROEventPlane(kTRUE);
  if(vzero==2) task->SetVZEROEventPlaneA(kTRUE);
  if(vzero==3) task->SetVZEROEventPlaneC(kTRUE);
  if((vzero==4) && useMC) task->SetUseMCReactionPlane(kTRUE);

  // Debug level
  task->SetDebugLevel(debuglevel);
  if(debuglevel==1) task->SetMonitorEventPlane(kTRUE);
  if(debuglevel==2) task->SetMonitorContamination(kTRUE);
  if(debuglevel==3) task->SetMonitorPhotonic(kTRUE);
  if(debuglevel==4) task->SetMonitorWithoutPID(kTRUE);
  if(debuglevel==5) task->SetMonitorTrackCuts(kTRUE);
  if(debuglevel==6) task->SetMonitorQCumulant(kTRUE);


  // Define PID
  AliHFEpid *pid = task->GetPID();
  if(useMC) pid->SetHasMCData(kTRUE);
  pid->AddDetector("TOF", 0);
  pid->AddDetector("TPC", 1);
  
  if(withetacorrection || withmultcorrection) {
    AliHFEpidTPC *tpcpid = pid->GetDetPID(AliHFEpid::kTPCpid);
    // Jpsi
    if(variableMr==0) {
      TH2D *meanc = GetCorrectionsJpsiMean("$ALICE_ROOT/PWGHF/hfe/macros/configs/PbPb/jpsietacentcorr2_2011.root");
      TH2D *widthc = GetCorrectionsJpsiWidth("$ALICE_ROOT/PWGHF/hfe/macros/configs/PbPb/jpsietacentcorr2_2011.root");
      //printf("Set\n");
      if(meanc && widthc) {
	tpcpid->SetJpsiCorrections(meanc,widthc);
	//printf("Set the histos\n");
      }
    }
    if(variableMr==10) {
      TH2D *meanc = GetCorrectionsJpsiMean("$ALICE_ROOT/PWGHF/hfe/macros/configs/PbPb/jpsietacentcorr3_2011.root");
      TH2D *widthc = GetCorrectionsJpsiWidth("$ALICE_ROOT/PWGHF/hfe/macros/configs/PbPb/jpsietacentcorr3_2011.root");
      if(meanc && widthc) tpcpid->SetJpsiCorrections(meanc,widthc);
    }
    // Theo
    if(variableMr==1 || variableMr==2) {
      task->GetPIDQAManager()->SetFillMultiplicity();
      TF1 *etaCorrMean = GetEtaCorrection("LHC11h_etaCorrMean");
      TF1 *etaCorrWdth = GetEtaCorrection("LHC11h_etaCorrWidth");
      if(etaCorrMean && etaCorrWdth && withetacorrection){
	tpcpid->SetEtaCorrections(etaCorrMean, etaCorrWdth);
	printf("TPC dE/dx Eta correction %p %p\n",etaCorrMean,etaCorrWdth);
      }
      TF1 *centCorrMean = GetCentralityCorrection("LHC11h_multCorrMean");
      TF1 *centCorrWdth = GetCentralityCorrection("LHC11h_multCorrWidth");
      if(centCorrMean && centCorrWdth && withmultcorrection){
	tpcpid->SetCentralityCorrections(centCorrMean, centCorrWdth);
	printf("TPC dE/dx multiplicity correction %p %p\n",centCorrMean,centCorrWdth);
      }
    }
  }
 
  task->SetPileUpCut(cutPileup);
  task->SetUseSP(scalarProduct);
  
  //pid->AddDetector("BAYES", 0);
  //pid->ConfigureBayesDetectorMask(AliPIDResponse::kDetTPC+AliPIDResponse::kDetTOF+AliPIDResponse::kDetTRD);
  //pid->ConfigureBayesPIDThreshold(0.9);

  
  TString datatype=gSystem->Getenv("CONFIG_FILE");
  
  if(!useMC) {

    if(withetacorrection || withmultcorrection) {
      
      pid->ConfigureTPCasymmetric(0.0,9999.,tpcdedx[0],3.);
      
    } else {
      
      Double_t params_centr_0_5[1];
      Double_t params_centr_5_10[1];
      Double_t params_centr_10_20[1];
      Double_t params_centr_20_30[1];
      Double_t params_centr_30_40[1];
      Double_t params_centr_40_50[1];
      Double_t params_centr_50_60[1];
      Double_t params_centr_per[1];
      
      params_centr_0_5[0]=tpcdedx[0];  // cut tuned for 0-5%
      params_centr_5_10[0]=tpcdedx[1]; // cut tuned for 5-10%
      params_centr_10_20[0]=tpcdedx[2];
      params_centr_20_30[0]=tpcdedx[3];
      params_centr_30_40[0]=tpcdedx[4];
      params_centr_40_50[0]=tpcdedx[5];
      params_centr_50_60[0]=tpcdedx[6];
      params_centr_per[0]=tpcdedx[7];
      
      char *cutmodel;
      cutmodel="pol0";
      
      for(Int_t a=0;a<11;a++)
	{
	  if(a>6)  pid->ConfigureTPCcentralityCut(a,cutmodel,params_centr_per,3.0);      //  60-80%
	  if(a==0) pid->ConfigureTPCcentralityCut(a,cutmodel,params_centr_0_5,3.0);      //  0-5%
	  if(a==1) pid->ConfigureTPCcentralityCut(a,cutmodel,params_centr_5_10,3.0);     //  5-10%
	  if(a==2) pid->ConfigureTPCcentralityCut(a,cutmodel,params_centr_10_20,3.0);    //  10-20%
	  if(a==3) pid->ConfigureTPCcentralityCut(a,cutmodel,params_centr_20_30,3.0);    //  20-30%
	  if(a==4) pid->ConfigureTPCcentralityCut(a,cutmodel,params_centr_30_40,3.0);    //  30-40%
	  if(a==5) pid->ConfigureTPCcentralityCut(a,cutmodel,params_centr_40_50,3.0);    //  40-50%
	  if(a==6) pid->ConfigureTPCcentralityCut(a,cutmodel,params_centr_50_60,3.0);    //  50-60%
	}
    }
    
  }

  if(tofsig>0.) pid->ConfigureTOF(tofsig*0.1);

  AliHFEpidTOF *tofpid = pid->GetDetPID(AliHFEpid::kTOFpid);
  if(tofsig<=0.) {
    Double_t uppercuttof = TMath::Abs(tofsig)*0.1;
    Double_t paramsTOFlowercut[12] ={-3.0,-3.0,-3.0,-3.0,-3.0,-3.0,-3.0,-3.0,-3.0,-3.0,-3.0,-3.0};
    Double_t paramsTOFuppercut[12] ={uppercuttof,uppercuttof,uppercuttof,uppercuttof,uppercuttof,uppercuttof,uppercuttof,uppercuttof,uppercuttof,uppercuttof,uppercuttof,uppercuttof};
    for(Int_t a=0;a<11;a++)
      {
	tofpid->SetTOFnSigmaBandCentrality(paramsTOFlowercut[a],paramsTOFuppercut[a],a);
      }
  }


  // Define hadron contamination (Only for 2011, TPC middle)
  TF1 *hBackground_20_30 = new TF1("hadronicBackgroundFunction_20_30","[0]+[1]*x+[2]*x*x+[3]*x*x*x", 0., 200.);
  hBackground_20_30->SetParameter(0, -0.165789);
  hBackground_20_30->SetParameter(1, 0.218694);
  hBackground_20_30->SetParameter(2, -0.076635);
  hBackground_20_30->SetParameter(3, 0.00947502);
  task->SetContamination(hBackground_20_30,3);
  TF1 *fv2_20_30 = Getv2Contamination_20_30(); 
  if(fv2_20_30) {
    fv2_20_30->SetName("fv2_20_30"); 
    task->SetV2Contamination(fv2_20_30,3);
  }
  // 30-40%
  TF1 *hBackground_30_40 = new TF1("hadronicBackgroundFunction_30_40","[0]+[1]*x+[2]*x*x+[3]*x*x*x", 0., 200.);
  hBackground_30_40->SetParameter(0, -0.072222);
  hBackground_30_40->SetParameter(1, 0.132098);
  hBackground_30_40->SetParameter(2, -0.0561759);
  hBackground_30_40->SetParameter(3, 0.00789356);
  task->SetContamination(hBackground_30_40,4);
  TF1 *fv2_30_40 = Getv2Contamination_30_40();
  if(fv2_30_40) {
    fv2_30_40->SetName("fv2_30_40");   
    task->SetV2Contamination(fv2_30_40,4);
  }
  // 40-50%
  TF1 *hBackground_40_50 = new TF1("hadronicBackgroundFunction_40_50",Contamination_40_50,0.,200.,0);
  printf("contamination 5 in pt range 0.5 %f\n",hBackground_40_50->Eval(0.5));
  printf("contamination 5 in pt range 1.5 %f\n",hBackground_40_50->Eval(1.5));
  printf("contamination 5 in pt range 3.5 %f\n",hBackground_40_50->Eval(3.5));
  task->SetContamination(hBackground_40_50,5);
  TF1 *fv2_40_50 = Getv2Contamination_40_50(); 
  if(fv2_40_50) {
    fv2_40_50->SetName("fv2_40_50");  
    task->SetV2Contamination(fv2_40_50,5);
  }

  // Define PID TOF Only
  AliHFEpid *pidTOFOnly = task->GetPIDTOFOnly();
  if(useMC) pidTOFOnly->SetHasMCData(kTRUE);
  pidTOFOnly->AddDetector("TOF", 0);
  pidTOFOnly->ConfigureTOF(tofsig*0.1);
  
  // Define PID background
  AliHFEpid *pidbackground = task->GetPIDBackground();
  if(useMC) pidbackground->SetHasMCData(kTRUE);
  //pidbackground->AddDetector("TOF", 0);
  pidbackground->AddDetector("TPC", 0);
  //pidbackground->ConfigureTOF(3.0);
  pidbackground->ConfigureTPCasymmetric(0.0,9999.,minTPCback,maxTPCback);
  task->SetMaxopeningtheta(9999.0);
  task->SetMaxopeningphi(9999.0);
  task->SetMaxopening3D(0.1);
  // Always AliKF and no mass constraint
  task->SetAlgorithmMA(kFALSE);
  task->SetMassConstraint(kFALSE);
  
  printf("*************************************\n");
  printf("Configuring standard Task:\n");
  task->Print();
  pid->PrintStatus();
  printf("*************************************\n"); 
  return task;

}
 ConfigHFE_FLOW_TOFTPC.C:1
 ConfigHFE_FLOW_TOFTPC.C:2
 ConfigHFE_FLOW_TOFTPC.C:3
 ConfigHFE_FLOW_TOFTPC.C:4
 ConfigHFE_FLOW_TOFTPC.C:5
 ConfigHFE_FLOW_TOFTPC.C:6
 ConfigHFE_FLOW_TOFTPC.C:7
 ConfigHFE_FLOW_TOFTPC.C:8
 ConfigHFE_FLOW_TOFTPC.C:9
 ConfigHFE_FLOW_TOFTPC.C:10
 ConfigHFE_FLOW_TOFTPC.C:11
 ConfigHFE_FLOW_TOFTPC.C:12
 ConfigHFE_FLOW_TOFTPC.C:13
 ConfigHFE_FLOW_TOFTPC.C:14
 ConfigHFE_FLOW_TOFTPC.C:15
 ConfigHFE_FLOW_TOFTPC.C:16
 ConfigHFE_FLOW_TOFTPC.C:17
 ConfigHFE_FLOW_TOFTPC.C:18
 ConfigHFE_FLOW_TOFTPC.C:19
 ConfigHFE_FLOW_TOFTPC.C:20
 ConfigHFE_FLOW_TOFTPC.C:21
 ConfigHFE_FLOW_TOFTPC.C:22
 ConfigHFE_FLOW_TOFTPC.C:23
 ConfigHFE_FLOW_TOFTPC.C:24
 ConfigHFE_FLOW_TOFTPC.C:25
 ConfigHFE_FLOW_TOFTPC.C:26
 ConfigHFE_FLOW_TOFTPC.C:27
 ConfigHFE_FLOW_TOFTPC.C:28
 ConfigHFE_FLOW_TOFTPC.C:29
 ConfigHFE_FLOW_TOFTPC.C:30
 ConfigHFE_FLOW_TOFTPC.C:31
 ConfigHFE_FLOW_TOFTPC.C:32
 ConfigHFE_FLOW_TOFTPC.C:33
 ConfigHFE_FLOW_TOFTPC.C:34
 ConfigHFE_FLOW_TOFTPC.C:35
 ConfigHFE_FLOW_TOFTPC.C:36
 ConfigHFE_FLOW_TOFTPC.C:37
 ConfigHFE_FLOW_TOFTPC.C:38
 ConfigHFE_FLOW_TOFTPC.C:39
 ConfigHFE_FLOW_TOFTPC.C:40
 ConfigHFE_FLOW_TOFTPC.C:41
 ConfigHFE_FLOW_TOFTPC.C:42
 ConfigHFE_FLOW_TOFTPC.C:43
 ConfigHFE_FLOW_TOFTPC.C:44
 ConfigHFE_FLOW_TOFTPC.C:45
 ConfigHFE_FLOW_TOFTPC.C:46
 ConfigHFE_FLOW_TOFTPC.C:47
 ConfigHFE_FLOW_TOFTPC.C:48
 ConfigHFE_FLOW_TOFTPC.C:49
 ConfigHFE_FLOW_TOFTPC.C:50
 ConfigHFE_FLOW_TOFTPC.C:51
 ConfigHFE_FLOW_TOFTPC.C:52
 ConfigHFE_FLOW_TOFTPC.C:53
 ConfigHFE_FLOW_TOFTPC.C:54
 ConfigHFE_FLOW_TOFTPC.C:55
 ConfigHFE_FLOW_TOFTPC.C:56
 ConfigHFE_FLOW_TOFTPC.C:57
 ConfigHFE_FLOW_TOFTPC.C:58
 ConfigHFE_FLOW_TOFTPC.C:59
 ConfigHFE_FLOW_TOFTPC.C:60
 ConfigHFE_FLOW_TOFTPC.C:61
 ConfigHFE_FLOW_TOFTPC.C:62
 ConfigHFE_FLOW_TOFTPC.C:63
 ConfigHFE_FLOW_TOFTPC.C:64
 ConfigHFE_FLOW_TOFTPC.C:65
 ConfigHFE_FLOW_TOFTPC.C:66
 ConfigHFE_FLOW_TOFTPC.C:67
 ConfigHFE_FLOW_TOFTPC.C:68
 ConfigHFE_FLOW_TOFTPC.C:69
 ConfigHFE_FLOW_TOFTPC.C:70
 ConfigHFE_FLOW_TOFTPC.C:71
 ConfigHFE_FLOW_TOFTPC.C:72
 ConfigHFE_FLOW_TOFTPC.C:73
 ConfigHFE_FLOW_TOFTPC.C:74
 ConfigHFE_FLOW_TOFTPC.C:75
 ConfigHFE_FLOW_TOFTPC.C:76
 ConfigHFE_FLOW_TOFTPC.C:77
 ConfigHFE_FLOW_TOFTPC.C:78
 ConfigHFE_FLOW_TOFTPC.C:79
 ConfigHFE_FLOW_TOFTPC.C:80
 ConfigHFE_FLOW_TOFTPC.C:81
 ConfigHFE_FLOW_TOFTPC.C:82
 ConfigHFE_FLOW_TOFTPC.C:83
 ConfigHFE_FLOW_TOFTPC.C:84
 ConfigHFE_FLOW_TOFTPC.C:85
 ConfigHFE_FLOW_TOFTPC.C:86
 ConfigHFE_FLOW_TOFTPC.C:87
 ConfigHFE_FLOW_TOFTPC.C:88
 ConfigHFE_FLOW_TOFTPC.C:89
 ConfigHFE_FLOW_TOFTPC.C:90
 ConfigHFE_FLOW_TOFTPC.C:91
 ConfigHFE_FLOW_TOFTPC.C:92
 ConfigHFE_FLOW_TOFTPC.C:93
 ConfigHFE_FLOW_TOFTPC.C:94
 ConfigHFE_FLOW_TOFTPC.C:95
 ConfigHFE_FLOW_TOFTPC.C:96
 ConfigHFE_FLOW_TOFTPC.C:97
 ConfigHFE_FLOW_TOFTPC.C:98
 ConfigHFE_FLOW_TOFTPC.C:99
 ConfigHFE_FLOW_TOFTPC.C:100
 ConfigHFE_FLOW_TOFTPC.C:101
 ConfigHFE_FLOW_TOFTPC.C:102
 ConfigHFE_FLOW_TOFTPC.C:103
 ConfigHFE_FLOW_TOFTPC.C:104
 ConfigHFE_FLOW_TOFTPC.C:105
 ConfigHFE_FLOW_TOFTPC.C:106
 ConfigHFE_FLOW_TOFTPC.C:107
 ConfigHFE_FLOW_TOFTPC.C:108
 ConfigHFE_FLOW_TOFTPC.C:109
 ConfigHFE_FLOW_TOFTPC.C:110
 ConfigHFE_FLOW_TOFTPC.C:111
 ConfigHFE_FLOW_TOFTPC.C:112
 ConfigHFE_FLOW_TOFTPC.C:113
 ConfigHFE_FLOW_TOFTPC.C:114
 ConfigHFE_FLOW_TOFTPC.C:115
 ConfigHFE_FLOW_TOFTPC.C:116
 ConfigHFE_FLOW_TOFTPC.C:117
 ConfigHFE_FLOW_TOFTPC.C:118
 ConfigHFE_FLOW_TOFTPC.C:119
 ConfigHFE_FLOW_TOFTPC.C:120
 ConfigHFE_FLOW_TOFTPC.C:121
 ConfigHFE_FLOW_TOFTPC.C:122
 ConfigHFE_FLOW_TOFTPC.C:123
 ConfigHFE_FLOW_TOFTPC.C:124
 ConfigHFE_FLOW_TOFTPC.C:125
 ConfigHFE_FLOW_TOFTPC.C:126
 ConfigHFE_FLOW_TOFTPC.C:127
 ConfigHFE_FLOW_TOFTPC.C:128
 ConfigHFE_FLOW_TOFTPC.C:129
 ConfigHFE_FLOW_TOFTPC.C:130
 ConfigHFE_FLOW_TOFTPC.C:131
 ConfigHFE_FLOW_TOFTPC.C:132
 ConfigHFE_FLOW_TOFTPC.C:133
 ConfigHFE_FLOW_TOFTPC.C:134
 ConfigHFE_FLOW_TOFTPC.C:135
 ConfigHFE_FLOW_TOFTPC.C:136
 ConfigHFE_FLOW_TOFTPC.C:137
 ConfigHFE_FLOW_TOFTPC.C:138
 ConfigHFE_FLOW_TOFTPC.C:139
 ConfigHFE_FLOW_TOFTPC.C:140
 ConfigHFE_FLOW_TOFTPC.C:141
 ConfigHFE_FLOW_TOFTPC.C:142
 ConfigHFE_FLOW_TOFTPC.C:143
 ConfigHFE_FLOW_TOFTPC.C:144
 ConfigHFE_FLOW_TOFTPC.C:145
 ConfigHFE_FLOW_TOFTPC.C:146
 ConfigHFE_FLOW_TOFTPC.C:147
 ConfigHFE_FLOW_TOFTPC.C:148
 ConfigHFE_FLOW_TOFTPC.C:149
 ConfigHFE_FLOW_TOFTPC.C:150
 ConfigHFE_FLOW_TOFTPC.C:151
 ConfigHFE_FLOW_TOFTPC.C:152
 ConfigHFE_FLOW_TOFTPC.C:153
 ConfigHFE_FLOW_TOFTPC.C:154
 ConfigHFE_FLOW_TOFTPC.C:155
 ConfigHFE_FLOW_TOFTPC.C:156
 ConfigHFE_FLOW_TOFTPC.C:157
 ConfigHFE_FLOW_TOFTPC.C:158
 ConfigHFE_FLOW_TOFTPC.C:159
 ConfigHFE_FLOW_TOFTPC.C:160
 ConfigHFE_FLOW_TOFTPC.C:161
 ConfigHFE_FLOW_TOFTPC.C:162
 ConfigHFE_FLOW_TOFTPC.C:163
 ConfigHFE_FLOW_TOFTPC.C:164
 ConfigHFE_FLOW_TOFTPC.C:165
 ConfigHFE_FLOW_TOFTPC.C:166
 ConfigHFE_FLOW_TOFTPC.C:167
 ConfigHFE_FLOW_TOFTPC.C:168
 ConfigHFE_FLOW_TOFTPC.C:169
 ConfigHFE_FLOW_TOFTPC.C:170
 ConfigHFE_FLOW_TOFTPC.C:171
 ConfigHFE_FLOW_TOFTPC.C:172
 ConfigHFE_FLOW_TOFTPC.C:173
 ConfigHFE_FLOW_TOFTPC.C:174
 ConfigHFE_FLOW_TOFTPC.C:175
 ConfigHFE_FLOW_TOFTPC.C:176
 ConfigHFE_FLOW_TOFTPC.C:177
 ConfigHFE_FLOW_TOFTPC.C:178
 ConfigHFE_FLOW_TOFTPC.C:179
 ConfigHFE_FLOW_TOFTPC.C:180
 ConfigHFE_FLOW_TOFTPC.C:181
 ConfigHFE_FLOW_TOFTPC.C:182
 ConfigHFE_FLOW_TOFTPC.C:183
 ConfigHFE_FLOW_TOFTPC.C:184
 ConfigHFE_FLOW_TOFTPC.C:185
 ConfigHFE_FLOW_TOFTPC.C:186
 ConfigHFE_FLOW_TOFTPC.C:187
 ConfigHFE_FLOW_TOFTPC.C:188
 ConfigHFE_FLOW_TOFTPC.C:189
 ConfigHFE_FLOW_TOFTPC.C:190
 ConfigHFE_FLOW_TOFTPC.C:191
 ConfigHFE_FLOW_TOFTPC.C:192
 ConfigHFE_FLOW_TOFTPC.C:193
 ConfigHFE_FLOW_TOFTPC.C:194
 ConfigHFE_FLOW_TOFTPC.C:195
 ConfigHFE_FLOW_TOFTPC.C:196
 ConfigHFE_FLOW_TOFTPC.C:197
 ConfigHFE_FLOW_TOFTPC.C:198
 ConfigHFE_FLOW_TOFTPC.C:199
 ConfigHFE_FLOW_TOFTPC.C:200
 ConfigHFE_FLOW_TOFTPC.C:201
 ConfigHFE_FLOW_TOFTPC.C:202
 ConfigHFE_FLOW_TOFTPC.C:203
 ConfigHFE_FLOW_TOFTPC.C:204
 ConfigHFE_FLOW_TOFTPC.C:205
 ConfigHFE_FLOW_TOFTPC.C:206
 ConfigHFE_FLOW_TOFTPC.C:207
 ConfigHFE_FLOW_TOFTPC.C:208
 ConfigHFE_FLOW_TOFTPC.C:209
 ConfigHFE_FLOW_TOFTPC.C:210
 ConfigHFE_FLOW_TOFTPC.C:211
 ConfigHFE_FLOW_TOFTPC.C:212
 ConfigHFE_FLOW_TOFTPC.C:213
 ConfigHFE_FLOW_TOFTPC.C:214
 ConfigHFE_FLOW_TOFTPC.C:215
 ConfigHFE_FLOW_TOFTPC.C:216
 ConfigHFE_FLOW_TOFTPC.C:217
 ConfigHFE_FLOW_TOFTPC.C:218
 ConfigHFE_FLOW_TOFTPC.C:219
 ConfigHFE_FLOW_TOFTPC.C:220
 ConfigHFE_FLOW_TOFTPC.C:221
 ConfigHFE_FLOW_TOFTPC.C:222
 ConfigHFE_FLOW_TOFTPC.C:223
 ConfigHFE_FLOW_TOFTPC.C:224
 ConfigHFE_FLOW_TOFTPC.C:225
 ConfigHFE_FLOW_TOFTPC.C:226
 ConfigHFE_FLOW_TOFTPC.C:227
 ConfigHFE_FLOW_TOFTPC.C:228
 ConfigHFE_FLOW_TOFTPC.C:229
 ConfigHFE_FLOW_TOFTPC.C:230
 ConfigHFE_FLOW_TOFTPC.C:231
 ConfigHFE_FLOW_TOFTPC.C:232
 ConfigHFE_FLOW_TOFTPC.C:233
 ConfigHFE_FLOW_TOFTPC.C:234
 ConfigHFE_FLOW_TOFTPC.C:235
 ConfigHFE_FLOW_TOFTPC.C:236
 ConfigHFE_FLOW_TOFTPC.C:237
 ConfigHFE_FLOW_TOFTPC.C:238
 ConfigHFE_FLOW_TOFTPC.C:239
 ConfigHFE_FLOW_TOFTPC.C:240
 ConfigHFE_FLOW_TOFTPC.C:241
 ConfigHFE_FLOW_TOFTPC.C:242
 ConfigHFE_FLOW_TOFTPC.C:243
 ConfigHFE_FLOW_TOFTPC.C:244
 ConfigHFE_FLOW_TOFTPC.C:245
 ConfigHFE_FLOW_TOFTPC.C:246
 ConfigHFE_FLOW_TOFTPC.C:247
 ConfigHFE_FLOW_TOFTPC.C:248
 ConfigHFE_FLOW_TOFTPC.C:249
 ConfigHFE_FLOW_TOFTPC.C:250
 ConfigHFE_FLOW_TOFTPC.C:251
 ConfigHFE_FLOW_TOFTPC.C:252
 ConfigHFE_FLOW_TOFTPC.C:253
 ConfigHFE_FLOW_TOFTPC.C:254
 ConfigHFE_FLOW_TOFTPC.C:255
 ConfigHFE_FLOW_TOFTPC.C:256
 ConfigHFE_FLOW_TOFTPC.C:257
 ConfigHFE_FLOW_TOFTPC.C:258
 ConfigHFE_FLOW_TOFTPC.C:259
 ConfigHFE_FLOW_TOFTPC.C:260
 ConfigHFE_FLOW_TOFTPC.C:261
 ConfigHFE_FLOW_TOFTPC.C:262
 ConfigHFE_FLOW_TOFTPC.C:263
 ConfigHFE_FLOW_TOFTPC.C:264
 ConfigHFE_FLOW_TOFTPC.C:265
 ConfigHFE_FLOW_TOFTPC.C:266
 ConfigHFE_FLOW_TOFTPC.C:267
 ConfigHFE_FLOW_TOFTPC.C:268
 ConfigHFE_FLOW_TOFTPC.C:269
 ConfigHFE_FLOW_TOFTPC.C:270
 ConfigHFE_FLOW_TOFTPC.C:271
 ConfigHFE_FLOW_TOFTPC.C:272
 ConfigHFE_FLOW_TOFTPC.C:273
 ConfigHFE_FLOW_TOFTPC.C:274
 ConfigHFE_FLOW_TOFTPC.C:275
 ConfigHFE_FLOW_TOFTPC.C:276
 ConfigHFE_FLOW_TOFTPC.C:277
 ConfigHFE_FLOW_TOFTPC.C:278
 ConfigHFE_FLOW_TOFTPC.C:279
 ConfigHFE_FLOW_TOFTPC.C:280
 ConfigHFE_FLOW_TOFTPC.C:281
 ConfigHFE_FLOW_TOFTPC.C:282
 ConfigHFE_FLOW_TOFTPC.C:283
 ConfigHFE_FLOW_TOFTPC.C:284
 ConfigHFE_FLOW_TOFTPC.C:285
 ConfigHFE_FLOW_TOFTPC.C:286
 ConfigHFE_FLOW_TOFTPC.C:287
 ConfigHFE_FLOW_TOFTPC.C:288
 ConfigHFE_FLOW_TOFTPC.C:289
 ConfigHFE_FLOW_TOFTPC.C:290
 ConfigHFE_FLOW_TOFTPC.C:291
 ConfigHFE_FLOW_TOFTPC.C:292
 ConfigHFE_FLOW_TOFTPC.C:293
 ConfigHFE_FLOW_TOFTPC.C:294
 ConfigHFE_FLOW_TOFTPC.C:295
 ConfigHFE_FLOW_TOFTPC.C:296
 ConfigHFE_FLOW_TOFTPC.C:297
 ConfigHFE_FLOW_TOFTPC.C:298
 ConfigHFE_FLOW_TOFTPC.C:299
 ConfigHFE_FLOW_TOFTPC.C:300
 ConfigHFE_FLOW_TOFTPC.C:301
 ConfigHFE_FLOW_TOFTPC.C:302
 ConfigHFE_FLOW_TOFTPC.C:303
 ConfigHFE_FLOW_TOFTPC.C:304
 ConfigHFE_FLOW_TOFTPC.C:305
 ConfigHFE_FLOW_TOFTPC.C:306
 ConfigHFE_FLOW_TOFTPC.C:307
 ConfigHFE_FLOW_TOFTPC.C:308
 ConfigHFE_FLOW_TOFTPC.C:309
 ConfigHFE_FLOW_TOFTPC.C:310
 ConfigHFE_FLOW_TOFTPC.C:311
 ConfigHFE_FLOW_TOFTPC.C:312
 ConfigHFE_FLOW_TOFTPC.C:313
 ConfigHFE_FLOW_TOFTPC.C:314
 ConfigHFE_FLOW_TOFTPC.C:315
 ConfigHFE_FLOW_TOFTPC.C:316
 ConfigHFE_FLOW_TOFTPC.C:317
 ConfigHFE_FLOW_TOFTPC.C:318
 ConfigHFE_FLOW_TOFTPC.C:319
 ConfigHFE_FLOW_TOFTPC.C:320
 ConfigHFE_FLOW_TOFTPC.C:321
 ConfigHFE_FLOW_TOFTPC.C:322
 ConfigHFE_FLOW_TOFTPC.C:323
 ConfigHFE_FLOW_TOFTPC.C:324
 ConfigHFE_FLOW_TOFTPC.C:325
 ConfigHFE_FLOW_TOFTPC.C:326
 ConfigHFE_FLOW_TOFTPC.C:327
 ConfigHFE_FLOW_TOFTPC.C:328
 ConfigHFE_FLOW_TOFTPC.C:329
 ConfigHFE_FLOW_TOFTPC.C:330
 ConfigHFE_FLOW_TOFTPC.C:331
 ConfigHFE_FLOW_TOFTPC.C:332
 ConfigHFE_FLOW_TOFTPC.C:333
 ConfigHFE_FLOW_TOFTPC.C:334
 ConfigHFE_FLOW_TOFTPC.C:335
 ConfigHFE_FLOW_TOFTPC.C:336
 ConfigHFE_FLOW_TOFTPC.C:337
 ConfigHFE_FLOW_TOFTPC.C:338
 ConfigHFE_FLOW_TOFTPC.C:339
 ConfigHFE_FLOW_TOFTPC.C:340
 ConfigHFE_FLOW_TOFTPC.C:341
 ConfigHFE_FLOW_TOFTPC.C:342
 ConfigHFE_FLOW_TOFTPC.C:343
 ConfigHFE_FLOW_TOFTPC.C:344
 ConfigHFE_FLOW_TOFTPC.C:345
 ConfigHFE_FLOW_TOFTPC.C:346
 ConfigHFE_FLOW_TOFTPC.C:347
 ConfigHFE_FLOW_TOFTPC.C:348
 ConfigHFE_FLOW_TOFTPC.C:349
 ConfigHFE_FLOW_TOFTPC.C:350
 ConfigHFE_FLOW_TOFTPC.C:351
 ConfigHFE_FLOW_TOFTPC.C:352
 ConfigHFE_FLOW_TOFTPC.C:353
 ConfigHFE_FLOW_TOFTPC.C:354
 ConfigHFE_FLOW_TOFTPC.C:355
 ConfigHFE_FLOW_TOFTPC.C:356
 ConfigHFE_FLOW_TOFTPC.C:357
 ConfigHFE_FLOW_TOFTPC.C:358
 ConfigHFE_FLOW_TOFTPC.C:359
 ConfigHFE_FLOW_TOFTPC.C:360
 ConfigHFE_FLOW_TOFTPC.C:361
 ConfigHFE_FLOW_TOFTPC.C:362
 ConfigHFE_FLOW_TOFTPC.C:363
 ConfigHFE_FLOW_TOFTPC.C:364
 ConfigHFE_FLOW_TOFTPC.C:365
 ConfigHFE_FLOW_TOFTPC.C:366
 ConfigHFE_FLOW_TOFTPC.C:367
 ConfigHFE_FLOW_TOFTPC.C:368
 ConfigHFE_FLOW_TOFTPC.C:369
 ConfigHFE_FLOW_TOFTPC.C:370
 ConfigHFE_FLOW_TOFTPC.C:371
 ConfigHFE_FLOW_TOFTPC.C:372
 ConfigHFE_FLOW_TOFTPC.C:373
 ConfigHFE_FLOW_TOFTPC.C:374
 ConfigHFE_FLOW_TOFTPC.C:375
 ConfigHFE_FLOW_TOFTPC.C:376
 ConfigHFE_FLOW_TOFTPC.C:377
 ConfigHFE_FLOW_TOFTPC.C:378
 ConfigHFE_FLOW_TOFTPC.C:379
 ConfigHFE_FLOW_TOFTPC.C:380
 ConfigHFE_FLOW_TOFTPC.C:381
 ConfigHFE_FLOW_TOFTPC.C:382
 ConfigHFE_FLOW_TOFTPC.C:383
 ConfigHFE_FLOW_TOFTPC.C:384
 ConfigHFE_FLOW_TOFTPC.C:385
 ConfigHFE_FLOW_TOFTPC.C:386
 ConfigHFE_FLOW_TOFTPC.C:387
 ConfigHFE_FLOW_TOFTPC.C:388
 ConfigHFE_FLOW_TOFTPC.C:389
 ConfigHFE_FLOW_TOFTPC.C:390
 ConfigHFE_FLOW_TOFTPC.C:391
 ConfigHFE_FLOW_TOFTPC.C:392
 ConfigHFE_FLOW_TOFTPC.C:393
 ConfigHFE_FLOW_TOFTPC.C:394
 ConfigHFE_FLOW_TOFTPC.C:395
 ConfigHFE_FLOW_TOFTPC.C:396
 ConfigHFE_FLOW_TOFTPC.C:397
 ConfigHFE_FLOW_TOFTPC.C:398
 ConfigHFE_FLOW_TOFTPC.C:399
 ConfigHFE_FLOW_TOFTPC.C:400
 ConfigHFE_FLOW_TOFTPC.C:401
 ConfigHFE_FLOW_TOFTPC.C:402
 ConfigHFE_FLOW_TOFTPC.C:403
 ConfigHFE_FLOW_TOFTPC.C:404
 ConfigHFE_FLOW_TOFTPC.C:405
 ConfigHFE_FLOW_TOFTPC.C:406
 ConfigHFE_FLOW_TOFTPC.C:407
 ConfigHFE_FLOW_TOFTPC.C:408
 ConfigHFE_FLOW_TOFTPC.C:409
 ConfigHFE_FLOW_TOFTPC.C:410
 ConfigHFE_FLOW_TOFTPC.C:411
 ConfigHFE_FLOW_TOFTPC.C:412
 ConfigHFE_FLOW_TOFTPC.C:413
 ConfigHFE_FLOW_TOFTPC.C:414
 ConfigHFE_FLOW_TOFTPC.C:415
 ConfigHFE_FLOW_TOFTPC.C:416
 ConfigHFE_FLOW_TOFTPC.C:417
 ConfigHFE_FLOW_TOFTPC.C:418
 ConfigHFE_FLOW_TOFTPC.C:419
 ConfigHFE_FLOW_TOFTPC.C:420
 ConfigHFE_FLOW_TOFTPC.C:421
 ConfigHFE_FLOW_TOFTPC.C:422
 ConfigHFE_FLOW_TOFTPC.C:423
 ConfigHFE_FLOW_TOFTPC.C:424
 ConfigHFE_FLOW_TOFTPC.C:425
 ConfigHFE_FLOW_TOFTPC.C:426
 ConfigHFE_FLOW_TOFTPC.C:427
 ConfigHFE_FLOW_TOFTPC.C:428
 ConfigHFE_FLOW_TOFTPC.C:429
 ConfigHFE_FLOW_TOFTPC.C:430
 ConfigHFE_FLOW_TOFTPC.C:431
 ConfigHFE_FLOW_TOFTPC.C:432
 ConfigHFE_FLOW_TOFTPC.C:433
 ConfigHFE_FLOW_TOFTPC.C:434