Search NASA⌕ Search

SEARCH · Search NASA

Results for “Source Code”

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 19 records

CG-Kit: Code Generation Toolkit for performant and maintainable variants of source code applied to Flash-X hydrodynamics simulations

CG-Kit is a new Code Generation tool-Kit that we have developed as a part of the solution for portability and maintainability for multiphysics computing applications. The development of CG-Kit is rooted in the urgent need created by the shifting landscape of high-performance computing platforms and the algorithmic complexities of a particular large-scale multiphysics application: Flash-X. To efficiently use computing resources on a heterogeneous node, an application must have a map of computation to resources and a mechanism to move the data and computation to the resources according to the map. Most existing performance portability solutions are focussed on abstracting the expression of computations so that a unified source code can be specialized to run on different resources. However, such an approach is insufficient for a code like Flash-X, which has a multitude of code components that can be assembled in various permutations and combinations to form different instances of applications. Similar challenges apply to any code that has composability, where a single specified way of apportioning work among devices may not be optimal. Additionally, use cases arise where the optimal control flow of computation may differ for different devices while the underlying numerics remain identical. This combination leads to unique challenges including handling an existing large code base in Fortran and/or C/C++, subdivision of code into a great variety of units supporting a wide range of physics and numerical methods, different parallelization techniques for distributed and shared memory systems and accelerator devices, and heterogeneity of computing platforms requiring coexisting variants of parallel algorithms. All of these challenges demand that scientific software developers apply existing knowledge about domain applications, algorithms, and computing platforms to determine custom abstractions and granularity for code generation. There is a critical lack of tools to tackle those problems. CG-Kit is designed to fill this gap by providing a user with the ability to express their desired control flow and computation-to-resource map in the form a pseudocode-like recipe. It consists of standalone tools that can be combined into highly specific and, we argue, highly effective portability and maintainability toolchains. Here we present the design of our new tools: parametrized source trees, control flow graphs, and recipes. The tools are implemented in Python. They are agnostic to the programming language of the source code targeted for code generation. In conclusion, we demonstrate the capabilities of the toolkit with two examples, first, multithreaded variants of the basic AXPY operation, and second, variants of parallel algorithms within a hydrodynamics solver, called Spark, from Flash-X that operates on block-structured adaptive meshes.

Algorithmic portability↗

Software development environment and method of compiling integrated source code

A software development environment (SDE) and a method of compiling integrated source code. One embodiment of the SDE includes: (1) a parser configured to partition an integrated source code into a host code partition and a device code partition, the host code partition including a reference to a device variable, (2) a translator configured to: (2a) embed device machine code, compiled based on the device code partition, into a modified host code, (2b) define a pointer in the modified host code configured to be initialized, upon execution of the integrated source code, to a memory address allocated to the device variable, and (2c) replace the reference with a dereference to the pointer, and (3) a host compiler configured to employ a host library to compile the modified host code.

97 MATHEMATICS AND COMPUTING↗

Xanthos-Lake Model Source Code

This repository contains the source code for Xanthos-Lake, a lake-modeling extension of the Xanthos framework that introduces a coupled lake component comprising the Xanthos-Lake Snow and Ice Model (xLSIM) and the Xanthos-Lake Water Balance Model (xLWBM). xLSIM is a basin-aware machine-learning model for lake snow, ice, and thermal conditions. It predicts monthly lake ice thickness, snow depth, snow-cover fraction, mixing-layer temperature, and lake ice fraction from meteorological forcing and lake surface-area information. It uses sequence-based deep-learning architectures, including Transformer and hybrid Long Short-Term Memory–Transformer (LSTM–Transformer) models, together with seasonal encoding, multi-lake learning, physical masking, and basin-level cryospheric and non-cryospheric classification. The training workflow uses Ray for scalable execution and includes optional Ray Tune hyperparameter optimization. Model predictions, observations, diagnostics, and feature-importance outputs are written in NetCDF. xLWBM is the water-balance component of the new lake framework. It simulates monthly lake storage, surface area, evaporation, inflow, outflow, and lake–groundwater exchange. It combines physical water-balance equations with calibrated bathymetric relationships, weir-based outlet flow, modified Penman open-water evaporation, groundwater head relaxation, Penman–Monteith snow and ice sublimation, and snow, ice, and thermal conditions supplied by xLSIM. The model calibrates lake parameters against satellite-derived surface-area data, using evaporation-based calibration where surface-area data are unavailable, and supports small, medium, and large lake classes. For large lakes, xLWBM is integrated with the managed-routing workflow so that lake storage and outflow interact directly with downstream river routing and reservoir operations. Together, xLSIM and xLWBM provide Xanthos with a coupled lake-modeling capability. xLSIM supplies the snow, ice, and thermal conditions that affect lake evaporation and snow- and ice-related water exchanges, while xLWBM translates those conditions into dynamic lake storage, surface area, evaporation, and discharge. In return, xLWBM supplies evolving lake surface area to xLSIM. This coupling enables Xanthos to represent lakes as active hydrologic components within basin-scale water-availability and routing simulations.

