EVCHCK(3)

SYNOPSIS
SUBROUTINE EVCHCK (LOUT, KPRINT, NPTS, XEV, FEV, DEV, FEV2, FAIL)

NAME
evchck - Test evaluation accuracy of CHFDV and CHFEV for PCHQK1.

LIBRARY
SLATEC (PCHIP)

TYPE
SINGLE PRECISION (EVCHCK-S, DEVCHK-D)

KEYWORDS
PCHIP EVALUATOR QUICK CHECK

AUTHOR
Fritsch, F. N., (LLNL)

DESCRIPTION
-------- CODE TO TEST EVALUATION ACCURACY OF CHFDV AND CHFEV -------- USING FUNCTION AND DERIVATIVE VALUES FROM A CUBIC (COMPUTED IN DOUBLE PRECISION) AT NINT DIFFERENT (X1,X2) PAIRS: 1. CHECKS THAT CHFDV AND CHFEV BOTH REPRODUCE ENDPOINT VALUES. 2. EVALUATES AT NPTS POINTS, 10 OF WHICH ARE OUTSIDE THE INTERVAL AND: A. CHECKS ACCURACY OF CHFDV FUNCTION AND DERIVATIVE VALUES AGAINST EXACT VALUES. B. CHECKS THAT RETURNED VALUES OF NEXT SUM TO 10. C. CHECKS THAT FUNCTION VALUES FROM CHFEV AGREE WITH THOSE FROM CHFDV. FORTRAN INTRINSICS USED: ABS, MAX, MIN. FORTRAN LIBRARY ROUTINES USED: SQRT, (READ), (WRITE). SLATEC LIBRARY ROUTINES USED: CHFDV, CHFEV, R1MACH, RAND. OTHER ROUTINES USED: FDTRUE.

ROUTINES CALLED
CHFDV, CHFEV, FDTRUE, R1MACH, RAND

REVISION HISTORY (YYMMDD)
820601 DATE WRITTEN
820624 CONVERTED TO QUICK CHECK FOR SLATEC LIBRARY.
820630 1. MODIFIED DEFINITIONS OF RELATIVE ERROR AND TEST TOLERANCES. 2. VARIOUS IMPROVEMENTS TO OUTPUT FORMATS.
820716 1. SET MACHEP VIA A CALL TO R1MACH. 2. CHANGED FROM FORTLIB'S RANF TO SLATEC'S RAND.
890629 1. Appended E0 to real constants to reduce S.P./D.P. differences. 2. Other minor cosmetic changes.
890831 Modified array declarations. (WRB)
890911 Removed unnecessary intrinsics. (WRB)
891004 Cosmetic changes to prologue. (WRB)
891214 Prologue converted to Version 4.0 format. (BAB)
900315 Revised prologue and improved some output formats. (FNF) Also moved formats to end to be consistent with other PCHIP quick checks.
900316 Additional minor cosmetic changes. (FNF)
900321 Made miscellaneous cosmetic changes. (FNF)
901130 Added 1P's to formats and revised some to reduce maximum line length. (FNF)
910708 Minor modifications in use of KPRINT. (WRB)
910801 Added EXTERNAL statement for RAND due to problem on IBM RS 6000. (WRB)