52 lines
793 B
TypeScript
52 lines
793 B
TypeScript
export const DISTS = [
|
|
"uniform",
|
|
"normal",
|
|
"binomial",
|
|
"poisson",
|
|
"exponential",
|
|
"hypergeometric",
|
|
] as const;
|
|
|
|
export type Dist = (typeof DISTS)[number];
|
|
|
|
export const VERSION = "1.0.0";
|
|
|
|
export interface Options {
|
|
dist: Dist;
|
|
count: number;
|
|
decimals: number;
|
|
// uniform
|
|
min: number;
|
|
max: number;
|
|
// normal
|
|
mean: number;
|
|
stddev: number;
|
|
// binomial
|
|
trials: number;
|
|
prob: number;
|
|
// poisson
|
|
lambda: number;
|
|
// hypergeometric
|
|
popSize: number;
|
|
successes: number;
|
|
draws: number;
|
|
}
|
|
|
|
export function defaultOptions(dist: Dist): Options {
|
|
return {
|
|
dist,
|
|
count: 1,
|
|
decimals: 0,
|
|
min: 0,
|
|
max: 100,
|
|
mean: 0,
|
|
stddev: 1,
|
|
trials: 10,
|
|
prob: 0.5,
|
|
lambda: 1,
|
|
popSize: 100,
|
|
successes: 50,
|
|
draws: 10,
|
|
};
|
|
}
|