Update to pythi8.170
[u/mrichter/AliRoot.git] / PYTHIA8 / pythia8170 / phpdoc / MadGraph5Processes.php
1 <html>
2 <head>
3 <title>MadGraph 5 Processes</title>
4 <link rel="stylesheet" type="text/css" href="pythia.css"/>
5 <link rel="shortcut icon" href="pythia32.gif"/>
6 </head>
7 <body>
8
9 <script language=javascript type=text/javascript>
10 function stopRKey(evt) {
11 var evt = (evt) ? evt : ((event) ? event : null);
12 var node = (evt.target) ? evt.target :((evt.srcElement) ? evt.srcElement : null);
13 if ((evt.keyCode == 13) && (node.type=="text"))
14 {return false;}
15 }
16
17 document.onkeypress = stopRKey;
18 </script>
19 <?php
20 if($_POST['saved'] == 1) {
21 if($_POST['filepath'] != "files/") {
22 echo "<font color='red'>SETTINGS SAVED TO FILE</font><br/><br/>"; }
23 else {
24 echo "<font color='red'>NO FILE SELECTED YET.. PLEASE DO SO </font><a href='SaveSettings.php'>HERE</a><br/><br/>"; }
25 }
26 ?>
27
28 <form method='post' action='MadGraph5Processes.php'>
29
30 <h2>MadGraph 5 Processes</h2>
31
32 By far the easiest way to implement new processes into PYTHIA 8 is 
33 by using the matrix-element generator MadGraph 5. This program has 
34 an option to output the results of a matrix-element calculation 
35 as a set of PYTHIA 8 C++ classes (plus further auxiliary code), 
36 that can then be linked and used as 
37 <?php $filepath = $_GET["filepath"];
38 echo "<a href='SemiInternalProcesses.php?filepath=".$filepath."' target='page'>";?>semi-internal</a> processes,
39 meaning they are handled identically with normal internal ones.
40 This way, MadGraph 5 can be used to implement processes from 
41 any model that can be written in  terms of a Lagrangian. Any 
42 <i>2 -> 1</i>, <i>2 -> 2</i> and <i>2 -> 3</i> processes 
43 can be implemented, the limit being set by the absence of efficient
44 phase space generator algorithms for higher multiplicities in
45 PYTHIA. Features such as <i>s</i>-channel resonances are
46 automatically implemented in the process classes.  Besides the process
47 library and necessary model files, also an example main program is
48 generated for each set of processes, which can be easily modified to
49 perform the desired analyses.
50
51 <p/>
52 In order to create a PYTHIA 8 process library with MadGraph 5, first 
53 download the MadGraph 5 package from 
54 <a href="https://launchpad.net/madgraph5" target="page">
55 https://launchpad.net/madgraph5</a>, and untar the package. You can 
56 then specify the location of your <code>pythia81xx</code> directory 
57 in the file <code>input/mg5_configuration.txt</code>: 
58 <br/><code>pythia8_path = ./pythia81xx</code>
59 <br/>The location can be either relative (to the directory
60 <code>MadGraph5_v_x_x_x/.</code>) or absolute.
61
62 <p/>
63 For any model that is already implemented in the MadGraph 5 package,
64 you can directly use the model. Start the MadGraph 5 interface
65 <code>bin/mg5</code>, and do:
66 <pre>
67 import model model_name  
68 generate your_process_in_mg5_syntax 
69 add process your_next_process_in_mg5_syntax 
70 ...  
71 output pythia8 [path_to_pythia81xx_directory]
72 </pre>
73
74 <p/>
75 For examples of MG5 process syntax, please see
76 <a href="http://madgraph.phys.ucl.ac.be/EXAMPLES/example_mg5.html" 
77 target="page">http://madgraph.phys.ucl.ac.be/EXAMPLES/example_mg5.html</a> 
78 or type <code>help generate</code>. If you specified the path to the 
79 <code>pythia81xx</code> directory in the <code>mg5_configuration</code> 
80 file, you do not need to enter it in the <code>output</code> command.
81
82 <p/>
83 If your preferred model is found on the FeynRules model wiki page,
84 <a href="http://feynrules.irmp.ucl.ac.be/wiki/ModelDatabaseMainPage" 
85 target="page">http://feynrules.irmp.ucl.ac.be/wiki/ModelDatabaseMainPage</a>, 
86 download the UFO (Universal FeynRules Output) tar file for the model, 
87 untar in the <code>models/</code> directory, and use as above.
88
89 <p/>
90 If you want to implement a new model which has not yet been implemented, 
91 you can do this either using the Mathematica package FeynRules (see 
92 <a href="http://feynrules.irmp.ucl.ac.be/" target="page">
93 http://feynrules.irmp.ucl.ac.be/</a>) or directly edit the UFO model 
94 files of the most similar model in the <code>models/</code> directory.
95
96 <p/>
97 The resulting output from the <code>output pythia8</code> command is:
98 <ul>
99 <li>A process directory <code>Processes_modelname</code> with the 
100 model information and the files needed for all processes defined for 
101 this model, placed in the <code>pythia81xx</code> main directory.  
102 The model files are <code>Parameters_modelname.h/cc</code> and
103 <code>HelAmps_modelname.h/cc</code>, and the process files for each 
104 process class (with the same mass, spin and color of the initial/final 
105 state particles) are called <code>Sigma_modelname_processname.h/cc</code>. 
106 The directory also contains a <code>makefile</code> and a model parameter 
107 file <code>param_card_modelname.dat</code>.</li>  
108 <li>An example main program in the directory <code>examples/</code> 
109 (in the <code>pythia81xx</code> main directory) called 
110 <code>main_modelname_N.cc</code> and a corresponding makefile 
111 <code>Makefile_modelname_N</code>. This main program links in the 
112 process classes in the process directory described above. To run the 
113 example main program, just go to the <code>examples/</code> 
114 directory and run 
115 <br/><code>make -f Makefile_modelname_N</code> 
116 <br/>or run <code>launch</code> directly inside the MadGraph 5
117 command line interface.</li>
118 </ul>
119
120 <p/>
121 Note that in order for PYTHIA 8 to be able to automatically decay any
122 new particles, it is necessary to specify the branching ratios of the
123 particles in the <code>param_card</code> file, see 
124 [<a href="Bibliography.php" target="page">Ska04,Alw07</a>] for details.
125
126 <p/>
127 For further technical details, please see the MadGraph 5 release paper 
128 [<a href="Bibliography.php" target="page">Alw11</a>] and the 
129 <?php $filepath = $_GET["filepath"];
130 echo "<a href='SemiInternalProcesses.php?filepath=".$filepath."' target='page'>";?>semi-internal</a> processes page.
131
132 <p/>
133 Of course, as with MadGraph 4, MadGraph 5 can also output 
134 files of parton-level events according to the 
135 <?php $filepath = $_GET["filepath"];
136 echo "<a href='LesHouchesAccord.php?filepath=".$filepath."' target='page'>";?>LHEF</a> standard,
137 that can be read in and processed further by PYTHIA 8. 
138 The advantage is that then the MadGraph 5 phase space generator 
139 can be used, which opens up for processes with more than three 
140 particles in the final state. The disadvantages are that it is less
141 easy to mix and match with existing PYTHIA processes, and that one 
142 needs to regenerate and store large LHEF files for different
143 kinematics cuts or parameter values.
144
145 <p/>
146 Please cite the MadGraph 5 release paper [<a href="Bibliography.php" target="page">Alw11</a>] if you use 
147 MadGraph 5 to generate process libraries for PYTHIA 8.
148
149 </body>
150 </html>
151
152 <!-- Copyright (C) 2012 Torbjorn Sjostrand -->