Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “source code”

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 289 records · Page 16

A robust CELP coder with source-dependent channel coding

A CELP coder using Source Dependent Channel Encoding (SDCE) for optimal channel error protection is introduced. With SDCE, each of the CELP parameters are encoded by minimizing a perceptually meaningful error criterion under prevalent channel conditions. Unlike conventional channel coding schemes, SDCE allows for optimal balance between error detection and correction. The experimental results show that the CELP system is robust under various channel bit error rates and displays a graceful degradation in SSNR as the channel error rate increases. This is a desirable property to have in a coder since the exact channel conditions cannot usually be specified a priori.

Sukkar, Rafid A.↗

A Unit Testing Framework for Scientific Legacy Code

Large-scale scientific applications play important roles in supporting research. However, it is often very expensive and time-consuming to make changes to, maintain and evolve the scientific code due to its complexity and poor programming skills of researchers. Therefore, in order to visualize scientific code architecture to optimize software design, understand undocumented source code, and analyze software flow and functionality, we first introduce a unit testing framework (UTF). Then, because such infrastructure's performance is very crucial in practical use since the scientific legacy applications simulate instances in a long period of time, we improve the UTF by applying Message Passing based Parallelization and parallel I/O operations. Furthermore, due to the scientific code has enormous state data and the I/O capacity on the server is limited, we apply in situ data analysis method to encounter fewer resource limitations, and adopt signal processing to greatly reduce data transfer. Last, we demonstrated the correctness and high-efficiency of our framework for legacy Earth model on Titan supercomputer.

97 MATHEMATICS AND COMPUTING↗

Coupling of Sph and Finite Element Codes for Multi-Layer Orbital Debris Shield Design

Particle-based hydrodynamics models offer distinct advantages over Eulerian and Lagrangian hydrocodes in particular shock physics applications. Particle models are designed to avoid the mesh distortion and state variable diffusion problems which can hinder the effective use of Lagrangian and Eulerian codes respectively. However conventional particle-in-cell and smooth particle hydrodynamics methods employ particles which are actually moving interpolation points. A new particle-based modeling methodology, termed Hamiltonian particle hydrodynamics, was developed by Fahrenthold and Koo (1997) to provide an alternative, fully Lagrangian, energy-based approach to shock physics simulations. This alternative formulation avoids the tensile and boundary instabilities associated with standard smooth particle hydrodynamics formulations and the diffusive grid- to-particle mapping schemes characteristic of particle-in-cell methods. In the work described herein, the method of Fahrenthold and Koo has been extended, by coupling the aforementioned hydrodynamic particle model to a hexahedral finite element based description of the continuum dynamics. The resulting continuum model retains all of the features (including general contact-impact effects) of Hamiltonian particle hydrodynamics, while in addition accounting for tensile strength, plasticity, and damage effects important in the simulation of hypervelocity impact on orbital debris shielding. A three dimensional, vectorized, and autotasked implementation of the extended particle method described here has been coded for application to orbital debris shielding design. Source code for the pre-processor (PREP), analysis code (EXOS), post-processor (POST), and rezoner (ZONE), have been delivered separately, along with a User's Guide describing installation and application of the software.

Fahrenthold, Eric P.↗

Reproducible, Component-based Modeling with TopoFlow, A Spatial Hydrologic Modeling Toolkit

Modern geoscientists have online access to an abundance of different data sets and models, but these resources differ from each other in myriad ways and this heterogeneity works against interoperability as well as reproducibility. The purpose of this paper is to illustrate the main issues and some best practices for addressing the challenge of reproducible science in the context of a relatively simple hydrologic modeling study for a small Arctic watershed near Fairbanks, Alaska. This study requires several different types of input data in addition to several, coupled model components. All data sets, model components and processing scripts (e.g. for preparation of data and figures, and for analysis of model output) are fully documented and made available online at persistent URLs. Similarly, all source code for the models and scripts is open-source, version controlled and made available online via GitHub. Each model component has a Basic Model Interface (BMI) to simplify coupling and its own HTML help page that includes a list of all equations and variables used. The set of all model components (TopoFlow) has also been made available as a Python package for easy installation. Three different graphical user interfaces for setting up TopoFlow runs are described, including one that allows model components to run and be coupled as web services.

58 GEOSCIENCES↗

A Hybrid Constraint Representation and Reasoning Framework

This paper introduces JNET, a novel constraint representation and reasoning framework that supports procedural constraints and constraint attachments, providing a flexible way of integrating the constraint reasoner with a run- time software environment. Attachments in JNET are constraints over arbitrary Java objects, which are defined using Java code, at runtime, with no changes to the JNET source code.

