Trailing-Edge
-
PDP-10 Archives
-
decuslib20-02
-
decus/20-0026/se15.ssp
There are 2 other files named se15.ssp in the archive. Click here to see a list.
C SE15 10
C ..................................................................SE15 20
C SE15 30
C SUBROUTINE SE15 SE15 40
C SE15 50
C PURPOSE SE15 60
C TO COMPUTE A VECTOR OF SMOOTHED FUNCTION VALUES GIVEN A SE15 70
C VECTOR OF FUNCTION VALUES WHOSE ENTRIES CORRESPOND TO SE15 80
C EQUIDISTANTLY SPACED ARGUMENT VALUES. SE15 90
C SE15 100
C USAGE SE15 110
C CALL SE15(Y,Z,NDIM,IER) SE15 120
C SE15 130
C DESCRIPTION OF PARAMETERS SE15 140
C Y - GIVEN VECTOR OF FUNCTION VALUES (DIMENSION NDIM) SE15 150
C Z - RESULTING VECTOR OF SMOOTHED FUNCTION VALUES SE15 160
C (DIMENSION NDIM) SE15 170
C NDIM - DIMENSION OF VECTORS Y AND Z SE15 180
C IER - RESULTING ERROR PARAMETER SE15 190
C IER = -1 - NDIM IS LESS THAN 5 SE15 200
C IER = 0 - NO ERROR SE15 210
C SE15 220
C REMARKS SE15 230
C (1) IF IER=-1 THERE HAS BEEN NO COMPUTATION. SE15 240
C (2) Z CAN HAVE THE SAME STORAGE ALLOCATION AS Y. IF Y IS SE15 250
C DISTINCT FROM Z, THEN IT IS NOT DESTROYED. SE15 260
C SE15 270
C SUBROUTINE AND FUNCTION SUBPROGRAMS REQUIRED SE15 280
C NONE SE15 290
C SE15 300
C METHOD SE15 310
C IF X IS THE (SUPPRESSED) VECTOR OF ARGUMENT VALUES, THEN SE15 320
C EXCEPT AT THE POINTS X(1),X(2),X(NDIM-1) AND X(NDIM), EACH SE15 330
C SMOOTHED VALUE Z(I) IS OBTAINED BY EVALUATING AT X(I) THE SE15 340
C LEAST-SQUARES POLYNOMIAL OF DEGREE 1 RELEVANT TO THE 5 SE15 350
C SUCCESSIVE POINTS (X(I+K),Y(I+K)) K = -2,-1,...,2. (SEE SE15 360
C HILDEBRAND, F.B., INTRODUCTION TO NUMERICAL ANALYSIS, SE15 370
C MC GRAW-HILL, NEW YORK/TORONTO/LONDON, 1956, PP. 295-302.) SE15 380
C SE15 390
C ..................................................................SE15 400
C SE15 410
SUBROUTINE SE15(Y,Z,NDIM,IER) SE15 420
C SE15 430
C SE15 440
DIMENSION Y(1),Z(1) SE15 450
C SE15 460
C TEST OF DIMENSION SE15 470
IF(NDIM-5)3,1,1 SE15 480
C SE15 490
C PREPARE LOOP SE15 500
1 A=Y(1)+Y(1) SE15 510
C=Y(2)+Y(2) SE15 520
B=.2*(A+Y(1)+C+Y(3)-Y(5)) SE15 530
C=.1*(A+A+C+Y(2)+Y(3)+Y(3)+Y(4)) SE15 540
C SE15 550
C START LOOP SE15 560
DO 2 I=5,NDIM SE15 570
A=B SE15 580
B=C SE15 590
C=.2*(Y(I-4)+Y(I-3)+Y(I-2)+Y(I-1)+Y(I)) SE15 600
2 Z(I-4)=A SE15 610
C END OF LOOP SE15 620
C SE15 630
C UPDATE LAST FOUR COMPONENTS SE15 640
A=Y(NDIM)+Y(NDIM) SE15 650
0A=.1*(A+A+Y(NDIM-1)+Y(NDIM-1)+Y(NDIM-1)+Y(NDIM-2)+Y(NDIM-2) SE15 660
1 +Y(NDIM-3)) SE15 670
Z(NDIM-3)=B SE15 680
Z(NDIM-2)=C SE15 690
Z(NDIM-1)=A SE15 700
Z(NDIM)=A+A-C SE15 710
IER=0 SE15 720
RETURN SE15 730
C SE15 740
C ERROR EXIT IN CASE NDIM IS LESS THAN 5 SE15 750
3 IER=-1 SE15 760
RETURN SE15 770
END SE15 780