TreeLevel

Écrire ou importer une théorie

TreeLevel ne connaît aucune règle de Feynman par cœur : il les dérive du lagrangien que vous lui donnez. Deux façons de le lui donner — un fichier .feyn dans un langage minuscule, ou un dossier UFO produit par FeynRules.

Sommaire

Le principe

On déclare les champs (spin, masse, largeur, charge, couleur) et les paramètres, puis on écrit le lagrangien d'interaction terme par terme. Les termes cinétiques ne s'écrivent pas : les propagateurs découlent des déclarations et de la jauge choisie. Chaque terme à trois champs ou plus devient un vertex :

V = i × Σbijections pattes ↔ champs (terme sans ses champs, ∂μ → −i pμ, toutes impulsions entrantes)

La somme sur les façons d'attacher les pattes aux champs produit les facteurs combinatoires (−λ/4! φ⁴ donne −iλ), les symétrisations des vertex à bosons identiques, et pour les fermions de Majorana ou les couplages avec C la combinaison Γ + Γ′ de Denner.

Le langage .feyn

model QED
gauge feynman                       # feynman | unitary

param ee = 0.313451, Me = 0.000511  # paramètres, valeur numérique optionnelle
cparam V = 0.97                     # paramètre complexe ; conj(V) est son conjugué

field e  : dirac, mass Me, charge -1, pdg 11, label "e"
field mu : dirac, mass MMU, charge -1, pdg 13, label "μ"
field A  : vector, pdg 22, label "γ"
field Z  : vector, mass MZ, width WZ  # la largeur entre dans le propagateur
field u  : dirac, mass MU, charge 2/3, color 3
field G  : vector, color 8            # octet : gluon
field N  : majorana, mass MN          # sa propre antiparticule
field h  : scalar, mass MH
field Gp : scalar, mass MW, charge 1, goldstone

family lep = { e, mu }                # champs de même structure
array  Q[lep] = { -1, -1 }            # paramètres indexés par famille
define W3[mu] = cw Z[mu] + sw A[mu]   # macro ; ses indices muets sont renommés à chaque usage

L += sum(i in lep) ee Q[i] lep[i]~[a] gamma[nu][a,b] lep[i][b] A[nu]
L += gs u~[a,k] gamma[nu][a,b] T[c,k,l] u[b,l] G[nu,c]
L += -gs f[a,b,c] (del[mu] G[nu,a]) G[mu,b] G[nu,c]
L += -lam/24 h h h h                 # −λ/4! φ⁴ → vertex −iλ

Les erreurs de syntaxe, d'indices (un même nom utilisé comme spineur et comme couleur) ou de structure (une matrice C qui ne relie pas deux champs fermioniques) sont rapportées, en anglais, avec leur numéro de ligne dans l'onglet Théorie.

Exemple : ajouter un Z′ au Modèle standard

  1. Dans la palette, modèle StandardModel, bouton Dupliquer. Le nouveau modèle « StandardModel copie » est sélectionné ; renommez-le SM-Zprime.
  2. Onglet Théorie. Ajoutez sous les paramètres et les champs :
    param gZp = 0.3, MZp = 3000, WZp = 30
    field Zp : vector, mass MZp, width WZp, label "Z′"
    # couplage vectoriel universel aux leptons chargés
    L += sum(i in lep) gZp lep[i]~[a] gamma[nu][a,b] lep[i][b] Zp[nu]
  3. Appliquer. Le Z′ apparaît dans la palette, la liste des vertex compte trois entrées de plus.
  4. Dessinez e⁺e⁻ → μ⁺μ⁻, Générer : trois diagrammes (γ, Z, Z′). Tracez σ de 200 à 5 000 GeV en échelle log : le pic à 3 TeV a la largeur que vous avez déclarée. Pour une largeur cohérente, dessinez Z′ → e⁺e⁻ et lisez Γ dans l'onglet Calcul, puis reportez-la (× le nombre de canaux) dans WZp.

Couplages violant le nombre fermionique

Diquarks, leptoquarks, bosons X et Y d'une théorie grand-unifiée, termes de Majorana avec des champs de Dirac : ces couplages relient deux champs « dans le même sens » — deux ψ ou deux ψ̄ — au moyen de la matrice de conjugaison de charge C = iγ²γ⁰ (Cᵀ = −C, CγμᵀC⁻¹ = −γμ) :

