Computer Physics Communications 64 (1991) 121—122 North-Holland
121
ORTHOVEC: version 2 of the REDUCE program for 3-D vector analysis in orthogonal curvilinear coordinates James W. Eastwood AEA Technology, Cuiham Laboratory, Abingdon, Oxon 0X14 3DB, UK Received 10 July 1990
The revised version of ORTHOVEC is a collection of REDUCE 3.3 procedures and operations which provide a simple to use environment for the manipulation of scalars and vectors. Operations include addition, subtraction, dot and cross products, division, modulus, div, grad, curl, Laplacian, differentiation, integration, a• c~ and Taylor expansion. Version 2 differs from the original in revised notation and extended capabilities.
NEW VERSION SUMMARY Title of new version: ORTHOVEC
Keywords: computer algebra, vector analysis, series expansion, plasma physics, hydrodynamics, electromagnetics
Catalogue number: ABZH Nature of physical problem Program obtainable from: CPC Program Library, Queen’s University of Belfast, N. Ireland (see application form in this issue)
There is a wide range of applications using vector calculus in orthogonal curvilinear coordinates and vector integration, differentiation and series expansion.
Reference to original program: Comput. Phys. Commun. 47 (1987) 139
Method of solution Computer aided algebra using standard orthogonal curvilinear coordinates for differential and integral operators.
Author of originalprogram: James W. Eastwood Computers: SUN 4/100, Olivetti M24+ Acorn Springboard; Installation: Cuiham Laboratory
Typical running time This is strongly problem dependent: the test examples given took respectively 10, 19 and 48 seconds on a SUN 4/310, SUN 4/110 and Acorn Springboard.
Operating system: UNIX, MS-DOS+ARM-OS Programming language used in the new version: REDUCE 3.3 High speed storage required: as for the underlying PSL/REDUCE system, typically >1 Megabyte No. of lines in combined files: 1273
Elsevier Science Publishers B.V. (North-Holland)
Unusual features of the program The REDUCE procedures use LISP vectors [3] to provide a compact mathematical notation similar to that normally found in vector analysis textbooks. References [1] J.B. Marti, A.S. Hearn, M.L. Griss and C. Griss, Standard LISP Report, ACM SIGPLAN Notices 14 (1979) 48.
122
J. W Eastwood
/ OR THO VEC version
2
LONG WRITE-UP The revised version of ORTHOVEC is, like the original [1], a collection of REDUCE procedures and operators designed to simplify the machine aided manipulation of vectors and vector expansions frequently met in many areas of applied mathematics. The revisions have been introduced for two reasons: firstly, to add extra capabilities missing from the original and secondly, to tidy up input and output to make the package easier to use. The changes from version 1 include: (i) merging of scalar and vector unary and binary operators, +, /; (ii) extensions of the definitions of division and exponentiation to vectors; (iii) new vector dependency procedures; (iv) application of L’Hôpital’s rule in limits and Taylor expansions; (v) a new component selector operator; (vi) algebraic mode output of LISP vector components. •
.
.
—,
*,
The philosophy used in version 2 follows that used in the original: namely, algebraic mode is
used wherever possible. The view is taken that some computational inefficiencies are acceptable if it allows coding to be intelligible to (and thence adaptable by) users other than LISP experts familiar with the internal workings of REDUCE. Version 2 of ORTHOVEC held by the Computer Physics Communications Program Library comprises four files: orthovec.red contains the REDUCE 3.3 [21 source of ORTHOVEC; orthovectest.red is the test run input file; orthovectest.log contains the test run output; orthovec.asc is an ASCII file containing a user manual. In this file is a complete list of procedures and operators in ORTHOVEC and descriptions of the examples included in the test lie —
—
.
.
.
.
References [1] J.W. Easiwood. Comput. Phys. Commun. 47 (1987) 139. [2] AC. Hearn, REDUCE User’s Manual Rand Publication CP78 (Rev. 7/87) (1987).