Search NASASearch

SEARCH · Search NASA

Results for “Software Library”

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 73 records · Page 4

Pattern Matcher for Trees Constructed from Lists

A software library has been developed that takes a high-level description of a pattern to be satisfied and applies it to a target. If the two match, it returns success; otherwise, it indicates a failure. The target is semantically a tree that is constructed from elements of terminal and non-terminal nodes represented through lists and symbols. Additionally, functionality is provided for finding the element in a set that satisfies a given pattern and doing a tree search, finding all occurrences of leaf nodes that match a given pattern. This process is valuable because it is a new algorithmic approach that significantly improves the productivity of the programmers and has the potential of making their resulting code more efficient by the introduction of a novel semantic representation language. This software has been used in many applications delivered to NASA and private industry, and the cost savings that have resulted from it are significant.

James, Mark

Towards Automatically Matching Security Advisories to CPEs: String Similarity-based Vendor Matching

When a vulnerability is reported by the National Vulnerability Database (NVD), affected products are listed in the structured Common Platform Enumeration (CPE) format. Unfortunately, if the vulnerability is in a software library (e.g., Log4j), it will not include CPEs for each product containing that library. In these cases, security operators need to manually read the vendor's or third-party security advisories to see if their product is affected. However, these advisories do not report affected products in a structured format, which prevents automated processing, This paper makes the first effort towards automatically constructing structured CPEs for the vulnerable products in a non-NVD security advisory from the unstructured data in the advisory. Since this is a very challenging problem, this paper specifically focuses on the initial but key step of matching the un-structured vendor names in security advisories to the structured vendor representations in the standard CPE format. We explore the feasibility of using string similarity to solve the problem. The basic idea is to compare a vendor name from the non-NVD advisory with each vendor in the official CPE dictionary. The CPE vendor with the highest similarity score to the advisory's vendor will be considered as the match. We first conduct an experimental, comparative study of multiple mainstream string similarity metrics for this matching problem. To improve the performance, we then design a new string similarity metric that is adapted from an existing metric by weighing different tokens in the advisory's vendor name differently.

McClanahan, Kylie

ORMATEX

The Oak Ridge Matrix Exponential (ORMATEX) software library contains methods to compute the matrix exponential and the action of the matrix exponential on a vector. Additionally, this package contains the related methods for the phi-functions which commonly appear in a wide class of exponential time integration methods. Krylov methods are provided to evaluate the matrix exponential-vector and phi-vector products for cases where the matrix is large and sparse. Utilizing these methods, ORMATEX implements performant exponential integrators for large systems of coupled ordinary differential equations (ODEs). The exponential time integration routines in ORMATEX are particularly suitable to large, stiff systems of equations. These routines may be utilized as a competitive alternative to classical implicit and explicit time integration schemes for certain classes of differential equations where the problem stiffness can be predominately explained by the linear terms.

