SOA spherical tensor VGH - #6181
Open
shivupa wants to merge 2 commits into
Open
Conversation
ye-luo
reviewed
Aug 31, 2026
Contributor
|
Test this please |
test. Common recurrence function between VGL and VGH.
shivupa
force-pushed
the
SoaSphericalTensor_evaluateVGH
branch
from
September 3, 2026 17:07
fada3c4 to
a87e551
Compare
Contributor
|
Could you move all the function definition currently already outside the SoaSphericalTensor class to the cpp file? We don't need to keep them in the header file. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Proposed changes
Paul pinged me about progress on #5391 so I started looking into this again! Very exciting.
Implements
SoaSphericalTensor<T>::evaluateVGHneeded for backflow on molecules eventually.I started trying to make a molecular backflow test (found while trying to make a test our of the Li2 results of arXiv:0801.0518).
This was the first missing piece evaluateVGHGH will come in a separate PR, which is needed for optimizations.
In this we apply the derivative recurrence relations to the gradient to get the Hessian.
The storage was sized only for VGL, but I resized the storage for future VGHGH even though the last elements (10-19) are not used yet. This is consistent with SoaCartesianTensor.
I used Codegen as the cartesian path does even though the code is actually simpler since we can apply the recurrence relations.
Sympy checks for the recurrence relations and tests for l<=6 and finite difference tests.
Code generated with GPT 5.6 Sol/Max using the Pi harness and reviewed using Claude Opus 5/Medium.
As far as I can tell the storage changes affect offload.
What type(s) of changes does this code introduce?
Does this introduce a breaking change?
What systems has this change been tested on?
Ryzen 9950x workstation, Linux, GCC
Checklist