Machine Learning↗

Path-synchronous performance monitoring of interconnection networks based on source code attribution

Examples disclosed herein relate to path-synchronous performance monitoring of an interconnection network based on source code attribution. A processing node in the interconnection network has a profiler module to select a network transaction to be monitored, determine a source code attribution associated with the network transaction to be monitored, and issue a network command to execute the network transaction to be monitored. A logger module creates, in a buffer, a node temporal log associated with the network transaction and the network command. A drainer module periodically captures the node temporal log. The processing node has a network interface controller to receive the network command and mark a packet generated for the network command to be temporally tracked and attributed back to the source code attribution at each hop of the interconnection network traversed by the marked packet.

Chabbi, Milind M.↗

Searchlight Source Code

SAND2024-01982O The Searchlight Source Code is software for creating, managing, and dismantling experiments. It also is a simple web server that mimics an online training module with scripts to automate a client. 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.

Robinson, Matthew↗

Manuscript model outputs, model source code, and figure scripts: The role of geomorphology in mediating biomass allocation impacts on salt-marsh resilience and carbon accumulation

This data package provides model source code (C++), model outputs, and figure generation scripts (R) needed to reproduce the following manuscript: Bruns, Nicholas E., Genevieve L. Noyce, and Matthew L. Kirwan. "The Role of Geomorphology in Mediating Biomass Allocation Impacts on Salt-Marsh Resilience and Carbon Accumulation." Estuarine, Coastal and Shelf Science 327 (December 2025): 109549. https://doi.org/10.1016/j.ecss.2025.109549. This manuscript investigates how geomorphology mediates the impact of biomass allocation shifts on salt marsh persistence and carbon (C) sequestration under sea level rise. We use a 1-D soil-column model (Kirwan and Mudd 2012) to perform experiments across a range of static root:shoot ratios (RSR = 1-4) spanning observed values. The model explicitly simulates interactions between tidal inundation, productivity, inorganic sediment deposition, and organic matter accumulation. Experiments determine whether geomorphic feedbacks amplify, dampen, or leave unchanged the ecosystem response to biomass allocation shifts. A first experiment uses constant sea level rise (2.5 mm/yr) to examine equilibrium dynamics and their influence on carbon accumulation rates across different suspended sediment concentrations (SSC). A second set of experiments calculates threshold sea level rise rates for marsh drowning across RSR and SSC combinations. Final experiments apply accelerating sea level rise scenarios (2000-2200) derived from NOAA projections (Sweet et al. 2022) to generate an envelope of expected responses, quantifying the importance of biomass allocation shifts on marsh carbon accumulation and persistence. All experiments are repeated across SSC ranging from 5-50 mg/L to investigate how these interactions vary in micro-tidal marshes with different sediment supplies. Package contents: * README.txt with detailed description of package contents and instructions for reproducing manuscript figures and model outputs * R scripts for generating all manuscript figures * C++ baseline model code from Kirwan and Mudd (2012) * C++ source code for 4 experimental model variants used in the manuscript, extending above baseline code * Model input files (.csv, .txt) including sea level rise scenarios * Model output files (.txt) used in manuscript analyses Temporal coverage: Model simulations span years 1900-2200, with accelerating sea level rise scenarios for 2000-2200. Key variables: Root:shoot ratio, suspended sediment concentration, carbon accumulation rate, vertical accretion rate, marsh elevation, inundation depth, threshold sea level rise rate.

54 ENVIRONMENTAL SCIENCES↗

Build Guide for the Geophysical Monitoring System (GMS) Common Source Code 2019 Release

This document provides a "Build Guide" for a Generic Runnable System (GRS) of the Geophysical Monitoring Systems (GMS) common source code. This guide includes a list of software dependencies and licenses, hardware specifications, and instructions for how to build the system from the source code. The document is written for individuals who are experienced as administrators of Linux systems.

58 GEOSCIENCES↗

Preliminary Build Guide for the Geophysical Monitoring Systems Common Source Code. 2019 Release

The purpose of this document to provide an advance copy of a "Build Guide" for a Generic Runnable System (GRS) of the Geophysical Monitoring Systems' (GMS) common source code. This guide includes a list of software dependencies and licenses, hardware specifications, and related instructions for how to build the system from the source code. The document is written for individuals who are experienced as administrators of Linux systems. The intention is to support preparation activities prior to the open source release so that dependencies may be in place to build and run the system. This document will be updated and provided with the open source release on GitHub, accompanied by a "Run Guide" for the system. An additional "Configuration Guide" will also be provided after the open source release so that users may explore system configuration options.

