# MixedErrorDistribution

 MixedErrorDistribution = class MixedErrorDistribution(ErrorDistribution) MixedErrorDistribution(errdis1, errdis2, fraction=0.5, limits=None, copy=None)   To calculate a mixture of two likelihoods.   For one residual, x, it holds       L( x ) = f * L1( x ) + ( 1 - f ) * L2( x )   where f is the contributing fraction while L, L1 and L2 are likelihoods f is a hyperparameter between [0..1]   The likelihood over N datapoints is       L = Π{ L( x ) } = Π( f * L1( x ) + ( 1 - f ) * L2( x ) )   And the log of L is       logL = ∑ logL( x ) = ∑( log( f * L1(x) + ( 1 - f ) * L2(x) ) )   Note ---- The mixture, i.e. the weighted sum of 2 distributions for each residual, is the raison-d'etre for the methods logLdata and nextPartialData, so individual contributions can be weighted, added, log-ged and summed.   Author       Do Kester. Method resolution order: MixedErrorDistribution ErrorDistribution builtins.object Constructor: MixedErrorDistribution( errdis1, errdis2, fraction=0.5, limits=None, copy=None ) Constructor.   Make a new error distribution as a fraction of errdis1 plus the rest of errdis2.   Parameters ---------- errdis1 : ErrorDistribution     First error distribution errdis2 : ErrorDistribution     Second error distribution (might be of the same class as errdis1)     It *must* have the same xdata, data, weights as errdis1. fraction : float     contributing fraction limits : None or list of 2 floats [low,high]     None : no limits implying fixed fraction     low     low limit on fraction ( >0)     high    high limit on fraction ( <1)     when limits are set, the scale is *not* fixed.   copy : MixedErrorDistribution     distribution to be copied. Methods defined here: acceptWeight() True if the distribution accepts weights. Always true for this distribution. copy() Return copy of this. logLdata( problem, allpars, mockdata=None ) Return the log( likelihood ) for a Mixedian distribution.   Parameters ---------- problem : Problem     to be solved allpars : array_like     list of all parameters in the problem mockdata : array_like     as calculated for the problem nextPartialData( problem, allpars, fitIndex, mockdata=None ) Return the partial derivative of log( likelihood ) to the parameters in fitIndex.   Parameters ---------- problem : Problem     to be solved allpars : array_like     parameters of the problem fitIndex : array_like     indices of parameters to be fitted mockdata : array_like     as calculated for the problem Methods inherited from ErrorDistribution: