upmtr Interface

public interface upmtr

UPMTR overwrites the general complex M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q * C C * Q TRANS = 'C': QH * C C * QH where Q is a complex unitary matrix of order nq, with nq = m if SIDE = 'L' and nq = n if SIDE = 'R'. Q is defined as the product of nq-1 elementary reflectors, as returned by CHPTRD using packed storage: if UPLO = 'U', Q = H(nq-1) . . . H(2) H(1); if UPLO = 'L', Q = H(1) H(2) . . . H(nq-1).


Subroutines

public pure subroutine cupmtr(side, uplo, trans, m, n, ap, tau, c, ldc, work, info)

Arguments

Type IntentOptional Attributes Name
character(len=1), intent(in) :: side
character(len=1), intent(in) :: uplo
character(len=1), intent(in) :: trans
integer(kind=ilp), intent(in) :: m
integer(kind=ilp), intent(in) :: n
complex(kind=sp), intent(inout) :: ap(*)
complex(kind=sp), intent(in) :: tau(*)
complex(kind=sp), intent(inout) :: c(ldc,*)
integer(kind=ilp), intent(in) :: ldc
complex(kind=sp), intent(out) :: work(*)
integer(kind=ilp), intent(out) :: info

public pure subroutine zupmtr(side, uplo, trans, m, n, ap, tau, c, ldc, work, info)

Arguments

Type IntentOptional Attributes Name
character(len=1), intent(in) :: side
character(len=1), intent(in) :: uplo
character(len=1), intent(in) :: trans
integer(kind=ilp), intent(in) :: m
integer(kind=ilp), intent(in) :: n
complex(kind=dp), intent(inout) :: ap(*)
complex(kind=dp), intent(in) :: tau(*)
complex(kind=dp), intent(inout) :: c(ldc,*)
integer(kind=ilp), intent(in) :: ldc
complex(kind=dp), intent(out) :: work(*)
integer(kind=ilp), intent(out) :: info

Module Procedures

public interface stdlib_cupmtr()

Arguments

None

public interface stdlib_zupmtr()

Arguments

None