Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “Static code analysis”

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 217 records · Page 12

A Benchmark Example for Delamination Propagation Predictions Based on the Calibrated End-Loaded Split Specimen

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.

delamination↗

Effect of Microscopic Damage Events on Static and Ballistic Impact Strength of Triaxial Braid Composites

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.

Littell, Justin D.↗

Evaluating the effectiveness of program data features for guiding memory management

Recent trends have led to the adoption of larger and more complex memory systems, often with multiple tiers of memory performance within the same platform. To utilize complex memory systems efficiently, current data management strategies must be altered to map usage demands to the underlying hardware. Applications, as the generators of memory accesses, are well-suited to guide this process, but building and maintaining separate source code versions for different memory systems is not feasible in most cases. One potential solution is to employ automated program profiling and analysis to facilitate the production of application-based guidance. By attaching memory usage information to static or lightweight program features, compilers and runtime systems can generate fine-grained guidance without additional efforts from users or developers. Recent works have employed this approach with some success, but it is not clear which program features are most useful for guiding data management.This work evaluates the effectiveness of using different program data features to predict memory usage and guide memory management. It employs a custom set of simulation tools, based in the Intel® Pin framework, to collect and analyze the usage characteristics of application data associated with common program data features, such as allocation sites, types, and context. The results show that even relatively simple features, such as object size, are useful for selecting data with similar usage properties, but finer-grained features, such as the instructions that access a particular object, are often much more effective. Additionally, this work evaluates the performance of using different data features and different program inputs to guide data placement on a heterogeneous memory platform with a limited amount of high performance memory.

Effler, T. Chad↗

ROSE

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

