Python代码
def calculate_packed_tower(L_M, m_NH3):
# 默认参数值
M_H2O = 18.015 # 水的摩尔质量,g/mol
M_NH3 = 17.031 # 氨氮的摩尔质量,g/mol
eta = 0.9 # 氨氮去除效率,假设值为0.9
y_1 = 0 # 空气进入塔底时氨氮在空气中的摩尔分数
m = 2.0 # 相平衡常数,假设值为2.0
k = 1.5 # 实际气液比的放大倍数,假设值为1.5
M_air = 29.0 # 空气摩尔质量,g/mol
rho_air = 1.225 # 空气密度,kg/m^3
h_up = 1 # 塔上方高度,m
h_down = 1 # 塔下方高度,m
u_F = 1.0 # 泛点气速,m/s
K_La = 0.1 # 液相总传质系数,kmol/(m^3·s),假设值
# 计算化学镍水摩尔流速
L_M_prime = L_M * 1000 / M_H2O
# 计算氨氮在废水中的摩尔分数
x_2 = m_NH3 * M_H2O / (M_H2O * 10 ** 6)
# 计算废水从塔底流出时氨氮在废水中的摩尔分数
x_1 = (1 - eta) * x_2
# 计算出塔顶时氨氮在空气中的平衡摩尔分数
y_2_balance = m * x_2
# 计算最小气液比
G_L_prime_min = (x_2 - x_1) / (y_2_balance - y_1)
# 计算实际气液比
G_L_prime = k * G_L_prime_min
# 计算实际空气摩尔流速
G_M_prime = G_L_prime * L_M_prime
# 计算实际空气用量
G_M = G_M_prime * M_air / rho_air
# 计算实际气液比(体积流速比)
G_L = G_M / L_M
# 计算出塔空气中实际氨氮的摩尔分数
y_2 = y_1 + (x_2 - x_1) / G_L_prime
# 计算吸收因子
A = 1 / (G_L_prime * m)
# 计算液相总传质单元数
N_OL = (1 / (1 - A)) * math.log((1 - A) * (x_2 - y_1 / m) / (x_1 - y_1 / m) + A)
# 计算液相总传质单元高度
H_OL = L / K_La # L由L_M计算得到
# 计算填料层高度
h_T = H_OL * N_OL
# 计算塔高
h = h_T + h_up + h_down
# 计算空塔气速
u = 0.45 * u_F # 易起泡的碱液等系统,空塔气速可取泛点气速的45%或更低些
# 计算气体体积流量,m^3/s
V_s = G_M / 3600
# 计算初估塔径
D_prime = math.sqrt(V_s / (0.785 * u))
# 输出结果
return G_L, h, u, D_prime