From fc5de81d706fd282db40508f6e5324418c240c39 Mon Sep 17 00:00:00 2001 From: tgiani Date: Mon, 11 Nov 2024 16:14:21 +0100 Subject: [PATCH] missing entries in as1aem1 --- .../unpolarized/spacelike/as1aem1.rs | 53 ++++++++++++++++++- 1 file changed, 52 insertions(+), 1 deletion(-) diff --git a/crates/ekore/src/anomalous_dimensions/unpolarized/spacelike/as1aem1.rs b/crates/ekore/src/anomalous_dimensions/unpolarized/spacelike/as1aem1.rs index 917ea45a7..19f598466 100644 --- a/crates/ekore/src/anomalous_dimensions/unpolarized/spacelike/as1aem1.rs +++ b/crates/ekore/src/anomalous_dimensions/unpolarized/spacelike/as1aem1.rs @@ -2,7 +2,9 @@ use crate::cmplx; use num::complex::Complex; -use crate::constants::{ed2, eu2, uplike_flavors, CA, CF, NC, TR, ZETA2, ZETA3}; +use crate::constants::{ + ed2, eu2, uplike_flavors, ChargeCombinations, CA, CF, NC, TR, ZETA2, ZETA3, +}; use crate::harmonics::cache::{Cache, K}; /// Compute the $O(a_s^1a_{em}^1)$ photon-quark anomalous dimension. @@ -191,3 +193,52 @@ pub fn gamma_nsm(c: &mut Cache, _nf: u8) -> Complex { CF * result } + +/// Compute the $O(a_s^1a_{em}^1)$ singlet sector. +pub fn gamma_singlet(c: &mut Cache, nf: u8) -> [[Complex; 4]; 4] { + let cc = ChargeCombinations { nf }; + // let e2avg = cc.e2avg(); + // let vue2m = cc.vue2m(); + // let vde2m = cc.vde2m(); + // let e2delta = cc.e2delta(); + let e2_tot = nf as f64 * cc.e2avg(); + + [ + [ + e2_tot * gamma_gg(c, nf), + e2_tot * gamma_gph(c, nf), + cc.e2avg() * gamma_gq(c, nf), + cc.vue2m() * gamma_gq(c, nf), + ], + [ + e2_tot * gamma_phg(c, nf), + gamma_phph(c, nf), + cc.e2avg() * gamma_phq(c, nf), + cc.vue2m() * gamma_phq(c, nf), + ], + [ + cc.e2avg() * gamma_qg(c, nf), + cc.e2avg() * gamma_qph(c, nf), + cc.e2avg() * gamma_nsp(c, nf), + cc.vue2m() * gamma_nsp(c, nf), + ], + [ + cc.vde2m() * gamma_qg(c, nf), + cc.vde2m() * gamma_qph(c, nf), + cc.vde2m() * gamma_nsp(c, nf), + cc.e2delta() * gamma_nsp(c, nf), + ], + ] +} + +/// Compute the $O(a_s^1a_{em}^1)$ valence sector. +pub fn gamma_valence(c: &mut Cache, nf: u8) -> [[Complex; 2]; 2] { + let cc = ChargeCombinations { nf }; + [ + [cc.e2avg() * gamma_nsm(c, nf), cc.vue2m() * gamma_nsm(c, nf)], + [ + cc.vde2m() * gamma_nsm(c, nf) * gamma_nsm(c, nf), + cc.e2delta() * gamma_nsm(c, nf), + ], + ] +}