Class to take care of exporting a set of loop matrix elements in the
Fortran format.
|
|
__init__(self,
*args,
**opts)
Initiate the LoopExporterFortran with directory information on where
to find all the loop-related source files, like CutTools |
source code
|
|
|
|
cat_coeff(self,
ff_number,
frac,
is_imaginary,
Nc_power,
Nc_value=3)
Concatenate the coefficient information to reduce it to (fraction,
is_imaginary) |
source code
|
|
|
|
compiler_choice(self,
compiler={'cpp': 'g++', 'f2py': 'f2py', 'fortran': 'gfortran'})
Different daughter classes might want different compilers. |
source code
|
|
|
|
convert_model(self,
model,
wanted_lorentz=[],
wanted_couplings=[])
Caches the aloha model created here when writing out the aloha
fortran subroutine. |
source code
|
|
|
|
|
|
|
generate_general_replace_dict(self,
matrix_element,
group_number=None,
proc_id=None)
Generates the entries for the general replacement dictionary used for
the different output codes for this exporter.The arguments
group_number and proc_id are just for the LoopInduced output with
MadEvent. |
source code
|
|
|
|
generate_loop_subprocess(self,
matrix_element,
fortran_model,
group_number=None,
proc_id=None,
config_map=None,
unique_id=None)
Generate the Pxxxxx directory for a loop subprocess in MG4
standalone, including the necessary loop_matrix.f, born_matrix.f and
include files. |
source code
|
|
|
|
generate_subprocess_directory(self,
matrix_element,
fortran_model)
To overload the default name for this function such that the correct
function is used when called from the command interface |
source code
|
|
|
|
get_ME_identifier(self,
matrix_element,
group_number=None,
group_elem_number=None)
A function returning a string uniquely identifying the matrix element
given in argument so that it can be used as a prefix to all MadLoop5
subroutines and common blocks related to it. |
source code
|
|
|
|
get_SubProc_folder_name(self,
process,
group_number=None,
group_elem_number=None)
Returns the name of the SubProcess directory, which can contain the
process goup and group element number for the case of loop-induced
integration with MadEvent. |
source code
|
|
|
|
get_amp_to_jamp_map(self,
col_amps,
n_amps)
Returns a list with element 'i' being a list of tuples corresponding
to all apparition of amplitude number 'i' in the jamp number 'j' with
coeff 'coeff_j'. |
source code
|
|
|
|
|
|
|
get_context(self,
matrix_element)
Returns the contextual variables which need to be set when
pre-processing the template files. |
source code
|
|
|
|
link_files_from_Subprocesses(self,
proc_name)
To link required files from the Subprocesses directory to the
different P* ones |
source code
|
|
|
|
loop_additional_template_setup(self,
copy_Source_makefile=True)
Perform additional actions specific for this class when setting up
the template with the copy_template function. |
source code
|
|
|
|
make(self)
Compiles the additional dependences for loop (such as CutTools). |
source code
|
|
|
|
|
|
|
|
|
|
split_HELASCALLS(self,
writer,
replace_dict,
template_name,
masterfile,
helas_calls,
entry_name,
bunch_name,
n_helas=2000,
required_so_broadcaster='LOOP_REQ_SO_DONE',
continue_label=1000,
momenta_array_name='P',
context={})
Finish the code generation with splitting. |
source code
|
|
|
|
|
|
|
write_CT_interface(self,
writer,
matrix_element,
optimized_output=False)
Create the file CT_interface.f which contains the subroutine defining
the loop HELAS-like calls along with the general interfacing
subroutine. |
source code
|
|
|
|
write_born_amps_and_wfs(self,
writer,
matrix_element,
fortran_model,
noSplit=False)
Writes out the code for the subroutine MP_BORN_AMPS_AND_WFS which
computes just the external wavefunction and born amplitudes in
multiple precision. |
source code
|
|
|
|
write_bornmatrix(self,
writer,
matrix_element,
fortran_model)
Create the born_matrix.f file for the born process as for a standard
tree-level computation. |
source code
|
|
|
|
|
|
|
write_f2py_check_sa(self,
matrix_element,
output_path)
Write the general check_sa.py in SubProcesses that calls all
processes successively. |
source code
|
|
|
|
|
|
|
|
|
|
write_improve_ps(self,
writer,
matrix_element)
Write out the improve_ps subroutines which modify the PS point given
in input and slightly deform it to achieve exact onshellness on all
external particles as well as perfect energy-momentum conservation |
source code
|
|
|
|
write_loop_makefile_definitions(self,
writer,
link_tir_libs,
tir_libs,
tir_include=[])
Create the file makefile which links to the TIR libraries. |
source code
|
|
|
|
write_loop_matrix_element_v4(self,
writer,
matrix_element,
fortran_model,
group_number=None,
proc_id=None,
config_map=None)
Writes loop_matrix.f, CT_interface.f, loop_num.f and
mp_born_amps_and_wfs. |
source code
|
|
|
|
write_loop_num(self,
writer,
matrix_element,
fortran_model)
Create the file containing the core subroutine called by CutTools
which contains the Helas calls building the loop |
source code
|
|
|
|
write_loopmatrix(self,
writer,
matrix_element,
fortran_model,
noSplit=False)
Create the loop_matrix.f file. |
source code
|
|
|
|
write_process_info_file(self,
writer,
matrix_element)
A small structural function to write the include file specifying some
process characteristics. |
source code
|
|
|
Inherited from LoopExporterFortran:
get_aloha_model,
link_CutTools,
write_mp_files
Inherited from iolibs.export_v4.ProcessExporterFortranSA:
create_MA5_cards,
export_model_files,
finalize,
write_check_sa_splitOrders,
write_matrix_element_v4,
write_source_makefile
Inherited from iolibs.export_v4.ProcessExporterFortran:
coeff,
create_default_madanalysis5_cards,
create_proc_charac,
create_run_card,
export_helas,
export_processes,
format_integer_list,
get_JAMP_coefs,
get_JAMP_lines,
get_JAMP_lines_split_order,
get_amp2_lines,
get_color_data_lines,
get_den_factor_line,
get_helicity_lines,
get_ic_line,
get_icolamp_lines,
get_leshouche_lines,
get_mg5_info_lines,
get_pdf_lines,
get_process_info_lines,
get_source_libraries_list,
get_split_orders_lines,
modify_grouping,
pass_information_from_cmd,
replace_make_opt_c_compiler,
replace_make_opt_f_compiler,
set_chosen_SO_index,
set_compiler,
set_cpp_compiler,
set_fortran_compiler,
write_configs_file,
write_configs_file_from_diagrams,
write_helamp_madspin,
write_leshouche_file,
write_maxamps_file,
write_maxparticles_file,
write_nexternal_file,
write_nexternal_madspin,
write_ngraphs_file,
write_pdf_opendata,
write_pmass_file,
write_procdef_mg5,
write_props_file
Inherited from object:
__delattr__,
__format__,
__getattribute__,
__hash__,
__new__,
__reduce__,
__reduce_ex__,
__repr__,
__setattr__,
__sizeof__,
__str__,
__subclasshook__
|