Rótulo estranho com pacote TikZ-Feymann e dificuldade no modo matemático

Rótulo estranho com pacote TikZ-Feymann e dificuldade no modo matemático

Começando com uma resposta recente

insira a descrição da imagem aqui

com este MWE:

\documentclass[a4paper,12pt]{article}
\usepackage{amssymb,amsmath}

\usepackage{tikz-feynman}
\tikzfeynmanset{compat=1.1.0}
\newcommand{\virgola}{\smash{\raisebox{0.1ex}{,}}}
\begin{document}
\feynmandiagram [layered layout, horizontal=b to c] {
a -- [boson,edge label'=\(p\virgola a\),charged boson] b
-- [fermion, half left, looseness=1.5,edge label'=\(\scriptstyle q+\frac{p}{2}\)] c
-- [fermion, half left, looseness=1.5, edge label'=\(\scriptstyle q-\frac{p}{2}\)] b,
c -- [boson,edge label'=\(p\virgola a\),charged boson] d,
};

\end{document}

Eu encontrei essas dificuldades:

  1. Não consigo colocar o rótulo de cada férmion fora do gráfico. Li o manual e só existe a opção de colocar sob bóson, fóton, etc.. Acho que só existe esta opção: edge label';
  2. Na etiqueta posso colocar apenas símbolos? Por exemplo, criei uma vírgula "virgola" no modo matemático. Se eu não adotar esta solução, recebo erros.

Quais são as soluções?

Responder1

Em edge label', 'significa "mover rótulo para o outro lado da linha", então use edge labelem vez de edge label'.

Em relação à vírgula, o problema é que a lista de opções é uma lista separada por vírgulas, então se você tiver vírgula em uma das entradas é necessário protegê-la com colchetes. Em outras palavras, use foo={bar, baz}em vez de foo=bar,baz, caso contrário o analisador ficará confuso com a vírgula. No seu caso, edge label'={\(p, a\)}.

insira a descrição da imagem aqui

\documentclass[a4paper,12pt]{article}
\usepackage{amssymb,amsmath}
\usepackage{tikz-feynman}
\tikzfeynmanset{compat=1.1.0}
\begin{document}
\feynmandiagram [layered layout, horizontal=b to c] {
a -- [boson,edge label'={\(p, a\)},charged boson] b
-- [fermion, half left, looseness=1.5,edge label=\(\scriptstyle q+\frac{p}{2}\)] c
-- [fermion, half left, looseness=1.5, edge label=\(\scriptstyle q-\frac{p}{2}\)] b,
c -- [boson,edge label'={\(p,a\)},charged boson] d,
};

\end{document}

informação relacionada