18 type(xoshiro256ssw_type) :: rng
19 integer(IK) :: count, itry, ntry
= 10
20 type(display_type) :: disp
27 character(:),
allocatable :: start, stop, change
31 call disp%show(
"count = getChoice([1, 2]); start = 'A'; stop = 'A'; step = getChoice([-1, 1])")
35 call disp%show(
"call setResized(change, count)")
37 call disp%show(
"call setChange(rng, change, start, stop, step)")
38 call setChange(rng, change, start, stop, step)
40 call disp%show( change, deliml
= SK_
"""" )
46 call disp%show(
"count = getUnifRand(1, 10); start = 'A'; stop = 'F'; step = 1")
47 count
= getUnifRand(
1,
10); start
= 'A';
stop = 'F'; step
= 1
50 call disp%show(
"call setResized(change, count)")
52 call disp%show(
"call setChange(rng, change, start, stop, step)")
53 call setChange(rng, change, start, stop, step)
55 call disp%show( change, deliml
= SK_
"""" )
58 call disp%show(
"count = getUnifRand(1, 6); start = 'F'; stop = 'A'; step = -1")
59 count
= getUnifRand(
1,
6); start
= 'F';
stop = 'A'; step
= -1
62 call disp%show(
"call setResized(change, count)")
64 call disp%show(
"call setChange(rng, change, start, stop, step, unique = .true._LK)")
65 call setChange(rng, change, start, stop, step, unique
= .true._LK)
67 call disp%show( change, deliml
= SK_
"""" )
70 call disp%show(
"count = getUnifRand(5, 10); start = 'A'; stop = 'z'; step = 3")
71 count
= getUnifRand(
5,
10); start
= 'A';
stop = 'z'; step
= 3
74 call disp%show(
"call setResized(change, count)")
76 call disp%show(
"call setChange(rng, change, start, stop, step, unique = .true._LK)")
77 call setChange(rng, change, start, stop, step, unique
= .true._LK)
79 call disp%show( change, deliml
= SK_
"""" )
87 integer(IKG),
allocatable :: start, stop, change(:)
91 call disp%show(
"count = getUnifRand(1, 10); start = 0; stop = 9; step = 1")
92 count
= getUnifRand(
1,
10); start
= 0;
stop = 9; step
= 1
95 call disp%show(
"if (allocated(change)) deallocate(change); allocate(change(count))")
96 if (
allocated(change))
deallocate(change);
allocate(change(count))
97 call disp%show(
"call setChange(rng, change, start, stop, step)")
98 call setChange(rng, change, start, stop, step)
100 call disp%show( change, deliml
= SK_
"""" )
103 call disp%show(
"count = getUnifRand(5, 10); start = 9; stop = -9; step = -2")
104 count
= getUnifRand(
5,
10); start
= 9;
stop = -9; step
= -2
107 call disp%show(
"if (allocated(change)) deallocate(change); allocate(change(count))")
108 if (
allocated(change))
deallocate(change);
allocate(change(count))
109 call disp%show(
"call setChange(rng, change, start, stop, step, unique = .true._LK)")
110 call setChange(rng, change, start, stop, step, unique
= .true._LK)
112 call disp%show( change, deliml
= SK_
"""" )
115 call disp%show(
"count = getUnifRand(5, 15); start = 5; stop = 1; step = -2")
116 count
= getUnifRand(
5,
15); start
= 5;
stop = 1; step
= -2
119 call disp%show(
"if (allocated(change)) deallocate(change); allocate(change(count))")
120 if (
allocated(change))
deallocate(change);
allocate(change(count))
121 call disp%show(
"call setChange(rng, change, start, stop, step, unique = .false._LK)")
122 call setChange(rng, change, start, stop, step, unique
= .false._LK)
124 call disp%show( change, deliml
= SK_
"""" )
Select a single (or multiple) element(s) from the input array of intrinsic type of arbitrary kind ran...
Generate minimally-spaced character, integer, real sequences or sequences at fixed intervals of size ...
Allocate or resize (shrink or expand) an input allocatable scalar string or array of rank 1....
Generate and return a scalar or a contiguous array of rank 1 of length s1 of randomly uniformly distr...
This is a generic method of the derived type display_type with pass attribute.
This is a generic method of the derived type display_type with pass attribute.
This module contains procedures and generic interfaces for selecting uniformly-distributed or arbitra...
This module contains procedures and generic interfaces for generating ranges of discrete character,...
This module contains procedures and generic interfaces for resizing allocatable arrays of various typ...
This module contains classes and procedures for computing various statistical quantities related to t...
This module contains classes and procedures for input/output (IO) or generic display operations on st...
type(display_type) disp
This is a scalar module variable an object of type display_type for general display.
This module defines the relevant Fortran kind type-parameters frequently used in the ParaMonte librar...
integer, parameter RK
The default real kind in the ParaMonte library: real64 in Fortran, c_double in C-Fortran Interoperati...
integer, parameter LK
The default logical kind in the ParaMonte library: kind(.true.) in Fortran, kind(....
integer, parameter CK
The default complex kind in the ParaMonte library: real64 in Fortran, c_double_complex in C-Fortran I...
integer, parameter IK
The default integer kind in the ParaMonte library: int32 in Fortran, c_int32_t in C-Fortran Interoper...
integer, parameter SK
The default character kind in the ParaMonte library: kind("a") in Fortran, c_char in C-Fortran Intero...
This is the derived type for declaring and generating objects of type xoshiro256ssw_type containing a...
Generate and return an object of type display_type.
6call setChange(rng, change, start, stop, step)
14call setChange(rng, change, start, stop, step)
18count
= getUnifRand(
1,
10); start
= 'A';
stop = 'F'; step
= 1
22call setChange(rng, change, start, stop, step)
26count
= getUnifRand(
1,
6); start
= 'F';
stop = 'A'; step
= -1
30call setChange(rng, change, start, stop, step, unique
= .true._LK)
34count
= getUnifRand(
5,
10); start
= 'A';
stop = 'z'; step
= 3
38call setChange(rng, change, start, stop, step, unique
= .true._LK)
42count
= getUnifRand(
1,
10); start
= 'A';
stop = 'F'; step
= 1
46call setChange(rng, change, start, stop, step)
50count
= getUnifRand(
1,
6); start
= 'F';
stop = 'A'; step
= -1
54call setChange(rng, change, start, stop, step, unique
= .true._LK)
58count
= getUnifRand(
5,
10); start
= 'A';
stop = 'z'; step
= 3
62call setChange(rng, change, start, stop, step, unique
= .true._LK)
66count
= getUnifRand(
1,
10); start
= 'A';
stop = 'F'; step
= 1
70call setChange(rng, change, start, stop, step)
74count
= getUnifRand(
1,
6); start
= 'F';
stop = 'A'; step
= -1
78call setChange(rng, change, start, stop, step, unique
= .true._LK)
82count
= getUnifRand(
5,
10); start
= 'A';
stop = 'z'; step
= 3
86call setChange(rng, change, start, stop, step, unique
= .true._LK)
90count
= getUnifRand(
1,
10); start
= 'A';
stop = 'F'; step
= 1
94call setChange(rng, change, start, stop, step)
98count
= getUnifRand(
1,
6); start
= 'F';
stop = 'A'; step
= -1
102call setChange(rng, change, start, stop, step, unique
= .true._LK)
106count
= getUnifRand(
5,
10); start
= 'A';
stop = 'z'; step
= 3
110call setChange(rng, change, start, stop, step, unique
= .true._LK)
114count
= getUnifRand(
1,
10); start
= 'A';
stop = 'F'; step
= 1
118call setChange(rng, change, start, stop, step)
122count
= getUnifRand(
1,
6); start
= 'F';
stop = 'A'; step
= -1
126call setChange(rng, change, start, stop, step, unique
= .true._LK)
130count
= getUnifRand(
5,
10); start
= 'A';
stop = 'z'; step
= 3
134call setChange(rng, change, start, stop, step, unique
= .true._LK)
138count
= getUnifRand(
1,
10); start
= 'A';
stop = 'F'; step
= 1
142call setChange(rng, change, start, stop, step)
146count
= getUnifRand(
1,
6); start
= 'F';
stop = 'A'; step
= -1
150call setChange(rng, change, start, stop, step, unique
= .true._LK)
154count
= getUnifRand(
5,
10); start
= 'A';
stop = 'z'; step
= 3
158call setChange(rng, change, start, stop, step, unique
= .true._LK)
162count
= getUnifRand(
1,
10); start
= 'A';
stop = 'F'; step
= 1
166call setChange(rng, change, start, stop, step)
170count
= getUnifRand(
1,
6); start
= 'F';
stop = 'A'; step
= -1
174call setChange(rng, change, start, stop, step, unique
= .true._LK)
178count
= getUnifRand(
5,
10); start
= 'A';
stop = 'z'; step
= 3
182call setChange(rng, change, start, stop, step, unique
= .true._LK)
186count
= getUnifRand(
1,
10); start
= 'A';
stop = 'F'; step
= 1
190call setChange(rng, change, start, stop, step)
194count
= getUnifRand(
1,
6); start
= 'F';
stop = 'A'; step
= -1
198call setChange(rng, change, start, stop, step, unique
= .true._LK)
202count
= getUnifRand(
5,
10); start
= 'A';
stop = 'z'; step
= 3
206call setChange(rng, change, start, stop, step, unique
= .true._LK)
210count
= getUnifRand(
1,
10); start
= 'A';
stop = 'F'; step
= 1
214call setChange(rng, change, start, stop, step)
218count
= getUnifRand(
1,
6); start
= 'F';
stop = 'A'; step
= -1
222call setChange(rng, change, start, stop, step, unique
= .true._LK)
226count
= getUnifRand(
5,
10); start
= 'A';
stop = 'z'; step
= 3
230call setChange(rng, change, start, stop, step, unique
= .true._LK)
234count
= getUnifRand(
1,
10); start
= 'A';
stop = 'F'; step
= 1
238call setChange(rng, change, start, stop, step)
242count
= getUnifRand(
1,
6); start
= 'F';
stop = 'A'; step
= -1
246call setChange(rng, change, start, stop, step, unique
= .true._LK)
250count
= getUnifRand(
5,
10); start
= 'A';
stop = 'z'; step
= 3
254call setChange(rng, change, start, stop, step, unique
= .true._LK)
258count
= getUnifRand(
1,
10); start
= 0;
stop = 9; step
= 1
261if (
allocated(change))
deallocate(change);
allocate(change(count))
262call setChange(rng, change, start, stop, step)
266count
= getUnifRand(
5,
10); start
= 9;
stop = -9; step
= -2
269if (
allocated(change))
deallocate(change);
allocate(change(count))
270call setChange(rng, change, start, stop, step, unique
= .true._LK)
272"-5",
"-9",
"-1",
"+1",
"+7"
274count
= getUnifRand(
5,
15); start
= 5;
stop = 1; step
= -2
277if (
allocated(change))
deallocate(change);
allocate(change(count))
278call setChange(rng, change, start, stop, step, unique
= .false._LK)
280"+1",
"+1",
"+5",
"+5",
"+3",
"+5",
"+5",
"+5",
"+1",
"+3",
"+5",
"+3"
282count
= getUnifRand(
1,
10); start
= 0;
stop = 9; step
= 1
285if (
allocated(change))
deallocate(change);
allocate(change(count))
286call setChange(rng, change, start, stop, step)
290count
= getUnifRand(
5,
10); start
= 9;
stop = -9; step
= -2
293if (
allocated(change))
deallocate(change);
allocate(change(count))
294call setChange(rng, change, start, stop, step, unique
= .true._LK)
296"+9",
"+5",
"+3",
"+1",
"-9",
"+7"
298count
= getUnifRand(
5,
15); start
= 5;
stop = 1; step
= -2
301if (
allocated(change))
deallocate(change);
allocate(change(count))
302call setChange(rng, change, start, stop, step, unique
= .false._LK)
304"+3",
"+1",
"+5",
"+3",
"+1",
"+1",
"+3",
"+3",
"+3",
"+3",
"+1",
"+5",
"+5",
"+1",
"+1"
306count
= getUnifRand(
1,
10); start
= 0;
stop = 9; step
= 1
309if (
allocated(change))
deallocate(change);
allocate(change(count))
310call setChange(rng, change, start, stop, step)
312"+9",
"+7",
"+6",
"+8",
"+2",
"+2",
"+5",
"+2"
314count
= getUnifRand(
5,
10); start
= 9;
stop = -9; step
= -2
317if (
allocated(change))
deallocate(change);
allocate(change(count))
318call setChange(rng, change, start, stop, step, unique
= .true._LK)
320"+9",
"-7",
"-3",
"+5",
"+7",
"+3",
"-1",
"-5",
"+1"
322count
= getUnifRand(
5,
15); start
= 5;
stop = 1; step
= -2
325if (
allocated(change))
deallocate(change);
allocate(change(count))
326call setChange(rng, change, start, stop, step, unique
= .false._LK)
328"+1",
"+1",
"+3",
"+1",
"+1",
"+1"
330count
= getUnifRand(
1,
10); start
= 0;
stop = 9; step
= 1
333if (
allocated(change))
deallocate(change);
allocate(change(count))
334call setChange(rng, change, start, stop, step)
336"+4",
"+1",
"+6",
"+4",
"+0",
"+3",
"+3",
"+2"
338count
= getUnifRand(
5,
10); start
= 9;
stop = -9; step
= -2
341if (
allocated(change))
deallocate(change);
allocate(change(count))
342call setChange(rng, change, start, stop, step, unique
= .true._LK)
344"+9",
"+1",
"-1",
"+5",
"+3",
"-5"
346count
= getUnifRand(
5,
15); start
= 5;
stop = 1; step
= -2
349if (
allocated(change))
deallocate(change);
allocate(change(count))
350call setChange(rng, change, start, stop, step, unique
= .false._LK)
352"+3",
"+5",
"+3",
"+1",
"+5",
"+1",
"+3",
"+3"
354count
= getUnifRand(
1,
10); start
= 0;
stop = 9; step
= 1
357if (
allocated(change))
deallocate(change);
allocate(change(count))
358call setChange(rng, change, start, stop, step)
362count
= getUnifRand(
5,
10); start
= 9;
stop = -9; step
= -2
365if (
allocated(change))
deallocate(change);
allocate(change(count))
366call setChange(rng, change, start, stop, step, unique
= .true._LK)
368"+1",
"-3",
"+5",
"-1",
"-7",
"-9",
"+9",
"+3",
"-5",
"+7"
370count
= getUnifRand(
5,
15); start
= 5;
stop = 1; step
= -2
373if (
allocated(change))
deallocate(change);
allocate(change(count))
374call setChange(rng, change, start, stop, step, unique
= .false._LK)
376"+1",
"+1",
"+5",
"+3",
"+1",
"+5",
"+3",
"+5"
378count
= getUnifRand(
1,
10); start
= 0;
stop = 9; step
= 1
381if (
allocated(change))
deallocate(change);
allocate(change(count))
382call setChange(rng, change, start, stop, step)
384"+9",
"+5",
"+0",
"+4",
"+3",
"+5",
"+3",
"+7",
"+5"
386count
= getUnifRand(
5,
10); start
= 9;
stop = -9; step
= -2
389if (
allocated(change))
deallocate(change);
allocate(change(count))
390call setChange(rng, change, start, stop, step, unique
= .true._LK)
392"-9",
"+1",
"+5",
"-1",
"+3",
"-5"
394count
= getUnifRand(
5,
15); start
= 5;
stop = 1; step
= -2
397if (
allocated(change))
deallocate(change);
allocate(change(count))
398call setChange(rng, change, start, stop, step, unique
= .false._LK)
400"+1",
"+1",
"+5",
"+5",
"+1",
"+3",
"+3",
"+1",
"+5",
"+1",
"+5",
"+5"
402count
= getUnifRand(
1,
10); start
= 0;
stop = 9; step
= 1
405if (
allocated(change))
deallocate(change);
allocate(change(count))
406call setChange(rng, change, start, stop, step)
410count
= getUnifRand(
5,
10); start
= 9;
stop = -9; step
= -2
413if (
allocated(change))
deallocate(change);
allocate(change(count))
414call setChange(rng, change, start, stop, step, unique
= .true._LK)
416"+3",
"+9",
"-7",
"-9",
"-1",
"+7",
"-3",
"+1",
"-5",
"+5"
418count
= getUnifRand(
5,
15); start
= 5;
stop = 1; step
= -2
421if (
allocated(change))
deallocate(change);
allocate(change(count))
422call setChange(rng, change, start, stop, step, unique
= .false._LK)
424"+5",
"+3",
"+1",
"+1",
"+5",
"+1",
"+5",
"+3",
"+5",
"+5",
"+5",
"+1"
426count
= getUnifRand(
1,
10); start
= 0;
stop = 9; step
= 1
429if (
allocated(change))
deallocate(change);
allocate(change(count))
430call setChange(rng, change, start, stop, step)
432"+3",
"+0",
"+5",
"+3",
"+4",
"+6",
"+7",
"+2",
"+0",
"+3"
434count
= getUnifRand(
5,
10); start
= 9;
stop = -9; step
= -2
437if (
allocated(change))
deallocate(change);
allocate(change(count))
438call setChange(rng, change, start, stop, step, unique
= .true._LK)
440"+1",
"+9",
"-1",
"+5",
"+7",
"-5",
"-7",
"-3",
"+3"
442count
= getUnifRand(
5,
15); start
= 5;
stop = 1; step
= -2
445if (
allocated(change))
deallocate(change);
allocate(change(count))
446call setChange(rng, change, start, stop, step, unique
= .false._LK)
448"+5",
"+3",
"+1",
"+1",
"+3",
"+5"
450count
= getUnifRand(
1,
10); start
= 0;
stop = 9; step
= 1
453if (
allocated(change))
deallocate(change);
allocate(change(count))
454call setChange(rng, change, start, stop, step)
456"+9",
"+9",
"+6",
"+7",
"+7",
"+7",
"+5",
"+0",
"+5"
458count
= getUnifRand(
5,
10); start
= 9;
stop = -9; step
= -2
461if (
allocated(change))
deallocate(change);
allocate(change(count))
462call setChange(rng, change, start, stop, step, unique
= .true._LK)
464"-1",
"-7",
"+5",
"+9",
"-9",
"+3",
"+1",
"+7",
"-5",
"-3"
466count
= getUnifRand(
5,
15); start
= 5;
stop = 1; step
= -2
469if (
allocated(change))
deallocate(change);
allocate(change(count))
470call setChange(rng, change, start, stop, step, unique
= .false._LK)
472"+3",
"+1",
"+5",
"+3",
"+1",
"+1",
"+5",
"+3",
"+1",
"+1",
"+1",
"+1",
"+1",
"+3"
474count
= getUnifRand(
1,
10); start
= 0;
stop = 9; step
= 1
477if (
allocated(change))
deallocate(change);
allocate(change(count))
478call setChange(rng, change, start, stop, step)
480"+8",
"+2",
"+8",
"+2"
482count
= getUnifRand(
5,
10); start
= 9;
stop = -9; step
= -2
485if (
allocated(change))
deallocate(change);
allocate(change(count))
486call setChange(rng, change, start, stop, step, unique
= .true._LK)
488"+3",
"-9",
"-5",
"-1",
"-3"
490count
= getUnifRand(
5,
15); start
= 5;
stop = 1; step
= -2
493if (
allocated(change))
deallocate(change);
allocate(change(count))
494call setChange(rng, change, start, stop, step, unique
= .false._LK)
496"+1",
"+5",
"+1",
"+3",
"+3",
"+3",
"+3",
"+3",
"+5",
"+5",
"+5"