Golden, Keith↗

NASA Advanced Composites Project

The recently-completed NASA Advanced Composites Project (ACP) successfully developed several new technologies aimed at reducing the timeline to design and certify composite aircraft structures. Advancements in the areas of manufacturing simulation, nondestructive inspection and advanced structural design and analysis methodologies were completed in late 2019 under the Advanced Composites Consortium (ACC) public/private partnership as well as NRA-funded university contracts. In the area of Structures, the ACC made significant improvements in rapid design tools for preliminary sizing of structure, along with developing detailed static and fatigue strength prediction methods and methods for modeling high energy impact events in composite structures. These new methodologies and toolsets were validated against a range of representative test data using a comprehensive verification and validation approach which has been published and is now used extensively on other programs. Specific new tool improvements supported by ACC include NASA’s CompDam code and Floating Node Method code. CompDam is now available from NASA as open source code. The team alsoworked on improved impact modeling using LS-Dyna™ and improved delamination modeling using Abaqus™. Rapid design tool improvements are available through Hypersizer. The ACC team released well over 50 publications documenting these method improvements, and the ACP recently received the prestigious NASA Group Achievement Award for their work.Typical Hat Stiffened Panel Test Article Used for Method Validation

ACC↗

Reuse: A knowledge-based approach

This paper describes our research in automating the reuse process through the use of application domain models. Application domain models are explicit formal representations of the application knowledge necessary to understand, specify, and generate application programs. Furthermore, they provide a unified repository for the operational structure, rules, policies, and constraints of a specific application area. In our approach, domain models are expressed in terms of a transaction-based meta-modeling language. This paper has described in detail the creation and maintenance of hierarchical structures. These structures are created through a process that includes reverse engineering of data models with supplementary enhancement from application experts. Source code is also reverse engineered but is not a major source of domain model instantiation at this time. In the second phase of the software synthesis process, program specifications are interactively synthesized from an instantiated domain model. These specifications are currently integrated into a manual programming process but will eventually be used to derive executable code with mechanically assisted transformations. This research is performed within the context of programming-in-the-large types of systems. Although our goals are ambitious, we are implementing the synthesis system in an incremental manner through which we can realize tangible results. The client/server architecture is capable of supporting 16 simultaneous X/Motif users and tens of thousands of attributes and classes. Domain models have been partially synthesized from five different application areas. As additional domain models are synthesized and additional knowledge is gathered, we will inevitably add to and modify our representation. However, our current experience indicates that it will scale and expand to meet our modeling needs.

Iscoe, Neil↗

A Flexible and Non-instrusive Approach for Computing Complex Structural Coverage Metrics

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

DO-178C↗

Implementation of the D1S Methodology for Shutdown Dose Rate Calculations in the OpenMC Monte Carlo Particle Transport Code

We present an implementation of the direct one-step (D1S) methodology for shutdown dose rate (SDR) calculations in the OpenMC Monte Carlo particle transport code. In addition to being the first fully open-source D1S implementation, it is also the first to require no ad hoc source code or nuclear data library modifications. The code can seamlessly switch between production of prompt and decay photons based on a user input parameter, and the decay data needed for decay photon generation are made available through a depletion chain file, which is already used for OpenMC’s built-in depletion/activation solver. A set of Python functions significantly eases the burden of computing and applying time correction factors needed to properly account for the time dependence of radionuclide activity. To assess the accuracy of the D1S implementation, SDR calculations have been carried out for three problems: a prism of iron irradiated by 14-MeV neutrons, the ITER port plug computational benchmark, and the Frascati Neutron Generator (FNG) ITER dose rate benchmark problem from the Shielding INtegral Benchmark Archive and Database (SINBAD). For each of these problems, comparisons were made to calculations using the rigorous two-step (R2S) method. The results on the iron prism problem illustrate how the D1S method achieves superior spatial resolution compared to the R2S method without the need for spatial discretization of the activation regions. The D1S and R2S results for the ITER port plug benchmark agree well with previously reported results in the literature. While the D1S results are 10% to 15% lower than the R2S results, this may be due to stochastic uncertainty and/or spatial discretization in the R2S calculations. On the FNG dose rate benchmark problem, the D1S method produces dose rate estimates that are within 4% of the dose rates predicted using a cell-based R2S workflow. The D1S estimates of the SDR are also in reasonable agreement with the experimental measurements and show the same basic trends that have been observed in previous works. A qualitative analysis of the execution time and uncertainty for the R2S and D1S workflows suggests that the D1S method would attain a higher figure of merit.

