/// <include file='FactorDocs.xml' path='factor_docs/message_op_class[@name="LogOp_EP"]/message_doc[@name="DAverageConditional(Gaussian, Gamma, Gaussian)"]/*'/> public static Gamma DAverageConditional([Proper] Gaussian log, Gamma d, Gaussian to_log) { // Factor is N(log(d); m, v) if (d.IsPointMass) { return(DAverageConditional(log, d.Point)); } var g = Gamma.FromShapeAndRate(d.Shape + 1, d.Rate); return(ExpOp.ExpAverageConditional(g, log, to_log)); }
/// <include file='FactorDocs.xml' path='factor_docs/message_op_class[@name="LogOp_EP"]/message_doc[@name="DAverageConditional(Gaussian, Gamma, Gaussian)"]/*'/> public static Gamma DAverageConditional([Proper] Gaussian log, Gamma d, Gaussian to_log) { var g = Gamma.FromShapeAndRate(d.Shape + 1, d.Rate); return(ExpOp.ExpAverageConditional(g, log, to_log)); }