Subroutine Type |
Utility/Setup utility subroutine for GSE. |
|||||||||
Definition |
The SET_GSE_NONZERO_ENTRY subroutine is used with GSESUB to specify the nonzero entries of the Jacobian matrix indicated by mat_type. |
|||||||||
Use |
Fortran SET_GSE_NONZERO_ENTRY (mat_type, row_idx, col_dix, errflag)
C/C++ c_set_discrete_interface(mat_type, row_idx, col_dix, errflag)
Python py_set_gse_nonzero_entry(mat_type, row_idx, col_dix, errflag) |
|||||||||
Input Arguments |
mat_type |
Character string. Type of the matrix; valid types are “XX”, “XU”, “YX”, and “YU”. |
||||||||
row_idx |
Integer. Row index of the sparse entry. The index starts from one. |
|||||||||
col_idx |
Integer. Column index of the sparse entry. The index starts from one. |
|||||||||
Output Values |
errflag |
Integer. Information about the call status. A nonzero value indicates failure. |
||||||||
Comments |
stated(1) = input(1) stated(2) = states(1) output(1) = states(1) You can use SET_GSE_NONZERO_ENTRY to tell MotionSolve what entries in the derivative matrices have nonzero values. For the above case, the corresponding nonzero entries are: call SET_GSE_NONZERO_ENTRY (‘XU’, 1, 1, errflg) call SET_GSE_NONZERO_ENTRY (‘XX’, 2, 1, errflg) call SET_GSE_NONZERO_ENTRY (‘YX’, 1, 1, errflg) call SET_GSE_NONZERO_ENTRY (‘YU’, 0, 0, errflg) If an entire matrix is all zero (that is, YU in the above case), use 0 for both the row and column indices to tell MotionSolve that it is a NULL matrix. If you omit, say the second call for ‘XX’ matrix, MotionSolve treats the GSEXX matrix as a full matrix.
|