ProFAST 1.0.4__tar.gz → 1.0.6__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 (38) hide show
  1. {profast-1.0.4/ProFAST.egg-info → profast-1.0.6}/PKG-INFO +3 -3
  2. {profast-1.0.4 → profast-1.0.6}/ProFAST/__init__.py +5 -1
  3. {profast-1.0.4 → profast-1.0.6}/ProFAST/pyc_files/ProFAST_308.pyc +0 -0
  4. {profast-1.0.4 → profast-1.0.6}/ProFAST/pyc_files/ProFAST_309.pyc +0 -0
  5. {profast-1.0.4 → profast-1.0.6}/ProFAST/pyc_files/ProFAST_310.pyc +0 -0
  6. {profast-1.0.4 → profast-1.0.6}/ProFAST/pyc_files/ProFAST_311.pyc +0 -0
  7. profast-1.0.6/ProFAST/pyc_files/ProFAST_312.pyc +0 -0
  8. profast-1.0.6/ProFAST/pyc_files/ProFAST_313.pyc +0 -0
  9. {profast-1.0.4 → profast-1.0.6/ProFAST.egg-info}/PKG-INFO +3 -3
  10. {profast-1.0.4 → profast-1.0.6}/ProFAST.egg-info/SOURCES.txt +3 -0
  11. {profast-1.0.4 → profast-1.0.6}/pyproject.toml +3 -3
  12. profast-1.0.6/tests/test_outputs.py +27 -0
  13. {profast-1.0.4 → profast-1.0.6}/tests/test_setting_variables.py +5 -2
  14. {profast-1.0.4 → profast-1.0.6}/tests/test_solvers.py +5 -2
  15. {profast-1.0.4 → profast-1.0.6}/LICENSE +0 -0
  16. {profast-1.0.4 → profast-1.0.6}/MANIFEST.in +0 -0
  17. {profast-1.0.4 → profast-1.0.6}/NOTICE.txt +0 -0
  18. {profast-1.0.4 → profast-1.0.6}/ProFAST/examples/ProFAST_example.py +0 -0
  19. {profast-1.0.4 → profast-1.0.6}/ProFAST/examples/generic_example.py +0 -0
  20. {profast-1.0.4 → profast-1.0.6}/ProFAST/resources/central_biomass_gasification.json +0 -0
  21. {profast-1.0.4 → profast-1.0.6}/ProFAST/resources/central_coal_gasification_w_ccs.json +0 -0
  22. {profast-1.0.4 → profast-1.0.6}/ProFAST/resources/central_grid_electrolysis_PEM.json +0 -0
  23. {profast-1.0.4 → profast-1.0.6}/ProFAST/resources/central_grid_electrolysis_solid_oxide.json +0 -0
  24. {profast-1.0.4 → profast-1.0.6}/ProFAST/resources/central_natural_gas_reforming_no_ccs.json +0 -0
  25. {profast-1.0.4 → profast-1.0.6}/ProFAST/resources/central_natural_gas_reforming_w_ccs.json +0 -0
  26. {profast-1.0.4 → profast-1.0.6}/ProFAST/resources/central_solar_electrolysis.json +0 -0
  27. {profast-1.0.4 → profast-1.0.6}/ProFAST/resources/central_wind_electrolysis.json +0 -0
  28. {profast-1.0.4 → profast-1.0.6}/ProFAST/resources/gen_h2_fueling.json +0 -0
  29. {profast-1.0.4 → profast-1.0.6}/ProFAST/resources/h2-fast-2022-07202023-generic-fueling.xlsm +0 -0
  30. {profast-1.0.4 → profast-1.0.6}/ProFAST/resources/h2-fast-2022-0915.xlsm +0 -0
  31. {profast-1.0.4 → profast-1.0.6}/ProFAST/resources/only_variables.json +0 -0
  32. {profast-1.0.4 → profast-1.0.6}/ProFAST/resources/regional_feedstock_costs.csv +0 -0
  33. {profast-1.0.4 → profast-1.0.6}/ProFAST.egg-info/dependency_links.txt +0 -0
  34. {profast-1.0.4 → profast-1.0.6}/ProFAST.egg-info/requires.txt +0 -0
  35. {profast-1.0.4 → profast-1.0.6}/ProFAST.egg-info/top_level.txt +0 -0
  36. {profast-1.0.4 → profast-1.0.6}/README.md +0 -0
  37. {profast-1.0.4 → profast-1.0.6}/setup.cfg +0 -0
  38. {profast-1.0.4 → profast-1.0.6}/tests/test_compare_with_excel.py +0 -0
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.2
2
2
  Name: ProFAST
3
- Version: 1.0.4
3
+ Version: 1.0.6
4
4
  Summary: Production Financial Analysis Scenario Tool
5
5
  Author-email: Jamie Kee <Jamie.Kee@nrel.gov>, Michael Penev <Michael.Penev@nrel.gov>
6
6
  License: END USER SOFTWARE LICENSE AGREEMENT
