154 lines
4.3 KiB
Plaintext
154 lines
4.3 KiB
Plaintext
{
|
|
"cells": [
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 95,
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"using Combinatorics"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 96,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"data": {
|
|
"text/plain": [
|
|
"num_diagrams_small_form (generic function with 3 methods)"
|
|
]
|
|
},
|
|
"metadata": {},
|
|
"output_type": "display_data"
|
|
}
|
|
],
|
|
"source": [
|
|
"function num_diagrams(m::Int, e::Int, u::Int = 0, t::Int = 0)\n",
|
|
" n = e + u + t\n",
|
|
" return Int(factorial(3n-3) / factorial(2n-1)) * binomial(m+3n-3, 3n-3) * factorial(m) * factorial(e) * factorial(u) * factorial(t)\n",
|
|
"end\n",
|
|
"\n",
|
|
"function num_diagrams_small_form(m::Int, e::Int, u::Int = 0, t::Int = 0)\n",
|
|
" n = e + u + t\n",
|
|
" return Int(factorial(m+3n-3) / factorial(2n-1)) * factorial(e) * factorial(u) * factorial(t)\n",
|
|
"end"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 97,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"8\n",
|
|
"8\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"# Trident:\n",
|
|
"println(num_diagrams(1, 2))\n",
|
|
"println(num_diagrams_small_form(1, 2))"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 98,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"[2, 6, 24, 120, 720, 5040, 40320]\n",
|
|
"[2, 6, 24, 120, 720, 5040, 40320]\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"# n-Photon Compton:\n",
|
|
"println([num_diagrams(n, 1) for n in 2:8])\n",
|
|
"println([num_diagrams_small_form(n, 1) for n in 2:8])"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 99,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"[2, 36, 1728, 158400, 23587200, 5181926400]\n",
|
|
"[2, 36, 1728, 158400, 23587200, 5181926400]\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"# fermion scattering\n",
|
|
"println([num_diagrams(0, n) for n in 2:7])\n",
|
|
"println([num_diagrams_small_form(0, n) for n in 2:7])"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 112,
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"\\rowcolor[HTML]{9B9B9B}1 && 1 & 0 & 0 & 1 & 1 & 2 & 6 & 24 & 120 \\\\ \\hline\n",
|
|
"\\rowcolor[HTML]{C0C0C0}2 && 1 & 1 & 0 & 1 & 4 & 20 & 120 & 840 & 6720 \\\\ \\hline\n",
|
|
"\\rowcolor[HTML]{9B9B9B}2 && 2 & 0 & 0 & 2 & 8 & 40 & 240 & 1680 & 13440 \\\\ \\hline\n",
|
|
"\\rowcolor[HTML]{C0C0C0}3 && 1 & 1 & 1 & 6 & 42 & 336 & 3024 & 30240 & 332640 \\\\ \\hline\n",
|
|
"\\rowcolor[HTML]{9B9B9B}3 && 2 & 1 & 0 & 12 & 84 & 672 & 6048 & 60480 & 665280 \\\\ \\hline\n",
|
|
"\\rowcolor[HTML]{C0C0C0}3 && 3 & 0 & 0 & 36 & 252 & 2016 & 18144 & 181440 & 1995840 \\\\ \\hline\n",
|
|
"\\rowcolor[HTML]{9B9B9B}4 && 2 & 1 & 1 & 144 & 1440 & 15840 & 190080 & 2471040 & 34594560 \\\\ \\hline\n",
|
|
"\\rowcolor[HTML]{C0C0C0}4 && 2 & 2 & 0 & 288 & 2880 & 31680 & 380160 & 4942080 & 69189120 \\\\ \\hline\n",
|
|
"\\rowcolor[HTML]{9B9B9B}4 && 3 & 1 & 0 & 432 & 4320 & 47520 & 570240 & 7413120 & 103783680 \\\\ \\hline\n",
|
|
"\\rowcolor[HTML]{C0C0C0}4 && 4 & 0 & 0 & 1728 & 17280 & 190080 & 2280960 & 29652480 & 415134720 \\\\ \\hline\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"# tables\n",
|
|
"i = 0\n",
|
|
"nums = [[1, 0, 0], [1, 1, 0], [2, 0, 0], [1, 1, 1], [2, 1, 0], [3, 0, 0], [2, 1, 1], [2, 2, 0], [3, 1, 0], [4, 0, 0]]\n",
|
|
"for (e, u, t) in nums\n",
|
|
" i += 1\n",
|
|
" if (u + t + e == 0) continue end\n",
|
|
" if (i % 2 == 0) \n",
|
|
" print(\"\\\\rowcolor[HTML]{C0C0C0}\")\n",
|
|
" else\n",
|
|
" print(\"\\\\rowcolor[HTML]{9B9B9B}\")\n",
|
|
" end\n",
|
|
" println(\"$(e + u + t) && $e & $u & $t & $(num_diagrams(0, e, u, t)) & $(num_diagrams(1, e, u, t)) & $(num_diagrams(2, e, u, t)) & $(num_diagrams(3, e, u, t)) & $(num_diagrams(4, e, u, t)) & $(num_diagrams(5, e, u, t)) \\\\\\\\ \\\\hline\")\n",
|
|
"end"
|
|
]
|
|
}
|
|
],
|
|
"metadata": {
|
|
"kernelspec": {
|
|
"display_name": "Julia 1.9.4",
|
|
"language": "julia",
|
|
"name": "julia-1.9"
|
|
},
|
|
"language_info": {
|
|
"file_extension": ".jl",
|
|
"mimetype": "application/julia",
|
|
"name": "julia",
|
|
"version": "1.9.4"
|
|
}
|
|
},
|
|
"nbformat": 4,
|
|
"nbformat_minor": 2
|
|
}
|