Search NASA⌕ Search

SEARCH · Search NASA

Results for “coded source”

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 181 records · Page 10

A Measurement and Simulation Based Methodology for Cache Performance Modeling and Tuning

We present a cache performance modeling methodology that facilitates the tuning of uniprocessor cache performance for applications executing on shared memory multiprocessors by accurately predicting the effects of source code level modifications. Measurements on a single processor are initially used for identifying parts of code where cache utilization improvements may significantly impact the overall performance. Cache simulation based on trace-driven techniques can be carried out without gathering detailed address traces. Minimal runtime information for modeling cache performance of a selected code block includes: base virtual addresses of arrays, virtual addresses of variables, and loop bounds for that code block. Rest of the information is obtained from the source code. We show that the cache performance predictions are as reliable as those obtained through trace-driven simulations. This technique is particularly helpful to the exploration of various "what-if' scenarios regarding the cache performance impact for alternative code structures. We explain and validate this methodology using a simple matrix-matrix multiplication program. We then apply this methodology to predict and tune the cache performance of two realistic scientific applications taken from the Computational Fluid Dynamics (CFD) domain.

Waheed, Abdul↗

Modeling and Simulation of Membrane-Based Dehumidification and Energy Recovery Process

This paper introduces a first-order physics-based model that accounts for the fundamental heat and mass transfer between a humid-air vapor stream on feed side to another flow stream on permeate side. The model comprises a few optional submodels for membrane mass transport; and it adopts a segment-by-segment method for discretizing heat and mass transfer governing equations for flow streams on feed and permeate sides. The model is able to simulate both dehumidifiers and energy recovery ventilators in parallel-flow, cross-flow, and counter-flow configurations. The predicted tresults are compared reasonably well with the measurements. The open-source codes are written in C++. The model and open-source codes are expected to become a fundament tool for the analysis of membrane-based dehumidification in the future.

Gao, Zhiming↗

Thermochimica User Manual – v1.0

A new software library called Thermochimica has been developed that determines a unique combination of phases and their compositions at thermochemical equilibrium. The development of Thermochimica in this research is aimed at direct integration in multi-physics codes and to address several concerns with using commercially available software, including: licensing entanglements associated with code distribution, access to the source code, convenient incorporation into other codes with quality assurance considerations, and computational performance. In particular, significant research efforts have been dedicated to enhance computational performance through advanced algorithm development, such as improved estimation techniques and non-linear solvers. The overall goal of this undertaking is to provide an open source computational tool to enhance the predictive capability of multiphysics codes without significantly impeding computational performance. The purpose of this document is to describe the design of Thermochimica and the basic use of the software library. A brief background to computational thermodynamics and the conditions for thermodynamic equilibrium is given in §2, details of the code development is discussed in §3, details of building and compiling Thermochimica is given in §4, specific programming details for each subroutine in the library is given in the Appendix. The open license for Thermochimica is provided with the source code. As is always the case, software quality assurance (SQA) is an extremely important subject in software development. The importance of this warrants an independent document dedicated to SQA, which has been developed in parallel to this document. The subject of thermodynamic model validation is also of extreme importance in scientific computing and must be given careful attention. To be clear, this document is concerned with the development and use of a general thermodynamic solver and the validation of any models should be included in the discussion of the development of a thermodynamic model that is specific to a particular system.

36 MATERIALS SCIENCE↗

A large-scale analysis of bioinformatics code on GitHub

In recent years, the explosion of genomic data and bioinformatic tools has been accompanied by a growing conversation around reproducibility of results and usability of software. However, the actual state of the body of bioinformatics software remains largely unknown. Here, the purpose of this paper is to investigate the state of source code in the bioinformatics community, specifically looking at relationships between code properties, development activity, developer communities, and software impact. To investigate these issues, we curated a list of 1,720 bioinformatics repositories on GitHub through their mention in peer-reviewed bioinformatics articles. Additionally, we included 23 high-profile repositories identified by their popularity in an online bioinformatics forum. We analyzed repository metadata, source code, development activity, and team dynamics using data made available publicly through the GitHub API, as well as article metadata. We found key relationships within our dataset, including: certain scientific topics are associated with more active code development and higher community interest in the repository; most of the code in the main dataset is written in dynamically typed languages, while most of the code in the high-profile set is statically typed; developer team size is associated with community engagement and high-profile repositories have larger teams; the proportion of female contributors decreases for high-profile repositories and with seniority level in author lists; and, multiple measures of project impact are associated with the simple variable of whether the code was modified at all after paper publication. In addition to providing the first large-scale analysis of bioinformatics code to our knowledge, our work will enable future analysis through publicly available data, code, and methods.

