Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “parallel codes”

Search indexed NASA NTRS and DOE OSTI research on propulsion, heat transfer, battery materials and energy systems. Follow report and document links to the original sources.

Quote a phrase for an exact phrase match. Source license links do not imply unrestricted reuse.

At least 1,063 records · Page 59

Development of a Grid-Independent Geos-Chem Chemical Transport Model (v9-02) as an Atmospheric Chemistry Module for Earth System Models

The GEOS-Chem global chemical transport model (CTM), used by a large atmospheric chemistry research community, has been re-engineered to also serve as an atmospheric chemistry module for Earth system models (ESMs). This was done using an Earth System Modeling Framework (ESMF) interface that operates independently of the GEOSChem scientific code, permitting the exact same GEOSChem code to be used as an ESM module or as a standalone CTM. In this manner, the continual stream of updates contributed by the CTM user community is automatically passed on to the ESM module, which remains state of science and referenced to the latest version of the standard GEOS-Chem CTM. A major step in this re-engineering was to make GEOS-Chem grid independent, i.e., capable of using any geophysical grid specified at run time. GEOS-Chem data sockets were also created for communication between modules and with external ESM code. The grid-independent, ESMF-compatible GEOS-Chem is now the standard version of the GEOS-Chem CTM. It has been implemented as an atmospheric chemistry module into the NASA GEOS- 5 ESM. The coupled GEOS-5-GEOS-Chem system was tested for scalability and performance with a tropospheric oxidant-aerosol simulation (120 coupled species, 66 transported tracers) using 48-240 cores and message-passing interface (MPI) distributed-memory parallelization. Numerical experiments demonstrate that the GEOS-Chem chemistry module scales efficiently for the number of cores tested, with no degradation as the number of cores increases. Although inclusion of atmospheric chemistry in ESMs is computationally expensive, the excellent scalability of the chemistry module means that the relative cost goes down with increasing number of cores in a massively parallel environment.

CTM↗

Support of Multidimensional Parallelism in the OpenMP Programming Model

OpenMP is the current standard for shared-memory programming. While providing ease of parallel programming, the OpenMP programming model also has limitations which often effect the scalability of applications. Examples for these limitations are work distribution and point-to-point synchronization among threads. We propose extensions to the OpenMP programming model which allow the user to easily distribute the work in multiple dimensions and synchronize the workflow among the threads. The proposed extensions include four new constructs and the associated runtime library. They do not require changes to the source code and can be implemented based on the existing OpenMP standard. We illustrate the concept in a prototype translator and test with benchmark codes and a cloud modeling code.

Jin, Hao-Qiang↗

Simulation Study of Magnetic Fields generated by the Electromagnetic Filamentation Instability driven by Pair Loading

Using a 3-D relativistic particle-in-cell (RPIC) code, we have investigated particle acceleration associated with a relativistic electron-positron (cold) jet propagating into ambient electron-positron and electron-ion plasmas without initial magnetic fields in order to investigate the nonlinear stage of the Weibel instability. We have also performed simulations with broad Lorentz factor distribution of jet electrons and positrons, which are assumed to be created by the photon annihilation. The growth time and nonlinear saturation levels depend on the initial jet parallel velocity distributions and ambient plasma. Simulations show that the Weibel instability created in the collisionless shocks accelerates jet and ambient particles both perpendicular and parallel to the jet propagation direction. The nonlinear fluctuation amplitude of densities, currents, electric, and magnetic fields in the electron-ion ambient plasma are larger than those in the electron-positron ambient plasma. We have shown that plasma instabilities driven by these streaming electron-positron pairs are responsible for the excitation of near-equipartition, turbulent magnetic fields. These fields maintain a strong saturated level on timescales much longer than the electron skin depth at least for the duration of the simulations. Our results reveal the importance of the electromagnetic filamentation instability in ensuring an effective coupling between electron-positron pairs and ions, and may help explain the origin of large upstream fields in GRB shock.

Nishikawa, K.-I.↗

