3,769 research outputs found
Large-Scale Forcing with Less Communication in Finite-Difference Simulations of Stationary Isotropic Turbulence
「気候変動に適応可能な環境探索のためのマルチスケールシミュレーション」プロジェク
An efficient parallel immersed boundary algorithm using a pseudo-compressible fluid solver
We propose an efficient algorithm for the immersed boundary method on
distributed-memory architectures, with the computational complexity of a
completely explicit method and excellent parallel scaling. The algorithm
utilizes the pseudo-compressibility method recently proposed by Guermond and
Minev [Comptes Rendus Mathematique, 348:581-585, 2010] that uses a directional
splitting strategy to discretize the incompressible Navier-Stokes equations,
thereby reducing the linear systems to a series of one-dimensional tridiagonal
systems. We perform numerical simulations of several fluid-structure
interaction problems in two and three dimensions and study the accuracy and
convergence rates of the proposed algorithm. For these problems, we compare the
proposed algorithm against other second-order projection-based fluid solvers.
Lastly, the strong and weak scaling properties of the proposed algorithm are
investigated
Multidisciplinary computational aerosciences
As the challenges of single disciplinary computational physics are met, such as computational fluid dynamics, computational structural mechanics, computational propulsion, computational aeroacoustics, computational electromagnetics, etc., scientists have begun investigating the combination of these single disciplines into what is being called multidisciplinary computational aerosciences (MCAS). The combination of several disciplines not only offers simulation realism but also formidable computational challenges. The solution of such problems will require computers orders of magnitude larger than those currently available. Such computer power can only be supplied by massively parallel machines because of the current speed-of-light limitation of conventional serial systems. Even with such machines, MCAS problems will require hundreds of hours for their solution. To efficiently utilize such a machine, research is required in three areas that include parallel architectures, systems software, and applications software. The main emphasis of this paper is the applications software element. Examples that demonstrate application software for multidisciplinary problems currently being solved at NASA Ames Research Center are presented. Pacing items for MCAS are discussed such as solution methodology, physical modeling, computer power, and multidisciplinary validation experiments
Computational methods and software systems for dynamics and control of large space structures
Two key areas of crucial importance to the computer-based simulation of large space structures are discussed. The first area involves multibody dynamics (MBD) of flexible space structures, with applications directed to deployment, construction, and maneuvering. The second area deals with advanced software systems, with emphasis on parallel processing. The latest research thrust in the second area involves massively parallel computers
High performance Python for direct numerical simulations of turbulent flows
Direct Numerical Simulations (DNS) of the Navier Stokes equations is an
invaluable research tool in fluid dynamics. Still, there are few publicly
available research codes and, due to the heavy number crunching implied,
available codes are usually written in low-level languages such as C/C++ or
Fortran. In this paper we describe a pure scientific Python pseudo-spectral DNS
code that nearly matches the performance of C++ for thousands of processors and
billions of unknowns. We also describe a version optimized through Cython, that
is found to match the speed of C++. The solvers are written from scratch in
Python, both the mesh, the MPI domain decomposition, and the temporal
integrators. The solvers have been verified and benchmarked on the Shaheen
supercomputer at the KAUST supercomputing laboratory, and we are able to show
very good scaling up to several thousand cores.
A very important part of the implementation is the mesh decomposition (we
implement both slab and pencil decompositions) and 3D parallel Fast Fourier
Transforms (FFT). The mesh decomposition and FFT routines have been implemented
in Python using serial FFT routines (either NumPy, pyFFTW or any other serial
FFT module), NumPy array manipulations and with MPI communications handled by
MPI for Python (mpi4py). We show how we are able to execute a 3D parallel FFT
in Python for a slab mesh decomposition using 4 lines of compact Python code,
for which the parallel performance on Shaheen is found to be slightly better
than similar routines provided through the FFTW library. For a pencil mesh
decomposition 7 lines of code is required to execute a transform
- …