引力子(在费曼图中)基本上是两条波浪线。我对这种类型的图很感兴趣:
但是单波浪线应该变成双波浪线。生成上图的代码如下:
\documentclass{article}
\usepackage{tikz}
\usepackage[compat=1.1.0]{tikz-feynman}
\usepackage[active,pdftex,tightpage]{preview}
\PreviewEnvironment[{[]}]{tikzpicture}
\begin{document}
\feynmandiagram[layered layout,inline=(a.base),horizontal=a to c] {
a -- [charged scalar,momentum'={[arrow shorten=0.2]\(p\)}] b -- [double,double distance=0.5ex, photon, out=135, in=45, loop, min distance=1.5cm,momentum={[arrow shorten=0.35]\(k\)}] b,
b -- [charged scalar,momentum'={[arrow shorten=0.2]\(p\)}] c,
};
\end{document}
double,double distance=0.5ex
我在光子传播器中添加了,但显然photon
覆盖了该样式。有人知道如何将波浪线加倍吗?
答案1
graviton
您可以使用snake
装饰和定义新键double
。选项amplitude
、segment length
和可以根据您的喜好进行调整。pre length
箭头与 等重复装饰效果不佳,因此我制作了两个循环,一个带有和动量箭头,另一个带有。post length
momentum
snake
draw=none
graviton
\documentclass{article}
\usepackage{tikz}
\usepackage[compat=1.1.0]{tikz-feynman}
\tikzset{graviton/.style={decorate, decoration={snake, amplitude=.4mm, segment length=1.5mm, pre length=.5mm, post length=.5mm}, double}}
\begin{document}
\feynmandiagram[layered layout,inline=(a.base),horizontal=a to c] {
a -- [charged scalar,momentum'={[arrow shorten=0.2]\(p\)}] b -- [draw=none, out=135, in=45, loop, min distance=1.5cm, text=black, momentum={[arrow shorten=0.35]\(k\)}] b
-- [graviton, out=135, in=45, loop, min distance=1.5cm] b -- [charged scalar,momentum'={[arrow shorten=0.2]\(p\)}] c,
};
\end{document}
答案2
另一种解决方案:绘制两次路径,一次粗且黑,一次细且白:
\feynmandiagram[layered layout,inline=(a.base),horizontal=a to c] {
a -- [charged scalar,momentum'={[arrow shorten=0.2]\(p\)}] b -- [double,double distance=0.5ex, photon, out=135, in=45, loop, min distance=1.5cm, line width=0.05cm] b,
b -- [photon, out=135, in=45, loop, min distance=1.5cm, white, text=black, momentum={[arrow shorten=0.35]\(k\)}]
b -- [charged scalar,momentum'={[arrow shorten=0.2]\(p\)}] c,
};