Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “Compiler techniques”

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.

405 records · Page 23

Astronaut Preflight Cardiovascular Variables Associated with Vascular Compliance are Highly Correlated with Post-Flight Eye Outcome Measures in the Visual Impairment Intracranial Pressure (VIIP) Syndrome Following Long Duration Spaceflight

The detection of the first VIIP case occurred in 2005, and adequate eye outcome measures were available for 31 (67.4%) of the 46 long duration US crewmembers who had flown on the ISS since its first crewed mission in 2000. Therefore, this analysis is limited to a subgroup (22 males and 9 females). A "cardiovascular profile" for each astronaut was compiled by examining twelve individual parameters; eleven of these were preflight variables: systolic blood pressure, pulse pressure, body mass index, percentage body fat, LDL, HDL, triglycerides, use of anti‐lipid medication, fasting serum glucose, and maximal oxygen uptake in ml/kg. Each of these variables was averaged across three preflight annual physical exams. Astronaut age prior to the long duration mission, and inflight salt intake was also included in the analysis. The group of cardiovascular variables for each crew member was compared with seven VIIP eye outcome variables collected during the immediate post‐flight period: anterior-posterior axial length of the globe measured by ultrasound and optical biometry; optic nerve sheath diameter, optic nerve diameter, and optic nerve to sheath ratio‐ each measured by ultrasound and magnetic resonance imaging (MRI), intraocular pressure (IOP), change in manifest refraction, mean retinal nerve fiber layer (RNFL) on optical coherence tomography (OCT), and RNFL of the inferior and superior retinal quadrants. Since most of the VIIP eye outcome measures were added sequentially beginning in 2005, as knowledge of the syndrome improved, data were unavailable for 22.0% of the outcome measurements. To address the missing data, we employed multivariate multiple imputation techniques with predictive mean matching methods to accumulate 200 separate imputed datasets for analysis. We were able to impute data for the 22.0% of missing VIIP eye outcomes. We then applied Rubin's rules for collapsing the statistical results across our 200 multiply imputed data sets to assess the canonical correlation between the eye outcomes and the twelve astronaut cardiovascular variables available for all 31 subjects. Results: A highly significant canonical correlation was observed among the canonical solutions (p<.00001), with an average best canonical correlation of.97. The results suggest a strong association between astronauts' measures of cardiovascular health and the seven eye outcomes of the VIIP syndrome used in this analysis. Furthermore, the "joint test" revealed a significant difference in cardiovascular profile between male and female astronauts (Prob > F = 0.00001). Overall, female astronauts demonstrated a significantly healthier cardiovascular status. Individually, the female astronauts had significantly healthier profiles on seven of twelve cardiovascular variables than the men (p values ranging from <0.0001 to <0.05). Male astronauts did not demonstrate significantly healthier values on any of the twelve cardiovascular variables measured

Otto, Christian↗

Typical and Unusual Properties of Magnetic Clouds during the WIND Era

A list of 33 magnetic clouds as identified in WIND magnetic field and plasma data has been compiled. The intervals for these events are provided as part of NASA/GSFC, WIND-MFI's Website under the URL http://lepmfi.qsfc.nasa.gov/mfi/mag_cloud publ.html#table The period covered in this study is from early 1995 to November 1998 which primarily occurs in the quiet part of the solar cycle. A force free, cylindrically symmetric, magnetic field model has been applied to the field data in 1-hour averaged form for all of these events (except one small event where 10 min avg's were used) and the resulting fit-parameters examined. Each event was provided a semi-quantitatively determined quality factor (excellent, good or poor). A set of 28 good or better cases, spanning a surprisingly large range of values for its various properties, was used for further analysis. These properties are, for example, durations, attitudes, sizes, asymmetries, axial field strengths, speeds, and relative impact parameters. They will be displayed and analyzed, along with some related derived quantities, with emphasis on typical vs unusual properties and on the magnetic fields magnetic clouds' relationships to the Sun and to upstream interplanetary shocks, where possible. For example, it is remarkable how narrowly distributed the speeds of these clouds are, and the overall average speed (390 techniques km/s) is less than that normally quoted for the average solar wind speed (420 km/s) despite the fact that many of these clouds are d"drivers" of interplanetary shocks. On average, a cloud appears to be a little less symmetric when the spacecraft is able to pass close to the cloud's axis as compared to a farther out passage. The average longitude and latitude (in GSE) of the axes of the clouds are 85 degrees and 8 degrees, respectively, with standard deviations near 40 degrees. Also, the half=yearly averaged axial magnetic flux has approximately tripled. almost monotonically, from about 6 to 17 X 10(exp 29) Mx over the first 3.5 years of consideration, but with a large uncertainty on each of the half-year estimates, because of small sampling. If true,this finding implies an approximate tripling of the events' solar fluxes over this period as it goes into solar maximum.

