-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathStorm.cpp
219 lines (165 loc) · 6.66 KB
/
Storm.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
#include "Storm.hpp"
extern "C" {
const char* get_version() {
return Storm::get_version();
}
Storm::Unsigned max_uint() {
return Storm::Meters::max_uint();
}
Storm::Integer min_int() {
return Storm::Meters::min_int();
}
Storm::Integer max_int() {
return Storm::Meters::max_int();
}
Storm::Float min_float() {
return Storm::Meters::min_float();
}
Storm::Float max_float() {
return Storm::Meters::max_float();
}
Storm::Float min_below() {
return Storm::Meters::min_below();
}
Storm::Float min_above() {
return Storm::Meters::min_above();
}
Storm::Float canonical_variate() {
return Storm::GetFloat::canonical_variate();
}
Storm::Float uniform_real_variate(Storm::Float a, Storm::Float b) {
return Storm::GetFloat::uniform_real_variate(a, b);
}
Storm::Float exponential_variate(Storm::Float lambda_rate) {
return Storm::GetFloat::exponential_variate(lambda_rate);
}
Storm::Float gamma_variate(Storm::Float shape, Storm::Float scale) {
return Storm::GetFloat::gamma_variate(shape, scale);
}
Storm::Float weibull_variate(Storm::Float shape, Storm::Float scale) {
return Storm::GetFloat::weibull_variate(shape, scale);
}
Storm::Float normal_variate(Storm::Float mean, Storm::Float std_dev) {
return Storm::GetFloat::normal_variate(mean, std_dev);
}
Storm::Float log_normal_variate(Storm::Float log_mean, Storm::Float log_deviation) {
return Storm::GetFloat::log_normal_variate(log_mean, log_deviation);
}
Storm::Float extreme_value_variate(Storm::Float location, Storm::Float scale) {
return Storm::GetFloat::extreme_value_variate(location, scale);
}
Storm::Float chi_squared_variate(double degrees_of_freedom) {
return Storm::GetFloat::chi_squared_variate(degrees_of_freedom);
}
Storm::Float cauchy_variate(Storm::Float location, Storm::Float scale) {
return Storm::GetFloat::cauchy_variate(location, scale);
}
Storm::Float fisher_f_variate(double degrees_of_freedom_1, double degrees_of_freedom_2) {
return Storm::GetFloat::fisher_f_variate(degrees_of_freedom_1, degrees_of_freedom_2);
}
Storm::Float student_t_variate(double degrees_of_freedom) {
return Storm::GetFloat::student_t_variate(degrees_of_freedom);
}
Storm::Float beta_variate(Storm::Float alpha, Storm::Float beta) {
return Storm::GetFloat::beta_variate(alpha, beta);
}
Storm::Float pareto_variate(Storm::Float alpha) {
return Storm::GetFloat::pareto_variate(alpha);
}
Storm::Float vonmises_variate(Storm::Float mu, Storm::Float kappa) {
return Storm::GetFloat::vonmises_variate(mu, kappa);
}
Storm::Float triangular_variate(Storm::Float low, Storm::Float high, Storm::Float mode) {
return Storm::GetFloat::triangular_variate(low, high, mode);
}
bool bernoulli_variate(double truth_factor) {
return Storm::GetBool::bernoulli_variate(truth_factor);
}
bool percent_true(Storm::Float truth_factor) {
return Storm::GetBool::percent_true(truth_factor);
}
Storm::Unsigned uniform_uint_variate(Storm::Unsigned lo, Storm::Unsigned hi) {
return Storm::GetInt::uniform_uint_variate(lo, hi);
}
Storm::Integer uniform_int_variate(Storm::Integer lo, Storm::Integer hi) {
return Storm::GetInt::uniform_int_variate(lo, hi);
}
Storm::Integer binomial_variate(Storm::Integer number_of_trials, double probability) {
return Storm::GetInt::binomial_variate(number_of_trials, probability);
}
Storm::Integer negative_binomial_variate(Storm::Integer number_of_trials, double probability) {
return Storm::GetInt::negative_binomial_variate(number_of_trials, probability);
}
Storm::Integer geometric_variate(double probability) {
return Storm::GetInt::geometric_variate(probability);
}
Storm::Integer poisson_variate(double mean) {
return Storm::GetInt::poisson_variate(mean);
}
Storm::Integer random_below(Storm::Integer number) {
return Storm::GetInt::random_below(number);
}
Storm::Integer random_range(Storm::Integer start, Storm::Integer stop, Storm::Integer step) {
return Storm::GetInt::random_range(start, stop, step);
}
Storm::Integer d(Storm::Integer sides) {
return Storm::GetInt::d(sides);
}
Storm::Integer dice(Storm::Integer rolls, Storm::Integer sides) {
return Storm::GetInt::dice(rolls, sides);
}
Storm::Integer ability_dice(Storm::Integer number) {
return Storm::GetInt::ability_dice(number);
}
Storm::Integer plus_or_minus(Storm::Integer number) {
return Storm::GetInt::plus_or_minus(number);
}
Storm::Integer plus_or_minus_linear(Storm::Integer number) {
return Storm::GetInt::plus_or_minus_linear(number);
}
Storm::Integer plus_or_minus_gauss(Storm::Integer number) {
return Storm::GetInt::plus_or_minus_gauss(number);
}
Storm::Integer random_index(Storm::Integer number) {
return Storm::GetIndex::random_index(number);
}
Storm::Integer front_linear(Storm::Integer number) {
return Storm::GetIndex::front_linear(number);
}
Storm::Integer back_linear(Storm::Integer number) {
return Storm::GetIndex::back_linear(number);
}
Storm::Integer middle_linear(Storm::Integer number) {
return Storm::GetIndex::middle_linear(number);
}
Storm::Integer quantum_linear(Storm::Integer number) {
return Storm::GetIndex::quantum_linear(number);
}
Storm::Integer front_gauss(Storm::Integer number) {
return Storm::GetIndex::front_gauss(number);
}
Storm::Integer middle_gauss(Storm::Integer number) {
return Storm::GetIndex::middle_gauss(number);
}
Storm::Integer back_gauss(Storm::Integer number) {
return Storm::GetIndex::back_gauss(number);
}
Storm::Integer quantum_gauss(Storm::Integer number) {
return Storm::GetIndex::quantum_gauss(number);
}
Storm::Integer front_poisson(Storm::Integer number) {
return Storm::GetIndex::front_poisson(number);
}
Storm::Integer back_poisson(Storm::Integer number) {
return Storm::GetIndex::back_poisson(number);
}
Storm::Integer middle_poisson(Storm::Integer number) {
return Storm::GetIndex::middle_poisson(number);
}
Storm::Integer quantum_poisson(Storm::Integer number) {
return Storm::GetIndex::quantum_poisson(number);
}
Storm::Integer quantum_monty(Storm::Integer number) {
return Storm::GetIndex::quantum_monty(number);
}
}