FORMSoft - An automated tool for 1-loop soft anomalous dimension calculation

git clone git://git.bcharge.de/FORMSoft.git

About | Log | Files | Refs

commit 1eb4724c7e3ae3e569226f925b7dab9e207c4180
parent 06a021b429651ec671f0fad7cd26e412bb115502
Author: Bakar Chargeishvili <bakar@bcharge.de>
Date:   Mon, 20 Jun 2022 18:17:25 +0200

Simplification rules for gg

Diffstat:
Mf2m.sh | 38+++++++++++++++++++++++++++++++-------
1 file changed, 31 insertions(+), 7 deletions(-)

diff --git a/f2m.sh b/f2m.sh @@ -60,6 +60,7 @@ cat <<EOF >> simp.py var = list() pi = sy.pi a = sy.Symbol('alpha_s') +Nc = sy.Symbol('N_c') EOF echo "$add_vars" >> simp.py cat <<EOF >> simp.py @@ -68,16 +69,39 @@ for v in var: #expr = sy.fraction(sy.sympify(v[0]).simplify()) expr = (sy.sympify(v[0]).expand()*2*pi).simplify() #expr = sy.fraction(2*sy.sympify(v[0]).collect(pi)) - expr = sy.sympify(runFORM(expr)) - g=re.sub('G(\d+)x(\d+)',r"\\\\Gamma_{\1,\2}",v[1]) + expr = sy.sympify(runFORM(expr)).simplify() + expr = sy.fraction(expr) + num = expr[0] + for i in range(10): + num=sy.collect(num,Nc**2-i) + num=sy.collect(num,Nc-i) + num=sy.collect(num,Nc+i) + num=sy.collect(num,-Nc*(Nc-1)+2) + num=sy.collect(num,Nc*(Nc+1)-2) + if(len(num.args)==2): + pre = sy.latex(num.args[0]/expr[1]) + num = num.args[1] + elif(expr[1] != 1): + pre = sy.latex(1/expr[1]) + else: + pre = '' + g=re.sub('G(\d+)x(\d+)',r"\\\\Gamma^{(1)}_{\1,\2}",v[1]) prefact = sy.latex(a/(2*pi)) - rhs = prefact+'&\\\\breaktowidth{0.9\\\\linewidth}{\\\\delimiterswithbreaks{[}{]}{' - rhs += sy.latex(expr) - rhs += '}}' - if expr == 0: + prefact = '' + if(pre!=''): + rhs = prefact+pre+'\\\\breaktowidth{0.9\\\\linewidth}{\\\\delimiterswithbreaks{[}{]}{' + else: + rhs = '\\\\breaktowidth{0.9\\\\linewidth}{' + #rhs += re.sub(r"\\\\left\\((.*)\\\\right\\)",r"\\\\delimiterswithbreaks{(}{)}{\1}",sy.latex(num)) + rhs += sy.latex(num) + if(pre!=''): + rhs += '}}' + else: + rhs += '}' + if num == 0: rhs = 0 - print("{0}={1}\\\\nonumber \\\\\\\\".format(g,rhs)) + print("{0}=&{1}\\\\nonumber \\\\\\\\".format(g,rhs)) EOF ipython simp.py > result.txt