Accelerated Adaptive MGS Phase Retrieval

The Modified Gerchberg-Saxton (MGS) algorithm is an image-based wavefront-sensing method that can turn any science instrument focal plane into a wavefront sensor. MGS characterizes optical systems by estimating the wavefront errors in the exit pupil using only intensity images of a star or other point source of light. This innovative implementation of MGS significantly accelerates the MGS phase retrieval algorithm by using stream-processing hardware on conventional graphics cards. Stream processing is a relatively new, yet powerful, paradigm to allow parallel processing of certain applications that apply single instructions to multiple data (SIMD). These stream processors are designed specifically to support large-scale parallel computing on a single graphics chip. Computationally intensive algorithms, such as the Fast Fourier Transform (FFT), are particularly well suited for this computing environment. This high-speed version of MGS exploits commercially available hardware to accomplish the same objective in a fraction of the original time. The exploit involves performing matrix calculations in nVidia graphic cards. The graphical processor unit (GPU) is hardware that is specialized for computationally intensive, highly parallel computation. From the software perspective, a parallel programming model is used, called CUDA, to transparently scale multicore parallelism in hardware. This technology gives computationally intensive applications access to the processing power of the nVidia GPUs through a C/C++ programming interface. The AAMGS (Accelerated Adaptive MGS) software takes advantage of these advanced technologies, to accelerate the optical phase error characterization. With a single PC that contains four nVidia GTX-280 graphic cards, the new implementation can process four images simultaneously to produce a JWST (James Webb Space Telescope) wavefront measurement 60 times faster than the previous code.

Lam, Raymond K.↗

Test Driven Development of Scientific Models

Test-Driven Development (TDD) is a software development process that promises many advantages for developer productivity and has become widely accepted among professional software engineers. As the name suggests, TDD practitioners alternate between writing short automated tests and producing code that passes those tests. Although this overly simplified description will undoubtedly sound prohibitively burdensome to many uninitiated developers, the advent of powerful unit-testing frameworks greatly reduces the effort required to produce and routinely execute suites of tests. By testimony, many developers find TDD to be addicting after only a few days of exposure, and find it unthinkable to return to previous practices. Of course, scientific/technical software differs from other software categories in a number of important respects, but I nonetheless believe that TDD is quite applicable to the development of such software and has the potential to significantly improve programmer productivity and code quality within the scientific community. After a detailed introduction to TDD, I will present the experience within the Software Systems Support Office (SSSO) in applying the technique to various scientific applications. This discussion will emphasize the various direct and indirect benefits as well as some of the difficulties and limitations of the methodology. I will conclude with a brief description of pFUnit, a unit testing framework I co-developed to support test-driven development of parallel Fortran applications.

Clune, Thomas L.↗

Methodology and Method and Apparatus for Signaling with Capacity Optimized Constellations

Design Methodology and Method and Apparatus for Signaling with Capacity Optimized Constellation Abstract Communication systems are described that use geometrically PSK shaped constellations that have increased capacity compared to conventional PSK constellations operating within a similar SNR band. The geometrically shaped PSK constellation is optimized based upon parallel decoding capacity. In many embodiments, a capacity optimized geometrically shaped constellation can be used to replace a conventional constellation as part of a firmware upgrade to transmitters and receivers within a communication system. In a number of embodiments, the geometrically shaped constellation is optimized for an Additive White Gaussian Noise channel or a fading channel. In numerous embodiments, the communication uses adaptive rate encoding and the location of points within the geometrically shaped constellation changes as the code rate changes.

Barsoum, Maged F.↗

Controlled flexibility in technical editing - The levels-of-edit concept at JPL

