skip to main content
OSTI.GOV title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: User documentation for PVODE, an ODE solver for parallel computers

Technical Report ·
DOI:https://doi.org/10.2172/310920· OSTI ID:310920

PVODE is a general purpose ordinary differential equation (ODE) solver for stiff and nonstiff ODES It is based on CVODE [5] [6], which is written in ANSI- standard C PVODE uses MPI (Message-Passing Interface) [8] and a revised version of the vector module in CVODE to achieve parallelism and portability PVODE is intended for the SPMD (Single Program Multiple Data) environment with distributed memory, in which all vectors are identically distributed across processors In particular, the vector module is designed to help the user assign a contiguous segment of a given vector to each of the processors for parallel computation The idea is for each processor to solve a certain fixed subset of the ODES To better understand PVODE, we first need to understand CVODE and its historical background The ODE solver CVODE, which was written by Cohen and Hindmarsh, combines features of two earlier Fortran codes, VODE [l] and VODPK [3] Those two codes were written by Brown, Byrne, and Hindmarsh. Both use variable-coefficient multi-step integration methods, and address both stiff and nonstiff systems (Stiffness is defined as the presence of one or more very small damping time constants ) VODE uses direct linear algebraic techniques to solve the underlying banded or dense linear systems of equations in conjunction with a modified Newton method in the stiff ODE case On the other hand, VODPK uses a preconditioned Krylov iterative method [2] to solve the underlying linear system User-supplied preconditioners directly address the dominant source of stiffness Consequently, CVODE implements both the direct and iterative methods Currently, with regard to the nonlinear and linear system solution, PVODE has three method options available. functional iteration, Newton iteration with a diagonal approximate Jacobian, and Newton iteration with the iterative method SPGMR (Scaled Preconditioned Generalized Minimal Residual method) Both CVODE and PVODE are written in such a way that other linear algebraic techniques could be easily incorporated, since the code is written with a layer of linear system solver modules that is isolated, as far as possible, from the rest of the code Further, the code is structured so that it can readily be converted from double precision to single precision This precludes the maintenance of two versions of PVODE PVODE has been run on an IBM SP2, a Cray-T3D and Cray-T3E, and a cluster of workstations It is currently being used in a simulation of tokamak edge plasmas at LLNL (We are grateful to Dr Michael Minkoff at Argonne National Laboratory for assistance in the use of the IBM SP2 there ) Recently, the PVODE solver was incorporated into the PETSc package (Portable Extensible Toolkit for Scientific computation) [9] developed at Argonne The remainder of this paper is organized as follows Section 2 sets the mathematical notation and summarizes the basic methods Section 3 summarizes the organization of the PVODE solver, while Section 4 summarizes its usage Section 5 describes a preconditioner module, and Section 6 describes a set of Fortran/C interfaces Section 7 describes two example problems, and Section 8 gives some test results.

Research Organization:
Lawrence Livermore National Lab. (LLNL), Livermore, CA (United States)
Sponsoring Organization:
USDOE, Washington, DC (United States)
DOE Contract Number:
W-7405-ENG-48
OSTI ID:
310920
Report Number(s):
UCRL-ID-130884; R&D Project: 95-ERD-036; ON: DE98058783; BR: DP0101035
Resource Relation:
Other Information: PBD: 1 May 1998
Country of Publication:
United States
Language:
English