Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer | :: | n | ||||
doubleprecision | :: | x(*) | ||||
integer | :: | incx | ||||
doubleprecision | :: | y(*) | ||||
integer | :: | incy |
subroutine mat_rswap(n,x,incx,y,incy) integer :: n doubleprecision :: x(*) integer :: incx doubleprecision :: y(*) integer :: incy doubleprecision :: t integer :: ix integer :: iy integer :: i if (n .le. 0) return ix = 1 iy = 1 if (incx.lt.0) ix = (-n+1)*incx+1 if (incy.lt.0) iy = (-n+1)*incy+1 do i = 1, n t = x(ix) x(ix) = y(iy) y(iy) = t ix = ix + incx iy = iy + incy enddo end subroutine mat_rswap