Commit b86805e4 by Silvan Kuttimalai

### splitting function generator

parent 26b0a0a6
 ... ... @@ -18,6 +18,9 @@ def conjugate_tensor1d(tens): arr = [cgt(el._array[0]) for el in tens.elements()] return tensor1d(arr, tens._toplevel_key) # Normalization: uminus*uminusbar = 2M # Normalization: uplus *uplusbar = 2M def uplus(p0,p1,p2,p3, key): pbar = sqrt(p1**2+p2**2+p3**2) ppl = pbar + p3 ... ... @@ -80,6 +83,12 @@ def dirac_op(p, [p0,p1,p2,p3] = p return tensor1d([+p0,p1,p2,p3], 'mu')*mink_metric('mu','nu')*Gamma('nu', key_a, key_b) - four_identity(key_a, key_b)*M def epsilonplus(p0,p1,p2,p3, key, k0,k1,k2,k3): return 1/sqrt(2)*(uminusbar(k0,k1,k2,k3, 'a')*gamma(key,'a','b')*uminus(p0,p1,p2,p2,'b'))/(uminusbar(k0,k1,k2,k3, 'c')*uplus(p0,p1,p2,p2,'c')) def epsilonminus(p0,p1,p2,p3, key, k0,k1,k2,k3): return -1/sqrt(2)*(uplusbar(k0,k1,k2,k3, 'a')*gamma(key,'a','b')*uplus(p0,p1,p2,p2,'b'))/(uplusbar(k0,k1,k2,k3, 'c')*uminus(p0,p1,p2,p2,'c')) def test_bar(): p1 = Symbol('p1', real=True) p2 = Symbol('p2', real=True) ... ... @@ -129,7 +138,36 @@ def test_spinors(massless=True): assert(d3._array[i]._array[0].simplify() == 0 ) assert(d4._array[i]._array[0].simplify() == 0 ) test_bar() test_spinors() def t0(): # Incoming quark mom t1 = Symbol('t1', real=True) t2 = Symbol('t2', real=True) t3 = Symbol('t3', real=True) t0 = sqrt(t1**2+t2**2+t3**2) # Outgoing quark mom p1 = Symbol('p1', real=True) p2 = Symbol('p2', real=True) p3 = Symbol('p3', real=True) p0 = sqrt(p1**2+p2**2+p3**2) # Outgoing gluon mom k1 = Symbol('k1', real=True) k2 = Symbol('k2', real=True) k3 = Symbol('k3', real=True) k0 = sqrt(k1**2+k2**2+k3**2) # Outgoing gluon reference mom g1 = Symbol('g1', real=True) g2 = Symbol('g2', real=True) g3 = Symbol('g3', real=True) g0 = sqrt(k1**2+k2**2+k3**2) #test_bar() #test_spinors()
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!