Engineering Papers⌕ Search

SEARCH · Engineering Papers

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 199 records · Page 11

Ground Water Age Predictor

Machine Learning script to predict groundwater ages based on auxiliary features in a publicly available dataset, based on publicly available software libraries. Code applied to data from the Groundwater Ambient Monitoring and Assessment (GAMA) program in California, including well location and construction information, chemical constituents and isotopic tracers, and land use metrics.

Chakraborty, Indrasis↗

pnnl/psl

software library of structured linear maps that can be used as drop in replacements for Pytorch linear layers. These maps can be used to enforce physically realistic outcomes to data-driven machine learning scientific modeling problems.

Tuor, Aaron↗

y0-causal-inference/y0

❓y0 (pronounced "why not?") is for causal inference in Python: a software library intended to support the scientific discovery process.

Hoyt, Charles Tapley↗

nuclear-score-maximization v1.0

This software library presents efficient and multithreaded implementations of matrix low rank approximation via column selection in C++17 code. The algorithms are described in Fornace, Mark, and Michael Lindsey. "Column and row subset selection using nuclear scores: algorithms and theory for Nystro m approximation, CUR decomposition, and graph Laplacian reduction." arXiv preprint arXiv:2407.01698 (2024). The presented methods are by-and-large ver novel, have provable approximation guarantees, multiple use-cases, and exhibit higher quality approximations on a variety of studied examples.

Fornace, Mark↗

Skywalker v.2

SAND2022-2193 O Skywalker is a software library that facilitates the creation of test drivers for atmospheric parameterizations used in climate models. 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.

Overfelt, James↗

Sphynx

Sphynx is a software library for parallel graph partitioning and load balancing. It partitions a set of vertices in a graph such that the vertex parts are balanced, and the edge cut is approximately minimized. The primary use case is to partition a computational graph into smaller tasks that can be assigned to processors (cores) for efficient parallel computing. Sphynx is based on the Trilinos scientific computing toolkit so can run on both multi-CPU and multi-GPU systems. SAND2020-12183 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.

Boman, Erik↗

TChem-atm v1.0

SAND2024-11300O TChem-atm is a software library that was developed to solve complex kinetic models for atmospheric chemistry applications. TChem-atm interface employs a hierarchical parallelism design to exploit the massive parallelism available from modern computing platforms. It also supports gas atmospheric chemistry applications, e.g., the energy exascale earth system model. TChem can be used as a box model or coupled with a climate model to compute the time evolution of gas tracer species. 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.

Safta, Cosmin↗

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↗

BayFlux v1.0

This is an open source software library for performing Bayesian genome scale 13C Metabolic Flux Analysis (Bayesian 13C MFA). This is a new type of metabolic modeling that quantifies flux in a probabilistic manner at the genome scale.

Garcia Martin, Hector↗

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↗

Multilevel Training of Neural Networks

MTNN is a software library for applying multilevel algorithms on training neural networks. Based on PyTorch, it is designed to be an extensible framework to enable researchers to implement multilevel training algorithms on a variety of neural network models. This release includes a culmination of preliminary work in applying the multilevel Full Approximation Scheme technique on fully connected and convolutional neural networks to solve PDE problems (pending publication submission).

Li, Ruipeng↗

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 (↗

THE FREE GAS THERMAL TREATMENT IN MCATK: Sampling the Thermal Motion of the Target Nucleus (U)

The free gas thermal treatment for neutron scattering, as formulated for Monte Carlo by Coveyou et al., is implemented and tested in the MCATK software library. This treatment is necessary for two reasons: 1) to handle the kinematics of a neutron colliding with a target nucleus in thermal motion and 2) to accurately use ACE scattering data.

73 NUCLEAR PHYSICS AND RADIATION PHYSICS↗

Supporting 64-bit global indices in Epetra and other Trilinos packages :

