Trailing-Edge
-
PDP-10 Archives
-
decuslib20-02
-
decus/20-0026/ssp.rno
There are 2 other files named ssp.rno in the archive. Click here to see a list.
.NOJUSTIFY
.TITLE ^SCIENTIFIC ^SUBROUTINE ^PACKAGE
.SPACING 1
.CENTER
^SCIENTIFIC ^SUBROUTINE ^PACKAGE (^S^S^P)
.SKIP 10
.TAB STOPS 25
.LEFT MARGIN 25
.PARAGRAPH -25
^PROGRAM ^TITLE ^SCIENTIFIC ^SUBROUTINE ^PACKAGE, ^VERSION ^I^I^I
.PARAGRAPH
^PROGRAM ^ORIGIN ^I^B^M ^SYSTEM/360 ^APPLICATION ^PROGRAM
^NUMBER 360^A-^C^M-03^X
.PARAGRAPH
^SOURCE ^LANGUAGE ^^FORTRAN IV\\
.PARAGRAPH
^PROGRAM ^DESCRIPTION "^THE ^SCIENTIFIC ^SUBROUTINE ^PACKAGE
(^S^S^P) IS A COLLECTION OF OVER 250 ^^FORTRAN\\ SUBROUTINES
DIVIDED, FOR THE SAKE OF PRESENTATION, INTO TWO GROUPS:
STATISTICS AND MATHEMATICS. ^ALSO, OVER 200 SUBROUTINES ARE PRESENTED
IN BOTH SINGLE AND DOUBLE PRECISION MODE. ^S^S^P IS A COLLECTION
OF INPUT/OUTPUT-FREE COMPUTATIONAL BUILDING BLOCKS THAT CAN BE
COMBINED WITH A USER'S INPUT, OUTPUT, OR COMPUTATIONAL ROUTINES
TO MEET HIS NEEDS."
.PARAGRAPH
^PROGRAM ^DOCUMENTATION ^THIS DOCUMENT DESCRIBES THE
IMPLEMENTATION AND USE OF ^S^S^P ON THE ^WESLEYAN ^COMPUTING
^CENTER ^^DECS\\YSTEM-10.
^THE USER IS REFERRED TO
^SYSTEM/360 ^SCIENTIFIC ^SUBROUTINE
^PACKAGE, ^VERSION ^I^I^I, ^PROGRAMMER'S ^MANUAL (^I^B^M
PUBLICATION GH20-0205-4) FOR COMPLETE DESCRIPTIONS
AND LISTINGS OF THE SUBROUTINES. ^COPIES OF THIS MANUAL ARE IN THE
KEYPUNCH ROOM, THE COMPUTER ROOM, AND THE ^W^C^C LIBRARY.
.PARAGRAPH
^DATE 1973 ^JULY 22
.LEFT MARGIN 0
.PAGE
.SUBTITLE ^USING ^S^S^P ON THE ^DEC-10
^USING ^S^S^P ON THE ^DEC-10
.PARAGRAPH 5
^VARIOUS FILES RELATED TO ^S^S^P ARE KEPT IN FOUR DIFFERENT
PLACES. ^THE RELOCATABLE BINARY FILES OF THE ^S^S^P
ROUTINES ARE IN THE INDEXED LIBRARY FILE ^^WES:SSP.REL\\.
^THE TEST CASES (IN CARD DECK FORMAT FOR INPUT TO ^^CDRSTK\\)
ARE ON ^D^E^CTAPE ^D00011. ^M^A^GTAPE ^M02017 CONTAINS A
SEPARATE DESCRIPTION OF EACH PROGRAM. ^M^A^GTAPE ^M12142
CONTAINS ALL OF THE ABOVE, PLUS THE SOURCE FILES FOR ALL ^S^S^P
ROUTINES, PLUS CONTROL FILES FOR COMPILING AND ARRANGING THE
SOURCES.
.SKIP 1
^^LIBRARY FILE\\
.PARAGRAPH
^TO USE ONE OR MORE UNMODIFIED ^S^S^P ROUTINES WITH YOUR MAIN PROGRAM,
SIMPLY INCLUDE ^^CALL\\S TO THOSE ROUTINES
(THE CALLING SEQUENCES ARE DESCRIBED IN THE ^^IBM SSP P\\ROGRAMMER'S
^MANUAL) IN YOUR PROGRAM
AND ADD "^^,WES:SSP/LIBRARY\\" TO YOUR
^^LOAD, EXECUTE, \O\R DEBUG\\ COMMAND STRING.
^THE ^^LOADER\\ WILL LOAD THOSE (AND ONLY THOSE) ^S^S^P
ROUTINES THAT YOUR PROGRAM CALLS.
.SKIP 1
^^SAMPLE DECKS\\
.PARAGRAPH
^IF YOU WANT TO RUN ONE OF THE ^S^S^P SAMPLE DECKS,
(E.#G. ^^DASCR\\ - DATA SCREENING) TYPE THE FOLLOWING:
.NOFILL
.SKIP 1
.TAB STOPS 5,30
^^ &.LOGIN 30,30 (30,30 \\IS THE DEMONSTRATION
^^PPN)
&.MOUNT DTA SSP/VID:D00011/WLOCKED
&.R CDRSTK
&*START SSP:DASCR.CDK (CDRSTK\\ TREATS THE FILE AS IF
IT'S A CARD DECK^^)
&*_^C
&.DISMOUT SSP/REMOVE
&.KJOB/F\\
.FILL
.SKIP 1
^LISTINGS OF THE SAMPLE MAIN PROGRAM AND ANY SPECIAL SAMPLE
SUBROUTINES THAT IT CALLS, THE OUTPUT FROM THE PROGRAM, AND
A LOG FILE DESCRIBING WHAT HAPPENED WILL ALL BE PRINTED.
^IF YOU WANT TO USE A SAMPLE MAIN PROGRAM WITH YOUR OWN
DATA, OR TO MODIFY ONE FOR YOUR OWN PURPOSES, GET A COPY
OF THE PROGRAM AND ANY SPECIAL SAMPLE SUBROUTINES IT CALLS
FROM ^M12142 (SEE BELOW).
.SKIP 1
^^INDIVIDUAL PROGRAM DESCRIPTIONS\\
.PARAGRAPH
^M02017 CONTAINS A SEPARATE DESCRIPTION OF EACH ^S^S^P
SUBROUTINE, SAMPLE MAIN PROGRAM, AND SPECIAL SAMPLE SUBROUTINE
(EXCEPT ^^FUN\\). ^THESE DESCRIPTIONS CONSIST OF THE TEXT
FROM THE COMMENT CARDS AT THE BEGINNING OF EACH PROGRAM.
^EACH PROGRAM DESCRIPTION CONTAINS PURPOSE, USAGE, DESCRIPTION
OF PARAMETERS, REMARKS, SUBROUTINES AND FUNCTION SUBPROGRAMS
REQUIRED, AND METHOD. ^THE TAPE IS IN ^^FAILSAFE\\ FORMAT.
^THE FILES ARE IN ALPHABETICAL ORDER AND HAVE THE EXTENSION
_.^^DOC.\\ ^TO GET DESCRIPTIONS OF, FOR EXAMPLE,
^^MINV, MULTR, \\AND^^
EIGEN,\\ TYPE:
.NOFILL
.SKIP 1
^^ &.MOUNT MTA FAILSAFE/VID:M02017/WLOCKED
&.R FAILSAFE
&*/W
&*/G50,1107
&*EIGEN.DOC,MINV.DOC,MULTR.DOC
&*_^C
&.UNLOAD FAILSAFE:
&.DISMOUNT FAILSAFE/REMOVE
&.PRINT/FORM:3HOLE/HEADER:0/DISPOSE:RENAME *.DOC\\
.FILL
.SKIP 1
^NOTE THAT IF THE FILES ARE NOT REQUESTED IN THE ORDER
IN WHICH THEY APPEAR ON THE TAPE (IN THIS CASE, ALPHABETICAL),
^^FAILSAFE\\ WILL SEARCH THE TAPE MORE THAN ONCE IN ORDER TO FIND
THE FILES.
.SKIP 1
^M02017
.PARAGRAPH
^THIS TAPE IS A 556 BPI DOUBLE ^^FAILSAFE\\ OF [50,1107].
^IF YOU WANT TO GET A COPY OF THE SOURCE CODE FOR ANY ^S^S^P
PROGRAM, THIS IS WHERE IT'S AT. ^IT CONTAINS THE FOLLOWING FILES:
.SKIP 1
.LEFT MARGIN 17
.TAB STOPS 17
.INDENT -12
^^SSP.DIR\\ ^CHECKSUM DIRECTORY OF THE FILES ON THE TAPE
.INDENT -12
^^SSP.RNO\\ ^THE SOURCE FOR THIS DOCUMENT
.INDENT -12
^^SSP.MAN\\ ^THIS THING
.INDENT -12
^^SSP.CCL\\ ^P^I^P COMMAND FILE TO RENAME ALL ^S^S^P
FILES TO A DIFFERENT DIRECTORY IN THIS ORDER.
.INDENT -12
^^SSP.CTL\\ ^BATCH CONTROL FILE TO COMPILE, LIST, AND
FUDGE ALL ^S^S^P SUBROUTINES
.INDENT -12
^^SSP.CMD\\ ^LISTS ALL ^S^S^P SOURCES IN THE ORDER IN WHICH
THEIR ^^.REL\\ FILES WILL APPEAR IN THE LIBRARY FILE. ^THE
ORDER IS ESSENTIALLY ALPHABETICAL, EXCEPT THAT A FEW FILES WERE
MOVED SO THAT THE ^^LOADER\\ WON'T MISS ANYTHING ON A ONE-PASS
SEARCH.
.INDENT -12
^^SSP.REL\\ ^THE INDEXED LIBRARY FILE CREATED BY ^^SSP.CTL\\
CONTAINING WHAT'S LISTED IN ^^SSP.CMD\\
.INDENT -12
^^*.CDK\\ ^CARD IMAGE SAMPLE DECKS FOR INPUT TO ^^CDRSTK\\
.INDENT -12
^^*.SSP\\ ^THE SUBROUTINE SOURCE FILES. ^THE ORDER
OF THESE AND OF ^^*.SMP \\AND^^ *.SSS\\ IS THE SAME AS
THAT IN THE "^^CATEGORICAL GUIDE TO SUBROUTINES AND
SAMPLE PROGRAMS\\" IN THE ^^SSP P\\ROGRAMMER'S ^MANUAL.
.INDENT -12
^^LOC.MAC\\ ^^MACRO\\ REWRITE OF ^^LOC\\
.INDENT -12
^^*.SMP\\ ^SAMPLE MAIN PROGRAMS
.INDENT -12
^^*.SSS\\ ^SPECIAL SAMPLE SUBROUTINES
.INDENT -12
^^LOC.IBM\\ ^THE ORIGINAL ^^FORTRAN LOC\\
(REPLACED WITH A ^^MACRO\\ VERSION)
.INDENT -12
^^RANDU.IBM\\ ^THE ^I^B^M 360 MACHINE-SPECIFIC ^^RANDU\\
WHICH HAS BEEN REPLACED WITH A ROUTINE WHICH SIMPLY CALLS
^^SETRAN, RAN, \\AND^^ SAVRAN.\\
.INDENT -12
^^*.DOC\\ ^INDIVIDUAL PROGRAM DOCUMENT FILES (SEE
DESCRIPTION ABOVE). ^THE ORDER IS ALPHABETICAL.
.SKIP 1
.LEFT MARGIN 0
.LEFT MARGIN 5
.SUBTITLE ^IMPLEMENTATION
.PARAGRAPH -5
^IMPLEMENTATION
.PARAGRAPH
^MODIFICATIONS
.PARAGRAPH
.TAB STOPS 5
1) ^^RANDU\\, WHICH IS, OF COURSE, MACHINE-SPECIFIC, HAS BEEN
REPLACED WITH A ROUTINE THAT USES THE SAME CALLING SEQUENCE AS
^^RANDU\\ BUT CALLS ^^SETRAN, RAN, \A\N\D SAVRAN\\ TO DO THE
WORK. ^THE ORIGINAL ^^RANDU\\ IS ON THE TAPE AS ^^RANDU.IBM\\.
.PARAGRAPH
2) ^THE MAXIMUM MAGNITUDE OF AN EXPONENT ON THE 360 IS ABOUT
TWICE THAT ON THE 10. ^THE FOLLOWING PROGRAMS WERE CHANGED
ACCORDINGLY: ^^TALLY, TAB1, TAB2, MISR, SMIRN, MPAIR, BDTR, CDTR,
NDTRI, BISER, PHI, POINT, TETRA, RECP, ACFI, DACFI, DCAR,
DDCAR, DBAR, DDBAR, GMMMA, DLGAM,
BESY, BESK, EXPI, SICI, CEL1, DCEL1, CEL2, DCEL2.\\
.PARAGRAPH
3) ^THE PACKAGE CONTAINS SEVERAL ^GAUSSIAN QUADRATURE
ROUTINES. ^IN THREE OF THESE (^^DQL32, DQH64, DQA32\\) THE EXPONENTS
OF THE COEFFICIENTS OF SOME OF THE TERMS IN THE SERIES WERE TOO SMALL
(I. E. TOO FAR NEGATIVE). ^IN EACH OF THESE CASES THE EXPONENT OF
EACH TERM IN THE SERIES WAS INCREASED BY 20 AND THE SUM OF THE
SERIES WAS MULTIPLIED BY 1D-20.
.PARAGRAPH
4) ^TESTS FOR END OF CARD FILE WERE INSERTED IN THE SAMPLE
PROGRAMS.
.PARAGRAPH
5) ^A CALL TO THE SUBROUTINE ^^VARMX\\ IN THE SAMPLE
PROGRAM ^^FACTO\\ WAS SHORT ONE ARGUMENT. ^THAT WAS FIXED.
.PARAGRAPH
6) ^THE VERY FREQUENTLY USED ^^LOC\\ ROUTINE WAS REWRITTEN
IN ^^MACRO\\. ^THE REWRITE RUNS 3 TO 5 TIMES FASTER.
.SUBTITLE ^TESTING
.SKIP 2
.LEFT MARGIN 0
^TESTING
.PARAGRAPH 5
^THE SAMPLE PROGRAMS WERE RUN AND
THE RESULTS WERE COMPARED WITH THOSE GIVEN IN THE ^I^B^M
^S^S^P MANUAL. ^THE RESULTS AGREEED WITHIN THE ACCURACIES
OF THE MACHINES. ^ONE SAMPLE PROGRAM, ^^SMPRT\\ PRODUCED
3992 FLOATING OVERFLOWS, BUT CORRECT RESULTS.
^ACCORDING TO THE DOCUMENTATION ON ^^POLRT\\ (THE SUBROUTINE
WHICH ^^SMPRT\\ USES) THIS IS NOT UNEXPECTED.