John E. Tolsma
Massachusetts Institute of Technology
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by John E. Tolsma.
Applied Numerical Mathematics | 1997
William F. Feehery; John E. Tolsma; Paul I. Barton
Abstract A new algorithm and software for numerical sensitivity analysis of differential-algebraic equations are presented. The staggered corrector method proposed has lower computational complexity than both the staggered direct and the simultaneous corrector methods. The results here are especially significant for, though not limited to, large-scale sparse differential-algebraic systems.
Combustion and Flame | 2002
Douglas A. Schwer; John E. Tolsma; William H. Green; Paul I. Barton
A method of updating and reusing legacy FORTRAN codes for combustion simulations is presented using the DAEPACK software package. The procedure is demonstrated on two codes that come with the CHEMKIN-II package, CONP and SENKIN, for the constant-pressure batch reactor simulation. Using DAEPACK generated code, analytical derivative calculations, sparsity pattern information, and hidden discontinuity information can be obtained for the models of interest. This information can be easily integrated with different solvers giving the modeler great flexibility in selecting the best solution procedure. Using the generated code, the CONP code was connected to three different solvers, and the SENKIN code was connected to two different solvers. The effect of model formulation, analytical derivatives, sparsity, and sensitivity equation solution method were analyzed for three large kinetic mechanisms for methane, acetylene, and n-heptane. For the n-heptane model, with 544 species and 2446 reactions, a factor of 10-speed improvement over the original solution procedure was found using analytical derivatives and sparse linear algebra. For sensitivity calculations, for a small number of parameters, a factor of 55 improvement over the original solution procedure was found for the n-heptane problem. Upon closer examination of results, no one method is found to always be superior to other methods, and selection of the appropriate solution procedure requires an examination of the specific kinetic mechanism, which is easily conducted using DAEPACK generated code.
Computers & Chemical Engineering | 1998
John E. Tolsma; Paul I. Barton
Numerical derivatives play an important role in many computations. In many applications, the cost associated with evaluation of numerical derivatives may be significant. Dramatic improvements in the speed of such calculations can be obtained through careful consideration of how these derivatives are computed. This paper reviews several ways in which numerical derivatives can be evaluated: hand-coding, finite difference approximations, reverse polish notation evaluation, symbolic differentiation, and automatic differentiation. It is concluded that automatic differentiation has significant advantages over all other approaches. Several ways of improving the efficiency of obtaining derivatives in an interpretive, symbolic environment are discussed. Example problems are compared to illustrate these improvements.
Optimization and Engineering | 2002
Edward P. Gatzke; John E. Tolsma; Paul I. Barton
This paper describes how the automated code generation tool DAEPACK can be used to construct convex relaxations of codes implementing nonconvex functions. Modern deterministic global optimization algorithms involving continuous and/or integer variables often require such convex relaxations. Within the described framework, the user supplies a code implementing the objective and constraints of a nonconvex optimization problem. DAEPACK then analyzes this code and automatically generates a collection of subroutines based upon various symbolic transformations used by automatic convexification algorithms. The methods considered include the convex relaxations of McCormick, αBB of Floudas and coworkers, and the linearization strategy of Tawarmalani and Sahinidis. It should be noted that the user supplied code can be quite complex, including arbitrary nonlinear expressions, subroutines, and iterative loops.The code generation approach has the advantage that it can be applied to general, legacy models coded in programming languages such as FORTRAN. It also provides a generic symbolic transformation service for researchers interested in developing new global optimization algorithms. Numerical results are presented, including a study of how these techniques can be used to generate convex relaxations based on a hybridization of αBB and the method of McCormick.
Chemical Engineering Science | 2000
John E. Tolsma; Paul I. Barton
Abstract This paper, the second in a two-part series, discusses how a new approach for the computation of the heteroazeotropes present in a multicomponent mixture can be extended to compute efficiently the changes in phase equilibrium structure with parameters such as pressure. One particular advantage of the approach is the capability to detect incipient azeotropes and heteroazeotrope (i.e., azeotropes and heteroazeotropes that do not appear under current conditions but may appear under different conditions). The algorithm for computing the azeotropes and heteroazeotropes is analyzed in the first paper in this series: Computation of Heteroazeotropes. Part I: Theory. This paper includes a brief discussion of the implementation of this approach and some numerical examples as well as examples illustrating the effectiveness in determining the bifurcation pressures at which azeotropes and heteroazeotropes appear and disappear or switch between each other.
Chemical Engineering Science | 2000
John E. Tolsma; Paul I. Barton
Abstract This paper describes an algorithm for the computation of the homogeneous and heterogeneous azeotropes present in a multicomponent mixture. The approach (which is an extension of an approach developed by Fidkowski, Malone and Doherty (1993, Computers and Chemical Engineering , 17 , 1141–1155) for the computation of homogeneous azeotropes) is independent of the representation of the nonideality of the system and the topology of the liquid–liquid region. Furthermore, the approach can be readily extended to handle any number of liquid phases in equilibrium. The second paper in this series discusses how the approach can be used to compute efficiently changes in equilibrium structure with parameters such as pressure (i.e., the appearance and disappearance of azeotropes and heteroazeotropes) and contains several numerical examples of the approach described in this paper.
SIAM Journal on Scientific Computing | 1999
John E. Tolsma; Paul I. Barton
This paper describes a new approach for efficient Jacobian calculation using automatic differentiation. This approach obviates the need for vector accumulation by reducing certain parts of the computational graph representing the system of equations, allowing the Jacobian to be accumulated through a series of scalar operations. The advantages of this new approach include low spatial complexity, the ability to adapt to available memory if resources are limited, the ability to efficiently handle linear equations in a convenient manner, and low computational complexity. In addition, this approach is particularly well suited for evaluations within an interpretive environment. The approach can be applied to both the forward and reverse modes of automatic differentiation.
Computers & Chemical Engineering | 1998
John E. Tolsma; Paul I. Barton
Abstract The a priori determination of all heteroazeotropes present in a multicomponent system isna necessary task when analyzing and designing heterogeneous distillation processes. Although there are currently several approaches for determining homogenous azeotropes, no systematic approach exists for the determination of heteroazeotropes. This paper addresses this deficiency by describing an approach for computing heteroazeotropes. Our work is an extension of the approach developed by Fidkowski et al. for computing homogeneous azeotropes. The algorithm consists of three phases: 1) obtaining homogeneous azeotropes and spurious homogeneous azeotropes corresponding to actual heteroazeotropes using a homogeneous homotopy map , 2) retrace branches corresponding to actual spurious homogeneous azeotropes and search for points of intersection of the homogeneous curves and a projection of the heterogeneous curves, defined by a heterogeneous homotopy map, using a root exclusion test , and 3) at these points of intersection, track the heterogeneous curves using a heterogeneous map to the heteroazeotropes. This approach is independent of the particular model of phase equilibrium and can be readily extended to systems containing more than two liquid phases in equilibrium.
Archive | 1999
Paul I. Barton; Berit S. Ahmad; Weiyang Cheong; John E. Tolsma
An integrated approach to the reduction of toxic waste in pharmaceutical and specialty chemical manufacturing is presented. The approach focuses on fundamental understanding and redesign of the relevant production processes.
Computer-aided chemical engineering | 2001
John E. Tolsma; Paul I. Barton
Publisher Summary This chapter describes how symbolic techniques can be applied to general FORmula TRANslation (FORTRAN) code to perform automatically many tedious, time-consuming, and error prone tasks required when using state-of-the-art algorithms for numerical calculations. Using this new approach, external models written in FORTRAN can be properly incorporated into an equation-oriented modeling environment. This allows the modeler to create heterogeneous models using both FORTRAN and the high level input language of the process simulator, depending on which is more suitable for the particular facet of the overall model. Using the symbolic and code generation components of DAEPACK, external FORTRAN code can be properly incorporated into a modern process modeling environment. Just as modern equation-oriented environments that can generate all of the information necessary for robust, efficient, and correct numerical calculation from a model written in the simulators input language, DAEPACK can generate new code that computes the same information from the original FORTRAN code. This allows heterogeneous models to be developed where the modeler selects different languages for different portions of the flow-sheet model depending on the expressive power of the language, what is being modeled, and the skill of the modeler.