One of the first non-fusion applications that we are interested in is the interaction between a high-intensity, short-pulse laser and a plasma. The code is modified such that the two ends in is open, the details of that modification is left to the Code Description part of the documentation.
So, assuming the code has been tailored for the Laser-Plasma problem, the next step is to figure out the appropriate input parameters to reproduce the results given by Pukhov and Meyer-ter-Vehn[2].
First of all, some of the parameters are easily set, namely:
OK, now the paper says that the system is roughly 20 wavelengths in the
directions perpendicular to , and roughly 40 wavelengths
parallel to . Setting roughly satisfies this
condition. This sets the frequency of the incoming laser (Well, this is a
boundary-value problem, so the laser frequency is fixed.)
Other laser parameters are that , , now, by setting qme=1,
then, a0=3.0.
where is the center of the laser spot, and is the
spot-size (in the paper, ), a subroutine has to be
added to send the laser through the system. To accomodate the laser, a new
subroutine is needed, plus new input parameters. A new list is added to the
file input to describe the laser, which is coincidentally called laser.
To figure out how many steps to run, recall that the laser
has a physical wavelength of 1m, or 2 /omega0 = 3.34 fs,
since the last snapshots of the simulation occured at t=320fs, then
the total simulation time in normalized units is roughly.
or roughly ntrun=2500.
NOTE: The program doesn't really solve the vector potential, but rather the and fields. Furthermore (as if it cannot get any more messy), it only solves and at t=0, then it time evolves the fields. So, at t=0, the electric fields and magnetic fields are (assume , and ):
Figure: Various cross-sections in the 3-D calculations, the
names correspond to those used in the paper, but the direction
of parallelization is shown on the above plot (to find out which
diagnostics can be done during the simulation). The simplest way
to recover the coordinate system is to use the permutation
, which preserves the curl
relations.
To figure out how many nodes to use, we'll give an estimate on the amount of
memory necessary for this run, consider that each grid store 10
floating-point quantities (), and that each particle has contains 6 floating-point quantities(). Then the total memory estimate is:
This agrees with the estimate given in the paper. Now, consider that each
node of the SP2 has 128MB, then the minimum number of processors needed is , we'll use nvp=16 just to be safe.
Also given from the paper is the temperature of the electron, 20keV, or in
normalized terms:
Finally, the charge of the electron can be found as followed: let qme=-1.0 (Well, you'll have to pick something and this is a good
choice for converting the fields to electron accelerations.). Now, knowing
that the plasma is underdense, or:
Now, recall that
where is the spatially averaged charge density, or:
Now, recall that there are 2 particles per grid (from the paper), then: