scramble_array_int64 Subroutine

private subroutine scramble_array_int64(array)

Arguments

Type IntentOptional Attributes Name
integer(kind=int64), intent(inout) :: array(:)

Called by

proc~~scramble_array_int64~~CalledByGraph proc~scramble_array_int64 scramble_array_int64 interface~pic_scramble_array pic_scramble_array interface~pic_scramble_array->proc~scramble_array_int64

Variables

Type Visibility Attributes Name Initial
integer(kind=int32), private :: i
integer(kind=int32), private :: j
integer(kind=int32), private :: n
real(kind=sp), private :: rand_val
integer(kind=int32), private :: temp

Source Code

   subroutine scramble_array_int64(array)
      integer(int64), intent(inout) :: array(:)
      integer(int32) :: i, j, n
      integer(int32) :: temp
      real(sp) :: rand_val

      n = size(array)
      do i = n, 2, -1
         call random_number(rand_val)
         j = int(rand_val*i) + 1
         temp = array(i)
         array(i) = array(j)
         array(j) = temp
      end do
   end subroutine scramble_array_int64