Pinnow, NathanT [Lawrence Livermore National Labor↗

HPC-enabled computation of demand models at scale

The purpose of this project is to examine the energy impact of urban-scale traffic for the Los Angeles Basin by developing and implementing a scalable traffic assignment model. An energy optimization function will be posed and when integrated into the optimization code for travel assignment it can be mathematically proven to converge. The energy optimization function can then be compared to the typical travel time optimization that is traditionally used in traffic assignment models. The analysis will begin with static traffic assignment models with the routing for all origin and destinations computed in parallel on high performance computing facilities. Convergence of the numerical methods rely on the solution of convex programs (or extensions of these). This step will mostly consist of demonstrating the ability to parallelize the Frank Wolfe algorithm on various platforms.

29 ENERGY PLANNING, POLICY, AND ECONOMY↗

HPC4Mobilty w/ UCB

The purpose of this project is to examine the energy impact of urban-scale traffic for the Los Angeles Basin by developing and implementing a scalable traffic assignment model. An energy optimization function will be posed and when integrated into the optimization code for travel assignment it can be mathematically proven to converge. The energy optimization function can then be compared to the typical travel time optimization that is traditionally used in traffic assignment models. The analysis will begin with static traffic assignment models with the routing for all origin and destinations computed in parallel on high performance computing facilities. Convergence of the numerical methods rely on the solution of convex programs (or extensions of these). This step will mostly consist of demonstrating the ability to parallelize the Frank Wolfe algorithm on various platforms. This work will contribute to LBNL’s efforts to develop new processes, analytical tools, program designs, and business models to advance the state of the art in next-generation sustainable transportation solutions.

32 ENERGY CONSERVATION, CONSUMPTION, AND UTILIZATI↗

Numerical investigations in three-dimensional internal flows

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.

Rose, William C.↗

Towards a Certified Lightweight Array Bound Checker for Java Bytecode

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.

Pichardie, David↗

Expanded capabilities of the CarMa code in modeling resistive wall mode dynamics with 3-D conductors

In this work, an improved version of the CarMa code is presented, called CarMa-D, for the analysis of resistive wall modes (RWMs) in fusion devices, simultaneously considering the effects of volumetric three-dimensional conducting structures, plasma dynamics, toroidal rotation or drift-kinetic damping. Unlike static CarMa, CarMa-D does not rely on the simplifying assumptions such as neglecting the plasma mass, toroidal rotation and kinetic damping. The new coupling strategy is based on matrix-based Padé rational functions approximation of plasma a response. The arising mathematical model is formally equivalent to the original CarMa model, but with a higher number of degrees of freedom to model the dynamics of the plasma. CarMa-D overcomes the main limitations of the original CarMa, in particular: (i) the massless assumption for the plasma is removed, allowing modeling of global modes growing both on ideal kink time scales and in the typical RWM growth rate regime, with a suitable treatment of the model; (ii) the effects of toroidal plasma flow and drift kinetic damping can be included into the new model, providing a powerful tool to study macroscopic phenomena where both plasma dynamics and 3-D conducting structures play important roles.

70 PLASMA PHYSICS AND FUSION TECHNOLOGY↗

Spacecraft charging results for the DSCS-3 satellite

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.

Massaro, M. J.↗

JPL-ANTOPT antenna structure optimization program

New antenna path-length error and pointing-error structure optimization codes were recently added to the MSC/NASTRAN structural analysis computer program. Path-length and pointing errors are important measured of structure-related antenna performance. The path-length and pointing errors are treated as scalar displacements for statics loading cases. These scalar displacements can be subject to constraint during the optimization process. Path-length and pointing-error calculations supplement the other optimization and sensitivity capabilities of NASTRAN. The analysis and design functions were implemented as 'DMAP ALTERs' to the Design Optimization (SOL 200) Solution Sequence of MSC-NASTRAN, Version 67.5.

Strain, D. M.↗

Performance Characteristics of a Boundary Layer Ingesting Inlet - Distortion Tolerant Fan Through CFD Code Coupling

A method of constructing a high-fidelity simulation using two NASA CFD codes, Launch Ascent and Vehicle Aerodynamics (LAVA), which is the general-purpose solver, and a turbomachinery specific code NASA-TURBO (TURBO), will be presented. Validation of the code coupling is performed through comparison to experimental data obtained in the 2017 wind tunnel test of NASA’s Boundary Layer Ingesting Inlet - Distortion Tolerant Fan (BLI2DTF). For the simulation, the external flow field is computed by LAVA utilizing a steady-state Reynolds-averaged Navier-Stokes (RANS) methodology. Data from LAVA is exchanged with TURBO, which simulated the propulsor utilizing an unsteady-RANS methodology. A sensitivity analysis is performed using averaged and instantaneous data transfer between the two codes, as well as varying the amount of simulation time TURBO computes between updates. The results of the coupled simulations appear to replicate the BLI2DTF experiment correctly. Static pressure taps leading into and around the nacelle, total pressure ratio and efficiency of the propulsor, and profiles of total temperature, pressure, and Mach number at the rear measurement plane, aft of the propulsor, are in good agreement with experimental data. These results provide confidence that the coupled simulation is behaving in a physically realizable manner.

CFD↗

Feasibility of water injection into the turbine coolant to permit gas turbine contingency power for helicopter application

A system which would allow a substantially increased output from a turboshaft engine for brief periods in emergency situations with little or no loss of turbine stress rupture life is proposed and studied analytically. The increased engine output is obtained by overtemperaturing the turbine; however, the temperature of the compressor bleed air used for hot section cooling is lowered by injecting and evaporating water. This decrease in cooling air temperature can offset the effect of increased gas temperature and increased shaft speed and thus keep turbine blade stress rupture life constant. The analysis utilized the NASA-Navy-Engine-Program or NNEP computer code to model the turboshaft engine in both design and off-design modes. This report is concerned with the effect of the proposed method of power augmentation on the engine cycle and turbine components. A simple cycle turboshaft engine with a 16:1 pressure ratio and a 1533 K (2760 R) turbine inlet temperature operating at sea level static conditions was studied to determine the possible power increase and the effect on turbine stress rupture life that could be expected using the proposed emergency cooling scheme. The analysis showed a 54 percent increse in output power can be achieved with no loss in gas generator turbine stress rupture life. A 231 K (415 F) rise in turbine inlet temperature is required for this level of augmentation. The required water flow rate was found to be .0109 kg water per kg of engine air flow.

Vanfossen, G. J.↗

Creating an Interprocedural Analyst-Oriented Data Flow Representation for Binary Analysts (CIAO)

National security missions require understanding third-party software binaries, a key element of which is reasoning about how data flows through a program. However, vulnerability analysts protecting software lack adequate tools for understanding data flow in binaries. To reduce the human time burden for these analysts, we used human factors methods in a rolling discovery process to derive user-centric visual representation requirements. We encountered three main challenges: analysis projects span weeks, analysis goals significantly affect approaches and required knowledge, and analyst tools, techniques, conventions, and prioritization are based on personal preference. To address these challenges, we initially focused our human factors methods on an attack surface characterization task. We generalized our results using a two-stage modified sorting task, creating requirements for a data flow visualization. We implemented these requirements partially in manual static visualizations, which we informally evaluated, and partially in automatically generated interactive visualizations, which have yet to be integrated into workflows for evaluation. Our observations and results indicate that 1) this data flow visualization has the potential to enable novel code navigation, information presentation, and information sharing, and 2) it is an excellent time to pursue research applying human factors methods to binary analysis workflows.

42 ENGINEERING↗

