Summary of the elementary particles of the Standard Model, & extensions. Inspired by the commonly used Wikipedia image.

The Standard Model


Transparent, and grouping particles by interaction with vector bosons:SM_particles-001.png
With boxes fully colored:SM_particles-002.png
Including the hypothetical graviton (tensor boson, spin 2):SM_particles-003.pngSM_particles-004.png
Splitting particles/antiparticles by electric charge (quarks and gluons as shown as different color states):SM_particles-005.png

SM extensions and beyond the SM


The SM extended with a second Higgs doublet field, i.e. the Two-Higgs-Doublet Model (2HDM), which predicts a second scalar, a new pseudoscalar (A), and two charged Higgs bosons:SM_particles-006.png
Supersymmetry (SUSY) partner particles in the Minimal Supersymmetric Standard Model (MSSM):SM_particles-007.png
The MSSM with three separate Higgsinos shown:SM_particles-008.png
More general mass bosino eigenstates (charginos & neutralinos) of the MSSM after mixing of the winos and zino with higgsinos:SM_particles-009.png

Highlighting & animated beamer presentation


By varying the opacity, one can highlight different part of groups. For example:

This is useful to change the focus in beamer presentations, (full code at the bottom):

Caveats

The mass values were taken from the Particle Data Group’s 2025 Review of Particle Physics, and rounded to three significant digits where appropriate. I use the natural units, common in particle physics, such that c = 1 and mass can be expressed in units of energy, e.g. eV instead of eV/c2.

These tables summarizing the particle content often take some creative license to keep things simple and to reach a wider audience. Some technical caveats that should be noted for the interested and pedantic readers:

  • The Standard Model is a chiral theory and distinguishes left- and right-hand fields (the doublet and singlet representations of SU(2)L, resp.). In particular, the matter field, which are fermion fields, combine via the Dirac mass terms in the Standard Model Lagrangian (the Yukawa couplings to the Higgs field) into physical particles with a definite mass. A more general summary of the Standard Model fields, organized by their quantum numbers under the SU(2)LxU(1)Y gauge group can be found here:
  • Historically, neutrinos only have a left-handed component and are massless in the Standard Model. However, from the observed neutrino oscillations, we know (at least two out of three) neutrinos have some nonzero mass. Therefore, the “canonical” Standard Model (Lagrangian) has to be extended in some way. Some tables summarizing the Standard Model particles, like in this SHiP paper (arXiv:1704.08635), split the neutrino box for the known left-handed neutrino (νe, νμ, ντ) and hypothetical right-handed neutrino (sometimes Ne, Nμ, Nτ). Some sources like this one (arXiv:hep-ph/0505013) distinguish between the “Minimal Standard Model” (MSM) and the MSM extended with neutrino masses (νMSM).
  • The neutrino flavor eigenstates (νe, νμ, ντ) shown in the table do not align with the mass eigenstates. The upper limit on the absolute value of the neutrino masses in the tables above were taken from this Wikipedia page, which are calculated as the “effective” mass from a quadratic sum of the PMNS-weighted neutrino mass, see for example this KATRIN paper, which sets an upper limit of 0.8 GeV on the effective mass of the electron anti-neutrino.
  • The photon, and the W and Z bosons are particles/fields at “low energy” that emerge from the mixing of the more fundamental SU(2)L and U(1)Y gauge fields after spontaneous symmetry breaking (EWSB). The W and Z fields become massive by absorbing/”eating” the Goldstone bosons from the full Higgs field (a scalar and complex SU(2)L doublet) via the well-known Higgs mechanism. In this sense, the summary tables below represent the Standard Model at “low energy”, below the electroweak scale.
  • The Standard Model is typically depicted with a single Higgs particle, from a scalar field that is a complex SU(2)L doublet. However, a single Higgs field is a minimal solution and EWSB can more generally be realized by more than one scalar field, for example, in the well-known Two-Higgs-Doublet Models (2HDMs) shown above. Experimentally, only one Higgs-like scalar with a mass of about 125 GeV has been discovered so far. This new scalar particle with mass 125 GeV is consistent with the minimal model of a single Higgs field but does not exclude an extended scalar sector that would yield a richer particle spectrum, as shown above for the 2HDM. There have been many searches for such additional Higgs bosons at the ATLAS & CMS experiments without any observation, and more searches are ongoing.

Any corrections or additions are welcome (comment below or contact me).

Full code


Edit and compile if you like:

% Author: Izaak Neutelings (February 2023)
% Description:
%   Standard Model (SM) of Particles Physics table,
%   with different groups highlighted (using opacity) for presentations
% Inspired by:
%   https://en.wikipedia.org/wiki/File:Standard_Model_of_Elementary_Particles.svg
\documentclass[border=3pt,tikz]{standalone}
\usepackage{amsmath} % for \text
\usepackage{xfrac} % for \myfrac
\usepackage{bm} % for \bm
\usetikzlibrary{calc}
\usetikzlibrary{positioning}

% FONT
\usepackage{sansmath} % for \sansmath
\renewcommand{\familydefault}{\sfdefault} % set sans serif font globally
\sansmath % set sans serif font globally

