dwnlt3 Subroutine

private subroutine dwnlt3(i, imax, m, mdw, ipivot, h, w)

Perform column interchange. Exchange elements of permuted index vector and perform column interchanges.

Revision history

  • 790701 DATE WRITTEN. Hanson, R. J., (SNLA), Haskell, K. H., (SNLA)
  • 890620 Code extracted from WNLIT and made a subroutine. (RWC))
  • 900604 DP version created from SP version. (RWC)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: i
integer, intent(in) :: imax
integer, intent(in) :: m
integer, intent(in) :: mdw
integer, intent(inout) :: ipivot(*)
real(kind=wp), intent(inout) :: h(*)
real(kind=wp), intent(inout) :: w(mdw,*)

Calls

proc~~dwnlt3~~CallsGraph proc~dwnlt3 bspline_defc_module::dwnlt3 proc~dswap bspline_blas_module::dswap proc~dwnlt3->proc~dswap

Called by

proc~~dwnlt3~~CalledByGraph proc~dwnlt3 bspline_defc_module::dwnlt3 proc~dwnlit bspline_defc_module::dwnlit proc~dwnlit->proc~dwnlt3 proc~dwnlsm bspline_defc_module::dwnlsm proc~dwnlsm->proc~dwnlit proc~dwnnls bspline_defc_module::dwnnls proc~dwnnls->proc~dwnlsm proc~dlpdp bspline_defc_module::dlpdp proc~dlpdp->proc~dwnnls proc~dlsi bspline_defc_module::dlsi proc~dlsi->proc~dlpdp proc~dlsei bspline_defc_module::dlsei proc~dlsei->proc~dlsi proc~dfcmn bspline_defc_module::dfcmn proc~dfcmn->proc~dlsei proc~dfc bspline_defc_module::dfc proc~dfc->proc~dfcmn

Source Code

   subroutine dwnlt3 (i, imax, m, mdw, ipivot, h, w)

   integer,intent(in) :: i
   integer,intent(in) :: imax
   integer,intent(inout) :: ipivot(*)
   integer ,intent(in):: m
   integer,intent(in) :: mdw
   real(wp),intent(inout) :: h(*)
   real(wp),intent(inout) :: w(mdw,*)

   real(wp) :: t
   integer :: itemp

   if (imax/=i) then
      itemp        = ipivot(i)
      ipivot(i)    = ipivot(imax)
      ipivot(imax) = itemp
      call dswap(m, w(1,imax), 1, w(1,i), 1)
      t       = h(imax)
      h(imax) = h(i)
      h(i)    = t
   endif

   end subroutine dwnlt3