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 955 records · Page 53

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↗

Grafana Plugin: Chord Diagram (esnet-chord-diagram) v1

The Esnet chord diagram is a plugin to the open source Grafana platform which lets users create chord diagrams based on data queried from configured data sources. Its designed as a general purpose chord visualization, which we often use internally to show quantitative relationships between network customers. The software itself uses the d3.js library to generate visuals and its primary value is making it easy to use these within Grafana. Graphing library Here: https://github.com/d3/d3-chord ISC License Grafana https://github.com/grafana/grafana AGPL3.0

Balas, Edward↗

cldera-tools

SAND2025-03848O CLDERA-Tools is a small library for performing online calculation of quantity of interest derived from variables in the host application. The library stores pointers to the arrays of variables of the host model and uses them at every timestep to compute desired quantity of interests (prescribed via yaml input 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.

Watkins II, Jerry↗

NetDuid

SAND2025-00238O The NetDuid library is a software tool that can manage and manipulate DHCP Unique Identifiers (DUIDs) in .NET applications. It simplifies the process of working with DUIDs by offering functionalities such as parsing, constructing, comparing, checking equality, and formatting DUIDs. The library supports various types of DUIDs, making it easier for developers to handle these identifiers in their applications. The program fills a gap in the .NET/C# ecosystem by providing a specialized tool for managing DHCP Unique Identifiers, offering a straightforward and efficient solution for developers. 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.

Engelhardt, Robert↗

kynema-fmb [SWR-23-07]

Kynema-FMB (FKA: Kynema) is an open-source performance portable flexible multibody (FMB) dynamics solver designed for time-domain simulations. While originally tailored for wind turbine structural dynamics, the formulation and implementation are those of a general flexible-multidbody dynamics solver that can readily be applied to a wide range of systems. Kynema was designed with a narrow focus, namely to provide a lightweight, fast, accurate FMD solver for coupling to computational-fluid-dynamics (CFD) codes, especially the CFD codes in the Kynema suite, for fluid-structure-interaction (FSI) simulations. Kynema-FMB is equipped to model systems that can be represented as a collection of beams and rigid bodies that are connected through constraints. Degrees of freedom are defined in the inertial/global frame of reference and include displacements and rotations (formally as rotation matrices, but stored as quaternions). The underlying formulation is built on a Lie-group time integrator designed for index-3 differential-algebraic equations, which is second-order accurate in time (Bruls et al., 2012). Beam models are based on geometrically exact beam theory and are discretized as high-order spectral finite elements similar to those in BeamDyn (Wang et al., 2017). The governing equations for a FMD system like a wind turbine constitute a highly nonlinear system of constrained partial-differential equations. Kynema-FMB uses analytical Jacobians in the nonlinear-system solves in each time step. Linear systems use sparse storage and several third-party sparse-linear-system solvers are enabled. Ill conditioning of linear systems is mitigated with preconditioning described in Bottasso et al, 2008. Kynema-FMB is integrated with a simple open-source controller (ROSCO). There is an application programming interface (API) for coupling to geometry-resolved CFD (like that in Sharma et al., 2023) and actuator-force CFD (like that in Kuhn et al., 2025). In the latter, for actuator-line models, Kynema-FMB includes an internal blade-element solver that depends on user-provided lookup tables for coefficients of lift and drag, i.e., aerodynamic polars. Kynema-FMB is written in C++ and leverages Kokkos and Kokkos-Kernels (KokkosEcosystem) as its performance portability layer enabling simulations on both CPU and GPU systems. The repository is equipped with extensive automated testing at the unit and regression/system levels. The following describes the high-level development objectives conceived for Kynema: *Kynema will follow modern software development best practices, including test-driven development (TDD), version control, hierarchical automated testing, and continuous integration (CI) for a robust development environment. *The core data structures are memory efficient and enable vectorization and parallelization at multiple levels. *Data structures are data-oriented to exploit methods for accelerated computing including high utilization of chip resources (e.g., single instruction multiple data (SIMD) instruction sets) and parallelization using GP-GPUs. *The computational algorithms incorporate robust open-source libraries for mathematical operations, resource allocation, and data management. *The API design considers multiple stakeholder needs and ensure integration with existing and future ecosystems for data science, machine learning, and AI. *Kynema-FMB is written in modern C++ and leverages Kokkos as its performance-portability library with inspiration from the kynema stack.

Sprague, MichaelA.↗

SetEnvironment

SAND2025-11727O SetEnvironment software is a utility library module that uses ConfigParserEnhanced, also a library module, to read specifically formatted .ini files for setting the user's environment. It creates a consistent environment with an expected set of variables and module loads, which is important for testing. Environment variable operations include set, append, prepend, unset, remove, and others and uses the Python os.environ methods. The module operations are performed with a wrapper. Systems using the Lmod package can generate a module function, which can also perform module operations specified in the text file. 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.

McLendon III, William↗