D1S method↗

ON THE PIECEWISE PARABOLIC METHOD FOR COMPRESSIBLE FLOW WITH STELLAR EQUATIONS OF STATE

The piecewise parabolic method and related schemes are widely used to model stellar flows. Several different methods for extending the validity of these methods to a general equation of state (EOS) have been proposed over time, but direct comparisons among one-another and exact solutions with stellar EOSs are not widely available. We introduce some simple test problems with exact solutions run with a popular stellar EOS and test how two existing codes with different approaches to incorporating general gases perform. The source code for generating the exact solutions is made available.

79 ASTRONOMY AND ASTROPHYSICS↗

Code Coverage Status of the ARC Code PERSENT

The Argonne Reactor Code (ARC) software system supports users in their fast reactor design goals by providing neutronic, thermal-hydraulic, and structural analysis capabilities. PERSENT fulfills the role of generating reactivity coefficients for a given time point of a REBUS calculation usable in a point kinetics based safety analysis capability. PERSENT also provides a sensitivity coefficient capability on eigenvalue, reactivity worth, and several other key coefficients that are used in the follow-on safety analysis. Given a co-variance matrix, PERSENT can carry out the uncertainty quantification to indicate the amount of error in the reactivity coefficients derived from the errors in the cross section measurements. With continued improvement of computational resources, many of the geometry modeling capabilities in DIF3D that were primarily used in low order schemes are not really needed anymore. Today, the diffusion and transport capabilities of DIF3D-VARIANT are primarily used in the reactor design process with some scattered usage of DIF3D-FD and DIF3D-Nodal. PERSENT is part of the ARC code system and is built around DIF3D-VARIANT and the flux solution it provides. The purpose of the present work is to identify a set of test problems for PERSENT and assess the code coverage of PERSENT for those test problems. PERSENT treats the DIF3D executable as an external executable and thus the code coverage considerations only need to focus on the PERSENT source code and only a fraction of the connected modules in the existing ARC software library. The goal is to document what parts of the existing PERSENT code are touched by the set of test problems and which are not. Because the verification work done on PERSENT was focused on the most common uses of PERSENT for fast reactor analysis, the code coverage assessment of those capabilities is the highest priority. This will ensure that nothing is being missed by the existing verification test problems that users of PERSENT rely upon. The code coverage analysis of PERSENT was performed with the Code Coverage Tool of the Intel Fortran compiler which requires modifications to the compilation of PERSENT. The detailed coverage tables are given for each submodule of PERSENT. Most of the uncovered parts/files could be easily ignored because they are either for error message and debugging output or not needed by PERSENT today. Only a few uncovered parts of PERSENT deserve extending the verification test suite.

22 GENERAL STUDIES OF NUCLEAR REACTORS↗

Coordinated design of coding and modulation systems

Work on partial unit memory codes continued; it was shown that for a given virtual state complexity, the maximum free distance over the class of all convolutional codes is achieved within the class of unit memory codes. The effect of phase-lock loop (PLL) tracking error on coding system performance was studied by using the channel cut-off rate as the measure of quality of a modulation system. Optimum modulation signal sets for a non-white Gaussian channel considered an heuristic selection rule based on a water-filling argument. The use of error correcting codes to perform data compression by the technique of syndrome source coding was researched and a weight-and-error-locations scheme was developed that is closely related to LDSC coding.

Massey, J. L.↗

Exascale Multiphysics Nuclear Reactor Simulations for Advanced Designs

ENRICO is a coupled application developed under the U.S. Department of Energy's Exascale Computing Project (ECP) targeting the modeling of advanced nuclear reactors. It couples radiation transport with heat and fluid simulation, including the high-fidelity, highresolution Monte-Carlo code Shift and the Computational fluid dynamics code NekRS. NekRS is a highly-performant open-source code for simulation of incompressible and low-Mach fluid flow, heat transfer, and combustion with a particular focus on turbulent flows in complex domains. It is based on rapidly convergent high-order spectral element discretizations that feature minimal numerical dissipation and dispersion. State-of-the-art multilevel preconditioners, efficient high-order time-splitting methods, and runtime-adaptive communication strategies are built on a fast OCCA-based kernel library, libParanumal, to provide scalability and portability across the spectrum of current and future high-performance computing platforms. On Frontier, Nek5000/RS has recently achieved an unprecedented milestone in breaching over 1 billion spectral elements and 350 billion degrees of freedom. Shift has demonstrated the capability to transport upwards of 1 billion particles per second in full core nuclear reactor simulations featuring complete temperature-dependent, continuous-energy physics on Frontier. Shift achieved a weak-scaling efficiency of 97.8% on 8192 nodes of Frontier and calculated 6 reactions in 214,896 fuel pin regions below 1% statistical error yielding first-of-a-kind resolution for a Monte Carlo transport application.

