feat: integrate AMESim media models and editor UI

This commit is contained in:
ljz committed 2026-07-31 23:36:58 +08:00
1 parent 3e4f466114
commit e7177ab03e
181 files changed
+7042 -25270

No files matched your search

+76
View File
@@ -0,0 +1,76 @@
# AMESim 氦气 Peng-Robinson 介质模型
## 本地资料依据
仓库中已经包含该模型所需的说明和算例数据:
- `AmesimModels/help/pneumatic_library_manual/03_gas_properties.pdf` 第 3.3 节
给出 AMESim Pneumatic Library 的气体物性层级和 Peng-Robinson 状态方程。
- `AmesimModels/help/pneumatic_library_manual/lib_pneumatic.pdf` 第 87--88 页
给出 293.15 K、1 barA 下的氦气参考物性。
- `AmesimModels/test_mql.ame` 中的 `PNGD00` 实例明确选择
`fluidType=12`(helium)和 `eosType=6`(Peng-Robinson)。
- `app/simulation/core/peng_robinson.py` 已实现纯物质 Peng-Robinson 方程,
并定义了 `HELIUM_PR`。
AMESim 手册中的 Peng-Robinson 形式为:
```text
p = r T / (v - b) - a alpha(T) / (v^2 + 2 b v - b^2)
a = 0.457235583 r^2 Tc^2 / Pc
b = 0.07779607 r Tc / Pc
alpha(T) = [1 + m (1 - sqrt(T/Tc))]^2
m = 0.37464 + 1.54226 omega - 0.26992 omega^2
```
当前 Python EOS 使用等价的摩尔体积形式,并通过最大物理解选择气相根。
## 首版参数
| 参数 | 数值 | 本地依据 |
| --- | ---: | --- |
| 摩尔质量 | `0.004002602 kg/mol` | `HELIUM_PR` |
| 临界温度 | `5.1953 K` | `HELIUM_PR` |
| 临界压力 | `227460 Pa` | `HELIUM_PR` |
| 偏心因子 | `-0.385` | `HELIUM_PR` |
| 定压比热 | `5193 J/(kg*K)` | AMESim 手册表 11.1 |
| 定容比热 | `3116 J/(kg*K)` | AMESim 手册表 11.1 |
| 比气体常数 | 由 `R/M` 计算,约 `2077.26 J/(kg*K)` | EOS + 手册表 11.1 |
| 293.15 K 黏度 | `1.96e-5 Pa*s` | AMESim 手册表 11.2 |
| Sutherland 常数 | `79.4 K` | 已迁移 `test_mql` 管路近似 |
手册参考点还给出 `rho=0.164 kg/m3`、`gamma=1.667`、`Z=1.0005`。
## 组件与索引映射
公开介质组件使用:
```text
modelType = amesim_helium_medium
gi = 画布自动分配的 1..99 引用索引
property_model = 0 (Peng-Robinson,本应用内的稳定编号)
fluidType = 12 (AMESim 元数据)
eosType = 6 (AMESim 元数据)
```
`property_model` 与 AMESim 的 `eosType` 有意分离:前者是单个介质组件内部的
下拉选项编号,后者用于保留 AMESim 原模型语义。以后给氦气增加其他计算方法时,
只需扩展氦气的物性模型注册表。
源归档的 `gasName` 缓存文本与结构字段存在冲突,因此介质识别以
`fluidType=12`、`PNGD_HELIUM` 和组件标签为准,不使用 `gasName` 猜测。
## 首版计算边界
首版公共组件实现以下闭合:
- `rho(p,T)`、`p(rho,T)` 和控制容积压力使用 Peng-Robinson EOS;
- `u=cv*T`、`h=cp*T`,温度反解使用同一组定比热;
- 黏度使用以 293.15 K 为参考点的 Sutherland 近似;
- `gi` 注册、气动连通域一致性、XML/JSON 保存均复用现有介质机制。
这是一版可运行的“PR 压力--密度闭合 + 定比热热量学”,不是 AMESim 真实气体
物性的完全复刻。AMESim 的 `Cp/Cv/h/mu/rho/Z` 接口均可随 `(p,T)` 变化,而当前
`GasMedium` 的焓、内能和比热接口只有温度参数。后续若要接入完整残余焓、
压力相关比热和真实气体临界流,应先扩展为状态相关物性接口,再调整气室、管路和
孔口公式。