orbdb5 Interface

public interface orbdb5

ORBDB5 orthogonalizes the column vector X = [ X1 ] [ X2 ] with respect to the columns of Q = [ Q1 ] . [ Q2 ] The columns of Q must be orthonormal. If the projection is zero according to Kahan's "twice is enough" criterion, then some other vector from the orthogonal complement is returned. This vector is chosen in an arbitrary but deterministic way.


Subroutines

public pure subroutine dorbdb5(m1, m2, n, x1, incx1, x2, incx2, q1, ldq1, q2, ldq2, work, lwork, info)

Arguments

Type IntentOptional Attributes Name
integer(kind=ilp), intent(in) :: m1
integer(kind=ilp), intent(in) :: m2
integer(kind=ilp), intent(in) :: n
real(kind=dp), intent(inout) :: x1(*)
integer(kind=ilp), intent(in) :: incx1
real(kind=dp), intent(inout) :: x2(*)
integer(kind=ilp), intent(in) :: incx2
real(kind=dp), intent(in) :: q1(ldq1,*)
integer(kind=ilp), intent(in) :: ldq1
real(kind=dp), intent(in) :: q2(ldq2,*)
integer(kind=ilp), intent(in) :: ldq2
real(kind=dp), intent(out) :: work(*)
integer(kind=ilp), intent(in) :: lwork
integer(kind=ilp), intent(out) :: info

public pure subroutine sorbdb5(m1, m2, n, x1, incx1, x2, incx2, q1, ldq1, q2, ldq2, work, lwork, info)

Arguments

Type IntentOptional Attributes Name
integer(kind=ilp), intent(in) :: m1
integer(kind=ilp), intent(in) :: m2
integer(kind=ilp), intent(in) :: n
real(kind=sp), intent(inout) :: x1(*)
integer(kind=ilp), intent(in) :: incx1
real(kind=sp), intent(inout) :: x2(*)
integer(kind=ilp), intent(in) :: incx2
real(kind=sp), intent(in) :: q1(ldq1,*)
integer(kind=ilp), intent(in) :: ldq1
real(kind=sp), intent(in) :: q2(ldq2,*)
integer(kind=ilp), intent(in) :: ldq2
real(kind=sp), intent(out) :: work(*)
integer(kind=ilp), intent(in) :: lwork
integer(kind=ilp), intent(out) :: info

Module Procedures

public interface stdlib_dorbdb5()

Arguments

None

public interface stdlib_sorbdb5()

Arguments

None