Skip to content

Commit

Permalink
Merge branch 'develop' into dev-refactor-develop
Browse files Browse the repository at this point in the history
This was a bit tricky given that we removed many ECO files for the v2.0.0 release.
  • Loading branch information
camirmas committed Nov 6, 2023
2 parents 70954a0 + 0ff143a commit 31886ce
Show file tree
Hide file tree
Showing 126 changed files with 34,655 additions and 180,537 deletions.
18 changes: 0 additions & 18 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,32 +7,14 @@
*.pyc

log/
examples/HOPP_examples/
HOPP_examples/
HOPP-demos/
# needed for h2 test inputs: tests/analysis/results/
examples/H2 Analysis/results/reopt_precomputes/
*_disp.txt

tests/hybrid/REoptResultsNoExportAboveLoad.json

# Results
examples/analysis/results/*.csv
resource_files/wind
resource_files/solar
resource_files/grid

# clean up after merge
examples/Powerflow Analysis
examples/analysis/Engie
examples/As_Built_Analysis_Blue Creek.csv
examples/Blue_Creek_Analysis.py
examples/dudgeon_wind_extraction_validation.py
examples/powerflow_details.csv
examples/reopt_load.py
examples/data


.idea/*
.idea/workspace.xml
.vscode/
Expand Down
1 change: 1 addition & 0 deletions .readthedocs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -27,4 +27,5 @@ sphinx:
# Optionally declare the Python requirements required to build your docs
python:
install:
- requirements: requirements.txt
- requirements: requirements-dev.txt
50 changes: 50 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# Contributing

We welcome contributions in the form of bug reports, bug fixes, improvements to the documentation, ideas for enhancements (or the enhancements themselves!).

You can find a [list of current issues](https://github.com/NREL/HOPP/issues) in the project's GitHub repo. Feel free to tackle any existing bugs or enhancement ideas by submitting a [pull request](https://github.com/NREL/HOPP/pulls).

## Bug Reports

* Please include a short (but detailed) Python snippet or explanation for reproducing the problem. Attach or include a link to any input files that will be needed to reproduce the error.
* Explain the behavior you expected, and how what you got differed.

## Pull Requests

* Please reference relevant GitHub issues in your commit message using `GH123` or `#123`.
* Changes should be [PEP8](http://www.python.org/dev/peps/pep-0008/) compatible.
* Keep style fixes to a separate commit to make your pull request more readable.
* Docstrings are required and should follow the [Google style](https://www.sphinx-doc.org/en/master/usage/extensions/example_google.html).
* When you start working on a pull request, start by creating a new branch pointing at the latest commit on [main](https://github.com/NREL/HOPP).
* The HOPP copyright policy is detailed in the [`LICENSE`](https://github.com/NREL/HOPP/blob/main/LICENSE).

## Documentation

All newly introduced code should be documented in Google format as described in the previous section. To generate the docs:

```
cd docs
make html
```

Then open the docs in your browser:

```
open _build/html/index.html
```

## Tests

The test suite can be run using `pytest tests/hopp`. Individual test files can be run by specifying them:

```
pytest tests/hopp/test_hybrid.py
```

and individual tests can be run within those files

```
pytest tests/hopp/test_hybrid.py::test_hybrid_wind_only
```

When you push to your fork, or open a PR, your tests will be run against the [Continuous Integration (CI)](https://github.com/NREL/HOPP/actions) suite. This will start a build that runs all tests on your branch against multiple Python versions, and will also test documentation builds.
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -85,8 +85,8 @@ solar and storage.
## Getting Started
The [Examples](./examples/) contain Jupyter notebooks and sample YAML files for common usage scenarios in HOPP. These are actively maintained and updated to demonstrate HOPP's capabilities. For full details on simulation options and other features, see the [documentation]().
The [Examples](./examples/) contain Jupyter notebooks and sample YAML files for common usage scenarios in HOPP. These are actively maintained and updated to demonstrate HOPP's capabilities. For full details on simulation options and other features, see the [documentation](https://hopp.readthedocs.io/en/latest/).
## Contributing
Interested in improving HOPP? Please see the [Contributing](./CONTRIBUTING.md) section for more information.
Interested in improving HOPP? Please see the [Contributing](./CONTRIBUTING.md) section for more information.
17 changes: 0 additions & 17 deletions docs/hopp/simulation/technologies/battery.rst

This file was deleted.

17 changes: 17 additions & 0 deletions docs/hopp/simulation/technologies/battery/battery.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
.. _BatteryStorage:


Battery Storage
================================

Battery Storage class based on PySAM's BatteryStateful Model


.. autoclass:: hopp.simulation.technologies.battery.battery.Battery
:members:

.. autoclass:: hopp.simulation.technologies.battery.battery.BatteryConfig
:members:

.. autoclass:: hopp.simulation.technologies.battery.battery.BatteryOutputs
:members:
17 changes: 17 additions & 0 deletions docs/hopp/simulation/technologies/battery/battery_stateless.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
.. _BatteryStorageStateless:


Battery Storage (Stateless)
================================

Battery Storage class with no system model for tracking the state of the battery.


.. autoclass:: hopp.simulation.technologies.battery.battery_stateless.BatteryStateless
:members:

.. autoclass:: hopp.simulation.technologies.battery.battery_stateless.BatteryStatelessConfig
:members:

.. autoclass:: hopp.simulation.technologies.battery.battery_stateless.BatteryStatelessOutputs
:members:
17 changes: 0 additions & 17 deletions docs/hopp/simulation/technologies/battery_stateless.rst

This file was deleted.

17 changes: 17 additions & 0 deletions docs/hopp/simulation/technologies/csp/csp_plant.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
.. _CSPPlant:


Concentrating Solar Power (CSP) plant
=====================================

Abstract base class for CSP generation technologies that contains shared methods.

.. autoclass:: hopp.simulation.technologies.csp.csp_plant.CspPlant
:members:

.. autoclass:: hopp.simulation.technologies.csp.csp_plant.CspConfig
:members:

.. autoclass:: hopp.simulation.technologies.csp.csp_plant.CspOutputs
:members:
:undoc-members:
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,10 @@ Molten Salt Power Tower Plant

Tower concentrating solar power class based on SSC's MSPT (molten salt power tower) model

.. autoclass:: hopp.simulation.technologies.tower_source.TowerPlant
.. autoclass:: hopp.simulation.technologies.csp.tower_plant.TowerPlant
:members:
:undoc-members:

.. autoclass:: hopp.simulation.technologies.tower_source.TowerConfig
.. autoclass:: hopp.simulation.technologies.csp.tower_plant.TowerConfig
:members:
:undoc-members:
15 changes: 15 additions & 0 deletions docs/hopp/simulation/technologies/csp/trough_plant.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
.. _TroughSource:


Parabolic Trough Plant
=============================

Parabolic trough concentrating solar power class based on SSC's Parabolic trough - physical model

.. autoclass:: hopp.simulation.technologies.csp.trough_plant.TroughPlant
:members:
:undoc-members:

.. autoclass:: hopp.simulation.technologies.csp.trough_plant.TroughConfig
:members:
:undoc-members:
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,11 @@ Detailed PV Plant
PV Generator class based on PySAM's PVWatts and Pvsam Models. Allows more
detailed configuration than `PVPlant`.

.. autoclass:: hopp.simulation.technologies.detailed_pv_plant.DetailedPVPlant
.. autoclass:: hopp.simulation.technologies.pv.detailed_pv_plant.DetailedPVPlant
:members:
:undoc-members:

.. autoclass:: hopp.simulation.technologies.detailed_pv_plant.DetailedPVConfig
.. autoclass:: hopp.simulation.technologies.pv.detailed_pv_plant.DetailedPVConfig
:members:
:undoc-members:

Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,10 @@ PV Plant

PV Generator class based on PySAM's PVWatts and Pvsam Models

.. autoclass:: hopp.simulation.technologies.pv_source.PVPlant
.. autoclass:: hopp.simulation.technologies.pv.pv_plant.PVPlant
:members:
:undoc-members:

.. autoclass:: hopp.simulation.technologies.pv_source.PVConfig
.. autoclass:: hopp.simulation.technologies.pv.pv_plant.PVConfig
:members:
:undoc-members:
18 changes: 9 additions & 9 deletions docs/hopp/simulation/technologies/technologies.rst
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,14 @@ These are the primary technologies that may be configured for a standard HOPP si
.. toctree::
:maxdepth: 1

pv_source.rst
detailed_pv_plant.rst
wind_source.rst
csp_source.rst
tower_source.rst
trough_source.rst
battery.rst
battery_stateless.rst
pv/pv_plant.rst
pv/detailed_pv_plant.rst
wind/wind_plant.rst
csp/csp_plant.rst
csp/tower_plant.rst
csp/trough_plant.rst
battery/battery.rst
battery/battery_stateless.rst
grid.rst
mhk_wave_source.rst
wave/mhk_wave_plant.rst

4 changes: 2 additions & 2 deletions docs/hopp/simulation/technologies/trough_source.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,10 @@ Parabolic Trough Plant

Parabolic trough concentrating solar power class based on SSC's Parabolic trough - physical model

.. autoclass:: hopp.simulation.technologies.trough_source.TroughPlant
.. autoclass:: hopp.simulation.technologies.csp.trough_plant.TroughPlant
:members:
:undoc-members:

.. autoclass:: hopp.simulation.technologies.trough_source.TroughConfig
.. autoclass:: hopp.simulation.technologies.csp.trough_plant.TroughConfig
:members:
:undoc-members:
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,11 @@ MHK Wave Plant

MHK Wave Generator class

.. autoclass:: hopp.simulation.technologies.mhk_wave_source.MHKWavePlant
.. autoclass:: hopp.simulation.technologies.wave.mhk_wave_plant.MHKWavePlant
:members:
:undoc-members:

.. autoclass:: hopp.simulation.technologies.mhk_wave_source.MHKConfig
.. autoclass:: hopp.simulation.technologies.wave.mhk_wave_plant.MHKConfig
:members:
:undoc-members:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,9 @@ Wind Plant

Wind Generation class based on PySAM's Windpower module

.. autoclass:: hopp.simulation.technologies.wind_source.WindPlant
.. autoclass:: hopp.simulation.technologies.wind.wind_plant.WindPlant
:members:


.. autoclass:: hopp.simulation.technologies.wind_source.WindConfig
.. autoclass:: hopp.simulation.technologies.wind.wind_plant.WindConfig
:members:
Loading

0 comments on commit 31886ce

Please sign in to comment.