DPCHCE(3)

SYNOPSIS
SUBROUTINE DPCHCE (IC, VC, N, X, H, SLOPE, D, INCFD, IERR)

NAME
dpchce - Set boundary conditions for DPCHIC

LIBRARY
SLATEC (PCHIP)

TYPE
DOUBLE PRECISION (PCHCE-S, DPCHCE-D)

AUTHOR
Fritsch, F. N., (LLNL)

DESCRIPTION
DPCHCE: DPCHIC End Derivative Setter. Called by DPCHIC to set end derivatives as requested by the user. It must be called after interior derivative values have been set. ----- To facilitate two-dimensional applications, includes an increment between successive values of the D-array. ---------------------------------------------------------------------- Calling sequence: PARAMETER (INCFD = ...) INTEGER IC(2), N, IERR DOUBLE PRECISION VC(2), X(N), H(N), SLOPE(N), D(INCFD,N) CALL DPCHCE (IC, VC, N, X, H, SLOPE, D, INCFD, IERR) Parameters: IC -- (input) integer array of length 2 specifying desired boundary conditions: IC(1) = IBEG, desired condition at beginning of data. IC(2) = IEND, desired condition at end of data. ( see prologue to DPCHIC for details. ) VC -- (input) real*8 array of length 2 specifying desired boundary values. VC(1) need be set only if IC(1) = 2 or 3 . VC(2) need be set only if IC(2) = 2 or 3 . N -- (input) number of data points. (assumes N.GE.2) X -- (input) real*8 array of independent variable values. (the elements of X are assumed to be strictly increasing.) H -- (input) real*8 array of interval lengths. SLOPE -- (input) real*8 array of data slopes. If the data are (X(I),Y(I)), I=1(1)N, then these inputs are: H(I) = X(I+1)-X(I), SLOPE(I) = (Y(I+1)-Y(I))/H(I), I=1(1)N-1. D -- (input) real*8 array of derivative values at the data points. The value corresponding to X(I) must be stored in D(1+(I-1)*INCFD), I=1(1)N. (output) the value of D at X(1) and/or X(N) is changed, if necessary, to produce the requested boundary conditions. no other entries in D are changed. INCFD -- (input) increment between successive values in D. This argument is provided primarily for 2-D applications. IERR -- (output) error flag. Normal return: IERR = 0 (no errors). Warning errors: IERR = 1 if IBEG.LT.0 and D(1) had to be adjusted for monotonicity. IERR = 2 if IEND.LT.0 and D(1+(N-1)*INCFD) had to be adjusted for monotonicity. IERR = 3 if both of the above are true. ------- WARNING: This routine does no validity-checking of arguments. ------- Fortran intrinsics used: ABS.

SEE ALSO
DPCHIC

ROUTINES CALLED
DPCHDF, DPCHST, XERMSG

REVISION HISTORY (YYMMDD)
820218 DATE WRITTEN
820805 Converted to SLATEC library version.
870707 Corrected XERROR calls for d.p. name(s).
890206 Corrected XERROR calls.
890411 Added SAVE statements (Vers. 3.2).
890531 Changed all specific intrinsics to generic. (WRB)
890831 Modified array declarations. (WRB)
890831 REVISION DATE from Version 3.2
891214 Prologue converted to Version 4.0 format. (BAB)
900315 CALLs to XERROR changed to CALLs to XERMSG. (THJ)
900328 Added TYPE section. (WRB)
910408 Updated AUTHOR section in prologue. (WRB)
930503 Improved purpose. (FNF)