NREL-reV 0.8.9__py3-none-any.whl → 0.9.0__py3-none-any.whl
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.
- {NREL_reV-0.8.9.dist-info → NREL_reV-0.9.0.dist-info}/METADATA +2 -1
- {NREL_reV-0.8.9.dist-info → NREL_reV-0.9.0.dist-info}/RECORD +34 -34
- reV/SAM/SAM.py +35 -0
- reV/SAM/generation.py +3 -3
- reV/bespoke/bespoke.py +302 -243
- reV/bespoke/cli_bespoke.py +2 -0
- reV/bespoke/place_turbines.py +181 -37
- reV/config/output_request.py +2 -1
- reV/config/project_points.py +1 -3
- reV/econ/econ.py +2 -2
- reV/econ/economies_of_scale.py +58 -35
- reV/generation/base.py +22 -2
- reV/generation/generation.py +31 -13
- reV/generation/output_attributes/lcoe_fcr_inputs.json +38 -3
- reV/handlers/__init__.py +0 -1
- reV/handlers/multi_year.py +45 -17
- reV/handlers/transmission.py +44 -27
- reV/hybrids/hybrid_methods.py +16 -14
- reV/hybrids/hybrids.py +10 -10
- reV/nrwal/nrwal.py +1 -1
- reV/qa_qc/qa_qc.py +1 -1
- reV/qa_qc/summary.py +4 -4
- reV/rep_profiles/rep_profiles.py +1 -1
- reV/supply_curve/exclusions.py +1 -1
- reV/supply_curve/extent.py +1 -1
- reV/supply_curve/points.py +250 -132
- reV/supply_curve/sc_aggregation.py +13 -45
- reV/supply_curve/supply_curve.py +200 -140
- reV/utilities/__init__.py +114 -39
- reV/version.py +1 -1
- {NREL_reV-0.8.9.dist-info → NREL_reV-0.9.0.dist-info}/LICENSE +0 -0
- {NREL_reV-0.8.9.dist-info → NREL_reV-0.9.0.dist-info}/WHEEL +0 -0
- {NREL_reV-0.8.9.dist-info → NREL_reV-0.9.0.dist-info}/entry_points.txt +0 -0
- {NREL_reV-0.8.9.dist-info → NREL_reV-0.9.0.dist-info}/top_level.txt +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: NREL-reV
|
3
|
-
Version: 0.
|
3
|
+
Version: 0.9.0
|
4
4
|
Summary: National Renewable Energy Laboratory's (NREL's) Renewable Energy Potential(V) Model: reV
|
5
5
|
Home-page: https://nrel.github.io/reV/
|
6
6
|
Author: Galen Maclaurin
|
@@ -21,6 +21,7 @@ Requires-Dist: NREL-gaps >=0.6.11
|
|
21
21
|
Requires-Dist: NREL-NRWAL >=0.0.7
|
22
22
|
Requires-Dist: NREL-PySAM ~=4.1.0
|
23
23
|
Requires-Dist: NREL-rex >=0.2.85
|
24
|
+
Requires-Dist: numpy ~=1.24.4
|
24
25
|
Requires-Dist: packaging >=20.3
|
25
26
|
Requires-Dist: plotly >=4.7.1
|
26
27
|
Requires-Dist: plotting >=0.0.6
|
@@ -1,11 +1,11 @@
|
|
1
1
|
reV/__init__.py,sha256=tXTpWu_qVo3uotfSw_TJ-gNbidGaIPPfUTwBlpCMJ-g,856
|
2
2
|
reV/cli.py,sha256=jfGGOr6QlLz8ghA7vBgx5-VgNsy4bBQo5DdHk42-q9A,1601
|
3
|
-
reV/version.py,sha256=
|
4
|
-
reV/SAM/SAM.py,sha256=
|
3
|
+
reV/version.py,sha256=1L_LIr61Neb0VTgrPuHWPOXmcvf03SLALTnnaozT9Gs,50
|
4
|
+
reV/SAM/SAM.py,sha256=KZ5EmHv2Uhoxh3xSDWYm7RmwMw-M7hfsh7P_qY-Shc8,31628
|
5
5
|
reV/SAM/__init__.py,sha256=LJqoncyKDY5ZP5WA4kboh561bce11F9Ge645Izah0EY,240
|
6
6
|
reV/SAM/defaults.py,sha256=2zqT_mfrVtbvU7Pe6H4anNtiVkIyQbuJcGIOARzEsbM,7193
|
7
7
|
reV/SAM/econ.py,sha256=dFhtUXp5eozSsPyk0XXji0HGexKJnxoct8cwE1ApHVg,20704
|
8
|
-
reV/SAM/generation.py,sha256=
|
8
|
+
reV/SAM/generation.py,sha256=_kDNC4ZJ_i9TUw8Tt2GdxgGqZ1hUrEe25WPr_SUas0Q,87542
|
9
9
|
reV/SAM/version_checker.py,sha256=q-eXsmSB08A5hSelNH7uAe_bqPpqjsxaiS3OBjXBs-0,3997
|
10
10
|
reV/SAM/windbos.py,sha256=fnq1uxtSl-vtJth0gTlHkCSsmvDbRROCo9RGdqA7hK4,7504
|
11
11
|
reV/SAM/defaults/USA AZ Phoenix Sky Harbor Intl Ap (TMY3).csv,sha256=8QorTX0ACjgPgNV7kLSpTHOqfY4E17gkkpKB-qseiFk,406896
|
@@ -14,11 +14,11 @@ reV/SAM/defaults/US_Wave.csv,sha256=wvn9vGl9ZGKVHbCyq4muhMI6x1-nAaQfDS3hC4ftwBA,
|
|
14
14
|
reV/SAM/defaults/geothermal.json,sha256=ivxnpxkfBrEl1MwLKXClLJfTfvF5UrbN87wpC_BFLck,2598
|
15
15
|
reV/SAM/defaults/i_pvwattsv5.json,sha256=pZpNlK5MiowZmNwY7i9XRWp9G8pPLirwdBWCMVJVuKE,312
|
16
16
|
reV/bespoke/__init__.py,sha256=vpXbyBUrUsTgK8UP_LafMjLiDg2CRG9WZLHPsOJoxek,109
|
17
|
-
reV/bespoke/bespoke.py,sha256=
|
18
|
-
reV/bespoke/cli_bespoke.py,sha256=
|
17
|
+
reV/bespoke/bespoke.py,sha256=22WO3APF5Tq20oifmQzrV-08amEyOmLjGZjLHsXezOU,110323
|
18
|
+
reV/bespoke/cli_bespoke.py,sha256=nZc6rJlfxH2IXUz9bym4EO-C1k6VvulgweWoRrMg_cE,3028
|
19
19
|
reV/bespoke/gradient_free.py,sha256=URWV1yiO2jyWk3_GOpfpLV_wlgJhXXGmTUwCB3WTV0Y,12015
|
20
20
|
reV/bespoke/pack_turbs.py,sha256=l4btC2dPZkLvDgAAGVhAYgAZDbvwimGYRdrQDq0xT68,3740
|
21
|
-
reV/bespoke/place_turbines.py,sha256=
|
21
|
+
reV/bespoke/place_turbines.py,sha256=Dy_dfGcLDjixK6jEaZdMmx575lY_S2XFvoy_8tGFbH0,26608
|
22
22
|
reV/bespoke/plotting_functions.py,sha256=VDJlA-fyN1O_ZA32P6EGEO7w4Ld5HnsENMx7wcayISo,5619
|
23
23
|
reV/config/__init__.py,sha256=oqFNU4JESU_fPxFmPyQNFAXLDAdzmTlPuabXTe3Rf2Y,92
|
24
24
|
reV/config/base_analysis_config.py,sha256=NvA3g5zQz8mIrV8ZSENLq0XBZGXa6RTGkwpZ76TVZj8,5615
|
@@ -26,72 +26,72 @@ reV/config/base_config.py,sha256=a748VQ3CRs9RVi5sSEPcaWOyH6R3t5tssaFqZntHyaE,100
|
|
26
26
|
reV/config/cli_project_points.py,sha256=6edOlLNOG-ZEbcpNS2MPfu-DXjcOTEh_MEvKOvQSZj4,6010
|
27
27
|
reV/config/curtailment.py,sha256=1bH7xzxOmD4PwLKcXFNotMAa9iCfGBUm2DKTOXViCJg,5548
|
28
28
|
reV/config/execution.py,sha256=hyf8W7XYUXE6tXBXs-4En7h_aDTYu8FzbslgBsKLJkQ,5046
|
29
|
-
reV/config/output_request.py,sha256=
|
30
|
-
reV/config/project_points.py,sha256=
|
29
|
+
reV/config/output_request.py,sha256=0aAV8_YrJGcskZGrfhS9EMml6B1tCcBn8SSkwTG11CI,4020
|
30
|
+
reV/config/project_points.py,sha256=NmIj7hQm4qSMBqgefZDRNot2B8APCDk0ynTwegk-1Go,37788
|
31
31
|
reV/config/sam_config.py,sha256=xvvx2FTuliq0Sk-BjRE3I9zdDmIdwHVBnWtXCcsoc40,7998
|
32
32
|
reV/econ/__init__.py,sha256=UId1LNaAP9lErCEXVce6JZf0qVRUvwNFOPrajdRevGo,130
|
33
33
|
reV/econ/cli_econ.py,sha256=2KNy3JQD0EKjStaoD2r6nv3ELFw88h2E_up-UKj_sfE,4286
|
34
|
-
reV/econ/econ.py,sha256=
|
35
|
-
reV/econ/economies_of_scale.py,sha256
|
34
|
+
reV/econ/econ.py,sha256=_sfUhtodY0auz1yROFCFPxUu3GUV_HvwwBo1uzOrnks,22982
|
35
|
+
reV/econ/economies_of_scale.py,sha256=Hac0M5_HgYm3HmfAcHIiq0flLAJjVK-wJuyu_DDH5Gs,10634
|
36
36
|
reV/econ/utilities.py,sha256=ZOA49S1jfsvdenvlL7m-BAJIrAvpAHSix5-wrSW0uLc,1232
|
37
37
|
reV/generation/__init__.py,sha256=LBecrbpL69tROol_OwVHTKBrTqgSSxJW59fs0k3o0jQ,75
|
38
|
-
reV/generation/base.py,sha256=
|
38
|
+
reV/generation/base.py,sha256=p6g8Bj8T98OfKu44LTocGtEozstbUvti6wSi3oroS5U,48758
|
39
39
|
reV/generation/cli_gen.py,sha256=5RSlr8yO9zlB-1FzFZGClqsxqsrbr9rcS_8PlOjVx2s,4435
|
40
|
-
reV/generation/generation.py,sha256=
|
40
|
+
reV/generation/generation.py,sha256=WOclf4DzSy4qKpRCy4RUmnh7rkcLBcutH8NmQl9T2CQ,46367
|
41
41
|
reV/generation/output_attributes/generation.json,sha256=cy8efVCJgNSYCsR3x3_VpMCtynYS3oaQG4M2MwcdzFY,4954
|
42
42
|
reV/generation/output_attributes/lcoe_fcr.json,sha256=d_TGMkZsmsfDXQiWfhYjFkmwqi-wKF8JdHmiMCj2h38,136
|
43
|
-
reV/generation/output_attributes/lcoe_fcr_inputs.json,sha256=
|
43
|
+
reV/generation/output_attributes/lcoe_fcr_inputs.json,sha256=Yb-WTXt9YD4wE4Uu315W2uLFH6g3fT40YY83mxS-aWE,1289
|
44
44
|
reV/generation/output_attributes/linear_fresnel.json,sha256=B7mq-Hxg8oIDxnvKxp2Y43qbkueTZReq2_weMbRJfy4,1218
|
45
45
|
reV/generation/output_attributes/other.json,sha256=3OQ8Vj1B8YKJHhLyOuBp60IZUiITrGXX86xeOVypdWE,111
|
46
46
|
reV/generation/output_attributes/single_owner.json,sha256=y-7yg9o45_g67YFl32i8288kmUIBpB9RzolIusFcDN0,827
|
47
47
|
reV/generation/output_attributes/solar_water_heat.json,sha256=gslLJ59Sx4hD15a4UPzbfF_YtJnKjj1QGavg8Bh-F3g,1659
|
48
48
|
reV/generation/output_attributes/trough_heat.json,sha256=JrVEyPAQRZYWDT1Fq2grxNvnAes8G9jCJisA8HwV7bw,1086
|
49
49
|
reV/generation/output_attributes/windbos.json,sha256=mTKIpzkon4HECm83VqB9wCGBXLxVjac3K0jsIB2g0Sc,557
|
50
|
-
reV/handlers/__init__.py,sha256=
|
50
|
+
reV/handlers/__init__.py,sha256=N7KfWbXfHLizMpoUw6yo0egbyq3jb9QL4YouBLUf4mI,130
|
51
51
|
reV/handlers/cli_collect.py,sha256=QRjhuJ1lV4BwGoguu0m4etrNRPMXGIZlijNyYsb7_5U,799
|
52
52
|
reV/handlers/cli_multi_year.py,sha256=xMAQ70lVUMAPM10EkZwc_FreQLjnzQ9VmKl48MS1SO0,660
|
53
53
|
reV/handlers/exclusions.py,sha256=_s-LHbjHAAHSIM6tFXCoJlLKcv0FBxbm6JAmuE_X_-I,12266
|
54
|
-
reV/handlers/multi_year.py,sha256=
|
54
|
+
reV/handlers/multi_year.py,sha256=3s4sYWBl9-1rxeTBTMkl5lDeFqCioi4uuxcZlbWmIbE,30998
|
55
55
|
reV/handlers/outputs.py,sha256=VbSPFwA0ZH-oWUCCtef7zGyPbWXKY07ilPzpZIOMmuc,6034
|
56
|
-
reV/handlers/transmission.py,sha256=
|
56
|
+
reV/handlers/transmission.py,sha256=JzpmiweCez7vzGSutO21XIbG9czY_H6ysg_R7z290w0,25610
|
57
57
|
reV/hybrids/__init__.py,sha256=oBrJSt9WeBlER7GVd-NEJgVqFlasl0WuyHJRMgLgpAY,133
|
58
58
|
reV/hybrids/cli_hybrids.py,sha256=XdckQy0dXeeaQdNA3EM7osmBOp9GBuk4U6u1R6waZQc,4886
|
59
|
-
reV/hybrids/hybrid_methods.py,sha256=
|
60
|
-
reV/hybrids/hybrids.py,sha256=
|
59
|
+
reV/hybrids/hybrid_methods.py,sha256=5nGb2sadp8zT9atZJNVigpYm_JYJxt4gWCPo56-5Vjk,4917
|
60
|
+
reV/hybrids/hybrids.py,sha256=7DFaqkNdAUVJxd_YDoQI-psKcJAlWgOGapYb_kIv3kw,46601
|
61
61
|
reV/losses/__init__.py,sha256=DMmJo9oOVrF1npUcjuSHo_yslf94am8xdvYrvwjEsjM,141
|
62
62
|
reV/losses/power_curve.py,sha256=eGoYZMhGCETKHc-W3TYjl0PYFQDpv4lrvc7q84OI0SY,45148
|
63
63
|
reV/losses/scheduled.py,sha256=h2Kh1xAsxn575i0gKa66TsrNXr7Rj_GlNenfmX4-Lug,26452
|
64
64
|
reV/losses/utils.py,sha256=XyM38JVlBNad9BEMJqRLuK6xba_DfFZUxNSC7EcRelM,7511
|
65
65
|
reV/nrwal/__init__.py,sha256=HD-QXvKRM5s6Z24zfKw31yhBttrkTe8hzUnx0FZP_P0,114
|
66
66
|
reV/nrwal/cli_nrwal.py,sha256=sa2gI86sNGk3ZJuQPxy_xsxle4KWDyPNrM11hlq6Ask,1825
|
67
|
-
reV/nrwal/nrwal.py,sha256=
|
67
|
+
reV/nrwal/nrwal.py,sha256=2igOFrBeMD4F_R4-Vn77LV5RV8VbalN4Vs-NPG6Ndaw,36975
|
68
68
|
reV/qa_qc/__init__.py,sha256=YIfYSZkx7d-WJq-h9Xob9VP3Gc03bP1psGAkl0bRNMg,223
|
69
69
|
reV/qa_qc/cli_qa_qc.py,sha256=qeCbOc86YuZjRXejwiQvxxsMD_nkuYj55uAcGm9zh9k,9136
|
70
|
-
reV/qa_qc/qa_qc.py,sha256=
|
71
|
-
reV/qa_qc/summary.py,sha256=
|
70
|
+
reV/qa_qc/qa_qc.py,sha256=2ah8Oiz0vOVrezQgGRIHdB-YD34r2mUdzt3f7KyQpxo,17044
|
71
|
+
reV/qa_qc/summary.py,sha256=QzfQ0Fd1-Une56XZiGZ8YMl3ir25XNYMyfm-PMB4dZo,31279
|
72
72
|
reV/rep_profiles/__init__.py,sha256=v6YZk7tGLpw5gnSckjOn22xazTnv10siCFfWQl9H_fQ,114
|
73
73
|
reV/rep_profiles/cli_rep_profiles.py,sha256=i3fRolT7HTzTQePXpNLDyxwgpRa7FEfHO1mOqiSufK4,4613
|
74
|
-
reV/rep_profiles/rep_profiles.py,sha256=
|
74
|
+
reV/rep_profiles/rep_profiles.py,sha256=oqmtU9FbUlKurkglmZLyDBNH8VRKv8fgdSuvtYWLm04,48271
|
75
75
|
reV/supply_curve/__init__.py,sha256=dbf0cO0qmt1VhV8dnDddztrcpnwua9T2HBhM6tLKaP8,274
|
76
76
|
reV/supply_curve/aggregation.py,sha256=fv4FTdRUQWZ_1Ds84ubgJdrf5lR1xb3luhAnibe3Y3Q,38752
|
77
77
|
reV/supply_curve/cli_sc_aggregation.py,sha256=drzYGFEHC3Ww1GBnk_iClFoQuXjT3nUEpv8I4Fgx8W4,2867
|
78
78
|
reV/supply_curve/cli_supply_curve.py,sha256=e-XrHQIe4OqWTL6u-TUAyHrw7Alk7vkXQ2HoLbE3zTM,2163
|
79
79
|
reV/supply_curve/competitive_wind_farms.py,sha256=eOjM72-4oWtsqxB7Wh2gnB2zVAt4LY3iPE_DqWdXbQ4,15795
|
80
|
-
reV/supply_curve/exclusions.py,sha256=
|
81
|
-
reV/supply_curve/extent.py,sha256=
|
82
|
-
reV/supply_curve/points.py,sha256=
|
83
|
-
reV/supply_curve/sc_aggregation.py,sha256=
|
84
|
-
reV/supply_curve/supply_curve.py,sha256=
|
80
|
+
reV/supply_curve/exclusions.py,sha256=4-ZxTO5Vlu03vie0V_74uvdajQfCuC8FE96Pg8I4U_c,42950
|
81
|
+
reV/supply_curve/extent.py,sha256=a31po753hXSxQ8lfcCvpE8hoKc4bY7MmYq0NO0jtdqA,17414
|
82
|
+
reV/supply_curve/points.py,sha256=0yMaxfvDW-EDMRcEMNKK5r1wdUbboR2iVVqe8DgTT0I,85944
|
83
|
+
reV/supply_curve/sc_aggregation.py,sha256=6kJg4CaLlFAC196azbfzA-T_wXkXSwNDQKOW-k2lqcE,61645
|
84
|
+
reV/supply_curve/supply_curve.py,sha256=i_Wo5cI11hNt5zfGZiqqBNM4_qERD1dVNmud1tWJteI,69942
|
85
85
|
reV/supply_curve/tech_mapping.py,sha256=7him2R-8kpigI47ATSN4ncnvzuF_AzeXyrtz_jmzLug,18573
|
86
|
-
reV/utilities/__init__.py,sha256=
|
86
|
+
reV/utilities/__init__.py,sha256=iOvOuqcXv_WaSP627z2i2wF5820DbUSGRa7lSj23diQ,10534
|
87
87
|
reV/utilities/cli_functions.py,sha256=1_T_sXz0Ct8lW-vOk3mMRcpD6NYsc9cGI7dEujIi9z4,3864
|
88
88
|
reV/utilities/curtailment.py,sha256=fu48Lje-iyd2Awfe-6jFebvgcKSeJ3daNNTqjFI2GvM,4963
|
89
89
|
reV/utilities/exceptions.py,sha256=f7sRGsbFLpmL6Caq_H1cD4GfVhnLMyvYUsLPA1UVDDE,3974
|
90
90
|
reV/utilities/pytest_utils.py,sha256=T22NFEGxPOc9wRwgy0Pt2cHvw3Vam9cKwUj4AkzI7bU,3244
|
91
91
|
reV/utilities/slots.py,sha256=xsw-JuUVZ0YeoCNuwP_HxGNxFMA4xRs1tuImXHIJqaU,2618
|
92
|
-
NREL_reV-0.
|
93
|
-
NREL_reV-0.
|
94
|
-
NREL_reV-0.
|
95
|
-
NREL_reV-0.
|
96
|
-
NREL_reV-0.
|
97
|
-
NREL_reV-0.
|
92
|
+
NREL_reV-0.9.0.dist-info/LICENSE,sha256=hDwoTANtan2ZpufBlXm5C3W_PJ-mCqItvlcobgjxL7k,1526
|
93
|
+
NREL_reV-0.9.0.dist-info/METADATA,sha256=hkdHRfdqhgSf-YxHU7lZss4kgeJE5fYVfWWDHpK7FRQ,10294
|
94
|
+
NREL_reV-0.9.0.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
|
95
|
+
NREL_reV-0.9.0.dist-info/entry_points.txt,sha256=KGtPEOQRZMSqKXjjv5jt_T4e4HQN0fHiaGdAWwTtuW4,617
|
96
|
+
NREL_reV-0.9.0.dist-info/top_level.txt,sha256=S6YF2ZYgXUB6n28SY0K2H8YB9tMJdXQ9CyQbo6VC89M,4
|
97
|
+
NREL_reV-0.9.0.dist-info/RECORD,,
|
reV/SAM/SAM.py
CHANGED
@@ -626,6 +626,8 @@ class RevPySam(Sam):
|
|
626
626
|
|
627
627
|
self._meta = self._parse_meta(meta)
|
628
628
|
self._parse_site_sys_inputs(site_sys_inputs)
|
629
|
+
_add_cost_defaults(self.sam_sys_inputs)
|
630
|
+
_add_sys_capacity(self.sam_sys_inputs)
|
629
631
|
|
630
632
|
@property
|
631
633
|
def meta(self):
|
@@ -916,3 +918,36 @@ class RevPySam(Sam):
|
|
916
918
|
msg += " for site {}".format(self.site)
|
917
919
|
logger.exception(msg)
|
918
920
|
raise SAMExecutionError(msg) from e
|
921
|
+
|
922
|
+
|
923
|
+
def _add_cost_defaults(sam_inputs):
|
924
|
+
"""Add default values for required cost outputs if they are missing. """
|
925
|
+
sam_inputs.setdefault("fixed_charge_rate", None)
|
926
|
+
|
927
|
+
reg_mult = sam_inputs.setdefault("capital_cost_multiplier", 1)
|
928
|
+
capital_cost = sam_inputs.setdefault("capital_cost", None)
|
929
|
+
fixed_operating_cost = sam_inputs.setdefault("fixed_operating_cost", None)
|
930
|
+
variable_operating_cost = sam_inputs.setdefault(
|
931
|
+
"variable_operating_cost", None)
|
932
|
+
|
933
|
+
sam_inputs["base_capital_cost"] = capital_cost
|
934
|
+
sam_inputs["base_fixed_operating_cost"] = fixed_operating_cost
|
935
|
+
sam_inputs["base_variable_operating_cost"] = variable_operating_cost
|
936
|
+
if capital_cost is not None:
|
937
|
+
sam_inputs["capital_cost"] = capital_cost * reg_mult
|
938
|
+
else:
|
939
|
+
sam_inputs["capital_cost"] = None
|
940
|
+
|
941
|
+
|
942
|
+
def _add_sys_capacity(sam_inputs):
|
943
|
+
"""Add system capacity SAM input if it is missing. """
|
944
|
+
cap = sam_inputs.get("system_capacity")
|
945
|
+
if cap is None:
|
946
|
+
cap = sam_inputs.get("turbine_capacity")
|
947
|
+
|
948
|
+
if cap is None:
|
949
|
+
cap = sam_inputs.get("wind_turbine_powercurve_powerout")
|
950
|
+
if cap is not None:
|
951
|
+
cap = max(cap)
|
952
|
+
|
953
|
+
sam_inputs["system_capacity"] = cap
|
reV/SAM/generation.py
CHANGED
@@ -887,11 +887,11 @@ class AbstractSamPv(AbstractSamSolar, ABC):
|
|
887
887
|
simulate reduced performance over time.
|
888
888
|
- ``analysis_period`` : Integer representing the number of years
|
889
889
|
to include in the lifetime of the model generator. Required if
|
890
|
-
``system_use_lifetime_output
|
890
|
+
``system_use_lifetime_output`` is set to 1.
|
891
891
|
- ``dc_degradation`` : List of percentage values representing the
|
892
892
|
annual DC degradation of capacity factors. Maybe a single value
|
893
893
|
that will be compound each year or a vector of yearly rates.
|
894
|
-
Required if ``system_use_lifetime_output
|
894
|
+
Required if ``system_use_lifetime_output`` is set to 1.
|
895
895
|
|
896
896
|
You may also include the following ``reV``-specific keys:
|
897
897
|
|
@@ -1546,7 +1546,7 @@ class Geothermal(AbstractSamGenerationFromWeatherFile):
|
|
1546
1546
|
- The design temperature is lower than the resource
|
1547
1547
|
temperature by a factor of ``MAX_RT_TO_EGS_RATIO``
|
1548
1548
|
|
1549
|
-
If either of these conditions are true, the ``design_temp`` is
|
1549
|
+
If either of these conditions are true, the ``design_temp`` is
|
1550
1550
|
adjusted to match the resource temperature input in order to
|
1551
1551
|
avoid SAM errors.
|
1552
1552
|
- ``set_EGS_PDT_to_RT`` : Boolean flag to set EGS design
|