97 MATHEMATICS AND COMPUTING↗

System and method for investigating sub-surface features of a rock formation with acoustic sources generating coded signals

A system and a method for investigating rock formations includes generating, by a first acoustic source, a first acoustic signal comprising a first plurality of pulses, each pulse including a first modulated signal at a central frequency; and generating, by a second acoustic source, a second acoustic signal comprising a second plurality of pulses. A receiver arranged within the borehole receives a detected signal including a signal being generated by a non-linear mixing process from the first-and-second acoustic signal in a non-linear mixing zone within the intersection volume. The method also includes-processing the received signal to extract the signal generated by the non-linear mixing process over noise or over signals generated by a linear interaction process, or both.

47 OTHER INSTRUMENTATION↗

Ice Load Project Final Technical Report

As interest and investment in offshore wind projects increase worldwide, some turbines will be installed in locations where ice of significant thickness forms on the water surface. This ice moves under the driving forces of wind, current, and thermal effects and may result in substantial forces on bottom-fixed support structures. The North and Baltic Seas in Europe have begun to see significant wind energy development and the Great Lakes of the United States and Canada may host wind energy development in the near future. Design of the support structures for these projects is best performed through the use of an integrated tool that can calculate the cumulative effects of forces due to turbine operations, wind, waves, and floating ice. The dynamic nature of ice forces requires that these forces be included in the design simulations, rather than added as static forces to simulation results. The International Electrotechnical Commission (IEC) standard[2] for offshore wind turbine design and the International Organization for Standardization (ISO) standard[3] for offshore structures provide requirements and algorithms for the calculation of forces induced by surface ice; however, currently none of the major wind turbine dynamic simulation codes provides the ability to model ice loads. The scope of work of the project described in this report includes the development of a suite of subroutines, collectively named IceFloe, that meet the requirements of the IEC and ISO standards and couples with four of the major wind turbine dynamic simulation codes. The mechanisms by which ice forces impinge on offshore structures generally include the forces required for crushing of the ice against vertical-sided structures and the forces required to fracture the ice as it rides up on conical-sided structures. Within these two broad categories, the dynamic character of the forces with respect to time is also dependent on other factors such as the velocity and thickness of the moving ice and the response of the structure. In some cases, the dynamic effects are random and in other cases they are deterministic, such as the effect of structural resonance and coupling of the ice forces with the defection of the support structure. The initial versions of the IceFloe routines incorporate modules that address these varied force and dynamic phenomena with seven alternative algorithms that can be specified by the user. The IceFloe routines have been linked and tested with four major wind turbine aeroelastic simulation codes: FAST, a tool developed under the management of the National Renewable Energy Laboratory (NREL) and available free of charge from its web site; Bladed[4], a widely-used commercial package available from DNV GL; ADAMS[5], a general purpose multi-body simulation code used in the wind industry and available from MSC Software; and HAWC2[6], a code developed by and available for purchase from Danmarks Tekniske Universitet (DTU). Interface routines have been developed and tested with full wind turbine simulations for each of these codes and the source code and example inputs and outputs are available from the NREL website.

17 WIND ENERGY↗

The Land Analysis System (LAS) - A general purpose system for multispectral image processing

The present, general-purpose Land Analysis System (LAS) for image processing furnishes a comprehensive set of functions for the manipulation of MSS data; the initial version has more than 240 functions and utilities ranging from pixel manipulation to complex classification. A LAS user's guide describes each such function in terms of purpose, input parameters, illustrative examples, algorithms, error messages, and user codes. The LAS source code is so distributed as to simplify system maintenance; the Transportable Application Executive is employed as the user interface, thereby accommodating both expert and novice users by means of menus and tutored prompting.

Wharton, Stephen W.↗

The Automated Instrumentation and Monitoring System (AIMS) reference manual

