Changing m_W to an external parameter

Asked by Daniel

I'd like to generate WZ events but with arbitrary mZ and mW. I understand that mW is not a parameter directly under control, but calculated with a formula from mZ and Gf. However, there are cases where there is no mZ or Gf value to produce the mW that I want.

I don't need to get any EW observables correct, so I've tried to modify the SM to make mW an external parameter, eg:

$ diff parameters.py ../sm/parameters.py
133,140d132
< MW = Parameter(name = 'MW',
< nature = 'external',
< type = 'real',
< value = 80.4,
< texname = '\\text{MW}',
< lhablock = 'MASS',
< lhacode = [ 24 ])
<
301a294,299
>
> MW = Parameter(name = 'MW',
> nature = 'internal',
> type = 'real',
> value = 'cmath.sqrt(MZ**2/2. + cmath.sqrt(MZ**4/4. - (aEW*cmath.pi*MZ**2)/(Gf*cmath.sqrt(2))))',
> texname = 'M_W')

but this fails, see MG5_debug below.

Daniel

#************************************************************
#* MadGraph5_aMC@NLO *
#* *
#* * * *
#* * * * * *
#* * * * * 5 * * * * *
#* * * * * *
#* * * *
#* *
#* *
#* VERSION 2.8.1 2020-09-28 *
#* *
#* The MadGraph5_aMC@NLO Development Team - Find us at *
#* https://server06.fynu.ucl.ac.be/projects/madgraph *
#* *
#************************************************************
#* *
#* Command File for MadGraph5_aMC@NLO *
#* *
#* run as ./bin/mg5_aMC filename *
#* *
#************************************************************
set group_subprocesses Auto
set ignore_six_quark_processes False
set low_mem_multicore_nlo_generation False
set complex_mass_scheme False
set gauge unitary
set loop_optimized_output True
set loop_color_flows False
set max_npoint_for_channel 0
set default_unset_couplings 99
set max_t_for_channel 99
set zerowidth_tchannel True
import model sm
define p = g u c d s u~ c~ d~ s~
define j = g u c d s u~ c~ d~ s~
define l+ = e+ mu+
define l- = e- mu-
define vl = ve vm vt
define vl~ = ve~ vm~ vt~
import model smmw
Traceback (most recent call last):
  File "/nfspool-0/home/whiteson/Ntag/MG5_aMC_v2_8_1/models/check_param_card.py", line 179, in get
    return self.param_dict[tuple(lhacode)]
KeyError: (24,)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/nfspool-0/home/whiteson/Ntag/MG5_aMC_v2_8_1/models/model_reader.py", line 175, in set_parameters_and_couplings
    value = param_card[block].get(pid).value
  File "/nfspool-0/home/whiteson/Ntag/MG5_aMC_v2_8_1/models/check_param_card.py", line 182, in get
    raise KeyError('id %s is not in %s' % (tuple(lhacode), self.name))
KeyError: 'id (24,) is not in mass'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/nfspool-0/home/whiteson/Ntag/MG5_aMC_v2_8_1/madgraph/interface/extended_cmd.py", line 1541, in onecmd
    return self.onecmd_orig(line, **opt)
  File "/nfspool-0/home/whiteson/Ntag/MG5_aMC_v2_8_1/madgraph/interface/extended_cmd.py", line 1490, in onecmd_orig
    return func(arg, **opt)
  File "/nfspool-0/home/whiteson/Ntag/MG5_aMC_v2_8_1/madgraph/interface/master_interface.py", line 281, in do_import
    self.cmd.do_import(self, *args, **opts)
  File "/nfspool-0/home/whiteson/Ntag/MG5_aMC_v2_8_1/madgraph/interface/madgraph_interface.py", line 5501, in do_import
    complex_mass_scheme=self.options['complex_mass_scheme'])
  File "/nfspool-0/home/whiteson/Ntag/MG5_aMC_v2_8_1/models/import_ufo.py", line 299, in import_model
    keep_external=keep_external, complex_mass_scheme=complex_mass_scheme)
  File "/nfspool-0/home/whiteson/Ntag/MG5_aMC_v2_8_1/models/import_ufo.py", line 1906, in restrict_model
    auto_width=self.modify_autowidth)
  File "/nfspool-0/home/whiteson/Ntag/MG5_aMC_v2_8_1/models/model_reader.py", line 177, in set_parameters_and_couplings
    raise MadGraph5Error('%s %s not define' % (block, pid))
