Skip to content

Commit

Permalink
paper
Browse files Browse the repository at this point in the history
  • Loading branch information
Ayala committed Oct 18, 2019
1 parent 1d72247 commit 44950e6
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 7 deletions.
14 changes: 12 additions & 2 deletions paper/paper.bib
Expand Up @@ -134,13 +134,23 @@ @inproceedings{MacAlpine2017

@inproceedings{Stein2019,
author = {Stein, Joshua S. and Deline, C. and {Ayala Pelaez}, S. and Stark, Cameron and Riley, Daniel and Carmignani, Craig},
booktitle = {Keynote presentation at 2019 Photonics North, Quebec City, Canada},
booktitle = {{Keynote presentation at 2019 Photonics North, Quebec City, Canada}},
title = {{Bifacial photovoltaic performance optimization using ray tracing and high performance computing}},
year = {2019}}

@inproceedings{Stein2019b,
author = {Stein, Joshua S and Prilliman, Matthew and Stark, Cameron and Nagyvary, John and {Ayala Pelaez}, Silvana and Deline, Chris},
booktitle = {36th EU PVSEC, Marseille, France},
booktitle = {{36th EU PVSEC, Marseille, France}},
pages = {1},
title = {{Bifacial performance optimization studies using Bifacial Radiance and high performance computing}},
year = {2019}}

@inproceedings{Ward1994,
author = {Ward, Gregory J.},
booktitle = {{21st Annual Conference on Computer Graphics and Interactive Techniques}},
doi = {10.1145/192161.192286},
isbn = {0897916670},
issn = {0097-8930},
pages = {459--472},
title = {{The RADIANCE lighting simulation and rendering system}},
year = {1994}}
10 changes: 5 additions & 5 deletions paper/paper.md
Expand Up @@ -22,13 +22,13 @@ bibliography: paper.bib

# Summary

bifacial_radiance is a national laboratory and community-supported open source tool that provides a set of functions and classes for simulating the performance of bifacial photovoltaic systems. bifacial_radiance aims to provide reference implementations of models relevant to bifacial performance, including for example algorithms for sky irradiance simulation, DC power, and irradiance calculation at the modules. bifacial_radiance is an important component of a growing ecosystem of open source tools for solar energy [@Holmgren2018].
bifacial_radiance is a national laboratory developed, community-supported open-source toolkit that provides a set of functions and classes for simulating the performance of bifacial photovoltaic (PV) systems. (Bifacial PV modules collect light on the front AND rear side). bifacial_radiance atuomates calculations of PV system layout and performance, to use along with the popular ray-tracing software tool RADIANCE [@Ward1994]. Specific algorithms include design and layout of PV modules, reflective ground surfaces, shading obstructions, and irradiance calculations throughout the system, among others. bifacial_radiance is an important component of a growing ecosystem of open source tools for solar energy [@Holmgren2018].

bifacial_radiance is developed on Github by contributors from academia, national laboratories, and private industry. Bifacial_Radiance is released copyrighted by the Alliance for Sustainable Energy with a BSD 3-clause license allowing permissive use with attribution. Bifacial_radiance is extensively tested for functional and algorithm consistency. Continuous integration services check each pull request on multiple platforms and Python versions. The bifacial_radiance API is thoroughly documented and detailed tutorials are provided for many features. The documentation includes help for installation and guidelines for contributions. The documentation is hosted at readthedocs.org as of this writing. Github’s issue trackers, a google group and StackOverflow tag provide venues for user discussions and help.
bifacial_radiance is hosted on Github and PyPi, and developed by contributors from national laboratories, academia, and private industry. bifacial_radiance is copyrighted by the Alliance for Sustainable Energy with a BSD 3-clause license allowing permissive use with attribution. bifacial_radiance is extensively tested for functional and algorithm consistency. Continuous integration services check each pull request on multiple platforms and Python versions. The bifacial_radiance API is thoroughly documented, and detailed tutorials are provided for many features. The documentation includes help for installation and guidelines for contributions. The documentation is hosted at readthedocs.org as of this writing. Github’s issue trackers, a google group and StackOverflow tag provide venues for user discussions and help.

The bifacial_radiance API and visual user interface (GUI) were designed to serve the various needs of the many subfields of bifacial solar panel power research and engineering. It is implemented in three layers: core Analysis or raytrace functions; ``Radiance``, ``Meteorological``, ``Scene``, and ``Analysis`` classes; and the ``GUI`` and ``model-chain`` classes. The core API consists of a collection of functions that implement commands for Radiance software. These commands are typical implementations of algorithms and models described in peer-reviewed publications. The functions provide maximum user flexibility, however some of the function arguments require an unwieldy number of parameters. The next API level contains the ``Radiance``, ``Meteorological``, ``Scene``, and ``Analysis`` classes. These abstractions provide simple methods that wrap the core function API layer and communicate with the Radiance software, which provides the raytrace processing capabilities. The method API simplification is achieved by separating the data that represents the object (object attributes) from the data that the object methods operate on (method arguments). For example a ``Radiance`` object is represented by a ``module`` object, meteorological data, and ``scene`` objects. The ``gendaylit`` method operates on the meteorological data to calculate solar position and generate corresponding sky-files, linking them to the ``Radiance`` object. Then ``makeOct`` method combines the sky files, ``module`` and ``scene`` objects when calling the function layer, then return the results from an ``Analysis`` object to the user. The final level of API is the ``ModelChain`` class, designed to simplify and standardize the process of stitching together the many modeling steps necessary to convert a time series of weather data to AC solar power generation, given a PV system and a location. The ``ModelChain`` also powers the ``GUI``, which provides a cohesive visualization of all the input parameters and options for most common modeling needs.
The bifacial_radiance API and graphical user interface (GUI) were designed to serve the various needs of the many subfields of bifacial solar panel power research and engineering. It is implemented in three layers: core RADIANCE-interface functions; ``Bifacial-Radiance``, ``Meteorological``, ``Scene``, and ``Analysis`` classes; and the ``GUI`` and ``model-chain`` classes. The core API consists of a collection of functions that implement commands directly to the RADIANCE software. These commands are typical implementations of algorithms and models described in peer-reviewed publications. The functions provide maximum user flexibility, however some of the function arguments require an unwieldy number of parameters. The next API level contains the ``Bifacial-Radiance``, ``Meteorological``, ``Scene``, and ``Analysis`` classes. These abstractions provide simple methods that wrap the core function API layer and communicate with the RADIANCE software, which provides ray-trace processing capabilities. The method API simplification is achieved by separating the data that represents the object (object attributes) from the data that the object methods operate on (method arguments). For example, a ``Bifacial-Radiance`` object is represented by a ``module`` object, meteorological data, and ``scene`` objects. The ``gendaylit`` method operates on the meteorological data to calculate solar position and generate corresponding sky-files, linking them to the ``Bifacial-Radiance`` object. Then the ``makeOct`` method combines the sky files, ``module`` and ``scene`` objects when calling the function layer, returning the results from an ``Analysis`` object to the user. The final level of API is the ``ModelChain`` class, designed to simplify and standardize the process of stitching together the many modeling steps necessary to convert a time series of weather data to AC solar power generation, given a PV system and a location. The ``ModelChain`` also powers the ``GUI``, which provides a cohesive visualization of all the input parameters and options for most common modeling needs.

bifacial_radiance was first coded in python and released as a stable version in Github in 2017 [@MacAlpine2017], and was submitted as a DOE Code on December of the same year [@Deline2017]. Efforts to make the project more pythonic were undertaken in 2018 [@Ayala2018]. Additional features continue to be added [@Ayala2019, @Stein2019], and the documentation’s “What’s New” section.
bifacial_radiance was first coded in python and released as a stable version in Github in 2017 [@MacAlpine2017], and was submitted as a DOE Code project on December of the same year [@Deline2017]. Efforts to make the project more pythonic were undertaken in 2018 [@Ayala2018]. Additional features continue to be added as described in [@Ayala2019, @Stein2019], and the documentation’s “What’s New” section.

bifacial_radiance has been used in numerous studies, for example, of modeling and validation of rear irradiance for fixed tilt systems [@Ayala2019b], estimation of energy gain and performance ratio for single-axis tracked bifacial systems [@Berrian2019, @Ayala2019c], as well as study of edge effects [@Ayala2019c] and smart tracking algorithms [@Ayala2018b]; benchmarking with other rear-irradiance calculation softwares [@Ayala2018b, @DiOrio2018, @Capelle2019], estimation of shading factor from racking structures [@Ayala2019d], and parameterization of electrical mismatch power losses due to irradiance non-uniformity in bifacial systems [@Deline2019, @Deline2019b, @Ayala2019e]. Sensitivity studies of installation and simulation parameters [@Asgharzadeh2018] and optimization for bifacial fields with the aid of high performance computing [@Stein2019, @Stein2019b] have also been performed with bifacial_radiance.

Expand All @@ -40,7 +40,7 @@ The source code for each bifacial_radiance version is archived with Github (Cont

The authors acknowledge and thank the code, documentation, and discussion contributors to the project.

SAP and CD acknowledge support from the U.S. Department of Energy’s Solar Energy Technology Office.
SAP and CD acknowledge support from the U.S. Department of Energy’s Solar Energy Technology Office. This work was authored, in part, by the National Renewable Energy Laboratory, operated by Alliance for Sustainable Energy, LLC, for the U.S. Department of Energy (DOE) under Contract No. DE-AC36-08GO28308. Funding was provided by the U.S. Department of Energy’s Office of Energy Efficiency and Renewable Energy (EERE) under Solar Energy Technologies Office (SETO) Agreement Number 34910.

The National Renewable Energy Laboratory is a national laboratory of the U.S. Department of Energy, Office of Energy Efficiency and Renewable Energy, operated by the Alliance for Sustainable Energy, LLC.

Expand Down

0 comments on commit 44950e6

Please sign in to comment.