The levels-of-edit concept, which can be used to specify the amount of editorial effort involved in the preparation of a manuscript for publication, is discussed. Nine types of editing are identified and described. These include coordination edit (preparing estimates, gathering cost data, monitoring production processes), policy edit, integrity edit (making sure that parts of a publication match in a physical or numerical sense), screening edit (ensuring that the quality of camera-ready copy is sufficient for external publication), copy clarification edit, format edit, mechanical style edit, language edit, and substantive edit (reviewing the manuscript for content coherence, emphasis, subordination and parallelism). These functions are grouped into five levels of edit. An edit-level number is assigned to each manuscript, providing a quantitative and qualitative indicator of the editing to be done which is clearly understood by authors, managers, and editors alike. In addition, clear boundaries are drawn between normal and extraordinary editing tasks. Individual organizations will group various edits in different ways to reflect their needs and priorities; the essential element of the system is unambiguous definition and coding of the types and amount of work to be done.

Buehler, M. F.↗

Software simulator for multiple computer simulation system

A description is given of the structure and use of a computer program that simulates the operation of a parallel processor simulation system. The program is part of an investigation to determine algorithms that are suitable for simulating continous systems on a parallel processor configuration. The simulator is designed to accurately simulate the problem-solving phase of a simulation study. Care has been taken to ensure the integrity and correctness of data exchanges and to correctly sequence periods of computation and periods of data exchange. It is pointed out that the functions performed during a problem-setup phase or a reset phase are not simulated. In particular, there is no attempt to simulate the downloading process that loads object code into the local, transfer, and mapping memories of processing elements or the memories of the run control processor and the system control processor. The main program of the simulator carries out some problem-setup functions of the system control processor in that it requests the user to enter values for simulation system parameters and problem parameters. The method by which these values are transferred to the other processors, however, is not simulated.

Ogrady, E. P.↗

NASA Tech Briefs, February 2008

Topics discussed include: Optical Measurement of Mass Flow of a Two-Phase Fluid; Selectable-Tip Corrosion-Testing Electrochemical Cell; Piezoelectric Bolt Breakers and Bolt Fatigue Testers; Improved Measurement of B(sub 22) of Macromolecules in a Flow Cell; Measurements by a Vector Network Analyzer at 325 to 508 GHz; Using Light to Treat Mucositis and Help Wounds Heal; Increasing Discharge Capacities of Li-(CF)(sub n) Cells; Dot-in-Well Quantum-Dot Infrared Photodetectors; Integrated Microbatteries for Implantable Medical Devices; Oxidation Behavior of Carbon Fiber-Reinforced Composites; GIDEP Batching Tool; Generic Spacecraft Model for Real-Time Simulation; Parallel-Processing Software for Creating Mosaic Images; Software for Verifying Image-Correlation Tie Points; Flexcam Image Capture Viewing and Spot Tracking; Low-Pt-Content Anode Catalyst for Direct Methanol Fuel Cells; Graphite/Cyanate Ester Face Sheets for Adaptive Optics; Atomized BaF2-CaF7 for Better-Flowing Plasma-Spray Feedstock; Nanophase Nickel-Zirconium Alloys for Fuel Cells; Vacuum Packaging of MEMS With Multiple Internal Seal Rings; Compact Two-Dimensional Spectrometer Optics; and Fault-Tolerant Coding for State Machines.

Source record↗

Visualizing Multi-process CPU Utilization using CUSP

The CPU Utilization Statistics Plotter (CUSP) tool automates the interpretation of detailed CPU Utilization trace data and statistics. It puts you on the cusp of understanding how CPU resources are split among the many parallel components of a software system.CUSP combines time-sampled CPU utilization numbers and Event Log annotations to generate human-readable plots and tables. It automatically splits up large CPU usage log files around interesting events, determines and highlights just the tasks of primary relevance by evaluating their changing contribution to each plot's total CPU usage, automatically eliminates irrelevant tasks, provides context by labeling plots with names and durations of all active commands, and uses consistent color-coding to enable quick visual comparison across multiple plots.CUSP has been used to process CPU Utilization trace logs on the Mars Science Laboratory and the Mars 2020 Rover missions during flight software development and Flight Operations on the Martian surface since December 2013.

Maimone, Mark W↗

The buckling response of symmetrically laminated composite plates having a trapezoidal planform area

