Skip to content
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

Implement TBMT model for beam spin tracking #1027

Closed
MaxThevenet opened this issue Oct 23, 2023 · 3 comments · Fixed by #1071
Closed

Implement TBMT model for beam spin tracking #1027

MaxThevenet opened this issue Oct 23, 2023 · 3 comments · Fixed by #1071

Comments

@MaxThevenet
Copy link
Member

MaxThevenet commented Oct 23, 2023

From Kris' slides:
Screenshot 2023-10-25 at 16 53 30

@pots007
Copy link

pots007 commented Oct 23, 2023

Hey guys!
This'd be awesome! The algorithm for the implementation in FBPIC is detailed in the appendix of this paper. I think the only difficulty in FBPIC was with storing the 'old' momentum.
For FBPIC we have written a test to compare the spin evolution to the plane wave case, not sure if something similar would be applicable here.

@AlexanderSinn
Copy link
Member

Hello @pots007,
I am looking into adding this to HiPACE++ and I have a few questions regarding what is needed:

  • Do you need openpmd input for sx sy and sz? If so, should they be multiplied by h bar?
  • Do you need openpmd output for sx sy and sz?
  • Should there be a standalone initialization option (no openpmd) for sx, sy and sz? Should this be uniform or random on a sphere surface or both? Would this be dependent on the beam particle positions?
  • Should there be support for in-situ diagnostics with sx, sy and sz? If so what kind of moments should be collected?
  • Is sx^2 + sy^2 + sz^2 always equal to 1, or another constant value that is the same for all particles?  

@pots007
Copy link

pots007 commented Feb 15, 2024

Hey @AlexanderSinn ,
awesome, thanks for working on this! My thoughts would be:

  • Do you need openpmd input for sx sy and sz? If so, should they be multiplied by h bar? -> no, they are all normalised so just the 'raw' value is OK.
  • Do you need openpmd output for sx sy and sz? -> Yes, I've implemented them in FBPIC under 'spin/x' etc, similarly to momentum.
  • Should there be a standalone initialization option (no openpmd) for sx, sy and sz? Should this be uniform or random on a sphere surface or both? Would this be dependent on the beam particle positions? -> this is a tricky one. I think in the first instance, fixed values (eg sz=1 ) are fine - as long as the user-inputted values are normalised. We can think of more complex values later, what I did here may be a good starting point for discussions.
  • Should there be support for in-situ diagnostics with sx, sy and sz? If so what kind of moments should be collected? -> I am not sure what you mean here. I think OpenPMD output is fine.
  • Is sx^2 + sy^2 + sz^2 always equal to 1, or another constant value that is the same for all particles? -> it's always 1 for all particles.

Cheers!

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 a pull request may close this issue.

3 participants