Replies: 1 comment
-
On second look, I do see this warning message coming up in Sharwari's transport model (which uses the adhoc solver), so probably best to keep this in place for now and investigate the problem in that model |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
On the face of it this parameter serves a useful purpose - to define how much the demand of any commodity is permitted to deviate from supply (i.e. unmet demand). However, digging into the code a bit more, it looks like this parameter isn't really doing much and can probably be deleted without any detriment.
The place where this parameter is used is the
find_equilibrium
function (discussed in #406). After solving each sector individually, this then checks (via thecheck_demand_fulfillment
function) whether supply across the market as a whole meets demand (within the degree of tolerance specified bytolerance_unmet_demand
). If it doesn't, then a (subtle) warning message is raised.For what it's worth, I don't think I've seen this error message raised before (and only see it now if I set
tolerance_unmet_demand
to an extremely small value). My feeling is that if supply is sufficient to meet demand in all of the sectors individually, then surely this will also be the case for the market as a whole (?). And if supply doesn't meet demand in any individual sector, then the solver will fail for that sector and the simulation will terminate (assuming thedemand
constraint is in place).(Maybe this is different for the adhoc solver?)
I guess there's no harm in keeping the
check_demand_fulfillment
check in place, but in the interests of keeping the settings file simple, I'd probably vote to remove thetolerance_unmet_demand
parameter from the example models and documentation as it's just an added point of confusion and doesn't seem like something anyone would have any use configuring.Beta Was this translation helpful? Give feedback.
All reactions