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)] 之外,则无物理可行解。

性能 P 随 w_A 线性变化:反算即在该直线上定位目标 P w_A(A 质量分数) P 0 0.5 1.0 P_B(纯 B) P_A(纯 A) P_目标 交点 → w_A w_A = (P_目标 − P_B)/(P_A − P_B) w_B = 1 − w_A 正算回代:P = w_A·P_A + w_B·P_B

示例数据与反算过程

设组分 A 为高折射率液体,组分 B 为低折射率液体,25 ℃ 下纯组分折射率:

组分纯组分性能 P说明
A1.5200高折射率组分
B1.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,此时需引入交互项或改用实测标定曲线,不能直接套用本公式。