n_qoi = 3 prior_pf_samples = elliptic_pde.load_data() prior_pf_samples_hf = prior_pf_samples[-1][:, 0:n_qoi] prior_pf_samples_mf = prior_pf_samples[1][:, 0:n_qoi] ** 1.1 prior_pf_samples_lf = prior_pf_samples[0][:, 0:n_qoi] ** 1.2 prior_samples = np.reshape(range(n_mc_ref), (n_mc_ref, 1)) # we only need some id here # Create the MC reference samples ref_prior_pf_samples = prior_pf_samples_hf[:n_mc_ref] # Prior p_prior = Distribution(prior_samples, rv_name='$\lambda$', label='Prior', kde=False) # Prior push-forward ref_p_prior_pf = Distribution(ref_prior_pf_samples, rv_name='$Q$', label='Prior-PF') ref_p_prior_pf.eval_kernel_density() l1_prior_pf_1hf_avg = np.zeros((n_grid,)) l1_prior_pf_1hf_1lf_avg = np.zeros((n_grid,)) l1_prior_pf_1hf_2lf_avg = np.zeros((n_grid,)) for k in range(n_avg): print('\nRun %d / %d' % (k + 1, n_avg)) # -------------- 1 HF l1_prior_pf_1hf = [] for idx, n_evals in enumerate(n_evals_mc): indices = np.random.choice(range(prior_pf_samples_hf.shape[0]), size=n_evals, replace=False) # Monte Carlo model prior_pf_samples = prior_pf_samples_hf[indices]