HelasMatrixElement: list of processes with identical Helas calls, and
the list of HelasDiagrams associated with the processes.
If initiated with an Amplitude, HelasMatrixElement calls
generate_helas_diagrams, which goes through the diagrams of the Amplitude
and generates the corresponding Helas calls, taking into account possible
fermion flow clashes due to Majorana particles. The optional optimization
argument determines whether optimization is used (optimization = 1,
default), for maximum recycling of wavefunctions, or no optimization
(optimization = 0) when each diagram is written independently of all
previous diagrams (this is useful for running with restricted memory,
e.g. on a GPU). For processes with many diagrams, the total number or
wavefunctions after optimization is ~15% of the number of amplitudes
(diagrams).
By default, it will also generate the color information (color basis
and color matrix) corresponding to the Amplitude.
|
|
|
|
|
|
D[k] if k in D, else d
|
|
new empty dictionary
|
__init__(self,
amplitude=None,
optimization=1,
decay_ids=[ ] ,
gen_color=True)
Constructor for the HelasMatrixElement. |
source code
|
|
|
__eq__(self,
other)
Comparison between different matrix elements, to allow check for
identical processes. |
source code
|
|
|
__ne__(self,
other)
Overloading the nonequality operator, to make comparison easy |
source code
|
|
|
process_color(self)
Perform the simple color processing from a single matrix element
(without optimization then). |
source code
|
|
|
generate_helas_diagrams(self,
amplitude,
optimization=1,
decay_ids=[ ] )
Starting from a list of Diagrams from the diagram generation,
generate the corresponding HelasDiagrams, i.e., the wave functions
and amplitudes. |
source code
|
|
|
reuse_outdated_wavefunctions(self,
helas_diagrams)
change the wavefunctions id used in the writer to minimize the memory
used by the wavefunctions. |
source code
|
|
|
restore_original_wavefunctions(self)
This restore the original memory print and revert change the
wavefunctions id used in the writer to minimize the memory used by
the wavefunctions. |
source code
|
|
|
|
|
insert_decay(self,
old_wfs,
decay,
numbers,
got_majoranas)
Insert a decay chain matrix element into the matrix element. |
source code
|
|
|
update_later_mothers(self,
wf,
new_wf,
later_wfs,
later_wf_arrays)
Update mothers for all later wavefunctions |
source code
|
|
|
replace_wavefunctions(self,
old_wf,
new_wfs,
diagrams,
numbers)
Recursive function to replace old_wf with new_wfs, and
multiply all wavefunctions or amplitudes that use old_wf |
source code
|
|
|
|
|
identical_decay_chain_factor(self,
decay_chains)
Calculate the denominator factor from identical decay chains |
source code
|
|
|
calculate_fermionfactors(self)
Generate the fermion factors for all diagrams in the matrix element |
source code
|
|
|
calculate_identical_particle_factor(self)
Calculate the denominator factor for identical final state particles |
source code
|
|
|
|
|
getmothers(self,
legs,
number_to_wavefunctions,
external_wavefunctions,
wavefunctions,
diagram_wavefunctions)
Generate list of mothers from number_to_wavefunctions and
external_wavefunctions |
source code
|
|
|
get_num_configs(self)
Get number of diagrams, which is always more than number of configs |
source code
|
|
|
get_number_of_wavefunctions(self)
Gives the total number of wavefunctions for this ME |
source code
|
|
|
get_all_wavefunctions(self)
Gives a list of all wavefunctions for this ME |
source code
|
|
|
get_all_mass_widths(self)
Gives a list of all widths used by this ME (from propagator) |
source code
|
|
|
get_all_amplitudes(self)
Gives a list of all amplitudes for this ME |
source code
|
|
|
get_external_wavefunctions(self)
Gives the external wavefunctions for this ME |
source code
|
|
|
get_number_of_amplitudes(self)
Gives the total number of amplitudes for this ME |
source code
|
|
|
get_nexternal_ninitial(self)
Gives (number or external particles, number of incoming particles) |
source code
|
|
|
get_external_masses(self)
Gives the list of the strings corresponding to the masses of the
external particles. |
source code
|
|
|
get_helicity_combinations(self)
Gives the number of helicity combinations for external wavefunctions |
source code
|
|
|
get_helicity_matrix(self,
allow_reverse=True)
Gives the helicity matrix for external wavefunctions |
source code
|
|
|
get_hel_avg_factor(self)
Calculate the denominator factor due to the average over initial
state spin only |
source code
|
|
|
|
|
get_denominator_factor(self)
Calculate the denominator factor due to: Averaging initial state
color and spin, and identical final state particles |
source code
|
|
|
generate_color_amplitudes(self,
color_basis,
diagrams)
Return a list of (coefficient, amplitude number) lists, corresponding
to the JAMPs for the HelasDiagrams and color basis passed in
argument. |
source code
|
|
|
|
|
sort_split_orders(self,
split_orders)
Sort the 'split_orders' list given in argument so that the orders of
smaller weights appear first. |
source code
|
|
|
get_split_orders_mapping_for_diagram_list(self,
diag_list,
split_orders,
get_amp_number_function=<function <lambda> at 0x10dd4f320>,
get_amplitudes_function=<function <lambda> at 0x10dd4f398>)
This a helper function for get_split_orders_mapping to return, for
the HelasDiagram list given in argument, the list amp_orders detailed
in the description of the 'get_split_orders_mapping' function. |
source code
|
|
|
|
|
get_used_lorentz(self)
Return a list of (lorentz_name, conjugate_tag, outgoing) with all
lorentz structures used by this HelasMatrixElement. |
source code
|
|
|
get_used_couplings(self)
Return a list with all couplings used by this HelasMatrixElement. |
source code
|
|
|
get_mirror_processes(self)
Return a list of processes with initial states interchanged if has
mirror processes |
source code
|
|
Inherited from base_objects.PhysicsObject :
__getitem__ ,
__repr__ ,
__str__ ,
is_valid_prop ,
set
Inherited from dict :
__cmp__ ,
__contains__ ,
__delitem__ ,
__ge__ ,
__getattribute__ ,
__gt__ ,
__iter__ ,
__le__ ,
__len__ ,
__lt__ ,
__new__ ,
__setitem__ ,
__sizeof__ ,
clear ,
copy ,
fromkeys ,
has_key ,
items ,
iteritems ,
iterkeys ,
itervalues ,
keys ,
pop ,
popitem ,
setdefault ,
update ,
values ,
viewitems ,
viewkeys ,
viewvalues
Inherited from object :
__delattr__ ,
__format__ ,
__reduce__ ,
__reduce_ex__ ,
__setattr__ ,
__subclasshook__
|