-
Notifications
You must be signed in to change notification settings - Fork 2
Description
Describe the bug
I'm attempting to model a common situation where an end use technology must follow a specific output profile - in this case it must exactly follow the demand profile for heat. This is a variation on the missing_commodity example model, where the availability of all the heat end use technologies have been set to match the implicit utilisation of the shape of the demand profile. This reflects the real situation, where each heat technology has to follow the demand profile of the building it is in.
To get this to work, I need to match the required capacity in the base year precisely as well, which I think I have done (3299.97943627648 PJ/year capacity).
I get the odd error message "Model is infeasible, but there was no unmet demand"
To Reproduce
Run the attached model.
[12:13:01 INFO muse2::cli] Loaded model from examples/missing_commodity
[12:13:01 INFO muse2::cli] Output folder: muse2_results/missing_commodity
[12:13:01 WARN muse2::cli] Output folder will be overwritten
[12:13:01 INFO muse2::simulation] Milestone year: 2020
[12:13:01 INFO muse2::simulation] Running dispatch optimisation...
[12:13:01 ERROR muse2] Model is infeasible, but there was no unmet demand
Expected behavior
I think this model should be feasible. All end-use heat techs should exactly follow demand. It is - of course - possible I've made an input data error here, but in that case I would expect an error telling me that there was unmet demand and which commodity it was.
It's possible this is a tolerance-related error. We may need to re-think tolerances to make modelling this kind of thing easier. e.g. a 0.1% tolerance on unmet demand (except where demand is really small and the tolerance approaches the tolerance of the solver?)?
Metadata
Metadata
Assignees
Labels
Type
Projects
Status