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

Title: Final report for''FOSPACK''

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

The goal of this subcontract was to modify the FOSPACK code, developed by John Ruge, to call the BoomerAMG solver developed at LLNL through the HYPRE interface. FOSPACK is a package developed for the automatic discretization and solution of First-Order System Least-Squares (FOSLS) formulations of 2D partial differential equations (c.f [3-9]). FOSPACK takes a user-specified mesh (which can be an unstructured combination of triangular and quadrilateral elements) and specification of the first-order system, and produces the discretizations needed for solution. Generally, all specifications are contained in data files, so no re-compilation is necessary when changing domains, mesh sizes, problems, etc. Much of the work in FOSPACK has gone into an interpreter that allows for simple, intuitive specification of the equations. The interpreter reads the equations, processes them, and stores them as instruction lists needed to apply the operators involved to finite element basis functions, allowing assembly of the discrete system. Quite complex equations may be specified, including variable coefficients, user defined functions, and vector notation. The first-order systems may be nonlinear, with linearizations either performed automatically, or specified in a convenient way by the user. The program also includes global/local refinement capability. FOSLS formulations are very well suited for solution by algebraic multigrid (AMG) (c.f. [10-13]). The original version uses a version of algebraic multigrid written by John Ruge in FORTRAN 77, and modified somewhat for use with FOSPACK. BoomerAMG, a version of AMG developed at CASC, has a number of advantages over the FORTRAN version, including dynamic memory allocation and parallel capability. This project was to benefit both FRSC and CASC, giving FOSPACK the advantages of BoomerAMG, while giving CASC a tool for testing FOSLS as a discretization method for problems of interest there. The major parts of this work were implementation and testing of the HYPRE package on our computers, writing a C wrapper/driver for the FOSPACK code, and modifying the wrapper to call BoomerAMG through the HYPRE interface.

Research Organization:
Lawrence Livermore National Lab. (LLNL), Livermore, CA (United States)
Sponsoring Organization:
US Department of Energy (US)
DOE Contract Number:
W-7405-ENG-48
OSTI ID:
15005340
Report Number(s):
UCRL-CR-142046; TRN: US200322%%381
Resource Relation:
Other Information: PBD: 20 Nov 2000
Country of Publication:
United States
Language:
English