NatLabRockies / NatLabRockies/H2Integrate
Allow variable time step number and length
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 26
- Forks
- 44
- Avg merge
- 3d 22h
- Merged PRs (30d)
- 16
Description
Allow variable time step number and length
We are limited to 8760 hourly time steps. It would be helpful to allow a flexible number of time steps and time step duration for a range of reasons, including: testing short simulations, running simulations with different data for multiple years, adjust temporal fidelity, etc.
Proposed solution
For the number of time steps, I think we could start with putting in an n_time_steps parameter at the top level config that will then flow down to all levels of the simulation.
For the time step duration, it is more complicated. Many models assume hourly time steps. For those models we may need to still run hourly and then up- or down-sample after that model runs so the output can be provided in the desired number of steps and step duration.
Alternatives considered
Additional context
Several technologies use a default hard-coded time step number, as does control. With so much dynamic sizing, it is difficult to determine the size at model setup time if needed, as in demand rule-based control (#195).
We must first solve #387 before fully enabling variable timesteps.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing prerequisite issue #387, then trace the top-level configuration, model implementations, and control code mentioned in the report, including demand rule-based control in #195. Done means simulations can accept a configurable number and duration of time steps, with hourly-only models handled as described by the issue.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- backend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100