Search NASA⌕ Search

Engineering topics

Palmer, Bruce J

Publications and source records attributed to Palmer, Bruce J.

Efficient data IO for a Parallel Global Cloud Resolving Model

Execution of a Global Cloud Resolving Model (GCRM) at target resolutions of 2-4 km will generate, at a minimum, 10s of Gigabytes of data per variable per snapshot. Writing this data to disk without creating a serious bottleneck in the execution of the GCRM code while also supporting efficient post-execution data analysis is a significant challenge. This paper discusses an Input/Output (IO) application programmer interface (API) for the GCRM that efficiently moves data from the model to disk while maintaining support for community standard formats, avoiding the creation of very large numbers of files, and supporting efficient analysis. Several aspects of the API will be discussed in detail. First, we discuss the output data layout which linearizes the data in a consistent way that is independent of the number of processors used to run the simulation and provides a convenient format for subsequent analyses of the data. Second, we discuss the flexible API interface that enables modelers to easily add variables to the output stream by specifying where in the GCRM code these variables are located and to flexibly configure the choice of outputs and distribution of data across files. The flexibility of the API is designed to allow model developers to add new data fields to the output as the model develops and new physics is added and also provides a mechanism for allowing users of the GCRM code itself to adjust the output frequency and the number of fields written depending on the needs of individual calculations. Third, we describe the mapping to the NetCDF data model with an emphasis on the grid description. Fourth, we describe our messaging algorithms and IO aggregation strategies that are used to achieve high bandwidth while simultaneously writing concurrently from many processors to shared files. We conclude with initial performance results.

99 GENERAL AND MISCELLANEOUS↗

Pore-scale study of capillary trapping mechanism during CO2 injection in geological formations

Geological sequestration of CO{sub 2} gas emerged as a promising solution for reducing amount of green house gases in atmosphere. A number of continuum scale models are available to describe the transport phenomena of CO{sub 2} sequestration. These models rely heavily on a phenomenological description of subsurface transport phenomena and the predictions can be highly uncertain. Pore-scale models provide a better understanding of fluid displacement processes, nonetheless such models are rare. In this work we use a Smoothed Particle Hydrodynamics (SPH) model to study pore-scale displacement and capillary trapping mechanisms of super-critical CO{sub 2} in the subsurface. Simulations are carried out to investigate the effects of gravitational, viscous, and capillary forces in terms of Gravity, Capillary, and Bond numbers. Contrary to the other published continuum scale investigations, we found that not only Gravity number but also Capillary number plays an important role on the fate of injected CO{sub 2}. For large Gravity numbers (on the order of 10), most of the injected CO{sub 2} reaches the cap-rock due to gravity segregation. A significant portion of CO{sub 2} gets trapped by capillary forces when Gravity number is small (on the order of 0.1). When Gravity number is moderately high (on the order of 1), trapping patterns are heavily dependent on Capillary number. If Capillary number is very small (less than 0.001), then capillary forces dominate the buoyancy forces and a significant fraction of injected CO{sub 2} is trapped by the capillary forces. Conversely, if Capillary number is high (higher than 0.001), capillary trapping is relatively small since buoyancy dominates the capillary forces. In addition, our simulations reveal different types of capillary trapping and flow displacement mechanisms during and after injection. In gravity dominated cases leave behind was the widespread trapping mechanism. Division was the primary trapping mechanism in viscous dominated cases. In capillary dominated cases, snap-off of the CO{sub 2} plume is the most commonly observed displacement mechanism. Large CO{sub 2} blobs are created due to coalescence mechanism.

54 ENVIRONMENTAL SCIENCES↗

Design and Implementation of “Many Parallel Task” Hybrid Subsurface Model

Continuum scale models have been used to study subsurface flow, transport, and reactions for many years. Recently, pore scale models, which operate at scales of individual soil grains, have been developed to more accurately model pore scale phenomena, such as precipitation, that may not be well represented at the continuum scale. However, particle-based models become prohibitively expensive for modeling realistic domains. Instead, we are developing a hybrid model that simulates the full domain at continuum scale and applies the pore model only to areas of high reactivity. The hybrid model uses a dimension reduction approach to formulate the mathematical exchange of information across scales. Since the location, size, and number of pore regions in the model varies, an adaptive Pore Generator is being implemented to define pore regions at each iteration. A fourth code will provide data transformation from the pore scale back to the continuum scale. These components are coupled into a single hybrid model using the SWIFT workflow system. Our hybrid model workflow simulates a kinetic controlled mixing reaction in which multiple pore-scale simulations occur for every continuum scale timestep. Each pore-scale simulation is itself parallel, thus exhibiting multi-level parallelism. Our workflow manages these multiple parallel tasks simultaneously, with the number of tasks changing across iterations. It also supports dynamic allocation of job resources and visualization processing at each iteration. We discuss the design, implementation and challenges associated with building a scalable, Many Parallel Task, hybrid model to run efficiently on thousands to tens of thousands of processors.

workflow, Many task, Subsurface↗