A Component-Based Framework for Smoothed Particle Hydrodynamics Simulations of Reactive Fluid Flow in Porous Media

The development of a framework to support smoothed particle hydrodynamics (SPH) simulations of fluid flow and transport in porous media is described. The framework is built using the Common Component Architecture (CCA) toolkit and it supports SPH simulations using a variety of different SPH models and setup formats. The SPH simulation code is decomposed into independent components that represent self-contained units of functionality. Different physics models can be developed within the framework by re-implementing key components but no modification of other components is required. A model for defining components and developing abstract interfaces that support a high degree of modularity and minimal dependencies between components is discussed in detail.

[1]  William Gropp,et al.  Skjellum using mpi: portable parallel programming with the message-passing interface , 1994 .

[2]  James Arthur Kohl,et al.  A Component Architecture for High-Performance Scientific Computing , 2006, Int. J. High Perform. Comput. Appl..

[3]  Scott R. Kohn,et al.  Divorcing Language Dependencies from a Scientific Software Library , 2001, PPSC.

[4]  Lori A. Freitag,et al.  Creating Interoperable Meshing and Discretization Software: The Terascale Simulation Tools and Technology Center , 2002 .

[5]  William Gropp,et al.  Efficient Management of Parallelism in Object-Oriented Numerical Software Libraries , 1997, SciTools.

[6]  Jarek Nieplocha,et al.  Advances, Applications and Performance of the Global Arrays Shared Memory Programming Toolkit , 2006, Int. J. High Perform. Comput. Appl..

[7]  Robert D. Falgout,et al.  hypre: A Library of High Performance Preconditioners , 2002, International Conference on Computational Science.

[8]  Cecelia DeLuca,et al.  Design and Implementation of Components in the Earth System Modeling Framework , 2005, Int. J. High Perform. Comput. Appl..

[9]  Daniel J. Quinlan,et al.  OVERTURE: An Object-Oriented Software System for Solving Partial Differential Equations in Serial and Parallel Environments , 1997, PPSC.

[10]  J. Monaghan Smoothed particle hydrodynamics , 2005 .

[11]  Robert B. Ross,et al.  Using MPI-2: Advanced Features of the Message Passing Interface , 2003, CLUSTER.

[12]  Steve Plimpton,et al.  Fast parallel algorithms for short-range molecular dynamics , 1993 .

[13]  James Demmel,et al.  SuperLU_DIST: A scalable distributed-memory sparse direct solver for unsymmetric linear systems , 2003, TOMS.

[14]  Jack Dongarra,et al.  ScaLAPACK Users' Guide , 1987 .

[15]  J. Banavar,et al.  Computer Simulation of Liquids , 1988 .

[16]  John Shalf,et al.  The Cactus Framework and Toolkit: Design and Applications , 2002, VECPAR.