diff --git a/src/experimental/stagag.nim b/src/experimental/stagag.nim index 71bc7f2..5613c75 100644 --- a/src/experimental/stagag.nim +++ b/src/experimental/stagag.nim @@ -352,10 +352,10 @@ proc addFf(g: GaugeV, i = 0) = var ffList = newSeqWith(1+hmasses.len, newSeq[int](0)) var ffeList = newSeqWith(1+hmasses.len, newSeq[FloatV](0)) -proc addFx(veps: FloatV, p0,g: GaugeV) = +proc addFx(veps: FloatV; p0,g: GaugeV; i0,i1: int) = var p = p0 if nf == 0: return - for i in 0..hmasses.len: + for i in i0..i1: addFf(g, i) pushMom() var va: FloatV @@ -376,7 +376,15 @@ proc addFx(veps: FloatV, p0,g: GaugeV) = proc addF(veps: FloatV) = if nf == 0: return - addFx(veps, momvs[^1], gaugevs[^1]) + addFx(veps, momvs[^1], gaugevs[^1], 0, hmasses.len) + +proc addF(veps: FloatV, i: int) = + if nf == 0: return + addFx(veps, momvs[^1], gaugevs[^1], i, i) + +proc addF(veps: FloatV; i0,i1: int) = + if nf == 0: return + addFx(veps, momvs[^1], gaugevs[^1], i0, i1) proc addFF(va, vb: FloatV) = if nf == 0: return @@ -387,7 +395,7 @@ proc addFF(va, vb: FloatV) = exp(momvs[^1], vbx, momvs[^2]) pushMom() mul(momvs[^1], momvs[^2], gaugevs[^1]) - addFx(va, p, momvs[^1]) + addFx(va, p, momvs[^1], 0, hmasses.len) proc setupMDx = pushTemp() @@ -461,8 +469,8 @@ proc setupMDababa = proc setupMDg5f2 = if pt0 == 0: pt0 = 0.1 if pt1 == 0: pt1 = 0.1 - if pg0 == 0: pg0 = 0.1 - if pg1 == 0: pg1 = 0.2 + if pg0 == 0: pg0 = 0.14 + if pg1 == 0: pg1 = 0.24 let t0 = vtau * pushParam(pt0) let t02 = 2 * t0 let t1 = vtau * pushParam(pt1) @@ -487,6 +495,43 @@ proc setupMDg5f2 = addG(g0) addT(t0) +proc setupMDg5f23 = + if pt0 == 0: pt0 = 0.09 + if pt1 == 0: pt1 = 0.13 + if pg0 == 0: pg0 = 0.13 + if pg1 == 0: pg1 = 0.23 + if pf0 == 0: pf0 = 0.26 + let t0 = vtau * pushParam(pt0) + let t02 = 2 * t0 + let t1 = vtau * pushParam(pt1) + let t2 = 0.5*vtau - t0 - t1 + let g0 = vtau * pushParam(pg0) + let g1 = vtau * pushParam(pg1) + let g2 = vtau - 2*( g0 + g1 ) + let f00 = vtau * pushParam(pf0) + let f01 = vtau - 2*f00 + let f10 = 0.5*vtau + let i0 = hmasses.len + let i1 = hmasses.len - 1 + addT(t0) + for i in 0..