A MetaModel is an object that encapsulates a collection of Model objects, for which the parameters are to be estimated simultaneously.

The basic tool for analysis in Larch is a discrete choice model. A model is a structure that interacts data with a set of ModelParameters.

Creating MetaModel Objects

class larch.MetaModel(segment_descriptors=None, submodel_factory=None, args=())

The MetaModel is actually a subclass of Model, so much of that class’s functionality (notably, interacting with parameters) is inherited here. The MetaModel overloads loglike, d_loglike, d2_loglike, and bhhh methods of Model in the manner you might expect: the overloaded functions return the composite values, totalled across all submodels.