+
+ //in initial-state-radiation produced QQbar events the "mother quark"
+ //is acknowledged as the second quark [1] and sits in line 2 or 3
+ //is part of gluon splitting
+ line1 = mu1->GetQuarkPythiaLine(1); //[1] ... direct mother quark of outgoing quark in [0]
+ line2 = mu2->GetQuarkPythiaLine(1);
+ if(line1 == line2 && (line1 == 2 || line1 == 3)){
+ if((TMath::Abs(mu1->GetQuarkPDGCode(0)) == 4 && TMath::Abs(mu2->GetQuarkPDGCode(0)) == 4) ||
+ (TMath::Abs(mu1->GetQuarkPDGCode(0)) == 5 && TMath::Abs(mu2->GetQuarkPDGCode(0)) == 5)){
+
+ //now, check also that the string fragmented into two hadrons
+ //of the same flavour (string usually splits into many hadrons
+ //among which there are mostly soft particles)
+ if(flavPar1 == flavPar2){
+
+ this->SetCorrelated(kTRUE);
+ fCreationProcess = 1;
+ if(GetCauseOfCorrelation() == -1){
+ this->SetCauseOfCorrelation(mu1->GetQuarkPDGCode(1)); //should be flagged as initial state radiation?
+ }
+ return;
+ }
+ }
+ }
+
+ //in final-state-radiation produced QQbar events the "mother quark"
+ //is acknowledged as the first quark [1] and sits in line 6 or 7
+ //is part of gluon splitting
+ line1 = mu1->GetQuarkPythiaLine(1); //[1] ... direct mother quark
+ line2 = mu2->GetQuarkPythiaLine(1);
+ if(line1 == line2 && (line1 == 6 || line1 == 7)){
+ if((TMath::Abs(mu1->GetQuarkPDGCode(0)) == 4 && TMath::Abs(mu2->GetQuarkPDGCode(0)) == 4) ||
+ (TMath::Abs(mu1->GetQuarkPDGCode(0)) == 5 && TMath::Abs(mu2->GetQuarkPDGCode(0)) == 5)){
+
+ //now, check also that the string fragmented into two hadrons
+ //of the same flavour (string usually splits into many hadrons
+ //among which there are mostly soft particles)
+ if(flavPar1 == flavPar2){
+
+ this->SetCorrelated(kTRUE);
+ fCreationProcess = 1;
+ if(GetCauseOfCorrelation() == -1){
+ this->SetCauseOfCorrelation(mu1->GetQuarkPDGCode(1));
+ }
+ return;
+ }
+ }
+ }