Commit Graph

22 Commits (acb39fe350e84c699cedbb08cb4c36447ffae086)

Author SHA1 Message Date
lh acb39fe350 feat(numerical): 实现 PEBI 结果快照原子提交
- 在工作线程构建并校验完整结果快照候选
- 在主线程按输入版本、井 UUID 和槽位顺序一次发布
- 失败、取消、结果过期或内存不足时保留旧快照
- 通过弱引用兼容 nmDataWellBase 现有结果 getter
- 转移井曲线容器并隔离旧 UI 结果网格,降低复制和污染风险
- 保持自动拟合逻辑不变
1 week ago
lh 5427b97308 fix(numerical): 完善求解结果状态与窗口提示
- 区分求解失败与输入变化导致的结果丢弃
- 根据结果窗口实际创建状态显示完成或失败提示
- 延迟首次结果页面填充及最终提示,避免 Qt 4.8 布局重入
- 补充相关中文翻译并更新 qm 文件
2 weeks ago
lh 69895a6717 perf(numerical): 降低复用网格求解的内存峰值
- 复用缓存网格时直接将 DLL 输出复制到任务结果,移除中间局部副本
- 将 DLL 网格输出峰值由三套降低为两套
- 直接使用 GRID 构造模型输入,避免临时模型输入产生的完整网格复制
2 weeks ago
lh cc7300668e feat(numerical): 优化网格生成与模型求解流程,增加进度与停止处理
- 拆分求解输入准备、网格生成和模型求解流程,减少界面阻塞
- 增加计算进度提示和协作式停止处理
- 完善输入快照隔离、结果提交校验及窗口关闭时的任务清理
- 保持网格与求解 DLL 的串行互斥保护
- 优化后处理结果刷新并更新中文翻译
2 weeks ago
lh d8af516478 Merge branch 'feature/refactor-numerical-model-panel-20260824' into develop 2 weeks ago
lvjunjie c210cd7b39 1.流量为空时,流量段数量设为 0,不会出现 -1 被转换成巨大数组长度的问题。
2.计算误差时跳过目标曲线第一个点,修复公共时间轴端点的浮点误差
3 weeks ago
lh 8b7f63f063 fix(nmNum): 修复求解完成后PEBI网格数量显示为0
- 网格划分完成后、卸载DLL前保存getPEBInum返回值
- 求解完成弹框同时显示PEBI网格数量和求解耗时
- 更新中文翻译资源
3 weeks ago
lvjunjie 0afcfaa6ca Merge branch 'feature/Auotfit-20260817' into develop 3 weeks ago
lvjunjie a551c3e283 1.生成不同算例的压力流量数据 2.压裂井的裂缝宽度从界面读取 3.油水两相导入流量传给qo,qg和qw使用等长零数组(临时) 3 weeks ago
lh d0ab4cd518 feat(nmNum): 集成PEBI CPU加速求解器配置
- 新增求解器库、OpenMP线程数和ILU复用步数设置
- 支持求解器配置的工程保存与恢复
- 计算前将加速参数传递给PEBI求解器DLL
- 记录PEBI网格数量并在计算完成后显示求解耗时
- 更新CPU加速运行库和中文翻译资源
3 weeks ago
lh 7204c54b07 Merge branch 'feature/ReservoirPropertiesDlg-Refactoring-20260813' into develop
# Conflicts:
#	Bin/Config/Common/ModelParaDefinesNM_cn.dat   resolved by feature/ReservoirPropertiesDlg-Refactoring-20260813 version
#	Bin/Config/Common/ModelParaDefinesNM_en.dat   resolved by feature/ReservoirPropertiesDlg-Refactoring-20260813 version
#	Bin/Config/Common/UnitDefault_cn.dat   resolved by feature/ReservoirPropertiesDlg-Refactoring-20260813 version
#	Bin/Config/Lang/cn/nmNum_cn.qm   resolved by develop version
#	Bin/XmlFiles/ModelParaDefinesNM_cn.xml
#	Bin/XmlFiles/ModelParaDefinesNM_en.xml
#	Src/nmNum/nmData/nmDataAutomaticFitting.cpp
#	Src/nmNum/nmSubWxs/nmWxAutomaticFitting.cpp
4 weeks ago
lvjunjie 1d5c0bfdb6 Merge branch 'feature/MultiWellAutoFit-20260805' into develop
# Conflicts:
#	Bin/Config/Lang/cn/nmNum_cn.qm   resolved by feature/MultiWellAutoFit-20260805 version
4 weeks ago
lh 8eebf98ba2 refactor(nmNum): 统一渗透率基准单位为 mD
- 统一储层、诊断、自动拟合及属性插值的渗透率单位
- 调整渗透率默认值、拟合范围和参数配置
- 在 PEBI 求解器入口将 mD 转换为 D
- 移除储层参数面板对 D/d 单位歧义的特殊处理
4 weeks ago
lvjunjie d58d083981 接入网格属性插值求解流程 1 month ago
lvjunjie eb6ef39007 优化多井自动拟合求解流程 1 month ago
lvjunjie c64dc6ce88 结果拟压力转换 2 months ago
lh aa1c498180 refactor: fillPvtInputByModel压力横坐标读取移入各分支,ConstPvt不依赖pPvt
1. 移除顶部公共压力读取,各VariablePvt分支内部自行读取pPvt->getPressure()
2. ConstPvt分支完全不碰pPvt参数,职责更清晰
3 months ago
lh a94bc0ac70 fix: ConstPvt模型补充压力横坐标占位数组,修复数组长度不匹配问题 3 months ago
lh e81c9e0b41 refactor: 重构PVT初始化逻辑,按相态获取参数并简化代码结构
1. nmDataReservoir新增Gas/Water独立字段(Bg/Miug/Bw/Miuw),消除复用Bo/Miuo的语义混淆
2. nmDataReservoir成员变量按相态分组排列(油/气/水),构造/拷贝/序列化/getter-setter顺序同步
3. 重构initPvtParaFromSubFit:提取tryFetchPhasePvtCurves辅助函数,234行→~80行
4. 重构createReservoir:拆分为readPvtSingleValues/populateReservoirByPhase/createDefaultLayer,206行→~50行
5. solver task新增fillPvtInputByModel,ConstPvt从reservoir单值扩展为200元素数组
6. Ct/Cf统一获取,不再按ConstPvt/VariablePvt互斥
7. 移除油水两相多余的PVT.Sw传递,与PEBI示例对齐
3 months ago
lvjunjie 6f3246690e 1.调整求解前计算网格的逻辑,避免部分变量为空 2.获取参数时,如果有一个获取不到就都用默认参数 3 months ago
lvjunjie e9cc8313a7 修改求解器参数获取 3 months ago
lh 34209bc128 feat:初始化仓库代码 4 months ago