Mathematica can be invoked on the amdahl cluster as follows:
jones105@amdahl:~$ math Mathematica 5.0 for Linux Copyright 1988-2003 Wolfram Research, Inc. -- Motif graphics initialized -- In[1]:=however, because there is a limit of two users at a time, I recommend preparing your Mathematica input as a script and invoking Mathematica as in the following examples. First, copy the example /home/jones105/phys564/muondecay.m to your own directory. If you print it to the screen it will look like this:
jones105@amdahl:~/phys564$ cat muondecay.m
<<Tracer.m (* Load the Tracer package *)
VectorDimension[4] (* We only need 4-dimensional gamma matrices *)
AntiCommute[on] (* In 4-d, gamma5 will anti-commute *)
Spur[l] (* Evaluate traces labeled by 'l' *)
lmuon = GammaTrace[l,p3,{mu},p1,{nu},(U - G5)] (* Muon trace tensor *)
lelectron = 2 GammaTrace[l,p4,{mu},p2,{nu},(U-G5)] (* Electron trace tensor *)
m = G^2/2 lmuon lelectron (* Spin averaged squared invariant amplitude *)
Simplify[m] (* Simplify the result *)
%/.{p1.p2->s/2,p3.p4->s/2} (* Substitute in the previous result *)
%/.{s->mass^2} (* more substitutions *)
jones105@amdahl:~/phys564$
and if you invoke it thus, you will see the result at the end of lots of
output:
jones105@amdahl:~/phys564$ math < muondecay.m
Mathematica 5.0 for Linux
Copyright 1988-2003 Wolfram Research, Inc.
-- Motif graphics initialized --
In[1]:=
Remove::rmnsm: There are no symbols matching "Tracer`Private`*".
T R A C E R
=============
A MATHEMATICA PACKAGE FOR GAMMA-ALGEBRA IN ARBITRARY DIMENSIONS
by M. Jamin and M.E. Lautenbacher
Physics Dept. T31, Technical University Munich
Version 1.1.1 from Mon Dec 30 15:36:00 MET 1991
(based on MATHEMATICA Version 1.2)
(lots of other output not shown here...)
In[8]:=
2
Out[8]= 64 G p1.p2 p3.p4
In[9]:=
2 2
Out[9]= 16 G s
In[10]:=
2 4
Out[10]= 16 G mass
In[11]:=
jones105@amdahl:~/phys564$
which has evaluated the spin averaged matrix element:
jones105@amdahl:~phys564$ math
Mathematica 5.2 for Linux
Copyright 1988-2005 Wolfram Research, Inc.
-- Motif graphics initialized --
In[1]:= <<Tracer.m
...
In[2]:= VectorDimension[4]
In[3]:= Spur[l]
In[4]:= GammaTrace[l,(-2 p2 +4 m U),(q+m U),(-2 p1 + 4 m U),(q+ m U)]
Out[4]= -32 m p2.q + 32 p1.q p2.q + m (16 m p1.p2 - 32 m p2.q) -
2
> 16 p1.p2 q.q + 4 m (m (16 m - 8 p1.q) - 8 m p1.q + 16 m q.q)
Next we replace q by k1+k2 in the previous expression and attempt to simplify it...
In[5]:= %/.{q->k1+p1}
Out[5]= 4 m (-8 m (k1.p1 + p1.p1) + 16 m (k1.k1 + 2 k1.p1 + p1.p1) +
2
> m (16 m - 8 (k1.p1 + p1.p1))) - 16 (k1.k1 + 2 k1.p1 + p1.p1) p1.p2 -
2
> 32 m (k1.p2 + p1.p2) + 32 (k1.p1 + p1.p1) (k1.p2 + p1.p2) +
> m (16 m p1.p2 - 32 m (k1.p2 + p1.p2))
In[6]:= Expand[%]
Out[6]= 64 m + 64 m k1.k1 + 64 m k1.p1 - 64 m k1.p2 + 32 k1.p1 k1.p2 +
2
> 32 k1.p2 p1.p1 - 48 m p1.p2 - 16 k1.k1 p1.p2 + 16 p1.p1 p1.p2
In[7]:= Simplify[%]
4 2 2
Out[7]= 16 (4 m - 4 m k1.p2 + 2 k1.p1 (2 m + k1.p2) + 2 k1.p2 p1.p1 +
2 2
> k1.k1 (4 m - p1.p2) - 3 m p1.p2 + p1.p1 p1.p2)
Next we can replace p1.p1 with m2 and k1.k1 with 0:
In[8]:= %/.{p1.p1->m^2}
4 2 2
Out[8]= 16 (4 m - 2 m k1.p2 + 2 k1.p1 (2 m + k1.p2) +
2 2
> k1.k1 (4 m - p1.p2) - 2 m p1.p2)
In[9]:= %/.{k1.k1->0}
4 2 2 2
Out[9]= 16 (4 m - 2 m k1.p2 + 2 k1.p1 (2 m + k1.p2) - 2 m p1.p2)
Next we can set m2 to zero, which is reasonable for high energy
scattering...
In[10]:= %/.{m->0}
Out[10]= 32 k1.p1 k1.p2
Finally, we can replace the 4-vector products with Mandlestam variables:
In[11]:= %/.{k1.p1->s/2,k1.p2->-u/2}
Out[11]= -8 s u
The Tracer documentation provides more explanation of how to represent
4-vectors, gamma matrices and traces in a form that it can work with.
Please send me mail if you
do not understand how to translate a particular expression into a form
that Tracer can understand.
Have fun!