public double computeTargetDensity(double[] parameters, double[] dataOfComponent, double[] hyperParameters) { double term1 = 0.0; for(int i = 0; i < dataOfComponent.length; i++) { term1 += Math.log(Distribution.computeIGDensityGeneral(dataOfComponent[i], parameters)); } double term2 = Math.log(Distribution.computeIGGeneralPrior(parameters, hyperParameters)); System.out.println("term1: " + term1); System.out.println("term2: " + term2); return term1 + term2; }