The focus of this work is the buckling response of symmetrically laminated composite plates having a planform area in the shape of an isosceles trapezoid. The loading is assumed to be inplane and applied perpendicular to the parallel ends of the plate. The tapered edges of the plate are assumed to have simply supported boundary conditions, while the parallel ends are assumed to have either simply supported or clamped boundary conditions. A semi-analytic closed-form solution based on energy principles and the Trefftz stability criterion is derived and solutions are obtained using the Rayleigh-Ritz method. Intrinsic in this solution is a simplified prebuckling analysis which approximates the inplane force resultant distributions by the forms Nx=P/W(x) and Ny=Nxy=0, where P is the applied load and W(x) is the plate width which, for the trapezoidal planform, varies linearly with the lengthwise coordinate x. The out-of-plane displacement is approximated by a double trigonometric series. This analysis is posed in terms of four nondimensional parameters representing orthotropic and anisotropic material properties, and two nondimensional parameters representing geometric properties. For comparison purposes, a number of specific plate geometry, ply orientation, and stacking sequence combinations are investigated using the general purpose finite element code ABAQUS. Comparison of buckling coefficients calculated using the semi-analytical model and the finite element model show agreement within 5 percent, in general, and within 15 percent for the worst cases. In order to verify both the finite element and semi-analytical analyses, buckling loads are measured for graphite/epoxy plates having a wide range of plate geometries and stacking sequences. Test fixtures, instrumentation system, and experimental technique are described. Experimental results for the buckling load, the buckled mode shape, and the prebuckling plate stiffness are presented and show good agreement with the analytical results regarding the buckling load and the prebuckling plate stiffness. However, the experimental results show that for some cases the analysis underpredicts the number of halfwaves in the buckled mode shape. In the context of the definitions of taper ratio and aspect ratio used in this study, it is concluded that the buckling load always increases as taper ratio increases for a given aspect ratio for plates having simply supported boundary conditions on the parallel ends. There are combinations of plate geometry and ply stackling sequences, however, that reverse this trend for plates having clamped boundary conditions on the parallel ends such that an increase in the taper ratio causes a decrease in the buckling load. The clamped boundary conditions on the parallel ends of the plate are shown to increase the buckling load compared to simply supported boundary conditions. Also, anisotropy (the D16 and D26 terms) is shown to decrease the buckling load and skew the buckled mode shape for both the simply supported and clamped boundary conditions.

Radloff, H. D., II↗

Nonlinear evolution of the sheet pinch

An incompressible, dissipative numerical code of the spectral type is used to follow the nonlinear evolution of a magnetohydrodynamic sheet pinch in two spatial dimensions. The evolution involves considerable turbulent activity in the electric current field, with the excited spatial scales ranging from the size of the containing volume down to the dissipation lengths of the magnetic and velocity fields. Strong current filamentation near magnetic X-points is observed, as is 'jetting', or expulsion of magnetofluid from the vicinity of the X-point parallel to the current sheet.

Matthaeus, W. H.↗

A computational code for two-dimensional unsteady magnetohydrodynamics by the method of characteristics

A computational code for solving two-dimensional, time-dependent MHD equations by the method of characteristics is presented. Its capabilities are demonstrated by solving two very different problems for which analytical solutions exist: linearized, standing MHD wave motions in a magnetized cylindrical plasma, and nonlinear self-similar expansion of a magnetized plasma ball. The nonlinear development of standing MHD wave solutions in a cylindrical plasma is also studied. The method can be naturally embedded in the computational architecture of massively parallel processors.

Lou, Y. Q.↗

Methodology and Method and Apparatus for Signaling With Capacity Optimized Constellations

Communication systems are described that use geometrically shaped constellations that have increased capacity compared to conventional constellations operating within a similar SNR band. In several embodiments, the geometrically shaped is optimized based upon a capacity measure such as parallel decoding capacity or joint capacity. In many embodiments, a capacity optimized geometrically shaped constellation can be used to replace a conventional constellation as part of a firmware upgrade to transmitters and receivers within a communication system. In a number of embodiments, the geometrically shaped constellation is optimized for an Additive White Gaussian Noise channel or a fading channel. In numerous embodiments, the communication uses adaptive rate encoding and the location of points within the geometrically shaped constellation changes as the code rate changes.

