Skip to content

Update for consistency with Gala#219

Open
The9Cat wants to merge 22 commits into
develfrom
galaUpdate
Open

Update for consistency with Gala#219
The9Cat wants to merge 22 commits into
develfrom
galaUpdate

Conversation

@The9Cat
Copy link
Copy Markdown
Member

@The9Cat The9Cat commented May 14, 2026

Feature update

The getAccel and getFields API now evaluate in the coordinate origin specified by the coefficients. Previous behavior required the user to supply the desired center.

Details

  • getAccel() has the same call signature in the API but now uses the center metadata fields in the registered coefficient instance so that the coordinates are simulation coordinates
  • getFields()' retains the original behavior. If one needs the same behavior as getAccel(), one supplies the optional boolean field origin=false`.

Warnings

While not formally an API-breaking change, any workflows that use either of these two member functions and assumed expansion origin will find that they now are using the original simulation origin. For this reason, I am basing this PR on devel.

Additional minor fix

Updated the public header target to include CUDA-specific files.

ToDo

  • Verify compilation
  • Check that this fixes the issue identified by @hfoote
  • Run other workflow regression tests

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the EXP basis evaluation APIs to be consistent with Gala by making getAccel() / getFields() evaluate in the coefficient-defined coordinate origin (with an opt-out for getFields(..., origin=true)), and adjusts header installation/including for CUDA-related headers.

Changes:

  • Add an origin boolean to Basis::getFields / getFieldsCoefs and plumb it through the pybind layer.
  • Shift computeAccel implementations to use the coefficient center (coefctr) so getAccel() operates in simulation coordinates.
  • Install CUDA .cuH headers publicly and update internal includes to use quoted form ("...").

Reviewed changes

Copilot reviewed 11 out of 11 changed files in this pull request and generated 9 comments.

Show a summary per file
File Description
pyEXP/BasisWrappers.cc Updates Python bindings/signatures and docstrings for the new origin behavior.
include/SLGridMP2.H Switch CUDA header includes to quoted form for installed-header resolution.
include/EmpCylSL.H Same include-path adjustment for CUDA headers.
include/cudaParticle.cuH Adjust include style to quoted form to work from installed include directories.
include/cudaMappingConstants.cuH Same include-path adjustment for CUDA headers.
include/BiorthCyl.H Consolidate/add CUDA includes under HAVE_LIBCUDA==1 with quoted includes.
include/BiorthCube.H Same CUDA include consolidation as BiorthCyl.H.
expui/CMakeLists.txt Adds CUDA .cuH headers to the public installed header set.
expui/BiorthBasis.cc Applies coefficient-center shifting inside computeAccel; updates an internal getFields call to use origin=true.
expui/BasisFactory.H Extends the public Basis API with origin parameter (virtual signature change).
expui/BasisFactory.cc Implements centering logic for getFields / getFieldsCoefs.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread expui/BasisFactory.cc Outdated
Comment thread expui/BasisFactory.H
Comment thread pyEXP/BasisWrappers.cc Outdated
Comment thread pyEXP/BasisWrappers.cc Outdated
Comment thread pyEXP/BasisWrappers.cc Outdated
Comment thread pyEXP/BasisWrappers.cc Outdated
Comment thread pyEXP/BasisWrappers.cc Outdated
Comment thread pyEXP/BasisWrappers.cc Outdated
Comment thread expui/BasisFactory.H Outdated
The9Cat and others added 4 commits May 14, 2026 17:22
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Agent-Logs-Url: https://github.com/EXP-code/EXP/sessions/5f75bca1-eb95-4f51-8ab6-9272eb114eca

Co-authored-by: The9Cat <25960766+The9Cat@users.noreply.github.com>
Copy link
Copy Markdown
Contributor

Copilot AI commented May 14, 2026

Just as a heads up, I was blocked by some firewall rules while working on your feedback. Expand below for details.

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • dl.google.com
    • Triggering command: /usr/lib/apt/methods/https /usr/lib/apt/methods/https (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

Copilot AI and others added 2 commits May 14, 2026 21:44
Agent-Logs-Url: https://github.com/EXP-code/EXP/sessions/56a9b4d8-bfcc-4bf8-9b5d-ccaa48888105

Co-authored-by: The9Cat <25960766+The9Cat@users.noreply.github.com>
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 11 out of 11 changed files in this pull request and generated 3 comments.

Comment thread expui/BasisFactory.cc Outdated
Comment thread pyEXP/BasisWrappers.cc
Comment thread pyEXP/BasisWrappers.cc
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 11 out of 11 changed files in this pull request and generated 12 comments.

Comment thread expui/BiorthBasis.cc
Comment on lines +1812 to +1816
// Shift to center
x -= coefctr(0);
y -= coefctr(1);
z -= coefctr(2);

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@copilot apply changes based on this feedback

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Implemented in d650ae1. Cylindrical::computeAccel now guards the R==0 case after centering, initializing in-plane components to zero and only performing the x/R, y/R conversion when R > 0.0.

Comment thread expui/BiorthBasis.cc
Comment on lines +2494 to +2498
// Shift to center
x -= coefctr(0);
y -= coefctr(1);
z -= coefctr(2);

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@copilot apply changes based on this feedback

Comment thread expui/BiorthBasis.cc
Comment on lines +3288 to +3292
// Shift to center
x -= coefctr(0);
y -= coefctr(1);
z -= coefctr(2);

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@copilot apply changes based on this feedback

Comment thread pyEXP/BasisWrappers.cc Outdated
Comment thread pyEXP/BasisWrappers.cc Outdated
Comment thread pyEXP/BasisWrappers.cc Outdated
Comment thread pyEXP/BasisWrappers.cc Outdated
Comment thread pyEXP/BasisWrappers.cc Outdated
Comment thread pyEXP/BasisWrappers.cc Outdated
Comment thread expui/BasisFactory.H Outdated
The9Cat and others added 9 commits May 15, 2026 08:25
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Copy link
Copy Markdown
Contributor

Copilot AI commented May 15, 2026

Just as a heads up, I was blocked by some firewall rules while working on your feedback. Expand below for details.

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • dl.google.com
    • Triggering command: /usr/lib/apt/methods/https /usr/lib/apt/methods/https (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants