Some of the objectives (namely "capital_costs", "comfort", "efficiency" and "ALCOE") don't return an asset dimension, and I've noticed some strange behavior when using these objectives (e.g. not investing in the technologies you'd expect), or more often the model hits a growth error and fails to run.
I think the place where this is causing problems is the _unified_dataset function, although that function is so unreadable it's hard to see what it's supposed to be doing.
Simply adding an asset dimension to these objectives by broadcasting looks like it's enough to fix the problem (#580), and gives much more sensible results. That may end up being the best solution.
I've also noticed that this bug only applies when using these objectives as single objectives (or multi-objective with each other). I guess that when you combine these with another objective that does have an asset dimension, then automatic broadcasting occurs at that point, so by the time it get's passed to _unified_dataset it's all good.
Some of the objectives (namely "capital_costs", "comfort", "efficiency" and "ALCOE") don't return an
assetdimension, and I've noticed some strange behavior when using these objectives (e.g. not investing in the technologies you'd expect), or more often the model hits a growth error and fails to run.I think the place where this is causing problems is the
_unified_datasetfunction, although that function is so unreadable it's hard to see what it's supposed to be doing.Simply adding an
assetdimension to these objectives by broadcasting looks like it's enough to fix the problem (#580), and gives much more sensible results. That may end up being the best solution.I've also noticed that this bug only applies when using these objectives as single objectives (or multi-objective with each other). I guess that when you combine these with another objective that does have an
assetdimension, then automatic broadcasting occurs at that point, so by the time it get's passed to_unified_datasetit's all good.