Barsoum, Maged F.↗

An analytical and experimental study of sound propagation and attenuation in variable-area ducts

The performance of sound suppression techniques in ducts that produce refraction effects due to axial velocity gradients was evaluated. A computer code based on the method of multiple scales was used to calculate the influence of axial variations due to slow changes in the cross-sectional area as well as transverse gradients due to the wall boundary layers. An attempt was made to verify the analytical model through direct comparison of experimental and computational results and the analytical determination of the influence of axial gradients on optimum liner properties. However, the analytical studies were unable to examine the influence of non-parallel ducts on the optimum linear conditions. For liner properties not close to optimum, the analytical predictions and the experimental measurements were compared. The circumferential variations of pressure amplitudes and phases at several axial positions were examined in straight and variable-area ducts, hard-wall and lined sections with and without a mean flow. Reasonable agreement between the theoretical and experimental results was obtained.

Nayfeh, A. H.↗

A VLSI decomposition of the deBruijn graph

A new Viterbi decoder for convolutional codes with constraint lengths up to 15, called the Big Viterbi Decoder, is under development for the Deep Space Network. It will be demonstrated by decoding data from the Galileo spacecraft, which has a rate 1/4, constraint-length 15 convolutional encoder on board. Here, the mathematical theory underlying the design of the very-large-scale-integrated (VLSI) chips that are being used to build this decoder is explained. The deBruijn graph B sub n describes the topology of a fully parallel, rate 1/v, constraint length n+2 Viterbi decoder, and it is shown that B sub n can be built by appropriately wiring together (i.e., connecting together with extra edges) many isomorphic copies of a fixed graph called a B sub n building block. The efficiency of such a building block is defined as the fraction of the edges in B sub n that are present in the copies of the building block. It is shown, among other things, that for any alpha less than 1, there exists a graph G which is a B sub n building block of efficiency greater than alpha for all sufficiently large n. These results are illustrated by describing a special hierarchical family of deBruijn building blocks, which has led to the design of the gate-array chips being used in the Big Viterbi Decoder.

Collins, O.↗

Particle simulation of ion heating in the ring current

Heating of heavy ions has been observed in the equatorial magnetosphere in GEOS 1 and 2 and ATS 6 data due to ion cyclotron waves generated by anisotropic hot ring current ions. A one-dimensional hybrid-Darwin code has been developed to study ion heating in the ring current. Here, a strong instability and heating of thermal ions is investigated in a plasma with a los cone distribution of hot ions. The linear growth rate calculation and particle simulations are conducted for cases with different loss cones and relative ion densities. The linear instability of the waves, the quasi-linear heating of cold ions and dependence on the thermal H(+)/He(+) density ratio are analyzed, as well as nonlinear parallel heating of thermal ions. Effects of thermal oxygen and hot oxygen are also studied.

Qian, S.↗

Cartesian Off-Body Grid Adaption for Viscous Time- Accurate Flow Simulation

An improved solution adaption capability has been implemented in the OVERFLOW overset grid CFD code. Building on the Cartesian off-body approach inherent in OVERFLOW and the original adaptive refinement method developed by Meakin, the new scheme provides for automated creation of multiple levels of finer Cartesian grids. Refinement can be based on the undivided second-difference of the flow solution variables, or on a specific flow quantity such as vorticity. Coupled with load-balancing and an inmemory solution interpolation procedure, the adaption process provides very good performance for time-accurate simulations on parallel compute platforms. A method of using refined, thin body-fitted grids combined with adaption in the off-body grids is presented, which maximizes the part of the domain subject to adaption. Two- and three-dimensional examples are used to illustrate the effectiveness and performance of the adaption scheme.

Buning, Pieter G.↗