trsm_i(3PI) Sun Interval Performance Library trsm_i(3PI)NAMEtrsm_i - Interval triangular solve.
DESCRIPTION
The routine TRSM_I bounds one of the matrix equations:
B = ALPHA * A_inverse * B,
B = ALPHA * A_inverse_transposed * B,
B = ALPHA * B * A_inverse,
B = ALPHA * B * A_inverse_transposed.
ALPHA is an interval, A is a unit, or non-unit, upper or lower trianguā
lar interval matrix, and B is a general interval matrix. This routine
returns immediately if M or N is equal to zero.
SYNOPSIS
SUBROUTINE TRSM_I( A, B [, SIDE] [, UPLO] [, TRANSA] [, DIAG] [, ALPHA] )
INTERVAL, INTENT(IN) :: B(:,:)
INTERVAL, INTENT(INOUT) :: A(:,:)
TYPE(blas_side_type), INTENT(IN), OPTIONAL :: SIDE
TYPE(blas_uplo_type), INTENT(IN), OPTIONAL :: UPLO
TYPE(blas_trans_type), INTENT(IN), OPTIONAL :: TRANSA
TYPE(blas_diag_type), INTENT(IN), OPTIONAL :: DIAG
INTERVAL, INTENT(IN), OPTIONAL :: ALPHA
where
B has shape (M,N).
If SIDE = blas_left_side (default): A has shape (M,M),
if SIDE /= blas_left_side : A has shape (N,N).
ARGUMENTS
B (input)
On entry, B is array of DIMENSION (M,N)
Unchanged on exit.
A (input/output)
On entry, if SIDE = blas_left_side:
A is array of DIMENSION (M,M),
if SIDE /= blas_left_side:
A is array of DIMENSION (N,N).
On exit, if SIDE = blas_left_side:
B = ALPHA * A_inverse * B or
B = ALPHA * A_inverse_transposed * B
If SIDE /= blas_left_side:
B = ALPHA * B * A_inverse
B = ALPHA * B * A_inverse_transposed
ALPHA (input)
On entry, ALPHA specifies the scalar ALPHA.
Default value is ALPHA = [1,1].
Unchanged on exit.
SIDE(input)
Scalar element. On entry, SIDE should be equal to
blas_side_type value, i.e. SIDE should take one
of the two values:
blas_left_side or blas_right_side.
Default value: blas_left_side
Unchanged on exit.
UPLO(input)
Scalar element.
Specifies if the matrix operand is an upper or
lower tringular part of the matrix.
Possible values:
UPLO = blas_upper (default)
UPLO = blas_lower
Unchanged on exit.
TRANSA (input)
Scalar element.
Specifies the matrix A transpose.
Possible values:
TRANSA = blas_no_trans (default)
TRANSA = blas_trans
Unchanged on exit.
DIAG (input)
Scalar element.
Specifies whether or not the matrix operand
has unit diagonal entries.
Possible values:
DIAG = blas_non_unit_diag (default)
DIAG = blas_unit_diag
Unchanged on exit.
ERRORS
blas_error_alloc
B or A is unallocated array
blas_error_shape
B or A has unappropriate shape
6 Mar 2009 trsm_i(3PI)