Elsevier Science Home
Computer Physics Communications Program Library
Full text online from Science Direct
Programs in Physics & Physical Chemistry
CPC Home

[Licence| Download | New Version Template] aaqu_v4_0.gz(46 Kbytes)
Manuscript Title: FPPAC94: a two-dimensional multispecies nonlinear Fokker-Planck package for Unix systems.
Authors: A.A. Mirin, M.G. McCoy, G.P. Tomaschke, J. Killeen
Program title: FPPAC94
Catalogue identifier: AAQU_v4_0
Distribution format: gz
Journal reference: Comput. Phys. Commun. 81(1994)403
Programming language: Fortran.
Computer: Cray-C90.
Operating system: UNICOS.
Keywords: Plasma physics, Kinetic model, Two-dimensional, Multispecies, Implicit, Nonlinear, Fokker-planck.
Classification: 19.8.

Nature of problem:
The complete nonlinear multispecies Fokker-Planck collision operator for a plasma in two-dimensional velocity space is solved. The operator is expressed in terms of spherical coordinates (v = speed, theta = angle between velocity and magnetic field directions, phi = azimuthal angle) under the assumption of azimuthal symmetry. Provision is made for additional physics contributions.

Solution method:
The Fokker-Planck equation is solved using finite differences. Spatial derivatives are approximated by central differences, with the exception of the advective terms, which are approximated with combined central/upwind formulae designed to accommodate situations in which advection dominates diffusion. Time-advancement is accomplished through either implicit operator splitting, an alternating direction implicit (ADI) algorithm, or fully implicit differencing. (In the latter case the user must supply his own nine-banded linear systems solver.) The Fokker-Planck coefficients and their derivatives are computed by expanding the distribution functions and the Rosenbluth potentials in Legendre series, and equating the respective series coefficients.

Reasons for new version:
The previous version was designed for the Cray-2, under the Cray Time Sharing System developed at Lawrence Livermore National Laboratory. The present version is designed for standard Unix systems with a Fortran 77 compiler. The same source has executed successfully on the Cray-C90, HP-755 and Sun Sparc 1. A further motivation for providing a new version is that the past version contains a bug.

The user must specify the number of meshpoints in the two coordinate directions as well as the number of Legendre polynomials used to calculate the Fokker-Planck coefficients. Sufficient accuracy is attainable on most systems since all real variables are 64 bits.

Unusual features:
All real constants and variables are in double precision. To obtain 64-bit accuracy on the Cray under Unicos, one should invoke the -dp flag.

Running time:
The running time will depend on the mesh configuration, number of species, and number of timesteps desired. On the Cray-C9O (single processor) roughly 2 microseconds per meshpoint per species are required to compute the Fokker-Planck coefficients, and roughly 0.4 microseconds per meshpoint are required to time-advance the distribution function for one species using implicit operator splitting.