% UNSLANT GREEK LETTERS for particle symbols
% https://tex.stackexchange.com/questions/145926/upright-greek-font-fitting-to-computer-modern
% https://tex.stackexchange.com/questions/236915/adjust-custom-made-upright-greek-letters-when-used-in-subscripts
\usepackage{scalerel}
\newsavebox{\foobox}
\newcommand{\slantbox}[2][0]{\mbox{%
  \sbox{\foobox}{#2}%
  \hskip\wd\foobox
  \pdfsave
  \pdfsetmatrix{1 0 #1 1}%
  \llap{\usebox{\foobox}}%
  \pdfrestore
}}
\newcommand\unslant[2][-.25]{%
  %\mkern1.2mu%
  \ThisStyle{\slantbox[#1]{$\SavedStyle#2$}}%
  \mkern-2.2mu%
}
\newcommand\PGm{\unslant\mu} % muon
\newcommand\PGt{\unslant\tau} % tau
\newcommand\PGn[1]{\unslant\nu_{#1}\mkern-1.5mu} % neutrino
\newcommand\PAGn[1]{\overline{\unslant\nu}_{\mathrm{#1}}\mkern-1.5mu} % anti-neutrino
\newcommand\PSGn[1]{\widetilde{\unslant\nu}_{\mathrm{#1}}\mkern-1.5mu} % sneutrino
\newcommand\mytilde[1]{\widetilde{\text{#1}}} % tilde with math roman
%\newcommand\myHiggsino[2]{\mytilde{H}^{\raisebox{-1.3pt}{$\scriptstyle#1$}}_{\raisebox{1pt}{$\scriptstyle\text{#2}$}}} % H with tilde, raised subscript, lowered superscript

\makeatletter
\newcommand{\raisemath}[1]{\mathpalette{\raisem@th{#1}}}
\newcommand{\raisem@th}[3]{\raisebox{#1}{$#2#3$}}
\makeatother

% UNITS
% The macros below are used to control the spacing between numbers and units
%\newcommand\MeV{\,\text{GeV}\mkern-1mu/\mkern-1muc^2} % HEP units
%\newcommand\MeV{\,\text{MeV}\mkern-1mu/\mkern-1muc^2} % HEP units
%\newcommand\eV{\,\text{eV}\mkern-1mu/\mkern-1muc^2} % HEP units
\newcommand\GeV{\,\text{GeV}} % natural units
\newcommand\MeV{\,\text{MeV}} % natural units
\newcommand\eV{\,\text{eV}} % natural units

% COLORS
\colorlet{mylightblue}{blue!60!cyan!80!black!15}
\colorlet{mypurple}{blue!50!red!70}
\colorlet{gaugecol}{red!90!black!70} % Wiki red
\colorlet{leptoncol}{green!80!black!70} % Wiki green
\colorlet{quarkcol}{blue!85!cyan!95!black!55} % Wiki purple
\colorlet{quarkred}{red!98!black!55} % quark red
\colorlet{quarkblue}{blue!85!cyan!98!black!55} % quark blue
\colorlet{quarkgreen}{green!95!black!55} % quark green
\colorlet{gluoncyan}{cyan!100!black!55} % gluon cyan
\colorlet{gluongreen}{green!75!blue!95!black!70} % gluon green
\colorlet{gluonyellow}{yellow!98!black!55} % gluon yellow
\colorlet{gluonorange}{orange!100!black!65} % gluon orange
\colorlet{gluonmagenta}{magenta!100!black!70} % gluon magenta
\colorlet{scalarcol}{yellow!70!orange!98!black}
\colorlet{tensorcol}{blue!50!red!70} % Wiki light blue
\colorlet{groupcol}{orange!15}

% STYLES
\tikzset{
  >=latex, % for LaTeX arrow head
  header/.style={black,midway,font=\bf,align=center,scale=0.6},
  proplabel/.style={black!70,scale=0.5}, % label of properties
  bflabel/.style={font=\bf,inner sep=0.5pt,rotate=90},
}

% LAYERS
\pgfdeclarelayer{back} % to draw on background
\pgfsetlayers{back,main} % set order

% PARTICLE macro
\def\pw{0.94} % width/height of particle box
\newcommand\opGen[2]{min(#1,(\setGen==0 || \setGen==#2) ? 1 : \d)} % calculate fermion opacity
\newcommand\myfrac[2]{\sfrac{#1\mkern-1.2mu}{#2}} % slanted frac
\tikzset{
  x={(1.4,0)},y={(0,1.6)}, % scale x, y axes differently
  global scale/.style={scale=#1,every node/.style={scale=#1}},
  intgroup/.style={draw=#1!90!black!80,line width=0.5, % interaction groups
                   fill=#1,fill opacity=0.5},
  intgroup/.default=groupcol,
  pics/particle/.style n args={6}{ % particle boxes
    code={
      \tikzset{/tikz/pic opacity/.get=\OP}
      \begin{scope}[opacity=\OP]
      
      % COORDINATES
      \coordinate (-sw) at (-\pw/2,-\pw/2);
      \coordinate (-nw) at (-\pw/2, \pw/2);
      \coordinate (-se) at ( \pw/2,-\pw/2);
      \coordinate (-ne) at ( \pw/2, \pw/2);
      
      % DRAW BOX
      \ifnum\pgfkeysvalueof{/tikz/fill box}=1 % fill particle boxes with color
        \draw[#1,line width=1.1,rounded corners=3pt,shading angle=30,
              top color=#1!90!black!40,bottom color=#1!75!black!40]
          (-sw) rectangle (-ne);
      \else % do not fill particle boxes with color
        %\draw[draw=#1,line width=1.1,rounded corners=3pt]
        %  (-sw) rectangle (-ne);
        \fill[top color=#1,bottom color=#1!90!black,shading angle=30,
              rounded corners=3pt,even odd rule]
          (-0.48*\pw,-0.48*\pw) rectangle (0.48*\pw,0.48*\pw)
          [rounded corners=3.7pt] (-sw) rectangle (-ne);
      \fi
      
      % DRAW PARTICLES
      \ifnum\pgfkeysvalueof{/tikz/quark balls}>0 % draw QUARK as colored RGB balls
        \ifnum \pgfkeysvalueof{/tikz/quark balls}=1
          \def\quarklist{quarkgreen/35:4pt/0.9,quarkred/-35:3.7pt/0.9,quarkblue/0:0/1}
        \else
          \def\quarklist{gluonmagenta/35:4pt/0.9,gluoncyan/-35:3.7pt/0.9,gluonyellow/0:0/1}
        \fi
        \foreach \col/\shift/\scale in \quarklist{
          \fill[ball color=\col,scale=1,shift=(\shift),scale=\scale, % particle ball
                postaction={fill=\col!80,opacity=0.8*\OP,
                draw=\col!80!black!90,ultra thin}]
            (0,0.06) circle(9.5pt) coordinate(-p);
          }
      \else \ifnum\pgfkeysvalueof{/tikz/gluon balls}=1 % draw GLUON as colored RGB balls
        \foreach \col/\shift/\scale in {%
          gluonmagenta/-50:5pt/0.8,gluonyellow/0:5pt/0.78,gluoncyan/50:5pt/0.8,%
          gluongreen/100:6pt/0.8,quarkblue/200:5.8pt/0.8,gluonorange/150:5.8pt/0.76,%
          quarkgreen/250:4.5pt/0.8,quarkred/0:0/1%
        }{
          \fill[ball color=\col,scale=1,shift=(\shift),scale=\scale, % particle ball
                postaction={fill=\col!80,opacity=0.8*\OP,
                draw=\col!80!black!90,ultra thin}]
            (0,0.06) circle(9pt) coordinate(-p);
          }
      \else % draw one PARTICLE ball
        \draw[draw=none,ball color=#1,scale=1, % particle ball
              postaction={fill=#1!77,opacity=0.8*\OP,
              draw=#1!80!black!90,ultra thin}]
          (0,0.06) circle(\pgfkeysvalueof{/tikz/ball radius}) coordinate(-p);
      \fi \fi % close all \ifnum
      
      % DRAW TEXT
      \node[text=black,scale=1,shift=\pgfkeysvalueof{/tikz/symb shift}] % particle symbol
        at (-p) {\textbf{\boldmath{#2}}};
      \node[align=center,font=\bf, % particle name
            scale=0.8*\pgfkeysvalueof{/tikz/scale name}]
        at (0,-0.3) {\strut#3};
      \node[below right,proplabel] % mass
        at (-0.5*\pw,0.50*\pw) {\strut$#4$};
      \node[below right,proplabel] % charge
        at (-0.5*\pw,0.35*\pw) {\strut$#5$};
      \node[below right,proplabel] % spin
        at (-0.5*\pw,0.20*\pw) {\strut$#6$};
      
      \end{scope} % close opacity scope
    }
  },
  % DEFAULT SETTINGS of parameters:
  scale name/.initial=1, % scale for particle name
  symb shift/.initial={(0,0)}, % shift for particle symbol
  ball radius/.initial=10pt, % radius for particle ball
  quark balls/.initial=0, % draw quark as 3 RGB-colored balls
  gluon balls/.initial=0, % draw gluon as 8 RGB-colored balls
  fill box/.initial=0, % fill particle boxes
  pic opacity/.initial=1 % opacity of pictures
}

% HEADERS
\def\nfermioncols{3} % number of fermion columns, default = 3
\def\nbosoncols{2} % number of boson columns, default = 2
\def\headers{
  \fill[mylightblue,rounded corners=4pt] % FERMIONS
    (1-\pw/2,4.74) rectangle (3+\pw/2,5.1)
    node[midway,header] {%
      three generations of matter\\[0pt]
      (fermions)};
  \node[above=0pt,scale=0.75] at (1,4.5) {I};
  \node[above=0pt,scale=0.75] at (2,4.5) {II};
  \node[above=0pt,scale=0.75] at (3,4.5) {III};
  \ifnum\nfermioncols>3 % include antifermions
    \fill[mylightblue,rounded corners=4pt] % ANTIFERMIONS
      (4-\pw/2,4.74) rectangle (\nfermioncols+\pw/2,5.1)
      node[midway,header] {%
        three generations of antimatter\\[0pt]
        (antifermions)};
    \node[above=0pt,scale=0.75] at (4,4.5) {I};
    \node[above=0pt,scale=0.75] at (5,4.5) {II};
    \node[above=0pt,scale=0.75] at (6,4.5) {III};
  \fi
  \fill[mylightblue,rounded corners=4pt] % BOSONS
    (\nfermioncols+1-\pw/2,4.74) rectangle (\nfermioncols+\nbosoncols+\pw/2,5.1)
    node[midway,header] {%
      interactions / forces\\[0pt]
      (bosons)};
}
\def\headerMSSM{
  \fill[mylightblue,rounded corners=4pt] % SFERMIONS / BOSONS
    (1-\pw/2,4.74) rectangle (3+\pw/2,5.1)
    node[midway,header] {%
      superpartners of SM fermions\\[0pt]
      (sfermions, bosons)};
  \node[above=0pt,scale=0.75] at (1,4.5) {I};
  \node[above=0pt,scale=0.75] at (2,4.5) {II};
  \node[above=0pt,scale=0.75] at (3,4.5) {III};
  \fill[mylightblue,rounded corners=4pt] % BOSINOS / FERMIONS
    (\nfermioncols+1-0.52*\pw,4.74) rectangle (\nfermioncols+\nbosoncols+0.52*\pw,5.1)
    node[midway,header,scale=0.97] {%
      superpartners of SM bosons\\[0pt]
      (bosinos, fermions)};
}
\def\legend{
  \node[below left,proplabel]
    at (0.5,4+0.50*\pw) {\strut mass};
  \node[below left,proplabel]
    at (0.5,4+0.35*\pw) {\strut charge};
  \node[below left,proplabel]
    at (0.5,4+0.20*\pw) {\strut spin};
}

\begin{document}


% SM PARTICLES: GROUPS (like Wiki)
% https://en.wikipedia.org/wiki/File:Standard_Model_of_Elementary_Particles.svg
\def\d{0.1} % dimmed opacity to highlight others
\foreach \f in {0,1}{ % fill particle boxes
\foreach \opQua/\opLep/\opNu/\opGlu/\opGam/\opWeak/\opHig/\setGen in {%
  % highlight different groups of particles,
  % by reducing the opacity of others
  1/1/1/1/1/1/1/0,       % highlight everything
  1/1/1/\d/\d/\d/\d/0,   % fermions
  1/\d/\d/\d/\d/\d/\d/0, % quarks
  \d/1/1/\d/\d/\d/\d/0,  % leptons
  1/1/1/\d/\d/\d/\d/1,   % first generation fermions
  1/1/1/\d/\d/\d/\d/2,   % second generation fermions
  1/1/1/\d/\d/\d/\d/3,   % third generation fermions
  \d/\d/\d/1/1/1/1/0,    % bosons
  \d/\d/\d/1/1/1/\d/0,   % gauge bosons
  1/\d/\d/1/\d/\d/\d/0,  % strong interactions
  1/1/\d/\d/1/\d/\d/0,   % electromagnetic interactions
  1/1/1/\d/\d/1/\d/0,    % weak interactions
  1/1/1/\d/\d/1/1/0      % Higgs interactions
}{ % loop over opacities
\begin{tikzpicture}[fill box=\f]
  \message{^^JSM particles: fill box=\f, Qua=\opQua, Lep=\opLep, Nu=\opNu, 
           Glu=\opGlu, Gam=\opGam, Weak=\opWeak, Hig=\opHig}
  
  % HEADERS
  \headers
  \legend
  
  % SWITCHES
  \pgfmathsetmacro\opAllLep{max(\opLep,\opNu)}
  \pgfmathsetmacro\opGau{max(\opGlu,\opGam,\opWeak)}
  \pgfmathsetmacro\opBos{max(\opGlu,\opGam,\opWeak,\opHig)}
  
  % QUARKS
  %\begin{scope}[opacity=\opQua,pic opacity=\opQua] % to highlight others
    \pic[pic opacity=\opGen{\opQua}{1}] (QU) at (1,4) {
      particle={quarkcol}{u}{up}{%
        \simeq2.16\MeV}{\!\myfrac{+\!2}{3}}{\myfrac{1}{2}}
    };
    \pic[pic opacity=\opGen{\opQua}{2}] (QC) at (2,4) {
      particle={quarkcol}{c}{charm}{%
        \simeq1.27\GeV}{\!\myfrac{+\!2}{3}}{\myfrac{1}{2}}
    };
    \pic[pic opacity=\opGen{\opQua}{3}] (QT) at (3,4) {
      particle={quarkcol}{t}{top}{%
        \simeq173\GeV}{\!\myfrac{+\!2}{3}}{\myfrac{1}{2}}
    };
    \pic[pic opacity=\opGen{\opQua}{1},symb shift=(90:0.5pt)] (QD) at (1,3) {
      particle={quarkcol}{d}{down}{%
        \simeq4.7\MeV}{\!\myfrac{-\!1}{3}}{\myfrac{1}{2}}
    };
    \pic[pic opacity=\opGen{\opQua}{2}] (QS) at (2,3) {
      particle={quarkcol}{s}{strange}{%
        \simeq94\MeV}{\!\myfrac{-\!1}{3}}{\myfrac{1}{2}}
    };
    \pic[pic opacity=\opGen{\opQua}{3},symb shift=(90:0.5pt)] (QB) at (3,3) {
      particle={quarkcol}{b}{bottom}{%
        \simeq4.18\GeV}{\!\myfrac{-\!1}{3}}{\myfrac{1}{2}}
    };
    \node[quarkcol,bflabel,above right=0pt and -2pt,opacity=\opQua]
      at (QD-sw) {QUARKS};
  %\end{scope}
  
  % LEPTONS
  \pic[pic opacity=\opGen{\opLep}{1}] (EL) at (1,2) {
    particle={leptoncol}{e}{electron}{%
      \simeq0.511\MeV}{-1}{\myfrac{1}{2}}
  };
  \pic[pic opacity=\opGen{\opLep}{2},symb shift=(-90:0.6pt)] (MU) at (2,2) {
    particle={leptoncol}{$\PGm$}{muon}{%
      \simeq106\MeV}{-1}{\myfrac{1}{2}}
  };
  \pic[pic opacity=\opGen{\opLep}{3}] (TAU) at (3,2) {
    particle={leptoncol}{$\PGt$}{tau}{%
      \simeq1.78\GeV}{-1}{\myfrac{1}{2}}
  };
  \pic[pic opacity=\opGen{\opNu}{1},scale name=0.83] (NE) at (1,1) {
    particle={leptoncol}{$\PGn{\text{e}}$}{electron\\[-3pt]neutrino}{%
      <0.8\eV}{0}{\myfrac{1}{2}}
  };
  \pic[pic opacity=\opGen{\opNu}{2},scale name=0.83,symb shift=(-90:0.6pt)] (NM) at (2,1) {
    particle={leptoncol}{$\PGn{\PGm}$}{muon\\[-3pt]neutrino}{%
      <0.17\MeV}{0}{\myfrac{1}{2}}
  };
  \pic[pic opacity=\opGen{\opNu}{3},scale name=0.83] (NT) at (3,1) {
    particle={leptoncol}{$\PGn{\PGt}$}{tau\\[-3pt]neutrino}{%
      <18.2\MeV}{0}{\myfrac{1}{2}}
  };
  \node[leptoncol,bflabel,above right=0pt and -2pt,opacity=\opAllLep]
    at (NE-sw) {LEPTONS};
  
  % GAUGE BOSONS
  \begin{scope}[pic opacity=1] % to highlight others
    \pic[pic opacity=\opGlu] (GLU) at (4,4) {
      particle={gaugecol}{g}{gluon}{%
        0}{0}{1}
    };
    \pic[pic opacity=\opGam] (GAM) at (4,3) {
      particle={gaugecol}{$\gamma$}{photon}{%
        0}{0}{1}
    };
    \pic[pic opacity=\opWeak] (W) at (4,2) {
      particle={gaugecol}{W}{W boson}{% %$\mathrm{W}^\pm$
        \simeq80.4\GeV}{\pm1}{1}
    };
    \pic[pic opacity=\opWeak] (Z) at (4,1) {
      particle={gaugecol}{Z}{Z boson}{% %$\mathrm{Z}^0$
        \simeq91.2\GeV}{0}{1}
    };
    %%%\pic[pic opacity=\opWeak,scale name=0.88] (L) at (5.6,1) {
    %%%  particle={gaugecol}{LQ}{leptoquark}{% %^0$
    %%%    ?}{?}{0 or 1} %>1\TeV
    %%%};
  \end{scope}
  \begin{scope}[opacity=\opGau] % to highlight others
    \node[gaugecol,bflabel,below right=0pt and 2pt]
      (GB) at (Z-se) {GAUGE BOSONS};
    \node[gaugecol,bflabel,below right=-1pt and 2pt,scale=0.7]
      at (GB.south west) {VECTOR BOSONS};
  \end{scope}
  
  % SCALAR BOSONS
  \begin{scope}[opacity=\opHig,pic opacity=\opHig] % to highlight others
    \pic (HIG) at (5,4) {
      particle={scalarcol}{H}{Higgs}{%
        \simeq125\GeV}{0}{0}
    };
    \node[scalarcol,bflabel,above left=-2pt and 2pt]
      at (HIG-se) {SCALAR BOSONS};
  \end{scope}
  
  %%%% TENSOR BOSONS
  %%%\begin{scope}[opacity=\opHig,pic opacity=\opHig] % to highlight others
  %%%  \pic (GRA) at (6,4) {
  %%%    particle={tensorcol}{G}{graviton}{%
  %%%      0}{0}{2}
  %%%  };
  %%%  \node[tensorcol,bflabel,above left=-2pt and 2pt]
  %%%    (TB) at (GRA-se) {TENSOR BOSONS};
  %%%  \node[tensorcol,bflabel,above left=-1pt and 2pt,scale=0.7]
  %%%    at (TB.north east) {HYPOTHETICAL};
  %%%\end{scope}
  
  % INTERACTION GROUPS
  \ifnum\pgfkeysvalueof{/tikz/fill box}=0
  \begin{pgfonlayer}{back} % draw on back
    
    % STRONG INTERACTIONS
    \def\R{11.5pt}
    \fill[intgroup,opacity=0.5*\opGlu] %=blue!20!white]
      (QU-p)++(0,\R) -- ($(GLU-p)+(0,\R)$) arc(90:-90:\R)
      to[out=-180,in=90,looseness=1.2] ($(QB-p)+(\R,0)$) arc(0:-90:\R)
      -- ($(QD-p)+(0,-\R)$) arc(-90:-180:\R)
      -- ($(QU-p)+(-\R,0)$) arc(180:90:\R)
      -- cycle;
    
    % ELECTROMAGNETIC INTERACTIONS
    \def\R{13.5pt}
    \fill[intgroup,opacity=0.5*\opGam] %=green!20!white]
      (QU-p)++(0,\R) -- ($(QT-p)+(0,\R)$) arc(90:0:\R)
      to[out=-90,in=180,looseness=1.2] ($(GAM-p)+(0,\R)$) arc(90:-90:\R)
      to[out=-180,in=90,looseness=1.2] ($(TAU-p)+(\R,0)$) arc(0:-90:\R)
      -- ($(EL-p)+(0,-\R)$) arc(-90:-180:\R)
      -- ($(QU-p)+(-\R,0)$) arc(180:90:\R)
      -- cycle;
    
    % WEAK INTERACTIONS
    \def\R{15.5pt}
    \fill[intgroup,opacity=0.5*\opWeak] %=mypurple!20!white]
      (QU-p)++(0,\R) -- ($(QT-p)+(0,\R)$) arc(90:0:\R)
      -- ($(QB-p)+(\R,0)$)
      to[out=-90,in=180,looseness=1.4] ($(W-p)+(0,\R)$) arc(90:0:\R)
      -- ($(Z-p)+(\R,0)$) arc(0:-90:\R)
      -- ($(NE-p)+(0,-\R)$) arc(-90:-180:\R)
      -- ($(QU-p)+(-\R,0)$) arc(180:90:\R)
      -- cycle;
    
  \end{pgfonlayer}
  \fi
  
\end{tikzpicture}
} % close foreach loop over opacities
} % close foreach loop over \f


% SM PARTICLES plus TENSOR (like Wiki)
\foreach \f in {0,1}{ % fill particle boxes
\begin{tikzpicture}[fill box=\f]
  \message{^^JSM particles: fill box=\f}
  
  % HEADERS
  \def\nbosoncols{3} % number of boson columns
  \headers
  \legend
  
  % QUARKS
  \pic (QU) at (1,4) {
    particle={quarkcol}{u}{up}{%
      \simeq2.16\MeV}{\!\myfrac{+\!2}{3}}{\myfrac{1}{2}}
  };
  \pic (QC) at (2,4) {
    particle={quarkcol}{c}{charm}{%
      \simeq1.27\GeV}{\!\myfrac{+\!2}{3}}{\myfrac{1}{2}}
  };
  \pic (QT) at (3,4) {
    particle={quarkcol}{t}{top}{%
      \simeq173\GeV}{\!\myfrac{+\!2}{3}}{\myfrac{1}{2}}
  };
  \pic (QD) at (1,3) {
    particle={quarkcol}{d}{down}{%
      \simeq4.7\MeV}{\!\myfrac{-\!1}{3}}{\myfrac{1}{2}}
  };
  \pic (QS) at (2,3) {
    particle={quarkcol}{s}{strange}{%
      \simeq94\MeV}{\!\myfrac{-\!1}{3}}{\myfrac{1}{2}}
  };
  \pic (QB) at (3,3) {
    particle={quarkcol}{b}{bottom}{%
      \simeq4.18\GeV}{\!\myfrac{-\!1}{3}}{\myfrac{1}{2}}
  };
  \node[quarkcol,bflabel,above right=0pt and -2pt]
    at (QD-sw) {QUARKS};
  
  % LEPTONS
  \pic (EL) at (1,2) { %[pshift={(50:0.9)}]
    particle={leptoncol}{e}{electron}{%
      \simeq0.511\MeV}{-1}{\myfrac{1}{2}}
  };
  \pic[symb shift=(-90:0.6pt)] (MU) at (2,2) {
    particle={leptoncol}{$\PGm$}{muon}{%
      \simeq106\MeV}{-1}{\myfrac{1}{2}}
  };
  \pic (TAU) at (3,2) {
    particle={leptoncol}{$\PGt$}{tau}{%
      \simeq1.78\GeV}{-1}{\myfrac{1}{2}}
  };
  \pic[scale name=0.83] (NE) at (1,1) {
    particle={leptoncol}{$\PGn{\text{e}}$}{electron\\[-3pt]neutrino}{%
      <0.8\eV}{0}{\myfrac{1}{2}}
  };
  \pic[symb shift=(-90:0.6pt),scale name=0.83] (NM) at (2,1) {
    particle={leptoncol}{$\PGn{\PGm}$}{muon\\[-3pt]neutrino}{%
      <0.17\MeV}{0}{\myfrac{1}{2}}
  };
  \pic[scale name=0.83] (NT) at (3,1) {
    particle={leptoncol}{$\PGn{\PGt}$}{tau\\[-3pt]neutrino}{%
      <18.2\MeV}{0}{\myfrac{1}{2}}
  };
  \node[leptoncol,bflabel,above right=0pt and -2pt]
    at (NE-sw) {LEPTONS};
  
  % GAUGE BOSONS
  \pic (GLU) at (4,4) {
    particle={gaugecol}{g}{gluon}{%
      0}{0}{1}
  };
  \pic (GAM) at (4,3) {
    particle={gaugecol}{$\gamma$}{photon}{%
      0}{0}{1}
  };
  \pic (W) at (4,2) {
    particle={gaugecol}{W}{W boson}{% %$\mathrm{W}^\pm$
      \simeq80.4\GeV}{\pm1}{1}
  };
  \pic (Z) at (4,1) {
    particle={gaugecol}{Z}{Z boson}{% %$\mathrm{Z}^0$
      \simeq91.2\GeV}{0}{1}
  };
  %%%\pic[scale name=0.7] (L) at (5.6,1) {
  %%%  particle={gaugecol}{LQ}{leptoquark}{% %^0$
  %%%    ?}{?}{0 or 1} %>1\TeV
  %%%};
  \node[gaugecol,bflabel,below right=0pt and 2pt]
    (GB) at (Z-se) {GAUGE BOSONS};
  \node[gaugecol,bflabel,below right=-1pt and 2pt,scale=0.7]
    at (GB.south west) {VECTOR BOSONS};
  
  % SCALAR BOSONS
  \pic (HIG) at (5,4) {
    particle={scalarcol}{H}{Higgs}{%
      \simeq125\GeV}{0}{0}
  };
  \node[scalarcol,bflabel,above left=-2pt and 2pt]
    at (HIG-se) {SCALAR BOSONS};
  
  % TENSOR BOSONS
  \pic (GRA) at (6,4) {
    particle={tensorcol}{G}{graviton}{%
      0}{0}{2}
  };
  \node[tensorcol,bflabel,above left=-2pt and 2pt]
    (TB) at (GRA-se) {TENSOR BOSONS};
  \node[tensorcol,bflabel,above left=-1pt and 2pt,scale=0.7]
    at (TB.north east) {HYPOTHETICAL};
  
\end{tikzpicture}
} % close foreach loop over \f


% SM PARTICLES, incl. ANTIPARTICLES
\foreach \f in {1}{ % fill particle boxes
\begin{tikzpicture}[fill box=\f]
  \message{^^JSM particles: fill box=\f}
  
  % HEADERS
  \def\nfermioncols{6} % number of fermion columns
  \def\nbosoncols{2} % number of boson columns
  \headers
  \legend
  
  % QUARKS
  \pic[quark balls=1,scale name=1] (QU) at (1,4) {
    particle={quarkcol}{u}{up}{%
      \simeq2.16\MeV}{\!\myfrac{+\!2}{3}}{\myfrac{1}{2}}
  };
  \pic[quark balls=1,scale name=1] (QC) at (2,4) {
    particle={quarkcol}{c}{charm}{%
      \simeq1.27\GeV}{\!\myfrac{+\!2}{3}}{\myfrac{1}{2}}
  };
  \pic[quark balls=1,scale name=1] (QT) at (3,4) {
    particle={quarkcol}{t}{top}{%
      \simeq173\GeV}{\!\myfrac{+\!2}{3}}{\myfrac{1}{2}}
  };
  \pic[quark balls=1,scale name=1] (QD) at (1,3) {
    particle={quarkcol}{d}{down}{%
      \simeq4.7\MeV}{\!\myfrac{-\!1}{3}}{\myfrac{1}{2}}
  };
  \pic[quark balls=1,scale name=1] (QS) at (2,3) {
    particle={quarkcol}{s}{strange}{%
      \simeq94\MeV}{\!\myfrac{-\!1}{3}}{\myfrac{1}{2}}
  };
  \pic[quark balls=1,scale name=1] (QB) at (3,3) {
    particle={quarkcol}{b}{bottom}{%
      \simeq4.18\GeV}{\!\myfrac{-\!1}{3}}{\myfrac{1}{2}}
  };
  \node[quarkcol,bflabel,above right=0pt and -2pt]
    at (QD-sw) {QUARKS};
  
  % ANTIQUARKS
  \pic[quark balls=2,scale name=1] (QU) at (4,4) {
    particle={quarkcol}{$\overline{\text{u}}$}{antiup}{%
      \simeq2.16\MeV}{\!\myfrac{-\!2}{3}}{\myfrac{1}{2}}
  };
  \pic[quark balls=2,scale name=0.95] (QC) at (5,4) {
    particle={quarkcol}{$\overline{\text{c}}$}{anticharm}{%
      \simeq1.27\GeV}{\!\myfrac{-\!2}{3}}{\myfrac{1}{2}}
  };
  \pic[quark balls=2,scale name=1] (QT) at (6,4) {
    particle={quarkcol}{$\overline{\text{t}}$}{antitop}{%
      \simeq173\GeV}{\!\myfrac{-\!2}{3}}{\myfrac{1}{2}}
  };
  \pic[quark balls=2,scale name=0.95,symb shift=(90:0.5pt)] (QD) at (4,3) {
    particle={quarkcol}{$\overline{\text{d}}$}{antidown}{%
      \simeq4.7\MeV}{\!\myfrac{+\!1}{3}}{\myfrac{1}{2}}
  };
  \pic[quark balls=2,scale name=0.87] (QS) at (5,3) {
    particle={quarkcol}{$\overline{\text{s}}$}{antistrange}{%
      \simeq94\MeV}{\!\myfrac{+\!1}{3}}{\myfrac{1}{2}}
  };
  \pic[quark balls=2,scale name=0.87,symb shift=(90:0.5pt)] (QB) at (6,3) {
    particle={quarkcol}{$\overline{\text{b}}$}{antibottom}{%
      \simeq4.18\GeV}{\!\myfrac{+\!1}{3}}{\myfrac{1}{2}}
  };
  
  % LEPTONS
  \pic[symb shift=(60:1pt)] (EL) at (1,2) {
    particle={leptoncol}{e$^-$}{electron}{%
      \simeq0.511\MeV}{-1}{\myfrac{1}{2}}
  };
  \pic[symb shift=(30:1pt)] (MU) at (2,2) {
    particle={leptoncol}{$\PGm^-$}{muon}{%
      \simeq106\MeV}{-1}{\myfrac{1}{2}}
  };
  \pic[symb shift=(60:1.3pt)] (TAU) at (3,2) {
    particle={leptoncol}{$\PGt^-$}{tau}{%
      \simeq1.78\GeV}{-1}{\myfrac{1}{2}}
  };
  \pic[symb shift=(-80:0.3pt),scale name=0.83] (NE) at (1,1) {
    particle={leptoncol}{$\PGn{\text{e}}$}{electron\\[-3pt]neutrino}{%
      <0.8\eV}{0}{\myfrac{1}{2}}
  };
  \pic[symb shift=(-60:0.7pt),scale name=0.83] (NM) at (2,1) {
    particle={leptoncol}{$\PGn{\PGm}$}{muon\\[-3pt]neutrino}{%
      <0.17\MeV}{0}{\myfrac{1}{2}}
  };
  \pic[symb shift=(-75:0.3pt),scale name=0.83] (NT) at (3,1) {
    particle={leptoncol}{$\PGn{\PGt}$}{tau\\[-3pt]neutrino}{%
      <18.2\MeV}{0}{\myfrac{1}{2}}
  };
  \node[leptoncol,bflabel,above right=0pt and -2pt]
    at (NE-sw) {LEPTONS};
  
  % ANTI-LEPTONS
  \pic[symb shift=(60:1pt)] (EL) at (4,2) {
    particle={leptoncol}{e$^+$}{positron}{%
      \simeq0.511\MeV}{+1}{\myfrac{1}{2}}
  };
  \pic[symb shift=(30:1pt)] (MU) at (5,2) {
    particle={leptoncol}{$\PGm^+$}{antimuon}{%
      \simeq106\MeV}{+1}{\myfrac{1}{2}}
  };
  \pic[symb shift=(60:1.3pt)] (TAU) at (6,2) {
    particle={leptoncol}{$\PGt^+$}{antitau}{%
      \simeq1.78\GeV}{+1}{\myfrac{1}{2}}
  };
  \pic[symb shift=(0:0.2pt),scale name=0.80] (NE) at (4,1) {
    particle={leptoncol}{$\PAGn{\text{e}}$}{electron\\[-3pt]antineutrino}{%
      <0.8\eV}{0}{\myfrac{1}{2}}
  };
  \pic[symb shift=(-60:0.4pt),scale name=0.80] (NM) at (5,1) {
    particle={leptoncol}{$\PAGn{\PGm}$}{muon\\[-3pt]antineutrino}{%
      <0.17\MeV}{0}{\myfrac{1}{2}}
  };
  \pic[symb shift=(-50:0.3pt),scale name=0.80] (NT) at (6,1) {
    particle={leptoncol}{$\PAGn{\PGt}$}{tau\\[-3pt]antineutrino}{%
      <18.2\MeV}{0}{\myfrac{1}{2}}
  };
  
  % GAUGE BOSONS
  \pic[gluon balls=1] (GLU) at (\nfermioncols+1,4) {
    particle={gaugecol}{g}{gluon}{%
      0}{0}{1}
  };
  \pic (GAM) at (\nfermioncols+1,3) {
    particle={gaugecol}{$\gamma$}{photon}{%
      0}{0}{1}
  };
  \pic (Z) at (\nfermioncols+1,2) {
    particle={gaugecol}{Z$^0$}{Z boson}{% %$\mathrm{Z}^0$
      \simeq91.2\GeV}{0}{1}
  };
  \pic[symb shift=(10:0.5pt)] (W) at (\nfermioncols+1,1) {
    particle={gaugecol}{W$^-$}{W boson}{%
      \simeq80.4\GeV}{-1}{1}
  };
  \pic[symb shift=(10:0.5pt)] (W) at (\nfermioncols+2,1) {
    particle={gaugecol}{W$^+$}{W boson}{%
      \simeq80.4\GeV}{+1}{1}
  };
  %\pic[symb shift=(10:0.5pt),ball radius=11pt] (W) at (\nfermioncols+1,2) {
  %  particle={gaugecol}{W$^\pm$}{W boson}{% %$\mathrm{W}^\pm$
  %    \simeq80.4\GeV}{\pm1}{1}
  %};
  \node[gaugecol,bflabel,below right=0pt and 2pt]
    (GB) at (Z-se) {GAUGE BOSONS};
  \node[gaugecol,bflabel,below right=-1pt and 2pt,scale=0.7]
    at (GB.south west) {VECTOR BOSONS};
  
  % SCALAR BOSONS
  \pic (HIG) at (\nfermioncols+2,4) {
    particle={scalarcol}{H}{Higgs}{%
      \simeq125\GeV}{0}{0}
  };
  \node[scalarcol,bflabel,below left=0pt and -2pt]
    at (HIG-ne) {SCALAR BOSONS};
  
\end{tikzpicture}
} % close foreach loop over \f


% SM PARTICLES extended with 2HDM
\foreach \f in {1}{ % fill particle boxes
\begin{tikzpicture}[fill box=\f]
  \message{^^JSM particles: fill box=\f}
  
  % HEADERS
  \headers
  \legend
  
  % QUARKS
  \pic (QU) at (1,4) {
    particle={quarkcol}{u}{up}{%
      \simeq2.16\MeV}{\!\myfrac{+\!2}{3}}{\myfrac{1}{2}}
  };
  \pic (QC) at (2,4) {
    particle={quarkcol}{c}{charm}{%
      \simeq1.27\GeV}{\!\myfrac{+\!2}{3}}{\myfrac{1}{2}}
  };
  \pic (QT) at (3,4) {
    particle={quarkcol}{t}{top}{%
      \simeq173\GeV}{\!\myfrac{+\!2}{3}}{\myfrac{1}{2}}
  };
  \pic (QD) at (1,3) {
    particle={quarkcol}{d}{down}{%
      \simeq4.7\MeV}{\!\myfrac{-\!1}{3}}{\myfrac{1}{2}}
  };
  \pic (QS) at (2,3) {
    particle={quarkcol}{s}{strange}{%
      \simeq94\MeV}{\!\myfrac{-\!1}{3}}{\myfrac{1}{2}}
  };
  \pic (QB) at (3,3) {
    particle={quarkcol}{b}{bottom}{%
      \simeq4.18\GeV}{\!\myfrac{-\!1}{3}}{\myfrac{1}{2}}
  };
  \node[quarkcol,bflabel,above right=0pt and -2pt]
    at (QD-sw) {QUARKS};
  
  % LEPTONS
  \pic (EL) at (1,2) { %[pshift={(50:0.9)}]
    particle={leptoncol}{e}{electron}{%
      \simeq0.511\MeV}{-1}{\myfrac{1}{2}}
  };
  \pic[symb shift=(-90:0.6pt)] (MU) at (2,2) {
    particle={leptoncol}{$\PGm$}{muon}{%
      \simeq106\MeV}{-1}{\myfrac{1}{2}}
  };
  \pic (TAU) at (3,2) {
    particle={leptoncol}{$\PGt$}{tau}{%
      \simeq1.78\GeV}{-1}{\myfrac{1}{2}}
  };
  \pic[scale name=0.83] (NE) at (1,1) {
    particle={leptoncol}{$\PGn{\text{e}}$}{electron\\[-3pt]neutrino}{%
      <0.8\eV}{0}{\myfrac{1}{2}}
  };
  \pic[symb shift=(-90:0.6pt),scale name=0.83] (NM) at (2,1) {
    particle={leptoncol}{$\PGn{\PGm}$}{muon\\[-3pt]neutrino}{%
      <0.17\MeV}{0}{\myfrac{1}{2}}
  };
  \pic[scale name=0.83] (NT) at (3,1) {
    particle={leptoncol}{$\PGn{\PGt}$}{tau\\[-3pt]neutrino}{%
      <18.2\MeV}{0}{\myfrac{1}{2}}
  };
  \node[leptoncol,bflabel,above right=0pt and -2pt]
    at (NE-sw) {LEPTONS};
  
  % GAUGE BOSONS
  \pic (GLU) at (4,4) {
    particle={gaugecol}{g}{gluon}{%
      0}{0}{1}
  };
  \pic (GAM) at (4,3) {
    particle={gaugecol}{$\gamma$}{photon}{%
      0}{0}{1}
  };
  \pic (W) at (4,2) {
    particle={gaugecol}{W}{W boson}{% %$\mathrm{W}^\pm$
      \simeq80.4\GeV}{\pm1}{1}
  };
  \pic (Z) at (4,1) {
    particle={gaugecol}{Z}{Z boson}{% %$\mathrm{Z}^0$
      \simeq91.2\GeV}{0}{1}
  };
  %\node[gaugecol,bflabel,below right=0pt and 2pt]
  %  (GB) at (Z-se) {GAUGE BOSONS};
  %\node[gaugecol,bflabel,below right=-1pt and 2pt,scale=0.7]
  %  at (GB.south west) {VECTOR BOSONS};
  \node[gaugecol,font=\bf,inner sep=0.5pt,below right=2pt and -4pt,scale=0.88,xscale=0.9]
    (GB) at (Z-sw) {GAUGE BOSONS};
  \node[gaugecol,font=\bf,inner sep=0.5pt,below right=2pt,scale=0.6]
    at (GB.south west) {VECTOR BOSONS};
  
  % SCALAR BOSONS
  \pic[scale name=0.88] (HIG-h) at (5,4) {
    particle={scalarcol}{h}{light\\[-3pt]Higgs}{%
      \simeq125\GeV?}{0}{0}
  };
  \pic[scale name=0.88] (HIG-H) at (5,3) {
    particle={scalarcol}{H}{heavy\\[-3pt]Higgs}{%
      ?}{0}{0}
  };
  \pic[scale name=0.79] (HIG-A) at (5,2) {
    particle={scalarcol}{A}{pseudoscalar\\[-3pt]Higgs}{%
      ?}{0}{0}
  };
  %\pic[scale name=0.79] (HIG-a) at (6.31,2) { % for 2HDM + a
  %  particle={scalarcol}{a}{portal\\[-3pt]pseudoscalar}{%
  %    ?}{0}{0}
  %};
  %%\pic (chi) at (6.31,1) { % dark matter in 2HDM + a
  %  particle={leptoncol}{$\chi$}{WIMP}{%
  %    45\MeV}{0}{} %\myfrac{1}{2}
  %};
  \pic[scale name=0.88] (HIG-C) at (5,1) {
    particle={scalarcol}{H$^\pm$}{charged\\[-3pt]Higgs}{%
      ?}{0}{0}
  };
  \node[scalarcol,bflabel,below left=2pt and -2pt]
    at (HIG-h-ne) {(PSEUDO)SCALAR BOSONS};
  
\end{tikzpicture}
} % close foreach loop over \f


% SUPERSYMMETRY PARTICLES in MSSM with single Higgsino shown
\foreach \f in {1}{ % fill particle boxes
\begin{tikzpicture}[fill box=\f]
  \message{^^JSM particles: fill box=\f}
  
  % HEADERS
  \headerMSSM
  \legend
  
  % SQUARKS
  \pic[symb shift=(90:0.4pt),scale name=0.84] (QU) at (1,4) {
    particle={quarkcol}{$\mytilde{u}$}{up\\[-3pt]squark}{%
      ?}{\!\myfrac{+\!2}{3}}{0}
  };
  \pic[symb shift=(90:0.4pt),scale name=0.84] (QC) at (2,4) {
    particle={quarkcol}{$\mytilde{c}$}{charm\\[-3pt]squark}{%
      ?}{\!\myfrac{+\!2}{3}}{0}
  };
  \pic[symb shift=(90:0.6pt)] (QT) at (3,4) {
    particle={quarkcol}{$\mytilde{t}$}{stop}{%
      ?}{\!\myfrac{+\!2}{3}}{0}
  };
  \pic[symb shift=(90:0.6pt),scale name=0.84] (QD) at (1,3) {
    particle={quarkcol}{$\mytilde{d}$}{down\\[-3pt]squark}{%
      ?}{\!\myfrac{-\!1}{3}}{0}
  };
  \pic[symb shift=(90:0.4pt),scale name=0.84] (QS) at (2,3) {
    particle={quarkcol}{$\mytilde{s}$}{strange\\[-3pt]squark}{%
      ?}{\!\myfrac{-\!1}{3}}{0}
  };
  \pic[symb shift=(90:0.6pt)] (QB) at (3,3) {
    particle={quarkcol}{$\mytilde{b}$}{sbottom}{%
      ?}{\!\myfrac{-\!1}{3}}{0}
  };
  \node[quarkcol,bflabel,above right=0pt and -2pt]
    at (QD-sw) {SQUARKS};
  
  % SLEPTONS
  \pic[symb shift=(90:0.4pt)] (EL) at (1,2) {
    particle={leptoncol}{$\mytilde{e}$}{selectron}{%
      ?}{-1}{0}
  };
  \pic (MU) at (2,2) {
    particle={leptoncol}{$\widetilde{\PGm}$}{smuon}{%
      ?}{-1}{0}
  };
  \pic[symb shift=(90:0.4pt)] (TAU) at (3,2) {
    particle={leptoncol}{$\widetilde{\PGt}$}{stau}{%
      ?}{-1}{0}
  };
  \pic[scale name=0.83] (NE) at (1,1) {
    particle={leptoncol}{$\PSGn{e}$}{electron\\[-3pt]sneutrino}{%
      ?}{0}{0}
  };
  \pic[symb shift=(-90:0.5pt),scale name=0.83] (NM) at (2,1) {
    particle={leptoncol}{$\PSGn{\PGm}$}{muon\\[-3pt]sneutrino}{%
      ?}{0}{0}
  };
  \pic[scale name=0.83] (NT) at (3,1) {
    particle={leptoncol}{$\PSGn{\PGt}$}{tau\\[-3pt]sneutrino}{%
      ?}{0}{0}
  };
  \node[leptoncol,bflabel,above right=0pt and -2pt]
    at (NE-sw) {SLEPTONS};
  
  % GAUGINOS
  \pic (GLU) at (4,4) {
    particle={gaugecol}{$\mytilde{g}$}{gluino}{%
      ?}{0}{\myfrac{1}{2}}
  };
  \pic (GAM) at (4,3) {
    particle={gaugecol}{$\widetilde{\gamma}$}{photino}{%
      ?}{0}{\myfrac{1}{2}}
  };
  \pic (W) at (4,2) {
    particle={gaugecol}{$\mytilde{W}$}{wino}{%
      ?}{\pm1}{\myfrac{1}{2}}
  };
  \pic (Z) at (4,1) {
    particle={gaugecol}{$\mytilde{Z}$}{zino}{% %^0$
      ?}{0}{\myfrac{1}{2}}
  };
  \node[gaugecol,bflabel,below right=0pt and 2pt]
    (GB) at (Z-se) {GAUGINOS};
  
  % HIGGSINOS
  \pic[symb shift=(90:0.3pt),scale name=0.88] (HIG) at (5,4) {
    particle={scalarcol}{$\mytilde{H}$}{Higgsino}{%
      ?}{0}{\myfrac{1}{2}}
  };
  \node[scalarcol,bflabel,above left=-2pt and 2pt]
    at (HIG-se) {HIGGSINOS};
  
\end{tikzpicture}
} % close foreach loop over \f


% SUPERSYMMETRY PARTICLES in MSSM with three Higgsinos shown
\foreach \f in {1}{ % fill particle boxes
\begin{tikzpicture}[fill box=\f]
  \message{^^JSM particles: fill box=\f}
  
  % HEADERS
  \headerMSSM
  \legend
  
  % SQUARKS
  \pic[symb shift=(90:0.4pt),scale name=0.84] (QU) at (1,4) {
    particle={quarkcol}{$\mytilde{u}$}{up\\[-3pt]squark}{%
      ?}{\!\myfrac{+\!2}{3}}{0}
  };
  \pic[symb shift=(90:0.4pt),scale name=0.84] (QC) at (2,4) {
    particle={quarkcol}{$\mytilde{c}$}{charm\\[-3pt]squark}{%
      ?}{\!\myfrac{+\!2}{3}}{0}
  };
  \pic[symb shift=(90:0.6pt)] (QT) at (3,4) {
    particle={quarkcol}{$\mytilde{t}$}{stop}{%
      ?}{\!\myfrac{+\!2}{3}}{0}
  };
  \pic[symb shift=(90:0.6pt),scale name=0.84] (QD) at (1,3) {
    particle={quarkcol}{$\mytilde{d}$}{down\\[-3pt]squark}{%
      ?}{\!\myfrac{-\!1}{3}}{0}
  };
  \pic[symb shift=(90:0.4pt),scale name=0.84] (QS) at (2,3) {
    particle={quarkcol}{$\mytilde{s}$}{strange\\[-3pt]squark}{%
      ?}{\!\myfrac{-\!1}{3}}{0}
  };
  \pic[symb shift=(90:0.6pt)] (QB) at (3,3) {
    particle={quarkcol}{$\mytilde{b}$}{sbottom}{%
      ?}{\!\myfrac{-\!1}{3}}{0}
  };
  \node[quarkcol,bflabel,above right=0pt and -2pt]
    at (QD-sw) {SQUARKS};
  
  % SLEPTONS
  \pic[symb shift=(90:0.4pt)] (EL) at (1,2) {
    particle={leptoncol}{$\mytilde{e}$}{selectron}{%
      ?}{-1}{0}
  };
  \pic (MU) at (2,2) {
    particle={leptoncol}{$\widetilde{\PGm}$}{smuon}{%
      ?}{-1}{0}
  };
  \pic[symb shift=(90:0.4pt)] (TAU) at (3,2) {
    particle={leptoncol}{$\widetilde{\PGt}$}{stau}{%
      ?}{-1}{0}
  };
  \pic[scale name=0.83] (NE) at (1,1) {
    particle={leptoncol}{$\PSGn{e}$}{electron\\[-3pt]sneutrino}{%
      ?}{0}{0}
  };
  \pic[symb shift=(-90:0.5pt),scale name=0.83] (NM) at (2,1) {
    particle={leptoncol}{$\PSGn{\PGm}$}{muon\\[-3pt]sneutrino}{%
      ?}{0}{0}
  };
  \pic[scale name=0.83] (NT) at (3,1) {
    particle={leptoncol}{$\PSGn{\PGt}$}{tau\\[-3pt]sneutrino}{%
      ?}{0}{0}
  };
  \node[leptoncol,bflabel,above right=0pt and -2pt]
    at (NE-sw) {SLEPTONS};
  
  % SGAUGINOS
  \pic (GLU) at (4,4) {
    particle={gaugecol}{$\mytilde{g}$}{gluino}{%
      ?}{0}{\myfrac{1}{2}}
  };
  \pic (GAM) at (4,3) {
    particle={gaugecol}{$\widetilde{\gamma}$}{photino}{%
      ?}{0}{\myfrac{1}{2}}
  };
  %\pic[symb shift=(-20:0.5pt)] (W) at (4,2) {
  %  particle={gaugecol}{$\mytilde{W}^{\raisebox{-1.6pt}{$\scriptstyle\pm$}}$}{wino}{%
  %    ?}{\pm1}{\myfrac{1}{2}}
  %};
  \pic (W) at (4,2) {
    particle={gaugecol}{$\mytilde{W}$}{wino}{%
      ?}{\pm1}{\myfrac{1}{2}}
  };
  \pic (Z) at (4,1) {
    particle={gaugecol}{$\mytilde{Z}$}{zino}{% %^0$
      ?}{0}{\myfrac{1}{2}}
  };
  \node[gaugecol,font=\bf,inner sep=0.5pt,above=1pt,scale=0.69]
    (GB) at (4,4.5) {GAUGINOS};
  %\node[gaugecol,bflabel,below right=0pt and 2pt]
  %  (GB) at (Z-se) {GAUGINOS};
  
  % HIGGSINOS
  \pic[scale name=0.88] (HIG) at (5,4) {
    particle={scalarcol}{$\mytilde{h}$}{light\\[-3pt]Higgsino}{%
      ?}{0}{\myfrac{1}{2}}
  };
  \pic[scale name=0.88] (HIG) at (5,3) {
    particle={scalarcol}{$\mytilde{H}$}{heavy\\[-3pt]Higgsino}{%
      ?}{0}{\myfrac{1}{2}}
  };
  \pic[scale name=0.88,symb shift=(0:0.7pt)] (HIG) at (5,2) {
    particle={scalarcol}{$\mytilde{H}^{\raisebox{-1.3pt}{$\scriptstyle\pm$}}$}{charged\\[-3pt]Higgsino}{%
      ?}{\pm1}{\myfrac{1}{2}}
  };
  \node[scalarcol,bflabel,rotate=-90,above=1pt,scale=0.69]
    (GB) at (5,4.5) {HIGGSINOS};
  
\end{tikzpicture}
} % close foreach loop over \f


% SUPERSYMMETRY PARTICLES in MSSM (mass eigenstates)
% https://en.wikipedia.org/wiki/Minimal_Supersymmetric_Standard_Model
\foreach \f in {1}{ % fill particle boxes
\begin{tikzpicture}[fill box=\f]
  \message{^^JSM particles: fill box=\f}
  
  % HEADERS
  \headerMSSM
  \legend
  
  % SQUARKS
  \pic[symb shift=(90:0.4pt),scale name=0.84] (QU) at (1,4) {
    particle={quarkcol}{$\mytilde{u}$}{up\\[-3pt]squark}{%
      ?}{\!\myfrac{+\!2}{3}}{0}
  };
  \pic[symb shift=(90:0.4pt),scale name=0.84] (QC) at (2,4) {
    particle={quarkcol}{$\mytilde{c}$}{charm\\[-3pt]squark}{%
      ?}{\!\myfrac{+\!2}{3}}{0}
  };
  \pic[symb shift=(90:0.6pt)] (QT) at (3,4) {
    particle={quarkcol}{$\mytilde{t}$}{stop}{%
      ?}{\!\myfrac{+\!2}{3}}{0}
  };
  \pic[symb shift=(90:0.6pt),scale name=0.84] (QD) at (1,3) {
    particle={quarkcol}{$\mytilde{d}$}{down\\[-3pt]squark}{%
      ?}{\!\myfrac{-\!1}{3}}{0}
  };
  \pic[symb shift=(90:0.4pt),scale name=0.84] (QS) at (2,3) {
    particle={quarkcol}{$\mytilde{s}$}{strange\\[-3pt]squark}{%
      ?}{\!\myfrac{-\!1}{3}}{0}
  };
  \pic[symb shift=(90:0.6pt)] (QB) at (3,3) {
    particle={quarkcol}{$\mytilde{b}$}{sbottom}{%
      ?}{\!\myfrac{-\!1}{3}}{0}
  };
  \node[quarkcol,bflabel,above right=0pt and -2pt]
    at (QD-sw) {SQUARKS};
  
  % SLEPTONS
  \pic[symb shift=(90:0.4pt)] (EL) at (1,2) {
    particle={leptoncol}{$\mytilde{e}$}{selectron}{%
      ?}{-1}{0}
  };
  \pic (MU) at (2,2) {
    particle={leptoncol}{$\widetilde{\PGm}$}{smuon}{%
      ?}{-1}{0}
  };
  \pic[symb shift=(90:0.4pt)] (TAU) at (3,2) {
    particle={leptoncol}{$\widetilde{\PGt}$}{stau}{%
      ?}{-1}{0}
  };
  \pic[scale name=0.83] (NE) at (1,1) {
    particle={leptoncol}{$\PSGn{e}$}{electron\\[-3pt]sneutrino}{%
      ?}{0}{0}
  };
  \pic[symb shift=(-90:0.5pt),scale name=0.83] (NM) at (2,1) {
    particle={leptoncol}{$\PSGn{\PGm}$}{muon\\[-3pt]sneutrino}{%
      ?}{0}{0}
  };
  \pic[scale name=0.83] (NT) at (3,1) {
    particle={leptoncol}{$\PSGn{\PGt}$}{tau\\[-3pt]sneutrino}{%
      ?}{0}{0}
  };
  \node[leptoncol,bflabel,above right=0pt and -2pt]
    at (NE-sw) {SLEPTONS};
  
  % GLUINO
  \pic (GLU) at (4,4) {
    particle={gaugecol}{$\mytilde{g}$}{gluino}{%
      ?}{0}{\myfrac{1}{2}}
  };
  
  % CHARGINOS
  \pic[symb shift=(60:0.7pt),scale name=0.88] (CCHI1) at (4,2) {
    particle={gaugecol}{$\widetilde{\chi}_1^\pm$}{light\\[-3pt]chargino}{%
      ?}{\pm1}{\myfrac{1}{2}}
  };
  \pic[symb shift=(60:0.7pt),scale name=0.88] (CCHI2) at (4,1) {
    particle={gaugecol}{$\widetilde{\chi}_2^\pm$}{heavy\\[-3pt]chargino}{%
      ?}{\pm1}{\myfrac{1}{2}}
  };
  \def\s{\hspace{-0.03em}} % reduce spacing between letters
  \node[gaugecol,font=\bf,inner sep=0.5pt,above=1pt,scale=0.67]
    (GB) at (4,4.5) {GLUINO};
  \node[gaugecol,font=\bf,inner sep=0.5pt,above=1pt,scale=0.69,xscale=0.89]
    (GB) at (4,2.5) {C\s H\s A\s R\s G\s I\s N\s O\s S};
  
  % NEUTRALINOS
  \pic[symb shift=(60:0.3pt),scale name=0.88] (NCHI1) at (5,4) {
    particle={gaugecol}{$\widetilde{\chi}_1^0$}{lightest\\[-3pt]neutralino}{%
      ?}{0}{\myfrac{1}{2}}
  };
  \pic[symb shift=(60:0.3pt),scale name=0.84] (NCHI1) at (5,3) {
    particle={gaugecol}{$\widetilde{\chi}_2^0$}{2\textsuperscript{nd}\! lightest\\[-3pt]neutralino}{%
      ?}{0}{\myfrac{1}{2}}
  };
  \pic[symb shift=(60:0.3pt),scale name=0.82] (NCHI2) at (5,2) {
    particle={gaugecol}{$\widetilde{\chi}_3^0$}{2\textsuperscript{nd}\! heaviest\\[-3pt]neutralino}{%
      ?}{0}{\myfrac{1}{2}}
  };
  \pic[symb shift=(60:0.3pt),scale name=0.88] (NCHI2) at (5,1) {
    particle={gaugecol}{$\widetilde{\chi}_4^0$}{heaviest\\[-3pt]neutralino}{%
      ?}{0}{\myfrac{1}{2}}
  };
  \def\s{\hspace{-0.05em}} % reduce spacing between letters
  \node[gaugecol,font=\bf,inner sep=0.5pt,above=1pt,scale=0.66,xscale=0.88]
    (GB) at (5,4.5) {N\s E\s U\s T\s R\s A\s L\s I\s N\s O\s S};
  
\end{tikzpicture}
} % close foreach loop over \f


\end{document}

Click to download the full example: SM_particles.texSM_particles.pdf
Open in Overleaf: SM_particles.tex

Click to download a simplified/reduced example (without spin, charge, mass): SM_particles_simple.texSM_particles_simple.pdf
Open in Overleaf: SM_particles_simple.tex

Click to download the beamer example: SM_particles_beamer.texSM_particles_beamer.pdf
Open in Overleaf: SM_particles_beamer.tex

2 Replies to “Standard Model”

  1. Hello Izaak. Love your work but I noticed a minor mistake in your images of the Standard Model (https://tikz.net/sm_particles). The mass of the muon neutrino must be more than that of the electron neutrino but less than that of the tau neutrino, and in this case it should be <0.17 MeV rather than <0.17 eV.

    Kind regards, Matthew.

    1. Hi Matthew,

      Thanks a lot for the correction!

      I updated the figures also with the latest mass values from the PDG’s 2025 Review and took the upper limits on the neutrino masses from this Wikipedia page. This also prompted me to write down some caveats regarding these figures, like the fact that the neutrinos shown in these figures (νe, νμ, ντ) are actually not the mass eigenstates.

      Please let me know if you spot any other problems!

      Cheers,
      Izaak

Leave a Reply

Your email address will not be published.