bifacialvf
Bifacial PV View Factor model for system performance calculation.
https://github.com/natlabrockies/bifacialvf
Category: Renewable Energy
Sub Category: Photovoltaics and Solar Energy
Keywords from Contributors
photovoltaic renewable-energy renewables solar-energy bifacial radiance circular-economy circularity circularity-metrics lifetime
Last synced: about 12 hours ago
JSON representation
Repository metadata
Bifacial PV View Factor model for system performance calculation
- Host: GitHub
- URL: https://github.com/natlabrockies/bifacialvf
- Owner: NatLabRockies
- License: other
- Created: 2017-12-13T19:23:14.000Z (about 8 years ago)
- Default Branch: main
- Last Pushed: 2024-08-26T19:16:35.000Z (over 1 year ago)
- Last Synced: 2026-01-23T11:48:48.239Z (19 days ago)
- Language: Python
- Homepage: https://bifacialvf.readthedocs.io
- Size: 39 MB
- Stars: 33
- Watchers: 6
- Forks: 27
- Open Issues: 18
- Releases: 10
-
Metadata Files:
- Readme: README.md
- License: LICENSE
README.md

Bifacial PV View Factor model
keywords: python, configuration factor model, electrical model mismatch for bifacial modules.
Introduction
bifacialvf is a self-contained view factor (or configuration factor) model which
replicates a 5-row PV system of infinite extent perpendicular to the module
rows. The function returns the irradiance profile along the middle (interior)
row by default, but user interface options include 'first', 'interior',
'last', and 'single'. Single-axis tracking is supported, and hourly output
files based on TMY inputs are saved. Spatial nonuniformity is reported, with
multiple rear-facing irradiances collected on the back of each module row.
Bilinear interpolation code add-on to bifacialvf (description below) to pre-generate IV arrays and bifacial coefficients, and to examine the energy production with back side irradiance mismatch for either a portrait or landscape module.
Included are IV curves and bifacial info for a Yingli (standard) module.
Pre-requisites
This software is written for Python 2 or 3. NREL recommends Anaconda Python.
Install using pip
bifacialvf is at the Python Package Index (PyPI). Use pip to install the latest release in your conda environment or virtualenv:
(myenv)$ pip install bifacialvf
Install development mode from GitHub
For those interested in contributing to bifacialvf:
- Clone the bifacialvf repository:
$ git clone https://github.com/NREL/bifacialvf.git bifacialvf-main - Navigate to the repository directory where
setup.pyis located:$ cd bifacialvf-main - Install via pip in development mode:
$ pip install -e .
Usage
For usage examples, see the Jupyter notebooks in \docs\
License
bifacialvf open source code is copyrighted by the Alliance for Sustainable Energy and licensed with BSD-3-Clause terms, found here.
Citing bifacialVF
If you use bifacial_radiance in a published work, please cite:
Marion, B., MacAlpine, S., Deline, C., Asgharzadeh, A., Toor, F., Riley, D., … Hansen, C. (2017). A Practical Irradiance Model for Bifacial PV Modules: Preprint. In 44th IEEE Photovoltaic Specialists Conference. Washington, DC. https://www.nrel.gov/docs/fy17osti/67847.pdf. NREL/CP-5J00-67847
Please also cite the DOI corresponding to the specific version of bifacialVF that you used. bifacialvf DOIs are listed at Zenodo.org.
Silvana Ovaitt, Chris Deline, Mark Mikofski, & Nick DiOrio. (2022). NREL/bifacialvf: v0.1.8 Release (v0.1.8). Zenodo. https://doi.org/10.5281/zenodo.6369162
Bilinear Interpolation based on the publications:
De Soto, W., Klein, S. A., & Beckman, W. A. (2006). Improvement and validation of a model for photovoltaic array performance. Solar Energy, 80(1), 78–88. https://doi.org/10.1016/j.solener.2005.06.010
Marion, B., Rummel, S., & Anderberg, A. (2004). Current--voltage curve translation by bilinear interpolation. Progress in Photovoltaics: Research and Applications, 12(8), 593–607.
bifacialvf: Original code by Bill Marion, Python translation by Silvana Ayala, Updates by Chris Deline & team
Original bilinear interpolation code by Sara MacAlpine, Python translation & Updates by Silvana Ayala
PVMismatch add-on: PVmismatch code from PVMismatch, by Sunpower
Owner metadata
- Name: National Laboratory of the Rockies
- Login: NatLabRockies
- Email:
- Kind: organization
- Description:
- Website: http://www.nrel.gov
- Location: Golden, CO
- Twitter:
- Company:
- Icon url: https://avatars.githubusercontent.com/u/1906800?v=4
- Repositories: 599
- Last ynced at: 2026-01-22T09:57:55.744Z
- Profile URL: https://github.com/NatLabRockies
GitHub Events
Total
Last Year
Committers metadata
Last synced: 3 days ago
Total Commits: 177
Total Committers: 6
Avg Commits per committer: 29.5
Development Distribution Score (DDS): 0.537
Commits in past year: 0
Committers in past year: 0
Avg Commits per committer in past year: 0.0
Development Distribution Score (DDS) in past year: 0.0
| Name | Commits | |
|---|---|---|
| cdeline | c****e@n****v | 82 |
| Silvana Ayala | s****a@n****v | 70 |
| Mark Mikofski | b****o@y****m | 16 |
| dependabot[bot] | 4****] | 5 |
| Ayala | s****a@n****v | 3 |
| Nick DiOrio | n****o@g****m | 1 |
Committer domains:
- nrel.gov: 3
Dependencies
- cycler ==0.10.0
- kiwisolver ==1.2.0
- matplotlib ==3.2.1
- numpy ==1.21.0
- pandas ==0.25.2
- pvlib ==0.7.0
- pvmismatch ==4.1
- py ==1.10.0
- pyparsing ==2.4.7
- pytest ==5.4.1
- pytest-cov ==2.8.1
- python-dateutil ==2.8.0
- pytz ==2019.1
- six ==1.14.0
- tqdm ==4.45.0
- numpy *
- pvlib *
- pvmismatch *
- tqdm *
- actions/checkout v2 composite
- actions/setup-python v2 composite
Score: 5.723585101952381