Skip to main content

chemical-engineering

Chemical engineering fundamentals including reaction engineering, separation processes, thermodynamics, process control, and plant design for industrial applications.

跳到安装

来源信息

仓库
NeuralBlitz/Agent-Gateway
最近来源活动
2026年4月9日 10:58
检测到的 SKILL.md 语言
英语
星标
1
分支
0

安装方式

默认使用会先检查来源的 Prompt;你也可以切换为直接命令,或下载本地副本。

检查来源文件

决定是否安装前,请先阅读 SKILL.md,以及 SkillsMP 当前展示的配套文件。

正在显示 SKILL.md

SKILL.md
来源说明 · 只读预览
name
Chemical Engineering
description
Chemical engineering fundamentals including reaction engineering, separation processes, thermodynamics, process control, and plant design for industrial applications.
license
MIT
compatibility
python>=3.8
audience
chemical-engineers, process-engineers, researchers, students
category
engineering
# Chemical Engineering ## What I Do I provide comprehensive chemical engineering tools including reaction kinetics, separation processes, process thermodynamics, reactor design, process control, and plant economics for industrial applications. ## When to Use Me - Reactor design and scale-up - Distillation column design - Heat exchanger sizing - Process optimization - Process control systems - Economic analysis ## Core Concepts - **Reaction Engineering**: PFR, CSTR, residence time - **Mass Transfer**: Diffusion, convection, mass transfer coefficients - **Heat Transfer**: Conduction, convection, heat exchangers - **Separations**: Distillation, extraction, chromatography - **Thermodynamics**: Phase equilibria, activity coefficients - **Process Control**: PID, cascade, feedforward - **Process Safety**: HAZOP, relief systems - **Economics**: CAPEX, OPEX, NPV ## Code Examples ### Reactor Design ```python import numpy as np def arrhenius_equation(k0, Ea, T): R = 8.314 return k0 * np.exp(-Ea / (R * T)) def pfr_design(F_A0, X, -rA): return np.trapz(F_A0 * X / (-rA), X) def cstr_volume(V, F_A0, X, -rA): return V * F_A0 * X / (-rA) def residence_time(tau, V, v0): return V / v0 def conversion_pfr(F_A0, k, V): X = 1 - np.exp(-k * V / F_A0) return X def multiple_reactors_cstr(n, V_total, F_A0, k): V = V_total / n X = 1 / (1 + k * V / F_A0) for _ in range(n - 1): X = 1 / (1 + k * V / (F_A0 * (1 - X))) return X def damkohler_number(k, tau): return k * tau F_A0 = 100 # mol/s k = 0.01 # 1/s V = 50 # m³ X_pfr = conversion_pfr(F_A0, k, V) print(f"PFR conversion: {X_pfr:.4f}") Da = damkohler_number(k, 5) print(f"Damkohler number: {Da:.2f}") ``` ### Distillation ```python def mccabe_thiele(xD, xB, xF, alpha, reflux_ratio): x = np.linspace(0, 1, 100) y_eq = alpha * x / (1 + (alpha - 1) * x) R_min = (xD - y_eq[np.argmin(np.abs(x - xF))]) / (y_eq[np.argmin(np.abs(x - xF))] - x_F) R = 1.2 * R_min y = xD / (R + 1) + R / (R + 1) * x q_line = x / (x + (1 - x) / 0.5) return y, y_eq, R def fenske_equation(xD, xB, alpha, N_min): return np.log((xD / (1 - xD)) * ((1 - xB) / xB)) / np.log(alpha) def underwood_equations(alpha, xF, zF): theta = np.linspace(1.1, alpha - 0.1, 100) return np.interp(1, theta, np.sum(alpha * xF / (theta - alpha))) def plate_efficiency_murphree(Emv, yn, yn_star): return (yn - yn_minus1) / (yn_star - yn_minus1) xD, xB, xF = 0.95, 0.05, 0.50 alpha = 2.5 N_min = fenske_equation(xD, xB, alpha, 1) print(f"Minimum stages: {N_min:.0f}") ``` ### Heat Transfer ```python def overall_heat_transfer(U, A, delta_T_lm): return U * A * delta_T_lm def lmtd(delta_T1, delta_T2): return (delta_T1 - delta_T2) / np.log(delta_T1 / delta_T2) if delta_T1 != delta_T2 else delta_T1 def fouling_factor(h_foul, R_foul): return 1 / h_foul + R_foul def heat_exchanger_effectiveness(NTU, C_min, C_max, heat_exchanger_type='counter'): if heat_exchanger_type == 'counter': epsilon = (1 - np.exp(-NTU * (1 - C_min/C_max))) / (1 - C_min/C_max * np.exp(-NTU * (1 - C_min/C_max))) else: epsilon = (1 - np.exp(-NTU * (1 - C_min))) / (1 - C_min * np.exp(-NTU)) return epsilon def ntu_method(Q_max, C_min, epsilon): return Q_max / (epsilon * C_min) def shell_side_pressure_drop(f, G, D, L, rho): return 4 * f * (G**2) / (2 * rho * D) * (L / D) U, A = 500, 100 # W/m²K, m² dT1, dT2 = 50, 30 delta_Tlm = lmtd(dT1, dT2) Q = overall_heat_transfer(U, A, delta_Tlm) print(f"Heat duty: {Q:.0f} W") ``` ### Mass Transfer ```python def mass_transfer_coefficient(kL, a, D): return kL * a def two_film_theory(k_g, k_l, H, P_A, p_Ai, C_Ai): N_A = k_g * (P_A - p_Ai) = k_l * (C_Ai - C_Al) return N_A def penetration_theory(t_exp, D): k_L = np.sqrt(D / (np.pi * t_exp)) def wilson_plot(data, kL_a, temperature): return np.log(kL_a * temperature**0.5) def hETP_height_equivalent_theoretical_plate(H, N): return H * N def gas_liquid_equilibrium(P, y, x, m): return P * y / x def overall_mass_transfer(K, k_g, k_l, m): return 1 / (1/k_g + m/k_l) ``` ### Process Economics ```python def capital_cost_base(capacity, scale_factor, cost_index): return base_cost * (capacity / base_capacity)**scale_factor * cost_index def operating_cost(utilities, labor, maintenance, raw_materials): return sum([utilities, labor, maintenance, raw_materials]) def annualized_capital_cost(CAPEX, lifetime, interest_rate): return CAPEX * (interest_rate * (1 + interest_rate)**lifetime) / ((1 + interest_rate)**lifetime - 1) def payback_period(initial_investment, annual_cash_flow): return initial_investment / annual_cash_flow def net_present_value(cash_flows, discount_rate): return sum(cf / (1 + discount_rate)**t for t, cf in enumerate(cash_flows)) def levelized_cost(LCOE, annual_production): return LCOE / annual_production CAPEX = 10e6 OPEX = 1e6 NPV = net_present_value([-CAPEX] + [OPEX]*10, 0.1) print(f"NPV: {NPV:.2f} $") ``` ## Best Practices 1. **Safety**: Consider HAZOP and safety factors 2. **Scale-up**: Consider mass/heat transfer limitations 3. **Economic Optimization**: Minimize total cost 4. **Environmental**: Consider emissions and waste 5. **Control**: Include appropriate control systems ## Common Patterns ```python # Process flow diagram def process_simulation(): pass # Aspen Plus integration def aspen_export(): pass ``` ## Core Competencies 1. Reactor design 2. Separation processes 3. Heat transfer 4. Process economics 5. Process control
在 GitHub 查看