<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.4 20241031//EN"
        "https://jats.nlm.nih.gov/publishing/1.4/JATS-journalpublishing1-4.dtd">
<article  article-type="research-article"        dtd-version="1.4">
            <front>

                <journal-meta>
                                    <journal-id></journal-id>
            <journal-title-group>
                                                                                    <journal-title>International Journal of Thermodynamics</journal-title>
            </journal-title-group>
                            <issn pub-type="ppub">1301-9724</issn>
                                        <issn pub-type="epub">2146-1511</issn>
                                                                                            <publisher>
                    <publisher-name>Uluslararası Uygulamalı Termodinamik Derneği İktisadi İşletmesi</publisher-name>
                </publisher>
                    </journal-meta>
                <article-meta>
                                        <article-id pub-id-type="doi">10.5541/ijot.1317496</article-id>
                                                                <article-categories>
                                            <subj-group  xml:lang="en">
                                                            <subject>Thermodynamics and Statistical Physics</subject>
                                                    </subj-group>
                                            <subj-group  xml:lang="tr">
                                                            <subject>Termodinamik ve İstatistiksel Fizik</subject>
                                                    </subj-group>
                                    </article-categories>
                                                                                                                                                        <title-group>
                                                                                                                        <article-title>Calculation of Complex Chemical Equilibrium Using Optimization Package Ipopt</article-title>
                                                                                                                                        </title-group>
            
                                                    <contrib-group content-type="authors">
                                                                        <contrib contrib-type="author">
                                                                    <contrib-id contrib-id-type="orcid">
                                        https://orcid.org/0000-0001-7949-9403</contrib-id>
                                                                <name>
                                    <surname>Belov</surname>
                                    <given-names>Gleb</given-names>
                                </name>
                                                                    <aff>Joint Institute for High Temperatures of Russian Academy of Science</aff>
                                                            </contrib>
                                                    <contrib contrib-type="author">
                                                                    <contrib-id contrib-id-type="orcid">
                                        https://orcid.org/0000-0001-8588-9280</contrib-id>
                                                                <name>
                                    <surname>Aristova</surname>
                                    <given-names>N. M.</given-names>
                                </name>
                                                            </contrib>
                                                                                </contrib-group>
                        
                                        <pub-date pub-type="pub" iso-8601-date="20231201">
                    <day>12</day>
                    <month>01</month>
                    <year>2023</year>
                </pub-date>
                                        <volume>26</volume>
                                        <issue>4</issue>
                                        <fpage>77</fpage>
                                        <lpage>83</lpage>
                        
                        <history>
                                    <date date-type="received" iso-8601-date="20230620">
                        <day>06</day>
                        <month>20</month>
                        <year>2023</year>
                    </date>
                                                    <date date-type="accepted" iso-8601-date="20231008">
                        <day>10</day>
                        <month>08</month>
                        <year>2023</year>
                    </date>
                            </history>
                                        <permissions>
                    <copyright-statement>Copyright © 1998, International Journal of Thermodynamics</copyright-statement>
                    <copyright-year>1998</copyright-year>
                    <copyright-holder>International Journal of Thermodynamics</copyright-holder>
                </permissions>
            
                                                                                                <abstract><p>An approach to the calculation of complex chemical equilibrium using the open-source optimization package Ipopt and the open-source package JuMP is proposed. The code of two procedures written in the open-source Julia programming language for calculating the equilibrium composition and properties of multicomponent heterogeneous thermodynamic systems is presented. The results of the test calculations showed a good performance of the code and a relatively high speed of calculations. Due to the compactness and simplicity of the code, it can be easily integrated into other applications, or used in combination with more complex models.</p></abstract>
                                                                                    
            
                                                            <kwd-group>
                                                    <kwd>chemical equilibrium</kwd>
                                                    <kwd>  thermodynamics</kwd>
                                                    <kwd>  Julia</kwd>
                                                    <kwd>  JuMP</kwd>
                                            </kwd-group>
                                                        
                                                                                                                                                <funding-group specific-use="FundRef">
                    <award-group>
                                                    <funding-source>
                                <named-content content-type="funder_name">Ministry of Science and Higher Education of the Russian Federation</named-content>
                            </funding-source>
                                                                            <award-id>State Assignment No. 075-01056-22-00</award-id>
                                            </award-group>
                </funding-group>
                                </article-meta>
    </front>
    <back>
                            <ref-list>
                                    <ref id="ref1">
                        <label>1</label>
                        <mixed-citation publication-type="journal">D. S. Villars, “A method of successive approximations for computing combustion equilibria on a high speed digital computer,” J. Phys. Chem., vol. 63, pp. 521-525, Apr. 1959, doi: 10.1021/j150574a016.</mixed-citation>
                    </ref>
                                    <ref id="ref2">
                        <label>2</label>
                        <mixed-citation publication-type="journal">W. R. Smith and R. W. Missen, Chemical Reaction Equilibrium Analysis: Theory and Algorithms, New York, NY, USA: Wiley, 1982.</mixed-citation>
                    </ref>
                                    <ref id="ref3">
                        <label>3</label>
                        <mixed-citation publication-type="journal">W. D. White, S. M. Johnson and G. B. Dantzig, &quot;Chemical equilibrium in complex mixtures,&quot; J. Chem. Phys., vol. 28, pp. 751-755, May 1958, doi: 10.1063/1.1744264.</mixed-citation>
                    </ref>
                                    <ref id="ref4">
                        <label>4</label>
                        <mixed-citation publication-type="journal">R. J Duffin and C. Zener, &quot;Geometric programming, chemical equilibrium, and the anti-entropy function,&quot; Proc. Natl. Acad. Sci. U.S.A., vol. 63, pp. 629-636, Apr. 1969, doi: 10.1073/pnas.63.3.629.</mixed-citation>
                    </ref>
                                    <ref id="ref5">
                        <label>5</label>
                        <mixed-citation publication-type="journal">G. Eriksson, &quot;Thermodynamic study of high temperature equilibria,&quot; Acta. Chem. Scand. vol. 25, pp. 2651-2658, Jul. 1971, doi: 10.3891/acta.chem.scand.25-2651.</mixed-citation>
                    </ref>
                                    <ref id="ref6">
                        <label>6</label>
                        <mixed-citation publication-type="journal">B. A. Murtagh and M. A. Saunders, &quot;Large-scale linearly constrained optimization,&quot; Math. Program., vol. 14, pp.41-72, Dec. 1978, doi: 10.1007/BF01588950.</mixed-citation>
                    </ref>
                                    <ref id="ref7">
                        <label>7</label>
                        <mixed-citation publication-type="journal">H. Greiner, &quot;Computing complex chemical equilibria by generalized linear programming,&quot; Math. Comput. Model., vol. 10, pp. 529-550, Jul. 1988, doi: 10.1016/0895-7177(88)90082-9.</mixed-citation>
                    </ref>
                                    <ref id="ref8">
                        <label>8</label>
                        <mixed-citation publication-type="journal">M. H. A. Piro and S. Simunovic, &quot;Global optimization algorithms to compute thermodynamic equilibria in large complex systems with performance considerations,&quot; Comput. Mater. Sci., vol. 118, pp. 87-96, Jun. 2016, doi: 10.1016/j.commatsci.2016.02.043.</mixed-citation>
                    </ref>
                                    <ref id="ref9">
                        <label>9</label>
                        <mixed-citation publication-type="journal">C. Tsanas, E. H. Stenby and W. Yan, &quot;Calculation of multiphase chemical equilibrium by the modified RAND method,&quot; Ind. Eng. Chem. Res., vol. 56, pp. 11983–11995, Oct. 2017, doi: 10.1021/acs.iecr.7b02714.</mixed-citation>
                    </ref>
                                    <ref id="ref10">
                        <label>10</label>
                        <mixed-citation publication-type="journal">B. Sundman, N. Dupin and B. Hallstedt, &quot;Algorithms useful for calculating multi-component equilibria, phase diagrams and other kinds of diagrams,&quot; Calphad, vol. 75, p. 102330, Dec. 2021, doi: 10.1016/j.calphad.2021.102330.</mixed-citation>
                    </ref>
                                    <ref id="ref11">
                        <label>11</label>
                        <mixed-citation publication-type="journal">W. A. Roos and J. H. Zietsman, “Accelerating complex chemical equilibrium calculations - A review,” Calphad, vol. 77, p. 102380, Jun. 2022, doi: 10.1016/j.calphad.2021.102380.</mixed-citation>
                    </ref>
                                    <ref id="ref12">
                        <label>12</label>
                        <mixed-citation publication-type="journal">Available: https://www.factsage.com/  (accessed Aug. 27, 2023).</mixed-citation>
                    </ref>
                                    <ref id="ref13">
                        <label>13</label>
                        <mixed-citation publication-type="journal">“Thermo-Calc Software.” Available: https://thermocalc.com/  (accessed Aug. 27, 2023).</mixed-citation>
                    </ref>
                                    <ref id="ref14">
                        <label>14</label>
                        <mixed-citation publication-type="journal">Y. Lwin, &quot;Chemical equilibrium by Gibbs energy minimization on spreadsheets,&quot; Int. J. Eng. Educ. vol. 16, pp.335-339, Apr. 2000.</mixed-citation>
                    </ref>
                                    <ref id="ref15">
                        <label>15</label>
                        <mixed-citation publication-type="journal">L. Eriksson, &quot;CHEPP-a chemical equilibrium program package for Matlab,&quot; SAE trans. , vol. 113, pp. 730-741, 2004.</mixed-citation>
                    </ref>
                                    <ref id="ref16">
                        <label>16</label>
                        <mixed-citation publication-type="journal">M. H. A. Piro, S. Simunovic, T. M. Besmann, B. J. Lewis and W. T. Thompson, &quot;The thermochemistry library Thermochimica,&quot; Comput. Mater. Sci., vol. 67, pp.266-272, Feb. 2013, doi: 10.1016/j.commatsci.2012.09.011.</mixed-citation>
                    </ref>
                                    <ref id="ref17">
                        <label>17</label>
                        <mixed-citation publication-type="journal">“ORNL-CEES / thermochimica.” Available: https://github.com/ORNL-CEES/thermochimica (accessed Aug. 27, 2023).</mixed-citation>
                    </ref>
                                    <ref id="ref18">
                        <label>18</label>
                        <mixed-citation publication-type="journal">A. Wächter and L. T. Biegler, “On the implementation of an interior-point filter line-search algorithm for large-scale nonlinear programming,” Math. Program., vol. 106, pp. 25–57,  Mar. 2005. doi: 10.1007/s10107-004-0559-y.</mixed-citation>
                    </ref>
                                    <ref id="ref19">
                        <label>19</label>
                        <mixed-citation publication-type="journal">I. Prigogine and R. Defay, Treatise on thermodynamics: Based on the methods of Gibbs and De Donder, London: Longmans, 1954.</mixed-citation>
                    </ref>
                                    <ref id="ref20">
                        <label>20</label>
                        <mixed-citation publication-type="journal">J. Bezanson, A. Edelman, S. Karpinsky and V. B. Shah, “Julia: A fresh approach to numerical computing,” SIAM Rev., vol. 59, pp. 65-98, Jan. 2017, doi: 10.1137/141000671.</mixed-citation>
                    </ref>
                                    <ref id="ref21">
                        <label>21</label>
                        <mixed-citation publication-type="journal">Available: https://coin-or.github.io/Ipopt/index.html (accessed Aug. 27, 2023).</mixed-citation>
                    </ref>
                                    <ref id="ref22">
                        <label>22</label>
                        <mixed-citation publication-type="journal">I. Dunning, J. Huchette and M. Lubin, “JuMP: A modeling language for mathematical optimization,” SIAM Rev., vol. 59, pp. 295-320, Feb. 2017, doi: 10.1137/15M1020575.</mixed-citation>
                    </ref>
                                    <ref id="ref23">
                        <label>23</label>
                        <mixed-citation publication-type="journal">B. Legat, O. Dowson, J. D. Garcia and M. Lubin, “MathOptInterface: a data structure for mathematical optimization problems,” INFORMS J. Comput., vol. 34, pp. 672-689, Feb. 2022, doi: 10.1287/ijoc.2021.1067.</mixed-citation>
                    </ref>
                                    <ref id="ref24">
                        <label>24</label>
                        <mixed-citation publication-type="journal">J. Lofberg, &quot;YALMIP : a toolbox for modeling and optimization in MATLAB,&quot; in Proc. 2004 IEEE Int. Con. on Robotics and Automation (IEEE Cat. No.04CH37508), Taipei, Taiwan, Sep. 2004, pp. 284-289, doi: 10.1109/CACSD.2004.1393890.</mixed-citation>
                    </ref>
                                    <ref id="ref25">
                        <label>25</label>
                        <mixed-citation publication-type="journal">“CVX: Matlab Software for Disciplined Convex Programming.” Available: http://cvxr.com/cvx/ (accessed Aug. 27, 2023).</mixed-citation>
                    </ref>
                                    <ref id="ref26">
                        <label>26</label>
                        <mixed-citation publication-type="journal">W. E. Hart, C. D. Laird, J.-P. Watson, D. L. Woodruff, G. A. Hackebeil, B. L. Nicholson and J. D. Siirola, Pyomo-optimization modeling in Python. Berlin: Springer, 2017.</mixed-citation>
                    </ref>
                                    <ref id="ref27">
                        <label>27</label>
                        <mixed-citation publication-type="journal">“JuliaMath / Roots.jl .” Available: https://github.com/JuliaMath/Roots.jl  (accessed Aug. 27, 2023).</mixed-citation>
                    </ref>
                                    <ref id="ref28">
                        <label>28</label>
                        <mixed-citation publication-type="journal">L. V. Gurvich and I. V. Veyts, Thermodynamic Properties of Individual Substances, New York: Hemisphere Publishing Corp., 1989.</mixed-citation>
                    </ref>
                                    <ref id="ref29">
                        <label>29</label>
                        <mixed-citation publication-type="journal">G. V. Belov, S. A. Dyachkov, P. R. Levashov, I. V. Lomonosov, D. V. Minakov, I. V. Morozov, M. A. Sineva and V. N. Smirnov, “The IVTANTHERMO — оnline database for thermodynamic properties of individual substances with web interface,” J. Phys.: Conf. Ser., vol. 946, p. 012120, 2018,  doi: 10.1088/1742-6596/946/1/012120.</mixed-citation>
                    </ref>
                                    <ref id="ref30">
                        <label>30</label>
                        <mixed-citation publication-type="journal">“NIST Chemistry WebBook, SRD 69.” Available: webbook.nist.gov (accessed Aug. 27, 2023).</mixed-citation>
                    </ref>
                                    <ref id="ref31">
                        <label>31</label>
                        <mixed-citation publication-type="journal">B. J. McBride, “NASA Glenn coefficients for calculating thermodynamic properties of individual species,” NASA, Cleveland, Ohio, USA, Tech. Rep. NASA/TP-2002-211556, Sep. 2002. Available: https://ntrs.nasa.gov/api/citations/20020085330/downloads/20020085330.pdf (accessed Aug. 27, 2023).</mixed-citation>
                    </ref>
                                    <ref id="ref32">
                        <label>32</label>
                        <mixed-citation publication-type="journal">G. Belov, “On linear programming approach for the calculation of chemical equilibrium in complex thermodynamic systems,” J. Math. Chem., vol. 47, pp. 446-456, Jan. 2010, doi: 10.1007/s10910-009-9580-y.</mixed-citation>
                    </ref>
                                    <ref id="ref33">
                        <label>33</label>
                        <mixed-citation publication-type="journal">A. D. Pelton, &quot;Thermodynamic modeling and phase equilibrium calculations in nuclear materials,&quot; Pure Appl. Chem., vol. 69, pp. 2245-2252, Nov. 1997, doi: 10.1351/pac199769112245.</mixed-citation>
                    </ref>
                                    <ref id="ref34">
                        <label>34</label>
                        <mixed-citation publication-type="journal">“CEARUN.” Available: https://cearun.grc.nasa.gov/  (accessed Aug. 27, 2023).</mixed-citation>
                    </ref>
                                    <ref id="ref35">
                        <label>35</label>
                        <mixed-citation publication-type="journal">G. P. Sutton and O. Biblartz, Rocket Propulsion Elements, New York, NY, USA: Wiley, 2017.</mixed-citation>
                    </ref>
                                    <ref id="ref36">
                        <label>36</label>
                        <mixed-citation publication-type="journal">“gvbelov / Heterogeneous-Equilibrium .” Available: https://github.com/gvbelov/Heterogeneous-Equilibrium  (accessed Aug. 27, 2023).</mixed-citation>
                    </ref>
                            </ref-list>
                    </back>
    </article>
