See the table below for our open-source software offerings. 

For the most current listing of NREL-developed open-source software, see U.S. Department of Energy Office of Scientific and Technical Information's DOE CODE database.

Commercial Licensing

Explore more than 200 copyrighted software tools available for licensing via the Department of Energy's Lab Partnering Service.

CODE ID Repository/Landing Page Link Software Title Description Programming Language(s) Release Date Release Date (Sort) Technology
66470 CEWAM: Circular Economy Wind Agent-based Model CEWAM is an agent-based model built with the MESA Python library. The tool enables users to study circular economy strategies by simulating actors' decisions. Python Oct. 29, 2021 10/29/21 Advanced Manufacturing; Wind
66377 OSOS: Open Source Ops and Statistics OSOS is a software package that helps track usage and operations statistics for open source software. Python Oct. 27, 2021 10/27/21 Wind
63192 SSRS: Stochastic Soaring Raptor Simulator SSRS is a generalizable, probabilistic, and predictive tool for wind energy developers, ecologists, wildlife managers and industry consultants to estimate the potential for soaring raptors to interact with operating wind turbines, without the need for site-specific data collection. Understanding the behavior of soaring raptors with varying atmospheric conditions is crucial for predicting and mitigating the risk of turbine collision. Python Oct. 18, 2021 10/18/21 Wind
57618 EFFORT: EFFectiveness Of Rate sTructure for enabling demand response EFFORT helps utilities evaluate potential time-of-use price plans to find effective hours for on-peak periods and the potential price-elastic demand response. An optimization model can be used to find tiered prices for the time-of-use tariffs and analyze the impact on load profiles, energy consumption, utility, and customer savings. Python Sept. 1, 2021 9/1/21 Grid Modernization
63707 AI-BATT-OS: Autonomous Identification of Battery Life Models – Open Source AI-BATT-OS is an open source implementation of some of the methods utilized by AI-Batt, a battery lifetime modeling and analysis toolkit. This software demonstrates the use of bi-level optimization and symbolic regression techniques to semi-autonomously identify algebraic models predicting the capacity fade of lithium-ion batteries during calendar aging. MATLAB Aug. 24, 2021 8/24/21 Transportation and Mobility
61774 Code Artifact for Clustering Analysis of Commercial Vehicles Using Automatically Extracted Features From Time Series Data This repository contains data ingestion, feature extraction, and analysis code used in the NREL technical report Clustering Analysis of Commercial Vehicles Using Automatically Extracted Features From Time Series Data. Python Aug. 5, 2021 8/5/21 Transportation and Mobility
61138 MoorPy: Quasi-Static Mooring Analysis in Python MoorPy is a quasi-static mooring model and a suite of associated functions for mooring system analysis. The core model supports quasi-static analysis of moored floating systems, including any arrangement of mooring lines and floating platforms. Python July 13, 2021 7/13/21 Water
63517 Marmot Marmot is a data formatting and visualization tool for production cost modeling results. It provides an efficient way to view PLEXOS production cost modeling results quickly while creating publication-ready figures and data tables. Python Sept. 1, 2021 9/1/21 Water; Wind
60841 Virtual Battery Aggregator for Distributed Energy Resource Management Systems This codebase creates algorithms for a distributed energy resource (DER) management system platform that aggregate a set of DERs that can be modeled as batteries, create a virtual battery model for centralized grid control, and dispatch power setpoints to the individual DERs based on a desired virtual power setpoint received from the centralized grid control. It integrates with existing cosimulation frameworks and models for buildings, DERs, and distribution systems. Python June 23, 2021 6/23/21 Buildings
59799 cloud_fs: Cloud File System Utilities Cloud File System Utilities is a generalized file-system handler that will dynamically determine if files are local or on the cloud and perform basic file-system operations. Python June 22, 2021 6/22/21 Water
59329 HALOS: Heliostat Aimpoint and Layout Optimization Software HALOS is an open-source software package that allows users to explore solar field layout optimization, aimpoint strategy optimization, and performance characterization of concentrating solar power tower plants. Python June 15, 2021 6/15/21 Solar
59395 OpenDSS-wrapper (Distribution System Co-simulator With Distributed Energy Resource Controls) This codebase integrates an electric power distribution system simulator, distributed energy resource models, and distributed energy resource controls. The codebase is based on OpenDSS, a distribution system simulator, and an existing open source cosimulation framework called HELICS. Python June 11, 2021 6/11/21 Grid Modernization
65113 WaterTAP3: Water Technoeconomic Assessment Pipe-Parity Platform WaterTAP3 facilitates consistent techno-economic assessments of desalination treatment trains. It is an analytically robust modeling tool that can be used to evaluate water technology cost, energy, environmental, and resiliency tradeoffs across different water sources, sectors, and scales. The model simulates steady-state water treatment train performance and costs, including flow and constituent mass balance across unit processes based on source water conditions, configurations of treatment technologies, and system-level techno-economic assumptions. Python June 8, 2021 6/8/21 Advanced Manufacturing
58655 WOMBAT: Windfarm Operations and Maintenance cost-Benefit Analysis Tool WOMBAT simulates the operations and maintenance phase of onshore or offshore windfarms. WOMBAT is a medium-fidelity tool designed to model turbine, cable, and substation failures at the subassembly level, but it is flexible enough that individual component or asset-level modeling can also be performed. WOMBAT enables users to model technological improvements and a range of service equipment and to analyze cost trends with varying trade-offs in conjunction with energy production, availability, and a growing range of metrics. Python May 27, 2021 5/27/21 Wind
56292 PsseReducer: PSSE Network Reduction This code can reduce power system network models in PSSE. The user selects single-port or two-port subnetworks for reduction, and the software reduces the subnetwork as described in the paper Power System Network Reduction for Power Hardware-in-the-Loop Simulation. Python May 11, 2021 5/11/21 Solar
65295 CELAVI: Circular Economy Lifecycle Assessment and Visualization CELAVI allows stakeholders to quantify and visualize potential regional and sectoral transfers of impacts that could result from transitioning to a circular economy, with particular focus on energy materials. The framework uses system dynamics to model material flows for multiple circular economy pathways, and decisions are based on learning-by-doing and implemented via cost and strategic value of different circular economy pathways. Python April 22, 2021 4/22/21 Energy Analysis
55916 diversity_SR: Diverse Super-Resolution This deep learning tool for enhancing the spatial resolution of wind data is developed in Python using the TensorFlow deep learning package. Models for diversity super-resolution are provided. Included in the package are pretrained models with example code/data to perform the super-resolution as well as training models for different enhancement or data types. Python April 21, 2021 4/21/21 Computational Science
55668 KRoad KRoad is a 2D, lightweight, vehicle driver simulator that uses 3D vehicle driving model considerations and enables the driver to make control decisions with less computation time and programmer effort than is required with full-fidelity 3D simulators. Python April 20, 2021 4/20/21 Transportation and Mobility
60075 HybridBOSSE: Hybrid Balance-of-System Systems Engineering Model HybridBOSSE analyzes the potential for shared infrastructure cost savings at wind-plus-solar-photovoltaic hybrid plants. This Python-based cost modeling tool is an extension of NREL's LandBOSSE tool. Python April 12, 2021 4/12/21 Wind
55244 FARMS: Fast All-sky Radiation Model for Solar applications FARMS is an efficient model for approximating solar radiation at land surface with minimal loss of accuracy. It was developed using a simplified clear-sky radiative transfer model, REST2, and simulated cloud transmittances and reflectances from the Rapid Radiation Transfer Model with a 16-stream Discrete Ordinates Radiative Transfer. Python March 30, 2021 3/30/21 Solar
54544 NRWAL: NREL Wind Analysis Library NRWAL contains a library of wind cost equations, dynamic Python tools for intuitive equation handling, ready-to-use configs for basic users, and easy equation manipulation without editing source code. Python March 29, 2021 3/29/21 Wind
52421 webspinner Python utilities for working with data source types used by NREL's Demand-Side Grid Model project. Python March 5, 2021 3/5/21 Buildings
55145 RAVIS: Resource Forecast and Ramp Visualization for Situational Awareness RAVIS is an open-source tool for visualizing variable renewable resource forecasts and ramp alerts for significant up/down ramps in renewable resource and the consequent net-load. The modular dashboard of RAVIS contains configurable panes for viewing probabilistic time series forecasts, ramp event alerts on the look-ahead timeline, spatially resolved resource sites and forecasts, and system simulation and market clearing data. JavaScript March 5, 2021 3/5/21 Solar
61131 wtDigiTwin: Wind Turbine Digital Twin wtDigiTwin provides a digital twin solution for wind turbine applications. wtDigiTwin estimates loads, motions, and environmental conditions for an operating wind turbine. The program uses supervisory control and data acquisition measurements as inputs, together with a wind turbine model. MATLAB; Python Feb. 1, 2021 2/1/21 Wind
50325 URBANopt DES_HVAC: District Energy Systems HVAC Measures DES_HVAC is a repository of a Parametric Analysis Tool project for scripts related to modeling of HVAC systems for buildings in a district served by a district thermal energy system. Jan. 26, 2021 1/26/21 Buildings
50272 ModuleOT ModuleOT is an open hardware security platform that provides all features necessary for securing remote energy resources. The module provides encrypted communications across an untrusted network, certificate-based authentication with secure storage, hardware cryptographic acceleration, IP-based whitelisting, local firewall management, and legacy device support. Jan. 25, 2021 1/25/21 Energy Security and Resilience
49823 turbine-models This GitHub repo hosts an archive of turbine models already in the public domain. It includes mainly tabular power and thrust (when available) curve data in .csv files, other technical data, and documentation and references built with Sphinx/GitHub Pages. There is a script called "" to assist with the parsing of power and thrust curves, but this repo is mostly a central location for turbine model data. Python Dec. 22, 2020 12/22/20 Wind
62413 AEflow: Deep Learning for In-Situ Data Compression of Large Turbulent Flow Simulations This repository contains the code associated with the paper Deep Learning for In-Situ Data Compression of Large Turbulent Flow Simulations. Python Dec. 18, 2020 12/18/20 Computational Science
49523 rlmolecule: A Library for General-Purpose Material and Molecular Optimization Using AlphaZero-Style Reinforcement Learning This library includes code for the optimization of materials and molecules using reinforcement learning. This project seeks to develop a generalized machine learning approach for optimizing targeted, and often complex, functional properties over the space of possible material structures, allowing faster identification of promising candidates. Python Dec. 17, 2020 12/17/20 Computational Science
49943 SISSO: Sure-Independence-Screening Sparsifying-Operator Regressor Implementation of the SISSO regression algorithm in MATLAB. The SISSO regression algorithm iteratively selects model features from candidates, converging even when the number of possible features is much greater than the number of available data points. MATLAB Dec. 16, 2020 12/16/20 Transportation and Mobility
51963 OSEII: Open-Source Energy Intensity Indicators Energy Intensity Indicators provides a framework to quantify how energy efficiency may or may not be affecting energy use relative to other economic trends. Python Dec. 15, 2020 12/15/20 Energy Analysis
49010 Panel-Segmentation The Panel-Segmentation package is a computer vision (CV) framework for automated metadata extraction for solar PV arrays using satellite imagery. With Panel-Segmentation, a user inputs latitude-longitude coordinates to generate a satellite image using the Google Maps API and runs the image through a deep learning framework to get a pixel-by-pixel representation of the solar panel(s) in an image. Python Nov. 30, 2020 11/30/20 Solar
49934 ABSiCE: Agent-Based Simulations of the Circular Economy This agent-based model accounts for social factors in circular economy strategies assessment for end-of-life PV modules. Four types of agents are represented, and five possible end-of-life pathways are modeled. Python Nov. 13, 2020 11/13/20 Advanced Manufacturing
48638 SEEDling SEEDling uses GIS tools to automate and simplify the merging of multiple data sources prior to importing into the SEED platform. Geographic information about buildings and tax lots is often obtained from various data sources, and the process of synthesizing this information for many buildings across a city can be burdensome. Nov. 8, 2020 11/8/20 Buildings
61291 Interactive Mobility Landscape App This is the companion repository to NREL's Interactive Mobility Data Landscape. The app is an upstream NPM module that supports building interactive landscape websites such as the CNCF Cloud Native Landscape (source) and the LF Artificial Intelligence Landscape (source). JavaScript Oct. 26, 2020 10/26/20 Transportation and Mobility
61284 Interactive Mobility Data Landscape This is the companion repository to NREL's Interactive Mobility Landscape App. The Interactive Mobility Data Landscape is a map through the previously uncharted, growing mobility data science field. It attempts to categorize the data sources, specifications, and tools in the field of mobility. Oct. 26, 2020 10/26/20 Transportation and Mobility
62900 ComStock ComStock™ is an analytic methodology for modeling the energy usage of the commercial building stock within the United States. The commercial building stock is represented through a sampling of complex probabilistic distributions of various features of interest for modeling energy usage within commercial buildings. Ruby Oct. 18, 2020 10/18/20 Buildings
51311 Athena: Shuttle Bus Optimization and Event Driven Simulator This tool optimizes shuttle routes to and from terminals, given some airport campus location such as a rental car center. The optimization determines a set of shuttle routes, the type of shuttle on each route, and the number of shuttles servicing each route. The optimization aims to make these choices in a way that the energy consumption per hour by the fleet is minimized. Oct. 15, 2020 10/15/20 Transportation and Mobility
51344 Athena: Digital Twin and Infrastructure Model This software provides database access and analysis code for project Athena data. In addition, the software contains all the code related to modeling the Dallas-Fort Worth International Airport curbside using SUMO simulator. Python Oct. 13, 2020 10/13/20 Transportation and Mobility
49060 CatCost Data Tools CatCost™ enables catalyst researchers to develop comprehensive estimates of the cost to produce pre-commercial catalysts early in the catalyst development process. It includes both web browser and Excel-based tools, each with distinct strengths. Python Oct. 1, 2020 10/1/20 Transportation and Mobility; Bioenergy
46171 EMIS-Data In support of the Electricity Markets Investment Suite, this repository holds the data sets used in the following Julia packages: EMISApproximateEquilibrium.jl, EMISCompetitiveEquilibrium.jl, and EMISAgentSimulation.jl. HTML Sept. 30, 2020 9/30/20 Energy Analysis; Grid Modernization
44964 EMIS-CE: Electricity Markets Investment Suite – Competitive Equilibrium EMIS-CE is an optimization-based power system investment model. It attempts to approximate a market-driven investment equilibrium outcome under the assumption of idealized or perfect competition and uncertain future conditions. Julia Sept. 30, 2020 9/30/20 Energy Analysis; Grid Modernization
46188 EMIS-AS: Electricity Markets Investment Suite – Agent Simulation Model EMIS-AS is an agent-based model for simulating annual investment and retirement decisions of heterogeneous investors in the electricity sector. EMIS-AS is designed to capture the evolution of the electricity generation portfolio resulting from the interactions of heterogeneous investors under different policy and market designs. Julia Sept. 30, 2020 9/30/20 Energy Analysis; Grid Modernization
46150 EMIS-AE: Electricity Markets Investment Suite – Approximate Equilibrium EMIS-AE provides a solution to solve generation expansion equilibrium problems in electricity markets. EMIS-AE is designed to capture the evolution of the electricity generation portfolio resulting from the interactions of heterogeneous investors under different policy and market designs. Julia; Python Sept. 30, 2020 9/30/20 Energy Analysis; Grid Modernization
44561 EVOLVE EVOLVE is a combination of a dashboard developed in React—which enables users to visualize net load evolution with emerging technologies such as PV, energy storage, and electric vehicles—and a Python backend that processes data. Python Sept. 16, 2020 9/16/20 Grid Modernization
45923 OEDI-ODAT: Open Energy Data Initiative – Open Data Access Tools The Open Energy Data Initiative aims to improve and automate access of high-value energy data sets across the U.S. Department of Energy's programs, offices, and national laboratories. This platform was implemented to make data actionable and discoverable by researchers and industry to accelerate analysis and advance innovation. Partners at other national laboratories will use the platform for analysis, can be involved in determining requirements, and will be resources for new data sets. Python Sept. 14, 2020 9/14/20 Solar
44897 DW TAP: Distributed Wind Tools Assessing Performance Computational Framework DW TAP supports the distributed wind (small-scale wind turbine) industry, particularly with respect to siting and resource assessment. The computational framework is the public access point and synthesis of these tools, providing open source implementations, an API for ease of access by third-party implementations, a reference implementation, and documentation. JavaScript; Python Sept. 11, 2020 9/11/20 Wind
54285 PeleLM An adaptive mesh hydrodynamics simulation code for low Mach number reacting flows. C++ April 14, 2021 4/14/21 Scientific Computing
41785 PHYGNN: Physics Guided Neural Networks PHYGNN augments a traditional neural network loss function with a generic term that can be used to guide the neural network to learn physical or theoretical constraints. Python Aug. 20, 2020 8/20/20 Solar
65288 CLCD: Catalyst Layer Crack Detector CLCD ("clicked") takes in optical micrographs of catalyst coatings for PEM fuel cells or electrolyzers and calculates the area that consists of cracks. It does so using a custom algorithm that searches for dark features larger than the background graininess of the catalyst layer. Python Aug. 13, 2020 8/13/20 Transportation and Mobility; Hydrogen and Fuel Cells
41113 WaterModelsAnalytics.jl WaterModelsAnalytics.jl is an analytics package for visualizing water distribution networks in Julia. Julia Aug. 3, 2020 8/3/20 Water
40607 Comparative Photovoltaic Levelized Cost of Energy Calculator This calculator calculates levelized cost of energy for PV systems based on cost, performance, and reliability inputs for a baseline and a proposed technology. The user can choose inputs and watch the effect to determine whether a proposed technology is cost-effective, perform trade-off analysis among different technology options, and do break-even analysis of cost or performance. JavaScript July 29, 2020 7/29/20 Solar
41379 PLEXOSUtils.jl PLEXOSUtils.jl provides functionality for loading in PLEXOS result zip files on disk into in-memory Julia data structures. The data structures mirror the relationships defined in the original PLEXOS result XML and provide a convenient starting point for writing application-specific code. Julia July 27, 2020 7/27/20 Transportation and Mobility; Hydrogen and Fuel Cells
41387 Hasty This web app creates semantic metadata models, namely, Haystack and Brick. Hasty assists in the auditing of building mechanical systems and controls. The software is designed to capture mechanical system topology and important information regarding real-world controls implementations. JavaScript; Python; CSS; HTML July 13, 2020 7/13/20 Buildings
42017 powerscenarios This software generates renewable energy scenarios for stochastic electrical grid operation problems. MATLAB; Python July 2, 2020 7/2/20 Grid Modernization
45155 RODeO: Revenue Operation and Device Optimization Model The RODeO model explores optimal system design and operation, considering different levels of grid integration, equipment cost, operating limitations, financing, and credits and incentives. RODeO is a price-taker model formulated as a mixed-integer linear programming model in the GAMS modeling platform. The objective is to maximizes the net revenue for a collection of equipment at a given site. GAMS; Batchfile; MATLAB; Python June 23, 2020 6/23/20 Transportation and Mobility; Hydrogen and Fuel Cells
44795 m2p: Monomers to Polymers This software is Python-based code that takes monomers, represented as SMILES, and "reacts" them together to form long polymer chains, represented as SMILES, based on known polymer chemistries. The software is used in a machine-learning pipeline where a database and machine-learning approaches are used to predict polymer properties base on molecular structure. Python June 19, 2020 6/19/20 Transportation and Mobility; Bioenergy
48995 SLiDE: Scalable Linked Dynamic Equilibrium SLiDE replicates the blueNOTE (National Open source Tools for general Equilibrium analysis) datastream from the Wisconsin National Data Consortium. From there, it produces a recursive dynamic computable general equilibrium model of the U.S. states and eventually the global/national economies. Julia June 3, 2020 6/3/20 Energy Analysis
38865 PV Degradation Tools This open-source tool quantifies the relative humidity inside solar PV modules and the Arrhenius degradation acceleration factor. Python May 29, 2020 5/29/20 Solar
45140 Spawn Spawn is a next-generation building simulation engine that builds on the strengths of NREL's EnergyPlus engine. It adds advanced HVAC and controls modeling capability by incorporating the Modelica equation-based modeling language. In effect, Spawn is a hybrid of EnergyPlus and Modelica, with some new software between the components to provide a seamless end-user experience. C++; C May 8, 2020 5/8/20 Buildings
51870 SolarAPP+: Solar Automated Permit Processing This collaborative effort with code officials, authorities having jurisdiction, and the solar industry is an instant solar permitting platform for code-compliant residential systems. SolarAPP provides a flexible, web-based PV-permitting tool for residential systems; enables standardization of instant permitting processes; evaluates applications for safety and code compliance, and offers opportunities to incorporate energy storage and expand to other market segments. Dec. 19, 2019 12/19/19 Solar
49326 dGen: Distributed Generation Market Demand Model The dGen™ model is a geospatially rich, bottom-up, market-penetration model that simulates the potential adoption of distributed energy resources for residential, commercial, and industrial entities in the continental United States through 2050. dGen analyzes the factors that will affect market demand for distributed solar, wind, storage, and other distributed energy resource technologies in the United States within a single modeling platform. Python; Jupyter Notebook April 20, 2020 4/20/20 Solar; Wind
44388 GradeIT: Road Grade Inference Tool GradeIT is a modular Python package the leverages the United States Geological Survey's Digital Elevation Model. GradeIT employs a two-dimensional interpolation to approximate elevation at a point on a road from the nearest nodes in the model. Then, GradeIT applies multiple filtering techniques to smooth the elevation profile to a realistic road topology. Finally, road grade is derived from the elevation profile and returned as the primary output. Python April 17, 2020 4/17/20 Transportation and Mobility
35090 ModBuild: Modelica Builder This software implements a parser of the Modelica language that allows easy-to-implement transformations of Modelica files. Modelica April 7, 2020 4/7/20 Buildings
35134 rex: Resource Extraction Tool rex includes tools developed for reV and reVX related to the efficient access of, extraction from, and computation on NREL's renewable resource data sets. Python April 6, 2020 4/6/20 Wind
49728 BEEAM: Building Electrical Efficiency Analysis Model BEEAM simulates the efficiency of building electrical distribution systems using harmonic power flow. BEEAM can model a variety of building distribution topologies, including three-phase AC, single-phase AC, unipolar DC, bipolar DC, and hybrid networks under balanced and unbalanced load conditions. BEEAM accurately models power electronic converter losses, provides granular estimates of losses throughout the distribution system, and properly models efficiency at part-load conditions. Modelica Oct. 15, 2020 10/15/20 Buildings
34875 PV_ICE: PV in the Circular Economy, Dynamic Energy, and Materials Tool This open-source tool implements circular economy metrics for PV materials. It can be used to quantify and assign a value framework to efforts on redesign, reduction, replacement, reuse, recycling, and lifetime and reliability increases in the PV value chain. Python March 24, 2020 3/24/20 Energy Analysis; Solar
34849 MAFRIT: Multi-Area Frequency Response Integration Tool MAFRIT integrates primary frequency response (turbine governor control) with secondary frequency response (automatic generation control). It simulates power system dynamic response in full time spectrum with variable time steps from millisecond to minutes to hours and days. Capable of simulating normal and event conditions, this tool can represent real power system operations and thus evaluate the primary and secondary reserves adequacy. MATLAB March 17, 2020 3/17/20 Wind
44154 EMeRGE: Emerging technologies Management and Risk evaluation on distribution Grids Evolution EMeRGE is a collection of mini tools to help users develop openDSS feeder models from GIS files, perform risk analysis at various PV scenarios, and visualize results in an interactive dashboard. March 9, 2020 3/9/20 Grid Modernization; Solar
34665 reVX: The Renewable Energy Potential Exchange Tool reVX is a complementary tool set that enables the extraction, translation, and loading of reV results into formats required by downstream models such as RPM, ReEDS, and PLEXOS. Python March 2, 2020 3/2/20 Wind
34682 reV: The Renewable Energy Potential Model – Open Source The reV model is a platform for the detailed assessment of renewable energy resources and their geospatial intersection with grid infrastructure and land use characteristics. The reV model supports PV, concentrating solar power, and land-based wind turbine technologies. Modules function at different spatial and temporal resolutions, allowing for the assessment of resource potential, technical potential, and supply curves at varying levels of detail. Python March 2, 2020 3/2/20 Wind
62140 pySMARTS: Python Wrapper for Simple Model of the Atmospheric Radiative Transfer of Sunshine The pySMARTS module contains functions for calling SMARTS: Simple Model of the Atmospheric Radiative Transfer of Sunshine. Python Feb. 24, 2020 2/24/20 Solar
34269 GEOPHIRES v2.0: GEOthermal energy for Production of Heat and electricity ("IR") Economically Simulated GEOPHIRES v2.0 is a geothermal techno-economic simulation tool that combines reservoir, wellbore, and surface plant technical models with cost correlations and levelized cost models to estimate the capital and operation and maintenance costs, instantaneous and lifetime energy production, and overall levelized cost of energy of a geothermal plant. In addition to electricity generation, direct-use heat applications and combined heat and power or cogeneration can be modeled. Python Feb. 17, 2020 2/17/20 Geothermal
62988 I-JEDI: International Jobs and Economic Development Impacts The I-JEDI model is a free tool for analyzing the economic impacts of renewable energy development. The tool estimates the potential gross economic impacts of wind, solar, biomass, and geothermal energy projects for a specific country. I-JEDI estimates the employment, earnings, gross domestic product, and output from the construction and operation of renewable energy projects and across the domestic supply chain. Sept. 3, 2019 9/3/19 Energy Analysis
38882 Parameter Optimization Toolbox for ns-3 This simulation-based parameter optimization framework tunes parameters of communication networks using ns-3 to achieve optimal network performance. It consists of three components: an ns-3 packet reporting module, a sampler running simulations with all possible parameter sets for the input parameter variables, and a hybrid optimization algorithm for tuning configurable parameters of hybrid designs and application parameter variables. C++; Python June 30, 2020 6/30/20 Solar
33932 CryptoConfig Python class for handling encrypted elements in a config file. This class overrides the 'get' method of ConfigParser by replacing it with Fernet symmetric encryption so you can safely store encrypted passwords in an ini file. Python Jan. 21, 2020 1/21/20 Energy Security and Resilience
33311 ORBIT: Offshore Renewables Balance of System and Installation Tool ORBIT simulates balance-of-system and installation processes for offshore wind plants. It is used to study the effects of weather delays on offshore vessel logistics and for medium-fidelity trade-off studies for offshore technologies. Python Dec. 22, 2019 12/22/19 Water; Wind
38361 (DG)2: Distributed Generation for Distribution Grids (DG)2 is an impact analysis tool for electrical utilities to perform spatio-temporal analysis with solar and battery energy storage systems. The purpose of the tool is to help distribution utilities identify impacts and costs associated with locating a megawatt-scale solar farm and energy storage system at a certain location over other choices. This tool also helps utilities assess reverse power flow at the transmission lines. Dec. 20, 2019 12/20/19 Solar
33140 PSPI: A Physics-Based Smart Persistent Model for Intra-Hour Solar Forecasting PSPI improves the accuracy of the smart persistent model. It uses a cloud retrieval technique to estimate cloudy fraction and cloud albedo using surface-based observations of solar radiation. The solar radiation in future time steps is accurately given by actively computing individual cloud albedo related to the future solar position. PSPI significantly increases the accuracy of short-term forecasts of solar radiation, especially in thin cloud conditions. Python Dec. 18, 2019 12/18/19 Solar
63805 Secondary Pore Network Design Optimization Analytical Diffusion Model for Lithium Ion Battery This model quantifies the impact of secondary pore network on ionic diffusion with a composite electrode through a simple analytical approach, considering various pore channel geometries and comparing to standard electrodes with identical gravimetric and volumetric specific theoretical capacity. Dec. 18, 2019 12/18/19 Transportation and Mobility
53450 HOPP: Hybrid Optimization and Performance Platform This software assesses optimal designs for the deployment of utility-scale hybrid energy plants, particularly considering wind, solar, and storage. Python Nov. 14, 2019 11/14/19 Wind
34983 bokeh streaming Simple examples of streaming data to bokeh plots. The plots are intended to be generic and able to infer some of the plot data from the structure of the data sent. The receiver accepts zlib compressed pickled Python dictionaries. Python Nov. 2, 2019 11/2/19 Grid Modernization
57899 WaterTAP v1.0.0 WaterTAP is a library of water-specific models built on the IDAES Integrated Platform to support the design and optimization of integrated water treatment systems, improve existing systems, and enable the analysis of new designs that incorporate emerging technologies. WaterTAP enables advanced modeling and optimization for conceptual and multiscale design, dynamics, and model predictive control of water systems and networks. May 7, 2021 5/7/21 Water
28932 PathParser PathParser is computational tool for the thermodynamics and robustness analysis of native and designed metabolic pathways. Functionalities include max-min driving force optimization, protein cost estimation, and robustness analysis. Specifically, an ensemble of models is generated to simulate the system response to enzyme perturbation based on bifurcation theory and a continuation method. Python Oct. 21, 2019 10/21/19 Bioenergy
38861 AMR-Wind AMR-Wind is a massively parallel, block-structured adaptive-mesh, incompressible flow solver for wind turbine and wind farm simulations. The solver is built on top of the AMReX library, which provides the mesh data structures, mesh adaptivity, and the linear solvers used to solve the governing equations. The primary applications are performing large-eddy simulations of atmospheric boundary layer flows, simulating wind farm turbine-wake interactions using actuator disk or actuator line models for turbines, and as a background solver when coupled with a near-body solver with overset methodology to perform blade-resolved simulations of multiple wind turbines within a wind farm. Aug. 13, 2020 8/13/20 Wind
31311 FPEAM: Feedstock Production to Air Emissions Model FPEAM is a modeling framework that integrates agricultural and forestry production, supply data, and equipment budgets for those activities with methodologies for estimating air pollutant emissions. Python Oct. 2, 2019 10/2/19 Bioenergy
23851 CSG-public The CSG model is a system dynamics model that simulates the transition from predominantly individual ownership of non-connected and automated vehicles to various future scenarios of high connectivity/automation. STELLA Sept. 30, 2019 9/30/19 Transportation and Mobility
29462 NaTGenPD: National Thermal Generator Performance Database NaTGenPD is a code base for the processing (extraction, cleaning, filtering, and fitting) and analysis of Environmental Protection Agency continuous emission monitoring system data to produce a National Thermal Generator Performance Database. Python; Jupyter Notebook Sept. 17, 2019 9/17/19 Wind
29023 PySAM: Python Wrapper for System Advisor Model PySAM is a Python wrapper for the System Advisor Model (SAM). SAM is a performance and financial model designed to facilitate decision-making for people in the renewable energy industry. Python Aug. 30, 2019 8/30/19 Solar
25517 Ex Situ and In Situ Catalytic Fast Pyrolysis Models (ASPEN PLUS MODELS) These models relate to an Aspen Plus process model for in situ and ex situ upgrading of fast pyrolysis vapors for the conversion of biomass to hydrocarbon fuels. They are based on conceptual designs that allow projections of future commercial implementations of the technologies based on a combination of research and existing commercial technologies. Feb. 27, 2019 2/27/19 Bioenergy
29479 PyDSS PyDSS is a high-level Python interface for OpenDSS that provides object-oriented programming, dynamic visualization, custom controls, simulation parallelization, exporting results, improved error logging, and communication interface. Python Aug. 16, 2019 8/16/19 Grid Modernization
31076 ResStock The ResStock™ analysis tool helps states, municipalities, utilities, and manufacturers identify which home improvements save the most energy and money. It's a versatile tool that takes a new approach to large-scale residential energy analysis by combining large public and private data sources, statistical sampling, detailed subhourly building simulations, and high-performance computing. Aug. 8, 2019 8/8/19 Buildings
32580 Real-Time Distributed Energy Resource Energy Dispatch Using Distributed Control This software implements real-time energy dispatch for distributed energy resources, such as distributed PV, using a distributed control algorithm. Python Aug. 6, 2019 8/6/19 Grid Modernization
28741 PRAS: Probabilistic Resource Adequacy Suite PRAS provides a research-oriented collection of tools for analyzing the resource adequacy of a bulk power system. The simulation methods support everything from classical convolution-based analytical techniques to high-performance sequential Monte Carlo methods supporting multiregion composite reliability assessment, including simulation of energy-limited resources such as storage. Julia Aug. 5, 2019 8/5/19 Water
28343 SOLARUN: Solar Resource Uncertainty Critical to the design of solar energy projects with long-term profitability are accurate "bankable data," methodologies, and tools to understand the uncertainties in the data. SOLARUN assists stakeholders to quantify solar resource measurement uncertainty from radiometers, which supports the decision-making process, speeds up the acceptance and deployment of projects, and reduces risk to the financiers and developers. July 22, 2019 7/22/19 Solar
27787 ProgressiveHedging.jl This solves multistage optimization problems (e.g., stochastic programs or capacity expansion models). The user uses the StructJuMP extension of JuMP to create the model and build up the scenario tree. Julia July 15, 2019 7/15/19 Computational Science
38889 MATBOX: Microstructure Analysis Toolbox MATBOX is a MATLAB application for performing microstructure-related tasks, including microstructure numerical generation, image filtering and microstructure segmentation, microstructure characterization, result three-dimensional visualization and result correlation, and microstructure meshing. MATBOX was originally developed to analyze electrode microstructures for lithium ion batteries; however, the algorithms provided by the toolbox are applicable to other heterogeneous materials. Limbo; MATLAB July 1, 2020 7/1/20 Transportation and Mobility
29285 MinCostFlows.jl MinCostFlows.jl is a utility package for efficiently solving min-cost network flow problems through an implementation of the relaxation dual ascent method. The use of a dual ascent method allows for warm-starting the solver with a solution from a previously solved problem that need not be feasible for the new problem, providing computational performance benefits when repeatedly solving similar network flow problems. This approach is particularly useful for Monte Carlo power system resource adequacy models. Julia May 21, 2019 5/21/19 Water
25308 skyline skyline is a header-only C++ library for the direct solution of linear algebraic equations that are stored in skyline format. It is intended for medium-sized sparse problems with moderate bandwidth. This solution approach has historically been used for pressure network solvers and in some finite element codes. It was developed to replace legacy solver code included in the EnergyPlus building energy modeling software package but is not limited to use by EnergyPlus. C++ April 24, 2019 4/24/19 Buildings
29320 REopt Lite The REopt Lite® Web Tool evaluates the economic viability of grid-connected solar PV, wind, and battery storage at a commercial site. It allows building owners to identify the system sizes and dispatch strategy that minimize the site's life cycle cost of energy. REopt Lite also estimates the time a PV or wind and battery system can sustain the site's critical load during a grid outage and allows the user to optimize for energy resilience. April 3, 2019 4/3/19 Energy Analysis
24275 FESTIV: Flexible Energy Scheduling Tool for Integrating Variable generation FESTIV simulates the steady-state power system operations and scheduling performed by an independent system operator, regional transmission organization, or vertically integrated regulated utility. The tool integrates security-constrained unit commitment, security-constrained economic dispatch, and automatic generation control into one model. April 1, 2019 4/1/19 Grid Modernization
23701 Ladybug Tools IN2 Measures Ladybug Tools IN2 Measures is a collection of OpenStudio® measures, file formats, scripts, and related tools for integrating Ladybug Tools with energy modeling via OpenStudio. March 6, 2019 3/6/19 Buildings
23683 OpenStudio Energy Rating Index Workflow This tool calculates an energy rating index via an OpenStudio/EnergyPlus-based workflow. Building information is provided through an HPXML file. Third-party, private sector software tools can connect to this open-source software workflow from their user interface to provide residential energy ratings. Feb. 27, 2019 2/27/19 Buildings
60889 Bewley Lattice Diagram This is a basic package for creating Bewley Lattice Diagrams in Python. Python Feb. 6, 2019 2/6/19 Solar
23355 OpenDSSDirect.jl This cross-platform Julia package implements a "direct" library interface to OpenDSS using dss_capi. OpenDSS is an open-source distribution system simulator. Julia Feb. 4, 2019 2/4/19 Grid Modernization
22185 nfp: Neural Fingerprint Keras layers for end-to-end learning on molecular structure. Based on Keras, Tensorflow, and RDKit. Source code used in the study Message-Passing Neural Networks for High-Throughput Polymer Screening. Jan. 14, 2019 1/14/19 Bioenergy
27645 AirflowNetwork This software simulates air movement and the resulting transport of contaminants and other materials within a building. The performance of air distribution systems, including supply and return leaks, and multizone airflows driven by outdoor wind and forced air during HVAC system operation are simulated using a nodal network representation of the building. C++ June 19, 2019 6/19/19 Buildings
25357 PyDSS This high-level Python interface for OpenDSS provides object-oriented programming, dynamic visualization, custom controls, simulation parallelization, exporting results, improved error logging, and a communication interface. Python Dec. 5, 2018 12/5/18 Grid Modernization
20891 pFibs: Parallel Fenics Implementation of Block Solvers This Python package acts as an interface between FEniCS and PETSc to facilitate the construction and application of parallel block solvers/preconditioners. The original intent of the software was to enable battery and wind farm simulations for use on high-performance computing systems. The code is written in Python and uses the petsc4py module to access the more advance features of the PETSc Krylov Solver. Python Nov. 28, 2018 11/28/18 Transportation and Mobility
11462 GHOST: Grid Hardware Open Source Testbed The software was developed for microgrid controller procurement, where multiple microgrid controller vendors were competing to prove the best performance. Each microgrid controller was connected to a real-time simulator (Opal-RT), where the real-time model of microgrid was simulated. Microgrid controllers were able to control most of the assets in the model. To fairly compare performance, each controller was evaluated using the same model, with the same initial conditions, and exactly the same test sequence. May 1, 2018 5/1/18 Grid Modernization
21229 Alfalfa Alfalfa is a web-based software service that implements a virtual building control system using the EnergyPlus simulation as a backend. Conventional building energy simulation is noninteractive, meaning that a simulation is started and run to completion without any user input during the simulation. Alfalfa allows a client to start a building simulation and then interactively read sensor locations and dynamically command actuators in real time. JavaScript; Python Nov. 14, 2018 11/14/18 Buildings
28802 EPRT: EnergyPlus Regression Tool A Python library and GUI for comparing EnergyPlus builds, EPRT is almost exclusively a developer tool for members of the EnergyPlus development team to ensure that code changes do not impact the test suite. Python Nov. 5, 2018 11/5/18 Buildings
23314 HDTADA: Hydrogen Dispenser Test Apparatus HDTA validates hydrogen fueling station performance. This software takes the data generated from HDTA and compares it to fueling standards CSA HGV4.3 and SAE J2601. The software generates plots and metrics for pressure, temperature, and IR communications from the HDTA. MATLAB Oct. 18, 2018 10/18/18 Buildings
25321 COMBIgor: A Data Assistant for Combinatorial Scientists in Igor Pro COMBIgor is a software package that assists combinatorial material scientists with large volumes of experimental data. This package, written in Igor Pro, offers a systematic approach to loading, processing, and visualizing combinatorial data sets. COMBIgor is designed to be expanded on a laboratory, group, or individual basis to adopt additional loading, processing, and visualization capabilities. April 16, 2019 4/16/19 Materials Science
27616 R2PD: Renewable Resource and Power Data Tool R2PD is a power system modeler-friendly tool for downloading wind and solar power and forecast data. Python Sept. 25, 2018 9/25/18 Grid Modernization; Wind; Solar
20899 View3D This is a C program for the computation of geometric view factors. This version of View3D is included as part of the EnergyPlus installer package. The program uses a number of integration techniques to compute view factors between planar triangles or quadrilaterals in three dimensions. C Sept. 7, 2018 9/7/18 Buildings
32013 IET: Industry Energy Tool IET is a calculator tool for projecting energy and emissions impacts of industrial sector energy efficiency, material efficiency, and fuel switching. Projections are available at the county and census region levels. The IET is based on a detailed county-level energy data set for agriculture, mining, construction, and manufacturing industries. Sept. 6, 2018 9/6/18 Advanced Manufacturing; Energy Analysis
25600 daft daft is a Haskell library that implements the key constructs of relational algebra via static structural typing. Its DataCube typeclass supports selection, projection, aggregation, disaggregation, natural joins, semijoins, and antijoins. Haskell Sept. 1, 2018 9/1/18
20914 PyDBus This software is an interface in Python for interacting with EPRI DBus software. Python Aug. 31, 2018 8/31/18 Grid Modernization
20908 HELICS–HLA: Hierarchical Engine for Large-scale Infrastructure Co-Simulation–High Level Architecture HELICS–HLA is a cosimulation standard, various implementations of which have been widely used for cosimulations for several years, particularly in the defense community. The HELICS-HLA interface makes software connected with HLA implementations work with software connected with HELICS. Aug. 31, 2018 8/31/18 Grid Modernization
55137 Records API for Advanced Energy System Design The Records API (Application Program Interface) for Advanced Energy System Design (AESD) enables software that serves multidimensional record-oriented data to interoperate with software than uses such data. This minimalist API avoids imposing burdensome metadata, structural, or implementation requirements on developers by relying on open-source technologies that are readily available for common programming languages. In particular, the API has been designed to place the least possible burden on services that provide data. Aug. 30, 2018 8/30/18 Energy Analysis
19413 L-TERRA This software is an error-reduction algorithm for lidar-measured turbulence. The algorithm is trained using colocated lidar and meteorological tower data. Lidar-measured parameters—such as wind speed, shear, and turbulence intensity—are used to predict the difference between the lidar- and tower-measured turbulence intensity. Python Aug. 22, 2018 8/22/18 Wind
58745 KiteFAST KiteFAST is a simulator for airborne wind energy systems based on NREL's OpenFAST whole turbine simulator. KiteFAST is a multi-physics engineering tool for modeling the coupled aero-servo-elastic dynamics of airborne wind energy systems, i.e., a wind-energy kite. C; C++; Fortran; Python; Jupyter Notebook; Roff Aug. 16, 2018 8/16/18 Wind
20924 DiTTo: Distribution Transformation Tool DiTTo provides a framework for converting and modifying different types of distribution model formats. These include commercial formats such as CYME, Synergi, DEW, ePHASORSIM as well as open-source formats such as OpenDSS and GridLAB-D. DiTTo consists of an API that represents electrical equipment, configurations, settings, and time series data. Python Aug. 14, 2018 8/14/18 Grid Modernization
32000 TEAM-TDM: A Tool for Evaluating an Array of Machine Learning Travel Demand Models This software automates the training and evaluation of many machine learning models on a given problem. It is primarily built on components from the scikit learn API. Aug. 8, 2018 8/6/18 Transportation and Mobility
23824 SolTrace This repository contains the source code, tools, and instructions to build a desktop version of the National Renewable Energy Laboratory's SolTrace. SolTrace is a software tool to model concentrating solar power systems and analyze their optical performance. Although ideally suited for solar applications, the code can also be used to model and characterize many general optical systems. July 27, 2018 7/27/18 Solar
27905 WaterSystems.jl WaterSystems.jl is a Julia package for defining water delivery infrastructure system data and problem definitions. The package enables parsing from the EPANET *.inp file format and the expression of data for WaterSimulations.jl models. Julia July 20, 2018 7/20/18 Water
20994 PowerSystems.jl and PowerSimulations.jl These data structures in Julia enable power systems analysis and power system modeling and simulation. The package provides a flexible modeling framework that can accommodate problems of different complexity and at different time-scales, streamline the construction of large-scale optimization problems to avoid repetition of work when adding/modifying model details, and exploits Julia's capabilities to improve computational performance of large-scale power system simulations. Julia July 9, 2018 7/9/18 Grid Modernization
59360 OSIF: Open Source Impedance Fitter OSIF allows users to easily fit electrochemical impedance spectra of proton exchange membrane fuel cells to a commonly accepted equivalent circuit model. The fitted parameters provide insight into the physical properties of the cell, which allow the user to support experimental hypotheses. Python July 2, 2018 7/2/18 Advanced Manufacturing
12483 dynamo This software is a toolbox for Dynamic Programming and Adaptive Dynamic Programming that enables stochastic, multiperiod decision optimization for arbitrary "black box" models. Its modular framework serves as a wrapper for other simulation tools. This enables forward-looking optimization under uncertainty to aid decision-making when facing an increasingly uncertain future. June 25, 2018 6/25/18 Grid Modernization
19424 BuildingSync BuildingSync® is a standardized language for commercial building energy audit data that software developers can use to exchange data between audit tools. Taking the form of an XML schema, BuildingSync can be required by building owners and audit program managers to allow data analysis and aggregation across multiple buildings to evaluate program performance and analyze trends. May 31, 2018 5/31/18 Buildings
11489 layerstack Lightweight Python package for assembling, sharing, and running workflows, especially those associated with modifying, running, and analyzing simulation models. May 22, 2018 5/22/18 Grid Modernization
11473 SolarPILOT SolarPILOT™ advances the analytical flux image Hermite series approximation used in DELSOL3 by applying it to individual heliostat images rather than "zones," allowing characterization of a variety of heliostat field layouts. SolarPILOT also integrates the SolTrace Monte-Carlo ray tracing engine, providing improved receiver optical modeling capability, a user-friendly front end for geometry definition, and side-by-side validation of the analytical algorithms. April 8, 2018 4/8/18 Solar
20264 PV TOMCAT PV TOMCAT predicts the outdoor operating temperature and output power of a PV module based on measured physical properties and outdoor conditions. It includes a ray tracing model of a PV module, which runs in the commercial SunSolve ray tracer. Output from this model is combined with meteorological time series data to produce a combined input file for a finite-element model of heat conduction and radiation. Finally, this finite-element model is run in the commercial COMSOL Multiphysics software, producing time series outputs of temperature and power. Python Aug. 22, 2018 8/22/18 Solar
59617 RTS Data Vis App: Real-Time Streaming Data Visualization Tooling The RTS Data Vis App contains Conditioner, a tool to resample high-rate data from the relay for low-rate visualization, and Chart, a tool to plot the data from the relay, including a specialized copy of the Conditioner. The Conditioner is a command-line tool for reading ADMS data from ZMQ, resampling, and exporting over a websocket. The Chart is an example of a charting tool for ADMS applications, using a ZMQ message bus. C++ March 12, 2018 3/12/18 Grid Modernization
20941 BESTEST-GSR: Building Energy Simulation Test – Generation Simulation and Reporting BESTEST is a method to validate the qualitative performance of whole-building simulations engines relative to one another. For EnergyPlus® and OpenStudio®, the generation of test cases, simulation, and reporting was a manual or partially automated process that took months after a new version of EnergyPlus came out. BESTEST-GSR automates this process so it is less error-prone and time-consuming and can quickly run on request for any development branch of EnergyPlus and OpenStudio. Feb. 28, 2018 2/28/18 Buildings
20967 SkySpark psychrometricsExt psychrometricsExt is a SkySpark extension that provides a set of psychrometric functions using equations from the ASHRAE Fundamentals handbook. Feb. 26, 2018 2/26/18 Grid Modernization
5464 URBANopt: Urban Renewable Building And Neighborhood Optimization URBANopt is a user interface for creating and running district- and city-scale building energy simulations. The framework is built around the OpenStudio Urban Measures, which are part of the OpenStudio project. Building footprints, building height, building type, and other data can be imported from public records or other sources. Footprints and locations for new buildings and district systems can also be specified. June 20, 2017 6/20/17 Buildings
19927 Open OA: Wind Plant Performance Project Benchmarking This collection of software supports the Wind Plant Performance Project, including (but not limited to) operational analysis, historical validation, and benchmarking code. Python Feb. 17, 2018 2/17/18 Wind; Water
10510 bifacialvf: Bifacial PV View Factor Performance Simulation bifacialvf is a self-contained view factor (or configuration factor) model that replicates a 5-row PV system of infinite extent perpendicular to the module rows. Single-axis tracking is supported, and hourly output files based on typical meteorological year inputs are saved. Spatial nonuniformity is reported, with multiple rear-facing irradiances collected on the back of each module row. Feb. 16, 2018 2/16/18 Solar
19952 glm This is a Fast GridLAB-D file format parser. Feb. 12, 2018 2/12/18 Grid Modernization
25202 DAO-Tk: Design, Analysis, and Operations Toolkit DAO-Tk allows users to explore design optimization, operations decision, and performance characterization of concentrating solar power tower plants. Users interface with the tool through a scripting language, and results are reported in time series tables, plots, runtime logs, and design outputs. Users choose from a list of variables such as tower height, solar multiple, design-point irradiance, and thermal storage size and specify information about the system using a list of parameters. The software can then optimize the specified variables to reduce the cost of energy produced by the system while meeting certain production requirements, accounting for uncertain weather and electricity price forecasts and correcting for equipment failures or repair time. April 26, 2019 4/26/19 Solar
10521 HTEM-DB API Examples HTEM DB is a public database and web application that contains measurements of thin-film materials collected using high-throughput (combinatorial) synthesis and measurement processes. This software provides examples of using the HTEM-DB API to access, plot, and analyze the data contained therein. Dec. 26, 2017 12/26/17 Solar; Materials Science
10529 WIND Toolkit Highly Scalable Data Service API Examples The WIND Toolkit Highly Scalable Data Service API examples provide example Python software notebooks and a javascript visualization that demonstrate use of the HSDS API using data for NREL's WIND Toolkit. Dec. 26, 2017 12/26/17 Wind
6869 bifacial_radiance bifacial_radiance contains a series of Python wrapper functions to make working with RADIANCE easier, particularly for PV researchers interested in bifacial PV performance. Users can configure site details such as latitude/longitude and ground albedo. A bifacial PV system is created with a number of PV modules in rows. The user can specify ground clearance height, row spacing, tilt and azimuth angle, etc. The scene is created, and annual or hourly irradiance profiles are applied to identify the rear irradiance fraction for a given condition. Python Dec. 17, 2017 12/17/17 Solar
39183 MHKiT-Python (Marine Hydrokinetic Toolkit) MHKiT-Python is a Python package designed for marine renewable energy applications to assist in data processing and visualization. The software package includes functionality for data processing, data visualization, data quality control, resource assessment, device performance, and device loads. Python Jan. 15, 2020 1/15/20 Water
39206 MHKit-MATLAB MHKiT-MATLAB is a MATLAB package designed for marine renewable energy applications to assist in data processing and visualization. The software package includes functionality for q-Quality control analysis, wave resource and wave performance, river resource and device, tidal resource and device, data visualization, mechanical loads analysis, and power quality assessments. MATLAB Jan. 15, 2020 1/15/20 Water
10783 sssmatch: Standard ScenarioS Match sssmatch accepts limited information about an existing transmission system model and computes a new generation mix based on matching a particular NREL Standard Scenario generation mix and minimizing the distance between the system's original mix and the final one. The distance metric is computed on a nodal basis. Oct. 30, 2017 10/30/17 Grid Modernization
57334 LibIsopach LibIsopach is a toolkit for high-performance, distributed, immersive visualization, leveraging modern OpenGL. It features a multiprocess scenegraph, explicit instance rendering, mesh generation, and three-dimensional user interaction event processing. C++ Dec. 6, 2016 12/6/16
5612 PIDG: PLEXOS Input Data Generator PIDG enables PLEXOS users to better version their data, automate data processing, collaborate in developing inputs, and transfer data between production cost modeling and other power systems analysis software. PIDG can process data in a generalized format from multiple input sources, including CSV files, PostgreSQL databases, and PSS/E .raw files and write it to an Excel file that can be imported into PLEXOS with limited manual intervention. Aug. 19, 2017 8/19/17 Grid Modernization
5600 Quantized State Systems Solver With Functional Mock-Up Units Support This is a quantized state systems solver for integration into Modelon's Optimica Compiler Toolkit as part of the "Spawn of EnergyPlus" project. Aug. 14, 2017 8/14/17 Buildings
5596 LK Scripting Language The LK scripting language is a simple and fast computer programming language designed for easy integration with existing software to enable automation of tasks. The LK language is used by NREL's System Advisor Model (SAM), the SAM Software Development Kit (SDK), and SolTrace products. LK is easily extensible and adaptable to new software because of its small footprint and is designed to be statically linked into other software. C++ Aug. 10, 2017 8/10/17 Energy Analysis
5583 This is a Python direct-mode interface to OpenDSS, a distribution system simulator for electric power systems. Python Aug. 9, 2017 8/9/17 Grid Modernization
5565 RdTools RdTools is an open-source library to support reproducible technical analysis of time series data from photovoltaic energy systems. The library aims to provide best practice analysis routines along with the building blocks for users to tailor their own analyses. Python Aug. 7, 2017 8/7/17 Solar
5518 LaDa LaDa is a high-throughput software platform to create, launch, and analyze physics-related calculations. The frontend is a Python API that allows the user to create any conceivable first-principles physics calculation. Is It coupled to an ipython interface to launch and retrieve large number of calculations. It was successfully used in high-throughput calculations of point defect formation enthalpies, compound formation enthalpies, and a genetic algorithm search of direct-gap silicon/germanium structures. C++; Python July 18, 2017 7/18/17 Materials Science
5522 MAGMA: Multi-Area Grid Metrics Analyzer The MAGMA software package is created in the R scripting language that reads a SQL database and outputs tables and figures of important data. The SQL database is created by another R package called "rplexos"ùand uses the .zip solution file output by PLEXOS, which is commercially available production cost modeling software. July 17, 2017 7/17/17 Wind
5508 Haystack-Ruby The open source Project Haystack initiative defines meta data and communication standards related to data from buildings and intelligent devices. The Project Haystack REST API defines standard formats and operations for exchanging Haystack tagged data over HTTP. The HaystackRuby gem wraps calls to this REST API to enable Ruby application to easily integrate data hosted on a Project Haystack compliant server. The HaystackRuby gem was developed to support applications related to campus energy. July 16, 2017 7/16/17 Buildings
22151; PV Shading Database This software is a simplified method for modeling the impact of arbitrary partial shading conditions on PV array performance. It implements a simple method for modeling shade loss: a database of shade impact results (loss percentages), generated using a validated, detailed simulation tool and encompassing a variety of shading scenarios. The database is intended to predict shading losses in crystalline silicon PV arrays and is accessed using basic inputs generally available in any PV simulation tool. Performance predictions using the database are within 1%–2% of measured data for several partially shaded PV systems and within 1% of those predicted by the full, detailed simulation tool on an annual basis. C++ Sept. 7, 2016 9/7/16 Solar
5441 WindSE: Wind Systems Engineering WindSE models atmospheric fluid flow within a wind plant and performs optimization of the turbine positions or operating settings. WindSE is a Python package that uses a FEniCS backend to perform wind farm simulations and optimization. Python June 1, 2017 6/1/17 Wind
6370 Geospatial Toolkit The Geospatial Toolkit is a map-based software application that integrates resource data and other geographic information systems data for integrated resource assessment. The nonresource, country-specific data for each toolkit comes from agencies within each country as well as global data sets. Aug. 15, 2016 8/15/16 Energy Analysis
23011 WindView WindView is a situational awareness and decision support platform that provides grid operators with knowledge of the state and performance of wind power on their system. WindView does not provide any data; it is a visualization platform that requires users to provide their own data. JavaScript; CSS; HTML Oct. 2, 2018 10/2/18 Wind
25846 plexos-coad: Plexos Class-Object-Attribute Data Manipulation Tool This class object attribute data software is written as a programmatic interface to the PLEXOS dataset that enables the decomposition of the data set in time and execution in parallel without loss of integrity. It also enables the recomposition of solution data sets that are the output of distributed parallel execution of the core simulator. May 2, 2017 5/2/17 Grid Modernization
65263 BSM: Biomass Scenario Model BSM is a system dynamics model built on the STELLA software platform. The model represents the dynamic interactions of the major sectors of the biofuels industry: feedstock production, feedstock logistics, biomass to biofuels conversion, and biofuels end use, including fuels inventory, dispensing, distribution, fuel use, and the vehicle fleet. BSM represents contextual aspects of the developing biofuels industry, including investment in new biomass-to-biofuel conversion technologies, competition from petroleum fuels, vehicle demand for biofuels, and various government policies, using all of these to simulate the development of the industry. The purpose of the BSM is to generate and explore plausible scenarios for the evolution of a biofuels industry in the United States. STELLA March 22, 2017 3/22/17 Transportation and Mobility; Bioenergy
7518 DSS2ePHASOR: "OpenDSS" Files to "ePHASORSIM" Interface Files Converter This converter extracts the required feeder data information from Opendss format files, also known as .dss files, to construct the feeder data spreadsheets to be interfaced with the ePHASORSIM simulator. Feb. 17, 2017 2/17/17 Grid Modernization
57328 Retrospective Mobility Analysis This application provides users with ex post information on foregone travel conclusions to induce travel behavioral change. Python; JavaScript; Ruby Dec. 31, 2015 12/31/15 Transportation and Mobility
4569 HPXML2RESO: Home Performance XML to Real Estate Standards Organization Data Dictionary Translator This translator takes fields from HPXML and translates them into RESO's Data Dictionary, which is used in Multiple Listing Service systems for real estate transactions across the country. The purpose is to get energy efficiency data into the real estate transaction. Aug. 23, 2016 8/23/16 Buildings
4577 Developer Network NREL's Developer Network,, provides data that users can access to provide data to their own analyses as well as mobile and web applications. Developers can retrieve the data through a web services application programming interface (API). The Developer Network handles overhead of serving up web services such as key management, authentication, analytics, reporting, documentation standards, and throttling in a common architecture while allowing web services and APIs to be maintained and managed independently. Aug. 22, 2016 8/22/16
4825 Multivariate Gaussian Process Model for Correlated Time Series in R RmultiProcess software is designed to work with multiple correlated sensors. The characteristic that allows data to be filled in or the support to be changed is correlation, the interdependence between observations. June 27, 2016 6/27/16
4313 SOWFA: Simulator for Wind Farm Applications This is a modular tool for simulating wind plant aerodynamics with computational fluid dynamics and turbine structural and control response to the incoming flow. June 27, 2016 6/27/16 Wind
4304 REPRA: Renewable Energy Probabilistic Resource Assessment This package is the R implementation of the REPRA tool, a statistical tool that models the effect of variable generation in the calculation of resource adequacy metrics. It is built as a research tool to explore different methodologies and technologies. C++; R June 27, 2016 6/27/16 Grid Modernization
4270 hescore-hpxml: HPXML to Home Energy Score Translator Home Energy Score is a simulation-based rating method for existing homes. Home Performance XML (HPXML) is a data transfer standard for home energy audit and retrofit data used throughout the industry. This software receives an HPXML document and translates the building characteristics into HEScore inputs compliant with their API. June 27, 2016 6/27/16 Buildings
4377 BioLUC: Bioenergy and Land Use Change This system dynamics global land use change (LUC) model examines LUC attributed to biofuel production. The model represents major global stocks and flows and produces results under different food and biofuel demand assumptions, with flexible regional divisions. This model is not intended to generate precise numerical estimates but to provide insights into the drivers and dynamic interactions of LUC, population, dietary choices, and biofuel policy. June 27, 2016 6/27/16 Transportation and Mobility; Bioenergy
4266 LandOpExSE This is a cost model for operational expenditures for land-based wind plants. June 26, 2016 6/26/16 Wind
4343 TowerSE This is a module for static aerodynamic and structural analysis of wind turbine towers. June 26, 2016 6/26/16 Wind
4359 This is a Python module for preprocessing and evaluating aerodynamic ainoil data, primarily for wind turbine applications. Python June 26, 2016 6/26/16 Wind
4347 RotorSE This is a module for static aerodynamic and structural analysis of wind turbine rotors. June 26, 2016 6/26/16 Wind
4288 PyFrame3DD This module allows Frame3DD to interact with codes developed within the Systems Engineering WIDEM toolbox. June 26, 2016 6/26/16 Wind
4284 JacketSE This is a module for static hydrodynamic, aerodynamic, and structural design and analysis of wind turbine jacket and towers within the Systems Engineering toolbox. June 26, 2016 6/26/16 Wind
4355 CCBlade This is a blade element momentum method for analyzing wind turbine aerodynamic performance that is robust (guaranteed convergence), fast (superlinear convergence rate), and smooth (continuously differentiable). June 26, 2016 6/26/16 Wind
4274 Reegle Tagging API (CKAN Extension) The software consists of a CKAN extension to an existing REEGLE Tagging API. June 26, 2016 6/26/16 Wind
4248 GDX-pandas This package builds on existing software to provide clear and simple interfaces between GDX files and pandas DataFrames. June 26, 2016 6/26/16 Wind
4325 Turbine_costSE: Turbine Cost Systems Engineering Model turb_costSE is a set of models that link wind turbine component masses (and a few other key variables) to component costs. June 26, 2016 6/26/16 Wind
4363 NREL_CSM: NREL Wind Energy Cost and Scaling Model NREL_CSM is a set of models that provides an overall cost of energy analysis for the wind plant. June 26, 2016 6/26/16 Wind
4330 Nacelle Systems Engineering Model and Hub Systems Engineering Model nacelleSE and hubSE are models that size wind turbine hub system and drivetrain components based on key turbine design parameters and load inputs from a rotor model. June 26, 2016 6/26/16 Wind
4870 Parallel Planes Information Visualization This software presents a user-provided multivariate data set as an interactive 3D visualization so the user can explore the correlation between variables in the observations and the distribution of observations among the variables. June 26, 2016 6/26/16
4392 BACnet Client The BACnet Client gathers data from building control systems through the BACnet protocol and sends them to various destinations for data logging and collection. June 26, 2016 6/26/16 Buildings
4368 DrivePy DrivePy is physics-based drivetrain model that sizes drivetrain components based on aerodynamic and operational loads for use in a systems engineering model. It also calculates costs based on empirical data collected by NREL's National Wind Technology Center. June 26, 2016 6/26/16 Wind
4387 LEEI: Learning in Emerging Energy Industries This software is a learning model excerpted from the BSM that can be used to examine effects of different learning rates and different techno-economics on industry evolution. June 26, 2016 6/26/16 Energy Analysis; Bioenergy
4351 pBEAM: Polynomial Beam Element Analysis Module pBEAM is a finite element code for beam-like structures. The methodology uses Euler Bernoulli beam elements with 12 degrees of freedom (three translation and three rotational at each end of the element). June 26, 2016 6/26/16 Wind
4293 FLORIS: FLOw Redirection and Induction in Steady State FLORIS is an engineering model of wind turbine wake interactions that accounts for the effects of turbines on the flow through the creation of wakes and accounting for both velocity deficit and wake redirection through yaw. June 26, 2016 6/26/16 Wind
4300 rplexos rplexos is an R package that processes and facilitates analysis of solutions from PLEXOS. PLEXOS is a production cost model that simulates the behavior of the power system. June 26, 2016 6/26/16 Grid Modernization
4383 Dakota Driver This code connects the Sandia C++-based DAKOTA optimization and analysis tool with NASA's Python-based openMDAO systems engineering framework. It allows DAKOTA to be used as an openMDAO "driver." DAKOTA contains an array of advanced sensitivity, uncertainty quantification, and optimization methods. These are now available in a "pluggable" way to any openMDAO-based workflow. June 26, 2016 6/26/16
4855 DVIEW DView is a time series data visualization tool that provides several ways to plot time series data sets. It is particularly well suited for browsing the results of energy systems simulation programs such as BeOpt, SAM, and PVWatts. June 26, 2016 6/26/16
4252 GridLAB-D is an agent-based distribution system simulation environment that allows fine-grained end-user models, including geospatial and network topology detail. GridLAB-D addresses the lack of runtime interaction by designing a flexible communication interface,, that uses Python to pass messages between one or more GridLAB-D instances and a Smart Grid simulator. June 26, 2016 6/26/16 Grid Modernization
4241 OpenStudio - Fault Modeling The software provides a suite of OpenStudio measures (scripts) for modeling typical HVAC system faults in commercial buildings and also includes supporting materials, example projects, and OpenStudio measures for reporting fault costs and energy impacts. June 26, 2016 6/26/16 Buildings
4279 FUSED-Wind: Framework for Unified Systems Engineering and Design of Wind Plants Cost Models and Case Analyzer These are cost and case analyzer components of the FUSED-Wind software. These are small pieces of code that define interfaces between software to do wind plant cost of energy and analysis of load cases for an aeroelastic code. June 26, 2016 6/26/16 Wind
4234 STREAMM: Simulation Toolkit for Renewable Energy Advanced Materials Modeling STREAMM is a collection of Python classes and scripts that enables and eases the setup of input files and configuration files for simulations of advanced energy materials. The core STREAMM Python classes provide a general framework for storing, manipulating, and analyzing atomic/molecular coordinates to be used in quantum chemistry and classical molecular dynamics simulations of soft materials systems. The design focuses on enabling the interoperability of materials simulation codes such as GROMACS, LAMMPS, and Gaussian. June 26, 2016 6/26/16 Materials Science
4319 NREL WISDEM: NREL Wind Integrated System Design and Engineering Model NREL_WISDEM is an integrated model for wind turbines and plants developed in Python based on the open source software OpenMDAO. NREL_WISDEM is a set of wrappers for various wind turbine models that integrates pre-existing models together into OpenMDAO. It is organized into groups, each with their own repositories, including Plant_CostSE, Plant_EnergySE, Turbine_CostSE, and TurbineSE. June 26, 2016 6/26/16 Wind
4308 Land-Based Balance Of System This is a cost model for land-based balance of system for wind turbines. June 25, 2016 6/25/16 Wind
10651 BRICR BRICR is software for translating NREL's BuildingSync® XML (BSXML) to OpenStudio® Workflow (OSW) files for simulation. Each BSXML contains information about a building as well as multiple possible energy-efficiency upgrades. An OSW file is created and run for each possible efficiency upgrade. The results of all simulations are stored in BSXML format. March 12, 2018 3/12/18 Buildings
57338 Matlab-Excel Interface for OpenDSS This software allows users of the OpenDSS grid modeling software to access their load flow models using a GUI interface developed in MATLAB. The circuit definitions are entered into a Microsoft Excel spreadsheet, which makes circuit creation and editing a much simpler process than with the basic text-based editors used in the native OpenDSS interface. Plot tools can be accessed through a MATLAB GUI once the desired parameters have been simulated. MATLAB; Delphi; Free Pascal April 27, 2015 4/27/15 Grid Modernization
5835 EnergyPlus Originally developed in 1999, EnergyPlus® is a whole-building energy simulation program that engineers, architects, and researchers use to model both energy consumption—for heating, cooling, ventilation, lighting, and plug and process loads—and water use in buildings. EnergyPlus is a console-based program that reads input and writes output to text files. It ships with a number of utilities, including IDF-Editor for creating input files using a simple spreadsheet-like interface, EP-Launch for managing input and output files and performing batch simulations, and EP-Compare for graphically comparing the results of two or more simulations. Major updates to EnergyPlus are released twice annually. Oct. 1, 2017 10/1/17 Buildings
19480 glmgen glmgen is Python scripting of GridLAB-D input files (.glm) derived from the Open Modeling Framework. Aug. 27, 2015 8/27/15 Grid Modernization
57283 FAST Simulation Tool Containing Methods for Predicting the Dynamic Response of Wind Turbines FAST is a simulation tool for modeling the dynamic response of horizontal-axis wind turbines. FAST employs a combined modal and multibody structural-dynamics formulation in the time domain. Fortran; C; MATLAB Aug. 12, 2015 8/12/15 Wind
5591 SEED: Standard Energy Efficiency Data Platform The Standard Energy Efficiency Data Platform® provides public agencies and other organizations with a standardized but flexible, cost-effective, secure, enterprise data platform to manage portfolio-scale building performance data from a variety of sources. The SEED Platform streamlines the administrative effort required by public agencies implementing building performance and transparency programs. Aug. 9, 2017 8/9/17 Buildings
5574 PelePhysics PelePhysics is a suite of physics packages that provides functionality of use to reacting hydrodynamics CFD codes. The initial release includes an interface to reaction rate mechanism evaluation, transport coefficient evaluation, and a generalized equation of state facility. Both generic evaluators and interfaces to code from externally available tools (Fuego for chemical rates, EGLib for transport coefficients) are provided. Aug. 5, 2017 8/5/17 Computational Science
5569 PeleC PeleC is an adaptive-mesh compressible hydrodynamics code for reacting flows. It solves the compressible Navier-Stokes with multispecies transport in a block-structured framework. The resulting algorithm is well suited for flows with localized resolution requirements and robust to discontinuities. User-controllable refinement criteria have the potential to result in extremely small numerical dissipation and dispersion, making this code appropriate for both research and applied usage. Aug. 5, 2017 8/5/17 Computational Science
20680 PelePhysics v2.0 This software provides fluid properties—including thermodynamic relationships, transport properties, and reaction kinetics—for computational fluid dynamics packages. Aug. 15, 2018 8/15/18 Computational Science
57279 IHT: Tools for Computing Insolation Absorption by Particle Laden Flows IHT is a toolkit for computing radiative heat exchange between particles. The algorithm is based on the Photon Monte Carlo approach and implemented as a library that can be interfaced with a variety of CFD codes to analyze radiative heat transfer in particle laden flows. Fortran Sept. 17, 2013 9/17/13 Materials Science
3541 Aeroelastic Systems Engineering Module These small pieces of software wrap the FAST model so FAST can be integrated into WISDEM. Note: This repository is deprecated and was archived (read-only) in November 2019. NREL's WISDEM® software has moved to a single, integrated repository. Python Sept. 19, 2014 9/19/14 Wind
20289 Gear-SCouP Gear-SCouP is an analytical model for the rating analysis of articulated spline coupling designs. Articulated splines are commonly used in the planetary stage of wind turbine gearboxes as the means of transmitting the driving torque while improving load-sharing. Direct measurement of spline loads and performance is extremely challenging because of limited accessibility and spline design standards are limited. For a given torque and shaft misalignment, Gear-SCouP quickly yields physical insights into relationships between the spline design parameters and resulting loads, bending, contact, and shear stresses, and safety factors considering various heat treatment methods. MATLAB Oct. 18, 2013 10/18/13 Wind
19678 WISDEM/dakota_driver This is an OpenMDAO driver for DAKOTA (Design Analysis Kit for Optimization and Terascale Applications). The code connects the Sandia National Laboratory's C++-based DAKOTA optimization and analysis tool with NASA's Python-based OpenMDAO systems engineering framework. It allows DAKOTA to be used as an openMDAO "driver. DAKOTA contains an array of advanced sensitivity, uncertainty quantification, and optimization methods. These are now available in a "pluggable" way to any OpenMDAO-based workflow. July 17, 2013 7/17/13 Wind
54266 AMReX AMReX is a software framework for the development and implementation of massively parallel algorithms using block-structured adaptive mesh refinement (AMR). Block-structured AMR provides the basis for the temporal and spatial discretization strategy for a variety of applications. AMReX provides a unified infrastructure with the functionality needed for applications to be able to effectively and efficiently use machines from laptops to exascale accelerator-based architectures. AMR reduces the computational cost and memory footprint compared to a uniform mesh while preserving accurate descriptions of different physical processes in complex multiphysics algorithms. C++ April 28, 2017 4/28/17 Computational Science
54948 SEDS: Stochastic Energy Deployment System SEDS is an economywide energy model of the United States that captures dynamics among supply, demand, and pricing of the major energy types consumed and produced. These dynamics are captured by including the effects of macroeconomics; the resources and costs of primary energy types such as oil, natural gas, coal, and biomass; the conversion of primary fuels into energy products such as petroleum products, electricity, biofuels, and hydrogen; and the end-use consumption attributable to residential and commercial buildings, light and heavy transportation, and industry. Projections from SEDS extend to the year 2050 by 1-year time steps and are generally projected at the national level. SEDS differs from other economywide energy models in that it explicitly accounts for uncertainty in technology, markets, and policy. Ruby Nov. 30, 2011 11/30/11 Energy Analysis
5216 HELICS: Hierarchical Engine for Large-scale Infrastructure Co-Simulation HELICS is designed to support very large-scale (100,000+ federates) cosimulations with off-the-shelf power system, communication, market, and end-use tools. Key features include cross-platform operating system support, the integration of event-driven (e.g., packetized communication) and time series (e.g., power flow) simulations, and the ability to coiterate among federates to ensure physical model convergence at each time step. April 23, 2017 4/23/17 Grid Modernization
4561 OPENSTUDIO OPENSTUDIO® is a cross-platform (Windows, Mac, and Linux) collection of software tools to support whole-building energy modeling using EnergyPlus and advanced daylight analysis using Radiance. It is an open-source project to facilitate community development, extension, and private sector adoption. OpenStudio includes graphical interfaces along with a software development kit. In addition to the graphical interface, OpenStudio allows building researchers and software developers to quickly get started through its multiple entry levels, including access through C++, Ruby, and C#. Users can leverage the Ruby interface to create OpenStudio Measures that can be easily shared and applied to OpenStudio Models. Aug. 15, 2016 8/15/16 Buildings
22737 SAM: System Advisor Model The SAM Open Source Project repository contains the source code, tools, and instructions to build a desktop version NREL's System Advisor Model. SAM is a simulation program for electricity generation projects. It has models for renewable energy systems and financial models for residential, commercial, and utility-scale projects. Aug. 1, 2007 8/1/07 Solar
39136 EPXMLPreprocessor The EPXMLPreprocessor reads an abstract description of a building and writes a complete, fully-functional EnergyPlus input file. The building XML model is the text input file to the preprocessor that contains a minimal set of high-level parameters to describe the building type, geometry, loads, and systems. The preprocessor constructs the resulting EnergyPlus building model by automatically generating and connecting all of the required EnergyPlus objects based on a set of built-in modeling assumptions. This software is no longer supported, and users may use at their own risk. Pascal Buildings
18515 api-umbrella-cookbook This is the repository for the api-umbrella-cookbook.
18505 API Umbrella API Umbrella is an open-source API management platform for exposing web service APIs. The goal of API Umbrella is to make life easier for both API creators and API consumers.

The links to outside entities provided on this page are not intended to imply any endorsement, recommendation, or favoring of any entity, product, or service by Alliance for Sustainable Energy LLC, the National Renewable Energy Laboratory, the U.S. Department of Energy, or the U.S. Government.