Streamline and simplify update of couplings in multisystem framework
Description
Greatly simplify the boiler plate needed for updating the couplings:
- merge
update_external_quantity
into theupdate_quantity
method, as there was not clear use case where they should be different. - make
update_quantity
a non-deferred method, as in many cases systems do not have any quantities to update on demand.
Also move some code to more logical places and refactor it. In particular the infamous update_exposed_quantities
routine is gone
-
update_partner_couplings
method ofinteraction_with_partner_t
-
update_on_demand_quantities
method ofinteraction_partner_t
-
check_couplings_status
method ofinteraction_partner_t
As a side effect, interaction partners that are not systems do not need to implement their own version of update_exposed_quantities
, as the new ``update_partner_couplings` method is fully generic.
Edited by Micael Oliveira