Skip to content

Commit

Permalink
Merge pull request #51 from samgdotson/joss
Browse files Browse the repository at this point in the history
Joss paper review
  • Loading branch information
munkm authored Apr 5, 2024
2 parents e4b878a + fbcf053 commit c90d512
Show file tree
Hide file tree
Showing 21 changed files with 3,242 additions and 62 deletions.
1 change: 1 addition & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
*.ipynb linguist-vendored
8 changes: 6 additions & 2 deletions .github/workflows/CI.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ permissions:

jobs:
build:

name: Build and test
runs-on: ubuntu-latest

defaults:
Expand All @@ -36,7 +36,7 @@ jobs:
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install flake8 pytest
pip install flake8 pytest pyomo==6.4.1
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
- name: Install CBC
run: |
Expand All @@ -56,3 +56,7 @@ jobs:
- name: Test with pytest
run: |
pytest tests/
- name: Open Journals PDF Generator
uses: openjournals/[email protected]

23 changes: 23 additions & 0 deletions .github/workflows/draft-pdf.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
on: [push]

jobs:
paper:
runs-on: ubuntu-latest
name: Paper Draft
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Build draft PDF
uses: openjournals/openjournals-draft-action@master
with:
journal: joss
# This should be the path to the paper within your repo.
paper-path: paper/paper.md
- name: Upload
uses: actions/upload-artifact@v1
with:
name: paper
# This is the output path where Pandoc will write the compiled
# PDF. Note, this should be the same directory as the input
# paper.md
path: paper/paper.pdf
5 changes: 4 additions & 1 deletion .readthedocs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,9 @@ build:
os: "ubuntu-20.04"
tools:
python: "3.9"
jobs:
post_install:
- pip install pyomo==6.4.1

sphinx:
configuration: docs/source/conf.py
Expand All @@ -13,4 +16,4 @@ python:
- method: pip
path: .
extra_requirements:
- doc
- doc
10 changes: 10 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,16 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]

## [0.3.0] - 2024-04-04
### Added
- Adds tests and examples
- Adds more objectives and methods in the `equations` module.
- Adds more helper functions in `utils`.

## Fixed
- Updates the `README` to instruct users on current installation procedures.

## [0.2.1] - 2022-11-01
### Fixed
- Fixes a bug where storage constraints were not initialized in the `DispatchModel`.
Expand Down
15 changes: 13 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ Open source multi-objective energy system framework

`osier` is available through [PyPI](https://pypi.org/project/osier/). It may be installed with
```bash
pip install osier
python -m pip install osier pyomo==6.4.1
```
or by cloning this repository and building from source:

Expand All @@ -24,6 +24,17 @@ cd osier
pip install .
# to also install the documentation dependencies
pip install .[doc]

# followed by
pip install pyomo==6.4.1
```


```{note}
Although `pyomo` is a dependency, the current version of `pyomo` (6.7.1, as of 2/29/24) has a bug
that prints erroneous errors during an `osier` simulation. Therefore, users are recommended to
install a specific version of `pyomo` after the main installation of `osier`. There is an open issue [#50](https://github.com/arfc/osier/issues/50)
related to this concern.
```

## Documentation
Expand All @@ -49,4 +60,4 @@ Contributions to `osier` are welcome. For details on how to make bug reports, pu


## Credits
Some of the documentation infrastructure was inspired by and borrowed from the [`watts` documentation](https://watts.readthedocs.io/en/latest/index.html).
Some of the documentation infrastructure was inspired by and borrowed from the [`watts` documentation](https://watts.readthedocs.io/en/latest/index.html).
3 changes: 3 additions & 0 deletions docs/source/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,8 @@
extensions = [
"myst_parser",
"sphinx.ext.napoleon",
"sphinx.ext.duration",
"sphinx.ext.autosectionlabel",
"sphinx.ext.autodoc",
"sphinx.ext.autosummary",
"sphinx.ext.intersphinx",
Expand All @@ -41,6 +43,7 @@
"sphinx_design",
"sphinx.ext.mathjax",
"sphinx.ext.coverage",
"nbsphinx",
]

# Add any paths that contain templates here, relative to this directory.
Expand Down
944 changes: 944 additions & 0 deletions docs/source/examples/capacity_expansion_tutorial.ipynb

Large diffs are not rendered by default.

533 changes: 533 additions & 0 deletions docs/source/examples/dispatch_tutorial.ipynb

Large diffs are not rendered by default.

14 changes: 14 additions & 0 deletions docs/source/examples/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# `Osier` Examples


This section has examples that guide users from basic usage to more advanced topics.


## Guides
```{toctree}
:maxdepth: 3
tech_tutorial
dispatch_tutorial
capacity_expansion_tutorial
```
Loading

0 comments on commit c90d512

Please sign in to comment.