Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “PYTHON”

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,297 records · Page 72

Rattlesnake Vibration Controller v.2.0

SAND2021-7300 O The Rattlesnake Vibration Controller is a combined-environments, multiple input/multiple output control system for dynamic excitation of structures under test. It provides capabilities to control multiple responses on the part using multiple exciters and control strategies. Rattlesnake is written in the Python programming language to facilitate multiple input/multiple output vibration research by allowing users to prescribe custom control laws to the controller. Rattlesnake can target multiple hardware devices, or even perform synthetic control to simulate a test virtually. Rattlesnake has been used to execute control problems with up to 200 response channels and 12 drives. 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.

Rohe, Daniel↗

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↗

GET-Solar (Generation forecasting and parameter Estimation Tool for Solar) [SWR-20-115]

GET-Solar (Generation forecasting and parameter Estimation Tool for Solar) can be used to estimate behind the meter (BTM) solar generation from limited datasets. Using distributed sets of diverse solar sites, but with close spatial proximity, and/or limited historical PV generation information can be used to generate of solar profiles. This is useful for applications where partial solar generation data is available, and on-site irradiance data is not available. GET-Solar calculates PV technical data parameters and calculates output by modeling shading and cloud cover impacts. Clear sky irradiance profiles are used to calculate base generation profiles on which the local shading and cloud cover layers are added. In order to arrive at clear sky generation data, PV mounting information like panel tilt and and angle is needed. For cases where PV mounting information is missing, panel tilt and azimuth angle can be estimated using a non-linear optimization algorithm. GET-Solar can also be used for forecasting applications where historical PV data is available to estimate local shading at various solar positions. This overall framework can be used for estimation of solar parameters, and assisting in analyzing and modeling diverse sets of DER where solar generation is also present in utility meter data. GET-Solar has been developed in Python and uses the Pyomo optimization language.

Abraham, Sherin Ann↗

PyTREES

PyTREES (Python tool for Training/Testing Robust Explainable Ensembles on Spectra) is software that implements a data-driven approach to predicting the amount of specific oxides present in materials samples of laser-induced breakdown spectroscopy (LIBS); such as from the ChemCam instrument suite onboard the NASA Curiosity rover. PyTREES is designed to input LIBS data in the format provided by the ChemCam team [1]. PyTREES then applies appropriate pre-processing to this data [2], and implements several regression methods for predicting oxides from spectra. The regression methods include: ensemble methods (random forest, extra trees, and gradient boosting regression) and blended submodels using the “double blending” technique. PyTREES additionally implements methods for quantifying the importance of features in regression model: (1) mean decrease in impurity (MDI) and (2) permutation importance to investigate the wavelengths used by the regression methods. [1] Gasda et al. (2021). Spectrochim Acta B, 181, 106223. [2] Clegg et al. (2017). Spectrochim Acta B , 129, 64–85.

Oyen, Diane↗

CyMEpy [SWR-21-20]

CYMEpy is a high-level Python package that provides users HELICS bindings for CYMEDIST, CYME’s distribution system simulator.

Latif, Aadil↗

Hybrid-RL-MPC4CLR (Hybird-Reinforcement-Learning-Model-Predictive-Control-for-Reserve-Policy-Assisted-Critical-Load-Restoration-in-Distribution-Grids)

Hybrid-RL-MPC4CLR was developed as a hybrid controller for active distribution grid critical load restoration, combining deep reinforcement learning (RL) and model predictive control (MPC) aiming at maximizing total restored load following an extreme event. The RL determines a policy for quantifying operating reserve requirements, thereby hedging against uncertainty, while the MPC models grid operations incorporating the RL policy actions (i.e., reserve requirements), renewable (wind and solar) power predictions, and load demand forecasts. The developers formulated the reserve requirement determination problem as a sequential decision-making problem based on the Markov Decision Process (MDP) and design an RL learning environment based on the OpenAI Gym framework and MPC simulation. The RL agent reward and MPC objective function aim to maximize and monotonically increase total restored load and minimize load shedding and renewable power curtailment. The software is developed using various software packages in Python. The MPC's optimal power flow (OPF) model is implemented using the Pyomo package, the RL simulation environment is implemented using the MPC simulation with various scenarios of renewable energy and load demand profiles and power outage beginning times, based on the OpenAI Gym framework. The RL agent training is performed using the RLlib Ray package. The RL algorithm is trained offline using historical forecasts of renewable generation and load demand profiles. Simulation analysis and performance tests are conducted using a modified IEEE 13-bus distribution test feeder containing wind turbine, photovoltaic, microturbine, and battery.

Eseye, Abinet Tesfaye↗

ChIMES AL Driver

The ChIMES AL Driver is a python-based workflow tool for generating ChIMES models.

