Search NASA⌕ Search

SEARCH · Search NASA

Results for “python wrapper”

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.

50 records · Page 3

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↗

IMG Annotation Pipeline (IMGAP) v5.1.13

The IMG Annotation Pipeline is a collection of Bash and Python scripts to control a workflow for structural and functional annotation of prokaryotic genomes, metagenomes, and metatranscriptomes. The bash scripts in general control the overall workflow and are wrappers around 3rd party executables (not included in repo) that predict features or functions. Whereas the Python scripts do post-processing of raw output in terms of filtering or format transformation and in some cases contain some logic for picking the correct predictions or resolving overlaps. The pipeline is tailored to produce results required by IMG (https://img.jgi.doe.gov/) and is executed on every dataset submitted to IMG via https://img.jgi.doe.gov/submit. These consist of internal genomes, metagenomes and metatranscriptomes sequenced and assembled at the JGI, as well as datasets submitted by external users (non-lab/JGI affiliates).

Huntemann, Marcel↗

dbprocessing

dbprocessing is a python framework for automating data processing pipelines. The dbprocessing package uses a configuration file to define the input, intermediate, and output data products for a particular data type as well as the processes that connect those data products. In addition, dbprocessing uses python scripts called inspectors to determine if a particular file matches a configured data product. If a particular data product is found, it is ingested into the dbprocessing database (sqlite3 or postgres) which then triggers all of the chained processes to the final data product. While the framework is written in python, it can run software in any language but may require a “wrapper” to translate the dbprocessing command line arguments to the form expected by the software.

Walker, Andrew↗

Catching Rays: How Bifacial_Radiance Sheds Light on the Future of Solar PV

The challenge of energy transition is immediate and immense, with current projections targeting 75 TW of photovoltaics (PV) capacity globally by 2050. Alongside the rapid deployment is the "solar-coaster" ride the PV industry experiences with evolving technologies and novel installation methods. In 2016, NREL developed bifacial_radiance, a python open-source modeling tool for bifacial PV. This tool is a wrapper of the raytracing engine Radiance, which you all know better than us at this workshop. Bifacial_radiance integrates the many characteristics of common PV systems to model irradiance on both the front and rear sides of bifacial PV technology - a technology that now represents 75% of utility-scale deployment in the US. Bifacial_radiance has been pivotal for understanding bifacial system performance, shading, and edge effects, and now agrivoltaics research. It has also helped develop simplified models used in PV due diligence tools for optimizing new deployments or evaluating the performance of existing projects. Now, it's the go-to comparison tool for many university, and industry-developed systems modeling tools, and a pivotal tool for further research in photovoltaics. This talk will cover the needs bifacial_radiance addresses as an open-source tool, its development path, and the opportunity for any raytracer to shine light on the solar industry through research and practical application of modeling in regular site installations and novel setups like agrivoltaics and vertical panels at high latitudes (and even the South Pole!).

agrivoltaics↗

ZPAL v.1.0.0

SAND2024-01003O ZPAL is a Python software development kit designed for use by network automation engineers. It is an application programming interface (API) wrapper that is compatible with ZPE System's Nodegrid API. ZPE produces networking equipment. ZPAL simplifies connections to the ZPE Nodegrid API and makes configuration changes on the associated networking equipment. 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.

Hill, Roscoe↗

Analysis of Neural Networks as Random Dynamical Systems

In this report we present our findings and outcomes of the NNRDS (analysis of Neural Networks as Random Dynamical Systems) project. The work is largely motivated by the analogy of a large class of neural networks (NNs) with a discretized ordinary differential equation (ODE) schemes. Namely, residual NNs, or ResNets, can be viewed as a discretization of neural ODEs (NODEs) where the NN depth plays the role of the time evolution. We employ several legacy tools from ODE theory, such as stiffness, nonlocality, autonomicity, to enable regularization of ResNets thus improving their generalization capabilities. Furthermore, armed with NN analysis tools borrowed from the ODE theory, we are able to efficiently augment NN predictions with uncertainty overcoming wellknown dimensionality challenges and adding a degree of trust towards NN predictions. Finally, we have developed a Python library QUiNN (Quantification of Uncertainties in Neural Networks) that incorporates improved-architecture ResNets, besides classical feed-forward NNs, and contains wrappers to PyTorch NN models enabling several major classes of uncertainty quantification methods for NNs. Besides synthetic problems, we demonstrate the methods on datasets from climate modeling and materials science.

97 MATHEMATICS AND COMPUTING↗

pyndev v0.2.0

Pyndev is development wrapper over a proprietary network automation framework name Cisco NSO. NSO consists of developer created and maintained packages that are flat and fragile. Pyndev translates these artifacts to pure python packages that can then be managed with modern Python tooling.

Stephens, William [Lawrence Berkeley National Labo↗

Rotorcraft Optimization Tools: Incorporating Rotorcraft Design Codes into Multi-Disciplinary Design, Analysis, and Optimization

One of the goals of NASA's Revolutionary Vertical Lift Technology Project (RVLT) is to provide validated tools for multidisciplinary design, analysis and optimization (MDAO) of vertical lift vehicles. As part of this effort, the software package, RotorCraft Optimization Tools (RCOTOOLS), is being developed to facilitate incorporating key rotorcraft conceptual design codes into optimizations using the OpenMDAO multi-disciplinary optimization framework written in Python. RCOTOOLS, also written in Python, currently supports the incorporation of the NASA Design and Analysis of RotorCraft (NDARC) vehicle sizing tool and the Comprehensive Analytical Model of Rotorcraft Aerodynamics and Dynamics II (CAMRAD II) analysis tool into OpenMDAO-driven optimizations. Both of these tools use detailed, file-based inputs and outputs, so RCOTOOLS provides software wrappers to update input files with new design variable values, execute these codes and then extract specific response variable values from the file outputs. These wrappers are designed to be flexible and easy to use. RCOTOOLS also provides several utilities to aid in optimization model development, including Graphical User Interface (GUI) tools for browsing input and output files in order to identify text strings that are used to identify specific variables as optimization input and response variables. This paper provides an overview of RCOTOOLS and its use

Analysi↗

Framework for X-ray mirror surface shape fitting

For accurate characterization of grazing-incidence X-ray mirrors, we present a comprehensive framework to fit measured surface shapes (either slope or height) of X-ray mirrors used in synchrotron radiation and free-electron laser facilities. We summarize the closed-form expressions of some typical surface shapes of X-ray mirrors including elliptic cylinders, hyperbolic cylinders, ellipsoids, hyperboloids, and diaboloids. This framework is composed of four layers: definition of standard shapes with closed-form expressions, generation of theoretical surface with pose parameters (six degrees of freedom defining an object's position and orientation relative to a coordinate system), parameter optimization with the ability to select which parameters are fit and which are held constant, and the development of user-friendly fitting function wrappers for particular fitting tasks. A few practical fitting examples are demonstrated to verify the effectiveness of the proposed fitting framework. We discuss the physical meanings of the fitting parameters, and provide several examples using the elliptic cylinder and ellipsoid shapes to highlight some features of the framework. Moreover, we provide the presented framework as open-source codes (MATLAB and Python codes available at https://github.com/nsls2omf/xmf) to the community to encourage academic collaboration and further improvements.

36 MATERIALS SCIENCE↗

Waveform Simulation Framework: User Manual with Tutorials

This manuscript describes the Waveform Simulation Framework (WSF), a Python-based framework that provides a unified, programmable interface for generating synthetic seismograms for applications such as seismic array design, method development, and special event analysis. WSF standardizes how users define sources, receivers, and velocity models while abstracting simulator-specific configuration details, enabling workflows that are largely independent of the underlying numerical engine. The document provides installation guidance and tutorial-driven examples for three WSF simulator wrappers—WSF PyFK, WSF SW4, and WSF SPECFEM2D—illustrating end-to-end workflows from forward waveform simulation to common post-processing tasks (e.g., visualization and backprojection) using consistent data products (e.g., ObsPy Stream objects and SAC files).

97 MATHEMATICS AND COMPUTING↗

RAFT (Response Amplitudes of Floating Turbines) [SWR-22-40]

RAFT is a Python code for frequency-domain analysis of floating wind turbines. RAFT works in the frequency domain to provide efficient computations of a floating wind system's response spectra accounting for platform hydrodynamics, quasi-static mooring reactions, rotor aerodynamics, and linearized control. It can be used to calculate response amplitude operators (RAO's), power spectral densities, mean/static properties, and response metrics based on mean and root-mean-square values of each output. RAFT serves as the Level 1 model in the WEIS (Wind Energy with Integrated Servo-control) toolkit, and features an OpenMDAO wrapper.

Hall, Matthew↗

SEAS Communication Engine: An Extensible, Flexible Wrapper for Co-Simulation Agents

When modeling and analyzing the power grid and other large scale systems, researchers often express scenarios as optimization problems and feed them into advanced software solvers. In order to allow multiple solvers to communicate with each other and share data from different domains, the National Renewable Energy Laboratory (NREL) and associated Department of Energy (DOE) labs have developed a software framework called the Hierarchical Engine for Large-scale Infrastructure Co-Simulation (HELICS). HELICS allows cosimulation via a collection of client libraries for different languages that can be called from the appropriate optimization software. However, these client libraries do not provide a higher level of abstraction beyond reading and writing data off of the shared HELICS bus. In this paper, we describe a new software library called the SEAS Communication Engine that exposes a higher-level API for running cosimulation problems. The SEAS Engine provides a class-based abstraction on top of the Python HELICS client, in order to allow users to implement their domain-specific cosimulations without needing to interact with core HELICS primitives. This will make adoption of HELICS and cosimulation in general easier, by exposing a simpler API. In the second part of the paper, we validate our library on a collection of different simulation examples, including the canonical IEEE 13 Bus Feeder. Lastly, we demonstrate using the SEAS Engine to directly call domain-specific code written in the Julia programming language. Our hope is that this will serve as a template for easily calling software in different programming languages via the SEAS Engine, thereby avoiding code duplication and complexity.

co-simulation↗

MVP: a modular viromics pipeline to identify, filter, cluster, annotate, and bin viruses from metagenomes

While numerous computational frameworks and workflows are available for recovering prokaryote and eukaryote genomes from metagenome data, only a limited number of pipelines are designed specifically for viromics analysis. With many viromics tools developed in the last few years alone, it can be challenging for scientists with limited bioinformatics experience to easily recover, evaluate quality, annotate genes, dereplicate, assign taxonomy, and calculate relative abundance and coverage of viral genomes using state-of-the-art methods and standards. Here, we describe Modular Viromics Pipeline (MVP) v.1.0, a user-friendly pipeline written in Python and providing a simple framework to perform standard viromics analyses. MVP combines multiple tools to enable viral genome identification, characterization of genome quality, filtering, clustering, taxonomic and functional annotation, genome binning, and comprehensive summaries of results that can be used for downstream ecological analyses. Overall, MVP provides a standardized and reproducible pipeline for both extensive and robust characterization of viruses from large-scale sequencing data including metagenomes, metatranscriptomes, viromes, and isolate genomes. As a typical use case, we show how the entire MVP pipeline can be applied to a set of 20 metagenomes from wetland sediments using only 10 modules executed via command lines, leading to the identification of 11,656 viral contigs and 8,145 viral operational taxonomic units (vOTUs) displaying a clear beta-diversity pattern. Further, acting as a dynamic wrapper, MVP is designed to continuously incorporate updates and integrate new tools, ensuring its ongoing relevance in the rapidly evolving field of viromics. MVP is available at https://gitlab.com/ccoclet/mvp and as versioned packages in PyPi and Conda.

59 BASIC BIOLOGICAL SCIENCES↗

ORNL_AISD-Ex: Quantum chemical prediction of UV/Vis absorption spectra for over 10 million organic molecules

We performed calculations of electronic excitation energies and associated oscillator strengths based on the time-dependent density-functional tight-binding (TD-DFTB) method [1]. The SMILES (Simplified molecular-input line-entry system) strings of the molecules from the AISD HOMO-LUMO database [2] were converted to a 3D atomistic structure and stored in a PDB file after preliminary geometry optimization using the Merck Molecular Force Field (MMFF94) in RDKit [3,4]. The primary information stored in the PDB file archive consists of Cartesian coordinates for each atom of the molecule in their 3D location in space, along with summary information about the structure, sequence, and experiment. We then performed molecular geometry optimization using the density-functional tight-binding (DFTB) method [5] in the electronic ground state, followed by single-point excited states calculations, as described below. We note that, since RDKit employs a random choice for the generation of molecular conformers, the molecular geometries obtained in this dataset could be different from the ones that were generated when the AISD HOMO-LUMO dataset was generated. The computed excitation energies and associated oscillator strengths can be converted to predict UV/Vis absorption spectra, where excitation energies correspond to absorption peak positions, and oscillator strengths are a good measure of the probability of absorption of visible or UV light in transitions between electronic ground and excited states. The conversion of SMILES strings to 3D Cartesian coordinates of fully DFTB-optimized molecules was successful for 10,502,904 out of 10,502,917 molecules. For these molecules, both geometry optimizations and excited states calculations were successful. The DFTB calculations did not complete for 13 molecules of the original AISD HOMO-LUMO dataset. We still provide information about the geometry of these molecules. The molecules are diverse for chemical compositions (which span 5 non-hydrogen elements: oxygen, carbon, nitrogen, fluorine, sulfur) and molecular size (the smallest molecule contains 5 non-hydrogen atoms, and the largest molecule contains 71 non-hydrogen atoms). The DFTB method [5] is an approximation to density functional theory (DFT), utilizing a minimal basis set in conjunction with a two-center approximation to the electronic Hamiltonian and overlap matrix elements. The DFTB total energy is the sum of an electronic and a repulsive energy contribution, and their calculation requires optimized electronic parameters and diatomic repulsive potential energy functions. All DFTB calculations were performed using the DFTB+ code [6] (version 21.2) and the wrapper for DFTB+ in the Atomic Simulation Environment (ASE) (version 3.22.1) [7], which performed an internal conversion of Cartesian coordinates from PDB to the .gen file format. For the geometry optimizations on the electronic ground state potential energy surface of the molecules, we have chosen the third-order DFTB (DFTB3) method [5c] and employed the matching 3ob set of electronic parameters and repulsive potentials [8]. The empirical γ-damping for hydrogen bond correction, and Grimme's D3 empirical dispersion correction with Becke-Johnson damping (D3(BJ)) [9] dispersion correction was included to improve the description of non-covalent interactions. For excited states single-point energy calculations, we employed the TD-DFTB method in conjunction with the DFTB2 method [5b] and the matching mio [5b,10] and halorg [11] parameter sets. We opted to request the simultaneous calculation of 50 excited states for singlet transition to investigate sufficient number of excited states, based on linear response theory using the Casida equation [Ref: T. A. Niehaus, S. Suhai, F. Della Sala, P Lugli, M. Elstner, G. Seifert, and Th. Frauenheim. Tight-binding approach to time-dependent density-functional response theory. Phys. Rev. B, 63:085108, 2001] and the ARPACK diagonalizer [R. B. Lehoucq, D. C. Sorensen, and C. Yang. Arpack users guide: Solution of large-scale eigenvalue problems by implicitly restarted arnoldi methods, 1997. 46, 51]. The dataset contains 1001 tar.gz files. Tar files are named as “ornl_aisd_ex_1.tar.gz†through “ornl_aisd_ex_1000.tar.gzâ€. Additionally, the 13 failed molecules are in “ornl_aisd_ex_unprocessed.tar.gzâ€. Except for the tar files listed below, each tar file contains 10,500 molecules. Tar files numbered 34, 121, 128, 352, 360, 429, 495, 509, 518, 627, 676, 668, and 862 contain 10,499 molecules each. The last tar file numbered 1000 contains 13,417 molecules. The total size of the uncompressed dataset is over 283 Gigabytes. The code for calculating the electronic excitation energies and statistical analysis of the dataset is provided at the following GitLab repository: https://github.com/ORNL/Analysis-of-Large-Scale-Molecular-Datasets-with-Python Calculating the UV spectrum of a molecule requires performing 3 main operations: 1. Converting the smiles string representation of a molecule into a geometric structure where each atom is assigned XYZ coordinates. The geometric structure is written to the file smiles.pdb. 2. Using smiles.pdb to compute the relaxed geometry of the molecule, which corresponds with the position of the atoms at the position of equilibrium at the ground state. This generates the files band.out, detailed.out, and geo_end.gen. 3. Using geo_end.gen to calculate the UV spectrum of the molecule which is written into the file EXC.DAT. Every molecule in the dataset has its own directory. The files contained in each molecule directory are as follows: 1. geo_end.gen 2. detailed.out 3. band.out 4. EXC.DAT 5. smiles.pdb REFERENCES [1] Niehaus, T. A.; Suhai, S.; Della Salla, F.; Lugli, P.; Elstner, M.; Seifert, G.; Frauenheim, Th. Tight-binding approach to time-dependent density-functional response theory. Phys. Rev. B, 2001, 63, 085108/1-9. [2] Blanchard, A.; Gounley, J.; Metha, K.; Yoo, P.; Irle, S. AISD HOMO-LUMO. DOI: 10.13139/ORNLNCCS/1869409 [3] RDKit: Cheminformatics and Machine Learning Software. 2013, [http://www.rdkit.org] [4] Tosco, P.; Stiefl, N. and Landrum, G. Bringing the MMFF force field to the RDKit: implementation and validation. J Cheminform. 2014, 6, 1–4. [5] a) Porezag, D.; Frauenheim, T.; Kohler, T.; Seifert, G.; Kaschner, Construction of tight-binding-like potentials on the basis of density-functional theory: Application to carbon, R. Phys. Rev. B 1995, 51, 12947-12957; b) Elstner, M.; Porezag, D.; Jungnickel, G.; Elsner, J.; Haugk, M.; Frauenheim, Th.; Suhai, S.; Seifert, G.; Phys. Rev. B 1998, 58, 7260-7268; c) Gaus, M.; Cui, Q.; Elstner, M. DFTB3: Extension of the Self-Consistent-Charge Density-Functional Tight-Binding Method (SCC-DFTB), J. Chem. Theory Comput. 2011, 7, 931-948; d) Cui, Q.; Elstner, M. Density functional tight binding: values of semi-empirical methods in an ab initio era, Phys. Chem. Chem. Phys. 2014, 16, 14368-14377. [6] Hourahine, B. et al. DFTB+, a software package for efficient approximate density functional theory based atomistic simulations, J. Chem. Phys. 2020, 152, 124101/1-19. [7] Larsen, A. H. et al. The atomic simulation environment—a Python library for working with atoms. J. Phys.: Cond. Matter 2017, 29, 273002. [8] Kubillus, M.; Kubar, T.; Gaus, M.; Rezac, J.; Elstner, M. Parameterization of the DFTB3 Method for Br, Ca, Cl, F, I, K, and Na in Organic and Biological Systems, J. Chem. Theory Comput. 2015, 11, 332-342. [9] Brandenburg, J. G.; Grimme, S. Accurate Modeling of Organic Molecular Crystals by Dispersion-Corrected Density Functional Tight Binding (DFTB), J. Phys. Chem. Lett. 2014, 5, 1785−1789. [10] a) Niehaus, T. A.; Elstner, M.; Frauenheim, Th.; Suhai, S. Application of an approximate density-functional method to sulfur containing compounds. J. Mol. Struct.: THEOCHEM 2001, 541, 185-94; b) Elstner, M.; Hobza, P.; Frauenheim, Th.; Suhai, S.; Kaxiras, E. Hydrogen bonding and stacking interactions of nucleic acid base pairs: A density-functional-theory based treatment. J. Chem. Phys. 2001, 114, 5149-55. [11] Kubar, T.; Bodrog, Z.; Gaus, M.; Köhler, C.; Aradi, B.; Frauenheim, Th.; Elstner, M. Parametrization of the SCC-DFTB Method for Halogens. J. Chem. Theory Comput. 2013, 9, 2939-49.

36 MATERIALS SCIENCE↗