Closed adamkucharski closed 9 months ago
Thanks, would it be good to have these as default arguments? Otherwise can add to the Quickstart as suggested.
I like the idea of adding them as defaults.
However, one thing we've discussed in the past with @sbfnk and others is the fact that users will sometimes rely on defaults if provided, even if they don't make sense for their specific case, and then present the result as scientifically valid.
:thinking:
I think it's nice for users to be able to run a simple – and possibly quite common – use case (e.g. homogenous model specified only by R0) without having to define a lot of extra variables. I'd avoid having an unusual scenario as default that means users unknowingly run with an odd setting (e.g. susceptibility = 50%), but don't think we should introduce extra friction unnecessarily – if functions are clearly documented (which they are), think we should trust users to make the call.
I have had this question before from David H. as he was temporarily stumped by the susceptibility/p_susceptibility requirements.
I don't think it would interfere with any current users' workflows if we provided sensible defaults. While discussing use cases we have considered LMIC users who might not have information on demographic or susceptibility structure, where the parsimonius assumption would be uniform mixing and full susceptibility (as in Adam's original example).
Sometimes it's useful to get a quick handle on finalsize in basic SIR model, but it looks like currently user has to define all matrices, e.g. below for R0=2:
final_size(2,matrix(1),1,susceptibility = matrix(1), p_susceptibility = matrix(1))
Perhaps a simple solution would be to just mention in the quickstart, unless straightforward to add checks for a one-dimensional mixing scenario?