When a solution leads to strange or unexpected results, customers invariably assume there’s a bug in the code. In a way, I can’t blame them. They’re probably used to using software from other companies. Over the years, I have often found that surprises are messages from beyond ? the program trying in its touching way to comment that the physics is problematic. The code is like Lassie, barking and tugging on Uncle Petrie’s shirt sleeve. When will he ever realize that Timmy’s in trouble?
A recent case in point is a user setup for a low-energy electron extractor. The goal was to produce 100 mA of 150 eV electrons. With an anode aperture, the solution appeared normal. Here, model electron trajectories followed streamlines in the downstream transport region. There was a dramatic change with the introduction of an anode grid. The extracted electron beam blew up radially a short distance from the grid, as though it had run into a virtual brick wall. The customer spent several days changing run parameters. Was there a convergence problem? Was there a bug in Trak associated with grid planes? After considerable frustration, he contacted me.
The culprit proved to be beam physics. You can’t propagate an arbitrarily large current into a vacuum region. The longitudinal space charge limit occurs when the beam creates a space-charge potential equal to its kinetic energy. In this case, it stops dead and blows up. The creation of a virtual cathode is a real effect and forms the basis for devices such as the Vircator. The limiting current depends on the system geometry. In the case of a space-charge-limited diode with gap width d and infinite cross-section, it is easy to show that the electron beam cannot travel more than a distance 2d. In a system of finite width, beam propagation may be possible for some choices of d and impossible for others. When the customer added the grid, the resulting extracted current exceeded the space-charge limit, leading to a sharp transition in the beam behavior. I created a series of runs with different acceleration gap spacing to demonstrate the transition to a virtual cathode solution. My conclusion was that it would be impossible to inject 100 mA into the system as specified.
The message is that when a code does crazy things, it may be trying to tell you something about the physics. If you’d like to learn more about space-charge limits on electron beam transport, see Sects. 5.2 and 5.3 in my book Charged Particle Beams, available at http://www.fieldp.com/cpb.html.
