Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “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 1,333 records · Page 74

COWALKER:EFFECTIVE TRANSPORT PROPERTIES OF COMPOSITE MATERIALS

SF-23-026 This software computes effective transport properties of composite materials involving fibers and nanoparticles using a random-walk algorithm that efficiently scales to an arbitrary number of processes and cores. Effective transport properties (thermal, electrical) are key to bridge the microstructure of complex materials with its macroscopic behavior. Traditional approaches either use effective medium approximations (closed mathematical expressions that are approximation for certain conditions) or continuum simulation models such as finite element or finite volume, which require the generation of a mesh for each configuration explored. cowalker leverages the equivalence between laplacian or heat equation-based models and random walks to compute the asymptotic transport properties from an ensemble of first sojourn times of a random walker moving through the composite material. This allows us to directly define a composite material as a collection of particles and use algorithms developed for molecular dynamics to quickly compute the intersection of the walker with the different interfaces in the material. cowalker is developed in C++, and it relies on the GNU Scientific Library for random generation. cowalker is currently delivered as source code, so the GSL library is not included in cowalker's distribution. A more userfriendly version, cowalker.jl is currently in development and will be released as part of cowalker.

YANGUAS-GIL, ANGEL↗

AdversarialTensors

This library builds a framework for defending ML models against adversarial attacks. The library will be developed at various stages leading to publication and software release at each stage. We employ tensor decomposition strategies as preprocessing stages for the first stage to provide robustness against the prominent adversarial noise. In the second stage, we develop a latent noise generator capable of generating novel adversarial noise that threatens the existing state-of-the-art defense strategy. In the third stage, we develop a UNSUP-GAN model, where the generator is trained to denoise against latent noise and most adversarial noises. This generator can provide a robust adversarial attack against any unseen attack.

Bhattarai, Manish↗

ML for microbiomes

The software provides machine learning analysis and visualization to detect patterns in microbiome data, including topic modeling, probabilistic graphical modeling, conventional machine learning methods, and deep learning. The software is written in python and R, it uses some python and R libraries as well as big open-source libraries like sklearn, networkX, pytorch (python), pgmpy (python), and bnlearn (R). It also has a script to use for MALLET and DTM (open-source packages for topic modeling, written in Java).

Kim, Anastasiia↗

Hypercane

Automatically summarizing a collection of documents requires analyzing their features using various operations. Hypercane is a framework for building algorithms for sampling files from a collection. Sampling is a vital part of automatic summarization. Hypercane ties together many existing third-party libraries. These libraries include those for processing web resources, natural language processing for analyzing text and filtering documents, and machine learning for clustering summarization candidates. A user can run up to more than 70 operations on a corpus in the order of their choosing. Through these operations, they can create custom automatic summarization algorithms to help them process the corpus of their choice. Details of the algorithms possible with Hypercane are available in Jones 2021. Details of running Hypercane are available in Jones et al.; 2021.

Jones, Shawn↗

CMLM (Co-Optimized Machine-Learned Manifolds) [SWR-23-41]

Co-optimized Machine-Learned Manifolds (CMLM) is a data-driven approach for developing reduced-order manifold models for high-dimensional chemically reacting systems. It involves a specially designed neural network, the training of which simultaneously optimizes linear combinations of species that define the manifold, nonlinear mapping to outputs of interest such as reaction rates, and (optionally) subfilter closure for large eddy simulation. This software package provides an implementation of the CMLM approach in Python using the PyTorch machine learning library. A few example cases are included, showing how the tool can be applied to different types of data from 0D and 1D reacting simulations performed using Cantera. The neural networks can be saved in a format that is readable by the Pele suite of combustion solvers for use in reacting computational fluid dynamics simulations. This software repository contains several python scripts to perform various tasks associated with the Co-optimized Machine Learned Manifolds (CMLM) model, which is described in Perry, Henry de Frahan, and Yellapantula, CNF, 2022 (https://doi.org/10.1016/j.combustflame.2022.112286). This includes not only the code that defines the CMLM model, but also scripts to generate suitable training data, scripts to pre-process the data, scripts to train the CMLM model, and scripts to plot the output, as well as various other helper files. The scripts depend on several commonly used python libraries for data analysis and chemical reaction computations. The trained models that result from this tool are designed to work with the an interface being implemented in the Pele suite of reacting flow solvers (https://github.com/AMReX-Combustion).

Perry, Bruce↗

ASAUM--Adaptive Structured and Unstructured Mesh

ASAUM is a C++ library for representing distributed, multi-block structed and unstructured meshes. The library is meant to provide users with the ability to read/write, partition, and query the large distributed meshes that are commonly used in scientific computing.

Park, HyeongKae↗

Polyglot Framework

Polyglot utilizes a combination of custom and open source tools and libraries to provide developers with a consistent environment for building tools, etc. for a wide variety of targets with minimal changes to the code being built. It supports a variety of architectures and operating systems/firmware in as target-agnostic way as possible. This allows for developers to minimize the amount of time/effort required to port tools—in particular, forensic tools—to a wide variety of targets. The project is comprised of two main components: a frontend toolchain that understands how to utilize other tools in order to build code for a specific target, and a minimalistic C library specific to Polyglot. These collectively provide the method to build code for a specific target, and the capability for code to interact with the underlying operating system when run on the target. Both components are written in a way to minimize the amount of target-specific knowledge required to both develop and utilize the project.

Huddleston, TimothyA.↗

Fair Bagging Boosting Models [SWR-24-38]

Fair Bagging Boosting Models is a software implementation of a framework for building, measuring bias and correcting bias in 3 popular forest machine learning models: gradient boosted trees (GBT), random forest (RF), and XGBoost models, using the XGBoost library. The framework takes advantage of the flexibility in XGBoost library to represent gradient boosted tree and random forest models, as well as the ability to use custom loss function.

Ugirumurera, Juliette↗

Clang UPC2C Translator (Clang UPC2C) v9.0.1-1

Clang Unified Parallel C 2 C (Clang UPC2C) translator compiles programs written in the UPC (Unified Parallel C) language to ISO C99, with calls to the Berkeley UPC runtime system. The Clang UPC2C compiler extends the capabilities of the Clang LLVM C frontend to comply with the UPC Language Specification version 1.3. The compiler generates programs that run on a wide variety of systems ranging from workstations to leadership-class supercomputers, in conjunction with the Berkeley UPC runtime and GASNet communication system. In addition to the standard UPC libraries, Clang UPC2C also provides access to Berkeley UPC library extensions.

Hargrove, Paul↗

OpenCSP v.1.0

SAND2024-08987O OpenCSP analyzes and improves the performance of optical mirrors that reflect sunlight and concentrate it onto a receiver. The algorithms in this library analyze the flow of light from an original source—such as the sun—reflecting off one or more mirrors, and onto a receiver, optical screen, or camera. OpenCSP also analyzes optical systems using other techniques, such as shape or slope comparison. The software calculates aggregate properties of the optical system, such as its efficiency, manufacturing error, pointing control error, expected performance, and other useful parameters. OpenCSP also includes high-level tools, such as Open SOFAST, a program that obtains high-resolution measurement of CSP mirrors, full heliostats, and other CSP collectors. OpenCSP supports producing meaningful output data to help CSP designers and field operators improve the performance of their systems. OpenCSP also includes classes and functions that support these calculations, including input utilities, analysis output libraries, geometric constraint analysis for drone flight planning, and more. 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.

Brost, Randolph↗

Spinbox: tools for many-body quantum systems in a Monte Carlo context

Spinbox is a piece of software that facilitates quantum mechanical calculations relevant to Monte Carlo simulation of atomic nuclei. At the front lines of research on the nuclear many-body problem are a large number of supercomputer-scale simulation codes. These codes produce valuable results but can be hard to understand, especially for those without intimate knowledge of the relevant theoretical methods. Thus, tools that fill pedagogical roles are extremely valuable. Spinbox makes it easy for one to replicate and analyze the computational processes relevant to a Quantum Monte Carlo (QMC) simulation that may be difficult to understand/debug/analyze due to the scale of the corresponding simulation software. Spinbox is written in Python using other state-of-the-art Python modules for numerical calculations. While a number of Python libraries exist that are suited to general quantum many-body calculations, the motivation of Spinbox is quite particular. In Diffusion Monte Carlo methods (DMC, GFMC, AFDMC), the central calculation is the imaginary-time propagation of individual samples of the many-body wavefunction. Although quantum wavefunctions generally must be described by a probability distribution over a basis, DMC imbues particles (within one sample) with classical spatial coordinates. This method is unusual, so other Python packages are typically not set up to do this easily. Furthermore, the software has built-in options for nuclear systems assuming isospin symmetry, which can be set up with other libraries but is a nontrivial process to do so. Features: - numerical representation of samples of the many-body wavefunctions, including tensor-product states (used in AFDMC) - numerical representation of many-body operators, including tensor-product operators: general, spin, imaginary-time propagation, etc. - the correct associated arithmetic and algebra, implemented as class methods - classes for representing realistic nuclear two- and three-body Hamiltonians (e.g. Argonne V18, Illinois NNN) - large-scale parallel integration over random variables, crucial for the AFDMC method My goal is to make this package open source so that anyone may use it and contribute to it, particularly other researchers doing AFDMC calculations

Fox, Jordan↗

Mneme

A simple tool allowing recording the execution of a GPU (CUDA) kernel and replaying that kernel as an independent executable. The tool operates in 3 phases. During compile time the user needs to apply a provided LLVM pass to instrument the code. The pass detects all device global variables and device functions and stores this information with the respective LLVM-IR in the global device memory. The compilation generates a record-able executable. The second phase involves running the application executable with a desired input and using LD_PRELOAD to enable recording. When recording before invoking a device kernel the pre-loaded library stores device memory in persistent storage and associates the memory with the device kernel and an LLVM IR file. At the end of the recorded execution the pre-load library generates a database in the form of a JSON file containing information regarding the LLVM-IR files and the snapshots of device memory. During the third and last phase the user can replay the execution of an kernel as a separate independent executable. Besides executing it the user can modify the LLVM IR file and auto-tune parameters such as kernel launch-bounds or kernel runtime execution parameters (e.g. Kernel Block and Grid Dimensions). Is

Parasyris, Konstantinos↗

Gamma-ray Exportable Adjustable Spectrum Evolution

An initial number of fissions on a fissile/fissionable material, defined by ENDF library availability, is used to produce an initial inventory of fission products (FPs). The FPs are decayed using full, analytical solutions to the Bateman equations to calculate the FP inventory at a user-specified time. The radiation detector, a high-purity germanium (HPGe) detector, has been modeled using every gamma-ray in the ENDF/TENDL libraries individually, and the modeled response can be multiplied by the activity of each fission product to determine a full, energy dependent detector response, including dead time. The detector response can be output as a PeakEasy (.spe) file, or as a text file. Since each radioisotope's inventory is known, the proportion to the total may be shown for each isotope, as well as many radionuclides in a user-specified energy window. Full execution and display of results takes 1-3 seconds, depending on the complexity of the input parameters.

Holschuh, ThomasV [Idaho National Laboratory (INL)↗

BHResist [SWR-25-57]

BHResist is a pure python library for computing thermal resistance within single-u, double-u, and coaxial grouted borehole heat exchangers. For single and double u-tube configurations, the methods use the 1st-order closed-form multipole approximations, which typically produces results with less than 1% error when compared to the 10th-order multipole method. Coaxial borehole methods apply a simple 1D resistance network method. This is intended to be a lightweight library that can be easily imported into any other Python tool, with no bulky dependencies.

Mitchell, Matt [National Renewable Energy Laborato↗

Efficient Xml Interchange (exi) For Python (expy)

EXPy provides a native Python interface into the LF Energy EVerest V2G protocol stack. The protocol stack is implemented in C/C++ and compiled into shared object libraries. EXPy provides the Python Ctypes translation of the C/C++ libraries for use with pure Python software. This project eliminates the need for integrating Python with third-party communications applications and greatly reduces the code base and improves performance. The other major benefit is the ability for EXPy to support new EXI based protocols as additional V2G standards are produced (e.g. upgrade from ISO 15118-2 to ISO 15118-20).

Rohde, Kenneth [Idaho National Laboratory (INL), I↗

reVReports (Renewable Energy Potential(V) Reports Tool) [SWR-25-29]

The purpose of this library is to make it very simple to create standard, report-quality graphics that summarize the key results from multiple scenarios of reV supply curves. Refer to the Usage for documentation of how to use the library.

Gleason, Mike [Root Geospatial, LLC]↗

DetermineSystem

SAND2025-04092O DetermineSystem, an open-source utility library, determines the system name from a given supported_systems.ini file, the machine’s hostname, and the “give build” name. The library is part of the GenConfig family of modules. 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.

Braun, Joshua↗

Conin

SAND2025-07645O Conin is a Python library that supports constrained analysis of probabilistic graphical models (PGMs). It enables constrained inference and learning for hidden Markov models, Bayesian networks, dynamic Bayesian networks, and Markov networks. Conin interfaces with the pgmpy library to specify general probabilistic graphical models with a variety of optimization solvers to support learning and inference. 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.

Hart, William [Sandia National Lab. (SNL-CA), Live↗