randlib: fix grand_clcg4.tst display
[scilab.git] / scilab / modules / randlib / tests / unit_tests / grand_clcg4.dia.ref
1 //<-- CLI SHELL MODE -->
2 // =============================================================================
3 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
4 // Copyright (C) ????-2008 - INRIA
5 //
6 //  This file is distributed under the same license as the Scilab package.
7 // =============================================================================
8 grand("setgen","clcg4");
9 // Low level test for grand
10 //**********************************************************************
11 //     A test program for the bottom level routines
12 //     Scilab implementation of tstbot.f
13 //**********************************************************************
14 NB       = 10
15  NB  = 
16    10.
17 NR       = 1000
18  NR  = 
19    1000.
20 answer   = ones(NB,NR);
21 genlst   = [1,5,10,20,32]
22  genlst  = 
23    1.   5.   10.   20.   32.
24 nbad     = 0;
25 str      = ["For five virtual generators of the 101"
26 " This test generates "+string(NB)+" numbers then resets the block"
27 "      and does it again"
28 " Any disagreements are reported -- there should be none"];
29 mprintf(strcat(str, "\n"));
30 For five virtual generators of the 101
31  This test generates 10 numbers then resets the block
32       and does it again
33  Any disagreements are reported -- there should be none
34 //
35 //     Set up Generators
36 //
37 grand("setall",12345,54321,6789,9876);
38 //
39 //     For a selected set of generators
40 //
41 for ixgen = 1:5
42     igen = genlst(ixgen)
43     grand("setcgn",igen);
44     mprintf(" Testing generator "+string(igen)+"\n");
45     //
46     //     Use NB blocks
47     //
48     grand("initgn",-1);
49     SD=grand("getsd");iseed1=SD(1);iseed2=SD(2);
50     for iblock = 1:NB
51         //     Generate NR numbers
52         answer(iblock,1:NR)= grand(1,NR,"lgi");
53         grand("initgn",1);
54     end
55     grand("initgn",-1);
56     //
57     //     Do it again and compare answers
58     //
59     SD=grand("getsd");iseed1=SD(1);iseed2=SD(2);
60     //
61     //     Use NB blocks
62     //
63     for iblock = 1:NB
64         //     Generate NR numbers
65         itmp = grand(1,NR,"lgi");
66         if itmp<>answer(iblock,:) then
67             str=[" Disagreement on regeneration of numbers" ..
68             +" Block "+string(iblock)+" N within Block "];
69             mprintf(str);
70         end
71         if itmp<>answer(iblock,:) then bugmes();quit;end
72         grand("initgn",1);
73     end
74     mprintf(" Finished testing generator "+string(igen)+"\n");
75     mprintf(" Test completed successfully\n");
76 end
77  igen  = 
78    1.
79  Testing generator 1
80  Finished testing generator 1
81  Test completed successfully
82  igen  = 
83    5.
84  Testing generator 5
85  Finished testing generator 5
86  Test completed successfully
87  igen  = 
88    10.
89  Testing generator 10
90  Finished testing generator 10
91  Test completed successfully
92  igen  = 
93    20.
94  Testing generator 20
95  Finished testing generator 20
96  Test completed successfully
97  igen  = 
98    32.
99  Testing generator 32
100  Finished testing generator 32
101  Test completed successfully