ThermoSolver - Connelly Barnes

advertisement
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.
Download