SUBROUTINE DEFINE(X,N,XNEW) C C PURPOSE--THIS SUBROUTINE SETS ALL OF THE ELEMENTS C IN THE SINGLE PRECISION VECTOR X C EQUAL TO XNEW. C THIS SUBROUTINE IS USEFUL IN DEFINING A C VECTOR OF CONSTANTS. C FOR EXAMPLE, IF THE DATA ANALYST WISHES C TO TREAT THE EQUAL WEIGHTS CASE IN DOING C A POLYNOMIAL REGRESSION, THIS COULD C BE DONE BY DEFINING AS, SAY, 1.0 C THE INPUT WEIGHT VECTOR W TO THE C DATAPAC POLY SUBROUTINE; C SUCH DEFINING COULD BE DONE C BY USE OF THE DEFINE SUBROUTINE C WITH XNEW = 1.0. C INPUT ARGUMENTS--X = THE SINGLE PRECISION VECTOR OF C (UNSORTED OR SORTED) OBSERVATIONS. C --N = THE INTEGER NUMBER OF OBSERVATIONS C IN THE VECTOR X. C --XNEW = THE SINGLE PRECISION VALUE C TO WHICH ALL OF THE C OBSERVATIONS IN THE VECTOR X C WILL BE SET. C OUTPUT--THE SINGLE PRECISION VECTOR X C EVERY ELEMENT OF WHICH C WILL BE EQUAL TO XNEW. C ALSO, 3 LINES OF SUMMARY INFORMATION C WILL BE GENERATED INDICATING C 1) WHAT THE SAMPLE SIZE WAS (N); C 2) WHAT THE DEFINING CONSTANT WAS (XNEW); C PRINTING--YES. C RESTRICTIONS--THERE IS NO RESTRICTION ON THE MAXIMUM VALUE C OF N FOR THIS SUBROUTINE. C OTHER DATAPAC SUBROUTINES NEEDED--NONE. C FORTRAN LIBRARY SUBROUTINES NEEDED--NONE. C MODE OF INTERNAL OPERATIONS--SINGLE PRECISION. C LANGUAGE--ANSI FORTRAN. C REFERENCES--NONE. C WRITTEN BY--JAMES J. FILLIBEN C STATISTICAL ENGINEERING LABORATORY (205.03) C NATIONAL BUREAU OF STANDARDS C WASHINGTON, D. C. 20234 C PHONE--301-921-2315 C ORIGINAL VERSION--NOVEMBER 1975. C UPDATED VERSION--JULY 1976. C C--------------------------------------------------------------------- C DIMENSION X(1) C IPR=6 C C CHECK THE INPUT ARGUMENTS FOR ERRORS C IF(N.LT.1)GOTO50 IF(N.EQ.1)GOTO55 GOTO90 50 WRITE(IPR,15) WRITE(IPR,47)N RETURN 55 WRITE(IPR,18) 90 CONTINUE 15 FORMAT(1H , 91H***** FATAL ERROR--THE SECOND INPUT ARGUMENT TO THE 1 DEFINE SUBROUTINE IS NON-POSITIVE *****) 18 FORMAT(1H ,100H***** NON-FATAL DIAGNOSTIC--THE SECOND INPUT ARGUME 1NT TO THE DEFINE SUBROUTINE HAS THE VALUE 1 *****) 47 FORMAT(1H , 35H***** THE VALUE OF THE ARGUMENT IS ,I8 ,6H *****) C C-----START POINT----------------------------------------------------- C DO100I=1,N X(I)=XNEW 100 CONTINUE C C WRITE OUT A BRIEF SUMMARY C WRITE(IPR,999) WRITE(IPR,101) WRITE(IPR,110)N WRITE(IPR,111)XNEW 101 FORMAT(1H ,35HOUTPUT FROM THE DEFINE SUBROUTINE--) 110 FORMAT(1H ,7X,38HTHE INPUT NUMBER OF OBSERVATIONS IS ,I6) 111 FORMAT(1H ,7X,25HTHE DEFINING CONSTANT IS ,E15.8) 999 FORMAT(1H ) C RETURN END