PURPOSE
To open a Submatrix File for storing submatrices.SYNOPSIS
CALL FMSOS (LENR, LENI, LENV, NUMVEC, NUMSUB, NAME, LUS)
INPUT PARAMETERS
- LENR = Integer.
Record length for matrix file in units of REAL*8 words.
>0, use fixed length records. If M is the dimension of the largest submatrix on the file, then LENR must be at least the following:Submatrix
FormatData
TypeLENR 1,2 (full) Real M*M Complex 2*M*M 3,4 (triangular) Real M*(M+1)/2 Complex M*(M+1) 5 (row) Real M Complex 2*M - LENI = Integer.
Record length for integer file in units of integers.
>0, use fixed length records. If M is the dimension of the largest submatrix on the file, then LENI must be at least (M+2).
<= 0, use variable length record files. - LENV = Integer.
Record length for vector file in units of REAL*8 words.
>0, use fixed length records. If M is the dimension of the largest submatrix on the file, then LENV must be at least NUMVEC*M for real data, 2*NUMVEC*M for complex data.
<= 0, use variable length record files. - NUMVEC = Integer.
Number of vectors on vector file.
= 0, do not use vector file. - NUMSUB = Integer.
Number of records. -
NAME = Character string.
A 1 to 119 character string that contains a unique name for the submatrix file. FMS appends an 'R' to this name for the matrix file, an 'I' for the integer file and a 'S' for the vector file.
OUTPUT PARAMETERS
- LUS(25) = Integer array.
FMS Submatrix File Attribute List for the new submatrix file.
FMS PARAMETERS:
The following FMS Parameters are especially important to this routine:Parameter | Description |
---|---|
IEXIST | Use existing file |
INCORE | File location (disk or memory) |
LBUFSI | Buffer size for submatrix integer records |
LBUFSR | Buffer size for submatrix real records |
LBUFSV | Buffer size for submatrix vector records |
DESCRIPTION:
Submatrix Files pass submatrix data to the FMS assembly process. Finite element programs use submatrix files when FMS performs the global matrix assembly.You may create multiple submatrix files by calling this subroutine more than once. The submatrix file attributes, however, must be stored in a single array LUS(25,NUMSF). On each call, i, you pass the attribute list for that submatrix file, LUS(1,i).
If you want FMS to assemble the submatrix vectors, specify the number of vectors for parameter NUMVEC. If you specify 0 for NUMVEC, FMS skips opening files for the submatrix vectors.
Record Format
The record format used for the files is one of the following:- Fixed Length Record
You can create fixed length record files by specifying the record length for LENR, LENI and LENV. Use this file type if all records are approximately the same size. Note that you can use multiple files if necessary. If you do use multiple files, their file attributes must be stored together in the array LUS(25,NUMSF). - Variable Length Record
If you specify negative or zero values for LENR, LENI and LENV, FMS creates variable length record files. Use this option if you are writing a single file for wavefront numbering or your records have a variety of lengths. You can help FMS organize these files by providing an estimate of the average record length. This estimate is specified as a negative number for LENR, LENI and LENV.