Compframe 2005

Atlanta, GA, June 22-23, 2005


Comparison of Frameworks for Next Generation Multiphase Flow Solver, MFIX. A Group Decision-Making Multiphase Flow Solver, MFIX. A Group Decision-Making Exercise.
A. Gel, S. Pannala, M. Syamlal, T. J. O'Brien and E. Gel
Abstract
Multiphase flows occur in many applications in chemical, petro-chemical and fossil-energy conversion industries. Understanding and accurately modeling such flows lead to greatly improved designs of multiphase flow reactors. These flows, modeled by a large set of coupled partial differential equations pose enormous challenges for numerical simulations. Furthermore, implementation of different physical models requires considerable effort. Therefore, there is a need for a fast, robust, easily modifiable and flexible framework that provides a productive problem solving environment for the researcher in this field.
Over the last twenty years, multiphase flow research at NETL, later joined by ORNL, lead to the development of an open source software called MFIX (Multiphase Flow with Interphase eXchanges), distributed through http://www.mfix.org. Over 500 researchers from over 200 institutions world-wide have downloaded it. Its development continues at NETL and ORNL, cooperating with several external research groups, where it is also used for applied research. Since the inception of MFIX, there have been many important advances in, e.g., geometry specification, grid generation, linear and nonlinear equation solvers, data analysis and visualization, and code integration. The programming paradigm has also changed from structured to object-oriented programming, where several modern programming languages and tools have become available and widely used. Hence, combining the large library of publicly available software components and tools with the physics and numerics knowledgebase contained in the current MFIX code offers a great opportunity to develop a next-generation Problem Solving Environment (PSE) for multiphase flow computations. The main features sought in this open-source PSE are the capability to represent numerical techniques and physics using a scripting based interface (e.g., editing governing equations with a scripting language similar to Matlab syntax) and a components-based design to rapidly reuse advanced components (e.g., geometry/meshing, linear and non-linear solvers, etc.) developed at national laboratories and universities.
An ideal PSE must hide from the application scientist: the application-related complexity in representing the detailed geometry and physics; the complexity in representing the algorithm (e.g. implicit/explicit equations, conservation, high order methods, multigrid etc.) [1]; and the computer architecture-related complexities (e.g., efficient cache use, vector machines, scalability on distributed-memory parallel systems, etc.) The PSE must also reduce the potential for setup errors and produce computational results fast so that there is considerable reduction in the time-to-solution compared with the capabilities of existing software. The demand for the maximum performance out of the high performance computing hardware with complex memory hierarchies and high degree of parallelism does increase the complexity of the PSE software itself [2]. So there is a balance to be struck between hiding complexities from the application scientist and yet making the PSE software maintainable/extendable. The framework should act like a bridge that brings together the application scientists and computer scientists such that the application scientist is able to focus on the details of rapid development of application codes, rather than on the details of software/hardware complexities.
As the first step toward developing such a PSE we surveyed available computational frameworks, focusing particularly on frameworks suitable for solving partial differential equations. The PSE and framework are both partially finished applications; here PSE is a specialized framework we plan to develop, tailored for multiphase flow solver applications. This extended abstract describes a multi-criteria group decision making exercise for evaluating the available open-source alternatives for a new framework by determining how well each fits the needs and requirements of the multiphase flow user community. Since this is an ongoing effort further changes in the methodology are sure to occur and will be reported during our presentation in the CompFrame workshop. The scope of this extended abstract is geared towards the discussion on the development of the methodology rather than the results of the framework comparisons.


Access full paper (pdf file)