> For the complete documentation index, see [llms.txt](https://ayakaleaf-pro.ayaka.space/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ayakaleaf-pro.ayaka.space/latex/tr/alana-ozgu/03-feynman-diagrams.md).

# Feynman diyagramları

## Giriş

Bu yardım makalesi, parçacıklar arasındaki etkileşimleri temsil etmenin çok kompakt ve sezgisel bir yolu olan Feynman diyagramlarını çizmek için LaTeX paketlerini inceliyor. Şunları inceleyeceğiz: [`tikz-feynman` paketini](https://ctan.org/pkg/tikz-feynman?lang=en), diyagramları çizmek için TikZ kullanan ve [`feynmp-auto`](#other-packages-for-drawing-feynman-diagrams) ki ("arka planda") MetaPost kullanır.

## TikZ-Feynman paketi

Bu [`tikz-feynman` paketini](https://ctan.org/pkg/tikz-feynman?lang=en) 2016'da yayımlandı ve Ti*k*Z'yi Feynman diyagramları oluşturmak için kullanır. Ti*k*Z-Feynman, Ti*k*Z paketi ve onun grafik çizim algoritmaları üzerine kuruludur; böylece birçok köşenin yerleşimini otomatikleştirir. Ti*k*Z-Feynman, köşelerin ince ayarlı yerleştirilmesine hâlâ izin verir; böylece karmaşık diyagramlar bile kolayca oluşturulabilir. Ti*k*Z-Feynman ile ilgili en güncel bilgi her zaman [proje sayfasında](http://www.jpellis.me/projects/tikz-feynman/) ve [paket dokümantasyonu](http://mirrors.ctan.org/graphics/pgf/contrib/tikz-feynman/tikz-feynman.pdf) CTAN'da bulunacaktır.

### Güncelleme (9 Kasım 2022)

**Yayından sonra önemli güncelleme** (9 Kasım 2022): Bu sayfa güncellenirken, **TikZ-Feynman paketi, TeX Live 2018'den sonraki TeX Live sürümleriyle uyumsuz olmaya devam etmektedir**—ki bu, bu yardım makalesine eşlik eden [Overleaf projesinde kullanılan TeX Live sürümüdür.](https://www.overleaf.com/project/new/template/26607?id=114366276\&templateName=Examples+using+the+TikZ-Feynman+package\&latexEngine=lualatex\&texImage=texlive-full%3A2018.1\&mainFile=) Aşağıda listelenen tüm TikZ-Feynman örneklerinin, **TeX Live sürümü** ... olarak ayarlanmış `2018 (legacy)`. Daha fazla bilgi için bkz. [GitHub'da bildirilen bu sorun](https://github.com/JP-Ellis/tikz-feynman/issues/73#issue-942615833).

### Paketin Yüklenmesi

Paketi yükledikten sonra, Ti*k*Z-Feynman paketi şu şekilde yüklenebilir: `\usepackage{tikz-feynman}` önsözde. Ayrıca kullanılacak Ti*k*Z-Feynman sürümünü de şu seçenekle belirtmeniz önerilir: `compat` paket seçeneğini belirtip belirtmediğinize bağlıdır: `\usepackage[compat=1.0.0]{tikz-feynman}`Bu, Ti'nin yeni sürümlerinin*k*Z-Feynman'ın uyarı vermeden istenmeyen değişiklikler üretmemesini sağlar.

### İlk Diyagram

Feynman diyagramları şu komutla tanımlanabilir: `\feynmandiagram` komutu. Bu komut, ... komutuna benzer. `\tikz` komutuna benzer ve çevreyi bitirmek için son noktalı virgülü (*k*\tikz`;`) gerektirir. Örneğin, basit bir *s*-kanal diyagramı şöyledir:

```
\feynmandiagram [horizontal=a to b] {
  i1 -- [fermion] a -- [fermion] i2,
  a -- [photon] b,
  f1 -- [fermion] b -- [fermion] f2,
};
```

![S-channel.png](/files/5dcae050a5294c7dd1dae8440d1f3a1f2ce8ae9c)

Bu örneği satır satır inceleyelim:

**1. satır**

\feynmandiagram Feynman diyagramını tanıtır ve köşeli parantezlerde \[] isteğe bağlı argümanların verilmesine izin verir. Bu örnekte horizontal=a to b, algoritma çıktılarının a ve b köşelerinden geçen doğrunun yatay olacak şekilde yönlendirilmesini sağlar.

**2. satır**

Sol fermiyon çizgisi, üç köşe (i1, a ve i2) tanımlanıp bunlar -- kenarlarıyla bağlanarak çizilir. Yukarıdaki \feynmandiagram komutunda olduğu gibi, her kenar da köşeli parantezlerde \[] belirtilen isteğe bağlı argümanlar alır. Bu örnekte, bu kenarların fermiyon çizgilerini belirtmek için oklar içermesini istiyoruz; bu yüzden onlara fermion stilini ekleriz. Gördüğünüz gibi, isteğe bağlı argümanlar köşelere de tam olarak aynı şekilde verilebilir.

**3. satır**

Bu kenar, a ve b köşelerini bir foton olarak stillendirilmiş bir kenarla bağlar. a etiketli bir köşe zaten bulunduğundan, algoritma bunu b etiketli yeni bir köşeye bağlayacaktır.

**4. satır**

Bu satır, 2. satıra benzer ve f1 ile f2 adlı iki yeni köşe tanıtır. Daha önce etiketlenmiş b köşesini yeniden kullanır.

**5. satır**

Feynman diyagramının tanımını bitirin. Son noktalı virgül (;) önemlidir.

Grafikteki her köşeye verilen adın önemi yoktur. Bu yüzden bu örnekte, `i1`, `i2` başlangıç parçacıklarını gösterir; `f1`, `f2` son parçacıkları gösterir; ve `a`, `b` yayılımın uç noktalarıdır. Önemli olan tek şey, 2. satırda neye `a` dediğimizin, 3. satırda da `a` olarak geçmesi; böylece alttaki algoritma bunları aynı köşe olarak ele alır.

Köşelerin hangi sırayla tanımlandığı önemli değildir; çünkü varsayılan algoritma her şeyi yeniden düzenler. Örneğin, fermiyon çizgilerini tek seferde çizmeyi tercih edebilirsiniz; aşağıdaki örnekte olduğu gibi (ayrıca köşe adlandırma biçimimizin tamamen farklı olduğuna dikkat edin):

```
\feynmandiagram [horizontal=f2 to f3] {
  f1 -- [fermion] f2 -- [fermion] f3 -- [fermion] f4,
  f2 -- [photon] p1,
  f3 -- [photon] p2,
};
```

![Photon-scattering.png](/files/baa3cbc61791547b35d37f7f11ad07e87dfa2430)

Son bir not olarak, köşelerin nereye yerleştirileceğinin hesaplanması genellikle Lua ile yazılmış bir algoritma aracılığıyla yapılır. Bunun sonucunda, bu algoritmalardan yararlanmak için LuaTeX gereklidir. LuaTeX kullanılmazsa, Ti*k*Z-Feynman varsayılan olarak daha basit bir algoritmaya geçer ve bunun yerine kullanıcıyı uyarır.

### Stil Ekleme

Şimdiye kadar, örnekler yalnızca `photon` ve `fermion` stillerini kullandı. Ti*k*Z-Feynman paketi, kenarlar ve köşeler için oldukça fazla ek stille birlikte gelir; bunların hepsi [paket dokümantasyonu](http://mirrors.ctan.org/graphics/pgf/contrib/tikz-feynman/tikz-feynman.pdf) bölümünde belgelenmiştir. Örneğin, şu şekilde momentum okları eklemek mümkündür: `momentum=<text>`, ve uç köşeler söz konusu olduğunda, parçacık şu şekilde etiketlenebilir: `particle=<text>`. Nasıl kullanıldıklarını göstermek için, daha önceki genel *s*-kanal diyagramını alıp onu elektron-pozitron çiftlerinin müonlara yok oluşu haline getiriyoruz:

```
\feynmandiagram [horizontal=a to b] {
  i1 [particle=\(e^{-}\)] -- [fermion] a -- [fermion] i2 [particle=\(e^{+}\)],
  a -- [photon, edge label=\(\gamma\), momentum'=\(k\)] b,
  f1 [particle=\(\mu^{+}\)] -- [fermion] b -- [fermion] f2 [particle=\(\mu^{-}\)],
};
```

![S-channel-labelled.png](/files/18ddffe1095083f3ce1a62571428f1b4a163745a)

Aşağıda belgelenen stil anahtarlarına ek olarak, Ti*k*Z'deki stil anahtarları da kullanılabilir:

```
\feynmandiagram [horizontal=a to b] {
  i1 [particle=\(e^{-}\)] -- [fermion, very thick] a -- [fermion, opacity=0.2] i2 [particle=\(e^{+}\)],
  a -- [red, photon, edge label=\(\gamma\), momentum'={[arrow style=red]\(k\)}] b,
  f1 [particle=\(\mu^{+}\)] -- [fermion, opacity=0.2] b -- [fermion, very thick] f2 [particle=\(\mu^{-}\)],
};
```

![S-channel-labelled-styled.png](/files/09919246372cc47a7c019244189b30008e908d38)

Ti'nin sunduğu tüm çeşitli stillerin listesi için*k*Z'nin sağladığı seçeneklere göz atın: [Ti*k*Z kılavuzu](http://mirrors.ctan.org/graphics/pgf/base/doc/pgfmanual.pdf); son derece kapsamlıdır ve birçok kullanım örneği sunar.

### Algoritma Yeterli Olmadığında

Varsayılan olarak, `\feynmandiagram` ve `\diagram` komutları `spring layout` algoritmasını kullanarak tüm kenarları yerleştirir.  `spring layout` Algoritma, diyagramı mümkün olduğunca \`yaymaya' çalışır; bu da çoğu basit diyagram için tatmin edici bir sonuç verir; ancak bazı durumlarda en iyi diyagramı üretmez ve bu bölüm alternatiflere bakacaktır. Üç ana alternatif vardır:

**Görünmez kenarlar ekleyin**

Varsayılan algoritmayı kullanmaya devam ederken, ek kenarlar ekleyip bunları draw=none ile görünmez yaparak belirli köşeleri birbirine daha yakın zorlamak mümkündür. Algoritma bu ek kenarları aynı şekilde ele alır, ancak bunlar sonunda basitçe çizilmez;

**Farklı bir algoritma kullanın**

Bazı durumlarda başka algoritmalar daha uygun olabilir. Diğer grafik yerleşim algoritmalarından bazıları paket belgelerinde listelenmiştir; tüm algoritmaların ve parametrelerinin eksiksiz listesi TikZ kılavuzunda verilmiştir;

**Elle yerleştirme**

Son çare olarak, çok karmaşık veya alışılmadık diyagramlarda her köşenin elle yerleştirilmesi gerekir.

#### Görünmez Kenarlar

Alttaki algoritma, tüm köşelerin nereye yerleştirileceğini hesaplarken tüm kenarları tam olarak aynı şekilde ele alır ve diyagramın gerçek çizimi (yerleşimler hesaplandıktan sonra) ayrı olarak yapılır. Dolayısıyla, algoritmaya kenarlar eklemek mümkündür, ancak bunların çizilmesini engellemek için şunu ekleyerek `draw=none` kenar stiline bunu ekleyebilirsiniz.

Bu, özellikle başlangıç veya bitiş durumlarının, aşağıdaki örnekte gösterildiği gibi, aksi halde olacağından daha yakın kalmasını sağlamak istiyorsanız yararlıdır (şuna dikkat edin: `opacity=0.2` şunun yerine kullanılır: `draw=none` kenarın tam olarak nerede bulunduğunu göstermek için).

```
% İki fotonu birlikte tutmak için görünmez yok
\feynmandiagram [small, horizontal=a to t1] {
  a [particle=\(\pi^{0}\)] -- [scalar] t1 -- t2 -- t3 -- t1,
  t2 -- [photon] p1 [particle=\(\gamma\)],
  t3 -- [photon] p2 [particle=\(\gamma\)],
};
```

![Invisible-edge-before.png](/files/9f93ad95b98eb512bbab6adcf165e8b898f13675)

```
% Görünmez kenar fotonların paralel olmasını sağlar
\feynmandiagram [small, horizontal=a to t1] {
  a [particle=\(\pi^{0}\)] -- [scalar] t1 -- t2 -- t3 -- t1,
  t2 -- [photon] p1 [particle=\(\gamma\)],
  t3 -- [photon] p2 [particle=\(\gamma\)],
  p1 -- [opacity=0.2] p2,
};
```

![Invisible-edge-after.png](/files/ffc09aa319f9e44ab5e83ed55a7cdd45c07d9b20)

#### Alternatif Algoritmalar

Ti*k*Z'nin grafik çizim kütüphanesinde köşeleri konumlandırmak için birkaç farklı algoritma vardır. Varsayılan olarak, `\diagram` ve `\feynmandiagram` şunu kullanın `spring layout` algoritması köşeleri yerleştirmek için kullanılır.  `spring layout` her şeyi mümkün olduğunca yaymaya çalışır; bu da çoğu durumda güzel bir diyagram verir; ancak bunun işe yaramadığı bazı durumlar vardır. Bunun işe yaramadığı iyi bir örnek, `spring layout` solda bozunan parçacığın ve sağda tüm yavru parçacıkların bulunduğu bozunmalardır.

```
% Varsayılan spring layout kullanılıyor
\feynmandiagram [horizontal=a to b] {
  a [particle=\(\mu^{-}\)] -- [fermion] b -- [fermion] f1 [particle=\(\nu_{\mu}\)],
  b -- [boson, edge label=\(W^{-}\)] c,
  f2 [particle=\(\overline \nu_{e}\)] -- [fermion] c -- [fermion] f3 [particle=\(e^{-}\)],
};
```

![Spring-layout.png](/files/8f228a3d3e85daeb747edf24bf10f5e275838a4e)

```
% Katmanlı yerleşim kullanılıyor
\feynmandiagram [layered layout, horizontal=a to b] {
  a [particle=\(\mu^{-}\)] -- [fermion] b -- [fermion] f1 [particle=\(\nu_{\mu}\)],
  b -- [boson, edge label'=\(W^{-}\)] c,
  c -- [anti fermion] f2 [particle=\(\overline \nu_{e}\)],
  c -- [fermion] f3 [particle=\(e^{-}\)],
};
```

![Layered-layout.png](/files/de7c588c568b05cd12eab3da80e885813bfb4998)

layered layout `katmanlı yerleşim` stilini `\feynmandiagram`, ayrıca köşeleri belirtme sıramızı da değiştirdik. Bunun nedeni `katmanlı yerleşim` algoritmasının, köşelerin tanımlanma sırasına gerçekten dikkat etmesidir (varsayılan `spring layout`) aksine; bunun sonucunda, `c--f2, c--f3` , `f2--c--f3`. İlk durumda, `f2` ve `f3` ikisi de aşağıdaki katmandadır `c` istenildiği gibi; oysa ikinci durumda `f2` üstteki katmana yerleştirilir `c` (yani W-bosonunun çıktığı katmanla aynı katman).

#### Elle Yerleştirme

Daha karmaşık diyagramlarda, ne kadar çok görünmez kenar eklenirse eklensin, algoritmaların hiçbirinin çalışmaması oldukça olasıdır. Bu tür durumlarda, köşeler elle yerleştirilmelidir. Ti*k*Z-Feynman, köşelerin elle yerleştirilmesine şu komut aracılığıyla izin verir: `\vertex` komutunu.

Bu `\vertex` komutu yalnızca `feynman` ortamı içinde kullanılabilir (bu ortam da yalnızca bir `tikzpicture`).  `feynman` ortamı, Ti*k*Z-Feynman'daki ilgili tüm stilleri yükler ve ek Ti*k*Z-Feynman'a özgü komutları tanımlar; örneğin `\vertex` ve `\diagram`. Bu, PGFPlots'tan ve onun `axis` ortam.

Bu `\vertex` komutunu kullanışından ilham almıştır; bu komut, `\node` komutuna benzer ve çevreyi bitirmek için son noktalı virgülü (*k*Z'deki \node komutuna büyük ölçüde benzer; ancak dikkate değer istisna, köşe içeriğinin isteğe bağlı olmasıdır; yani sonda `{<text>}` olması gerekmez. Eğer `{}` belirtilirse, köşeye otomatik olarak `particle` stili verilir; aksi halde, olağan (sıfır boyutlu) bir köşe olur.

Köşelerin nereye gideceğini belirtmek için açık koordinatlar vermek mümkündür; ancak muhtemelen en kolayı, Ti `positioning` Z'deki*k*kütüphanesini kullanmaktır; bu kütüphane köşelerin mevcut köşelere göre yerleştirilmesine izin verir. Göreli yerleşimler kullanarak grafiğin bir kısmını kolayca ince ayar yapmak mümkündür ve her şey buna göre uyarlanır; alternatif olarak, etkilenen her köşenin koordinatlarını elle ayarlamak gerekir.

Son olarak, tüm köşeler belirtildikten sonra, `\diagram*` komutu tüm kenarları belirtmek için kullanılır. Bu, büyük ölçüde `\diagram` (ve ayrıca `\feynmandiagram`) ile aynı şekilde çalışır; ancak yeni düğümleri yerleştirmek için çok basit bir algoritma kullanır ve mevcut (adlandırılmış) düğümlerin de dahil edilmesine izin verir. Mevcut bir düğüme başvurmak için, düğüm parantez içinde verilmelidir.

Düğümleri belirleyip ardından aralarındaki kenarları çizme sürecinin tamamı, müon bozunması için aşağıda gösterilmiştir:

```
\begin{tikzpicture}
  \begin{feynman}
    \vertex (a) {\(\mu^{-}\)};
    \vertex [right=of a] (b);
    \vertex [above right=of b] (f1) {\(\nu_{�b5}\)};
    \vertex [below right=of b] (c);
    \vertex [above right=of c] (f2) {\(\overline \nu_{e}\)};
    \vertex [below right=of c] (f3) {\(e^{-}\)};

    \diagram* {
      (a) -- [fermion] (b) -- [fermion] (f1),
      (b) -- [boson, edge label'=\(W^{-}\)] (c),
      (c) -- [anti fermion] (f2),
      (c) -- [fermion] (f3),
    };
  \end{feynman}
\end{tikzpicture}
```

![Manual-positioning.png](/files/a1313ef9810af5d5915ad4288d1d300a7bfef3a0)

## Feynman diyagramları çizmek için diğer paketler

TikZ-Feynman paketine birkaç alternatif vardır:

* [`feynmf`](https://ctan.org/pkg/feynmf): üzerinden bitmap grafikleri üretir [MetaFont](https://ctan.org/pkg/metafont)
* [`feynmp`](https://ctan.org/pkg/feynmf) (ile birlikte gelir `feynmf`) üzerinden vektör grafikleri üretir [MetaPost](https://ctan.org/pkg/metapost)
* [`feynmp-auto`](https://ctan.org/pkg/feynmp-auto?lang=en): şundan türetilmiştir `feynmp`

Bu `feynmp-auto` paketi, aslında `feynmp` paketinin bir uzantısıdır; MetaPost'un PostScript kodunu pdfTeX, LuaTeX ve XeTeX'te kullanılmak üzere PDF verisine dönüştürmeyi otomatikleştirmek için tasarlanmıştır. Aşağıdaki örneklerin hepsi `feynmp-auto`.

### Giriş

Bu `feynmf`, `feynmp` ve `feynmp-auto` paketlerini kullanır; köşeleri, parçacıkları ve etiketlerini belirterek Feynman diyagramlarını kolayca çizmenizi sağlar, ardından diyagramınızı çizmek için yerleşimi otomatik olarak gerçekleştirir.

#### feynmf tabanlı paketlerin kullanımına genel bakış

Feynman diyagramları oluşturmak için şunları yapmanız gerekir:

1. bir `fmfile` ortamı oluşturun; bu ortam bir veya daha fazla diyagramı içerir ve her biri `fmfgraph` ya da `fmfgraph*` ortamı içinde bulunur—yıldızlı ve yıldızsız biçim arasındaki fark [aşağıda açıklandığı gibi](#fmfgraph-and-fmfgraph);
2. her `fmfgraph` ya da `fmfgraph*` ortamını, tek bir Feynman diyagramı oluşturmak için gereken çizim talimatlarını içerecek şekilde kullanın.

Bu `fmfile` ortamı şu biçimdedir

```latex
\begin{fmffile}{file-name}

% Diyagram 1
\begin{fmfgraph}(width,height)
...
\end{fmfgraph}

% Diyagram 2
\begin{fmfgraph*}(width,height)
...
\end{fmfgraph*}

\end{fmffile}
```

burada `file-name` içinde tanımlanan tek tek çizimlerin MetaPost kod açıklamalarını içermek için kullanılacak bir dosyanın adıdır `fmfgraph`/`fmfgraph*` ortamları tarafından doldurulur.

Her çizim şu biçimi alır

```latex
\begin{fmfgraph}(width,height)

% çizim talimatları

\end{fmfgraph}
```

veya, yıldızlı sürüm için (`fmfgraph*`)

```latex
\begin{fmfgraph*}(width,height)

% çizim talimatları

\end{fmfgraph*}
```

burada `(width,height)` diyagramın boyutunu şu birimlerle ifade eder: [`\unitlength`](#note-on-unitlength).

içindeki MetaPost kodu `file-name` işlenerek Feynman diyagram(lar)ınızı temsil eden grafik(ler) oluşturulur. Bir `fmfile` ortam en fazla 256 ayrı çizim içerebilir.

#### fmfgraph ve fmfgraph\*

* `fmfgraph`: bu ortam, tek bir Feynman diyagramının çizim talimatlarını (açıklamasını) içerir. Şuraya yerleştirilir *ortamın konumunda*. Bu ortam etiketleri desteklemez, etiketleri eklemek için `fmfgraph*` komutunu kullanın.
* `fmfgraph*` ile aynı `fmfgraph`, ancak [`picture` ortamı](/latex/tr/sekiller-ve-tablolar/04-picture-environment.md) aynı boyutta bir içinde kapatılmıştır. LaTeX etiketlerinin kullanımını destekler.

### Bir örnek

Hadi hızlı bir örnekle başlayalım:

```latex
\documentclass{article}
\usepackage{feynmp-auto}
\begin{document}
\begin{fmffile}{first-diagram}
 \begin{fmfgraph}(120,80)
   \fmfleft{i1,i2}
   \fmfright{o1,o2}
   \fmf{fermion}{i1,v1,o1}
   \fmf{fermion}{i2,v2,o2}
   \fmf{photon}{v1,v2}
 \end{fmfgraph}
\end{fmffile}
\end{document}
```

[Bu örneği Overleaf'te açın](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=feynmf+package+example+1\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%7Bfeynmp-auto%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cbegin%7Bfmffile%7D%7Bfirst-diagram%7D%0A+%5Cbegin%7Bfmfgraph%7D%28120%2C80%29%0A+++%5Cfmfleft%7Bi1%2Ci2%7D%0A+++%5Cfmfright%7Bo1%2Co2%7D%0A+++%5Cfmf%7Bfermion%7D%7Bi1%2Cv1%2Co1%7D%0A+++%5Cfmf%7Bfermion%7D%7Bi2%2Cv2%2Co2%7D%0A+++%5Cfmf%7Bphoton%7D%7Bv1%2Cv2%7D%0A+%5Cend%7Bfmfgraph%7D%0A%5Cend%7Bfmffile%7D%0A%5Cend%7Bdocument%7D)

Bu örnek aşağıdaki çıktıyı üretir:

![](/files/9b145223ce7be93373bf14e166e7710de80102a8)

Bu örnekte `fmfgraph` ortamı, çizimin genişliğini ve yüksekliğini sırasıyla 120 ve 80 olarak ayarlar:

```latex
\begin{fmfgraph}(120,80)
```

şu değerin belirlediği birimleri kullanarak: `\unitlength`, bunun varsayılan değeri 1pt'dir; dolayısıyla bu diyagrama 120pt genişlik ve 80pt yükseklik atanır.

#### \unitlength hakkında not

Çünkü `\unitlength` LaTeX'te bir boyut birimidir; değerini şu komutla değiştirebilirsiniz: `\setlength` komutu; örneğin, çizimlerin genişliğini ve yüksekliğini cm cinsinden tanımlamak için şunu yazabilirsiniz:

```latex
\setlength{\unitlength}{1cm}
```

Yukarıdaki örneği yeniden oluşturursak, aşağıdaki diyagramın genişliği artık `8cm` ve yüksekliği `5cm`:

```latex
\documentclass{article}
\usepackage{feynmp-auto}
\begin{document}
\setlength{\unitlength}{1cm}
\begin{fmffile}{first-diagram}
 \begin{fmfgraph}(8,5)% units are now in cm
   \fmfleft{i1,i2}
   \fmfright{o1,o2}
   \fmf{fermion}{i1,v1,o1}
   \fmf{fermion}{i2,v2,o2}
   \fmf{photon}{v1,v2}
 \end{fmfgraph}
\end{fmffile}
\end{document}
```

[Bu örneği Overleaf'te açın.](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Setting+units+to+draw+Feynman+diagrams\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%7Bfeynmp-auto%7D%0A%5Cbegin%7Bdocument%7D%0A%5Csetlength%7B%5Cunitlength%7D%7B1cm%7D%0A%5Cbegin%7Bfmffile%7D%7Bfirst-diagram%7D%0A+%5Cbegin%7Bfmfgraph%7D%288%2C5%29%25+units+are+now+in+cm%0A+++%5Cfmfleft%7Bi1%2Ci2%7D%0A+++%5Cfmfright%7Bo1%2Co2%7D%0A+++%5Cfmf%7Bfermion%7D%7Bi1%2Cv1%2Co1%7D%0A+++%5Cfmf%7Bfermion%7D%7Bi2%2Cv2%2Co2%7D%0A+++%5Cfmf%7Bphoton%7D%7Bv1%2Cv2%7D%0A+%5Cend%7Bfmfgraph%7D%0A%5Cend%7Bfmffile%7D%0A%5Cend%7Bdocument%7D)

Bu örnek şimdi daha büyük bir diyagram üretir:

![](/files/13e1e93a096fe51a7ce4c0e95d3fa5a7bdd714cd)

### Köşeler

Yapmanız gereken ilk şey, dış köşelerinizi ve nerede konumlandırılmaları gerektiğini belirtmektir. Köşelerinize istediğiniz herhangi bir adı verebilir ve nerede konumlandırılacaklarını şu komutlarla söyleyebilirsiniz: `\fmfleft`, `\fmfright`, `\fmftop`, `\fmfbottom`.

Yukarıdaki örneklerde kullanıldığı gibi:

```latex
% Solda i1 ve i2 adlı iki köşe oluşturur
\fmfleft{i1,i2}

% Sağda o1 ve o2 adlı iki köşe oluşturur
\fmfright{o1,o2}
```

Köşeleri şu komutla bağlayabilirsiniz: `\fmf`, daha önce oluşturulmamış adlar verirseniz yeni köşeler oluşturacaktır. Yukarıdaki örneklerde kullanıldığı gibi:

```latex
% i1 ile
% yeni oluşturulan v1 arasında ve v1 ile o1 arasında bir fermiyon çizgisi oluşturur.
\fmf{fermion}{i1,v1,o1}

% v1 ile yeni oluşturulan v2 arasında bir foton çizgisi oluşturur
\fmf{photon}{v1,v2}
```

### Etiketler

Yukarıda [belirtildiği gibi](#fmfgraph-and-fmfgraph), etiketleri kullanmak için çizim `fmfgraph*` çizim ortamının biçimiyle oluşturulmalıdır.

Şunu kullanın `\fmflabel` komutu, bir köşe üzerine etiket yerleştirmek için kullanılır:

```latex
\fmflabel{label-content}{diagram-vertex}
```

burada:

* `etiket içeriği` seçilen tepe noktasına uygulanacak etikettir;
* `diyagram-tepe noktası` etiketlenecek tepe noktasının adıdır.

Dikkat edin ki `etiket içeriği` matematiksel içerik içerebilir.

Aşağıdaki etiketleri eklemek için önceki örneği yeniden kullanabiliriz

```latex
   \fmflabel{$v_1$}{v1}
   \fmflabel{$v_2$}{v2}
```

bu da aşağıda gösterilen güncellenmiş diyagramı üretir:

```latex
\documentclass{article}
\usepackage{feynmp-auto}
\begin{document}
\begin{fmffile}{first-diagram}
 \begin{fmfgraph*}(120,80) %fmggraph* ortamına DİKKAT
   \fmfleft{i1,i2}
   \fmfright{o1,o2}
   \fmf{fermion}{i1,v1,o1}
   \fmf{fermion}{i2,v2,o2}
   \fmf{photon}{v1,v2}
   % Etiketlerimizi ekleyelim
   \fmflabel{$v_1$}{v1}
   \fmflabel{$v_2$}{v2}
 \end{fmfgraph*}
\end{fmffile}
\end{document}
```

[Bu örneği Overleaf'te açın.](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Adding+labels+to+Feynman+diagrams\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%7Bfeynmp-auto%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cbegin%7Bfmffile%7D%7Bfirst-diagram%7D%0A+%5Cbegin%7Bfmfgraph%2A%7D%28120%2C80%29+%25NOTE+the+fmfgraph%2A+environment%0A+++%5Cfmfleft%7Bi1%2Ci2%7D%0A+++%5Cfmfright%7Bo1%2Co2%7D%0A+++%5Cfmf%7Bfermion%7D%7Bi1%2Cv1%2Co1%7D%0A+++%5Cfmf%7Bfermion%7D%7Bi2%2Cv2%2Co2%7D%0A+++%5Cfmf%7Bphoton%7D%7Bv1%2Cv2%7D%0A+++%25+Add+our+labels%0A+++%5Cfmflabel%7B%24v_1%24%7D%7Bv1%7D%0A+++%5Cfmflabel%7B%24v_2%24%7D%7Bv2%7D%0A+%5Cend%7Bfmfgraph%2A%7D%0A%5Cend%7Bfmffile%7D%0A%5Cend%7Bdocument%7D)

Bu örnek, etiketler içeren bir Feynman diyagramı üretir:

![](/files/c406f1ba6c930fe04d5d57c6335b4e7c9caf32d4)

### Biraz daha karmaşık örnekler

Aşağıdaki daha gelişmiş örnekler, `feynmp` henüz tartışmadığımız şu özellikleri kullanır: şuna bakın [`feynmp`  paketi (`feynmf`) belgeleri](https://mirror.ox.ac.uk/sites/ctan.org/macros/latex/contrib/feynmf/fmfman.pdf)—ayrıca çok sayıda ek örnek de içerir. Bu diyagramlar, başlangıçta CERN web sayfasından alınan LaTeX kodunu içeren bir Overleaf şablonunda yayımlanmıştı; söz konusu sayfaya artık yalnızca [Wayback Machine](https://web.archive.org/web/20141015023615/http://szczypka.web.cern.ch:80/szczypka/guides/latex/feynmp.html)—aracılığıyla erişilebilir; o sayfada denemek isteyebileceğiniz başka örnekler de bulunur.

#### Örnek 1

```latex
\documentclass{article}
\usepackage{feynmp-auto}
\begin{document}
\begin{fmffile}{complex-a}
\begin{fmfgraph*}(100,100)
    \fmfleft{i1}
    \fmfright{o1,o2}
    \fmf{fermion,label=$u$}{i1,w1}
    \fmf{fermion,label=$d$}{w1,o1}
    \fmf{photon,label=$W^{+}$}{w1,o2}
    \fmfv{lab=$V^{\ast}_{ud}$,lab.dist=0.05w}{w1}
\end{fmfgraph*}
\end{fmffile}
\end{document}
```

[Bu örneği Overleaf'te açın](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=feynmf+package+example+1\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%7Bfeynmp-auto%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cbegin%7Bfmffile%7D%7Bcomplex-a%7D%0A%5Cbegin%7Bfmfgraph%2A%7D%28100%2C100%29%0A++++%5Cfmfleft%7Bi1%7D%0A++++%5Cfmfright%7Bo1%2Co2%7D%0A++++%5Cfmf%7Bfermion%2Clabel%3D%24u%24%7D%7Bi1%2Cw1%7D%0A++++%5Cfmf%7Bfermion%2Clabel%3D%24d%24%7D%7Bw1%2Co1%7D%0A++++%5Cfmf%7Bphoton%2Clabel%3D%24W%5E%7B%2B%7D%24%7D%7Bw1%2Co2%7D%0A++++%5Cfmfv%7Blab%3D%24V%5E%7B%5Cast%7D_%7Bud%7D%24%2Clab.dist%3D0.05w%7D%7Bw1%7D%0A%5Cend%7Bfmfgraph%2A%7D%0A%5Cend%7Bfmffile%7D%0A%5Cend%7Bdocument%7D)

Bu örnek aşağıdaki diyagramı üretir:

![](/files/19f6416f787a79a29d44660f5f178d640e5e7d72)

#### Örnek 2

```latex
\documentclass{article}
\usepackage{feynmp-auto}
\begin{document}
\begin{fmffile}{complex-b}
\begin{fmfgraph*}(200,200)
    % alt ve üst tepe noktaları
    \fmfstraight
    \fmfleft{i0,i1,i2,id1,id2,i3,i4,i5}
    \fmfright{o0,o1,o2,od1,od2,o3,o4,o5}
    % gelen protondan gluon köşelerine
    \fmf{fermion,label=$d$}{i1,o1}
    % gerilim tepe noktasını bir tarafa kaydırır
    \fmf{fermion,tension=1.5,label=$\overline{b}$}{v2,i4}
    \fmf{fermion,label=$\overline{c}$}{o4,v2}
    \fmffreeze
    \fmf{fermion}{o2,v3,o3}
    \fmf{fermion,label=$\overline{s}$}{o2,v3}
    \fmf{fermion,label=$c$}{v3,o3}
    \fmf{photon, tension=2,label=$W^{+}$}{v2,v3}
    % hayalet, W->cs tepe noktasını ortalar
    \fmf{phantom,tension=1.5}{i1,v3}

    \fmfv{lab=$V_{cb}^{\ast}$}{v2}
    \fmfv{lab=$V_{cs}$,lab.dist=-.1w}{v3}
\end{fmfgraph*}
\end{fmffile}
\end{document}
```

[Bu örneği Overleaf'te açın](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=feynmf+package+example+1\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%7Bfeynmp-auto%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cbegin%7Bfmffile%7D%7Bcomplex-b%7D%0A%5Cbegin%7Bfmfgraph%2A%7D%28200%2C200%29%0A++++%25+bottom+and+top+verticies%0A++++%5Cfmfstraight%0A++++%5Cfmfleft%7Bi0%2Ci1%2Ci2%2Cid1%2Cid2%2Ci3%2Ci4%2Ci5%7D%0A++++%5Cfmfright%7Bo0%2Co1%2Co2%2Cod1%2Cod2%2Co3%2Co4%2Co5%7D%0A++++%25+incoming+proton+to+gluon+vertices%0A++++%5Cfmf%7Bfermion%2Clabel%3D%24d%24%7D%7Bi1%2Co1%7D%0A++++%25+tension+shifts+vertex+to+one+side%0A++++%5Cfmf%7Bfermion%2Ctension%3D1.5%2Clabel%3D%24%5Coverline%7Bb%7D%24%7D%7Bv2%2Ci4%7D%0A++++%5Cfmf%7Bfermion%2Clabel%3D%24%5Coverline%7Bc%7D%24%7D%7Bo4%2Cv2%7D%0A++++%5Cfmffreeze%0A++++%5Cfmf%7Bfermion%7D%7Bo2%2Cv3%2Co3%7D%0A++++%5Cfmf%7Bfermion%2Clabel%3D%24%5Coverline%7Bs%7D%24%7D%7Bo2%2Cv3%7D%0A++++%5Cfmf%7Bfermion%2Clabel%3D%24c%24%7D%7Bv3%2Co3%7D%0A++++%5Cfmf%7Bphoton%2C+tension%3D2%2Clabel%3D%24W%5E%7B%2B%7D%24%7D%7Bv2%2Cv3%7D%0A++++%25+phantom+centres+the+W-%3Ecs+vertex%0A++++%5Cfmf%7Bphantom%2Ctension%3D1.5%7D%7Bi1%2Cv3%7D%0A%0A++++%5Cfmfv%7Blab%3D%24V_%7Bcb%7D%5E%7B%5Cast%7D%24%7D%7Bv2%7D%0A++++%5Cfmfv%7Blab%3D%24V_%7Bcs%7D%24%2Clab.dist%3D-.1w%7D%7Bv3%7D%0A%5Cend%7Bfmfgraph%2A%7D%0A%5Cend%7Bfmffile%7D%0A%5Cend%7Bdocument%7D)

Bu örnek aşağıdaki diyagramı üretir:

![](/files/dbcfc48f612cc7da138b7737b23f8c3143dda5c5)

#### Örnek 3

```latex
\documentclass{article}
\usepackage{feynmp-auto}
\begin{document}
\begin{fmffile}{complex-c}
\begin{fmfgraph*}(200,200)
    %alt ve üst tepe noktaları
    \fmfbottom{P1,P2}
    \fmftop{P1',b,bbar,P2'}
    %gelen protonlardan gluon köşelerine
    \fmf{fermion,tension=2,lab=$P_1$}{P1,g1}
    \fmf{fermion,tension=2,lab=$P_2$}{P2,g2}
    % gluon köşelerindeki lekeler, 0.16w lekenin boyutudur
    \fmfblob{.16w}{g1,g2}
    % P1'den tepe noktasına gluon
    \fmf{gluon,lab.side=right,lab=$x_{1}P_{1}$}{g1,v1}
    % P2'den tepe noktasına gluon - sıra değişimine dikkat!
    \fmf{gluon,lab.side=right,lab=$x_{2}P_{2}$}{v2,g2}
    % kuark döngüsü buradaydı
    \fmf{fermion, tension=.6, lab.side=right,lab=$b$}{v1,b}
    \fmf{fermion, tension=1.2}{v2,v1}
    \fmf{fermion, tension=.6, lab.side=right,lab=$\overline{b}$}{bbar,v2}
    % çıkan protonlar
    \fmf{fermion}{g1,P1'}
    \fmf{fermion}{g2,P2'}
    % her şeyi sabitle
    \fmffreeze
    \renewcommand{\P}[3]{\fmfi{plain}{%
        vpath(__#1,__#2) shifted (thick*(#3))}}
    % P1 üzerindeki çizgiler
    \P{P1}{g1}{2,0}
    \P{P1}{g1}{-2,1}
    % p2 üzerindeki çizgiler
    \P{P2}{g2}{2,1}
    \P{P2}{g2}{-2,0}
    % P1' üzerindeki çizgiler
    \P{g1}{P1'}{-2,-1}
    \P{g1}{P1'}{2,0}
    % P2' üzerindeki çizgiler
    \P{g2}{P2'}{-2,0}
    \P{g2}{P2'}{2,-1}
\end{fmfgraph*}
\end{fmffile}
\end{document}
```

[Bu örneği Overleaf'te açın](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=feynmf+package+example+1\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%7Bfeynmp-auto%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cbegin%7Bfmffile%7D%7Bcomplex-c%7D%0A%5Cbegin%7Bfmfgraph%2A%7D%28200%2C200%29%0A++++%25bottom+and+top+verticies%0A++++%5Cfmfbottom%7BP1%2CP2%7D%0A++++%5Cfmftop%7BP1%27%2Cb%2Cbbar%2CP2%27%7D%0A++++%25incoming+protons+to+gluon+vertices%0A++++%5Cfmf%7Bfermion%2Ctension%3D2%2Clab%3D%24P_1%24%7D%7BP1%2Cg1%7D%0A++++%5Cfmf%7Bfermion%2Ctension%3D2%2Clab%3D%24P_2%24%7D%7BP2%2Cg2%7D%0A++++%25blobs+at+gluon+vertices%2C+0.16w+is+the+size+of+blob%0A++++%5Cfmfblob%7B.16w%7D%7Bg1%2Cg2%7D%0A++++%25gluon+from+P1+to+vertex1%0A++++%5Cfmf%7Bgluon%2Clab.side%3Dright%2Clab%3D%24x_%7B1%7DP_%7B1%7D%24%7D%7Bg1%2Cv1%7D%0A++++%25gluon+from+P2+to+vertex2+-+note+change+of+order%21%0A++++%5Cfmf%7Bgluon%2Clab.side%3Dright%2Clab%3D%24x_%7B2%7DP_%7B2%7D%24%7D%7Bv2%2Cg2%7D%0A++++%25quark+loop+was+here%0A++++%5Cfmf%7Bfermion%2C+tension%3D.6%2C+lab.side%3Dright%2Clab%3D%24b%24%7D%7Bv1%2Cb%7D%0A++++%5Cfmf%7Bfermion%2C+tension%3D1.2%7D%7Bv2%2Cv1%7D%0A++++%5Cfmf%7Bfermion%2C+tension%3D.6%2C+lab.side%3Dright%2Clab%3D%24%5Coverline%7Bb%7D%24%7D%7Bbbar%2Cv2%7D%0A++++%25outgoing+protons%0A++++%5Cfmf%7Bfermion%7D%7Bg1%2CP1%27%7D%0A++++%5Cfmf%7Bfermion%7D%7Bg2%2CP2%27%7D%0A++++%25freeze+everything+in+place%0A++++%5Cfmffreeze%0A++++%5Crenewcommand%7B%5CP%7D%5B3%5D%7B%5Cfmfi%7Bplain%7D%7B%25%0A++++++++vpath%28__%231%2C__%232%29+shifted+%28thick%2A%28%233%29%29%7D%7D%0A++++%25lines+on+P1%0A++++%5CP%7BP1%7D%7Bg1%7D%7B2%2C0%7D%0A++++%5CP%7BP1%7D%7Bg1%7D%7B-2%2C1%7D%0A++++%25lines+on+p2%0A++++%5CP%7BP2%7D%7Bg2%7D%7B2%2C1%7D%0A++++%5CP%7BP2%7D%7Bg2%7D%7B-2%2C0%7D%0A++++%25lines+on+P1%27%0A++++%5CP%7Bg1%7D%7BP1%27%7D%7B-2%2C-1%7D%0A++++%5CP%7Bg1%7D%7BP1%27%7D%7B2%2C0%7D%0A++++%25lines+on+P2%27%0A++++%5CP%7Bg2%7D%7BP2%27%7D%7B-2%2C0%7D%0A++++%5CP%7Bg2%7D%7BP2%27%7D%7B2%2C-1%7D%0A%5Cend%7Bfmfgraph%2A%7D%0A%5Cend%7Bfmffile%7D%0A%5Cend%7Bdocument%7D)

Bu örnek aşağıdaki diyagramı üretir:

![](/files/2028ba84043f326a31eefe161e1dfbac9bc8285b)

### Çizgi stilleri

Yukarıdaki `photon` ve `fermion` çizgi stillerini gördük, ancak `feynmp` paket çok daha fazlasını destekler.

| Görünüm                                                                              | Ad(lar)                            |
| ------------------------------------------------------------------------------------ | ---------------------------------- |
| ![Feynmf-line-curly.png](/files/3cc2a376d6bb7d03737a79bde3f82294511f8637)            | gluon, kıvrımlı                    |
| ![Feynmf-line-dbl-curly.png](/files/f797347aa2b51473d733660bdfb1e84e711392f5)        | çift\_kıvrımlı                     |
| ![Feynmf-line-dashes.png](/files/11037bb60c62c2e59d19750c835f9a9b30ecde78)           | kesikler                           |
| ![Feynmf-line-dashed-arrow.png](/files/fa913759959c1d4933d5c5fcf936abb715664ec8)     | skaler, kesik\_ok                  |
| ![Feynmf-line-dbl-dashes.png](/files/617d59366d352f76cc6766c3d607dfc1919dc9ad)       | çift\_kesik                        |
| ![Feynmf-line-dbl-dashes-arrow.png](/files/2207fc59732f8053cd7c335038d2ebe3407aa1bf) | çift\_kesik\_ok                    |
| ![Feynmf-line-dots.png](/files/2e67e6e09a91a88d362325615adadf67ec723b9a)             | noktalar                           |
| ![Feynmf-line-dots-arrow.png](/files/2411098a7533973c8998c105c6c70452e87c08c7)       | hayalet, nokta\_ok                 |
| ![Feynmf-line-dbl-dots.png](/files/a15d6239ef5f42ef502de30fd577ad277cbdae5b)         | çift\_nokta                        |
| ![Feynmf-line-dbl-dots-arrow.png](/files/57e7d6e86eb6bdd8f233f4d5ddb735aa7238b67e)   | çift\_nokta\_ok                    |
|                                                                                      | hayalet                            |
| ![Feynmf-line-phantom-arrow.png](/files/e8e3ec67368ef704504ded95bd1872925df6cc47)    | hayalet\_ok                        |
| ![Feynmf-line-plain.png](/files/ddb83efd49ec88200c0656ba14711192aaf0a5f9)            | vanilya, düz                       |
| ![Feynmf-line-plain-arrow.png](/files/583a1cb5b9a65137cfd8829a2ed19180bd49b03e)      | fermiyon, elektron, kuark, düz\_ok |
| ![Feynmf-line-dbl-plain.png](/files/deacbe426ad46f55f621ed6515ca0a94d6814c9c)        | çift, çift\_düz                    |
| ![Feynmf-line-dbl-plain-arrow.png](/files/52aed30402a94427a386395c316f60300b2d0c79)  | çift\_ok, ağır, çift\_düz\_ok      |
| ![Feynmf-line-wiggly.png](/files/44d6ee603adda5f3403f13032f683ac0aff97e29)           | bozon, foton, dalgalı              |
| ![Feynmf-line-dbl-wiggly.png](/files/d04d089961389e903ba8f376547b2bf2a8b7ab21)       | çift\_dalgalı                      |
| ![Feynmf-line-zigzag.png](/files/e82adafd8460e4e178025b0f3d39520a5bd6ec44)           | zikzak                             |
| ![Feynmf-line-dbl-zigzag.png](/files/14e6c2b15a1d4cb4803c20188c96206347e39ad7)       | çift\_zikzak                       |

## Daha Fazla Okuma

Daha fazla bilgi için bakın:

* [Kimya formülleri](/latex/tr/alana-ozgu/02-chemistry-formulae.md)
* [Moleküler yörünge diyagramları](/latex/tr/alana-ozgu/04-molecular-orbital-diagrams.md)
* [TikZ paketi](/latex/tr/sekiller-ve-tablolar/05-tikz-package.md)
* [Diyagramları Doğrudan LaTeX'te Çizmek](/latex/tr/sekiller-ve-tablolar/04-picture-environment.md)
* [Görseller Ekleme](/latex/tr/daha-fazla-konu/27-inserting-images.md)
* [Yunanca harfler ve matematik sembolleri listesi](/latex/tr/matematik/11-list-of-greek-letters-and-math-symbols.md)
* [Bu **feynmf** paket dokümantasyonu](http://mirrors.ctan.org/macros/latex/contrib/feynmf/fmfman.pdf).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://ayakaleaf-pro.ayaka.space/latex/tr/alana-ozgu/03-feynman-diagrams.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
