PROGRAM SUMMARY
Title of program:
ZEAL
Catalogue identifier:
ADKW
Ref. in CPC:
124(2000)212
Distribution format: tar gzip file
Operating system: UNIX (HPUX 11.0,AIX 3.2.5,SunOS 5.5.1,IRIX64 6.4)
High speed store required:
500K words
Number of bits in a word:
32
Number of lines in distributed program, including test data, etc:
17024
Keywords:
General purpose, Function, Other numerical, Analytic functions, Zeros,
Multiplicities, Method quadrature, Formal orthogonal, Polynomials,
Isolation of zeros, Computation of zeros.
Programming language used: Fortran
Computer:
HP 9000 B160L ,
IBM RS6000 7012 ,
SPARC Ultra-2 m1170 ,
Silicon Graphics 2000 .
Nature of physical problem:
ZEAL is a general purpose package for computing zeros of analytic
functions. It can be used in various physical applications. More
precisely, given a rectangular region W in the complex plane and an
analytic function f : W -> C, such that no zero of f lies on the
boundary of W, ZEAL calculates all the zeros of f that lie inside W,
together with their respective multiplicities.
Method of solution
The package ZEAL uses an integral formula to compute the total number of
zeros (counting multiplicities) of f that lie inside W. Then, by using
the same procedure, the region W is subdivided into subregions that
contain at most M zeros (again counting multiplicities), where the value
of M is specified by the user. Approximations for these zeros are
calculated via an algorithm that is based on numerical integration along
the boundaries of the subregions and generalized eigenvalue problems.
The multiplicities of the zeros are calculated by solving a Vandermonde
system. The approximations for the zeros are refined via the modified
Newton's method, which takes into account the multiplicity of a zero and
converges quadratically.
Restrictions on the complexity of the problem
The function f has to be analytic in the rectangular region W. Both f
and its derivative f' are needed. The edges of W have to be parallel to
the coordinate axes. The boundary of W is not allowed to contain zeros
of f. Since, in the sequel, W is repeatedly subdivided, the boundaries
of the obtained subregions should not contain zeros of f. The
possibility of such a situation can be minimized if W is not symmetric
with respect to the axes. ZEAL is not specifically designed to handle
clusters of zeros. However, if f has one or more clusters of zeros and
the input parameter EPS_STOP is given a proper (problem-dependent)
value, then ZEAL will compute approximations for the centres of the
clusters. The "multiplicity" of a centre is equal to the total number
of zeros that belong to the corresponding cluster.
Typical running time
The following table gives the running times (in seconds) for the test
runs of Section 4:
--------------------------------------------------- System library Code included in ZEAL --------------------------------------------------- Test run #1 0.13 (0.13) 0.18 (0.14) Test run #2 1.82 (1.04) 1.65 (1.14) Test run #3 1.55 (1.14) 1.60 (1.42) Test run #4 1.52 (1.15) 1.62 (1.35) Test run #5 0.65 (0.41) 1.62 (0.37) Test run #6 1.56 (0.56) 1.54 (0.53) ---------------------------------------------------The calculations have been done on a SUN SPARC Ultra-2 m1170. We have used the subroutine ETIME. The parenthesized running times correspond to optimized compiling.