Automatic Generation of Guard-Stable Floating-Point Code
Explore the source record for details and available documents.
SEARCH · Search NASA
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.
Explore the source record for details and available documents.
Two analytical techniques applicable to large deflection dynamic response calculations for pressure loaded composite sandwich panels are demonstrated. One technique utilizes finite element modeling with a single equivalent layer representing the face sheets and core. The other technique utilizes the modal analysis computer code DEPROP which was recently modified to include transverse shear deformation in a core layer. The example problem consists of a simply supported rectangular sandwich panel. Included are comparisons of linear and nonlinear static response calculations, in addition to dynamic response calculations.
A research effort was undertaken to develop personal computer based software for vibrational analysis. The software was developed to analytically determine the natural frequencies and mode shapes for the uncoupled lateral vibrations of the blade and counterweight assemblies used in a single bladed wind turbine. The uncoupled vibration analysis was performed in both the flapwise and chordwise directions for static rotor conditions. The effects of rotation on the uncoupled flapwise vibration of the blade and counterweight assemblies were evaluated for various rotor speeds up to 90 rpm. The theory, used in the vibration analysis codes, is based on a lumped mass formulation for the blade and counterweight assemblies. The codes are general so that other designs can be readily analyzed. The input for the codes is generally interactive to facilitate usage. The output of the codes is both tabular and graphical. Listings of the codes are provided. Predicted natural frequencies of the first several modes show reasonable agreement with experimental results. The analysis codes were originally developed on a DEC PDP 11/34 minicomputer and then downloaded and modified to run on an ITT XTRA personal computer. Studies conducted to evaluate the efficiency of running the programs on a personal computer as compared with the minicomputer indicated that, with the proper combination of hardware and software options, the efficiency of using a personal computer exceeds that of a minicomputer.
Under certain conditions electrons can be reflected and effectively energized at quasi-perpendicular shocks. This process is most prominent close to the point where the upstream magnetic field is tangent to the curved shock. A theoretical explanation of the underlying physical mechanism has been proposed which assumes conservation of magnetic moment and a static, simplified shock profile are performed. Test particle calculations of the electron reflection process in order to examine the results of the theoretical analysis without imposing these restrictive conditions. A one-dimensional hybrid simulation code generates the characteristic field variations across the shock. Special emphasis is placed on the spatial and temporal length scales involved in the mirroring process. The simulation results agree generally well with the predictions from adiabatic theory. The effects of the cross-shock potential and unsteadiness are quantified, and the influence of field fluctuations on the reflection process is discussed.
In structural redesign, two structural states are involved; the baseline (known) State S1 with unacceptable performance, and the objective (unknown) State S2 with given performance specifications. The difference between the two states in performance and design variables may be as high as 100 percent or more depending on the scale of the structure. A Perturbation Approach to Redesign (PAR) is presented to relate any two structural states S1 and S2 that are modeled by the same finite element model and represented by different values of the design variables. General perturbation equations are derived expressing implicitly the natural frequencies, dynamic modes, static deflections, static stresses, Euler buckling loads, and buckling modes of the objective S2 in terms of its performance specifications, and S1 data and Finite Element Analysis (FEA) results. Large Admissible Perturbation (LEAP) algorithms are implemented in code RESTRUCT to define the objective S2 incrementally without trial and error by postprocessing FEA results of S1 with no additional FEAs. Systematic numerical applications in redesign of a 10 element 48 degree of freedom (dof) beam, a 104 element 192 dof offshore tower, a 64 element 216 dof plate, and a 144 element 896 dof cylindrical shell show the accuracy, efficiency, and potential of PAR to find an objective state that may differ 100 percent from the baseline design.
Wind tunnel tests of a National Aero-Space Plane (NASP) configuration were conducted in both test sections of the Langley Unitary Plan Wind Tunnel. The model used is a Langley designed blended body NASP configuration. Dynamic stability characteristics were measured on this configuration at Mach numbers of 2.0, 2.5, 3.5, and 4.5. In addition to tests of the baseline configuration, component buildup tests were conducted. The test results show that the baseline configuration generally has positive damping about all three axes with only isolated exceptions. In addition, there was generally good agreement between the in-pulse dynamic parameters and the corresponding static data which were measured during another series of tests in the Unitary Plan Wind Tunnel. Also included are comparisons of the experimental damping parameters with results from the engineering predictive code APAS (Aerodynamic Preliminary Analysis System). These comparisons show good agreement at low angles of attack; however, the comparisons are generally not as good at the higher angles of attack.
Software analysis tools and techniques often leverage structural code coverage information to reason about the dynamic behavior of software. Existing techniques instrument the code with the required structural obligations and then monitor the execution of the compiled code to report coverage. Instrumentation based approaches often incur considerable runtime overhead for complex structural coverage metrics such as Modified Condition/Decision (MC/DC). Code instrumentation, in general, has to be approached with great care to ensure it does not modify the behavior of the original code. Furthermore, instrumented code cannot be used in conjunction with other analyses that reason about the structure and semantics of the code under test. In this work, we introduce a non-intrusive preprocessing approach for computing structural coverage information. It uses a static partial evaluation of the decisions in the source code and a source-to-bytecode mapping to generate the information necessary to efficiently track structural coverage metrics during execution. Our technique is flexible; the results of the preprocessing can be used by a variety of coverage-driven software analysis tasks, including automated analyses that are not possible for instrumented code. Experimental results in the context of symbolic execution show the efficiency and flexibility of our nonintrusive approach for computing code coverage information
SCIPVIS, the computational model discussed by Dash et al. (1985), is assessed in predicting the complicated flow structure associated with shock-containing plumes. In addition, the analysis in this study examines this code's applicability as a basic part of a program for estimating broadband shock noise radiation. The results of this study show that excellent agreement exists between predicted and measured static pressure distributions for both underexpanded and overexpanded flow cases considered. Of the three turbulence closure models incorporated in the SCIPVIS code, the kW model of Spalding produces the most uniform agreement with measurement. The k-epsilon-2 model of Launder consistently overestimates plume spreading for supersonic jets with exit Mach numbers in the 1-2 range. Dash's (1983) k-epsilon-2-cc, compressibility-corrected version of Launder's model underestimates plume spreading. Good qualitative agreement was also obtained between the measured longitudinal turbulence intensity and that predicted by the code for the same trial case. Comparison of measured and predicted broadband shock noise spectrum peak values were found to be in excellent agreement. This utilized a variant of the Harper-Bourne and Fisher (1973) phase-array model: the effective shock spacing was reinterpreted as the value of the end of the plume potential core, determined herein by the SCIPVIS code.
A computational method is described that includes the effects of static aeroelastic wing deflections in steady transonic aerodynamic calculations. This method, known as the Transonic Aero-elastic Program System (TAPS), interacts a 3D transonic computer code with boundary layer and a linear finite element structural analysis codes to calculate wing pressures and deflections. The nonlinear nature of the transonic flow makes it necessary to couple the aerodynamic and structures codes in an iterative manner. TAPS has been arranged in a modular fashion so that different aerodynamic or structures programs may be used with a minimum of coding changes required. Results obtained using two different aerodynamic codes in TAPS are given, and those results are correlated with experimental data.
Monte Carlo transport methods are the most accurate schemes for solving problems with complex energy and spatial features, but they come with a high computational cost. Although hybrid methods have enabled the use of Monte Carlo transport for a large class of problems, they still require significant computing resources. Modern multicore CPUs with large numbers of compute cores and graphical processing units (GPUs) provide opportunities to optimize the memory and run-time costs of hybrid Monte Carlo methods. This paper documents the development and analysis of three Monte Carlo transport algorithms that support hybrid transport using the consistent adjoint-driven importance sampling (CADIS) and forward-weighted CADIS methods in the Shift Monte Carlo code: history-based transport using static and dynamic threading on multicore CPUs and event-based transport enabling weight window tracking on GPUs. The results are shown for two challenging hybrid problems on the Frontier supercomputer at the Oak Ridge Leadership Computing Facility. The results show that all three methods yield good performance and enable solutions of difficult fixed-source transport problems in less than 2 min on 20 nodes of Frontier. Dynamic threading was observed to give up to 20% better scaling behavior than static threading. Moreover, the AMD Instinct 250X GPU was found to give 9 to 11 times greater throughput per graphics compute die than the best CPU performance. In conclusion, additional opportunities for optimization of hybrid transport on GPUs are discussed.
Change impact analysis techniques estimate the potential effects of changes made to software. Directed Incremental Symbolic Execution (DiSE) is an intraprocedural technique for characterizing the impact of software changes on program behaviors. DiSE first estimates the impact of the changes on the source code using program slicing techniques, and then uses the impact sets to guide symbolic execution to generate path conditions that characterize impacted program behaviors. DiSE, however, cannot reason about the flow of impact between methods and will fail to generate path conditions for certain impacted program behaviors. In this work, we present iDiSE, an extension to DiSE that performs an interprocedural analysis. iDiSE combines static and dynamic calling context information to efficiently generate impacted program behaviors across calling contexts. Information about impacted program behaviors is useful for testing, verification, and debugging of evolving programs. We present a case-study of our implementation of the iDiSE algorithm to demonstrate its efficiency at computing impacted program behaviors. Traditional notions of coverage are insufficient for characterizing the testing efforts used to validate evolving program behaviors because they do not take into account the impact of changes to the code. In this work we present novel definitions of impacted coverage metrics that are useful for evaluating the testing effort required to test evolving programs. We then describe how the notions of impacted coverage can be used to configure techniques such as DiSE and iDiSE in order to support regression testing related tasks. We also discuss how DiSE and iDiSE can be configured for debugging finding the root cause of errors introduced by changes made to the code. In our empirical evaluation we demonstrate that the configurations of DiSE and iDiSE can be used to support various software maintenance tasks
This study involves an experimental and numerical investigation of the three-dimensional flows in a transonic compressor rotor. A variety of data which could be used, in a complementary fashion, to validate/calibrate the computational fluid dynamics turbomachinery code and improve understanding of the flow physics, were acquired. Detailed radial survey data which consisted of total pressure, total temperature, static pressure and flow angle were obtained at stations upstream and downstream of the rotor blade. Detailed velocity and turbulence profiles were obtained upstream of the rotor and used as the upstream boundary conditions for the numerical analysis. Calibrated flush-mounted hot film probes were used to measure wall shear stress on the hub and casing walls upstream of the rotor. The blade-to-blade shear-stress angle distributions were obtained at two axial locations on the rotor casing, using flush-mounted hot film probes. A numerical analysis conducted using a three-dimensional Navier-Stokes code was compared with the experimental results.
A benchmark example based on the Calibrated End-Loaded Split (C-ELS) specimen is developed and used to assess the performance of recently developed delamination propagation capabilities in the Abaqus/Standard finite element code. The C-ELS specimen has the advantage of a longer region of stable delamination propagation compared to the existing mode II benchmark case. The new benchmark example may therefore provide a better assessment tool by enabling more stable crack growth in regions further away from the boundary conditions or load application. First, a benchmark result is created manually using two-dimensional finite element models of the C-ELS specimen with different delamination lengths. Second, the performance of the delamination propagation capabilities in the Abaqus/Standard finite element code are assessed by comparing the results to the benchmark case. Two examples with different starter delamination lengths are studied. A shorter starter length is chosen to create a scenario with unstable delamination propagation. A longer delamination causes stable delamination propagation. Detailed results from three-dimensional analyses with aligned and mis-aligned meshes and two levels of mesh refinement are provided for several permutations of numerical input parameters. In general, good agreement can be achieved between the results obtained from the quasi-static propagation analysis and the benchmark analysis. However, particular non-default settings are found to be most reliable, accurate, and numerically efficient. Numerical artifacts including anomalous unreleased nodes in the crack wake and zig-zag crack fronts occur, and further development of the Abaqus/Standard VCCT propagation may be required. Use of the benchmark case to assess the continuous improvements in one finite element code illustrates the value of establishing benchmark solutions.
In previous work, the ballistic impact resistance of triaxial braided carbon/epoxy composites made with large flat tows (12k and 24k) was examined by impacting 2 X2 X0.125" composite panels with gelatin projectiles. Several high strength, intermediate modulus carbon fibers were used in combination with both untoughened and toughened matrix materials. A wide range of penetration thresholds were measured for the various fiber/matrix combinations. However, there was no clear relationship between the penetration threshold and the properties of the constituents. During some of these experiments high speed cameras were used to view the failure process, and full-field strain measurements were made to determine the strain at the onset of failure. However, these experiments provided only limited insight into the microscopic failure processes responsible for the wide range of impact resistance observed. In order to investigate potential microscopic failure processes in more detail, quasi-static tests were performed in tension, compression, and shear. Full-field strain measurement techniques were used to identify local regions of high strain resulting from microscopic failures. Microscopic failure events near the specimen surface, such as splitting of fiber bundles in surface plies, were easily identified. Subsurface damage, such as fiber fracture or fiber bundle splitting, could be identified by its effect on in-plane surface strains. Subsurface delamination could be detected as an out-of-plane deflection at the surface. Using this data, failure criteria could be established at the fiber tow level for use in analysis. An analytical formulation was developed to allow the microscopic failure criteria to be used in place of macroscopic properties as input to simulations performed using the commercial explicit finite element code, LS-DYNA. The test methods developed to investigate microscopic failure will be presented along with methods for determining local failure criteria that can be used in analysis. Results of simulations performed using LS-DYNA will be presented to illustrate the capabilities and limitations for simulating failure during quasi-static deformation and during ballistic impact of large unit cell size triaxial braid composites.
Developed at Lawrence Livermore National Laboratory (LLNL), ROSE is an open source compiler infrastructure to build source-to-source program transformation and analysis tools for large-scale C (C89 to C23), C++ (C++98 to C++23), UPC, Fortran (Fortran4, 66, 77, 95, 2003), OpenMP, Java, Python, and Binary applications. ROSE users range from experienced compiler researchers to library and tool developers who may have minimal compiler experience. ROSE is particularly well suited for building custom tools for static analysis, program optimization, arbitrary program transformation, domain-specific optimizations, complex loop optimizations, performance analysis, and cyber-security. ROSE is: A library (and set of associated tools) to quickly and easily apply compiler techniques to one's code in order to improve application performance and developer productivity. A research and development compiler infrastructure for for writing custom source-to-source translators to perform source code transformations, analysis, and optimizations. Is
Renewed interest in simulation of high enthalpy flows was brought about by interest in the design and testing of hypersonic propulsion components. This renewed interest has led to refurbishment of high speed ground based wind tunnel facilities. Simulation of the high enthalpy flows occurring in the NASP propulsion system is of particular interest. Studying the combustor presentes some of the more challenging problems in the ground based simulation of the fluid flow. A difficulty in simulating the required conditions at the entrance to the combustor is related to achieveing a sufficiently high static pressure such that combustion would be possible at a high Mach number. An analysis of the flow within the original nozzle was not performed previously using numerical simulations, although it was operated experimentally. A Navier-Stokes code was chosen in the present study to examine analytically the flow within representative selected nozzles for use in combustion experiments. The numerical simulation of these fluid flows is popular and may be able to shed light on the direction that redesign of the shock tube nozzles should take. The numerical codes were modified to account for the axially symmetric flow field, for the inclusion of equilibrium real gas effects and for ideal gases whose thermodynamic properties are frozen at the stagnation conditions. Numerical simulation of flows within the original and two proposed nozzles, including the energy lost to the relatively cold walls, are investigated.
Dynamic array bound checks are crucial elements for the security of a Java Virtual Machines. These dynamic checks are however expensive and several static analysis techniques have been proposed to eliminate explicit bounds checks. Such analyses require advanced numerical and symbolic manipulations that 1) penalize bytecode loading or dynamic compilation, 2) complexify the trusted computing base. Following the Foundational Proof Carrying Code methodology, our goal is to provide a lightweight bytecode verifier for eliminating array bound checks that is both efficient and trustable. In this work, we define a generic relational program analysis for an imperative, stackoriented byte code language with procedures, arrays and global variables and instantiate it with a relational abstract domain as polyhedra. The analysis has automatic inference of loop invariants and method pre-/post-conditions, and efficient checking of analysis results by a simple checker. Invariants, which can be large, can be specialized for proving a safety policy using an automatic pruning technique which reduces their size. The result of the analysis can be checked efficiently by annotating the program with parts of the invariant together with certificates of polyhedral inclusions. The resulting checker is sufficiently simple to be entirely certified within the Coq proof assistant for a simple fragment of the Java bytecode language. During the talk, we will also report on our ongoing effort to scale this approach for the full sequential JVM.
Spacecraft charging results are presented for the DSCS-3 satellite for a severe geomagnetic substorm. Spacecraft charging results were obtained by the use of the electrostatic charging analysis program (ESCAP). The ESCAP computer code which can determine both the transient or steady state differential charging potentials was an engineering design tool that utilized a circuit theory approach to spacecraft charging. Using the ESCAP code, the steady state (static) differential potentials of the outer spacecraft surfaces and metallic structure were obtained for the DSCS-3 satellite when under the influence of a severe geomagnetic substorm during the local midnight-to-dawn quadrant of its geosynchronous orbital path. The results indicated that, in the steady state, most of the DSCS-3 outer surface materials will not achieve differential potentials large enough to produce an electrostatic discharge.