From ba3d6123eeea9931a327c85635e2cd0c7f5b96be Mon Sep 17 00:00:00 2001 From: Eduard Valeyev Date: Fri, 17 Nov 2023 12:19:11 -0500 Subject: [PATCH] =?UTF-8?q?[=CF=83pV=CF=83p]=20completed=20W0=20CR?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../libint/comp_1_\317\203pV\317\203p_1.h" | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git "a/src/bin/libint/comp_1_\317\203pV\317\203p_1.h" "b/src/bin/libint/comp_1_\317\203pV\317\203p_1.h" index 4f2fa68fc..37475ef5c 100644 --- "a/src/bin/libint/comp_1_\317\203pV\317\203p_1.h" +++ "b/src/bin/libint/comp_1_\317\203pV\317\203p_1.h" @@ -65,12 +65,23 @@ CR_1_σpVσp_1::CR_1_σpVσp_1(const SafePtr< TargetType >& Tint, GenIntegralSet_1_1> factory(this); - F Dx_a{a}; Dx_a.deriv().inc(1); - F Dx_b{b}; Dx_b.deriv().inc(1); + constexpr auto x = 0; + constexpr auto y = 1; + constexpr auto z = 2; + + // (a|W0|b) = (d a/dAx | V | d b/dBx) + (d a/dAy | V | d b/dBy) + (d a/dAz | V | d b/dBz) + F Dx_a{a}; Dx_a.deriv().inc(x); + F Dx_b{b}; Dx_b.deriv().inc(x); auto Dx_a_V_Dx_b = factory.make_child(Dx_a, Dx_b, zero_m); + F Dy_a{a}; Dy_a.deriv().inc(y); + F Dy_b{b}; Dy_b.deriv().inc(y); + auto Dy_a_V_Dy_b = factory.make_child(Dy_a, Dy_b, zero_m); + F Dz_a{a}; Dz_a.deriv().inc(z); + F Dz_b{b}; Dz_b.deriv().inc(z); + auto Dz_a_V_Dz_b = factory.make_child(Dz_a, Dz_b, zero_m); if (is_simple()) { - expr_ = Dx_a_V_Dx_b; // smth like this - nflops_ += 0; + expr_ = Scalar(-1)*(Dx_a_V_Dx_b + Dy_a_V_Dy_b + Dz_a_V_Dz_b); // smth like this + nflops_ += 3; } } // CR_1_σpVσp_1::CR_1_σpVσp_1