Whether a researcher is designing the 'next parallel programming paradigm,' another 'scalable multiprocessor' or investigating resource allocation algorithms for multiprocessors, a facility that enables parallel program execution to be captured and displayed is invaluable. Careful analysis of execution traces can help computer designers and software architects to uncover system behavior and to take advantage of specific application characteristics and hardware features. A software tool kit that facilitates performance evaluation of parallel applications on multiprocessors is described. The Automated Instrumentation and Monitoring System (AIMS) has four major software components: a source code instrumentor which automatically inserts active event recorders into the program's source code before compilation; a run time performance-monitoring library, which collects performance data; a trace file animation and analysis tool kit which reconstructs program execution from the trace file; and a trace post-processor which compensate for data collection overhead. Besides being used as prototype for developing new techniques for instrumenting, monitoring, and visualizing parallel program execution, AIMS is also being incorporated into the run-time environments of various hardware test beds to evaluate their impact on user productivity. Currently, AIMS instrumentors accept FORTRAN and C parallel programs written for Intel's NX operating system on the iPSC family of multi computers. A run-time performance-monitoring library for the iPSC/860 is included in this release. We plan to release monitors for other platforms (such as PVM and TMC's CM-5) in the near future. Performance data collected can be graphically displayed on workstations (e.g. Sun Sparc and SGI) supporting X-Windows (in particular, Xl IR5, Motif 1.1.3).

Yan, Jerry↗

Systems and methods for binary code analysis

Human-readable (HR) code may be derived from a binary. The HR code may be configured to have statistical properties suitable for machine-learned (ML) translation. The HR code may comprise source code, intermediate code, assembly code, or the like. A machine-learned translator may be configured to translate the HR code into labels comprising semantic information pertaining to respective functions of the binary, such as a function name, role, or the like. Execution of the binary may be blocked in response to translating the HR code to a label associated with malware, such as cryptocurrency mining malware or the like. Conversely, the binary may be permitted to proceed to execution in response to determining that the translation is free from labels indicative of malware.

Anderson, Matthew W.↗

MCNP6 Modification for the Calculation of Rossi and Feynman Distributions

The Rossi distribution is given by the number of captured neutron pairs as a function of the time interval between the two capture events. This distribution contains a random part, which is given by neutron captures caused by neutrons of different fission chains, and a correlated part, which is given by neutron captures caused by neutrons from the same fission chain. The correlated part exponentially vanishes with the {Delta}t time interval following the decay of prompt neutrons. The Rossi distribution peaks when the time interval between two capture events is small since this condition is satisfied for neutrons generated from the same fission chain. In the Poisson probability distribution, the variance is equal to the mean and the next event probability is independent of the elapsed time since the previous event. Neutron captures events do not follow the Poisson probability distribution because they are correlated events via fission chains. Consequently, the Feynman distribution Y is defined as the variance to mean ratio minus one, of the neutron counts array as a function of a fixed time interval. The MCNP6 source code has been modified to allow the calculation of the Rossi and Feynman distributions. The source code modification takes into account the time when a neutron is emitted by the external neutron source and gives a precision in the timestamp lower than a fraction of nanosecond. The modified MCNP6 version has been used to model KUKA facility driven by a californium neutron source. The prompt neutron decay constants obtained by the Rossi and Feynman methods are in agreement.

73 NUCLEAR PHYSICS AND RADIATION PHYSICS↗

SolTrace™ (Optical Analysis Software) [SWR-26-065 and SWR-01-45]

SolTrace™ is a software tool developed at the National Renewable Energy Laboratory (NREL) to model concentrating solar power (CSP) systems and analyze their optical performance. Although ideally suited for solar applications, the code can also be used to model and characterize many general optical systems. The creation of the code evolved out of a need to model more complex solar optical systems than could be modeled with existing tools. SolTrace can be installed either using the official NREL packaged distribution or from source code at the SolTrace open source project website. NREL welcomes contributions from programmers to the simulation engine or to the interface and encourages interested persons to get involved. More information on contributing, compiling the source code, and license requirements is available on the project website.(https://www.nrel.gov/csp/soltrace.html). For details on integration with SAM, see the SAM website. (https://sam.nrel.gov/)

Wendelin, Tim↗

A universal structured-design diagramer

Program (FLOWCHARTER) generates standardized flowcharts and concordances for development and debugging of programs in any language. User describes programming-language grammar, providing syntax rules in Backus-Naur form (BNF), list of semantic rules, and set of concordance rules. Once grammar is described, user supplies only source code of program to be diagrammed. FLOWCHARTER automatically produces flow diagram and concordance. Source code for program is written for PASCAL Release 2 compiler, as distributed by University of Minnesota.

Source record↗

MOOSE Framework Speed and Memory Optimizations

The Multiphysics Object Oriented Simulation Environment (MOOSE) framework has been developed to solve a variety of complex simulations ranging from groundwater flows to full reactor simulations. MOOSE excels at solving fully-implicit, fully-coupled, highly nonlinear models using the Jacobian Free Newton-Krylov (JFNK) method relying on years of expertise in several dependent packages including PETSc, libMesh, Hypre and many others. The modular design of MOOSE enables the rapid development of new physics models that can be coupled with relative ease within the framework for building up simulations of different levels of complexity. With the ongoing adoption of MOOSE to new application areas along with streamlining of existing simulations, the priorities must be adjusted to include code optimizations. This includes both execution speed and the memory footprint of MOOSE-based simulations. These two categories can be further broken down into ''micro-optimizations'' or source code optimizations and algorithmic optimizations where source code is restructured to accomplish the same tasks through a more efficient means. However, before any code optimizations can occur, one must have robust way of measuring these critical simulation properties to identify the best candidates for optimizations along with having a way to identify the effectiveness of proposed optimizations to the framework. This report discusses the preliminary work towards the implementation of a robust execution baseline of the framework and derivative applications under a variety of different simulations. In addition, several potential optimization target areas in both the MOOSE framework and dependent libraries have been identified. An implementation strategy and potential benefits are discussed.

97 MATHEMATICS AND COMPUTING↗

Sandia Hyperspectral Upper-Bound Spectrum Version 1.0

The Sandia hyperspectral upper-bound spectrum algorithm (hyper-UBS) is a cosmic ray despiking algorithm for hyperspectral data sets. When naturally-occurring, high-energy (gigaelectronvolt) cosmic rays impact the earth’s atmosphere, they create an avalanche of secondary particles which will register as a large, positive spike on any spectroscopic detector they hit. Cosmic ray spikes are therefore an unavoidable spectroscopic contaminant which can interfere with subsequent analysis. A variety of cosmic ray despiking algorithms already exist and can potentially be applied to hyperspectral data matrices, most notably the upper-bound spectrum data matrices (UBS-DM) algorithm by Dongmao Zhang and Dor Ben-Amotz which served as the basis for the hyper-UBS algorithm. However, the existing algorithms either cannot be applied to hyperspectral data, require information that is not always available, introduce undesired spectral bias, or have otherwise limited effectiveness for some experimentally relevant conditions. Hyper-UBS is more effective at removing a wider variety of cosmic ray spikes from hyperspectral data without introducing undesired spectral bias. In addition to the core algorithm the Sandia hyper-UBS software package includes additional source code useful in evaluating the effectiveness of the hyper-UBS algorithm. The accompanying source code includes code to generate simulated hyperspectral data contaminated by cosmic ray spikes, several existing despiking algorithms, and code to evaluate the performance of the despiking algorithms on simulated data.

Anthony, Stephen↗

Language Independent Static Analysis (LISA)

Software is becoming increasingly important in nearly every aspect of global society and therefore in nearly every aspect of national security as well. While there have been major advancements in recent years in formally proving properties of program source code during development, such approaches are still in the minority among development teams, and the vast majority of code in this software explosion is produced without such properties. In these cases, the source code must be analyzed in order to establish whether the properties of interest hold. Because of the volume of software being produced, automated approaches to software analysis are necessary to meet the need. However, this software boom is not occurring in just one language. There are a wide range of languages of interest in national security spaces, including well-known languages such as C, C++, Python, Java, Javascript, and many more. But recent years have produced a wide range of new languages, including Nim, (2008), Go (2009), Rust (2010), Dart (2011), Kotlin (2011), Elixir (2011), Red (2011), Julia (2012), Typescript (2012), Swift (2014), Hack (2014), Crystal (2014), Ballerina (2017) and more. Historically, automated software analyses are implemented as tools that intermingle both the analysis question at hand with target language dependencies throughout their code, making re-use of components for different analysis questions or different target languages impractical. This project seeks to explore how mission-relevant, static software analyses can be designed and constructed in a language-independent fashion, dramatically increasing the reusability of software analysis investments.

97 MATHEMATICS AND COMPUTING↗

Programs To Aid FORTRAN Programming

Program-development time decreased while program quality increased. FORTRAN Programming Tools are series of programming tools used to support development and maintenance of FORTRAN 77 source codes. Included are debugging aid, central-processing-unit time-monitoring program, source-code maintenance aids, print utilities, and library of useful, well-documented programs. Tools assist in reducing development time and encouraging high-quality programming. Although intended primarily for FORTRAN programmers, some tools used on data files and other programming languages. Written in FORTRAN 77.

Ragosta, Arthur E.↗

Hydrologic Model Data for the East Fork Poplar Creek Watershed Simulated with the Advanced Terrestrial Simulator (ATS): Streamflow and Network Expansion–Contraction Dynamics

This dataset supports hydrologic modeling and stream network expansion–contraction analysis for the East Fork Poplar Creek (EFPC) Watershed in Tennessee. It includes a Jupyter notebook for model setup, model configuration files, simulation outputs, and derived products used to evaluate model performance and investigate stream dynamics under varying hydrologic conditions. The dataset was generated using the Watershed Workflow Python package and the Advanced Terrestrial Simulator (ATS), enabling integrated surface–subsurface hydrologic simulations using a stream-aligned mesh. Outputs include high-resolution time series of streamflow, active network length, water table depth, and related hydrologic variables. Also included are spatially explicit stream persistency indices and classifications of reaches as perennial or non-perennial. These data facilitate reproducibility and support further research on stream intermittency and variability in network extent.The model data archive is organized in following directories:1) model_setup_inputsContains the Watershed Workflow Jupyter notebooks (accessed through any open source code editor), selected input datasets, and resulting ATS input files, including XML files (access through any open source code editor), computational mesh (.exo files can be viewed using Paraview), and meteorological forcing files (.h5 files can be accessed through h5py python package and HDFView open source software). 2) model_outputsIncludes ATS simulation outputs relevant to this study. Time series of spatially integrated or averaged variables (e.g., streamflow, water table depth) are provided as CSV files. Select spatial fields (e.g., ponded depth and water table depth) are saved as pickled Python objects to reduce file size, and can be accessed through pickle package in Python. Key geometry objects from Watershed Workflow—such as the surface mesh and river tree—are also included to support analysis of streamflow persistency and expansion–contraction dynamics. These files can also be accessed through Watershed Workflow Python package.3) model_evaluationProvides observed streamflow time series and field survey-based flow regime classifications used to evaluate model performance. Jupyter notebooks for processing ATS outputs and comparing model predictions with observations to build confidence in the model prior to scientific analysis are also included.4) Q_L_relationshipsContains workflows for generating time series of discharge, active network length, and related hydrologic variables used in the stream network expansion–contraction analysis. Includes routines for delineating baseflow-dominated periods. For each catchment, notebooks and processed data (as pickled DataFrames accessed through Pandas Python package) are provided. 5) figure_scriptsProvides the Jupyter notebooks used to generate the figures presented in the paper.

54 ENVIRONMENTAL SCIENCES↗

Open Data, Models, and Codes for Vanadium Redox Batch Cell Systems: A Systems Approach Using Zero-Dimensional Models

Abstract In this paper, we study, analyze, and validate some important zero-dimensional physics-based models for vanadium redox batch cell (VRBC) systems and formulate an adequate physics-based model that can predict the battery performance accurately. In the model formulation process, a systems approach to multiple parameters estimation has been conducted using VRBC systems at low C-rates (~C/30). In this batch cell system, the effect of ions' crossover through the membrane is dominant, and therefore, the capacity loss phenomena can be explicitly observed. Paradoxically, this means that using the batch system might be a better approach for identifying a more suitable model describing the effect of ions transport. Next, we propose an efficient systems approach, which enables to help understand the battery performance quickly by estimating all parameters of the battery system. Finally, open source codes, executable files, and experimental data are provided to enable people's access to robust and accurate models and optimizers. In battery simulations, different models and optimizers describing the same systems produce different values of the estimated parameters. Providing an open access platform can accelerate the process to arrive at robust models and optimizers by continuous modification from the users' side.

25 ENERGY STORAGE↗