Changes between Version 2 and Version 3 of FormFactors
- Timestamp:
- Apr 12, 2012, 10:57:36 AM (13 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
FormFactors
v2 v3 2 2 3 3 === How to add momentum dependent form factors? === 4 The easiest way to implement momentum dependent form factors, without changing all the details in the {{{ 4 The easiest way to implement momentum dependent form factors, without changing all the details in the 5 {{{ 5 6 matrix.f 6 }}} files in a process is by adding them in the model files. In particular the {{{ 7 }}} 8 files in a process is by adding them in the model files. In particular the 9 {{{ 7 10 couplings.f 8 }}} can contain momentum dependent form factors. The following steps explain most of the details. 9 * The first thing you have to do is download the full MG_ME package and untar it. Then, if your model contains new particles and interactions add them to the SM using the Software.UserModel, giving some generic values to the coupling constants. (If your model does not contain new particles and you only want to modify existing interactions, it is enough to make a copy of the {{{ 11 }}} 12 can contain momentum dependent form factors. The following steps explain most of the details. 13 * The first thing you have to do is download the full MG_ME package and untar it. Then, if your model contains new particles and interactions add them to the SM using the Software.UserModel, giving some generic values to the coupling constants. (If your model does not contain new particles and you only want to modify existing interactions, it is enough to make a copy of the 14 {{{ 10 15 sm 11 }}} directory to a new directory. ) 16 }}} 17 directory to a new directory. ) 12 18 * Generate the process you would like to study. 13 * Go to the =./Source/MODEL/= directory and open the {{{ 19 * Go to the =./Source/MODEL/= directory and open the 20 {{{ 14 21 couplings.f 15 }}} file. 16 * Add (in the setpara subroutine) ''before'' the line {{{ 22 }}} 23 file. 24 * Add (in the setpara subroutine) ''before'' the line 25 {{{ 17 26 c Start calculating the couplings for HELAS 18 }}} the following lines to the file: {{{ 27 }}} 28 the following lines to the file: 29 {{{ 19 30 c Momenta of particles in event 20 31 include '../genps.inc' 21 32 double precision pp(0:3,max_particles) 22 common/momenta_pp/pp }}} This makes sure that the information of the momenta is available in the {{{ 23 common/momenta_pp/pp }}} This makes sure that the information of the momenta is available in the {{{couplings.f}}} file. These momenta can be used to calculate the anomalous (momentum dependent) couplings. The syntax is as follows. All the momenta are saved in an array called pp. The first element is running from 0 to 3, these are the energy, and the x, y and z components of the momentum of a particle (the beam direction is in the z direction) in the center of momentum frame of the event. The second element of the array labels the particles. Only momenta of '''external particles''' are in the array. The labeling is as follows. The first two are the incoming particles, and the others the outgoing numbered according to how the process is written down in the {{{proc_card.dat}}}. For example, if you are studying {{{e+e->Zh>bb~mu+mu-}}} then the first particle will be the positron, the second the electron. The final state particles: b quark, b anti-quark, muon+ and muon- , are 3, 4, 5 and 6 respectively. Hence momentum pp(2,4) is the y-component of the momentum of the b anti-quark in the center of momentum frame of the event. Using these components most anomalous couplings can be implemented by changing the SM values of the couplings in the {{{couplings.f}}} file. 33 common/momenta_pp/pp 34 }}} 35 This makes sure that the information of the momenta is available in the 36 {{{ 37 common/momenta_pp/pp 38 }}} 39 This makes sure that the information of the momenta is available in the 40 {{{ 24 41 couplings.f 25 }}} file. These momenta can be used to calculate the anomalous (momentum dependent) couplings. The syntax is as follows. All the momenta are saved in an array called pp. The first element is running from 0 to 3, these are the energy, and the x, y and z components of the momentum of a particle (the beam direction is in the z direction) in the center of momentum frame of the event. The second element of the array labels the particles. Only momenta of '''external particles''' are in the array. The labeling is as follows. The first two are the incoming particles, and the others the outgoing numbered according to how the process is written down in the {{{ 42 }}} 43 file. These momenta can be used to calculate the anomalous (momentum dependent) couplings. The syntax is as follows. All the momenta are saved in an array called pp. The first element is running from 0 to 3, these are the energy, and the x, y and z components of the momentum of a particle (the beam direction is in the z direction) in the center of momentum frame of the event. The second element of the array labels the particles. Only momenta of '''external particles''' are in the array. The labeling is as follows. The first two are the incoming particles, and the others the outgoing numbered according to how the process is written down in the 44 {{{ 26 45 proc_card.dat 27 }}}. For example, if you are studying {{{ 46 }}} 47 . For example, if you are studying 48 {{{ 28 49 e+e->Zh>bb~mu+mu- 29 }}} then the first particle will be the positron, the second the electron. The final state particles: b quark, b anti-quark, muon+ and muon- , are 3, 4, 5 and 6 respectively. Hence momentum pp(2,4) is the y-component of the momentum of the b anti-quark in the center of momentum frame of the event. Using these components most anomalous couplings can be implemented by changing the SM values of the couplings in the {{{ 50 }}} 51 then the first particle will be the positron, the second the electron. The final state particles: b quark, b anti-quark, muon+ and muon- , are 3, 4, 5 and 6 respectively. Hence momentum pp(2,4) is the y-component of the momentum of the b anti-quark in the center of momentum frame of the event. Using these components most anomalous couplings can be implemented by changing the SM values of the couplings in the 52 {{{ 30 53 couplings.f 31 }}} file. 32 * As a final step you have to make sure that the {{{ 54 }}} 55 file. 56 These momenta can be used to calculate the anomalous (momentum dependent) couplings. The syntax is as follows. All the momenta are saved in an array called pp. The first element is running from 0 to 3, these are the energy, and the x, y and z components of the momentum of a particle (the beam direction is in the z direction) in the center of momentum frame of the event. The second element of the array labels the particles. Only momenta of '''external particles''' are in the array. The labeling is as follows. The first two are the incoming particles, and the others the outgoing numbered according to how the process is written down in the 57 {{{ 58 proc_card.dat 59 }}} 60 . For example, if you are studying 61 {{{ 62 e+e->Zh>bb~mu+mu- 63 }}} 64 then the first particle will be the positron, the second the electron. The final state particles: b quark, b anti-quark, muon+ and muon- , are 3, 4, 5 and 6 respectively. Hence momentum pp(2,4) is the y-component of the momentum of the b anti-quark in the center of momentum frame of the event. Using these components most anomalous couplings can be implemented by changing the SM values of the couplings in the 65 {{{ 66 couplings.f 67 }}} 68 file. 69 * As a final step you have to make sure that the 70 {{{ 33 71 setpara 34 }}} subroutine is called on an event-by-event basis, by adding to the {{{ 72 }}} 73 subroutine is called on an event-by-event basis, by adding to the 74 {{{ 35 75 run_card.dat 36 }}} the line {{{ 76 }}} 77 the line 78 {{{ 37 79 T = fixed_couplings ! if .false. calc. coupl. for every event 38 }}}just after the line where you can set the scale factor. For an example {{{ 80 }}} 81 just after the line where you can set the scale factor. For an example 82 {{{ 39 83 run_card.dat 40 }}} look [attachment:run_card.dat here]. 84 }}} 85 look [attachment:run_card.dat here]. 41 86 42 87 43 Note that it might be interesting to make a new model for every process you want to study. In that case, instead of modifying the {{{ 88 Note that it might be interesting to make a new model for every process you want to study. In that case, instead of modifying the 89 {{{ 44 90 couplings.f 45 }}} file in the =./Source/MODEL/= directory, you could change the one in the =./Models/newmodel/= directory. Doing it this way has the clear advantage of being able to regenerate your process, without having to change the {{{ 91 }}} 92 file in the =./Source/MODEL/= directory, you could change the one in the =./Models/newmodel/= directory. Doing it this way has the clear advantage of being able to regenerate your process, without having to change the 93 {{{ 46 94 couplings.f 47 }}} file every time, which makes it less error prone. (Make sure that you also save a copy of the {{{ 95 }}} 96 file every time, which makes it less error prone. (Make sure that you also save a copy of the 97 {{{ 48 98 proc_card.dat 49 }}} in the model directory so that you won't forget for which process you created this model.) 99 }}} 100 in the model directory so that you won't forget for which process you created this model.) 50 101 51 102 -- Main.RikkertFrederix - 20 Jul 2008