The particles follow the relativistic equations of motion in electric and magnetic fields, generating a source current for the field equations. The discretization of the relativistic equations of motion has been described extensively; OOPIC employs the relativistic time-centered Boris advance [1]. The position update occurs in a rotated Cartesian frame, which eliminates the problem of large angular displacements near the origin. Birdsall and Langdon discuss this issue in some detail [1].
We presently use a charge conserving current weighting
algorithm, which ensures that Gauss' Law remains satisfied if it
was initially satisfied. The current weighting is summarized in
Figure 4 for a particle traversing multiple cells. The net
particle motion is decomposed in segments,
and
,
separated by a cell crossing. The currents for each segment are
deposited independently, so we describe only the first segment.
Let the initial particle location be
, and let the final
location be
for this segment, so
.
Let the
particle be located in the mesh shown in Figure 4, where j and k
are the cell indices such that
.
Here,
is the location of
the j,k-th node of the mesh.
current.ps
Figure 4. Current deposition for a multi-cell particle motion.
Defining
and
and,
we can write the relations for linearly
interpolating the particle charge onto the mesh nodes:

where q is the particle charge. Defining and , we can write
the change in charge at each mesh node due to the motion from
to
:

One set of currents which satisfies conservation of charge for the changes given in Eq. (1-9) is:

where
is the time for the motion. Note that these currents
are not unique; adding a constant current around the loop formed
by the cell edges also satisfies the continuity equation. One
sees immediately that this current deposition is equivalent to
the method of Morse and Nielson [11] for a single cell particle
motion. For multiple cells, the method described here deposits
current in each cell traversed, in a manner similar to Eastwood
[13] and Villasenor and Buneman [14].