Package models :: Module import_ufo :: Class UFOMG5Converter
[hide private]
[frames] | no frames]

Class UFOMG5Converter

source code

object --+
         |
        UFOMG5Converter

Convert a UFO model to the MG5 format

Instance Methods [hide private]
 
__init__(self, model, auto=False)
initialize empty list for particles/interactions
source code
 
load_model(self)
load the different of the model first particles then interactions
source code
 
optimise_interaction(self, interaction) source code
 
add_merge_lorentz(self, names)
add a lorentz structure which is the sume of the list given above
source code
 
add_particle(self, particle_info)
convert and add a particle in the particle list
source code
 
treat_couplings(self, couplings, all_CTparameters)
This function scan each coupling to see if it contains a CT parameter.
source code
 
add_CTinteraction(self, interaction, color_info)
Split this interaction in order to call add_interaction for interactions for each element of the loop_particles list.
source code
 
find_color_anti_color_rep(self, output=None)
find which color are in the 3/3bar states
source code
 
detect_incoming_fermion(self)
define which fermion should be incoming for that we look at F F~ X interactions
source code
 
add_interaction(self, interaction_info, color_info, type='base', loop_particles=None)
add an interaction in the MG5 model.
source code
 
get_sign_flow(self, flow, nb_fermion)
ensure that the flow of particles/lorentz are coherent with flow and return a correct version if needed
source code
 
add_lorentz(self, name, spins, expr, formfact=None)
Add a Lorentz expression which is not present in the UFO
source code
 
treat_color(self, data_string, interaction_info, color_info)
convert the string to ColorString
source code

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __repr__, __setattr__, __sizeof__, __str__, __subclasshook__

Class Variables [hide private]
  _pat_T = re.compile(r'T\((?P<first>\d*),(?P<second>\d*)\)')
  _pat_id = re.compile(r'Identity\((?P<first>\d*),(?P<second>\d*...
Properties [hide private]

Inherited from object: __class__

Method Details [hide private]

__init__(self, model, auto=False)
(Constructor)

source code 

initialize empty list for particles/interactions

Overrides: object.__init__

treat_couplings(self, couplings, all_CTparameters)

source code 
This function scan each coupling to see if it contains a CT parameter.
when it does, it changes its value to a dictionary with the CT parameter
changed to a new parameter for each pole and finite part. For instance,
the following coupling:
      coupling.value = '2*(myCTParam1 + myParam*(myCTParam2 + myCTParam3)'
with CTparameters
      myCTParam1 = {0: Something, -1: SomethingElse}
      myCTParam2 = {0: OtherSomething }
      myCTParam3 = {-1: YetOtherSomething }              
would be turned into
      coupling.value = {0: '2*(myCTParam1_FIN_ + myParam*(myCTParam2_FIN_ + ZERO)'
                       -1: '2*(myCTParam1_EPS_ + myParam*(ZERO + myCTParam2_EPS_)'}              

all_CTParameter is the list of all CTParameters in the model

add_CTinteraction(self, interaction, color_info)

source code 

Split this interaction in order to call add_interaction for interactions for each element of the loop_particles list. Also it is necessary to unfold here the contributions to the different laurent expansion orders of the couplings.

add_interaction(self, interaction_info, color_info, type='base', loop_particles=None)

source code 

add an interaction in the MG5 model. interaction_info is the UFO vertices information.


Class Variable Details [hide private]

_pat_id

Value:
re.compile(r'Identity\((?P<first>\d*),(?P<second>\d*)\)')