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

Laser with non-electron plasma #1002

Conversation

AlexanderSinn
Copy link
Member

@AlexanderSinn AlexanderSinn commented Jul 31, 2023

  • Small enough (< few 100s of lines), otherwise it should probably be split into smaller PRs
  • Tested (describe the tests in the PR description)
  • Runs on GPU (basic: the code compiles and run well with the new module)
  • Contains an automated test (checksum and/or comparison with theory)
  • Documented: all elements (classes and their members, functions, namespaces, etc.) are documented
  • Constified (All that can be const is const)
  • Code is clean (no unwanted comments, )
  • Style and code conventions are respected at the bottom of https://github.com/Hi-PACE/hipace
  • Proper label and GitHub project, if applicable

@AlexanderSinn AlexanderSinn added the component: laser envelope About the laser envelope solver label Jul 31, 2023
@MaxThevenet
Copy link
Member

Thanks! A single test would be nice, e.g., compare no ions vs. light ions (e.g. mass 10x the electron mass), to observe an effect.

@huixingjian
Copy link
Contributor

huixingjian commented Dec 12, 2023

I have examined the pull request in the linear regime by means of the analytical theory. And the results work fine.
First I reverse the value of the mass of ion and electrons in the input script as

ions.density(x,y,z) = ne
ions.mass = m_e
ions.charge=q_e
ions.ppc=1 1
electrons.charge = -q_e
electrons.mass = m_p
electrons.density(x,y,z) = ne
electrons.ppc = 1 1
diagnostic.diag_type = yz

And it generates an opposite plasma wave as expected.
截屏2023-12-11 14 36 05
And I changed the value of the mass of ion and electrons to 1000*m_p and 2*m_e respectively as

ions.density(x,y,z) = ne
ions.mass = 1000*m_p
ions.charge=q_e
ions.ppc=1 1

electrons.charge = -q_e
electrons.mass = 2*m_e
electrons.density(x,y,z) = ne
electrons.ppc = 1 1

And result matches perfectly with the analytical result
截屏2023-12-12 12 19 08

@AlexanderSinn AlexanderSinn merged commit dffac5a into Hi-PACE:development Dec 20, 2023
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component: laser envelope About the laser envelope solver
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants