-
Notifications
You must be signed in to change notification settings - Fork 67
Description
Setting the boundaries for the particles along the y-axis to be thermal causes a segmentation fault. failing_deck.txt
begin:boundaries
bc_x_min_particle = open
bc_x_max_particle = reflect
bc_y_min_particle = thermal
bc_y_max_particle = thermal
bc_x_min_field = simple_laser
bc_x_max_field = simple_outflow
bc_y_min_field = simple_outflow
bc_y_max_field = simple_outflow
end:boundariesIn my input deck I have a target that is infinite in y and semi-infinite in x with 50 microns of vacuum at the front. There is also a scale length from x=0 which extends in the negative x direction with a length of ~9.2 microns. The laser reaches the front of the scale length at ~137 fs which causes some of the particles to start to move in the direction of the y boundaries. Assuming a particle with position y=0 and gets accelerated instantaneously to relativistic speeds it reaches the boundary at y=15 microns in ~50fs.
For a particle that has an initial position closer to the y-boundary it makes sense that it could hit that boundary at ~150fs which subsequently causes it to crash when EPOCH tries to re-inject it as seen in the partial log output below.
I believe that it might be due to the fact that the particle that escapes is being replaced by a particle that has zero initial temperature due to the number density in the scale length region being zero. Maybe there is an erroneous divide by zero somewhere in the code?
Error
Time 0.150954E-12, iteration 5000 after 0:01:57:27.43, ETA 0:01:55:58.37
Skipping redistribution. Balance: 0.874, threshold: 0.800, next: 5577
[node083:320171:0:320171] Caught signal 11 (Segmentation fault: Sent by the kernel at address (nil))
==== backtrace (tid: 320171) ====
0 0x000000000004e5b0 killpg() ???:0
1 0x00000000004f1453 __particles_MOD_push_particles() /users/bmp535/scratch/epoch/epoch2d/src/include/bspline3/hx_dcell.inc:15
2 0x00000000004b2155 MAIN__() /users/bmp535/scratch/epoch/epoch2d/src/epoch2d.F90:216
3 0x000000000040387d main() /users/bmp535/scratch/epoch/epoch2d/src/epoch2d.F90:33
4 0x000000000003a7e5 __libc_start_main() ???:0
5 0x00000000004038be _start() ???:0
=================================
Program received signal SIGSEGV: Segmentation fault - invalid memory reference.
Backtrace for this error:
#0 0x7ffff719a5af in ???
#1 0x4f1453 in __particles_MOD_push_particles
at src/include/bspline3/hx_dcell.inc:4
#2 0x4b2154 in pic
at src/epoch2d.F90:216
#3 0x40387c in main
at src/epoch2d.F90:33