相较上一版 Jacobian 确定性复用更新,本次补齐事件边界一致性、结果两侧采样及接触事件定位;保留已有物性复用和组件力学公式。 - 统一 UD00 信号求值与下一事件查询的绝对时间边界,修复循环边界浮点舍入导致的阶段错位、重复或漏报,并覆盖零时长、多阶段及长周期场景。 - 引入原生输出语义 v2:保留规则网格真实时间,补充内部时间事件和状态事件的左邻及事件后采样,按保存时间、状态和离散模式重放结果。 - 两条代码生成路径均发出 LSTP 接触描述,默认定位间隙过零及非负力模式的力截断;仅在接受事件时更新防重复记录,增加 contactEvents 诊断计数。 - 补充 MASS/LSTP 独立事件实验、八路全曲线与驱动阶段配对评估,以及 Amesim 不连续点输出对照和力差定位报告;MASS 新增释放机制仍保留为独立实验。 - 保存局部 probe、context 访问与回退、shadow replay、R288 real skip/typed replay 及阀门数值尾部诊断工具和报告;未证明净收益的实验不启用为生产默认优化。 - 更新原生运行说明和元件建模规范,补充信号边界、输出语义、接触事件和实验依赖回归测试。 验证:五组专项回归共 34 项全部通过;37 个待提交 Python 文件语法检查通过;git diff --cached --check 通过。
27 lines
1.0 KiB
C
27 lines
1.0 KiB
C
#ifndef CONTEXT_SHADOW_REPLAY_H
|
|
#define CONTEXT_SHADOW_REPLAY_H
|
|
#include "model.h"
|
|
#define SR_STATES 256
|
|
#define SR_PIPES 40
|
|
#define SR_EVENTS 512
|
|
typedef struct {
|
|
NativePropertyCache context;
|
|
NativePropertyState states[SR_STATES];
|
|
NativePipeCache pipes[SR_PIPES];
|
|
NativeJacobianScalars memo;
|
|
NativeJacobianScalarEntry entries[MODEL_JACOBIAN_SCALAR_COUNT];
|
|
NativePropertyTemperatures observer;
|
|
} SRContext;
|
|
typedef struct {
|
|
double p[48],h[232],q[232],fb[152],w[NOUTPUTS],dy[NSTATES];
|
|
NativeGas g[56];
|
|
} SRFrame;
|
|
typedef int (*SRTail)(double,const double*,SRContext*,SRFrame*);
|
|
typedef double (*SROperation)(NativePropertyCache*,NativePipeCache*,const double*);
|
|
void sr_shadow(int,double,const double*,NativePropertyCache*,NativePipeCache*,
|
|
const double*,const double*,const double*,const double*,const NativeGas*,const double*,SROperation,SRTail);
|
|
void sr_eval_result(int,const double*,const double*);
|
|
void sr_native_enter(const char*);
|
|
void sr_or(const void*,unsigned,const char*,const char*);
|
|
#endif
|