diff --git a/examples/example_16/ob08092-o4_minimal_MN.yaml b/examples/example_16/ob08092-o4_minimal_MN.yaml index d8347564..7e95e488 100644 --- a/examples/example_16/ob08092-o4_minimal_MN.yaml +++ b/examples/example_16/ob08092-o4_minimal_MN.yaml @@ -1,6 +1,7 @@ photometry_files: data/OB08092/phot_ob08092_O4.dat -fit_method: UltraNest # options: EMCEE, MultiNest, UltraNest (... dynesty) +fit_method: MultiNest +# fit_method options if prior_limits are given: MultiNest and UltraNest prior_limits: t_0: [2455379.4, 2455379.76] u_0: [0.46, 0.65] diff --git a/examples/example_16/ulens_model_fit.py b/examples/example_16/ulens_model_fit.py index 387583fd..504b9879 100644 --- a/examples/example_16/ulens_model_fit.py +++ b/examples/example_16/ulens_model_fit.py @@ -1456,13 +1456,14 @@ def _parse_fitting_parameters_UltraNest(self): self._check_required_and_allowed_parameters(required, allowed) self._check_parameters_types(settings, bools, ints, floats, strings) - value = settings.pop("log directory") - if value is not None: - if path.exists(value) and path.isdir(value): - self._log_dir_UltraNest = value - else: + self._log_dir_UltraNest = settings.pop("log directory", None) + if self._log_dir_UltraNest is not None: + if not path.exists(self._log_dir_UltraNest): raise ValueError("log directory value in fitting_parameters" "does not exist.") + elif not path.isdir(self._log_dir_UltraNest): + raise ValueError("log directory value in fitting_parameters" + "exists, but it is a file.") value = settings.pop("derived parameter names", "") self._derived_params_UltraNest = value.split() @@ -2671,6 +2672,9 @@ def _run_fit_UltraNest(self): """ Run Ultranest fit """ + self._kwargs_UltraNest['dlogz'] = 100. # 0.5... 100. took 15min + self._kwargs_UltraNest['dKL'] = 100. # 0.5 + self._kwargs_UltraNest['frac_remain'] = 0.005 self._result_UltraNest = self._sampler.run(**self._kwargs_UltraNest) def _finish_fit(self): @@ -3229,7 +3233,8 @@ def _parse_results_UltraNest(self): # self._samples_flat = self._result_UltraNest['samples'][:, :-2] # weighted samples from the posterior weighted_samples = self._result_UltraNest['weighted_samples'] - self._samples_flat = weighted_samples['points'][:, :-2] + index = self._n_fit_parameters + self._samples_flat = weighted_samples['points'][:, :index] self._samples_flat_weights = weighted_samples['weights'] self._sampler.print_results()