PURPOSE
Extract a full incore matrix A(N,N) from the lower-right corner of a FMS matrix.SYNOPSIS
CALL RSDEX (LUA, A, LDA, N)
CALL RNDEX (LUA, A, LDA, N)
CALL CHDEX (LUA, A, LDA, N)
CALL CSDEX (LUA, A, LDA, N)
CALL CNDEX (LUA, A, LDA, N)
INPUT PARAMETERS
- LUA(25) = Integer array.
File attribute list. - LDA = Integer.
Leading dimension of array A. Usually N, but must at least as large as N. - N = Integer.
Number of equations to extract.
OUTPUT PARAMETERS:
- A(LDA,N) = Real array (RSDEX, RNDEX).
A(LDA,N) = Complex array (CHDEX, CSDEX, CNDEX).
Full matrix containing the N by N submatrix from the lower- right corner of the FMS matrix.
FMS PARAMETERS:
The following FMS Parameters are especially important to this routine:Parameter | Description |
---|---|
IPRF | Factoring print code |
NEQSUB | First equation of substructure |
DESCRIPTION:
This subroutine is used during substructuring to extract the reduced submatrix [A*] from the lower-right corner of the global matrix. On input, the file attribute list LUA(25) describes an FMS format matrix which has been partially factored by setting the NEQSUB parameter. The submatrix terms beginning with row and column NEQSUB have been partially reduced but not completely factored. The size of the submatrix, N, can be computed from the NEQSUB parameter and the number of equations NUMEQ as follows:
CALL FMSIGT ('NEQSUB', NEQSUB)
NUMEQ = LUA(8)
N = NUMEQ - NEQSUB + 1
Calling this subroutine stores the N by N submatrix in the array [A]. The leading dimension of [A], LDA, can be larger than the number of equations to extract, N. The submatrix is stored in A(1:N,N). Terms A(N+1:LDA,N) are not used.
The array A must be aligned on a natural address boundary.