I am struggling with getting things aligned as I want them. I am trying to draw an effective vertex with two fermion lines horizontally aligned and many scalar fields with tadpoles connected to it. The latter ones I would like to be symmetrically distributed below the fermion lines. It should approximately look like the following:

enter image description here

I tried to search on the site and on the internet how to achieve that, but was not lucky. If possible I would like to avoid doing lots of things manually and rather utilize Tikz Feynman.

Here is what I got so far:

minimum size=2*\tadradius,
inner sep=0,
append after command={
\draw[line width=.75pt, -{Triangle[width=5pt, length=6pt, sep=0pt -1]}] (\tikzlastnode) +(\tadangle+10:\tadradius) arc[start angle=\tadangle+10, end angle=\tadangle-360, radius=\tadradius];

        \diagram [layered layout, large,
            horizontal=a to c] {
            { a [particle=\( \psi^i \)] -- [same layer, fermion] b [square dot] -- [fermion, same layer] c [particle=\( \psi^j \)] },
            { b -- [scalar, edge label'=\( \phi \)] b1 [tadpole] },
            { b -- [scalar, edge label'=\( \phi \)] c1 [tadpole] },
            { [same layer] b -- [scalar, edge label'=\( \phi \)] d1 [tadpole] },
            { b -- [scalar, edge label'=\( \phi \)] e1 [tadpole] },
            { b -- [scalar, edge label'=\( \phi \)] f1 [tadpole] };

Right now it is an utter mess:

Current state of the diagram

Hope you can help, thanks in advance! :)


1 Answer 1


Okay, I am still looking for ideas how to improve my solution though, but I kind of solved it, but not very elegant. Anyway, here is my code:

        \vertex (b);
        \node at (b) [square dot];
        \vertex [left=of b] (a) { \( \psi^i \) };
        \vertex [right=of b] (c) { \( \psi^j \) };
        \vertex [below=of b] (d1);
        \node at ($ (d1) - (0, \tadradius) $) [tadpole];
        \vertex [left=of d1] (c1);
        \node at ($ (c1) - (0, \tadradius) $) [tadpole];
        \vertex [left=of c1] (b1);
        \node at ($ (b1) - (0, \tadradius) $) [tadpole];
        \vertex [right=of d1] (e1);
        \node at ($ (e1) - (0, \tadradius) $) [tadpole];
        \vertex [right=of e1] (f1);
        \node at ($ (f1) - (0, \tadradius) $) [tadpole];
        \diagram* [large] {
            (a) -- [fermion] (b)
             -- [fermion] (c),
            (b) -- [scalar, edge label'=\( \phi \)] (b1),
            (b) -- [scalar, edge label=\( \phi \)] (c1),
            (b) -- [scalar, edge label'=\( \phi \)] (d1),
            (b) -- [scalar, edge label'=\( \phi \)] (e1),
            (b) -- [scalar, edge label=\( \phi \)] (f1);

The result looks like this:

enter image description here

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .