Troubleshooting Electrostatic Simulations

Simulation Crashes at Initialization in Parallel

This is most commonly due to under or over specified boundary conditions on the simulation. It is common for the simulation to be able to run in serial but not parallel in this condition. Visual Setup simulations will take care of specification except in the event a partial boundary condition on one simulation face intersects a partial boundary condition of a separate face. In that event it is critical to make sure that the lower bound of the selected boundary surface is filled as well as up to one cell above the upper bound of the boundary surface, and that neither of these intersectins are set twice.

Simulation Crashes at Startup with PEC Dirichlet Boundaries

PEC objects in the simulation must be entirely inside of the simulation grid in order to ensure proper problem setup.

The Simulation Does Not Finish Properly

The most common cause of crashes is improperly set up particle boundaries. The particle boundaries must completely surround the space in which particles are loaded. Otherwise particles can drift out of the grid and try to reference fields that do not exist. This leads to a Vorpal segmentation fault.

Another possible reason for an electrostatic simulation not finishing properly is that a particle has crossed more than one cell in a time step. This could allow the particle to pass through a particle sink without being absorbed.

  • One solution is to reduce the duration of the time step.

  • Another solution is to limit the number of cells a particle can cross in one time step by artificially reducing the velocity of high speed particles. See the “Species Parameters” section in the Reference manual.

It could be that the definition of the Particle Species is incorrect.

The following Species input block is not defined correctly:

<Species electrons>
  kind = nonRelBoris
  emField = myZeroField
  ...
</Species>
  • The problem: The input block does not specify mass and charge.

  • The result: The simulation runs normally with no complaints. The default mass and charge are those of a positron.

  • The solution: Include the mass and charge of your species every time they are defined.

The Electrostatic Solver Does Not Converge

If the electrostatic solver does not converge, this often indicates a problem with the setup. The matrix can be singular in a fully periodic system due to the failure to specify the value of the potential at one point.