@@ -35,7 +35,7 @@ License: END USER SOFTWARE LICENSE AGREEMENT
35
35
  8. Export Controls. Licensee shall observe all applicable United States and foreign laws and regulations (if any) with respect to the export, re-export, diversion or transfer of Software, related technical data and direct products thereof, including, without limitation, the Export Administration Regulations.
36
36
  9. General. This Agreement, and the rights and liabilities of the Parties with respect to this Agreement and its subject matter, shall be governed by the laws of the State of Colorado, without reference to the principles of conflicts of laws thereof. Any dispute arising out of or relating to this Agreement or its subject matter not settled by the Parties may be resolved only by the courts of the State of Colorado, or if subject matter jurisdiction exists, by the United States federal courts, with venue in the County of Denver (in the case of state court) or in the U.S. District Court for the District of Colorado (in the case of federal court). Each of the Parties hereby consents to the jurisdiction of such courts over it in any action involving any such dispute. Each of the Parties agree not to commence or maintain a legal proceeding involving any such dispute in any forum except a court of the State of Colorado located in Denver County or the United States District Court for the District of Colorado (other than to enforce a judgment obtained in such courts) and agrees not to contest the venue of any action involving any such dispute in the County of Denver or the District of Colorado, as the case may be, nor to assert in any such court the doctrine of forum non conveniens, or the like. Any modification or amendment of this Agreement must be in writing signed by a duly authorized representative of each Party. This Agreement is binding upon and shall inure to the benefit of Alliance, its successors and assignees and therefore may be assigned to a successor operator of NREL for the United States Government. This Agreement represents the entire understanding of the Parties, and supersedes all previous communications, written or oral, relating to the subject of this Agreement. This license does not constitute an endorsement of Licensee’s products and/or services, if any, and Licensee shall not use the names, logos or brands of Alliance, NREL or DOE without the express written consent of Alliance, or DOE as applicable. If any part of this Agreement is found void and unenforceable, it will not affect the validity of the balance of the Agreement, which shall remain valid and enforceable according to its terms.
37
37
 
38
- Requires-Python: >=3.8
38
+ Requires-Python: <3.14,>=3.8
39
39
  Description-Content-Type: text/markdown
40
40
  License-File: LICENSE
41
41
  License-File: NOTICE.txt
@@ -13,4 +13,8 @@ elif version_info.minor == 9:
13
13
  elif version_info.minor == 10:
14
14
  from .pyc_files.ProFAST_310 import ProFAST
15
15
  elif version_info.minor == 11:
16
- from .pyc_files.ProFAST_311 import ProFAST
16
+ from .pyc_files.ProFAST_311 import ProFAST
17
+ elif version_info.minor == 12:
18
+ from .pyc_files.ProFAST_312 import ProFAST
19
+ elif version_info.minor == 13:
20
+ from .pyc_files.ProFAST_313 import ProFAST
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.2
2
2
  Name: ProFAST
3
- Version: 1.0.4
3
+ Version: 1.0.6
4
4
  Summary: Production Financial Analysis Scenario Tool
5
5
  Author-email: Jamie Kee <Jamie.Kee@nrel.gov>, Michael Penev <Michael.Penev@nrel.gov>
6
6
  License: END USER SOFTWARE LICENSE AGREEMENT
@@ -35,7 +35,7 @@ License: END USER SOFTWARE LICENSE AGREEMENT
35
35
  8. Export Controls. Licensee shall observe all applicable United States and foreign laws and regulations (if any) with respect to the export, re-export, diversion or transfer of Software, related technical data and direct products thereof, including, without limitation, the Export Administration Regulations.
36
36
  9. General. This Agreement, and the rights and liabilities of the Parties with respect to this Agreement and its subject matter, shall be governed by the laws of the State of Colorado, without reference to the principles of conflicts of laws thereof. Any dispute arising out of or relating to this Agreement or its subject matter not settled by the Parties may be resolved only by the courts of the State of Colorado, or if subject matter jurisdiction exists, by the United States federal courts, with venue in the County of Denver (in the case of state court) or in the U.S. District Court for the District of Colorado (in the case of federal court). Each of the Parties hereby consents to the jurisdiction of such courts over it in any action involving any such dispute. Each of the Parties agree not to commence or maintain a legal proceeding involving any such dispute in any forum except a court of the State of Colorado located in Denver County or the United States District Court for the District of Colorado (other than to enforce a judgment obtained in such courts) and agrees not to contest the venue of any action involving any such dispute in the County of Denver or the District of Colorado, as the case may be, nor to assert in any such court the doctrine of forum non conveniens, or the like. Any modification or amendment of this Agreement must be in writing signed by a duly authorized representative of each Party. This Agreement is binding upon and shall inure to the benefit of Alliance, its successors and assignees and therefore may be assigned to a successor operator of NREL for the United States Government. This Agreement represents the entire understanding of the Parties, and supersedes all previous communications, written or oral, relating to the subject of this Agreement. This license does not constitute an endorsement of Licensee’s products and/or services, if any, and Licensee shall not use the names, logos or brands of Alliance, NREL or DOE without the express written consent of Alliance, or DOE as applicable. If any part of this Agreement is found void and unenforceable, it will not affect the validity of the balance of the Agreement, which shall remain valid and enforceable according to its terms.
