Huamonarch
65863b326f
为 RNG 模块添加 CTest 单元测试,覆盖常量/线性/漂移/正弦/复合/布尔/注册表/阀对等模型
2026-05-15 09:14:02 +08:00
Huamonarch
672412e5a8
docs: add RNG changelog documenting all 2026-05-13 changes
2026-05-13 17:07:41 +08:00
Huamonarch
1e781a7c03
feat: add ! negation operator for boolean models
...
Prefix any boolean model reference with ! to negate its output.
Works with all boolean models: !toggle_2s, !valve_px_std:toggle_2s, !bool_50, etc.
2026-05-13 16:56:30 +08:00
Huamonarch
e4233cc23d
fix: add period_ms to linear and drift models to prevent unbounded divergence
...
Without period, y=k*t+b and y=base+drift_rate*t grow infinitely, which is
unrealistic for industrial simulation. period_ms makes t wrap modulo the period,
producing sawtooth patterns that simulate per-cycle behavior (e.g. tension build-up
per coil, sensor drift per shift).
2026-05-13 16:34:00 +08:00
Huamonarch
256aa07c1c
docs: add comprehensive RNG project README
2026-05-13 16:14:42 +08:00
Huamonarch
47dd4fad4b
fix: qualify is_same_v with std:: in FlowData constructor
2026-05-13 16:02:27 +08:00
Huamonarch
f41ce0c40f
fix: GuassRand use sigma as stddev directly instead of sqrt(sigma)
2026-05-13 15:53:25 +08:00
Huamonarch
5ee17627e9
fix: address code review issues
...
- read_csv.hpp: replace std::exit(1) with std::runtime_error throw
- read_csv.hpp: remove duplicate #pragma once
- RNG.cc: wrap JSON load in try-catch to prevent crash on missing config
- Generator.cc: fix comments to reflect actual 3-pass structure
2026-05-13 15:46:06 +08:00
Huamonarch
d9b4ee8eb3
fix: prevent ValvePairModel stuck-state by freezing prev_action during delay
2026-05-13 15:43:56 +08:00
Huamonarch
10bb9937d6
chore: remove unused BaseData.h
2026-05-13 15:33:36 +08:00
Huamonarch
7385b7cc6e
build: add model/ source directory to CMake
2026-05-13 15:27:22 +08:00
Huamonarch
022993ab5a
feat: load rng_models.json on startup
2026-05-13 15:26:19 +08:00
Huamonarch
4821cb9d36
refactor: replace hardcoded signal mappings with ModelRegistry
2026-05-13 15:24:32 +08:00
Huamonarch
b4bb27f1e5
feat: add ModelRegistry with JSON loading and composite model
...
Add CompositeModel for combining base+noise models, ModelRegistry singleton
with JSON-based model template loading, per-instance-key model isolation,
and inline CSV/valve pair/composite syntax parsing in createModel.
2026-05-13 15:20:51 +08:00
Huamonarch
4f83e41c0c
feat: add ValvePairModel with jitter/flash/over-delay
2026-05-13 15:15:14 +08:00
Huamonarch
3ce03911c3
feat: add 3 boolean signal models
2026-05-13 15:13:31 +08:00
Huamonarch
2ef663af81
feat: add CsvReplayModel for CSV data replay
2026-05-13 15:12:04 +08:00
Huamonarch
afd753f803
feat: add 7 analog signal models (constant, normal, linear, sine, uniform, spike, drift)
2026-05-13 15:10:37 +08:00
Huamonarch
6afce89326
feat: add IModel base interface
2026-05-13 15:07:59 +08:00
Huamonarch
ae5f55c8ac
feat: add rng_models.json with model templates
2026-05-13 15:07:06 +08:00
Huamonarch
7e602c7bc1
Initial commit: EIS C++ project with multi-process code
2026-05-09 11:23:45 +08:00