 
CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
C
C                   C P Z E R O
C
C     CPZERO IS THE NAME OF A PACKAGE OF SUBROUTINES FOR FINDING
C            ALL THE ZEROS OF POLYNOMIALS WITH EITHER REAL OR
C            COMPLEX COEFFICIENTS.  THE SUBROUTINE CPZERO IS FOR
C            COMPLEX COEFFICIENTS AND THE SUBROUTINE RPZERO IS FOR
C            REAL COEFFICIENTS.  ALONG WITH THE ZEROS, THESE PROGRAMS
C            PROVIDE AS OUTPUT, ESTIMATES OF THE ERRORS THAT HAVE BEEN
C            MADE.  THESE ESTIMATES ARE USUALLY CONSERVATIVE.  IF
C            YOU HAVE SOME IDEA OF THE ZEROS IT IS POSSIBLE TO INSERT
C            THESE INTO THE PROGRAMS, HOPEFULLY TO MAKE THEM RUN
C            FASTER.
C
C            ACTUALLY THERE IS ONLY ONE MAIN ROUTINE, CPZERO.  THE OTHER
C            RPZERO AUTOMATICALLY SETS THE IMAGINARY PARTS OF THE
C            POLYNOMIAL COEFFICIENTS TO ZERO AND CALLS CPZERO.
C
C            THE METHOD USED HERE IS NEWTON'S METHOD APPLIED TO THE
C            SYSTEM OF EQUATIONS WHICH IS OBTAINED BY SETTING THE
C            POLYNOMIAL COEFFICIENTS EQUAL TO THE SYMMETRIC FUNCTIONS
C            OF THE ROOTS.  EXPERIENCE HAS SHOWN IT TO BE ROBUST, BUT
C            NEVERTHELESS THIS METHOD IS KNOWN TO SLOW DOWN IN THE
C            PRESENCE OF MULTIPLE OR ALMOST MULTIPLE ROOTS.
C
CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 
 