Hamilton, Steven P.↗

Computation of graph hitting time moments; Chapel code implementation.

The project that developed this is unclassified, with the mandate to produce open source code. This code computes the hitting time moments of a graph using a linear algebra configuration. The goal of this work is to explore the performance capabilities of the Chapel programming language. Toward that end, we generate random adjacency matrices which represent a random graph. The code can also read in an adjacency matrix from a file. The main computation is the Conjugate Gradient method.SAND2020-12651 M. Sandia National Laboratories is a multimission laboratory managed and operated by National Technology & Engineering Solutions of Sandia, LLC, a wholly owned subsidiary of Honeywell International Inc., for the U.S. Department of Energy’s National Nuclear Security Administration under contract DE-NA0003525.

Barrett, Richard↗

pKPDB: a protein data bank extension database of p Ka and pI theoretical values

Abstract Summary pKa values of ionizable residues and isoelectric points of proteins provide valuable local and global insights about their structure and function. These properties can be estimated with reasonably good accuracy using Poisson–Boltzmann and Monte Carlo calculations at a considerable computational cost (from some minutes to several hours). pKPDB is a database of over 12 M theoretical pKa values calculated over 120k protein structures deposited in the Protein Data Bank. By providing precomputed pKa and pI values, users can retrieve results instantaneously for their protein(s) of interest while also saving countless hours and resources that would be spent on repeated calculations. Furthermore, there is an ever-growing imbalance between experimental pKa and pI values and the number of resolved structures. This database will complement the experimental and computational data already available and can also provide crucial information regarding buried residues that are under-represented in experimental measurements. Availability and implementation Gzipped csv files containing p Ka and isoelectric point values can be downloaded from https://pypka.org/pKPDB. To query a single PDB code please use the PypKa free server at https://pypka.org. The pKPDB source code can be found at https://github.com/mms-fcul/pKPDB. Supplementary information Supplementary data are available at Bioinformatics online.

Reis, Pedro B. P. S. (ORCID:0000000335636239)↗

BuildingSync® v.2.5.0 2024 [SWR-18-28]

BuildingSync® is a building data exchange schema to better enable integration between software tools and building data workflows. The schema's original use case was focused on commercial building energy audits; however, several additional use cases have been realized including building energy modeling and more high-level generic building data exchange. BuildingSync helps streamline the data exchange process, improving the value of the data, minimizing duplication of effort for subsequent building data collection efforts (including audits), and facilitating the achievement of greater energy efficiency. This in done in part by standardizing on (a) reporting audits in an electronic format, (b) tracking proposed, implemented, and discarded energy conservation measures, and (c) storing building characteristics (at multiple levels) for audits, benchmarking, and building energy analysis. BuildingSync has several documents and tools available to help users understand how to best leverage BuildingSync. The list below are only a subset of the resources available. If new resources are discovered, then feel free to create a new pull request with the additions. Generic BuildingSync information is available on the DOE website and the project website. BuildingSync Examples - These examples are kept up to date and show a wide range of implementations. Any new update to BuildingSync is required to pass validation on these example files. BuildingSync Use Case Validator allows for users to determine if their instance complies with a specific use case for BuildingSync by checking if the required elements are implemented in an uploaded instance. An API is also provided for automated integration into other tools. Also, the website contains an easy way to view the entirety of the schema and how elements relate to the Building Exchange Data Exchange Specification. The Validator is open sourced here Use Case TestSuite provides a Python package for easier generation of BuildingSync use cases. BuildingSync use cases depend on the generation of schematron documents, which is time-consuming and difficult to implement well. The TestSuite allows users to define a use case using a more palatable CSV template, which it then turns into a Schematron document. The source code is available here. BuildingSync to OpenStudio/EnergyPlus. The translator is open sourced here. This project will translate a Level 1 (and partial Level 2) ASHRAE Energy Audit to a fully defined OpenStudio and EnergyPlus model. This project is in early Beta testing and any feedback is welcome!

Long, Nicholas↗