multicomponent model