dummy_scheduler.py 1.0 KB

12345678910111213141516171819202122232425262728293031
  1. from flexmeasures.data.models.planning import Scheduler
  2. from flexmeasures.data.models.planning.utils import initialize_series
  3. from flexmeasures.utils.unit_utils import ur
  4. class DummyScheduler(Scheduler):
  5. __author__ = "Test Organization"
  6. __version__ = "3"
  7. def compute(self):
  8. """
  9. Just a dummy scheduler that always plans to consume at maximum capacity.
  10. (Schedulers return positive values for consumption, and negative values for production)
  11. """
  12. capacity = self.sensor.get_attribute(
  13. "capacity_in_mw",
  14. ur.Quantity(self.sensor.get_attribute("site-power-capacity"))
  15. .to("MW")
  16. .magnitude,
  17. )
  18. return initialize_series( # simply creates a Pandas Series repeating one value
  19. data=capacity,
  20. start=self.start,
  21. end=self.end,
  22. resolution=self.resolution,
  23. )
  24. def deserialize_config(self):
  25. """Do not care about any config sent in."""
  26. self.config_deserialized = True