-
Notifications
You must be signed in to change notification settings - Fork 31
Quad spin push #1219
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: development
Are you sure you want to change the base?
Quad spin push #1219
Conversation
for more information, see https://pre-commit.ci
for more information, see https://pre-commit.ci
for more information, see https://pre-commit.ci
Co-authored-by: Axel Huebl <[email protected]>
for more information, see https://pre-commit.ci
for more information, see https://pre-commit.ci
for more information, see https://pre-commit.ci
Co-authored-by: Axel Huebl <[email protected]>
|
It remains to choose the best location to apply the spin push. Below are a few options:
Since this will impact the future structure of the spin tracking, it would be good to have some discussion. |
|
Discussed today: let us put it as a separate, conditional spin push (kernel) in PushAll for now, which works for all linear elements (2) We later on must reside to 3., when we integrate higher order elements where external field and spin update are integrated. For that, we will fuse the kernels, but must build machinery that keeps it cost-neutral for non-spin simulations. |
|
I tried naively to access the function /Users/cemitch/src/impactx/src/particles/PushAll.H:67:25: error: no member named 'spin_push' in 'impactx::elements::Programmable' There must be a template that needs to be modified to do this call correctly. |
This PR adds the update of the spin vector in a (linear) Quad element.
This relies on PR #1226.