wilson.match module
Provides matchers from SMEFT to WET, WET to WET-4, and WET-4 to WET-3 that
can be used with the wcxf
Python package.
"""Provides matchers from SMEFT to WET, WET to WET-4, and WET-4 to WET-3 that can be used with the `wcxf` Python package.""" from wilson import wcxf import wilson from . import smeft @wcxf.matcher('SMEFT', 'Warsaw up', 'WET', 'JMS') def warsaw_up_to_jms(C, scale, parameters): return smeft.match_all(C, scale, parameters) @wcxf.matcher('SMEFT', 'Warsaw', 'WET', 'JMS') def warsaw_to_jms(C, scale, parameters): C_warsawup = wilson.translate.smeft.warsaw_to_warsaw_up(C, parameters) return smeft.match_all(C_warsawup, scale, parameters) @wcxf.matcher('SMEFT', 'Warsaw', 'WET', 'flavio') def warsaw_to_flavio(C, scale, parameters): C_warsawup = wilson.translate.smeft.warsaw_to_warsaw_up(C, parameters) C_JMS = smeft.match_all(C_warsawup, scale, parameters) return wilson.translate.JMS_to_flavio(C_JMS, scale, parameters) @wcxf.matcher('SMEFT', 'Warsaw up', 'WET', 'flavio') def warsaw_up_to_flavio(C, scale, parameters): C_JMS = smeft.match_all(C, scale, parameters) return wilson.translate.JMS_to_flavio(C_JMS, scale, parameters) @wcxf.matcher('SMEFT', 'Warsaw', 'WET', 'EOS') def warsaw_to_eos(C, scale, parameters): C_warsawup = wilson.translate.smeft.warsaw_to_warsaw_up(C, parameters) C_JMS = smeft.match_all(C_warsawup, scale, parameters) return wilson.translate.JMS_to_EOS(C_JMS, scale, parameters) @wcxf.matcher('SMEFT', 'Warsaw', 'WET', 'Bern') def warsaw_to_bern(C, scale, parameters): C_warsawup = wilson.translate.smeft.warsaw_to_warsaw_up(C, parameters) C_JMS = smeft.match_all(C_warsawup, scale, parameters) return wilson.translate.JMS_to_Bern(C_JMS, scale, parameters) @wcxf.matcher('WET', 'flavio', 'WET-4', 'flavio') def wet_wet4_flavio(C, scale, parameters): keys = set(wcxf.Basis['WET-4', 'flavio'].all_wcs) return {k: v for k, v in C.items() if k in keys} @wcxf.matcher('WET-4', 'flavio', 'WET-3', 'flavio') def wet4_wet3_flavio(C, scale, parameters): keys = set(wcxf.Basis['WET-3', 'flavio'].all_wcs) return {k: v for k, v in C.items() if k in keys} @wcxf.matcher('WET', 'Bern', 'WET-4', 'Bern') def wet_wet4_bern(C, scale, parameters): keys = set(wcxf.Basis['WET-4', 'Bern'].all_wcs) return {k: v for k, v in C.items() if k in keys} @wcxf.matcher('WET-4', 'Bern', 'WET-3', 'Bern') def wet4_wet3_bern(C, scale, parameters): keys = set(wcxf.Basis['WET-3', 'Bern'].all_wcs) return {k: v for k, v in C.items() if k in keys} @wcxf.matcher('WET', 'JMS', 'WET-4', 'JMS') def wet_wet4_jms(C, scale, parameters): keys = set(wcxf.Basis['WET-4', 'JMS'].all_wcs) return {k: v for k, v in C.items() if k in keys} @wcxf.matcher('WET-4', 'JMS', 'WET-3', 'JMS') def wet4_wet3_jms(C, scale, parameters): keys = set(wcxf.Basis['WET-3', 'JMS'].all_wcs) return {k: v for k, v in C.items() if k in keys} @wcxf.matcher('WET-3', 'JMS', 'WET-2', 'JMS') def wet3_wet2_jms(C, scale, parameters): keys = set(wcxf.Basis['WET-2', 'JMS'].all_wcs) return {k: v for k, v in C.items() if k in keys}
Functions
def warsaw_to_bern(
C, scale, parameters)
@wcxf.matcher('SMEFT', 'Warsaw', 'WET', 'Bern') def warsaw_to_bern(C, scale, parameters): C_warsawup = wilson.translate.smeft.warsaw_to_warsaw_up(C, parameters) C_JMS = smeft.match_all(C_warsawup, scale, parameters) return wilson.translate.JMS_to_Bern(C_JMS, scale, parameters)
def warsaw_to_eos(
C, scale, parameters)
@wcxf.matcher('SMEFT', 'Warsaw', 'WET', 'EOS') def warsaw_to_eos(C, scale, parameters): C_warsawup = wilson.translate.smeft.warsaw_to_warsaw_up(C, parameters) C_JMS = smeft.match_all(C_warsawup, scale, parameters) return wilson.translate.JMS_to_EOS(C_JMS, scale, parameters)
def warsaw_to_flavio(
C, scale, parameters)
@wcxf.matcher('SMEFT', 'Warsaw', 'WET', 'flavio') def warsaw_to_flavio(C, scale, parameters): C_warsawup = wilson.translate.smeft.warsaw_to_warsaw_up(C, parameters) C_JMS = smeft.match_all(C_warsawup, scale, parameters) return wilson.translate.JMS_to_flavio(C_JMS, scale, parameters)
def warsaw_to_jms(
C, scale, parameters)
@wcxf.matcher('SMEFT', 'Warsaw', 'WET', 'JMS') def warsaw_to_jms(C, scale, parameters): C_warsawup = wilson.translate.smeft.warsaw_to_warsaw_up(C, parameters) return smeft.match_all(C_warsawup, scale, parameters)
def warsaw_up_to_flavio(
C, scale, parameters)
@wcxf.matcher('SMEFT', 'Warsaw up', 'WET', 'flavio') def warsaw_up_to_flavio(C, scale, parameters): C_JMS = smeft.match_all(C, scale, parameters) return wilson.translate.JMS_to_flavio(C_JMS, scale, parameters)
def warsaw_up_to_jms(
C, scale, parameters)
@wcxf.matcher('SMEFT', 'Warsaw up', 'WET', 'JMS') def warsaw_up_to_jms(C, scale, parameters): return smeft.match_all(C, scale, parameters)
def wet3_wet2_jms(
C, scale, parameters)
@wcxf.matcher('WET-3', 'JMS', 'WET-2', 'JMS') def wet3_wet2_jms(C, scale, parameters): keys = set(wcxf.Basis['WET-2', 'JMS'].all_wcs) return {k: v for k, v in C.items() if k in keys}
def wet4_wet3_bern(
C, scale, parameters)
@wcxf.matcher('WET-4', 'Bern', 'WET-3', 'Bern') def wet4_wet3_bern(C, scale, parameters): keys = set(wcxf.Basis['WET-3', 'Bern'].all_wcs) return {k: v for k, v in C.items() if k in keys}
def wet4_wet3_flavio(
C, scale, parameters)
@wcxf.matcher('WET-4', 'flavio', 'WET-3', 'flavio') def wet4_wet3_flavio(C, scale, parameters): keys = set(wcxf.Basis['WET-3', 'flavio'].all_wcs) return {k: v for k, v in C.items() if k in keys}
def wet4_wet3_jms(
C, scale, parameters)
@wcxf.matcher('WET-4', 'JMS', 'WET-3', 'JMS') def wet4_wet3_jms(C, scale, parameters): keys = set(wcxf.Basis['WET-3', 'JMS'].all_wcs) return {k: v for k, v in C.items() if k in keys}
def wet_wet4_bern(
C, scale, parameters)
@wcxf.matcher('WET', 'Bern', 'WET-4', 'Bern') def wet_wet4_bern(C, scale, parameters): keys = set(wcxf.Basis['WET-4', 'Bern'].all_wcs) return {k: v for k, v in C.items() if k in keys}
def wet_wet4_flavio(
C, scale, parameters)
@wcxf.matcher('WET', 'flavio', 'WET-4', 'flavio') def wet_wet4_flavio(C, scale, parameters): keys = set(wcxf.Basis['WET-4', 'flavio'].all_wcs) return {k: v for k, v in C.items() if k in keys}
def wet_wet4_jms(
C, scale, parameters)
@wcxf.matcher('WET', 'JMS', 'WET-4', 'JMS') def wet_wet4_jms(C, scale, parameters): keys = set(wcxf.Basis['WET-4', 'JMS'].all_wcs) return {k: v for k, v in C.items() if k in keys}
Sub-modules
Matcher from the SMEFT 'Warsaw up' basis to the WET JMS basis.
Based on arXiv:1908.05295.
Compare the 1-loop SMEFT matching based on aXiv:1908.05295 numerically to the Mathematica code provided by the authors.
wilson.match.test_smeft_tree_new
Compare the new tree-level SMEFT matching based on aXiv:1908.05295 to the old one based on arXiv:1709.04486.