58 GEOSCIENCES↗

MBMS1.0: An Open-Source Code for Modeling and Simulation of Membrane-Based Dehumidification and Energy Recovery

Membrane-based dehumidification is currently being considered as a promising solution for the building application due to its low cost and very limited energy consumption. Developing a simple and efficient open-source code simulation tool is important for boosting the optimization and evaluation of such device in HVAC community. This paper reports a first-order physics based model which accounts for the fundamental heat and mass transfer of humid-air vapor at feed side to flow stream at permeate side. The current model comprises two membrane mass transfer submodels (i.e. microstructure model and performance map model); and it adopts a segment-by-segment methodology for discretizing heat and mass transfer governing equations. The model is capable of simulating both dehumidifiers and energy recovery ventilators with parallel-flow cross-flow, and counter-flow configurations. The model was validated with the measurements at appropriate device. The practices in dehumidification and energy recovery exchangers are also discussed. The model and open-source codes are expected to become a solid fundament for developing a more comprehensive and accurate membrane-based dehumidification in the future.

Gao, Zhiming↗

Review of the 1st EUV Light Sources Code Comparison Workshop

We review the results of the 1 st Extreme Ultraviolet (EUV) Light Sources Code Comparison Workshop. The goal of this workshop was to provide a platform for specialists in EUV light source plasma modeling to benchmark and validate their numerical codes using well-defined case studies. Detailed consideration of a plethora of atomic collisional and radiative processes is required for modeling EUV light source plasmas. Eight institutions spanning four countries contributed data to the workshop. Two topics were addressed, namely (i) the atomic kinetics and radiative properties of tin plasmas under EUV-generating conditions and (ii) laser absorption in a fully ionized, one-dimensional hydrogen plasma. In this paper, we summarize the key findings of the workshop and outline plans for future iterations of the code comparison activity.

70 PLASMA PHYSICS AND FUSION TECHNOLOGY↗

Contributing to Sunny open source code

The Sunny package is an existing open source software to support the simulation of magnetic spin systems. It is available online under the MIT license here: https://github.com/SunnySuite/Sunny.jl The package aims to include the following features: - Analysis for symmetry-allowed interactions - Monte Carlo algorithms for simulating equilibrium configurations. - Schemes for integrating spin dynamics. - Inference of model Hamiltonians - Support for generalized SU(N) spins - Tools for interpreting experimental data, such as diffraction data, magnetization curves, and heat capacity data

Barros, Kipton↗

Do Programmers Prefer Predictable Expressions in Code?

Source code is a form of human communication, albeit one where the information shared between the programmers reading and writing the code is constrained by the requirement that the code executes correctly. Programming languages are more syntactically constrained than natural languages, but they are also very expressive, allowing a great many different ways to express even very simple computations. Still, code written by developers is highly predictable, and many programming tools have taken advantage of this phenomenon, relying on language model surprisal as a guiding mechanism. Additionally, while surprisal has been validated as a measure of cognitive load in natural language, its relation to human cognitive processes in code is still poorly understood. In this paper, we explore the relationship between surprisal and programmer preference at a small granularity—do programmers prefer more predictable expressions in code? Using meaning-preserving transformations, we produce equivalent alternatives to developer-written code expressions and run a corpus study on Java and Python projects. In general, language models rate the code expressions developers choose to write as more predictable than these transformed alternatives. Then, we perform two human subject studies asking participants to choose between two equivalent snippets of Java code with different surprisal scores (one original and transformed). We find that programmers do prefer more predictable variants, and that stronger language models like the transformer align more often and more consistently with these preferences.

97 MATHEMATICS AND COMPUTING↗

DMFTwDFT: An open-source code combining Dynamical Mean Field Theory with various density functional theory packages

We report Dynamical Mean Field Theory (DMFT) is a successful method to compute the electronic structure of strongly correlated materials, especially when it is combined with density functional theory (DFT). Here, we present an open-source computational package (and a library) combining DMFT with various DFT codes interfaced through the Wannier90 package. The correlated subspace is expanded as a linear combination of Wannier functions introduced in the DMFT approach as local orbitals. In particular, we provide a library mode for computing the DMFT density matrix. This library can be linked and then internally called from any DFT package, assuming that a set of localized orbitals can be generated in the correlated subspace. The existence of this library allows developers of other DFT codes to interface with our package and achieve the charge-self-consistency within DFT+DMFT loops. To test and check our implementation, we computed the density of states and the band structure of well-known solid-state correlated materials, namely LaNiO, SrVO, and NiO. The obtained results are compared to those obtained from other DFT+DMFT implementations.

71 CLASSICAL AND QUANTUM MECHANICS, GENERAL PHYSIC↗