Trailing-Edge
-
PDP-10 Archives
-
decus_20tap2_198111
-
decus/20-0026/dmlss.doc
There are 2 other files named dmlss.doc in the archive. Click here to see a list.
SUBROUTINE DMLSS
PURPOSE
SUBROUTINE DMLSS IS THE SECOND STEP IN THE PROCEDURE FOR
CALCULATING THE LEAST SQUARES SOLUTION OF MINIMAL LENGTH
OF A SYSTEM OF SIMULTANEOUS LINEAR EQUATIONS WITH SYMMETRIC
POSITIVE SEMI-DEFINITE COEFFICIENT MATRIX.
USAGE
CALL DMLSS(A,N,IRANK,TRAC,INC,RHS,IER)
DESCRIPTION OF PARAMETERS
A - COEFFICIENT MATRIX IN FACTORED FORM AS GENERATED
BY SUBROUTINE MFSS FROM INITIALLY GIVEN SYMMETRIC
COEFFICIENT MATRIX A STORED IN N*(N+1)/2 LOCATIONS
A REMAINS UNCHANGED
A MUST BE OF DOUBLE PRECISION
N - DIMENSION OF COEFFICIENT MATRIX
IRANK - RANK OF COEFFICIENT MATRIX, CALCULATED BY MEANS OF
SUBROUTINE DMFSS
TRAC - VECTOR OF DIMENSION N CONTAINING THE
SUBSCRIPTS OF PIVOT ROWS AND COLUMNS, I.E. THE
PRODUCT REPRESENTATION IN TRANSPOSITIONS OF THE
PERMUTATION WHICH WAS APPLIED TO ROWS AND COLUMNS
OF A IN THE FACTORIZATION PROCESS
TRAC IS A RESULTANT ARRAY OF SUBROUTINE MFSS
TRAC MUST BE OF DOUBLE PRECISION
INC - INPUT VARIABLE WHICH SHOULD CONTAIN THE VALUE ZERO
IF THE SYSTEM OF SIMULTANEOUS EQUATIONS IS KNOWN
TO BE COMPATIBLE AND A NONZERO VALUE OTHERWISE
RHS - VECTOR OF DIMENSION N CONTAINING THE RIGHT HAND SIDE
ON RETURN RHS CONTAINS THE MINIMAL LENGTH SOLUTION
RHS MUST BE OF DOUBLE PRECISION
IER - RESULTANT ERROR PARAMETER
IER = 0 MEANS NO ERRORS
IER =-1 MEANS N AND/OR IRANK IS NOT POSITIVE AND/OR
IRANK IS GREATER THAN N
IER = 1 MEANS THE FACTORIZATION CONTAINED IN A HAS
ZERO DIVISORS AND/OR TRAC CONTAINS
VALUES OUTSIDE THE FEASIBLE RANGE 1 UP TO N
REMARKS
THE MINIMAL LENGTH SOLUTION IS PRODUCED IN THE STORAGE
LOCATIONS OCCUPIED BY THE RIGHT HAND SIDE.
SUBROUTINE DMLSS DOES TAKE CARE OF THE PERMUTATION
WHICH WAS APPLIED TO ROWS AND COLUMNS OF A.
OPERATION IS BYPASSED IN CASE OF A NON POSITIVE VALUE
OF IRANK
SUBROUTINES AND FUNCTION SUBPROGRAMS REQUIRED
NONE
METHOD
LET T, U, TU BE THE COMPONENTS OF THE FACTORIZATION OF A,
AND LET THE RIGHT HAND SIDE BE PARTITIONED INTO A FIRST
PART X1 OF DIMENSION IRANK AND A SECOND PART X2 OF DIMENSION
N-IRANK. THEN THE FOLLOWING OPERATIONS ARE APPLIED IN
SEQUENCE
(1) INTERCHANGE RIGHT HAND SIDE
(2) X1 = X1 + U * X2
(3) X2 =-TRANSPOSE(U) * X1
(4) X2 = INVERSE(TU) * INVERSE(TRANSPOSE(TU)) * X2
(5) X1 = X1 + U * X2
(6) X1 = INVERSE(T) * INVERSE(TRANSPOSE(T)) * X1
(7) X2 =-TRANSPOSE(U) * X1
(8) X2 = INVERSE(TU) * INVERSE(TRANSPOSE(TU)) * X2
(9) X1 = X1 + U * X2
(10)X2 = TRANSPOSE(U) * X1
(11) REINTERCHANGE CALCULATED SOLUTION
IF THE SYSTEM OF SIMULTANEOUS LINEAR EQUATIONS IS SPECIFIED
TO BE COMPATIBLE THEN STEPS (2), (3), (4) AND (5) ARE
CANCELLED.
IF THE COEFFICIENT MATRIX HAS RANK N, THEN THE ONLY STEPS
PERFORMED ARE (1), (6) AND (11).