# ψᵀ C Γ χ  =  ψ̄ᶜ Γ χ           (ψᶜ = C ψ̄ᵀ, ψ̄ᶜ = ψᵀ C)
L += -g5/sqrt2 d[a,k] C[a,b] gamma[mu][b,c] PL[c,d] e[d] X[mu,k]
# ψ̄ Γ C χ̄ᵀ  =  ψ̄ Γ χᶜ          (son hermitien conjugué)
L += -g5/sqrt2 e~[a] gamma[mu][a,b] PL[b,c] C[c,d] d~[d,k] X~[mu,k]
# diquark : ε de couleur, deux fois le même champ → règle Γ + Γ′
L += -g5/sqrt2 eps[k,l,m] u~[a,l] gamma[mu][a,b] PL[b,c] C[c,d] u~[d,m] X[mu,k]

TreeLevel absorbe C dans la règle du vertex : la règle est Γ entre la patte « ligne » (ψ, ou ψ̄) et la patte « colonne », et c'est le flux fermionique — orienté chaîne par chaîne selon Denner, Eck, Hahn et Küblbeck — qui porte la conjugaison : Γ′ = CΓᵀC⁻¹ quand un vertex est traversé à rebours, S(−p) pour un propagateur remonté, spineurs u, v, ū, v̄ selon la position dans la chaîne et non selon particule/antiparticule. Le résultat ne dépend pas de l'orientation choisie ; les tests le vérifient sur chaque processus.

Deux identités que le moteur reproduit et qui servent de garde-fou : εklm ūl γμPL C ūmᵀ = εklm ūl γμPR C ūmᵀ (le diquark de X couple les deux chiralités, d'où Γ(X → uu) = Γ(X → e⁺d̄)), et le couplage diquark axial ε ū γμγ⁵ C ūᵀ est identiquement nul, comme le couplage vectoriel d'un Majorana.

Importer un UFO

Le format UFO (Universal FeynRules Output) est le dossier Python que FeynRules produit pour MadGraph et les autres générateurs : particles.py, parameters.py, couplings.py, lorentz.py, vertices.py… TreeLevel le lit nativement, sans Python : un petit lecteur de Python déclaratif évalue les paramètres internes (fonctions cmath, matrices de mélange, expressions complexes), reconnaît les fermions auto-conjugués comme Majorana, et traduit chaque structure de Lorentz et de couleur en une règle.

  1. Récupérez un dossier UFO : dans une installation MadGraph (models/sm, models/MSSM_SLHA2…) ou sur la base de modèles FeynRules.
  2. Palette › Modèle › 📁 Importer un dossier UFO. L'import prend une fraction de seconde ; le rapport indique champs, vertex, paramètres et, le cas échéant, les vertex ignorés et pourquoi.
  3. Le modèle est dans Mes modèles, prêt pour la palette, la génération, les calculs numériques et symboliques. L'onglet Théorie en donne les Notes d'import.

Conventions appliquées, établies sur l'UFO sm de MadGraph (129/129 vertex identiques au Modèle standard dérivé) : listes de particules et impulsions toutes sortantes, Gamma(mu,i,j) = (γμ)ij avec i côté ψ̄, ProjM = PL, T(a,i,j) = (Ta)ij, Epsilon de couleur à trois indices. Le MSSM_SLHA2 s'importe entièrement (50 champs, 1 572 paramètres, 822 vertex) ; ses neutralinos et son gluino sont traités en Majorana.

Un modèle importé garde ses règles telles quelles : il n'a pas de lagrangien à éditer dans TreeLevel. Les structures de Lorentz à quatre fermions (contact) et les vertex avec C dans l'UFO ne sont pas encore traduits ; ils sont listés dans les notes d'import.

FeynRules, .fr, UFO, .feyn : qui fait quoi

FichierNatureCe qu'en fait TreeLevel
.frSource Mathematica de FeynRules : champs, paramètres, lagrangien en notation Mathematica.Pas lu directement (il faudrait Mathematica). FeynRules l'exporte en UFO.
dossier UFORègles de Feynman déjà dérivées, en Python déclaratif.Importé nativement.
.feynLe langage de TreeLevel : mêmes ingrédients qu'un .fr, en plus concis.Dérivé à la volée ; éditable dans l'app.
.feyndiagDocument TreeLevel.Théorie + diagrammes d'un processus.

Traduire un .fr en .feyn se fait à la main aujourd'hui, et c'est souvent l'affaire d'une heure pour un modèle de taille raisonnable : les conventions (Dμ, projecteurs, normalisations) sont les mêmes. Le chemin recommandé pour un gros modèle reste .fr → UFO → import.