From 67daea32f4a7f3c1037f2a70f3f29dfce145cf6b Mon Sep 17 00:00:00 2001 From: Takahiro Ueda Date: Tue, 27 Jan 2026 20:34:20 +0900 Subject: [PATCH] test(diagrams): compare vacuum bubbles with FeynGraph --- .gitignore | 12 ++ check/diagrams/vacuum-bubbles.frm | 230 ++++++++++++++++++++++++++++++ 2 files changed, 242 insertions(+) create mode 100644 check/diagrams/vacuum-bubbles.frm diff --git a/.gitignore b/.gitignore index 8ac1b6dfe..62356dca4 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,8 @@ *.o *.exe +*.str + *.gcno *.gcda *.gcov @@ -69,3 +71,13 @@ doc/manual/version.tex doc/devref/devref/ doc/manual/manual/ + +/.diagrams_cache/ +/check/diagrams/.diagrams_cache/ +/diagrams.out +/feyngraph.jinja +/feyngraph.toml +/qgraf.dat +/qgraf.mdl +/qgraf.out +/qgraf.sty diff --git a/check/diagrams/vacuum-bubbles.frm b/check/diagrams/vacuum-bubbles.frm new file mode 100644 index 000000000..ba6c76347 --- /dev/null +++ b/check/diagrams/vacuum-bubbles.frm @@ -0,0 +1,230 @@ +* Compares the diagram generator with others. +* +* When run outside the testsuite, this file must be on the include path. +* For example, run: +* form -D TEST=XXX -I check/diagrams vacuum-bubbles.frm +* +#ifndef `TEST' + #message Use -D TEST=XXX + #terminate +#else + #include `NAME_' # `TEST' +#endif +.end + +*--#[ feyngraph_phi3_2_none : +#include- diagrams.h +#call DoComparison(feyngraph,phi3,in=,out=,loops=2,form_options=,feyngraph_options=,options=cacheread,cachewrite) +.end +assert succeeded? +assert nterms("F1", 0) == 2 +assert nterms("F1") == 0 +assert nterms("F2") == 0 +*--#] feyngraph_phi3_2_none : +*--#[ feyngraph_phi3_2_onepi_opicomponents1 : +#include- diagrams.h +#call DoComparison(feyngraph,phi3,in=,out=,loops=2,form_options=ONEPI_,feyngraph_options=opi_components=1,options=cacheread,cachewrite) +.end +assert succeeded? +assert nterms("F1", 0) == 1 +assert nterms("F1") == 0 +assert nterms("F2") == 0 +*--#] feyngraph_phi3_2_onepi_opicomponents1 : +*--#[ feyngraph_phi3_3_none : +#include- diagrams.h +#call DoComparison(feyngraph,phi3,in=,out=,loops=3,form_options=,feyngraph_options=,options=cacheread,cachewrite) +.end +assert succeeded? +assert nterms("F1", 0) == 5 +assert nterms("F1") == 0 +assert nterms("F2") == 0 +*--#] feyngraph_phi3_3_none : +*--#[ feyngraph_phi3_3_onepi_opicomponents1 : +#include- diagrams.h +#call DoComparison(feyngraph,phi3,in=,out=,loops=3,form_options=ONEPI_,feyngraph_options=opi_components=1,options=cacheread,cachewrite) +.end +assert succeeded? +assert nterms("F1", 0) == 2 +assert nterms("F1") == 0 +assert nterms("F2") == 0 +*--#] feyngraph_phi3_3_onepi_opicomponents1 : +*--#[ feyngraph_phi3_4_none : +#include- diagrams.h +#call DoComparison(feyngraph,phi3,in=,out=,loops=4,form_options=,feyngraph_options=,options=cacheread,cachewrite) +.end +assert succeeded? +assert nterms("F1", 0) == 17 +assert nterms("F1") == 0 +assert nterms("F2") == 0 +*--#] feyngraph_phi3_4_none : +*--#[ feyngraph_phi3_4_onepi_opicomponents1 : +#include- diagrams.h +#call DoComparison(feyngraph,phi3,in=,out=,loops=4,form_options=ONEPI_,feyngraph_options=opi_components=1,options=cacheread,cachewrite) +.end +assert succeeded? +assert nterms("F1", 0) == 5 +assert nterms("F1") == 0 +assert nterms("F2") == 0 +*--#] feyngraph_phi3_4_onepi_opicomponents1 : +*--#[ feyngraph_phi3_5_none : +#include- diagrams.h +#call DoComparison(feyngraph,phi3,in=,out=,loops=5,form_options=,feyngraph_options=,options=cacheread,cachewrite) +.end +assert succeeded? +assert nterms("F1", 0) == 71 +assert nterms("F1") == 0 +assert nterms("F2") == 0 +*--#] feyngraph_phi3_5_none : +*--#[ feyngraph_phi3_5_onepi_opicomponents1 : +#include- diagrams.h +#call DoComparison(feyngraph,phi3,in=,out=,loops=5,form_options=ONEPI_,feyngraph_options=opi_components=1,options=cacheread,cachewrite) +.end +assert succeeded? +assert nterms("F1", 0) == 16 +assert nterms("F1") == 0 +assert nterms("F2") == 0 +*--#] feyngraph_phi3_5_onepi_opicomponents1 : +*--#[ feyngraph_phi4_2_none : +#include- diagrams.h +#call DoComparison(feyngraph,phi4,in=,out=,loops=2,form_options=,feyngraph_options=,options=cacheread,cachewrite) +.end +assert succeeded? +assert nterms("F1", 0) == 1 +assert nterms("F1") == 0 +assert nterms("F2") == 0 +*--#] feyngraph_phi4_2_none : +*--#[ feyngraph_phi4_2_onepi_opicomponents1 : +#include- diagrams.h +#call DoComparison(feyngraph,phi4,in=,out=,loops=2,form_options=ONEPI_,feyngraph_options=opi_components=1,options=cacheread,cachewrite) +.end +assert succeeded? +assert nterms("F1", 0) == 1 +assert nterms("F1") == 0 +assert nterms("F2") == 0 +*--#] feyngraph_phi4_2_onepi_opicomponents1 : +*--#[ feyngraph_phi4_3_none : +#include- diagrams.h +#call DoComparison(feyngraph,phi4,in=,out=,loops=3,form_options=,feyngraph_options=,options=cacheread,cachewrite) +.end +assert succeeded? +assert nterms("F1", 0) == 2 +assert nterms("F1") == 0 +assert nterms("F2") == 0 +*--#] feyngraph_phi4_3_none : +*--#[ feyngraph_phi4_3_onepi_opicomponents1 : +#include- diagrams.h +#call DoComparison(feyngraph,phi4,in=,out=,loops=3,form_options=ONEPI_,feyngraph_options=opi_components=1,options=cacheread,cachewrite) +.end +assert succeeded? +assert nterms("F1", 0) == 2 +assert nterms("F1") == 0 +assert nterms("F2") == 0 +*--#] feyngraph_phi4_3_onepi_opicomponents1 : +*--#[ feyngraph_phi4_4_none : +#include- diagrams.h +#call DoComparison(feyngraph,phi4,in=,out=,loops=4,form_options=,feyngraph_options=,options=cacheread,cachewrite) +.end +assert succeeded? +assert nterms("F1", 0) == 4 +assert nterms("F1") == 0 +assert nterms("F2") == 0 +*--#] feyngraph_phi4_4_none : +*--#[ feyngraph_phi4_4_onepi_opicomponents1 : +#include- diagrams.h +#call DoComparison(feyngraph,phi4,in=,out=,loops=4,form_options=ONEPI_,feyngraph_options=opi_components=1,options=cacheread,cachewrite) +.end +assert succeeded? +assert nterms("F1", 0) == 4 +assert nterms("F1") == 0 +assert nterms("F2") == 0 +*--#] feyngraph_phi4_4_onepi_opicomponents1 : +*--#[ feyngraph_phi4_5_none : +#include- diagrams.h +#call DoComparison(feyngraph,phi4,in=,out=,loops=5,form_options=,feyngraph_options=,options=cacheread,cachewrite) +.end +assert succeeded? +assert nterms("F1", 0) == 10 +assert nterms("F1") == 0 +assert nterms("F2") == 0 +*--#] feyngraph_phi4_5_none : +*--#[ feyngraph_phi4_5_onepi_opicomponents1 : +#include- diagrams.h +#call DoComparison(feyngraph,phi4,in=,out=,loops=5,form_options=ONEPI_,feyngraph_options=opi_components=1,options=cacheread,cachewrite) +.end +assert succeeded? +assert nterms("F1", 0) == 10 +assert nterms("F1") == 0 +assert nterms("F2") == 0 +*--#] feyngraph_phi4_5_onepi_opicomponents1 : +*--#[ feyngraph_qcd_2_none : +#include- diagrams.h +#call DoComparison(feyngraph,qcd,in=,out=,loops=2,form_options=,feyngraph_options=,options=cacheread,cachewrite) +.end +assert succeeded? +assert nterms("F1", 0) == 10 +assert nterms("F1") == 0 +assert nterms("F2") == 0 +*--#] feyngraph_qcd_2_none : +*--#[ feyngraph_qcd_2_onepi_opicomponents1 : +#include- diagrams.h +#call DoComparison(feyngraph,qcd,in=,out=,loops=2,form_options=ONEPI_,feyngraph_options=opi_components=1,options=cacheread,cachewrite) +.end +assert succeeded? +assert nterms("F1", 0) == 4 +assert nterms("F1") == 0 +assert nterms("F2") == 0 +*--#] feyngraph_qcd_2_onepi_opicomponents1 : +*--#[ feyngraph_qcd_3_none : +#include- diagrams.h +#call DoComparison(feyngraph,qcd,in=,out=,loops=3,form_options=,feyngraph_options=,options=cacheread,cachewrite) +.end +assert succeeded? +assert nterms("F1", 0) == 74 +assert nterms("F1") == 0 +assert nterms("F2") == 0 +*--#] feyngraph_qcd_3_none : +*--#[ feyngraph_qcd_3_onepi_opicomponents1 : +#include- diagrams.h +#call DoComparison(feyngraph,qcd,in=,out=,loops=3,form_options=ONEPI_,feyngraph_options=opi_components=1,options=cacheread,cachewrite) +.end +assert succeeded? +assert nterms("F1", 0) == 19 +assert nterms("F1") == 0 +assert nterms("F2") == 0 +*--#] feyngraph_qcd_3_onepi_opicomponents1 : +*--#[ feyngraph_qcd_4_none : +#include- diagrams.h +#call DoComparison(feyngraph,qcd,in=,out=,loops=4,form_options=,feyngraph_options=,options=cacheread,cachewrite) +.end +assert succeeded? +assert nterms("F1", 0) == 787 +assert nterms("F1") == 0 +assert nterms("F2") == 0 +*--#] feyngraph_qcd_4_none : +*--#[ feyngraph_qcd_4_onepi_opicomponents1 : +#include- diagrams.h +#call DoComparison(feyngraph,qcd,in=,out=,loops=4,form_options=ONEPI_,feyngraph_options=opi_components=1,options=cacheread,cachewrite) +.end +assert succeeded? +assert nterms("F1", 0) == 118 +assert nterms("F1") == 0 +assert nterms("F2") == 0 +*--#] feyngraph_qcd_4_onepi_opicomponents1 : +*--#[ feyngraph_qcd_5_none : +#include- diagrams.h +#call DoComparison(feyngraph,qcd,in=,out=,loops=5,form_options=,feyngraph_options=,options=cacheread,cachewrite) +.end +assert succeeded? +assert nterms("F1", 0) == 12034 +assert nterms("F1") == 0 +assert nterms("F2") == 0 +*--#] feyngraph_qcd_5_none : +*--#[ feyngraph_qcd_5_onepi_opicomponents1 : +#include- diagrams.h +#call DoComparison(feyngraph,qcd,in=,out=,loops=5,form_options=ONEPI_,feyngraph_options=opi_components=1,options=cacheread,cachewrite) +.end +assert succeeded? +assert nterms("F1", 0) == 1194 +assert nterms("F1") == 0 +assert nterms("F2") == 0 +*--#] feyngraph_qcd_5_onepi_opicomponents1 :