Search code examples
latexdiagramtikzoverleaf

TikZ-Feynman: Making a diagram with no horizontal propagator


This is a code for a Feynman diagram with a horizontal propagator (LuaTex is needed):

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[compat=1.1.0]{tikz-feynman}
\begin{document}

 \begin{tikzpicture}
  \begin{feynman}
    \diagram[horizontal=a to b] {
  i1 [particle=\(e^{-}\)] -- [fermion,momentum'=\(p\)] a -- [photon,reversed momentum'=\(k\)] f1 [particle=\(\gamma\)],
  a -- [fermion] b,
  i2 [particle=\(\gamma\)] -- [photon,reversed momentum'=\(k'\)] b -- [fermion,momentum'=\(p'\)] f2 [particle=\(e^{-}\)],
};
  \end{feynman}
\end{tikzpicture}

\end{document}

It produces the following diagram:

enter image description here

Now, what I want is another diagram without the propagator, that should look like this:

enter image description here

Momentum arrows are not of big importance, the important thing is to remove the horizontal propagator.

I have tried playing with the above code a bit,

    i1 [particle=\(e^{-}\)] -- [fermion,momentum'=\(p\)] a -- [photon,reversed momentum'=\(k\)] f1 [particle=\(\gamma\)],
  a -- a,
  i2 [particle=\(\gamma\)] -- [photon,reversed momentum'=\(k'\)] a -- [fermion,momentum'=\(p'\)] f2 [particle=\(e^{-}\)]

but all I managed to do was this:

enter image description here

And this is not what I need, not even after adding a command for 45° rotation. Can someone help me get this done? Thank you!


Solution

  • You can place the vertices manually:

    % !TeX TS-program = lualatex 
    
    \documentclass{article}
    \usepackage[compat=1.1.0]{tikz-feynman}
    \begin{document}
    
      \begin{tikzpicture}
        \begin{feynman}
          \vertex[dot] (m) at (0, 0) {};
          
          \vertex (a) at (-2,-1) {$e^{-}$};
          \vertex (b) at ( 2,-1) {$e^{-}$};
          \vertex (c) at (-2, 1) {$\gamma$};
          \vertex (d) at ( 2, 1) {$\gamma$};
    
          \diagram* {
            (a) 
            -- [fermion,momentum'=\(p\)] (m) 
            -- [fermion,momentum'=\(p'\)] (b),
            (c) 
            -- [photon,momentum=\(k\)] (m) 
            -- [photon,momentum=\(k'\)] (d),
          };
        \end{feynman}
      \end{tikzpicture}
    
    \end{document}
    

    enter image description here