NREL-reV 0.9.7__tar.gz → 0.12.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. nrel_rev-0.12.2/MANIFEST.in +12 -0
  2. nrel_rev-0.12.2/NREL_reV.egg-info/PKG-INFO +250 -0
  3. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/NREL_reV.egg-info/SOURCES.txt +18 -3
  4. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/NREL_reV.egg-info/entry_points.txt +0 -1
  5. nrel_rev-0.12.2/NREL_reV.egg-info/requires.txt +25 -0
  6. nrel_rev-0.12.2/PKG-INFO +250 -0
  7. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/README.rst +1 -19
  8. nrel_rev-0.12.2/pyproject.toml +143 -0
  9. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/SAM/SAM.py +30 -7
  10. nrel_rev-0.12.2/reV/SAM/defaults/USA AZ Phoenix Sky Harbor Intl Ap (TMY3).csv +8763 -0
  11. nrel_rev-0.12.2/reV/SAM/defaults/USA CA Daggett (TMY2).csv +8763 -0
  12. nrel_rev-0.12.2/reV/SAM/defaults/US_Wave.csv +2921 -0
  13. nrel_rev-0.12.2/reV/SAM/defaults/WY Southern-Flat Lands.srw +8765 -0
  14. nrel_rev-0.12.2/reV/SAM/defaults/geothermal.json +93 -0
  15. nrel_rev-0.12.2/reV/SAM/defaults/i_pvwattsv5.json +13 -0
  16. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/SAM/defaults.py +3 -19
  17. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/SAM/generation.py +18 -52
  18. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/bespoke/bespoke.py +39 -81
  19. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/bespoke/cli_bespoke.py +0 -2
  20. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/bespoke/pack_turbs.py +15 -17
  21. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/bespoke/place_turbines.py +2 -25
  22. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/config/output_request.py +10 -1
  23. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/config/project_points.py +126 -19
  24. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/generation/base.py +22 -4
  25. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/generation/generation.py +45 -22
  26. nrel_rev-0.12.2/reV/generation/output_attributes/generation.json +288 -0
  27. nrel_rev-0.12.2/reV/generation/output_attributes/lcoe_fcr.json +9 -0
  28. nrel_rev-0.12.2/reV/generation/output_attributes/lcoe_fcr_inputs.json +65 -0
  29. nrel_rev-0.12.2/reV/generation/output_attributes/linear_fresnel.json +72 -0
  30. nrel_rev-0.12.2/reV/generation/output_attributes/other.json +8 -0
  31. nrel_rev-0.12.2/reV/generation/output_attributes/single_owner.json +44 -0
  32. nrel_rev-0.12.2/reV/generation/output_attributes/solar_water_heat.json +93 -0
  33. nrel_rev-0.12.2/reV/generation/output_attributes/trough_heat.json +58 -0
  34. nrel_rev-0.12.2/reV/generation/output_attributes/windbos.json +30 -0
  35. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/losses/power_curve.py +3 -0
  36. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/losses/scheduled.py +35 -14
  37. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/supply_curve/aggregation.py +47 -0
  38. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/supply_curve/points.py +54 -0
  39. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/supply_curve/sc_aggregation.py +76 -38
  40. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/utilities/__init__.py +2 -0
  41. nrel_rev-0.12.2/reV/utilities/_clean_readme.py +28 -0
  42. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/utilities/curtailment.py +17 -13
  43. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/version.py +1 -1
  44. NREL-reV-0.9.7/NREL_reV.egg-info/PKG-INFO +0 -235
  45. NREL-reV-0.9.7/NREL_reV.egg-info/not-zip-safe +0 -1
  46. NREL-reV-0.9.7/NREL_reV.egg-info/requires.txt +0 -25
  47. NREL-reV-0.9.7/PKG-INFO +0 -235
  48. NREL-reV-0.9.7/reV/bespoke/plotting_functions.py +0 -178
  49. NREL-reV-0.9.7/setup.py +0 -113
  50. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/LICENSE +0 -0
  51. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/NREL_reV.egg-info/dependency_links.txt +0 -0
  52. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/NREL_reV.egg-info/top_level.txt +0 -0
  53. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/SAM/__init__.py +0 -0
  54. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/SAM/econ.py +0 -0
  55. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/SAM/version_checker.py +0 -0
  56. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/SAM/windbos.py +0 -0
  57. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/__init__.py +0 -0
  58. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/bespoke/__init__.py +0 -0
  59. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/bespoke/gradient_free.py +0 -0
  60. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/cli.py +0 -0
  61. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/config/__init__.py +0 -0
  62. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/config/base_analysis_config.py +0 -0
  63. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/config/base_config.py +0 -0
  64. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/config/cli_project_points.py +0 -0
  65. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/config/curtailment.py +0 -0
  66. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/config/execution.py +0 -0
  67. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/config/sam_config.py +0 -0
  68. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/econ/__init__.py +0 -0
  69. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/econ/cli_econ.py +0 -0
  70. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/econ/econ.py +0 -0
  71. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/econ/economies_of_scale.py +0 -0
  72. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/econ/utilities.py +0 -0
  73. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/generation/__init__.py +0 -0
  74. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/generation/cli_gen.py +0 -0
  75. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/handlers/__init__.py +0 -0
  76. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/handlers/cli_collect.py +0 -0
  77. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/handlers/cli_multi_year.py +0 -0
  78. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/handlers/exclusions.py +0 -0
  79. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/handlers/multi_year.py +0 -0
  80. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/handlers/outputs.py +0 -0
  81. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/handlers/transmission.py +0 -0
  82. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/hybrids/__init__.py +0 -0
  83. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/hybrids/cli_hybrids.py +0 -0
  84. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/hybrids/hybrid_methods.py +0 -0
  85. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/hybrids/hybrids.py +0 -0
  86. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/losses/__init__.py +0 -0
  87. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/losses/utils.py +0 -0
  88. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/nrwal/__init__.py +0 -0
  89. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/nrwal/cli_nrwal.py +0 -0
  90. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/nrwal/nrwal.py +0 -0
  91. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/qa_qc/__init__.py +0 -0
  92. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/qa_qc/cli_qa_qc.py +0 -0
  93. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/qa_qc/qa_qc.py +0 -0
  94. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/qa_qc/summary.py +0 -0
  95. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/rep_profiles/__init__.py +0 -0
  96. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/rep_profiles/cli_rep_profiles.py +0 -0
  97. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/rep_profiles/rep_profiles.py +0 -0
  98. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/supply_curve/__init__.py +0 -0
  99. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/supply_curve/cli_sc_aggregation.py +0 -0
  100. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/supply_curve/cli_supply_curve.py +0 -0
  101. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/supply_curve/competitive_wind_farms.py +0 -0
  102. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/supply_curve/exclusions.py +0 -0
  103. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/supply_curve/extent.py +0 -0
  104. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/supply_curve/supply_curve.py +0 -0
  105. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/supply_curve/tech_mapping.py +0 -0
  106. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/utilities/cli_functions.py +0 -0
  107. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/utilities/exceptions.py +0 -0
  108. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/utilities/pytest_utils.py +0 -0
  109. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/reV/utilities/slots.py +0 -0
  110. {NREL-reV-0.9.7 → nrel_rev-0.12.2}/setup.cfg +0 -0