Lepping, R. P.↗

Control of unsteady separated flow associated with the dynamic stall of airfoils

An effort to understand and control the unsteady separated flow associated with the dynamic stall of airfoils was funded for three years through the NASA cooperative agreement program. As part of this effort a substantial data base was compiled detailing the effects various parameters have on the development of the dynamic stall flow field. Parameters studied include Mach number, pitch rate, and pitch history, as well as Reynolds number (through two different model chord lengths) and the condition of the boundary layer at the leading edge of the airfoil (through application of surface roughness). It was found for free stream Mach numbers as low as 0.4 that a region of supersonic flow forms on the leading edge of the suction surface of the airfoil at moderate angles of attack. The shocks which form in this supersonic region induce boundary-layer separation and advance the dynamic stall process. Under such conditions a supercritical airfoil profile is called for to produce a flow field having a weaker leading-edge pressure gradient and no leading-edge shocks. An airfoil having an adaptive-geometry, or dynamically deformable leading edge (DDLE), is under development as a unique active flow-control device. The DDLE, formed of carbon-fiber composite and fiberglass, can be flexed between a NACA 0012 profile and a supercritical profile in a controllable fashion while the airfoil is executing an angle-of-attack pitch-up maneuver. The dynamic stall data were recorded using point diffraction interferometry (PDI), a noninvasive measurement technique. A new high-speed cinematography system was developed for recording interferometric images. The system is capable of phase-locking with the pitching airfoil motion for real-time documentation of the development of the dynamic stall flow field. Computer-aided image analysis algorithms were developed for fast and accurate reduction of the images, improving interpretation of the results.

Wilder, M. C.↗

Automating Microbial Directed Evolution For Bioengineering Applications

From a micro-biology perspective, directed evolution is a technique that uses controlled environmental pressures to select for a desired phenotype. Directed evolution has the distinct advantage over rational design of not needing extensive knowledge of the genome or pathways associated with a microorganism to induce phenotypes. However, there are currently limitations to the applicability of this technique including being time-consuming, error-prone, and dependent on existing assays that may lack selectivity for the given phenotype. The AADEC (Autonomous Adaptive Directed Evolution Chamber) system is a proof-of-concept instrument to automate and improve the technique such that directed evolution can be used more effectively as a general bioengineering tool. A series of tests using the automated system and comparable by-hand survival assay measurements have been carried out using UV-C radiation and Escherichia coli cultures in order to demonstrate the advantages of the AADEC versus traditional implementations of directed evolution such as random mutagenesis. AADEC uses UV-C exposure as both a source of environmental stress and mutagenesis, so in order to evaluate the UV-C tolerance obtained from the cultures, a manual UV-C exposure survival assay was developed alongside the device to compare the survival fractions at a fixed dosage. This survival assay involves exposing E. coli to UV-C radiation using a custom-designed exposure hood to control the flux and dose. Surviving cells are counted then transferred to the next iteration and so on for several iterations to calculate the survival fractions for each exposure iteration.This survival assay primarily serves as a baseline for the AADEC device, allowing quantification of the differences between the AADEC system over the manual approach. The primary data of comparison is survival fractions; this is obtained by optical density and plate counts in the manual assay and by optical density growth curve fits pre- and post-exposure in the automated case. This data can then be compiled to calculate trends over the iterations to characterize increasing UV-C resistance of the E.coli strains. The observed trends are statistically indistinguishable through several iterations from both sources.