37
37
 
38
- Requires-Python: >=3.8
38
+ Requires-Python: <3.14,>=3.8
39
39
  Description-Content-Type: text/markdown
40
40
  License-File: LICENSE
41
41
  License-File: NOTICE.txt
@@ -15,6 +15,8 @@ ProFAST/pyc_files/ProFAST_308.pyc
15
15
  ProFAST/pyc_files/ProFAST_309.pyc
16
16
  ProFAST/pyc_files/ProFAST_310.pyc
17
17
  ProFAST/pyc_files/ProFAST_311.pyc
18
+ ProFAST/pyc_files/ProFAST_312.pyc
19
+ ProFAST/pyc_files/ProFAST_313.pyc
18
20
  ProFAST/resources/central_biomass_gasification.json
19
21
  ProFAST/resources/central_coal_gasification_w_ccs.json
20
22
  ProFAST/resources/central_grid_electrolysis_PEM.json
@@ -29,5 +31,6 @@ ProFAST/resources/h2-fast-2022-0915.xlsm
29
31
  ProFAST/resources/only_variables.json
30
32
  ProFAST/resources/regional_feedstock_costs.csv
31
33
  tests/test_compare_with_excel.py
34
+ tests/test_outputs.py
32
35
  tests/test_setting_variables.py
33
36
  tests/test_solvers.py
@@ -9,9 +9,9 @@ authors = [
9
9
  {name="Jamie Kee",email="Jamie.Kee@nrel.gov"},
10
10
  {name="Michael Penev",email="Michael.Penev@nrel.gov"},
11
11
  ]
12
- version = '1.0.4'
12
+ version = '1.0.6'
13
13
  readme = "README.md"
14
- requires-python = ">=3.8"
14
+ requires-python = ">=3.8, <3.14"
15
15
  license = {file='LICENSE'}
16
16
  dependencies = [
17
17
  'importlib_resources',
@@ -23,4 +23,4 @@ dependencies = [
23
23
  'pyarrow',
24
24
  'pytest',
25
25
  'xlwings',
26
- ]
26
+ ]
@@ -0,0 +1,27 @@
1
+ import ProFAST
2
+ import pytest
3
+
4
+ """
5
+ Test that ProFAST returns outputs as expected
6
+ Author: Jared J. Thomas
7
+ """
8
+
9
+ class TestSolution():
10
+ pf = ProFAST.ProFAST('only_variables')
11
+ sol = pf.solve_price()
12
+ abs_tol = 1E-4
13
+
14
+ class TestInitial(TestSolution):
15
+ def test_npv_zero(self):
16
+ assert self.sol['NPV'] == pytest.approx(0, abs=self.abs_tol)
17
+
18
+ def test_irr_zero(self):
19
+ assert self.sol['irr'][1] == pytest.approx(self.pf.vals["leverage after tax nominal discount rate"] , abs=self.abs_tol)
20
+
21
+ def test_wacc(self):
22
+
23
+ assert self.sol['wacc'] == pytest.approx(0.0832112)
24
+
25
+ def test_crf(self):
26
+
27
+ assert self.sol['crf'] == pytest.approx(0.1042981)
@@ -232,10 +232,13 @@ class TestLabor(TestSettingVariables):
232
232
  class TestAnalysisStartYear(TestSettingVariables):
233
233
  def test_str(self):
234
234
  with pytest.raises(ValueError):
235
- self.pf.set_params('analysis start year','5000')
235
+ self.pf.set_params('analysis start year', '5000')
236
+ def test_float(self):
237
+ with pytest.raises(ValueError):
238
+ self.pf.set_params('analysis start year', float(2030.0))
236
239
  def test_value(self):
237
240
  with pytest.raises(ValueError):
238
- self.pf.set_params('analysis start year',-1)
241
+ self.pf.set_params('analysis start year', -1)
239
242
 
240
243
  class TestOperatingLife(TestSettingVariables):
241
244
  def test_str(self):
@@ -1,7 +1,7 @@
1
- import ProFAST
2
-
3
1
  import pytest
4
2
 
3
+ import ProFAST
4
+
5
5
  """
6
6
  Test that ProFAST solvers function as expected
7
7
  Author: Jared J. Thomas
@@ -18,3 +18,6 @@ class TestInitial(TestPriceSolver):
18
18
 
19
19
  def test_irr_zero(self):
20
20
  assert self.sol['irr'][1] == pytest.approx(self.pf.vals["leverage after tax nominal discount rate"] , abs=self.abs_tol)
21
+
22
+ def test_wacc(self):
23
+ assert self.sol['wacc'] == pytest.approx(0.08321119593800433)
File without changes
File without changes
File without changes
File without changes
File without changes