TreeLevel
Русский

Написать или импортировать теорию

TreeLevel не помнит наизусть ни одного правила Фейнмана: он выводит их из лагранжиана, который вы ему даёте. Дать его можно двумя способами — файлом .feyn на крошечном языке или папкой UFO, полученной из FeynRules.

Принцип

Объявляются поля (спин, масса, ширина, заряд, цвет) и параметры, а затем пишется лагранжиан взаимодействия, слагаемое за слагаемым. Кинетические члены писать не нужно: пропагаторы следуют из объявлений и выбранной калибровки. Каждое слагаемое с тремя и более полями становится вершиной:

V=i×∑сопоставления ноги ↔ поля(слагаемое без своих полей, ∂μ→−ipμ, все импульсы входящие)V = i\times\sum_{\text{сопоставления ноги}\,\leftrightarrow\,\text{поля}}\bigl(\text{слагаемое без своих полей},\ \partial_\mu\to -ip_\mu,\ \text{все импульсы входящие}\bigr)

Сумма по способам приписать ноги полям даёт комбинаторные множители (−λ/4! ϕ4-\lambda/4!\,\phi^4 даёт −iλ-i\lambda), симметризации вершин с одинаковыми бозонами и, для майорановских фермионов или взаимодействий с CC, комбинацию Γ+Γ′\Gamma + \Gamma' по Деннеру.

Язык .feyn

model QED
gauge feynman                       # feynman | unitary

param ee = 0.313451, Me = 0.000511  # параметры, числовое значение необязательно
cparam V = 0.97                     # комплексный параметр; conj(V) — его сопряжённое

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  # ширина входит в пропагатор
field u  : dirac, mass MU, charge 2/3, color 3
field G  : vector, color 8            # октет: глюон
field N  : majorana, mass MN          # сам себе античастица
field h  : scalar, mass MH
field Gp : scalar, mass MW, charge 1, goldstone

family lep = { e, mu }                # поля одинаковой структуры
array  Q[lep] = { -1, -1 }            # параметры, индексированные по семейству
define W3[mu] = cw Z[mu] + sw A[mu]   # макрос; его немые индексы переименовываются при каждом использовании

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! φ⁴ → вершина −iλ

Ошибки синтаксиса, индексов (одно имя использовано и как спинорный, и как цветовой индекс) или структуры (матрица C, не соединяющая два фермионных поля) указываются — по-английски, с номером строки, во вкладке «Теория».

