random_seed

From: Kurda Yon (kurdayon_at_yahoo.com)
Date: 07/26/04


Date: 26 Jul 2004 01:58:31 -0700

Hi,

in the posting from 2003-09-23 13:07:12 PST
http://groups.google.com/groups?hl=en&lr=&ie=UTF-8&selm=bkq91h%248i8%2407%241%40news.t-online.com
I have found the following example of the usage "random seed":

program random3
   implicit none
   real, dimension(10) :: randArray
   integer, allocatable, dimension(:) :: seed
   integer :: size

   call random_seed(size=size) ! get size of seed
   allocate(seed(size)) ! allocate its space
   call random_seed()
   call random_number(randArray)
   write(*,*) randArray
   call random_seed(get=seed) ! get last value of seed
   call random_seed(put=seed) ! restore seed to last value
   call random_number(randArray)
   write(*,*) randArray
end program random3

What I cannot understand is what functions "random_seed" performs.
In the above program I have deleted all lines related with
random_seed:

program random3
   implicit none
   real, dimension(10) :: randArray
   integer :: size
   call random_number(randArray)
   write(*,*) randArray
   call random_number(randArray)
   write(*,*) randArray
end program random3

and obtained in such way program gives the same output as the previous
one.
Can anybody explain me what for author wanted to use "random_seed" and
why it does not work?