From 93b94c8e15ccc7bbb210de49a090a258a526835e Mon Sep 17 00:00:00 2001 From: ctpeterson Date: Thu, 12 Dec 2024 11:22:23 -0500 Subject: [PATCH] Added interface for HISQ smearing --- src/gauge/fat7lderiv.nim | 27 ++++++++++++-- src/gauge/hisqsmear.nim | 80 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 104 insertions(+), 3 deletions(-) create mode 100644 src/gauge/hisqsmear.nim diff --git a/src/gauge/fat7lderiv.nim b/src/gauge/fat7lderiv.nim index 5ba34fd..fa55165 100644 --- a/src/gauge/fat7lderiv.nim +++ b/src/gauge/fat7lderiv.nim @@ -328,10 +328,29 @@ proc fat7lDeriv(deriv: auto, gauge: auto, mid: auto, coef: Fat7lCoefs, perf.flops += nflops * gauge[0].l.localGeom.prod perf.secs += getElapsedTime() -proc fat7lDeriv(deriv: auto, gauge: auto, mid: auto, coef: Fat7lCoefs, - perf: var PerfInfo) = - fat7lDeriv(deriv, gauge, mid, coef, deriv, gauge, mid, 0.0, perf) +proc fat7lDeriv*( + mid: auto, + deriv: auto, + gauge: auto, + coef: Fat7lCoefs, + llderiv: auto, + llgauge: auto, + naik: float, + perf: var PerfInfo + ) = + var (fx,fxl) = (newOneOf(deriv),newOneOf(llderiv)) + fat7lderiv(fx,gauge,deriv,coef,fxl,llgauge,llderiv,naik,perf) + threads: + for mu in 0..