Google
 

Trailing-Edge - PDP-10 Archives - decuslib20-02 - decus/20-0026/ddcar.doc
There are 2 other files named ddcar.doc in the archive. Click here to see a list.
SUBROUTINE DDCAR

PURPOSE
   TO COMPUTE, AT A GIVEN POINT X, AN APPROXIMATION Z TO THE
   DERIVATIVE OF AN ANALYTICALLY GIVEN FUNCTION FCT THAT IS 11-
   TIMES DIFFERENTIABLE IN A DOMAIN CONTAINING A CLOSED, 2-SIDED
   SYMMETRIC INTERVAL OF RADIUS ABSOLUTE H ABOUT X, USING FUNCTION
   VALUES ONLY ON THAT CLOSED INTERVAL.

USAGE
   CALL DDCAR(X,H,IH,FCT,Z)
   PARAMETER FCT REQUIRES AN EXTERNAL STATEMENT

DESCRIPTION OF PARAMETERS
   X   - THE POINT AT WHICH THE DERIVATIVE IS TO BE COMPUTED
	 X IS IN DOUBLE PRECISION.
   H   - THE NUMBER WHOSE ABSOLUTE VALUE DEFINES THE CLOSED,
	 SYMMETRIC 2-SIDED INTERVAL ABOUT X (SEE PURPOSE)
	 H IS IN SINGLE PRECISION
   IH  - INPUT PARAMETER (SEE REMARKS AND METHOD)
	 IH NON-ZERO - THE SUBROUTINE GENERATES THE INTERNAL
		       VALUE HH
	 IH    =   0 - THE INTERNAL VALUE HH IS SET TO ABSOLUTE H
   FCT - THE NAME OF THE EXTERNAL DOUBLE PRECISION FUNCTION
	 SUBPROGRAM THAT WILL GENERATE THE NECESSARY FUNCTION
	 VALUES.
   Z   - RESULTING DERIVATIVE VALUE - DOUBLE PRECISION

REMARKS
   (1)	IF H = 0, THEN THERE IS NO COMPUTATION.
   (2)	THE INTERNAL VALUE HH, WHICH IS DETERMINED ACCORDING TO
	IH, IS THE MAXIMUM STEP-SIZE USED IN THE COMPUTATION OF
	THE CENTRAL DIVIDED DIFFERENCES (SEE METHOD.)  IF IH IS
	NON-ZERO, THEN THE SUBROUTINE GENERATES HH ACCORDING TO
	CRITERIA THAT BALANCE ROUND-OFF AND TRUNCATION ERROR.  HH
	IS ALWAYS LESS THAN OR EQUAL TO ABSOLUTE H IN ABSOLUTE
	VALUE, SO THAT ALL COMPUTATION OCCURS WITHIN A RADIUS
	ABSOLUTE H OF X.

SUBROUTINES AND FUNCTION SUBPROGRAMS REQUIRED
   THE EXTERNAL FUNCTION SUBPROGRAM FCT(T) MUST BE FURNISHED BY
   THE USER. FCT(T) IS IN DOUBLE PRECISION

METHOD
   THE COMPUTATION OF Z IS BASED ON RICHARDSON'S AND ROMBERG'S
   EXTRAPOLATION METHOD AS APPLIED TO THE SEQUENCE OF CENTRAL
   DIVIDED DIFFERENCES ASSOCIATED WITH THE POINT PAIRS
   (X-(K*HH)/5,X+(K*HH)/5) K=1,...,5.  (SEE FILLIPI, S. AND
   ENGELS, H., ALTES UND NEUES ZUR NUMERISCHEN DIFFERENTIATION,
   ELECTRONISCHE DATENVERARBEITUNG, ISS. 2 (1966), PP. 57-65.)