Obtaining insight into process models through operator overloading
Chemical process systems are often modeled as equation systems or parametric systems of differential equations. Since these mathematical systems typically cannot be solved or optimized exactly, methods for simulation and optimization must somehow gain enough insight into the underlying model to proceed without having access to closed-form solutions. This may be accomplished using operator overloading: a programming technique that essentially asks a computer to treat each arithmetic operation in an unconventional user-specified way. This presentation shows how operator overloading may be used to extract useful insights from a process model automatically, tractably, and accurately, in two ways: automatic differentiation for gradient evaluation, and convex relaxation to aid in global optimization. Recent advances are emphasized, and implications and examples are discussed.