1. 20 Oct, 2020 8 commits
  2. 16 Oct, 2020 1 commit
  3. 15 Oct, 2020 2 commits
  4. 13 Oct, 2020 1 commit
    • Enrico Bothmann's avatar
      Use positional parameters for input files (run data) · acc8f40c
      Enrico Bothmann authored
      - The old syntax, i.e. using `-f ...` or `RUNDATA: ...`, is now
        deprecated, but it still works for backwards-compatibility
      - All positional parameters, that do not contain a ':' or a '=', are
        treated as filenames of input files
      - The default is still `Sherpa.yaml`, for the case where no filename is
        given
      - More than one file can be specified, e.g. `Sherpa 1.yaml 2.yaml`,
        where settings in input files to the right take precedence
      acc8f40c
  5. 06 Oct, 2020 1 commit
    • Davide Napoletano's avatar
      Changed default HQ CSSShower evolution schemes · 189361f0
      Davide Napoletano authored
      Scheme 30 is now the default evolution scheme corresponding to
      $`m_\perp`$ in the case of a $`g\to QQ`$ splitting or $`k_\perp`$ in
      all other cases.
      Scheme 20 is the new default scale scheme corresponding to $`m_{QQ}^2`$
      in the case of a $`g\to QQ`$ and to $`k_\perp`$ in all other cases
      189361f0
  6. 02 Oct, 2020 3 commits
  7. 23 Sep, 2020 1 commit
    • Enrico Bothmann's avatar
      Add support for setting `NLO_Mode: None` · 217e63ec
      Enrico Bothmann authored
      Although `nlo_mode::none` already existed, setting NLO_Mode explicitly
      (even to `None`) always prompted the Matrix_Element_Handler to assume
      that a NLO calculation is to be performed. This led to an inconsistent
      process info setup when using `NLO_Mode: None`.
      
      This is fixed now by adapting the logic of MEH to handle `None`
      properly. Note that NLO_Part and NLO_Order are now explicitly ignored
      when using `NLO_Mode: None` (which has been and still is the default),
      i.e. the settings are not even read into the process info by the MEH any
      longer.
      
      This commit allows to use the same setup for both a LO and NLO
      calculation, by using a tag and setting it from a run script or the
      command line:
      
      Sherpa.yaml:
      ```yaml
      TAGS:
        nlomode: None
      PROCESSES:
      - 93 93 -> 93 93:
          NLO_Mode: $(nlomode)
          # the next two settings are ignored if nlomode:=None
          NLO_Part: BVIRS
          NLO_Order: {QCD: 1, EW: 0}
      ```
      
      Shell script / command line:
      ```sh
      Sherpa NLO_MODE:=None
      Sherpa NLO_MODE:=Fixed_Order
      ```
      217e63ec
  8. 22 Sep, 2020 3 commits
    • Enrico Bothmann's avatar
      Allow for tags in process specifications · 5ca9a4b5
      Enrico Bothmann authored
      Tags are not automatically resolved in setting keys, hence this is now
      explicitly done in this case, to allow (again) for process
      specifications such as "93 93 -> 11 -11 93{$(NJET)}".
      
      This has become necessary because 8cb7d418 made the process
      specifications into the key with its value being the process setting
      map (instead of the spec just being another value of an entry in the
      process setting map).
      5ca9a4b5
    • davide napoletano's avatar
    • Enrico Bothmann's avatar
      Fix Rivet path handling for MPI runs · 7afff359
      Enrico Bothmann authored
      Fixes #261.
      
      MakeDir should be called by all ranks, not only the zero rank, since
      MakeDir is responsible for the "MPI reduction" (e.g. not calling mkdir
      for each rank, but only once.)
      If MakeDir is only called by the zero rank, Bcast within MakeDir is not
      called by all ranks, which will lead to a crash at a later point.
      7afff359
  9. 30 Jul, 2020 1 commit
  10. 28 Jul, 2020 1 commit
    • Enrico Bothmann's avatar
      Add missing check when setting K factors in AMEGIC · c4274be2
      Enrico Bothmann authored
      Fixes #264.
      
      K factors (at least the variable K factor) assume that the scale setter
      of the process is non-NULL. There was a violation to this rule in
      `AMEGIC::Single_Real_Correction::SetKFactor`, because of a missing check
      for `m_no_tree` (which was only present in `SetScale`, but not in
      `SetKFactor`, thus leading to a situation where the latter is called for
      the tree process, but not the former). When using a variable K factor,
      this led to an exception during process set-up.
      
      
      (cherry picked from commit 606e8b37)
      c4274be2
  11. 25 Jul, 2020 1 commit
  12. 19 Jul, 2020 1 commit
    • Enrico Bothmann's avatar
      Use base_weight for overall event weight scale · 803bac8d
      Enrico Bothmann authored
      Before, such factors have been multiplied into the "ME" entry of weights
      map; this required some specialised treatment of the ME weights, since
      they were the "absolute" weights, while all others were relative.
      Now, ME weights are relative to the base_weight, and hence they are on
      the same footing than all other (variation) weights in Weights_Map. This
      simplifies both the internal logic of Weights_Map as well as client code.
      
      The problem of finite variations in the presence of vanishing nominal
      values is now solved by adding `nominals_prefactor` to Weights_Map. This
      can be set to zero while leaving the individual nominals at a value of
      e.g. 1.0. Before, the solution was an awkward correction factor in
      Weights_Map::operator+=.
      803bac8d
  13. 17 Jul, 2020 1 commit
    • Enrico Bothmann's avatar
      Refactor event weight storage · aa694b65
      Enrico Bothmann authored
      Closes #225
      
      Replace the Weights, Shower_Weights, and [email protected]_Shower_Weights blob data
      with a single WeightsMap blob data entry.
      
      This entry is a Weights_Map object. It maps string keys to Weights
      objects. Each Weights object contains as first entry a nominal event
      weight, and potentially additional entries, e.g. for QCD variations
      or Qcut variations.
      
      The nominal event weight can always be retrieved by the
      Weights_Map::Nominal() function. Variations are combined in classes like
      HepMC2_Interface before writing them to the output.
      
      This commit has been validated by checking for identical output for LO,
      LOPS, MEPS, NLO, NLOPS, MENLOPS and MEPSNLO event generations at
      parton-level for Z+jets production.
      aa694b65
  14. 16 Jul, 2020 1 commit
  15. 02 Jul, 2020 1 commit
  16. 30 Jun, 2020 1 commit
  17. 29 Jun, 2020 2 commits
  18. 18 Jun, 2020 2 commits
  19. 16 Jun, 2020 1 commit
    • Enrico Bothmann's avatar
      Fix MCATNLO shower reweighting · e56d325d
      Enrico Bothmann authored
      In the case of no splitting, the m_last pointers must be set to NULL (as
      in CSS; note that the way DIRE/DIM is operating the OTF reweighting
      differs, such that the we do not need to port the fix to those), such
      that the Reweight function uses the right placeholder for the
      non-existing splitting scale (i.e. 0). Otherwise it potentially stops
      reweighting early, re-using some outdated splitting scale from an
      earlier shower evolution (actually, the bug was even non-deterministic,
      such that the m_last were probably not pointing to valid memory
      anymore).
      
      I have tested that the nominal outcome of a few hundred events is
      exactly the same as before in [email protected] Z production, and that the
      non-deterministic outcome of the OTF reweighting is replaced with a
      deterministic one (which seems to be correct).
      
      Note that the cases where I have seen the issue, the effect on the
      overall event weights was at a sub-percent level, and it affected only
      O(percent) of all events.
      e56d325d
  20. 04 Jun, 2020 1 commit
  21. 03 Jun, 2020 1 commit
    • Enrico Bothmann's avatar
      Add header and nominal in simple Weights output · cce404fc
      Enrico Bothmann authored
      Before, variation names were output before each weight on each line.
      The names are now instead output as a header. Also, the nominal weight
      has never been output, this is now also included (the "variation" name
      for it is "Nominal").
      cce404fc
  22. 29 May, 2020 5 commits