32,139 research outputs found

    Two computational approaches for the simulation of fluid problems in rotating spherical shells

    Get PDF
    Many geophysical and astrophysical phenomena such as magnetic fields generation, or the differential rotation observed in the atmospheres of the major planets are studied by means of numerical simulations of the Navier-Stokes equations in rotating spherical shells. Two different computational codes, spatially discretized using spherical harmonics in the angular variables, are presented. The first code, PARODY, solves the magneto-hydrodynamic anelastic convective equations with finite a difference discretization in the radial direction. This allows the parallelization on distributed memory computers to run massive numerical simulations of second order in time. It is mainly designed to perform direct numerical simulations. The second code, SPHO, solves the fully spectral Boussinesq convective equations, and its variationals, parallelized on shared memory architectures and it uses optimized linear algebra libraries. High-order time integration methods are implemented to allow the use of dynamical systems tools for the study of complex dynamics.Postprint (published version

    Two computational approaches for the simulation of fluid problems in rotating spherical shells

    Get PDF
    Many geophysical and astrophysical phenomena such as magnetic fields generation, or the differential rotation observed in the atmospheres of the major planets are studied by means of numerical simulations of the Navier-Stokes equations in rotating spherical shells. Two different computational codes, spatially discretized using spherical harmonics in the angular variables, are presented. The first code, PARODY, solves the magneto-hydrodynamic anelastic convective equations with finite a difference discretization in the radial direction. This allows the parallelization on distributed memory computers to run massive numerical simulations of second order in time. It is mainly designed to perform direct numerical simulations. The second code, SPHO, solves the fully spectral Boussinesq convective equations, and its variationals, parallelized on shared memory architectures and it uses optimized linear algebra libraries. High-order time integration methods are implemented to allow the use of dynamical systems tools for the study of complex dynamics.Postprint (published version

    Teaching Parallel Programming Using Java

    Full text link
    This paper presents an overview of the "Applied Parallel Computing" course taught to final year Software Engineering undergraduate students in Spring 2014 at NUST, Pakistan. The main objective of the course was to introduce practical parallel programming tools and techniques for shared and distributed memory concurrent systems. A unique aspect of the course was that Java was used as the principle programming language. The course was divided into three sections. The first section covered parallel programming techniques for shared memory systems that include multicore and Symmetric Multi-Processor (SMP) systems. In this section, Java threads was taught as a viable programming API for such systems. The second section was dedicated to parallel programming tools meant for distributed memory systems including clusters and network of computers. We used MPJ Express-a Java MPI library-for conducting programming assignments and lab work for this section. The third and the final section covered advanced topics including the MapReduce programming model using Hadoop and the General Purpose Computing on Graphics Processing Units (GPGPU).Comment: 8 Pages, 6 figures, MPJ Express, MPI Java, Teaching Parallel Programmin

    A review of High Performance Computing foundations for scientists

    Full text link
    The increase of existing computational capabilities has made simulation emerge as a third discipline of Science, lying midway between experimental and purely theoretical branches [1, 2]. Simulation enables the evaluation of quantities which otherwise would not be accessible, helps to improve experiments and provides new insights on systems which are analysed [3-6]. Knowing the fundamentals of computation can be very useful for scientists, for it can help them to improve the performance of their theoretical models and simulations. This review includes some technical essentials that can be useful to this end, and it is devised as a complement for researchers whose education is focused on scientific issues and not on technological respects. In this document we attempt to discuss the fundamentals of High Performance Computing (HPC) [7] in a way which is easy to understand without much previous background. We sketch the way standard computers and supercomputers work, as well as discuss distributed computing and discuss essential aspects to take into account when running scientific calculations in computers.Comment: 33 page
    corecore