def gg_to_ggg_cS(S123,PperpSquared,y): ##difCrossSecId = 2 """A function to calculate the differential cross section for gg -> ggg.""" assert assertions.all_are_numbers([S123,PperpSquared,y]) __alphaSNow = alphaS.calculate(PperpSquared) __x1 = kinematics.calculate_x1(S123,math.sqrt(PperpSquared),y) __x3 = kinematics.calculate_x3(S123,math.sqrt(PperpSquared),y) __preFactor = (3.0*__alphaSNow)/(4.0*math.pi) __numerator = (__x1*__x1*__x1) + (__x3*__x3*__x3) __denominator = (1.0 - __x1)*(1.0 - __x3) return __preFactor*(__numerator/__denominator)
def gg_to_ggg_cS(S123, PperpSquared, y): ##difCrossSecId = 2 """A function to calculate the differential cross section for gg -> ggg.""" assert assertions.all_are_numbers([S123, PperpSquared, y]) __alphaSNow = alphaS.calculate(PperpSquared) __x1 = kinematics.calculate_x1(S123, math.sqrt(PperpSquared), y) __x3 = kinematics.calculate_x3(S123, math.sqrt(PperpSquared), y) __preFactor = (3.0 * __alphaSNow) / (4.0 * math.pi) __numerator = (__x1 * __x1 * __x1) + (__x3 * __x3 * __x3) __denominator = (1.0 - __x1) * (1.0 - __x3) return __preFactor * (__numerator / __denominator)
def qg_to_qQQBar_cS(S123,PperpSquared,y): ##difCrossSecId = 3 """A function to calculate the differential cross section for qg -> qQQBar.""" assert assertions.all_are_numbers([S123,PperpSquared,y]) __alphaSNow = alphaS.calculate(PperpSquared) __x1 = kinematics.calculate_x1(S123,math.sqrt(PperpSquared),y) __x2 = kinematics.calculate_x2(S123,math.sqrt(PperpSquared),y) __x3 = kinematics.calculate_x3(S123,math.sqrt(PperpSquared),y) __preFactor = (3.0*__alphaSNow)/(8.0*math.pi) __numerator = ((1.0 - __x1)*(1.0 - __x1)) + ((1.0 - __x2)*(1.0 - __x2)) __denominator = (1.0 - __x3) return __preFactor*(__numerator/__denominator)
def qg_to_qQQBar_cS(S123, PperpSquared, y): ##difCrossSecId = 3 """A function to calculate the differential cross section for qg -> qQQBar.""" assert assertions.all_are_numbers([S123, PperpSquared, y]) __alphaSNow = alphaS.calculate(PperpSquared) __x1 = kinematics.calculate_x1(S123, math.sqrt(PperpSquared), y) __x2 = kinematics.calculate_x2(S123, math.sqrt(PperpSquared), y) __x3 = kinematics.calculate_x3(S123, math.sqrt(PperpSquared), y) __preFactor = (3.0 * __alphaSNow) / (8.0 * math.pi) __numerator = ((1.0 - __x1) * (1.0 - __x1)) + ((1.0 - __x2) * (1.0 - __x2)) __denominator = (1.0 - __x3) return __preFactor * (__numerator / __denominator)
def qqBar_to_qpqBar_cS(S123,PperpSquared,y,code1,code2): ##difCrossSecId = 6 """A function to calculate the differential cross section for qqBar -> qpqBar.""" assert assertions.all_are_numbers([S123,PperpSquared,y]) __kQs = particleData.knownParticles.get_known_quarks() __expectedCodes = __kQs + [-x for x in __kQs] assert ((code1 in __expectedCodes) and (code2 in __expectedCodes)) __alphaEMNow = alphaEM.calculate(PperpSquared) __charge1 = particleData.knownParticles.get_charge_from_code(code1) __charge2 = particleData.knownParticles.get_charge_from_code(code2) __x1 = kinematics.calculate_x1(S123,math.sqrt(PperpSquared),y) __x3 = kinematics.calculate_x3(S123,math.sqrt(PperpSquared),y) __preFactor = (__alphaEMNow*abs(__charge1)*abs(__charge2))/(2.0*math.pi) __numerator = (__x1*__x1) + (__x3*__x3) __denominator = (1.0 - __x1)*(1.0 - __x3) return __preFactor*(__numerator/__denominator)
def qqBar_to_qpqBar_cS(S123, PperpSquared, y, code1, code2): ##difCrossSecId = 6 """A function to calculate the differential cross section for qqBar -> qpqBar.""" assert assertions.all_are_numbers([S123, PperpSquared, y]) __kQs = particleData.knownParticles.get_known_quarks() __expectedCodes = __kQs + [-x for x in __kQs] assert ((code1 in __expectedCodes) and (code2 in __expectedCodes)) __alphaEMNow = alphaEM.calculate(PperpSquared) __charge1 = particleData.knownParticles.get_charge_from_code(code1) __charge2 = particleData.knownParticles.get_charge_from_code(code2) __x1 = kinematics.calculate_x1(S123, math.sqrt(PperpSquared), y) __x3 = kinematics.calculate_x3(S123, math.sqrt(PperpSquared), y) __preFactor = (__alphaEMNow * abs(__charge1) * abs(__charge2)) / (2.0 * math.pi) __numerator = (__x1 * __x1) + (__x3 * __x3) __denominator = (1.0 - __x1) * (1.0 - __x3) return __preFactor * (__numerator / __denominator)