Bioengineering↗

Program Instrumentation and Trace Analysis

Several attempts have been made recently to apply techniques such as model checking and theorem proving to the analysis of programs. This shall be seen as a current trend to analyze real software systems instead of just their designs. This includes our own effort to develop a model checker for Java, the Java PathFinder 1, one of the very first of its kind in 1998. However, model checking cannot handle very large programs without some kind of abstraction of the program. This paper describes a complementary scalable technique to handle such large programs. Our interest is turned on the observation part of the equation: How much information can be extracted about a program from observing a single execution trace? It is our intention to develop a technology that can be applied automatically and to large full-size applications, with minimal modification to the code. We present a tool, Java PathExplorer (JPaX), for exploring execution traces of Java programs. The tool prioritizes scalability for completeness, and is directed towards detecting errors in programs, not to prove correctness. One core element in JPaX is an instrumentation package that allows to instrument Java byte code files to log various events when executed. The instrumentation is driven by a user provided script that specifies what information to log. Examples of instructions that such a script can contain are: 'report name and arguments of all called methods defined in class C, together with a timestamp'; 'report all updates to all variables'; and 'report all acquisitions and releases of locks'. In more complex instructions one can specify that certain expressions should be evaluated and even that certain code should be executed under various conditions. The instrumentation package can hence be seen as implementing Aspect Oriented Programming for Java in the sense that one can add functionality to a Java program without explicitly changing the code of the original program, but one rather writes an aspect and compiles it into the original program using the instrumentation. Another core element of JPaX is an observation package that supports the analysis of the generated event stream. Two kinds of analysis are currently supported. In temporal analysis the execution trace is evaluated against formulae written in temporal logic. We have implemented a temporal logic evaluator on finite traces using the Maude rewriting system from SRI International, USA. Temporal logic is defined in Maude by giving its syntax as a signature and its semantics as rewrite equations. The resulting semantics is extremely efficient and can handle event streams of hundreds of millions events in few minutes. Furthermore, the implementation is very succinct. The second form of even stream analysis supported is error pattern analysis where an execution trace is analyzed using various error detection algorithms that can identify error-prone programming practices that may potentially lead to errors in some different executions. Two such algorithms focusing on concurrency errors have been implemented in JPaX, one for deadlocks and the other for data races. It is important to note, that a deadlock or data race potential does not need to occur in order for its potential to be detected with these algorithms. This is what makes them very scalable in practice. The data race algorithm implemented is the Eraser algorithm from Compaq, however adopted to Java. The tool is currently being applied to a code base for controlling a spacecraft by the developers of that software in order to evaluate its applicability.

Havelund, Klaus↗

DLES Unreal Simulation Tool (DUST)

NASA’s future Artemis missions to the Moon seek to explore areas around the Lunar South Pole. Though humans have previously set foot on the lunar surface, the proposed region provides unique and challenging environments that require insight and investigation prior to arrival. Several teams throughout the agency are performing this site and mission planning, design, and analysis to support areas like the Human Landing System (HLS), surface mobility, habitation elements, and scientific exploration. The NASA Exploration Systems Simulation (NExSyS) team at Johnson Space Center is developing a graphical environment of the Lunar South Pole region. Lunar terrain information collected from the Lunar Reconnaissance Orbiter (LRO) is compiled and made available through Johnson Space Center’s Digital Lunar Exploration Sites (DLES) data sets. The DLES data is used to build this graphic environment. The process of ingesting and accurately modeling this information in a meaningful way for analysis creates its own challenges such as generating a performant model from the source data and the application of curvature. Additionally, the area around the Lunar South Pole experiences different lighting conditions than those observed from the Apollo missions. The need to use the lunar environmental data products provided by DLES combined with the capability to calculate date specific ephemerides in real-time has given rise to the development of the DLES Unreal Simulation Tool (DUST). DUST incorporates augmented terrain from the DLES product into a desktop application that allows exploration of the Lunar South Pole region and its complex lighting conditions. DUST leverages advanced capabilities in the recently released Unreal Engine 5 renderer by Epic Games such as double precision for positioning of planetary bodies and surface elements, multiple infinite light sources to represent the Sun and eventually Earthshine, high resolution shadow maps for dynamic shadow accuracy, real-time software ray-tracing for multi-surface bounce lighting to render sunlight reflected off surface elements and terrain features, and performance optimized level of detail shifting as the eyepoint changes in a scene. This paper details the DUST application, the technologies of the engine platform that enable scientific and engineering analysis, the unique techniques and processes developed to consume the DLES data sets, and how the tool is being used to support the Artemis program.

