1. 二元理想混合体系配方比例与目标性能换算
二元理想混合的线性可加模型
由两种互溶组分 A、B 构成的理想混合体系,其某一性能 P 在混合后可按质量分数线性可加:
P = wA·PA + wB·PB,且 wA + wB = 1
把 wB = 1 − wA 代入,得到只含一个未知量的直线关系:
P = PB + (PA − PB)·wA
因此反算配比只需一步代数变形:
wA = (P目标 − PB) / (PA − PB),wB = 1 − wA
适用前提:两组分完全互溶、混合无体积收缩或膨胀、性能无交互作用。若目标值落在 [min(PA,PB), max(PA,PB)] 之外,则无物理可行解。
示例数据与反算过程
设组分 A 为高折射率液体,组分 B 为低折射率液体,25 ℃ 下纯组分折射率:
| 组分 | 纯组分性能 P | 说明 |
|---|---|---|
| A | 1.5200 | 高折射率组分 |
| B | 1.4300 | 低折射率组分 |
目标混合折射率 P目标 = 1.4750。先判断可行性:1.4300 ≤ 1.4750 ≤ 1.5200,落在区间内,有解。
反算 wA = (1.4750 − 1.4300) / (1.5200 − 1.4300) = 0.0450 / 0.0900 = 0.5000,wB = 0.5000。
即质量配比 A : B = 50 : 50。
正算验证
用反算得到的配比回代线性模型:
P = 0.5000 × 1.5200 + 0.5000 × 1.4300 = 0.7600 + 0.7150 = 1.4750
与目标值 1.4750 完全一致,残差为 0,配比满足目标。若残差绝对值超过允许偏差(例如 0.0005),说明模型假设不成立或数据有误,需检查互溶性、体积效应或纯组分数据。
可复用的换算与验证代码
def blend_ratio(p_a, p_b, p_target, tol=5e-4):
"""二元理想混合:由目标性能反算 A 的质量分数,并正算验证。"""
lo, hi = min(p_a, p_b), max(p_a, p_b)
if not (lo <= p_target <= hi):
return {"feasible": False, "reason": f"目标 {p_target} 超出 [{lo}, {hi}]"}
w_a = (p_target - p_b) / (p_a - p_b)
w_b = 1.0 - w_a
p_check = w_a * p_a + w_b * p_b
residual = p_check - p_target
return {
"feasible": True,
"w_a": round(w_a, 4),
"w_b": round(w_b, 4),
"ratio_A_to_B": f"{w_a:.2f} : {w_b:.2f}",
"p_check": round(p_check, 4),
"residual": round(residual, 6),
"pass": abs(residual) <= tol,
}
print(blend_ratio(1.5200, 1.4300, 1.4750))
# {'feasible': True, 'w_a': 0.5, 'w_b': 0.5, 'ratio_A_to_B': '0.50 : 0.50',
# 'p_check': 1.475, 'residual': 0.0, 'pass': True}
print(blend_ratio(1.5200, 1.4300, 1.5600))
# {'feasible': False, 'reason': '目标 1.56 超出 [1.43, 1.52]'}
反算公式对密度、折射率、固含量等线性可加性能通用,只需替换 PA、PB 的数值。若目标值恰好等于某一纯组分性能,则对应质量分数为 1,另一组分为 0,属于边界解。
线性可加模型仅在理想混合下成立。实际体系若存在体积收缩、氢键作用或性能非线性,反算配比后正算残差会明显偏离 0,此时需引入交互项或改用实测标定曲线,不能直接套用本公式。