4

I am trying to recreate these two diagrams and align them nicely.

enter image description here

I was able to roughly recreate the two diagrams individually using

\begin{tikzpicture}
\begin{feynman}
\diagram [horizontal=a to b, layered layout] {
  a [particle=\(h_0\)] -- [scalar] b --
  b -- [scalar] c [particle=\(h_0\)]
};
\path (b)--++(90:0.5) coordinate (A);
\draw [dashed] (A) circle(0.5) node[left] at (1.0,0.5) {$\tilde{f}$};
\end{feynman}
\end{tikzpicture}

and

\feynmandiagram [layered layout, horizontal=b to c] {
a [particle=\(h_0\)]-- [scalar] b
-- [scalar, half left, edge label=\(\tilde{f}\)] c
-- [scalar, half left, edge label=\(\tilde{f}\)] b,
c -- [scalar] d [particle=\(h_0\)],
};

but I do not understand how I can get the scalar lines to line up by putting them in one diagram. If I put these pieces together I end up with a document with two pages, one diagram on each page. Any help would be greatly appreciated!

2
  • 1
    Are these diagrams in an equation or a figure?
    – user194703
    May 14 '20 at 18:10
  • they will be in a figure
    – Jackson
    May 14 '20 at 18:24
5

Basically you are looking for the baseline key. However, I should say that I had some difficulties in precisely aligning them when keeping your original syntax, which is why now the second diagram is also of the form \begin{feynman}...\end{feynman}. Not sure what the problem was, but this seems to work:

\documentclass{article}
\usepackage{tikz-feynman}
\begin{document}
\begin{figure}
\centering
\begin{tikzpicture}[baseline=(b.base)]
\begin{feynman}
\diagram [horizontal=a to b, layered layout] {
  a [particle=\(h_0\)] -- [scalar] b -- [scalar] c [particle={\(h_0\)}]
};
\path (b)--++(90:0.5) coordinate (A);
\draw [dashed] (A) circle(0.5) node[left] at (1.0,0.5) {$\tilde{f}$};
\end{feynman}
\end{tikzpicture}\quad
\begin{tikzpicture}[baseline=(b.base)]
\begin{feynman}
\diagram[layered layout, horizontal=b to c] {
a [particle=\(h_0\)]-- [scalar] b
-- [scalar, half left, edge label=\(\tilde{f}\)] c
-- [scalar, half left, edge label=\(\tilde{f}\)] b,
c -- [scalar] d [particle=\(h_0\)],
};
\end{feynman}
\end{tikzpicture}
\end{figure}
\end{document}

enter image description here

3

Putting the two in one tikzpicture does the trick

\begin{tikzpicture}
\begin{feynman}
\diagram [horizontal=a to b, layered layout] {
  a [nudge=(180:5mm),particle=\(h_0\)] -- [scalar] b --
  b -- [scalar] c [nudge=(0:5mm),particle=\(h_0\)]
};
\path (b)--++(90:0.7) coordinate (A);
\draw [dashed] (A) circle(0.7) node[left] at (1.25,0.7) {$\tilde{f}$};
\diagram [xshift=5cm,layered layout, horizontal=b to c] {
a [particle=\(h_0\)]-- [scalar] b
-- [scalar, half left, edge label=\(\tilde{f}\)] c
-- [scalar, half left, edge label=\(\tilde{f}\)] b,
c -- [scalar] d [particle=\(h_0\)],
};
\end{feynman}
\end{tikzpicture}

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.