Lunar Visualization↗

Spectral Analysis of Integrated Pressures on Patches with Unsteady Pressure-Sensitive Paint Measurements

The technique of Pressure-Sensitive Paint (PSP) is commonly used in the aerospace industry to measure surface pressures on the model of launch vehicles and airplanes in the wind tunnel test. Recent research has demonstrated that Unsteady Pressure-Sensitive Paint (uPSP) can be an essential tool for the assessment of the unsteady, aerodynamic phenomena. The work described in this paper is a part of NASA’s development of a new state-of-the-art uPSP capability in production wind tunnels. This paper describes the spectral analysis of integrated pressures on patches of the scale model of the Space Launch System (SLS) Block 1 cargo vehicle with the uPSP measurements, which were collected in the Ascent Transient Aerodynamics Test (ATAT) with the Unitary Plan Wind Tunnel 11-by-11-foot Transonic Wind Tunnel in September 2019 at NASA Ames Research Center. The patches are defined with x station values, indicating the position along length of the SLS vehicle, and azimuth angles of the scale model. For each patch, the polygons are determined from the surface cells of the grid of the model, clipped with the edges of the patch, and each of the polygons is divided into triangles. The integrated pressure of the patch is determined as the ratio of the sum of the forces on the triangles over the sum of the areas of the triangles. For each run of the test, the Cross Power Spectral Density (CPSD) and magnitude squared coherence are computed from the time series of the integrated pressures on the patches. The pressure integration is coded in C++ and the spectral analysis is coded in MATLAB. The results were generated with the execution of the compiled C++ and MATLAB codes in parallel on the NASA Pleiades supercomputer. The results of pressure integration and spectral analysis are presented in this paper, and the data consistency of the test is also demonstrated. Funding for this research was provided by the NASA Aerosciences Evaluation and Test Capabilities Project.

Pressure-Sensitive Paint↗

Convergence Acceleration and Documentation of CFD Codes for Turbomachinery Applications

The development and analysis of turbomachinery components for industrial and aerospace applications has been greatly enhanced in recent years through the advent of computational fluid dynamics (CFD) codes and techniques. Although the use of this technology has greatly reduced the time required to perform analysis and design, there still remains much room for improvement in the process. In particular, there is a steep learning curve associated with most turbomachinery CFD codes, and the computation times need to be reduced in order to facilitate their integration into standard work processes. Two turbomachinery codes have recently been developed by Dr. Daniel Dorney (MSFC) and Dr. Douglas Sondak (Boston University). These codes are entitled Aardvark (for 2-D and quasi 3-D simulations) and Phantom (for 3-D simulations). The codes utilize the General Equation Set (GES), structured grid methodology, and overset O- and H-grids. The codes have been used with success by Drs. Dorney and Sondak, as well as others within the turbomachinery community, to analyze engine components and other geometries. One of the primary objectives of this study was to establish a set of parametric input values which will enhance convergence rates for steady state simulations, as well as reduce the runtime required for unsteady cases. The goal is to reduce the turnaround time for CFD simulations, thus permitting more design parametrics to be run within a given time period. In addition, other code enhancements to reduce runtimes were investigated and implemented. The other primary goal of the study was to develop enhanced users manuals for Aardvark and Phantom. These manuals are intended to answer most questions for new users, as well as provide valuable detailed information for the experienced user. The existence of detailed user s manuals will enable new users to become proficient with the codes, as well as reducing the dependency of new users on the code authors. In order to achieve the objectives listed, the following tasks were accomplished: 1) Parametric Study Of Preconditioning Parameters And Other Code Inputs; 2) Code Modifications To Reduce Runtimes; 3) Investigation Of Compiler Options To Reduce Code Runtime; and 4) Development/Enhancement of Users Manuals for Aardvark and Phantom

