Subroutine */
| 14639 | } /* strmv_ */ |
| 14640 | |
| 14641 | /* Subroutine */ int strsm_(char *side, char *uplo, char *transa, char *diag, |
| 14642 | integer *m, integer *n, real *alpha, real *a, integer *lda, real *b, |
| 14643 | integer *ldb) |
| 14644 | { |
| 14645 | /* System generated locals */ |
| 14646 | integer a_dim1, a_offset, b_dim1, b_offset, i__1, i__2, i__3; |
| 14647 | |
| 14648 | /* Local variables */ |
| 14649 | static integer i__, j, k, info; |
| 14650 | static real temp; |
| 14651 | static logical lside; |
| 14652 | extern logical lsame_(char *, char *); |
| 14653 | static integer nrowa; |
| 14654 | static logical upper; |
| 14655 | extern /* Subroutine */ int xerbla_(char *, integer *); |
| 14656 | static logical nounit; |
| 14657 | |
| 14658 | |
| 14659 | /* |
| 14660 | Purpose |
| 14661 | ======= |
| 14662 | |
| 14663 | STRSM solves one of the matrix equations |
| 14664 | |
| 14665 | op( A )*X = alpha*B, or X*op( A ) = alpha*B, |
| 14666 | |
| 14667 | where alpha is a scalar, X and B are m by n matrices, A is a unit, or |
| 14668 | non-unit, upper or lower triangular matrix and op( A ) is one of |
| 14669 | |
| 14670 | op( A ) = A or op( A ) = A'. |
| 14671 | |
| 14672 | The matrix X is overwritten on B. |
| 14673 | |
| 14674 | Arguments |
| 14675 | ========== |
| 14676 | |
| 14677 | SIDE - CHARACTER*1. |
| 14678 | On entry, SIDE specifies whether op( A ) appears on the left |
| 14679 | or right of X as follows: |
| 14680 | |
| 14681 | SIDE = 'L' or 'l' op( A )*X = alpha*B. |
| 14682 | |
| 14683 | SIDE = 'R' or 'r' X*op( A ) = alpha*B. |
| 14684 | |
| 14685 | Unchanged on exit. |
| 14686 | |
| 14687 | UPLO - CHARACTER*1. |
| 14688 | On entry, UPLO specifies whether the matrix A is an upper or |
| 14689 | lower triangular matrix as follows: |
| 14690 | |
| 14691 | UPLO = 'U' or 'u' A is an upper triangular matrix. |
| 14692 | |
| 14693 | UPLO = 'L' or 'l' A is a lower triangular matrix. |
| 14694 | |
| 14695 | Unchanged on exit. |
| 14696 | |
| 14697 | TRANSA - CHARACTER*1. |
| 14698 | On entry, TRANSA specifies the form of op( A ) to be used in |