(seed, counter) の draw first_draw .. first_draw + size(uniforms) - 1 をまとめて返す。
値は同じ draw の counter_uniform と一致する。
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer(kind=i32), | intent(in) | :: | seed | |||
| integer(kind=i64), | intent(in) | :: | counter(:) | |||
| integer(kind=i64), | intent(in) | :: | first_draw | |||
| real(kind=dp), | intent(out) | :: | uniforms(:) |
subroutine counter_uniforms(seed, counter, first_draw, uniforms) integer(i32), intent(in) :: seed integer(i64), intent(in) :: counter(:), first_draw real(dp), intent(out) :: uniforms(:) type(counter_stream_type) :: stream integer :: i call stream%open(seed, counter, first_draw) do i = 1, size(uniforms) uniforms(i) = stream%next_uniform() end do call stream%close() end subroutine counter_uniforms