Marquart, Jed E.↗

Cooperative Data Sharing: Simple Support for Clusters of SMP Nodes

Libraries like PVM and MPI send typed messages to allow for heterogeneous cluster computing. Lower-level libraries, such as GAM, provide more efficient access to communication by removing the need to copy messages between the interface and user space in some cases. still lower-level interfaces, such as UNET, get right down to the hardware level to provide maximum performance. However, these are all still interfaces for passing messages from one process to another, and have limited utility in a shared-memory environment, due primarily to the fact that message passing is just another term for copying. This drawback is made more pertinent by today's hybrid architectures (e.g. clusters of SMPs), where it is difficult to know beforehand whether two communicating processes will share memory. As a result, even portable language tools (like HPF compilers) must either map all interprocess communication, into message passing with the accompanying performance degradation in shared memory environments, or they must check each communication at run-time and implement the shared-memory case separately for efficiency. Cooperative Data Sharing (CDS) is a single user-level API which abstracts all communication between processes into the sharing and access coordination of memory regions, in a model which might be described as "distributed shared messages" or "large-grain distributed shared memory". As a result, the user programs to a simple latency-tolerant abstract communication specification which can be mapped efficiently to either a shared-memory or message-passing based run-time system, depending upon the available architecture. Unlike some distributed shared memory interfaces, the user still has complete control over the assignment of data to processors, the forwarding of data to its next likely destination, and the queuing of data until it is needed, so even the relatively high latency present in clusters can be accomodated. CDS does not require special use of an MMU, which can add overhead to some DSM systems, and does not require an SPMD programming model. unlike some message-passing interfaces, CDS allows the user to implement efficient demand-driven applications where processes must "fight" over data, and does not perform copying if processes share memory and do not attempt concurrent writes. CDS also supports heterogeneous computing, dynamic process creation, handlers, and a very simple thread-arbitration mechanism. Additional support for array subsections is currently being considered. The CDS1 API, which forms the kernel of CDS, is built primarily upon only 2 communication primitives, one process initiation primitive, and some data translation (and marshalling) routines, memory allocation routines, and priority control routines. The entire current collection of 28 routines provides enough functionality to implement most (or all) of MPI 1 and 2, which has a much larger interface consisting of hundreds of routines. still, the API is small enough to consider integrating into standard os interfaces for handling inter-process communication in a network-independent way. This approach would also help to solve many of the problems plaguing other higher-level standards such as MPI and PVM which must, in some cases, "play OS" to adequately address progress and process control issues. The CDS2 API, a higher level of interface roughly equivalent in functionality to MPI and to be built entirely upon CDS1, is still being designed. It is intended to add support for the equivalent of communicators, reduction and other collective operations, process topologies, additional support for process creation, and some automatic memory management. CDS2 will not exactly match MPI, because the copy-free semantics of communication from CDS1 will be supported. CDS2 application programs will be free to carefully also use CDS1. CDS1 has been implemented on networks of workstations running unmodified Unix-based operating systems, using UDP/IP and vendor-supplied high- performance locks. Although its inter-node performance is currently unimpressive due to rudimentary implementation technique, it even now outperforms highly-optimized MPI implementation on intra-node communication due to its support for non-copy communication. The similarity of the CDS1 architecture to that of other projects such as UNET and TRAP suggests that the inter-node performance can be increased significantly to surpass MPI or PVM, and it may be possible to migrate some of its functionality to communication controllers.

DiNucci, David C.↗