Пример: добавить Z′ к Стандартной модели

  1. В палитре, модель StandardModel, кнопка Дублировать. Новая модель «StandardModel копия» выбрана; переименуйте её в SM-Zprime.
  2. Вкладка Теория. Добавьте под параметрами и полями:
    param gZp = 0.3, MZp = 3000, WZp = 30
    field Zp : vector, mass MZp, width WZp, label "Z′"
    # универсальное векторное взаимодействие с заряженными лептонами
    L += sum(i in lep) gZp lep[i]~[a] gamma[nu][a,b] lep[i][b] Zp[nu]
  3. Применить. Z′ появляется в палитре, в списке вершин становится на три записи больше.
  4. Нарисуйте e+e−→μ+μ−e^+e^-\to\mu^+\mu^-, затем Сгенерировать: три диаграммы (γ,Z,Z′\gamma, Z, Z'). Постройте σ\sigma от 200 до 5 000 ГэВ в логарифмическом масштабе: резонанс при 3 ТэВ имеет ровно ту ширину, которую вы указали. Ради согласованной ширины нарисуйте Z′→e+e−Z'\to e^+e^-, прочтите Γ\Gamma во вкладке «Вычисление» и впишите её (× число каналов) в WZp.

Взаимодействия, нарушающие фермионное число

Дикварки, лептокварки, бозоны X и Y великого объединения, майорановские члены с дираковскими полями: такие взаимодействия соединяют два поля «в одну сторону» — два ψ\psi или два ψˉ\bar\psi — через матрицу зарядового сопряжения C=iγ2γ0C = i\gamma^2\gamma^0 (CT=−CC^{T} = -C, CγμTC−1=−γμC\gamma^{\mu T}C^{-1} = -\gamma^\mu):

# ψᵀ 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 χ̄ᵀ  =  ψ̄ Γ χᶜ          (эрмитово сопряжённое к предыдущему)
L += -g5/sqrt2 e~[a] gamma[mu][a,b] PL[b,c] C[c,d] d~[d,k] X~[mu,k]
# дикварк: цветовой ε, дважды одно и то же поле → правило Γ + Γ′
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 вбирает CC в правило вершины: правило — это Γ\Gamma между ногой-«строкой» (ψ\psi или ψˉ\bar\psi) и ногой-«столбцом», а сопряжение несёт фермионный поток — ориентированный цепочка за цепочкой по Деннеру, Эку, Хану и Кюблбеку: Γ′=CΓTC−1\Gamma' = C\Gamma^{T}C^{-1}, когда вершина проходится против потока, S(−p)S(-p) для пропагатора, пройденного против потока, спиноры u,v,uˉ,vˉu, v, \bar u, \bar v — по положению в цепочке, а не по тому, частица это или античастица. Результат не зависит от выбранной ориентации; тесты проверяют это на каждом процессе.

Два тождества, которые воспроизводит ядро и которые служат сторожами: εklm uˉlγμPLCuˉmT=εklm uˉlγμPRCuˉmT\varepsilon_{klm}\,\bar u_l\gamma^\mu P_LC\bar u_m^{T} = \varepsilon_{klm}\,\bar u_l\gamma^\mu P_RC\bar u_m^{T} (дикварковое взаимодействие X связано с обеими киральностями, отсюда Γ(X→uu)=Γ(X→e+dˉ)\Gamma(X\to uu) = \Gamma(X\to e^+\bar d)), и аксиальное дикварковое взаимодействие ε uˉγμγ5CuˉT\varepsilon\,\bar u\gamma^\mu\gamma^5C\bar u^{T} тождественно обращается в нуль, как и векторное взаимодействие майорановской частицы.

Импорт UFO

Формат UFO (Universal FeynRules Output) — это папка Python, которую FeynRules готовит для MadGraph и других генераторов: particles.py, parameters.py, couplings.py, lorentz.py, vertices.py… TreeLevel читает её напрямую, без Python: небольшой считыватель декларативного Python вычисляет внутренние параметры (функции cmath, матрицы смешивания, комплексные выражения), распознаёт самосопряжённые фермионы как майорановские и переводит каждую лоренцеву и цветовую структуру в правило.

  1. Возьмите папку UFO: из установки MadGraph (models/sm, models/MSSM_SLHA2…) или из базы моделей FeynRules.
  2. Палитра › Модель › 📁 Импортировать папку UFO. Импорт занимает доли секунды; отчёт называет поля, вершины, параметры и, если такие есть, пропущенные вершины с причиной.
  3. Модель оказывается в разделе Мои модели, готовая для палитры, генерации и численных и символьных вычислений. Вкладка «Теория» показывает её заметки об импорте.

Применяемые соглашения, выверенные на UFO sm из MadGraph (129/129 вершин совпадают с выведенной Стандартной моделью): списки частиц и импульсов все исходящие, Gamma(mu,i,j) =(γμ)ij= (\gamma^\mu)_{ij}, где ii — со стороны ψˉ\bar\psi, ProjM =PL= P_L, T(a,i,j) =(Ta)ij= (T^a)_{ij}, цветовой Epsilon с тремя индексами. MSSM_SLHA2 импортируется целиком (50 полей, 1 572 параметра, 822 вершины); его нейтралино и глюино трактуются как майорановские.

Импортированная модель сохраняет свои правила как есть: лагранжиана для правки в TreeLevel у неё нет. Четырёхфермионные (контактные) лоренцевы структуры и вершины с C в UFO пока не переводятся; они перечислены в заметках об импорте.

FeynRules, .fr, UFO, .feyn: кто что делает

ФайлЧто этоЧто с ним делает TreeLevel
.frИсходник FeynRules для Mathematica: поля, параметры, лагранжиан в нотации Mathematica.Напрямую не читается (нужна была бы Mathematica). FeynRules экспортирует его в UFO.
папка UFOУже выведенные правила Фейнмана, на декларативном Python.Импортируется напрямую.
.feynЯзык TreeLevel: те же составляющие, что и в .fr, но короче.Выводится во время работы; правится в приложении.
.feyndiagДокумент TreeLevel.Теория + диаграммы процесса.

Перенести .fr в .feyn сегодня делается вручную и для модели разумного размера обычно занимает около часа: соглашения (DμD_\mu, проекторы, нормировки) те же самые. Для крупной модели рекомендуемый путь по-прежнему .fr → UFO → импорт.