Spectral methods for the Navier-Stokes equations with one infinite and two periodic directions
Journal of Computational Physics
Scientific computing: an introduction with parallel computing
Scientific computing: an introduction with parallel computing
C++ gets faster for scientific computing
Computers in Physics
Expressing object-oriented concepts in Fortran 90
ACM SIGPLAN Fortran Forum
Fortran 90/95 explained (2nd ed.)
Fortran 90/95 explained (2nd ed.)
Numerical Recipes in C++: the art of scientific computing
Numerical Recipes in C++: the art of scientific computing
Scalable Parallel Computing: Technology,Architecture,Programming
Scalable Parallel Computing: Technology,Architecture,Programming
Scientific and Engineering C++: An Introduction with Advanced Techniques and Examples
Scientific and Engineering C++: An Introduction with Advanced Techniques and Examples
Object Oriented Programming Via FORTRAN 90/95
Object Oriented Programming Via FORTRAN 90/95
How to Express C++ Concepts in Fortran90
Scientific Programming
Dynamic Memory De-allocation in Fortran 95/2003 derived type calculus
Scientific Programming
A grid-free abstraction of the Navier-Stokes equations in Fortran 95/2003
ACM Transactions on Mathematical Software (TOMS)
Formal constraints on memory management for composite overloaded operations
Scientific Programming
Design patterns for multiphysics modeling in Fortran 2003 and C++
ACM Transactions on Mathematical Software (TOMS)
Hi-index | 0.00 |
The information hiding philosophy of object-oriented programming encourages localizing data structures within objects rather than sharing data globally across different classes of objects. This emphasis on local data leads naturally to fine-grained data abstractions, particularly in scientific simulations involving large collections of small, discrete physical or mathematical objects. This paper focuses on a subset of such simulations where dynamically reconfigurable links bind the objects together. It is demonstrated that fine-grained data structures reduce the complexity of local operations on the data at the potential expense of increased global operation complexity. Two metrics are used to describe data structures: granularity is the number of instantiations required to cover the data space, whereas extent is the continuously traversable length of the data along a given direction. These definitions are applied to two abstractions for simulating the turbulent motion of quantum vortices in superfluid liquid helium. Several local and global operations on a fine-grained linked list are compared with those on a coarse-grained array. It is demonstrated that fine-grained data structures recover the simplicity of more coarse-grained structures if maximal extent is maintained as the granularity increases.