jmaguire1/WaterHeaterPythonModel

Aggregating up to multiple electric WHs

Opened this issue · 1 comments

We'll eventually want this to run for a fleet of water heaters, so we'll need to have an automated way to run a whole bunch of water heater simulation. These are the sorts of things we'll want to vary for each run:

  • Setpoint temperature
  • Water draw profile
  • Ambient air temperature
  • Mains water temperature
  • Tank volume
  • Tank EF
  • Service calls
  • Max allowed service calls (per hour/day/year)

We'll want vary these based on:
Location (mains temperature, ambient temperature & RH)
Probability distribution (tank volume?, setpoint temperature, max allowed service calls?)

Chuck will work on a script to run an aggregate fleet of water heaters and service calls, Jeff will work on ambient conditions, tank volume, EF, setpoint temperature, and draw profile.

TODO List:

[X] Load ambient air temperatures, RHs, and mains water temperature from a .csv with outputs from the BEopt runs. (Jeff)
[ ] Allow probability distribution from Lutz paper to be used for the setpoint temperature (or a fixed setpoint temperature for a particular run rather than a fleet. (Jeff)
[ ] Write script for running a fleet of water heaters. This script might calculate the specific location, installation location, setpoint, draw volume, tank volume, and EF for each water heater of the fleet. (Chuck)
[ ] Use probability distribution for EF and tank volume. This might come from sales numbers for tank volume/EF, ideally synced up with the DOE WH rulemaking/AHRI sales numbers if possible. (Jeff)
[ ] Set up draw profiles based on DHWESG. We'll need to get the existing script up and running and we'll probably want to pre-run a whole bunch of cases at different numbers of bedrooms. We might run into some big file size issues with this if we include the 0s for timesteps with no draw. (Jeff)