Lindsey, RebeccaK↗

JaqalPaq v.1.1

Jaqal-pup (Jaqal Programming Utilities Project) is a high-level Python metaprogramming interface for Jaqal, a quantum programming language for near-term quantum hardware (see https://arxiv.org/abs/2003.09382 for a description of Jaqal). In addition to parsing and writing out Jaqal programs, it includes the ability to read in and write out quantum programs in other languages and frameworks, e.g. Qiskit (IBM), Quil (Rigetti), Cirq (Google), Q# (Microsoft), ProjectQ (ETH Zurich), and tket (Cambridge Quantum Computing). It implements a gate scheduler, an emulator of a small-scale quantum computer programmed using Jaqal, and tie-ins for other simulation back-ends. SAND2020-12710 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.

Russo, Antonio↗

Distribution System Model Calibration Algorithms

SAND2021-15065 O This release contains Python code for two distribution system model calibration algorithms as well as some sample data and documentation for the algorithms and code. 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.

Blakely, Logan↗

exodusii

SAND2022-1657 O exodusii is a Python implementation of the EXODUS finite element database model. 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.

Schoof, Larry↗

epJSON Editor

The software provides an interface to the EnergyPlus input file, providing similar functionality to the IdfEditor tool but written in Python and specifically targeting the JSON-formatted input file. This interface occupies (as IdfEditor did previously) the niche between directly editing the input file and use of a more full-featured graphical user interface, providing both advanced and novice users with a simple interface. An extensive effort was made to gather stakeholder feedback in order to avoid merely duplicating the features of IdfEditor and to build an interface that met the needs of users both now and into the future.

Glazer, Jason↗

PyRIID v.2.0.0

SAND2021-8720 O PyRIID is a Python package that provides methods for generating gamma spectra synthetically and offers models that can input a gamma spectrum and predict what radioisotope is present in it. 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

Morrow, Tyler↗

PNNL-m-q/mzapy

A Python package that provides an interface to raw MS data in the MZA format.

Ross, Dylan↗

Smart Spectral Matching (SSM)

Smart Spectral Matching (SSM) catalogs spectroscopic data and, within the platform, investigates subtle attributes of spectral signatures from Raman and infrared spectroscopic data and enables statistical identification of connections between underlying structural units and spectroscopic information, particularly in fuel cycle materials that are amorphous or a mixture of several phases. Catalogs spectroscopic data, provides UIs for machine learning training either via JupyterHub for notebooks or domain scientist-specific views, machine learning and catalog REST API Python client libraries, and ability to identify features in files uploaded using pre-trained machine learning models. This is a "service-based" architecture with multiple applications represented by each repository in the group https://github.com/smart-spectral-matching

McDonnell, Marshall [Oak Ridge National Lab. (ORNL↗

pnnl/doa

This is a set of Python scripts designed to implement a method of determining the domain of applicability for a trained machine model for molecular property prediction. Additionally, the scripts implement analysis methods to evaluate and explore the results of the method. These scripts are designed to support the submission of a manuscript describing the methods for publication.

Panapitiya, Gihan↗

HOMP (Hybrid Operation and Maintenance Platform) [SWR-22-81]

The HOMP software module is contained within NREL's Hybrid Optimization and Performance Platform (HOPP) at this URL: https://github.com/NREL/HOPP/tree/feature/HOMP. HOMP is a python-based software module which can be used concurrently with the Hybrid Optimization and Performance Platform (HOPP) to model, simulate, and optimize degradation, reliability, and operations and maintenance of hybrid power plant components. The program currently models lithium ion battery, PEM electrolyzer, wind turbine, and solar PV array components, which enables users to understand the design and operation tradeoffs of hybrid power plants. For instance, HOMP enables users to answer questions like: how large does a battery bank need to be to achieve optimal charge/discharge rates for performance and reliability? How does plant design change for different objectives (e.g., profit versus resilience)? Under what conditions is it better to produce electricity versus hydrogen? How do we optimally control hybrid power plants to reduce downtime and increase performance?

Clark, Caitlyn↗

pnnl/mlprotein

The molecular graphics program, PyMol, was employed to produce all images in the training/validation/testing datasets. A PyMol script identified the clusters of interest from a list of all proteins containing 1) Fe (III) and Fe (II) ion and 2) FeS, respectively. A PyMol script and a Python webscraper were also used to classify [2Fe-2S] cofactors into three classes: standard, Rieske, and other and to identify iron atoms with four cysteine residues. We also used the pyMol script to rotate amino acids for training

Oostrom, Marjolein↗

ase

[Atomic Simulation Environment](https://wiki.fysik.dtu.dk/ase/): A Python library for working with atoms

Mazeau, EmilyJ [Oak Ridge National Lab. (ORNL), Oa↗