-
Notifications
You must be signed in to change notification settings - Fork 120
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
Segmentation fault with time_frozen #654
Comments
Time freezing can be tricky to use. If particles should have been moving, the plasma response would be wrong, and letting them move suddenly could make discontinuities. I am not sure how stable the code would be in that case |
In my case, time_frozen is used to save some simulation time before a laser propagates to the plasma. For this test input file, the plasma should be neutral and the field should be small, so I don't understand why time_frozen would matter. I just tried reducing the plasma density by 100x, the simulation crashes with the same error. |
Would it be possible to have the first ionization process occuring on a frozen species at time t=7. ? |
It should be related to the ionization process. The simulation with ionize_model="none" seems to run fine with time_frozen. BTW, smilei_test also crashes with this test input file. |
Then unfreezing a frozen particle which has been ionized is probably the cause of the problem. You probably need to unfreeze the species before the first ionization occurs. Or keep it frozen the whole time. |
I may misunderstand the meaning of time_frozen here. Is it only applied to the pusher? I was thinking it should be applied to the ionization processes too, which would be convenient to skip those along with particle pushes until a specific time. If the ionization/collisions calculations are active since the beginning of the simulation, unfreezing those species perhaps would be problematic. So is there another way to control when to turn on the ionization/collision? The smilei_test problem is probably specific to the aocc compiler, with gnu compiler it works fine. Below is the error message with aocc compiler.
|
For a reason I cannot remember, the ionization process is not frozen. @beck-llr is there a good reason, for example in the case of LWFA? |
Yes there are simulations where you want a frozen ion background that can still be ionized and generate (non frozen) electrons. As I see it frozen species skip pusher and projector because the don't move therefore do not deposit current. Interpolation is still done if ionization is turned on otherwise it is skipped too. |
Something to try: turn off the ionization and dump a checkpoint at the time you want to start ionization. Do a restart with ionization turned on ? that might work ... |
Sounds like a good idea. I will try and report back. |
Yes, turning on ionization in a restart run from a previous frozen run without ionization works fine. Thanks for this idea. Still, it requires manual changes and would be nice to have a variable to turn on/off the ionization just like time_frozen. . |
@beck-llr I am not sure I understand why your solution works. What is the problem about unfreezing ionized atoms? |
Hi,
With the attached test input file and latest master branch of Smilei, the simulation will crash with message as follows. This appears to be related to the time_frozen variable, for example, if it is set to a value between 0 and 6, the code seems to run fine, but it crashes for time_frozen = 7.0, which is very strange. Any idea of what could be wrong?
Parameters
Smilei version: 4.7-1037-g81d858dd9-HEAD
C++ compiler : both AOCC and gnu
Input file
The text was updated successfully, but these errors were encountered: