When the mct_intx_ops functionality was designed, it was only enabled for the LargeMultinomialLogitStep model template, and so that is where the code to actually perform the interaction term operations process was stored. But the functionality will likely be useful for other models, so it probably belongs in a more centrally accessible location in the code base. Given that the functionality will only ever be relevant to a MergedChoiceTable class object, it makes most sense to move the method out of urbansim_templates and into choicemodels as a class method of MergedChoiceTable.
When the
mct_intx_ops
functionality was designed, it was only enabled for theLargeMultinomialLogitStep
model template, and so that is where the code to actually perform the interaction term operations process was stored. But the functionality will likely be useful for other models, so it probably belongs in a more centrally accessible location in the code base. Given that the functionality will only ever be relevant to a MergedChoiceTable class object, it makes most sense to move the method out of urbansim_templates and into choicemodels as a class method ofMergedChoiceTable
.See https://github.com/UDST/urbansim_templates/pull/126 for a more in depth description of the
mct_intx_ops
concept.