1import numpy as np
4SOURCE_FILE = "gaussian/__init__.py"
7def create_gaussian(*, n_samples: int, stddev: float, seed: int) -> np.ndarray:
8 rng = np.random.default_rng(seed)
9 x = np.round(rng.normal(0, stddev, n_samples)).astype(np.int16)
10 return x
13datasets = [
14 {
15 "name": "gaussian-1",
16 "version": "1",
17 "create": lambda: create_gaussian(n_samples=1_000_000, stddev=1, seed=0),
18 "description": "Rounded Gaussian integers with σ=1.",
19 "tags": [],
20 "source_file": SOURCE_FILE,
21 },
22 {
23 "name": "gaussian-2",
24 "version": "1",
25 "create": lambda: create_gaussian(n_samples=1_000_000, stddev=2, seed=0),
26 "description": "Rounded Gaussian integers with σ=2.",
27 "tags": [],
28 "source_file": SOURCE_FILE,
29 },
30 {
31 "name": "gaussian-3",
32 "version": "1",
33 "create": lambda: create_gaussian(n_samples=1_000_000, stddev=3, seed=0),
34 "description": "Rounded Gaussian integers with σ=3.",
35 "tags": [],
36 "source_file": SOURCE_FILE,
37 },
38 {
39 "name": "gaussian-5",
40 "version": "1",
41 "create": lambda: create_gaussian(n_samples=1_000_000, stddev=5, seed=0),
42 "description": "Rounded Gaussian integers with σ=5.",
43 "tags": [],
44 "source_file": SOURCE_FILE,
45 },
46 {
47 "name": "gaussian-8",
48 "version": "1",
49 "create": lambda: create_gaussian(n_samples=1_000_000, stddev=8, seed=0),
50 "description": "Rounded Gaussian integers with σ=8.",
51 "tags": [],
52 "source_file": SOURCE_FILE,
53 },
54]