46 output <<
"staticSave for distribution " << D::distributionName() <<
"\n";
48 double v1, v2, k1, k2;
49 for (i=0; i < n; i++) r += D::shoot();
51 std::ofstream file (
"ss1_distribution.save");
52 D::saveFullState(file);
54 D::saveFullState(file);
57 int pr =
output.precision(20);
58 output <<
"v1 = " << v1 <<
" v2 = " << v2 <<
"\n";
62 for (i=0; i < n; i++) r += D::shoot();
64 std::ifstream file (
"ss1_distribution.save");
65 D::restoreFullState(file);
67 for (i=0; i < n; i++) r += D::shoot();
68 D::restoreFullState(file);
71 int pr =
output.precision(20);
72 output <<
"k1 = " << k1 <<
" k2 = " << k2 <<
"\n";
76 if ( (k1 != v1) || (k2 != v2) ) {
77 std::cout <<
"???? restoreFullState failed for " << D::distributionName() <<
"\n";
79 output <<
"???? restoreFullState failed for " << D::distributionName() <<
"\n";
84 for (i=0; i < n; i++) r += D::shoot();
86 std::ofstream file (
"ss2_distribution.save");
87 D::saveDistState(file) << *D::getTheEngine();
89 D::saveDistState(file) << *D::getTheEngine();
92 int pr =
output.precision(20);
93 output <<
"v1 = " << v1 <<
" v2 = " << v2 <<
"\n";
97 for (i=0; i < n; i++) r += D::shoot();
99 std::ifstream file (
"ss2_distribution.save");
100 D::restoreDistState(file) >> *D::getTheEngine();
102 for (i=0; i < n; i++) r += D::shoot();
103 D::restoreDistState(file) >> *D::getTheEngine();
106 int pr =
output.precision(20);
107 output <<
"k1 = " << k1 <<
" k2 = " << k2 <<
"\n";
111 if ( (k1 != v1) || (k2 != v2) ) {
112 std::cout <<
"???? restoreDistState failed for " << D::distributionName() <<
"\n";
114 output <<
"???? restoreDistState failed for " << D::distributionName() <<
"\n";
126 output <<
"staticSaveShootBit for " << D::distributionName() <<
"\n";
130 for (i=0; i < n; i++) r += D::shoot();
131 for (i=0; i < n; i++) bit |= D::shootBit();
133 std::ofstream file (
"ss1_distribution.save");
134 D::saveFullState(file);
136 for (i=0; i<25; i++) {
140 for (i=0; i < n; i++) bit |= D::shootBit();
141 D::saveFullState(file);
143 for (i=0; i<25; i++) {
148 int pr =
output.precision(20);
149 output << std::hex <<
"v1 = " << v1 <<
" v2 = " << v2 << std::dec <<
"\n";
153 for (i=0; i < n; i++) r += D::shoot();
155 std::ifstream file (
"ss1_distribution.save");
156 D::restoreFullState(file);
158 for (i=0; i<25; i++) {
162 for (i=0; i < n; i++) r += D::shoot();
163 D::restoreFullState(file);
165 for (i=0; i<25; i++) {
170 int pr =
output.precision(20);
171 output << std::hex <<
"k1 = " << k1 <<
" k2 = " << k2 << std::dec <<
"\n";
175 if ( (k1 != v1) || (k2 != v2) ) {
176 std::cout <<
"???? restoreFullState failed for D shootBit()\n";
178 output <<
"???? restoreFullState failed for D shootBit()\n";
183 for (i=0; i < n; i++) r += D::shoot();
184 for (i=0; i < n; i++) bit |= D::shootBit();
186 std::ofstream file (
"ss2_distribution.save");
187 D::saveDistState(file) << *D::getTheEngine();
189 for (i=0; i<25; i++) {
193 for (i=0; i < n; i++) bit |= D::shootBit();
194 D::saveDistState(file) << *D::getTheEngine();
196 for (i=0; i<25; i++) {
201 int pr =
output.precision(20);
202 output << std::hex <<
"v1 = " << v1 <<
" v2 = " << v2 << std::dec <<
"\n";
206 for (i=0; i < n; i++) r += D::shoot();
208 std::ifstream file (
"ss2_distribution.save");
209 D::restoreDistState(file) >> *D::getTheEngine();
211 for (i=0; i<25; i++) {
215 for (i=0; i < n; i++) r += D::shoot();
216 for (i=0; i < n; i++) r += D::shootBit();
217 D::restoreDistState(file) >> *D::getTheEngine();
219 for (i=0; i<25; i++) {
224 int pr =
output.precision(20);
225 output << std::hex <<
"k1 = " << k1 <<
" k2 = " << k2 << std::dec <<
"\n";
229 if ( (k1 != v1) || (k2 != v2) ) {
230 std::cout <<
"???? restoreDistState failed for RnadFlat::shootBit()\n";
232 output <<
"???? restoreDistState failed for RnadFlat::shootBit()\n";