@@ -0,0 +1,12 @@
1
+ exclude tests/**
2
+ exclude examples/**
3
+ exclude docs/**
4
+ exclude build/**
5
+ exclude dist/**
6
+ exclude .github/**
7
+ exclude .git/**
8
+ exclude conda.recipe/**
9
+ exclude .*
10
+ exclude *.git
11
+ exclude Dockerfile
12
+ exclude docker-compose.yml
@@ -0,0 +1,250 @@
1
+ Metadata-Version: 2.4
2
+ Name: NREL-reV
3
+ Version: 0.12.2
4
+ Summary: National Renewable Energy Laboratory's (NREL's) Renewable Energy Potential(V) Model: reV
5
+ Author-email: Galen Maclaurin <galen.maclaurin@nrel.gov>
6
+ Maintainer-email: Grant Buster <gbuster@nrel.gov>, Paul Pinchuk <ppinchuk@nrel.gov>
7
+ License-Expression: BSD-3-Clause
8
+ Project-URL: homepage, https://www2.nrel.gov/gis/renewable-energy-potential
9
+ Project-URL: documentation, https://nrel.github.io/reV/
10
+ Project-URL: repository, https://github.com/NREL/reV
11
+ Keywords: reV,NREL
12
+ Classifier: Development Status :: 4 - Beta
13
+ Classifier: Intended Audience :: Science/Research
14
+ Classifier: Natural Language :: English
15
+ Classifier: Programming Language :: Python :: 3.9
16
+ Classifier: Programming Language :: Python :: 3.10
17
+ Classifier: Programming Language :: Python :: 3.11
18
+ Requires-Python: >=3.9
19
+ Description-Content-Type: text/x-rst
20
+ License-File: LICENSE
21
+ Requires-Dist: NREL-gaps<0.8,>=0.7.0
22
+ Requires-Dist: NREL-NRWAL<1,>=0.0.7
23
+ Requires-Dist: NREL-PySAM<7,~=6.0.1
24
+ Requires-Dist: NREL-rex<0.3,>=0.2.99
25
+ Requires-Dist: numpy~=1.24.4
26
+ Requires-Dist: packaging<25,>=20.3
27
+ Requires-Dist: plotly<6,>=4.7.1
28
+ Requires-Dist: plotting<0.0.8,>=0.0.6
29
+ Requires-Dist: shapely<2
30
+ Provides-Extra: test
31
+ Requires-Dist: pytest<9,>=8.3.3; extra == "test"
32
+ Provides-Extra: dev
33
+ Requires-Dist: flake8; extra == "dev"
34
+ Requires-Dist: pre-commit; extra == "dev"
35
+ Requires-Dist: pylint; extra == "dev"
36
+ Provides-Extra: hsds
37
+ Requires-Dist: hsds<1,>=0.8.4; extra == "hsds"
38
+ Provides-Extra: build
39
+ Requires-Dist: build<2,>=1.2.2; extra == "build"
40
+ Requires-Dist: pkginfo<2,>=1.10.0; extra == "build"
41
+ Requires-Dist: twine<7,>=6.1.0; extra == "build"
42
+ Dynamic: license-file
43
+
44
+ |Docs| |Tests| |Linter| |PythonV| |Pypi| |Codecov| |Zenodo| |Binder|
45
+
46
+ .. |Docs| image:: https://github.com/NREL/reV/workflows/Documentation/badge.svg
47
+ :target: https://nrel.github.io/reV/
48
+
49
+ .. |Tests| image:: https://github.com/NREL/reV/workflows/Pytests/badge.svg
50
+ :target: https://github.com/NREL/reV/actions?query=workflow%3A%22Pytests%22
51
+
52
+ .. |Linter| image:: https://github.com/NREL/reV/workflows/Lint%20Code%20Base/badge.svg
53
+ :target: https://github.com/NREL/reV/actions?query=workflow%3A%22Lint+Code+Base%22
54
+
55
+ .. |PythonV| image:: https://img.shields.io/pypi/pyversions/NREL-reV.svg
56
+ :target: https://pypi.org/project/NREL-reV/
57
+
58
+ .. |Pypi| image:: https://badge.fury.io/py/NREL-reV.svg
59
+ :target: https://badge.fury.io/py/NREL-reV
60
+
61
+ .. |Codecov| image:: https://codecov.io/gh/nrel/reV/branch/main/graph/badge.svg?token=U4ZU9F0K0Z
62
+ :target: https://codecov.io/gh/nrel/reV
63
+
64
+ .. |Zenodo| image:: https://zenodo.org/badge/201343076.svg
65
+ :target: https://zenodo.org/badge/latestdoi/201343076
66
+
67
+ .. |Binder| image:: https://mybinder.org/badge_logo.svg
68
+ :target: https://mybinder.org/v2/gh/nrel/reV/HEAD
69
+
70
+ |
71
+
72
+ .. inclusion-intro
73
+
74
+ **reV** (the Renewable Energy Potential model)
75
+ is an open-source geospatial techno-economic tool that
76
+ estimates renewable energy technical potential (capacity and generation),
77
+ system cost, and supply curves for solar photovoltaics (PV),
78
+ concentrating solar power (CSP), geothermal, and wind energy.
79
+ reV allows researchers to include exhaustive spatial representation
80
+ of the built and natural environment into the generation and cost estimates
81
+ that it computes.
82
+
83
+ reV is highly dynamic, allowing analysts to assess potential at varying levels
84
+ of detail — from a single site up to an entire continent at temporal resolutions
85
+ ranging from five minutes to hourly, spanning a single year or multiple decades.
86
+ The reV model can (and has been used to) provide broad coverage across large spatial
87
+ extents, including North America, South and Central Asia, the Middle East, South America,
88
+ and South Africa to inform national and international-scale analyses. Still, reV is
89
+ equally well-suited for regional infrastructure and deployment planning and analysis.
90
+
91
+
92
+ For a detailed description of reV capabilities and functionality, see the
93
+ `NREL reV technical report <https://www.nrel.gov/docs/fy19osti/73067.pdf>`_.
94
+
95
+ How does reV work?
96
+ ==================
97
+ reV is a set of `Python classes and functions <https://nrel.github.io/reV/_autosummary/reV.html>`_
98
+ that can be executed on HPC systems using `CLI commands <https://nrel.github.io/reV/_cli/cli.html>`_.
99
+ A full reV execution consists of one or more compute modules
100
+ (each consisting of their own Python class/CLI command)
101
+ strung together using a `pipeline framework <https://nrel.github.io/reV/_cli/reV%20pipeline.html>`_,
102
+ or configured using `batch <https://nrel.github.io/reV/_cli/reV%20batch.html>`_.
103
+
104
+ A typical reV workflow begins with input wind/solar/geothermal resource data
105
+ (following the `rex data format <https://nrel.github.io/rex/misc/examples.nsrdb.html#data-format>`_)
106
+ that is passed through the generation module. This output is then collected across space and time
107
+ (if executed on the HPC), before being sent off to be aggregated under user-specified land exclusion scenarios.
108
+ Exclusion data is typically provided via a collection of high-resolution spatial data layers stored in an HDF5 file.
109
+ This file must be readable by reV's
110
+ `ExclusionLayers <https://nrel.github.io/reV/_autosummary/reV.handlers.exclusions.ExclusionLayers.html#reV.handlers.exclusions.ExclusionLayers>`_
111
+ class. See the `reVX Setbacks utility <https://nrel.github.io/reVX/misc/examples.setbacks.html>`_
112
+ for instructions on generating setback exclusions for use in reV.
113
+ Next, transmission costs are computed for each aggregated
114
+ "supply-curve point" using user-provided transmission cost tables.
115
+ See the `reVX transmission cost calculator utility <https://github.com/NREL/reVX/tree/main/reVX/least_cost_xmission/>`_
116
+ for instructions on generating transmission cost tables.
117
+ Finally, the supply curves and initial generation data can be used to
118
+ extract representative generation profiles for each supply curve point.
119
+
120
+
121
+
122
+
123
+ .. inclusion-flowchart
124
+
125
+
126
+
127
+ |
128
+
129
+ .. inclusion-get-started
130
+
131
+ To get up and running with reV, first head over to the `installation page <https://nrel.github.io/reV/misc/installation.html>`_,
132
+ then check out some of the `Examples <https://nrel.github.io/reV/misc/examples.html>`_ or
133
+ go straight to the `CLI Documentation <https://nrel.github.io/reV/_cli/cli.html>`_!
134
+ You can also check out the `guide on running GAPs models <https://nrel.github.io/gaps/misc/examples.users.html>`_.
135
+
136
+ .. inclusion-install
137
+
138
+
139
+ Installing reV
140
+ ==============
141
+
142
+ NOTE: The installation instruction below assume that you have python installed
143
+ on your machine and are using `conda <https://docs.conda.io/en/latest/index.html>`_
144
+ as your package/environment manager.
145
+
146
+ Option 1: Install from PIP (recommended for analysts):
147
+
148
+ 1. Create a new environment:
149
+ ``conda create --name rev python=3.9``
150
+
151
+ 2. Activate directory:
152
+ ``conda activate rev``
153
+
154
+ 3. Install reV:
155
+ 1) ``pip install NREL-reV`` or
156
+
157
+ - NOTE: If you install using conda and want to run from files directly on S3 like in the `running reV locally example <https://nrel.github.io/reV/misc/examples.running_locally.html>`_
158
+ you will also need to install S3 filesystem dependencies: ``pip install NREL-reV[s3]``
159
+
160
+ - NOTE: If you install using conda and want to use `HSDS <https://github.com/NREL/hsds-examples>`_
161
+ you will also need to install HSDS dependencies: ``pip install NREL-reV[hsds]``
162
+
163
+ Option 2: Clone repo (recommended for developers)
164
+
165
+ 1. from home dir, ``git clone git@github.com:NREL/reV.git``
166
+
167
+ 2. Create ``reV`` environment and install package
168
+ 1) Create a conda env: ``conda create -n rev``
169
+ 2) Run the command: ``conda activate rev``
170
+ 3) cd into the repo cloned in 1.
171
+ 4) prior to running ``pip`` below, make sure the branch is correct (install
172
+ from main!)
173
+ 5) Install ``reV`` and its dependencies by running:
174
+ ``pip install .`` (or ``pip install -e .`` if running a dev branch
175
+ or working on the source code)
176
+
177
+ 3. Check that ``reV`` was installed successfully
178
+ 1) From any directory, run the following commands. This should return the
179
+ help pages for the CLI's.
180
+
181
+ - ``reV``
182
+
183
+
184
+ reV command line tools
185
+ ======================
186
+
187
+ - `reV <https://nrel.github.io/reV/_cli/reV.html#reV>`_
188
+ - `reV template-configs <https://nrel.github.io/reV/_cli/reV%20template-configs.html>`_
189
+ - `reV batch <https://nrel.github.io/reV/_cli/reV%20batch.html>`_
190
+ - `reV pipeline <https://nrel.github.io/reV/_cli/reV%20pipeline.html>`_
191
+ - `reV project-points <https://nrel.github.io/reV/_cli/reV%20project-points.html>`_
192
+ - `reV bespoke <https://nrel.github.io/reV/_cli/reV%20bespoke.html>`_
193
+ - `reV generation <https://nrel.github.io/reV/_cli/reV%20generation.html>`_
194
+ - `reV econ <https://nrel.github.io/reV/_cli/reV%20econ.html>`_
195
+ - `reV collect <https://nrel.github.io/reV/_cli/reV%20collect.html>`_
196
+ - `reV multiyear <https://nrel.github.io/reV/_cli/reV%20multiyear.html>`_
197
+ - `reV supply-curve-aggregation <https://nrel.github.io/reV/_cli/reV%20supply-curve-aggregation.html>`_
198
+ - `reV supply-curve <https://nrel.github.io/reV/_cli/reV%20supply-curve.html>`_
199
+ - `reV rep-profiles <https://nrel.github.io/reV/_cli/reV%20rep-profiles.html>`_
200
+ - `reV hybrids <https://nrel.github.io/reV/_cli/reV%20hybrids.html>`_
201
+ - `reV nrwal <https://nrel.github.io/reV/_cli/reV%20nrwal.html>`_
202
+ - `reV qa-qc <https://nrel.github.io/reV/_cli/reV%20qa-qc.html>`_
203
+ - `reV script <https://nrel.github.io/reV/_cli/reV%20script.html>`_
204
+ - `reV status <https://nrel.github.io/reV/_cli/reV%20status.html>`_
205
+ - `reV reset-status <https://nrel.github.io/reV/_cli/reV%20reset-status.html>`_
206
+
207
+
208
+ Launching a run
209
+
210
+ Tips
211
+
212
+ - Only use a screen session if running the pipeline module: `screen -S rev`
213
+ - `Full pipeline execution <https://nrel.github.io/reV/misc/examples.full_pipeline_execution.html>`_
214
+
215
+ .. code-block:: bash
216
+
217
+ reV pipeline -c "/scratch/user/rev/config_pipeline.json"
218
+
219
+ - Running simply generation or econ can just be done from the console:
220
+
221
+ .. code-block:: bash
222
+
223
+ reV generation -c "/scratch/user/rev/config_gen.json"
224
+
225
+ General Run times and Node configuration on Eagle
226
+
227
+ - WTK Conus: 10-20 nodes per year walltime 1-4 hours
228
+ - NSRDB Conus: 5 nodes walltime 2 hours
229
+
230
+ `Eagle node requests <https://nrel.github.io/reV/misc/examples.eagle_node_requests.html>`_
231
+
232
+
233
+ .. inclusion-citation
234
+
235
+
236
+ Recommended Citation
237
+ ====================
238
+
239
+ Please cite both the technical paper and the software with the version and
240
+ DOI you used:
241
+
242
+ Maclaurin, Galen J., Nicholas W. Grue, Anthony J. Lopez, Donna M. Heimiller,
243
+ Michael Rossol, Grant Buster, and Travis Williams. 2019. “The Renewable Energy
244
+ Potential (reV) Model: A Geospatial Platform for Technical Potential and Supply
245
+ Curve Modeling.” Golden, Colorado, United States: National Renewable Energy
246
+ Laboratory. NREL/TP-6A20-73067. https://doi.org/10.2172/1563140.
247
+
248
+ Grant Buster, Michael Rossol, Paul Pinchuk, Brandon N Benton, Robert Spencer,
249
+ Mike Bannister, & Travis Williams. (2023).
250
+ NREL/reV: reV 0.8.0 (v0.8.0). Zenodo. https://doi.org/10.5281/zenodo.8247528
@@ -1,11 +1,11 @@
1
1
  LICENSE
2
+ MANIFEST.in
2
3
  README.rst
3
- setup.py
4
+ pyproject.toml
4
5
  NREL_reV.egg-info/PKG-INFO
5
6
  NREL_reV.egg-info/SOURCES.txt
6
7
  NREL_reV.egg-info/dependency_links.txt
7
8
  NREL_reV.egg-info/entry_points.txt
8
- NREL_reV.egg-info/not-zip-safe
9
9
  NREL_reV.egg-info/requires.txt
10
10
  NREL_reV.egg-info/top_level.txt
11
11
  reV/__init__.py
@@ -18,13 +18,18 @@ reV/SAM/econ.py
18
18
  reV/SAM/generation.py
19
19
  reV/SAM/version_checker.py
20
20
  reV/SAM/windbos.py
21
+ reV/SAM/defaults/USA AZ Phoenix Sky Harbor Intl Ap (TMY3).csv
22
+ reV/SAM/defaults/USA CA Daggett (TMY2).csv
23
+ reV/SAM/defaults/US_Wave.csv
24
+ reV/SAM/defaults/WY Southern-Flat Lands.srw
25
+ reV/SAM/defaults/geothermal.json
26
+ reV/SAM/defaults/i_pvwattsv5.json
21
27
  reV/bespoke/__init__.py
22
28
  reV/bespoke/bespoke.py
23
29
  reV/bespoke/cli_bespoke.py
24
30
  reV/bespoke/gradient_free.py
25
31
  reV/bespoke/pack_turbs.py
26
32
  reV/bespoke/place_turbines.py
27
- reV/bespoke/plotting_functions.py
28
33
  reV/config/__init__.py
29
34
  reV/config/base_analysis_config.py
30
35
  reV/config/base_config.py
@@ -43,6 +48,15 @@ reV/generation/__init__.py
43
48
  reV/generation/base.py
44
49
  reV/generation/cli_gen.py
45
50
  reV/generation/generation.py
51
+ reV/generation/output_attributes/generation.json
52
+ reV/generation/output_attributes/lcoe_fcr.json
53
+ reV/generation/output_attributes/lcoe_fcr_inputs.json
54
+ reV/generation/output_attributes/linear_fresnel.json
55
+ reV/generation/output_attributes/other.json
56
+ reV/generation/output_attributes/single_owner.json
57
+ reV/generation/output_attributes/solar_water_heat.json
58
+ reV/generation/output_attributes/trough_heat.json
59
+ reV/generation/output_attributes/windbos.json
46
60
  reV/handlers/__init__.py
47
61
  reV/handlers/cli_collect.py
48
62
  reV/handlers/cli_multi_year.py
@@ -80,6 +94,7 @@ reV/supply_curve/sc_aggregation.py
80
94
  reV/supply_curve/supply_curve.py
81
95
  reV/supply_curve/tech_mapping.py
82
96
  reV/utilities/__init__.py
97
+ reV/utilities/_clean_readme.py
83
98
  reV/utilities/cli_functions.py
84
99
  reV/utilities/curtailment.py
85
100
  reV/utilities/exceptions.py
@@ -12,4 +12,3 @@ reV-project-points = reV.config.cli_project_points:project_points
12
12
  reV-rep-profiles = reV.rep_profiles.cli_rep_profiles:main
13
13
  reV-supply-curve = reV.supply_curve.cli_supply_curve:main
14
14
  reV-supply-curve-aggregation = reV.supply_curve.cli_sc_aggregation:main
15
-
@@ -0,0 +1,25 @@
1
+ NREL-gaps<0.8,>=0.7.0
2
+ NREL-NRWAL<1,>=0.0.7
3
+ NREL-PySAM<7,~=6.0.1
4
+ NREL-rex<0.3,>=0.2.99
5
+ numpy~=1.24.4
6
+ packaging<25,>=20.3
7
+ plotly<6,>=4.7.1
8
+ plotting<0.0.8,>=0.0.6
9
+ shapely<2
10
+
11
+ [build]
12
+ build<2,>=1.2.2
13
+ pkginfo<2,>=1.10.0
14
+ twine<7,>=6.1.0
15
+
16
+ [dev]
17
+ flake8
18
+ pre-commit
19
+ pylint
20
+
21
+ [hsds]
22
+ hsds<1,>=0.8.4
23
+
24
+ [test]
25
+ pytest<9,>=8.3.3
@@ -0,0 +1,250 @@
1
+ Metadata-Version: 2.4
2
+ Name: NREL-reV
3
+ Version: 0.12.2
4
+ Summary: National Renewable Energy Laboratory's (NREL's) Renewable Energy Potential(V) Model: reV
5
+ Author-email: Galen Maclaurin <galen.maclaurin@nrel.gov>
6
+ Maintainer-email: Grant Buster <gbuster@nrel.gov>, Paul Pinchuk <ppinchuk@nrel.gov>
7
+ License-Expression: BSD-3-Clause
8
+ Project-URL: homepage, https://www2.nrel.gov/gis/renewable-energy-potential
9
+ Project-URL: documentation, https://nrel.github.io/reV/
10
+ Project-URL: repository, https://github.com/NREL/reV
11
+ Keywords: reV,NREL
12
+ Classifier: Development Status :: 4 - Beta
13
+ Classifier: Intended Audience :: Science/Research
14
+ Classifier: Natural Language :: English
15
+ Classifier: Programming Language :: Python :: 3.9
16
+ Classifier: Programming Language :: Python :: 3.10
17
+ Classifier: Programming Language :: Python :: 3.11
18
+ Requires-Python: >=3.9
19
+ Description-Content-Type: text/x-rst
20
+ License-File: LICENSE
21
+ Requires-Dist: NREL-gaps<0.8,>=0.7.0
22
+ Requires-Dist: NREL-NRWAL<1,>=0.0.7
23
+ Requires-Dist: NREL-PySAM<7,~=6.0.1
24
+ Requires-Dist: NREL-rex<0.3,>=0.2.99
25
+ Requires-Dist: numpy~=1.24.4
26
+ Requires-Dist: packaging<25,>=20.3
27
+ Requires-Dist: plotly<6,>=4.7.1
28
+ Requires-Dist: plotting<0.0.8,>=0.0.6
29
+ Requires-Dist: shapely<2
30
+ Provides-Extra: test
31
+ Requires-Dist: pytest<9,>=8.3.3; extra == "test"
32
+ Provides-Extra: dev
33
+ Requires-Dist: flake8; extra == "dev"
34
+ Requires-Dist: pre-commit; extra == "dev"
35
+ Requires-Dist: pylint; extra == "dev"
36
+ Provides-Extra: hsds
37
+ Requires-Dist: hsds<1,>=0.8.4; extra == "hsds"
38
+ Provides-Extra: build
39
+ Requires-Dist: build<2,>=1.2.2; extra == "build"
40
+ Requires-Dist: pkginfo<2,>=1.10.0; extra == "build"
41
+ Requires-Dist: twine<7,>=6.1.0; extra == "build"
42
+ Dynamic: license-file
43
+
44
+ |Docs| |Tests| |Linter| |PythonV| |Pypi| |Codecov| |Zenodo| |Binder|
45
+
46
+ .. |Docs| image:: https://github.com/NREL/reV/workflows/Documentation/badge.svg
47
+ :target: https://nrel.github.io/reV/
48
+
49
+ .. |Tests| image:: https://github.com/NREL/reV/workflows/Pytests/badge.svg
50
+ :target: https://github.com/NREL/reV/actions?query=workflow%3A%22Pytests%22
51
+
52
+ .. |Linter| image:: https://github.com/NREL/reV/workflows/Lint%20Code%20Base/badge.svg
53
+ :target: https://github.com/NREL/reV/actions?query=workflow%3A%22Lint+Code+Base%22
54
+
55
+ .. |PythonV| image:: https://img.shields.io/pypi/pyversions/NREL-reV.svg
56
+ :target: https://pypi.org/project/NREL-reV/
57
+
58
+ .. |Pypi| image:: https://badge.fury.io/py/NREL-reV.svg
59
+ :target: https://badge.fury.io/py/NREL-reV
60
+
61
+ .. |Codecov| image:: https://codecov.io/gh/nrel/reV/branch/main/graph/badge.svg?token=U4ZU9F0K0Z
62
+ :target: https://codecov.io/gh/nrel/reV
63
+
64
+ .. |Zenodo| image:: https://zenodo.org/badge/201343076.svg
65
+ :target: https://zenodo.org/badge/latestdoi/201343076
66
+
67
+ .. |Binder| image:: https://mybinder.org/badge_logo.svg
68
+ :target: https://mybinder.org/v2/gh/nrel/reV/HEAD
69
+
70
+ |
71
+
72
+ .. inclusion-intro
73
+
74
+ **reV** (the Renewable Energy Potential model)
75
+ is an open-source geospatial techno-economic tool that
76
+ estimates renewable energy technical potential (capacity and generation),
77
+ system cost, and supply curves for solar photovoltaics (PV),
78
+ concentrating solar power (CSP), geothermal, and wind energy.
79
+ reV allows researchers to include exhaustive spatial representation
80
+ of the built and natural environment into the generation and cost estimates
81
+ that it computes.
82
+
83
+ reV is highly dynamic, allowing analysts to assess potential at varying levels
84
+ of detail — from a single site up to an entire continent at temporal resolutions
85
+ ranging from five minutes to hourly, spanning a single year or multiple decades.
86
+ The reV model can (and has been used to) provide broad coverage across large spatial
87
+ extents, including North America, South and Central Asia, the Middle East, South America,
88
+ and South Africa to inform national and international-scale analyses. Still, reV is
89
+ equally well-suited for regional infrastructure and deployment planning and analysis.
90
+
91
+
92
+ For a detailed description of reV capabilities and functionality, see the
93
+ `NREL reV technical report <https://www.nrel.gov/docs/fy19osti/73067.pdf>`_.
94
+
95
+ How does reV work?
96
+ ==================
97
+ reV is a set of `Python classes and functions <https://nrel.github.io/reV/_autosummary/reV.html>`_
98
+ that can be executed on HPC systems using `CLI commands <https://nrel.github.io/reV/_cli/cli.html>`_.
99
+ A full reV execution consists of one or more compute modules
100
+ (each consisting of their own Python class/CLI command)
101
+ strung together using a `pipeline framework <https://nrel.github.io/reV/_cli/reV%20pipeline.html>`_,
102
+ or configured using `batch <https://nrel.github.io/reV/_cli/reV%20batch.html>`_.
103
+
104
+ A typical reV workflow begins with input wind/solar/geothermal resource data
105
+ (following the `rex data format <https://nrel.github.io/rex/misc/examples.nsrdb.html#data-format>`_)
106
+ that is passed through the generation module. This output is then collected across space and time
107
+ (if executed on the HPC), before being sent off to be aggregated under user-specified land exclusion scenarios.
108
+ Exclusion data is typically provided via a collection of high-resolution spatial data layers stored in an HDF5 file.
109
+ This file must be readable by reV's
110
+ `ExclusionLayers <https://nrel.github.io/reV/_autosummary/reV.handlers.exclusions.ExclusionLayers.html#reV.handlers.exclusions.ExclusionLayers>`_
111
+ class. See the `reVX Setbacks utility <https://nrel.github.io/reVX/misc/examples.setbacks.html>`_
112
+ for instructions on generating setback exclusions for use in reV.
113
+ Next, transmission costs are computed for each aggregated
114
+ "supply-curve point" using user-provided transmission cost tables.
115
+ See the `reVX transmission cost calculator utility <https://github.com/NREL/reVX/tree/main/reVX/least_cost_xmission/>`_
116
+ for instructions on generating transmission cost tables.
117
+ Finally, the supply curves and initial generation data can be used to
118
+ extract representative generation profiles for each supply curve point.
119
+
120
+
121
+
122
+
123
+ .. inclusion-flowchart
124
+
125
+
126
+
127
+ |
128
+
129
+ .. inclusion-get-started
130
+
131
+ To get up and running with reV, first head over to the `installation page <https://nrel.github.io/reV/misc/installation.html>`_,
132
+ then check out some of the `Examples <https://nrel.github.io/reV/misc/examples.html>`_ or
133
+ go straight to the `CLI Documentation <https://nrel.github.io/reV/_cli/cli.html>`_!
134
+ You can also check out the `guide on running GAPs models <https://nrel.github.io/gaps/misc/examples.users.html>`_.
135
+
136
+ .. inclusion-install
137
+
138
+
139
+ Installing reV
140
+ ==============
141
+
142
+ NOTE: The installation instruction below assume that you have python installed
143
+ on your machine and are using `conda <https://docs.conda.io/en/latest/index.html>`_
144
+ as your package/environment manager.
145
+
146
+ Option 1: Install from PIP (recommended for analysts):
147
+
148
+ 1. Create a new environment:
149
+ ``conda create --name rev python=3.9``
150
+
151
+ 2. Activate directory:
152
+ ``conda activate rev``
153
+
154
+ 3. Install reV:
155
+ 1) ``pip install NREL-reV`` or
156
+
157
+ - NOTE: If you install using conda and want to run from files directly on S3 like in the `running reV locally example <https://nrel.github.io/reV/misc/examples.running_locally.html>`_
158
+ you will also need to install S3 filesystem dependencies: ``pip install NREL-reV[s3]``
159
+
160
+ - NOTE: If you install using conda and want to use `HSDS <https://github.com/NREL/hsds-examples>`_
161
+ you will also need to install HSDS dependencies: ``pip install NREL-reV[hsds]``
162
+
163
+ Option 2: Clone repo (recommended for developers)
164
+
165
+ 1. from home dir, ``git clone git@github.com:NREL/reV.git``
166
+
167
+ 2. Create ``reV`` environment and install package
168
+ 1) Create a conda env: ``conda create -n rev``
169
+ 2) Run the command: ``conda activate rev``
170
+ 3) cd into the repo cloned in 1.
171
+ 4) prior to running ``pip`` below, make sure the branch is correct (install
172
+ from main!)
173
+ 5) Install ``reV`` and its dependencies by running:
174
+ ``pip install .`` (or ``pip install -e .`` if running a dev branch
175
+ or working on the source code)
176
+
177
+ 3. Check that ``reV`` was installed successfully
178
+ 1) From any directory, run the following commands. This should return the
179
+ help pages for the CLI's.
180
+
181
+ - ``reV``
182
+
183
+
184
+ reV command line tools
185
+ ======================
186
+
187
+ - `reV <https://nrel.github.io/reV/_cli/reV.html#reV>`_
188
+ - `reV template-configs <https://nrel.github.io/reV/_cli/reV%20template-configs.html>`_
189
+ - `reV batch <https://nrel.github.io/reV/_cli/reV%20batch.html>`_
190
+ - `reV pipeline <https://nrel.github.io/reV/_cli/reV%20pipeline.html>`_
191
+ - `reV project-points <https://nrel.github.io/reV/_cli/reV%20project-points.html>`_
192
+ - `reV bespoke <https://nrel.github.io/reV/_cli/reV%20bespoke.html>`_
193
+ - `reV generation <https://nrel.github.io/reV/_cli/reV%20generation.html>`_
194
+ - `reV econ <https://nrel.github.io/reV/_cli/reV%20econ.html>`_
195
+ - `reV collect <https://nrel.github.io/reV/_cli/reV%20collect.html>`_
196
+ - `reV multiyear <https://nrel.github.io/reV/_cli/reV%20multiyear.html>`_
197
+ - `reV supply-curve-aggregation <https://nrel.github.io/reV/_cli/reV%20supply-curve-aggregation.html>`_
198
+ - `reV supply-curve <https://nrel.github.io/reV/_cli/reV%20supply-curve.html>`_
199
+ - `reV rep-profiles <https://nrel.github.io/reV/_cli/reV%20rep-profiles.html>`_
200
+ - `reV hybrids <https://nrel.github.io/reV/_cli/reV%20hybrids.html>`_
201
+ - `reV nrwal <https://nrel.github.io/reV/_cli/reV%20nrwal.html>`_
202
+ - `reV qa-qc <https://nrel.github.io/reV/_cli/reV%20qa-qc.html>`_
203
+ - `reV script <https://nrel.github.io/reV/_cli/reV%20script.html>`_
204
+ - `reV status <https://nrel.github.io/reV/_cli/reV%20status.html>`_
205
+ - `reV reset-status <https://nrel.github.io/reV/_cli/reV%20reset-status.html>`_
206
+
207
+
208
+ Launching a run
209
+
210
+ Tips
211
+
212
+ - Only use a screen session if running the pipeline module: `screen -S rev`
213
+ - `Full pipeline execution <https://nrel.github.io/reV/misc/examples.full_pipeline_execution.html>`_
214
+
215
+ .. code-block:: bash
216
+
217
+ reV pipeline -c "/scratch/user/rev/config_pipeline.json"
218
+
219
+ - Running simply generation or econ can just be done from the console:
220
+
221
+ .. code-block:: bash
222
+
223
+ reV generation -c "/scratch/user/rev/config_gen.json"
224
+
225
+ General Run times and Node configuration on Eagle
226
+
227
+ - WTK Conus: 10-20 nodes per year walltime 1-4 hours
228
+ - NSRDB Conus: 5 nodes walltime 2 hours
229
+
230
+ `Eagle node requests <https://nrel.github.io/reV/misc/examples.eagle_node_requests.html>`_
231
+
232
+
233
+ .. inclusion-citation
234
+
235
+
236
+ Recommended Citation
237
+ ====================
238
+
239
+ Please cite both the technical paper and the software with the version and
240
+ DOI you used:
241
+
242
+ Maclaurin, Galen J., Nicholas W. Grue, Anthony J. Lopez, Donna M. Heimiller,
243
+ Michael Rossol, Grant Buster, and Travis Williams. 2019. “The Renewable Energy
244
+ Potential (reV) Model: A Geospatial Platform for Technical Potential and Supply
245
+ Curve Modeling.” Golden, Colorado, United States: National Renewable Energy
246
+ Laboratory. NREL/TP-6A20-73067. https://doi.org/10.2172/1563140.
247
+
248
+ Grant Buster, Michael Rossol, Paul Pinchuk, Brandon N Benton, Robert Spencer,
249
+ Mike Bannister, & Travis Williams. (2023).
250
+ NREL/reV: reV 0.8.0 (v0.8.0). Zenodo. https://doi.org/10.5281/zenodo.8247528
@@ -1,13 +1,3 @@
1
- .. raw:: html
2
-
3
- <p align="center">
4
- <img height="180" src="docs/source/_static/logo.png" />
5
- &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
6
- <img height="170" src="docs/source/_static/RD100_2023_Winner_Logo.png" />
7
- </p>
8
-
9
- ---------
10
-
11
1
  |Docs| |Tests| |Linter| |PythonV| |Pypi| |Codecov| |Zenodo| |Binder|
12
2
 
13
3
  .. |Docs| image:: https://github.com/NREL/reV/workflows/Documentation/badge.svg
@@ -84,16 +74,12 @@ for instructions on generating transmission cost tables.
84
74
  Finally, the supply curves and initial generation data can be used to
85
75
  extract representative generation profiles for each supply curve point.
86
76
 
87
- A visual summary of this process is given below:
77
+
88
78
 
89
79
 
90
80
  .. inclusion-flowchart
91
81
 
92
- .. raw:: html
93
82
 
94
- <p align="center">
95
- <img height="400" src="docs/source/_static/rev_flow_chart.png" />
96
- </p>
97
83
 
98
84
  |
99
85
 
@@ -115,7 +101,6 @@ on your machine and are using `conda <https://docs.conda.io/en/latest/index.html
115
101
  as your package/environment manager.
116
102
 
117
103
  Option 1: Install from PIP (recommended for analysts):
118
- ---------------------------------------------------------------
119
104
 
120
105
  1. Create a new environment:
121
106
  ``conda create --name rev python=3.9``
@@ -133,7 +118,6 @@ Option 1: Install from PIP (recommended for analysts):
133
118
  you will also need to install HSDS dependencies: ``pip install NREL-reV[hsds]``
134
119
 
135
120
  Option 2: Clone repo (recommended for developers)
136
- -------------------------------------------------
137
121
 
138
122
  1. from home dir, ``git clone git@github.com:NREL/reV.git``
139
123
 
@@ -179,7 +163,6 @@ reV command line tools
179
163
 
180
164
 
181
165
  Launching a run
182
- ---------------
183
166
 
184
167
  Tips
185
168
 
@@ -197,7 +180,6 @@ Tips
197
180
  reV generation -c "/scratch/user/rev/config_gen.json"
198
181
 
199
182
  General Run times and Node configuration on Eagle
200
- -------------------------------------------------
201
183
 
202
184
  - WTK Conus: 10-20 nodes per year walltime 1-4 hours
203
185
  - NSRDB Conus: 5 nodes walltime 2 hours