def main_rep_1(): orig_theta = [5., 5.] orig_ds = abc.generate_dataset_rep(orig_theta) #orig_ds = abc.add_gaussian_noise_full(orig_ds) param_range = np.arange(3., 7., 0.1) param_range_1 = np.arange(3, 7, 0.1) likelihood_vals = np.zeros((len(param_range), len(param_range_1))) for ind1, th in enumerate(param_range): for ind2, th1 in enumerate(param_range_1): sim_ds = abc.generate_dataset_rep([th, th1]) l = log_likelihood(sim_ds, orig_ds) likelihood_vals[ind1, ind2] = l print th, th1, l print "========================" i,j = np.unravel_index(likelihood_vals.argmax(), likelihood_vals.shape) print "max likelihood ", likelihood_vals[i, j], " at: ()", i, " ,", j, ")" fig = plt.figure() ax = fig.gca(projection='3d') m1, m2 = np.meshgrid(param_range, param_range_1) print np.shape(m1), np.shape(m2), np.shape(likelihood_vals) surf = ax.plot_surface(m1, m2, likelihood_vals.T, rstride=1, cstride=1, cmap=cm.jet, linewidth=0.1, antialiased=True) fig.colorbar(surf, shrink=0.5, aspect=5) ax.set_xlabel('alpha') ax.set_ylabel('beta') ax.set_zlabel('likelihood') plt.figure() plt.imshow(likelihood_vals) plt.show()
def main_rep(): orig_theta = [216., 205.] orig_ds = abc.generate_dataset_rep(orig_theta) param_range = np.arange(0, 250, 5.) likelihood_vals = [] for th in param_range: sim_ds = abc.generate_dataset_rep([th]) likelihood_vals.append(log_likelihood_fourier(sim_ds, orig_ds)) plt.plot(param_range, likelihood_vals) plt.show()