21#include "./base/base_uses.f90"
27 CHARACTER(len=*),
PARAMETER,
PRIVATE :: moduleN =
'input_restart_rng'
46 INTEGER,
INTENT(IN) :: nsize
47 INTEGER,
DIMENSION(:, :) :: ascii
49 CHARACTER(LEN=rng_record_length) :: rng_record
50 INTEGER :: ik, irk, nlist
53 TYPE(
val_type),
POINTER :: my_val, old_val
55 cpassert(
ASSOCIATED(rng_section))
56 cpassert(rng_section%ref_count > 0)
58 NULLIFY (my_val, old_val, section, vals)
60 section => rng_section%section
65 CALL cp_abort(__location__, &
66 "section "//trim(section%name)//
" does not contain keyword "// &
71 IF (
SIZE(rng_section%values, 2) == 1)
EXIT
75 vals => rng_section%values(ik, 1)%list
78 IF (
ASSOCIATED(vals))
THEN
91 new_pos => new_pos%rest
93 old_val => new_pos%first_el
95 new_pos%first_el => my_val
102 NULLIFY (new_pos%rest)
104 new_pos => new_pos%rest
112 rng_section%values(ik, 1)%list => vals
Parallel (pseudo)random number generator (RNG) for multiple streams and substreams of random numbers.
integer, parameter, public rng_record_length
Utilities for string manipulations.
subroutine, public ascii_to_string(nascii, string)
Convert a sequence of integer numbers (ASCII code) to a string. Blanks are inserted for invalid ASCII...