File size: 1,018 Bytes
8791cfe
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
#!/usr/bin/env python3
import argparse
from pathlib import Path

import numpy as np

ROOT = Path(__file__).resolve().parents[1]
import sys
sys.path.insert(0, str(ROOT))
from model.nncam import generate_fake_data


def main():
    parser = argparse.ArgumentParser(description="Create deterministic synthetic NNCAM columns.")
    parser.add_argument("--samples", type=int, default=192)
    parser.add_argument("--seed", type=int, default=42)
    parser.add_argument("--output", type=Path, default=ROOT / "data/nncam_fake.npz")
    args = parser.parse_args()
    x, y, lat, time = generate_fake_data(args.samples, args.seed)
    assert x.shape == (args.samples, 94) and y.shape == (args.samples, 65)
    assert np.isfinite(x).all() and np.isfinite(y).all() and (y[:, 64] >= 0).all()
    args.output.parent.mkdir(parents=True, exist_ok=True)
    np.savez_compressed(args.output, x=x, y=y, lat=lat, time=time)
    print(f"saved {args.output}: x={x.shape}, y={y.shape}, finite=true")


if __name__ == "__main__":
    main()