Open Source Tools for PV Modeling

Solar power researchers and engineers are developing a growing number of open source software tools for energy modeling. This website aims to catalog these tools.

Please see the companion paper in the Proceedings of the WCPEC-7 (2018).

Also see the companion presentation at the 10th PVPMC Workshop and 2018 Systems Symposium, plus additional talks on open source PV software from DOE, NREL, and Sandia. Additionally, some national labs maintain their own software indexes: Sandia, NREL.

We welcome your contributions to this archive! To contribute or update information on a tool, please submit a pull request to the openpvtools GitHub repository.

Table of Open Source PV Tools. A * denotes that the project is under active development.
Name Purpose Years developed Documentation Website Development Website Primary Language License
PVLib Matlab General purpose PV modeling 2012? - * Matlab BSD 3
PVLib Python General purpose PV modeling 2013 - * Python BSD 3
System Advisor Model Desktop app for PV, wind, CSP modeling, financial 2004 - * C++ Mixed MIT/GPL 3
ssc Compute modules for SAM 2004 - * C, C++ Mixed MIT/GPL 3
RdTools Technical analysis of PV timeseries data 2016 - * Python MIT
PVFree API for obtaining PV modeling parameters 2015 - * Python BSD 2
SolarUtils Python wrappers of C solar position and spectral decomposition 2016 Python BSD 3
Pecos Performance monitoring 2016 - * Python BSD 3
Solpy General purpose PV modeling 2011-2015 Python LGPL 2.1
PVMismatch IV curve calculator for mismatched cells 2012 - * Python BSD 3
photovoltaic General purpose PV modeling 2017 - * Python GPL 3
feedinlib PV timeseries modeling 2015 - * Python GPL 3
CASSYS PV system modeling 2015 - * Excel, C# BSD 3
Bifacial PV View Factor model Bifacial modeling 2017 - * Python Unknown
solaR General purpose PV modeling 2010 - * R GPL 3
pvfactors Diffuse shading and bifacial irradiance modeling 2016 - * Python BSD 3
pvcaptest Capacity testing per ASTM E2848 2017 - Python MIT
SolarData Accessing public solar datasets 2018 - R GPL 2
SolCore modelling solar cells and semiconductor materials 2017 – * Python LGPL 3
PVplr analysis of Performance Loss Rates 2020 – * R BSD 3
PVAnalytics PV data QA and analysis 2020 - * Python MIT
twoaxistracking Two-axis tracker shading 2021 - * Python BSD 3

Please see the linked sections to the left for discussion, or click the Next button below.