本文档对应软件「系统管理 → 膜元件管理」编辑对话框与 CSV 导入导出的全部字段。每个字段给出三方面说明: 用途(工程意义)、计算方式(在计算引擎中的公式与角色,附代码位置)、测试方法(膜厂家如何测得该参数,可作为新建/校核元件的依据)。
Qp 产水流量(gpm)、A 水渗透系数、B 盐透过基准、NDP 净驱动压(psi)、
β 浓差极化因子、r 元件回收率(小数)、T 水温(°C)、scc 盐度(渗透压)修正、tcff 温度修正。
代码位置写作 internal/calc/ro.go:函数名(),可直接在源码中检索。
| 字段 | 单位 | 用途 | 计算方式 · 测试方法 |
|---|---|---|---|
| 名称 (ename) | — | 元件型号唯一标识;设计页选膜、结果页逐元件明细均显示 | 计算:作为元件缓存键(internal/calc/ro.go:buildElemFactors() 取 ElementData)。测试:厂商标称型号(如 ESPA2-LD)。 |
| 代码 (code) | — | 系列代号,用于产品线识别与规格码自动识别 | 计算:不参与物理计算(V58 起已把「按代码字符串判断」全部迁移为显式参数,见 4.5);仅用于规格码解析(自动填直径/长度)与显示。 测试:厂商标称系列码。 |
| 品牌 (brand) | — | 品牌归属:品牌专属入口仅展示本品牌元件 | 计算:不参与物理计算,仅做数据隔离与分组。品牌商在品牌后台维护,平台管理员可全库维护。 |
| 描述 (description) | — | 元件简要说明,选膜对话框显示 | 不参与计算。 |
| 系列族 (family) | 整数 | 膜大类:1=SWRO 海水、2=BWRO 苦咸水、5/15=海水特殊修正族、8=NF 纳滤、9=高温膜 | 计算:ro.go:isEspFamily() / ro.go:calcDivalentCation() —— family=5/15 时产水系数乘 factor1、二价离子透过乘 divcSpfactor;family=7 走 HYDRA 分支。测试:厂家产品线分类,非测量值。 |
| 直径 (diam) | inch | 元件直径:4 寸(家用/小型)或 8 寸(工业标准) | 计算:影响选膜后默认元件数(8 寸填 7 支/容器、4 寸填 6 支)与列表分组。新增时由代码中的规格码自动识别(8040/4040/2540…)。 测试:物理测量外径。 |
| 长度 (length) | inch | 元件长度(标准 40 in) | 计算:同样由规格码自动识别;不影响水力学计算。 测试:物理测量。 |
| 膜面积 (area) | ft² | 有效膜面积(8 寸标准 365 / 400 / 440 ft²):产水能力与通量换算的基准 | 计算:产水量 = A × NDP × area × 1e-5 × scc;通量(lmh) = permGPM × 0.2271 × 1000 ÷ (area × 0.092903)(ro.go:simulateVesselChain())。测试:厂家按灌液法标定有效润湿面积(Liquids displacement),非几何面积;膜片褶皱计入。 |
| 进水隔网厚度 (mil) | mil | 给水通道隔网厚度:34 mil 抗污染 / 31 mil 标准 / 28 mil 低压节能 | 计算:不直接进公式;其影响体现在 pcoef/dpfactor1(压降)与 bexp(浓差极化)中。测试:物理测量隔网丝径与厚度。 |
| 适用进水 TDS (minTds/maxTds) | mg/L | 适用盐度窗口:低于下限/高于上限给出选型提示 | 计算:参与运行预警(进水 TDS 超上限提示改选海水膜)。 测试:厂家产品线定位 + 高盐运行验证试验。 |
这组字段描述厂家「标准测试条件」(出厂标称值的测试口径)。新元件录入时必须成组填写,保证脱盐率与公称产水量口径一致,否则 B 系数反算会失真。
| 字段 | 单位 | 用途 | 计算方式 · 测试方法 |
|---|---|---|---|
| 脱盐率 (nrej) | % | 标准测试条件下的稳定脱盐率,决定产水水质(也是 B 系数的主要来源) | 计算:盐透过基准 B = (1 − nrej/100) × ATC × pnetn × area × 1e-5。测试: 脱盐率 = (1 − 产水TDS/进水TDS) × 100%。苦咸水膜典型口径:2000 mg/L NaCl、150 psi、25 °C、15% 回收(ESPA2-LD 99.6%);海水膜:32000 mg/L、800 psi(SWC5 99.8%)。 |
| 公称产水量 (nprod) | gpd | 标准测试条件下的标称产水量(选型基准) | 计算:不直接进公式,用于选型对比与「标称通量」参考项(= nprod ÷ area,见 4.6)。 测试:标准条件下连续 24 h 稳定产水量(gallon/day),新膜、无污染。 |
| 测试压力 (fpres) | psi | 与上述脱盐率/产水量对应的出厂测试进水压力 | 计算:不进公式(能力由 atc 承载),用于说明测试口径与反推 A 值。测试:测试台进水压力表读数。 |
| 测试净压 (pnetn) | psi | 测试条件净驱动压 NDP(测试压力 − 渗透压差 − 产水背压) | 计算:进入 B 公式(见上)。 测试:由测试台进出水压力、进/产水渗透压计算: pnetn = fpres − Δπ − P背压。 |
| 测试盐度 (fsal) | mg/L | 测试液 TDS(苦咸水膜 1500~2000,海水膜 32000) | 计算:口径字段。注意:运行时 sp_esp 修正按「元件实际进水 TDS」取值,不是用本字段。 测试:测试液配制浓度(称重或电导率折算)。 |
| 测试回收率 (prec) | % | 单支测试回收率(典型 15%) | 计算:口径字段(影响测试段浓缩倍数,从而影响 pnetn 的渗透压项)。 测试:测试台产水/进水流量比。 |
| ATC 系数 (atc) | — | 25 °C 水渗透性常数(A 值基准):膜的产水能力标定值,是引擎最关键的能力参数 | 计算:A = ATC ÷ tcff × factor1(海水族) × 污染系数 × (1 + leak);Qp = A × NDP × area × 1e-5 × scc(ro.go:buildElemFactors())。ATC 大 → 产水高但盐透过也高(A/B 比即膜固有选择性)。测试:由标准测试产水量反推 A = Qp ÷ (NDP × area × 1e-5),再折算到 25 °C(乘回 tcff)。ESPA2-LD ≈ 13.3(低压高产);海水膜更小。 |
| 字段 | 单位 | 用途 | 计算方式 · 测试方法 |
|---|---|---|---|
| 最高进水压力 (fpMax) | psi | 元件与外壳耐压上限(苦咸水膜典型 600 psi,海水膜 1000+ psi) | 计算:结果预警 —— 进水压力超限给「严重」级提示。 测试:型式静水压试验(保压 5 min 无渗漏、无变形、无胀裂)。 |
| 最高温度 (tempMax) | °C | 最高使用温度(常规复合膜 45 °C) | 计算:进水温度超限给「严重」级提示。 测试:高温加速老化试验(高温运行后脱盐率衰减需小于规定值)。 |
| 适用 pH 范围 (phMin/phMax) | — | 连续运行 pH 窗口(常规 2~11;清洗短时可 1~13) | 计算:进水 pH 超窗给「严重」级提示(另:pH 还通过 4.3 的修正系数影响盐透过)。 测试:化学浸泡试验(极限 pH 溶液浸泡后测通量/脱盐率保持率)。 |
| 最大压差 (dpMax) | psi | 单支元件进水 − 浓水压差上限(典型 15 psi) | 计算:超出易造成 telescoping(元件中轴挤出)机械损伤;结果页监控段压差并预警。 测试:循环压力脉冲试验(模拟启停冲击)。 |
| 产水流量范围 (permeateMin/Max) | gpd | 单支产水下限/上限:过低产水分布不均,过高加剧浓差极化与污染(如 ESPA2-LD 22~4000 gpd) | 计算:逐元件明细产水流量越限时给「警告」级提示。 测试:低流速下沿程通量均匀性试验 + 高流速污染加速试验。 |
| 盐透过率范围 (spbMin/spbMax) | % | 允许的盐透过率区间,同时是硼修正的插值端点 | 计算:phFactorBoron = (0.5 + n3) × spbMin + (0.5 − n3) × spbMax,n3 由 pH、温度、TDS 决定(ro.go:phCorrectionFactor())。测试:变温/变压/变浓下盐透过率统计包络。 |
| 适用水类型 (waterTypeApp) | — | 适用水源标注(苦咸水/海水/废水等,多选) | 计算:仅作选型参考与筛选,不参与产水计算(实际计算用水型由设计页的「水类型」决定)。 测试:产品线定位,非测量值。 |
以下为计算引擎的物理/经验参数,来源是膜厂家数据文件。新建元件若不确定,建议复制同系列元件后再微调。
ro.go:TempCorFact()〕
盐透过温度因子:exp( u × (1/(273+T) − 1/298) ),u 取 uUpto25 / uAbove25| 字段 | 单位 | 用途 | 计算方式 · 测试方法 |
|---|---|---|---|
| 通量温度系数 ≤25 (tcffU25) | — | 低温段产水能力修正指数 k | 计算:代入上式得 tcff,进而 A = ATC/tcff×…。典型 2780 / 2600。测试:变温通量试验 —— 在 15/20/25/30/35/40 °C 各测产水量,对 ln(Q) 与 (1/(273+T) − 1/298) 做线性回归,斜率即 k。25 °C 两侧分别拟合。 |
| 通量温度系数 >25 (tcffA25) | — | 高温段产水能力修正指数 k | |
| 盐透过温度系数 ≤25 (uUpto25) | — | 低温段盐透过温度指数 | 计算:温度因子乘入逐离子透过量(温度越高盐透过越大)。典型 5800;海水膜分温区 4660/3600。 测试:变温脱盐率试验 —— 同压力下测各温度的产水 TDS,对 ln(B) 与 (1/(273+T) − 1/298) 回归拟合。 |
| 盐透过温度系数 >25 (uAbove25) | — | 高温段盐透过温度指数 |
ro.go:simulateVesselChain()〕
浓差极化 β = exp(0.7 × r) (r = 元件回收率,0~1;软件红线 1.2)〔ro.go:simulateVesselChain()〕
盐透过基准 B = (1 − nrej/100) × ATC × pnetn × area × 1e-5| 字段 | 单位 | 用途 | 计算方式 · 测试方法 |
|---|---|---|---|
| 盐透过 TDS 修正 (correction) | — | 渗透压对产水的抑制修正基准(典型 ≈1.07) | 计算:见上式 scc,产水量乘 scc(进水越咸,产水越低)。 测试:变浓度通量试验 —— 固定压力测不同 NaCl 浓度的产水量,回归得 correction 与渗透压系数。 |
| 压降因子1 (dpfactor1) | — | 流道压降系数 1(与隔网结构相关,典型 1.5) | 计算:见上式 Δp,采用 1.4 次幂(湍流+隔网特性);逐元件沿程累减压力。 测试:清水压差试验 —— 不同流量下测元件进出水压差,对 Δp 与 Q^1.4 回归,得两系数乘积,再按隔网类型拆分。 |
| 压力系数 (pcoef) | — | 流道压降系数 2(典型 0.01) | |
| 泄漏率 (leak) | — | 产水侧旁通泄漏比例(O 型圈/粘接缺陷,典型 0~0.003) | 计算:A × (1 + leak) —— 泄漏增加「产水」但拉低脱盐率。测试:荧光示踪试验,或低压低盐条件下的产水 TDS 反演。 |
| 系数1 (factor1) | — | 海水族(family 5/15)产水修正因子 | 计算:仅海水族 A × factor1;其它族保持 1。测试:厂家数据文件(由海水膜与苦咸水膜的通量对比标定)。 |
| 浓差极化指数 (bexp) | — | β 值公式指数基准(典型 0.7) | 计算:β = exp(bexp × r);本软件与厂家数据文件统一取 0.7。(原整数「B 指数」与此重复,已合并。)测试:CFD 流道模拟 + 高回收率下产水 TDS 上升速率试验。 |
ro.go:phCorrectionFactor() / ro.go:spFluorideCorrPH()〕| 字段 | 单位 | 用途 | 计算方式 · 测试方法 |
|---|---|---|---|
| coeff1 ~ coeff4 | — | pH < 7 区间离子透过多项式系数(低 pH 下脱盐率下降) | 计算:见上式,作用于 1~47 号离子的透过量。 测试:梯度 pH 脱盐率试验(pH 5.0 / 5.5 / 6.0 / 6.5 / 7.0),以产水 TDS 相对 pH 7 的比值对 pH 做三次多项式拟合。 |
| bwCoeff1 ~ bwCoeff3 | — | pH > 8.5 区间离子透过多项式系数(碱性区间盐透过上升) | 计算:见上式。 测试:梯度 pH 试验(8.5 / 9.0 / 9.5 / 10.0 / 10.5)同样拟合。 |
| 硅 const1 ~ const6 | — | 硅酸盐透过随 pH 的经验多项式(6 项含 1/pH² 与 e^(−pH)) | 计算:见上 f49,仅 pH > 7 生效,结果按原始 ToString("0.0") 取到 0.1。测试:硅标准液(如 30 mg/L SiO₂)在不同 pH 下测产水硅浓度。 |
逐离子相对基准盐透过的比例因子(1 = 与基准一致)。新建元件可整组置 1(等同该系列平均膜),或复制同系列值。
ionSPFactor(ion, salt_trans) = 离子表 Cols[salt_trans + 3](等价官方 get_IonsData(ion, salt_trans + 7))〔iontable.go:ionSPFactor()〕| 字段 | 单位 | 用途 | 计算方式 · 测试方法 |
|---|---|---|---|
| 盐透过率因子 (spFactor) | — | 整体盐透过比例因子(SANRO 型元件的附加修正) | 计算:仅当「附加修正 = SANRO 型」时,B 系数乘该因子。 测试:厂家数据文件。 |
| 钙 / 镁 / 钠 / 硫酸根 / 硝酸根因子 | — | 对应离子透过比例(二价离子脱除优于一价) | 计算:逐离子乘入产水浓度。 测试:混合盐试验(各离子配比已知)分别测产水离子浓度,除以理论透过量得因子。 |
| 硅因子 (silicaFactor) | — | SiO₂ 透过比例(SiO₂ 不解离,透过特性特殊) | 计算:SiO₂ 走 B × 硅因子 × f49 ÷ 温度因子 路径。测试:硅标准液试验(配已知硅浓度测产水硅)。 |
| 硼因子 (boronFactor) | — | 硼透过比例(苦咸水膜硼脱除差,海水膜优) | 计算:硼走 B × boronFactor × f50 路径,f50 与 pH/温度/TDS 强相关(硼酸 pKa=9.2,pH 高时透过激增)。测试:硼标准液试验(5 mg/L 硼,多 pH 点测产水硼)。 |
| 硼因子温度 (borfacttemp) | — | 硼透过的温度修正系数 | 计算:叠加在上述硼路径上的温度项(原始算法按水温对硼透过做比例缩放)。 测试:定 pH 下的变温硼透过试验。 |
| 盐透过率除数 (divcSpfactor) | — | 二价离子透过量除数(Divalent cation correction) | 计算:ro.go:calcDivalentCation() —— 海水族(family 5/15)的全部二价离子、以及非海水族的非 Ca/Mg 二价离子,其透过量除以该值。测试:二价/一价离子分离试验(如 CaCl₂ 与 NaCl 对比产水)。 |
| 盐透过列索引 (saltTrans) | 整数 | 离子透过系数列的枚举(决定用离子表的哪一列) | 计算:Cols[salt_trans + 3](等价官方 salt_trans + 7 列)。取值 0~8 合法;超出会在运行日志登记并提示产水含盐量结果不可信。测试:厂家数据文件决定,只读。 |
这些参数把原引擎里「按元件代码字符串判断」的逻辑显式化(V58 迁移),便于逐条核对与维护。实测只有海德能系列需要配置,HYDRA 系列按 family = 7 自动判定。
ro.go:membraneTdsCorrection()〕
基础:类 1(CPA)=1.75;类 2(ESPA2)=2.485(TDS<20000 时 = 5e-05·TDS + 1.485);其它 = 5.1178(TDS<20000 时 = 0.000229·TDS + 0.5378)
全局断点覆盖(优先级最高,逐级判断):
TDS < 5294 → 0.000229·TDS + 0.5378
TDS < 608 → −0.000785·TDS + 1.0713
TDS < 100 → −0.0313·TDS + 4.125
TDS < 36 → 3| 字段 | 单位 | 用途 | 计算方式 · 测试方法 |
|---|---|---|---|
| 盐透过TDS修正基类 (spEspClass) | 0/1/2/3 | 选择 sp_esp 的基础曲线:0=通用、1=CPA 系列、2=ESPA2 系列、3=SWC6 系列(基础走通用+附加修正) | 计算:见上式,与「元件实际进水 TDS」共同决定盐透过修正倍数。 测试:厂家数据文件;也可用变浓度脱盐率试验反推(同压力下测不同 TDS 的产水 TDS)。 |
| 启用 sp_esp 修正 (useSpEsp) | 0/1 | 是否对盐透过施加上述 TDS 修正 | 计算:为 0 时跳过 sp_esp(盐透过不随进水浓度修正)。 测试:厂家数据文件。 |
| 附加修正 (elemCorr) | 0/1/2 | 0=无;1=SANRO 型(B 系数乘 spFactor);2=SWC4/5 型(低温特殊 tcff 路径) | 计算:ro.go:buildElemFactors() 里的分支开关。测试:厂家数据文件。 |
| 字段 | 单位 | 用途 | 公式 |
|---|---|---|---|
| 膜面积 (m²) | m² | 与国际单位对接(通量、比能耗等) | m² = area(ft²) × 0.092903 |
| 标称通量 | gfd | 新膜在标准条件下的通量,用于与设计通量上限比较 | gfd = nprod(gpd) ÷ area(ft²) |
| 盐透过系数 B | — | 校核用:与同系列元件对比是否合理 | B = (1 − nrej/100) × ATC × pnetn × area × 1e-5 |
ro.go:buildElemFactors() → ro.go:simulateVesselChain()〕ro.go:simulateVesselChain()〕ro.go:simulateVesselChain()〕ro.go:FluxLossFactor()〕
age = 0 → 1 (新膜)
age = 1 → (100 − fd)/100
逐年模式 (perYear) → (1 − fd/100)^age
首年模式 (firstYear) → 1 − (fd/10) × (1 − fc),其中 fc = 0.852330634 − 0.0103·age + 0.15006·e^(−age)
盐透过增长倍数 bfact = 1 + spIncrease/100 × 系数(由膜龄换算)〔ro.go:SaltPassFactorOf()〕排查某个参数为什么不生效时,按下表直接定位实现;行号会随版本变化,用函数名检索最稳妥。
| 计算环节 | 代码位置 | 使用的字段 |
|---|---|---|
| 元件系数装配(A/B/温度/pH/二价) | ro.go:buildElemFactors() | atc, tcffU25/A25, factor1, foulingFactor(FF), leak, saltTrans, spFactor, elemCorr |
| 温度修正 tcff | ro.go:TempCorFact() | tcffU25, tcffA25 |
| 盐透过 TDS 修正 sp_esp | ro.go:membraneTdsCorrection() | spEspClass, useSpEsp(+元件进水 TDS) |
| pH 修正(离子/硅/硼/氟) | ro.go:phCorrectionFactor()、ro.go:spFluorideCorrPH() | coeff1~4, bwCoeff1~3, const1~6, spbMin/Max |
| 二价离子透过修正 | ro.go:calcDivalentCation() | divcSpfactor, family |
| 离子透过系数列 | iontable.go:ionSPFactor() | saltTrans(离子表 Cols[saltTrans+3]) |
| 逐元件水力/盐分推进 | ro.go:simulateVesselChain() | area, bexp(β), dpfactor1, pcoef, correction(scc), permeateMin/Max, dpMax |
| 膜老化(污染系数/盐透过倍数) | ro.go:FluxLossFactor()、ro.go:SaltPassFactorOf() | (设计页)fluxDecline, membraneAge, spIncrease, foulingFactor |
| 渗透压与饱和度 | saturation.go:OsmoticPressure()、saturation.go:CalcAllSaturations() | (分析页)各离子浓度 |
| 功耗与比能耗 | power.go:CalcPower() | (设计页)流量/压力/回收率/ERD |
| 要标定的参数 | 试验做法 | 数据处理 |
|---|---|---|
| ATC(A 值) | 标准测试条件(温度、盐度、压力、回收率已知)下测稳定产水量 | A = Qp ÷ (NDP × area × 1e-5),再乘回 tcff 折算 25 °C |
| 脱盐率 nrej | 同一次标准测试中测产水 TDS | nrej = (1 − 产水TDS/进水TDS) × 100% |
| 温度系数 tcffU25 / tcffA25 | 变温通量试验(15~40 °C,步长 5 °C,其余条件固定) | 对 ln(Qp) ~ (1/(273+T) − 1/298) 线性回归,25 °C 前后分段取斜率 |
| 盐透过温度系数 uUpto25 / uAbove25 | 变温脱盐率试验(同压力,测各温度产水 TDS) | 对 ln(B) ~ (1/(273+T) − 1/298) 回归取斜率 |
| correction(scc) | 变浓度通量试验(如 500 / 1000 / 2000 / 3500 mg/L NaCl) | 产水量随渗透压的线性下降段回归,截距即 correction |
| dpfactor1 / pcoef | 清水压差试验(多流量点测元件进出水压差) | 对 Δp ~ Q^1.4 回归;两系数以乘积出现在公式中,按隔网类型拆分 |
| leak(泄漏率) | 低压低盐条件下的产水 TDS 反演,或荧光示踪 | 由「脱盐率低于预期」的差额反推旁通比例 |
| 离子因子组 | 混合盐试验(各离子已知配比) | 逐个离子:因子 = 实测产水浓度 ÷ 理论透过浓度 |
| pH 多项式组 | 梯度 pH 试验(5.0~7.0 与 8.5~10.5 两段) | 以「产水 TDS 相对 pH7 的比值」对 pH 拟合多项式(低 pH 三次 / 高 pH 二次) |
| 硅 const1~6 | 硅标准液 + 多 pH 点 | 对 6 项经验式(含 1/pH²、e^(−pH))做最小二乘拟合 |
| spEspClass(sp_esp) | 变浓度脱盐率试验(同压力测不同 TDS 的产水 TDS) | 除以基准 B 后得到修正倍数曲线,按类归档(通用/CPA/ESPA2/SWC6) |
A = Qp ÷ (NDP × area × 1e-5) 后折算 25 °C;
④ 运行限制按 datasheet 的 Operating Limits 表填写;
⑤ 用基准算例或案例对照回归(同排列下产水 TDS、进水压力、浓水 TDS 应落在工程合理区间,并与官方软件对照偏差 ≤1%)。| 场景 | 必填字段 |
|---|---|
| 仅选型对比(不计算) | 名称、品牌、描述、面积、脱盐率、公称产水量、直径、长度、隔网厚度 |
| 参与设计计算 | 上述全部 + ATC、测试净压、压差两系数、温度修正四系数(可复制同系列)、correction、saltTrans |
| 启用运行预警 | 最大进水压力、最高温度、pH 范围、压差上限、产水流量范围、适用 TDS 上下限 |
| 需要逐离子精度 | 再加离子因子组、pH 多项式组、spEspClass / useSpEsp / elemCorr、divcSpfactor |
CSV 批量导入:表头与「导出CSV」文件一致,ID 留空自动分配,已存在 ID 走更新;品牌商入口仅能导入本品牌元件。 「引擎槽位」等内部列不再展示 —— ID 本身即为与计算引擎对接的唯一键。
rofilter.cn 反渗透膜设计软件 · 膜元件字段说明 · 公式与软件实现逐行对应(温度修正、pH 多项式、sp_esp 分段曲线、离子透过列、压差 1.4 次幂、β = exp(0.7·r)、膜老化两种模式)