madgraph.MadGraph5Error: mass (24,) not define
                          MadGraph5_aMC@NLO Options
                          ----------------
        complex_mass_scheme : False
    default_unset_couplings : 99
                      gauge : unitary
         group_subprocesses : Auto
  ignore_six_quark_processes : False
           loop_color_flows : False
      loop_optimized_output : True
  low_mem_multicore_nlo_generation : False
     max_npoint_for_channel : 0
          max_t_for_channel : 99
               stdout_level : 20 (user set)
         zerowidth_tchannel : True

                         MadEvent Options
                          ----------------
     automatic_html_opening : True
                    nb_core : None
        notification_center : True
                   run_mode : 2

                      Configuration Options
                      ---------------------
                        OLP : MadLoop
                    amcfast : amcfast-config
                   applgrid : applgrid-config
                auto_update : 7
         cluster_local_path : None
           cluster_nb_retry : 1
              cluster_queue : None (user set)
         cluster_retry_wait : 300
               cluster_size : 100
      cluster_status_update : (600, 30)
          cluster_temp_path : None
               cluster_type : condor
                    collier : ./HEPTools/lib
               cpp_compiler : None
             crash_on_error : False
               delphes_path : ./Delphes
                 eps_viewer : None
        exrootanalysis_path : ./ExRootAnalysis
              f2py_compiler : None
          f2py_compiler_py2 : None
          f2py_compiler_py3 : None
                    fastjet : None (user set)
           fortran_compiler : None
                      golem : None (user set)
                 hepmc_path : None (user set)
                  hwpp_path : None (user set)
                     lhapdf : lhapdf-config
                 lhapdf_py2 : None
                 lhapdf_py3 : /nfspool-0/home/whiteson/Ntag/MG5_aMC_v2_8_1/HEPTools/lhapdf6_py3/bin/lhapdf-config (user set)
          madanalysis5_path : None (user set)
           madanalysis_path : ./MadAnalysis
  mg5amc_py8_interface_path : /nfspool-0/home/whiteson/Ntag/MG5_aMC_v2_8_1/HEPTools/MG5aMC_PY8_interface (user set)
                      ninja : ./HEPTools/lib
        output_dependencies : external
            pythia-pgs_path : ./pythia-pgs
               pythia8_path : /nfspool-0/home/whiteson/Ntag/MG5_aMC_v2_8_1/HEPTools/pythia8 (user set)
                    samurai : None
               syscalc_path : ./SysCalc
                    td_path : ./td
                text_editor : None
                thepeg_path : None (user set)
                    timeout : 60
                web_browser : None

Question information

Language:
English Edit question
Status:
Answered
For:
MadGraph5_aMC@NLO Edit question
Assignee:
No assignee Edit question
Last query:
Last reply:
Revision history for this message
Olivier Mattelaer (olivier-mattelaer) said :
#1

I would have expected it to work...
Maybe you need to remove any of the compile file (.pkl, .pyo, .pyc) present in the models directory.
Also check that you do not have any file starting with "restrict_" or "default_" (I might miss some other special file).
Since you would need to update those too.

This being said my advise would be to try (test if you are not using the standard model)
import model sm
set EWscheme MZ_MW_alpha

then you can do display parameters
to check that indeed the MW is now an external parameter
and you can check that the param_card now allows you to change the MW mass (and you are still consistent).

> However, there are cases where there is no mZ or Gf value to produce the mW that I want.

If that's the case, changing the EW scheme will simply move the problem to something else (like segfault/invalid math operation/...)

Cheers,

Olivier

Can you help with this problem?

Provide an answer of your own, or ask Daniel for more information if necessary.

To post a message you must log in.