Gurecky, William [Oak Ridge National Laboratory (O

GenConfig

SAND2025-04091O GenConfig converts a build name into a set of configuration flags or CMake fragment files for use with CMake. This is accomplished using ConfigKeywordParser and two configuration files. GenConfig is the main tool in a set of software libraries used for generating and configuring an environment and configuration flags. The tool uses other modules within the GenConfig family to ultimately parse and enable an environment that is ready for development from a given build name string. The unique algorithms used in GenConfig mainly pertain to validating the format and checking the existence of the given build string in the expected configuration .ini files. 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.

Gates, Jason

RetroTide v1.0

RetroTide is a retrobiosynthesis software tool, designed to guide the design of biological pathways to make valuable small molecules. It takes as input a desired small molecule chemical structure, and outputs a design for a polyketide synthase enzyme (PKS) that has the closest possible chemical structure, as accessible by PKS chemistry. It is developed as a Python software library, and internally performs a search of the PKS design space, while simulating the chemicals produced by each design.

Backman, Tyler

BoBa

BoBa is a C++ software library for working with large matrices, tensors, and tensor decompositions. The library provides tools for dense matrix and tensor operations, tensor decompositions, and tensor decomposition methods that support modern CPU and GPU architectures. It includes portable abstractions for linear algebra, tensor algebra, and multidimensional computation. BoBa is intended for scientific computing applications that involve large multidimensional data sets or high dimensional mathematical models. Its capabilities support tasks such as data compression, linear algebra, efficient numerical computation, and the development of scalable algorithms for heterogeneous hardware. Tutorials, tests, and example applications are included to help users learn and apply the library.

Yao, Jin [Lawrence Livermore National Laboratory (

A Review of the Generic Grid-Forming Model Used by the System Operator in Chile

The objective in this project is to verify the applicability of using generic electro-magnetic transient domain models of GFM technology through a wide range of tests and system conditions proposed by subject matter experts of GFM technology through a wide range of tests and system conditions proposed by subject matter experts. For this study, we used the generic GFM electro-magnetic transient model available in the EMTP (Electromagnetic Transient Program) software library, and we assessed the model’s various GFM capabilities through 12 tests. In this report, we compare the performance of the model with that of an original equipment manufacturer (OEM) GFM model. We also share the key insights and lessons learned from this work.

24 POWER TRANSMISSION AND DISTRIBUTION

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

Extending reliability: Transformational tailoring of abstract mathematical software

Methods for automatically constructing concrete executable programs from an abstract prototype program by applying transformations based on theorems of matrix algebra and on algebraic properties of programming languages are described. These methods provide a user with highly efficient programs tailored to his environment while maintaining the advantages of high reliability and low cost associated with routines from the best mathematical software libraries. Also, the transformations which produce such programs represent a formal codification of rules for writing linear algebra programs.

Boyle, J. M.

A laboratory investigation of the variability of cloud reflected radiance fields

A method to determine the radiative properties of complex cloud fields was developed. A Cloud field optical simulator (CFOS) was constructed to simulate the interaction of cloud fields with visible radiation. The CFOS was verified by comparing experimental results from it with calculations performed with a Monte Carlo radiative transfer model. A software library was developed to process, reduce, and display CFOS data. The CFSOS was utilized to study the reflected radiane patterns from simulated cloud fields.

Mckee, T. B.

SAGA: A project to automate the management of software production systems

The Software Automation, Generation and Administration (SAGA) project is investigating the design and construction of practical software engineering environments for developing and maintaining aerospace systems and applications software. The research includes the practical organization of the software lifecycle, configuration management, software requirements specifications, executable specifications, design methodologies, programming, verification, validation and testing, version control, maintenance, the reuse of software, software libraries, documentation, and automated management.

Campbell, Roy H.

Application of optimization techniques to spacecaft fuel usage minimization in deep space navigation

Mathematical analysis of the minimization of spacecraft fuel usage for both impulsive and finite motor burns is presented. A high precision integrated trajectory search program (SEPV) and several optimization software libraries are used to solve minimum fuel usage problems. The SEPV program has the capacity to vary either the initial spacecraft state or the finite burn parameters to acquire a specified set of target values. Several test examples for the Voyager 2 Uranus Encounter and the Galileo Jupiter Orbiter are presented to show that spacecraft fuel consumption can be minimized in targeting maneuver strategies. The fuel savings achieved by the optimum solution can be significant.

Wang, Tseng-Chan

Survey of optimization techniques for nonlinear spacecraft trajectory searches

Mathematical analysis of the optimal search of a nonlinear spacecraft trajectory to arrive at a set of desired targets is presented. A high precision integrated trajectory program and several optimization software libraries are used to search for a converged nonlinear spacecraft trajectory. Several examples for the Galileo Jupiter Orbiter and the Ocean Topography Experiment (TOPEX) are presented that illustrate a variety of the optimization methods used in nonlinear spacecraft trajectory searches.

Wang, Tseng-Chan

Automated reuseable components system study results

The Automated Reusable Components System (ARCS) was developed under a Phase 1 Small Business Innovative Research (SBIR) contract for the U.S. Army CECOM. The objectives of the ARCS program were: (1) to investigate issues associated with automated reuse of software components, identify alternative approaches, and select promising technologies, and (2) to develop tools that support component classification and retrieval. The approach followed was to research emerging techniques and experimental applications associated with reusable software libraries, to investigate the more mature information retrieval technologies for applicability, and to investigate the applicability of specialized technologies to improve the effectiveness of a reusable component library. Various classification schemes and retrieval techniques were identified and evaluated for potential application in an automated library system for reusable components. Strategies for library organization and management, component submittal and storage, and component search and retrieval were developed. A prototype ARCS was built to demonstrate the feasibility of automating the reuse process. The prototype was created using a subset of the classification and retrieval techniques that were investigated. The demonstration system was exercised and evaluated using reusable Ada components selected from the public domain. A requirements specification for a production-quality ARCS was also developed.

Gilroy, Kathy

Direct adaptive control of a PUMA 560 industrial robot

The implementation and experimental validation of a new direct adaptive control scheme on a PUMA 560 industrial robot is described. The testbed facility consists of a Unimation PUMA 560 six-jointed robot and controller, and a DEC MicroVAX II computer which hosts the Robot Control C Library software. The control algorithm is implemented on the MicroVAX which acts as a digital controller for the PUMA robot, and the Unimation controller is effectively bypassed and used merely as an I/O device to interface the MicroVAX to the joint motors. The control algorithm for each robot joint consists of an auxiliary signal generated by a constant-gain Proportional plus Integral plus Derivative (PID) controller, and an adaptive position-velocity (PD) feedback controller with adjustable gains. The adaptive independent joint controllers compensate for the inter-joint couplings and achieve accurate trajectory tracking without the need for the complex dynamic model and parameter values of the robot. Extensive experimental results on PUMA joint control are presented to confirm the feasibility of the proposed scheme, in spite of strong interactions between joint motions. Experimental results validate the capabilities of the proposed control scheme. The control scheme is extremely simple and computationally very fast for concurrent processing with high sampling rates.

Seraji, Homayoun

Advanced data acquisition and display techniques for laser velocimetry

The Basic Aerodynamics Research Tunnel (BART) has been equipped with state-of-the-art instrumentation for acquiring the data needed for code validation. This paper describes the three-component LDV and the workstation-based data-acquisition system (DAS) which has been developed for the BART. The DAS allows the use of automation and the quick integration of advanced instrumentation, while minimizing the software development time required between investigations. The paper also includes a description of a graphics software library developed to support the windowing environment of the DAS. The real-time displays generated using the graphics library help the researcher ensure the test is proceeding properly. The graphics library also supports the requirements of posttest data analysis. The use of the DAS and graphics libraries is illustrated by presenting examples of the real-time and postprocessing display graphics for LDV investigations.

Kjelgaard, Scott O.