The Trilinos Project is an effort to facilitate the design, development, integration and ongoing support of mathematical software libraries within an object-oriented framework. It is intended for large-scale, complex multiphysics engineering and scientific applications [2, 4, 3]. Epetra is one of its basic packages. It provides serial and parallel linear algebra capabilities. Before Trilinos version 11.0, released in 2012, Epetra used the C++ int data-type for storing global and local indices for degrees of freedom (DOFs). Since int is typically 32-bit, this limited the largest problem size to be smaller than approximately two billion DOFs. This was true even if a distributed memory machine could handle larger problems. We have added optional support for C++ long long data-type, which is at least 64-bit wide, for global indices. To save memory, maintain the speed of memory-bound operations, and reduce further changes to the code, the local indices are still 32-bit. We document the changes required to achieve this feature and how the new functionality can be used. We also report on the lessons learned in modifying a mature and popular package from various perspectives design goals, backward compatibility, engineering decisions, C++ language features, effects on existing users and other packages, and build integration.

Jhurani, Chetan↗

Collision of Physics and Software in the Monte Carlo Application Toolkit (MCATK)

The topic is presented in a series of slides organized as follows: MCATK overview, development strategy, available algorithms, problem modeling (sources, geometry, data, tallies), parallelism, miscellaneous tools/features, example MCATK application, recent areas of research, and summary and future work. MCATK is a C++ component-based Monte Carlo neutron-gamma transport software library with continuous energy neutron and photon transport. Designed to build specialized applications and to provide new functionality in existing general-purpose Monte Carlo codes like MCNP, it reads ACE formatted nuclear data generated by NJOY. The motivation behind MCATK was to reduce costs. MCATK physics involves continuous energy neutron & gamma transport with multi-temperature treatment, static eigenvalue (k eff and α) algorithms, time-dependent algorithm, and fission chain algorithms. MCATK geometry includes mesh geometries and solid body geometries. MCATK provides verified, unit-test Monte Carlo components, flexibility in Monte Carlo application development, and numerous tools such as geometry and cross section plotters.

73 NUCLEAR PHYSICS AND RADIATION PHYSICS↗

Parallel Execution of Functional Mock-up Units in Buildings Modeling

A Functional Mock-up Interface (FMI) defines a standardized interface to be used in computer simulations to develop complex cyber-physical systems. FMI implementation by a software modeling tool enables the creation of a simulation model that can be interconnected, or the creation of a software library called a Functional Mock-up Unit (FMU). This report describes an FMU wrapper implementation that imports FMUs into a C++ environment and uses an Euler solver that executes FMUs in parallel using Open Multi-Processing (OpenMP). The purpose of this report is to elucidate the runtime performance of the solver when a multi-component system is imported as a single FMU (for the whole system) or as multiple FMUs (for different groups of components as sub-systems). This performance comparison is conducted using two test cases: (1) a simple, multi-tank problem; and (2) a more realistic use case based on the Modelica Buildings Library. In both test cases, the performance gains are promising when each FMU consists of a large number of states and state events that are wrapped in a single FMU. Load balancing is demonstrated to be a critical factor in speeding up parallel execution of multiple FMUs.

97 MATHEMATICS AND COMPUTING↗

Computing Properties of Hadrons, Nuclei and Nuclear Matter from Quantum Chromodynamics

This project was part of a coordinated software development effort which the nuclear physics lattice QCD community pursues in order to ensure that lattice calculations can make optimal use of present, and forthcoming leadership-class and dedicated hardware, including those of the national laboratories, and prepares for the exploitation of future computational resources in the exascale era. The UW team improved and extended software libraries used in lattice QCD calculations related to multi-nucleon systems, enhanced production running codes related to load balancing multi-nucleon production on large-scale computing platforms, and developed SQLite (addressable database) interfaces to efficiently archive and analyze multi-nucleon data and developed a Mathematica interface for the SQLite databases.

73 NUCLEAR PHYSICS AND RADIATION PHYSICS↗