The MHOST finite element program: 3-D inelastic analysis methods for hot section components. Volume 1: Theoretical manual

Formulations and algorithms implemented in the MHOST finite element program are discussed. The code uses a novel concept of the mixed iterative solution technique for the efficient 3-D computations of turbine engine hot section components. The general framework of variational formulation and solution algorithms are discussed which were derived from the mixed three field Hu-Washizu principle. This formulation enables the use of nodal interpolation for coordinates, displacements, strains, and stresses. Algorithmic description of the mixed iterative method includes variations for the quasi static, transient dynamic and buckling analyses. The global-local analysis procedure referred to as the subelement refinement is developed in the framework of the mixed iterative solution, of which the detail is presented. The numerically integrated isoparametric elements implemented in the framework is discussed. Methods to filter certain parts of strain and project the element discontinuous quantities to the nodes are developed for a family of linear elements. Integration algorithms are described for linear and nonlinear equations included in MHOST program.

Nakazawa, Shohei↗

Shock noise features using the SCIPVIS code

The numerical computational supersonic jet plume model SCIPVIS was analyzed in order to determine its effectiveness for predicting the complicated flow structure associated with supersonic shock containing jet plumes. The analysis focused on assessing the applicability of using this code for predicting the broadband shock noise radiation. The analysis was carried out for several exit Mach number cases (including 1.00, 1.41, and 1.99) covering both underexpanded and overexpanded flow conditions. The three primary turbulence closure models incorporated in the SCIPVIS code were utilized for comparisons to measured plume static pressure distributions. Among other results, the prediction of plume static pressures for all three nozzle exit Mach numbers was found to perform exceptionally well when compared with experimental data for both underexpanded and overexpanded cases. Computations performed using this code for calculating the average shock wavelength for the 1.99 exit Mach number case were shown to provide an excellent prediction of the peak frequency for broadband shock noise. The spatial variation of the turbulent kinetic energy was found to be in qualitative agreement with wedge hot-film measurements.

Seiner, J. M.↗

Software Certification - Coding, Code, and Coders

We describe a certification approach for software development that has been adopted at our organization. JPL develops robotic spacecraft for the exploration of the solar system. The flight software that controls these spacecraft is considered to be mission critical. We argue that the goal of a software certification process cannot be the development of "perfect" software, i.e., software that can be formally proven to be correct under all imaginable and unimaginable circumstances. More realistically, the goal is to guarantee a software development process that is conducted by knowledgeable engineers, who follow generally accepted procedures to control known risks, while meeting agreed upon standards of workmanship. We target three specific issues that must be addressed in such a certification procedure: the coding process, the code that is developed, and the skills of the coders. The coding process is driven by standards (e.g., a coding standard) and tools. The code is mechanically checked against the standard with the help of state-of-the-art static source code analyzers. The coders, finally, are certified in on-site training courses that include formal exams.

training↗

WARP3D-Release 10.8: Dynamic Nonlinear Analysis of Solids using a Preconditioned Conjugate Gradient Software Architecture

This report describes theoretical background material and commands necessary to use the WARP3D finite element code. WARP3D is under continuing development as a research code for the solution of very large-scale, 3-D solid models subjected to static and dynamic loads. Specific features in the code oriented toward the investigation of ductile fracture in metals include a robust finite strain formulation, a general J-integral computation facility (with inertia, face loading), an element extinction facility to model crack growth, nonlinear material models including viscoplastic effects, and the Gurson-Tver-gaard dilatant plasticity model for void growth. The nonlinear, dynamic equilibrium equations are solved using an incremental-iterative, implicit formulation with full Newton iterations to eliminate residual nodal forces. The history integration of the nonlinear equations of motion is accomplished with Newmarks Beta method. A central feature of WARP3D involves the use of a linear-preconditioned conjugate gradient (LPCG) solver implemented in an element-by-element format to replace a conventional direct linear equation solver. This software architecture dramatically reduces both the memory requirements and CPU time for very large, nonlinear solid models since formation of the assembled (dynamic) stiffness matrix is avoided. Analyses thus exhibit the numerical stability for large time (load) steps provided by the implicit formulation coupled with the low memory requirements characteristic of an explicit code. In addition to the much lower memory requirements of the LPCG solver, the CPU time required for solution of the linear equations during each Newton iteration is generally one-half or less of the CPU time required for a traditional direct solver. All other computational aspects of the code (element stiffnesses, element strains, stress updating, element internal forces) are implemented in the element-by- element, blocked architecture. This greatly improves vectorization of the code on uni-processor hardware and enables straightforward parallel-vector processing of element blocks on multi-processor hardware.

Koppenhoefer, Kyle C.↗