I would like to draw the Feynman diagram shown in the picture below with TikZ.

Edit: The code I have so far is

every vertex/.style={red, dot},
every blob/.style={draw=green!40!black, pattern color=green!40!black},
every crossed dot/.style={blue},
\vertex (a) {\(\nu\)};
\vertex [below right=of a] (b);
\vertex [below left=of b] (f1) {\(\bar{\nu}\)};
\vertex [above right=of b] (f2);
\vertex [below right=of b] (f3);
\diagram* {
(a) -- [fermion] (b)[blob] -- [fermion] (f1),
(b) -- [anti fermion,bend left,edge label=\(\bar{\nu}\)] (f2)[crossed dot],
(b) -- [anti fermion,bend left,edge label=\(\bar{\nu}\)] (f3)[crossed dot],
(b) -- [fermion,bend right,edge label'=\(\nu\)] (f2)[crossed dot],
(b) -- [fermion,bend right,edge label'=\(\nu\)] (f3)[crossed dot]

However, where the blob and the crossed dots should be, there are still simple vertices. How can I implement the blob and the two "condensate" vertices? Thanks for your help!

enter image description here

  • Neutrino - pair annihilation?
    – user31729
    Feb 2, 2016 at 16:04
  • The blob is an instanton, the crosses are condensates.
    – Thomas
    Feb 2, 2016 at 16:05
  • 1
    Suggest you both search this site for "feynman diagram" as there are nearly 100 results. A useful one could be tex.stackexchange.com/questions/22622/…. And there is a nice Feynman example in this gallery texample.net/tikz/examples/area/physics Feb 2, 2016 at 16:10
  • I know how to draw simple Feynman diagrams, but I haven't found this specific one anywhere.
    – Thomas
    Feb 2, 2016 at 16:29
  • 2
    Since you already know how to draw simple diagrams, can you post same sample code of where exactly are you stuck? In any case, the commented examples in github.com/fliptanedo/tikzfeynman.sty might help you. Feb 2, 2016 at 17:02

1 Answer 1


Use the "invisible edges" strategy suggested in tikz-feynman manual. Compile with LuaLaTeX

\feynmandiagram [vertical=f1 to f2] {
  anu [particle=\(\overline{\nu}\)] -- [fermion] b [blob],
  nu  [particle=\(\nu\)] -- [fermion] b,
  b   -- [fermion,bend right=10,edge label'=\(\nu\)] f1 [crossed dot],
  b   -- [fermion,bend left=10,edge label=\(\overline{\nu}\)] f1,
  b   -- [fermion,bend right=10,edge label'=\(\nu\)] f2 [crossed dot],
  b   -- [fermion,bend left=10,edge label=\(\overline{\nu}\)] f2,
  % In the picture below I used "[opacity=0.2]" in place of "[draw=none]" to
  % show where the edges are.
  nu  -- [draw=none] anu,
  f1  -- [draw=none] f2,

enter image description here

  • Thanks for your answer, but I get an error when compiling it with LuaLaTex: ! LuaTeX error ./tikzfeynman.patch.lua:966: unknown phase
    – Thomas
    Feb 3, 2016 at 8:55
  • Which version of the package do you have? How did you install it?
    – giordano
    Feb 3, 2016 at 9:05
  • It's the current version v1.0.0 downloaded here. I put the .sty file into the folder where I have my .tex document, that's it. When I compile the version you can see in my edit, everything works perfectly fine.
    – Thomas
    Feb 3, 2016 at 10:54
  • The package is on CTAN, you can install from your package manager. That's what I'm using.
    – giordano
    Feb 3, 2016 at 10:55
  • 1
    I updated all packages, and finally all your versions work - thanks a lot for your help!
    – Thomas
    Feb 3, 2016 at 13:56

You must log in to answer this question.

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