Skip to main content

Module deriv

Module deriv 

Source
Expand description

Geometric (nuclear-coordinate) first derivatives of integrals (L2).

Derivatives are assembled from shifted-angular-momentum value integrals via the Gaussian center-derivative relation — no new recurrences. For a primitive Cartesian Gaussian g_a on center A,

  ∂/∂A_i g_a = 2α · g_{a+1_i} − a_i · g_{a−1_i}

(raise / lower the angular momentum along axis i), with α the primitive exponent and a_i the Cartesian power along i. Because the operator of a one- or two-electron integral does not depend on the basis-function center, ∂/∂A_i ⟨g_a|O|…⟩ = ⟨∂/∂A_i g_a|O|…⟩, so the derivative of any integral block is this same fixed linear combination of the value blocks evaluated at l±1 on the differentiated index. The existing engines compute those shifted blocks; this module only combines them.

§The weight is folded by the caller (engine-agnostic)

The weight is per primitive. Rather than bake an exponent into the combiner — which would only work for a per-primitive engine — the raised block passed to accumulate_center_derivative is already weighted by . Every value engine takes a scale, so:

  • the per-primitive Rys path evaluates the raised primitive block with scale = 2α directly;
  • the contracted OS/HGP path folds into each primitive’s contraction coefficient (coeff_p · 2α_p) when it evaluates the raised contracted block.

Both yield the same -weighted raised block, so one combiner serves both engines and the one- and two-electron paths alike.

§Convention

The result is ∂/∂(center of the differentiated shell) — the basis-function (center) derivative with respect to the position of the center the differentiated angular-momentum index sits on. The sign / which-center convention is documented above.

Structs§

AxisDeriv
Geometry of one center-derivative step: which angular-momentum index of a row-major block is being differentiated, along which Cartesian axis, and how that index is embedded in the block.

Functions§

accumulate_center_derivative
Accumulate the center-derivative of one row-major block along one Cartesian axis of one angular-momentum index (geometry in d).