ThermoSolver An Integrated Educational Thermodynamics Software Program Connelly Barnes What is ThermoSolver? • Programmed by Connelly Barnes. • Software program used to teach Chemical Engineering (ChE) thermodynamics. • Available for free from Web (Google it). • Allows students to "explore" thermodynamics – make nontrivial calculations, and compare different thermodynamic models. Motivation • Thermodynamic equations can become complicated, must be solved by lookup tables or computer algorithms. • Tables are available for a limited set of pure species. Motivation (continued) • Computer solutions: spreadsheets, scripts, Computer Algebra System worksheets can be used, but it's hard to let the student use different number of species, thermodynamic models, etc. • We would like students to not have the burden of programming every solution, especially for routine calculations. Objectives • Standalone educational software program. • Easy to use interface – reduce all "barriers" to using the software. • Research and develop algorithms needed to solve equations. • Integrate with chapter problems in Engineering and Chemical Thermodynamics by Milo Koretsky. Use at Universities • At OSU, ThermoSolver used in ChE thermo course, graduate reactors course, plant design. • In plant design, ThermoSolver not specifically named, but 10/39 students used it. • Don't track usage by other Universities, but Web search reveals it has been used at Univ. Notre Dame, Indiana and Univ. of Colorado at Boulder. Features • • • • • Database, 350+ chemical compounds. Calculate saturation pressure, temp. Solve equations of state (LK and PR). Find pure, mixed fugacity coefficients. Fit excess Gibbs energy models to experimental data. • Bubble point and dew point calculations. • Plot phase diagrams for binary systems. Features (continued) • • • • Calculate Keq for single chemical reaction. Multiple chemical reaction equilibria. Plotting. HTML docs provided, numerical methods and equations described. Tour of Program: Saturation Pressure Calculator • Solve for saturation pressure or saturation temperature. • Saturation pressure/temp determines where liquid/vapor phase transition occurs. • Example problem: Find saturation pressure of 1,4-dioxane (C4H8O2) at 50 oC. Tour of Program: Equation of State Solver • Finds one of the state properties pressure, molar volume, or temperature given the other two, using the LK or PR equations of state. • Example problem: Find molar volume of propane at 35 bar and 50 oC. Compare w/ ideal gas: 0.77 L/mol. Tour of Program: Fugacity Coefficient Solver • Finds the pure fugacity coefficient i or the fugacity coefficient i of a species in a mixture, using the LK or PR equation of state. Tour of Program: Fugacity Coefficient Solver i Tour of Program: Models for excess Gibbs energy • Fits activity coefficient models to experimental data for binary Vapor-Liquid Equilibrium (VLE) systems. • Objective function. • Example: Chloroform-heptane. Tour of Program: Bubble point / Dew Point Calculator • Dew point: gaseous system, when first drop of liquid forms – achieved by decreasing temperature or increasing pressure. • Bubble point: liquid system, when first bubble forms. • Solver finds temp./pressure where first bubble or dewdrop forms, and composition of chemicals in bubble or dew-drop. Tour of Program: Bubble point / Dew Point Calculator Tour of Program: Binary Phase Diagrams • Make plots of phase transitions in binary vapor-liquid systems. • Example: Plot pressure vs. liquid mole fraction for methylcyclohexane-benzene system at 50 oC. Tour of Program: Equilibrium Constant Solver • Finds KT at a single temperature, for a single chemical reaction. • Plots KT vs T. Tour of Program: Equilibrium Constant Solver Tour of Program: Multiple Chemical Reaction Equilibria • Gas-solid equilibrium. • Found by minimizing excess Gibbs energy. Tour of Program: Multiple Chemical Reaction Equilibria Tour of Program: Multiple Chemical Reaction Equilibria Numerical Algorithms • Newton root finder with backtracking. • Downhill simplex method for minimization. • Iterative substitution. Multidimensional Newton Method • Vector-valued function F: Rn -> Rn. F1 x 1 DF Fn x1 F1 xn Fn xn 1 δ ( D F ) F( x i ) • Newton step xi • Iterate xi 1 xi δ Newton Backtracking • Use full Newton step δ if norm ||F||2 is less than its value at xi, otherwise try δ/2, δ/4, δ/8, ... until ||F||2 is less than its value at xi. • This is guaranteed to happen, as δ is a descent direction for ||F||2. Simplex Method • J.A. Nelder and R. Mead, "A simplex method for function minimization," Computer Journal 7 (1965) 308-313. • Simple, derivative free method for finding minimum of function of form F: Rn -> R. • Does not use derivatives, so constrained minimization possible by setting F to infinity. Algorithms • Equation of state solver: Newton method. • Excess Gibbs energy model fitting: Simplex. • Bubble point / dew point: Custom iterative methods based on those of Smith, Van Ness, and Abbott. • Multiple chemical reaction equilibria: Newton and simplex. Typically converges, however Dr. Koretsky found a problem where this method does not converge. Conclusion • Objectives met? • User interface is straightforward to use. • Numerical methods converge with one known exception. • A practical tool integrated with problems in a textbook. Acknowledgements • Milo Koretsky, Mentor. • Rubin Landau, Computational Physics.