j-faria / kima

Exoplanet detection in RVs with DNest4 and GPs
http://www.kima.science
MIT License
15 stars 10 forks source link

std::domain_error #55

Open jdavidrcamacho opened 5 years ago

jdavidrcamacho commented 5 years ago

Sometimes (rarely) I happen to get

 terminate called after throwing an instance of 'std::domain_error'
   what():  Input to cdf_inverse must be in [0, 1].
 Aborted (core dumped)

and Kima stops running, why does it happen? Does it mean something wrong with my priors definition to make the cdf_inverse to have a value outside the [0,1] interval?

eggplantbren commented 5 years ago

That seems likely. In some rare cases, instead of a bug on your part, it can happen for numerical reasons when the hyperparameters are perturbed by a large amount, so the U(0, 1) representation of a parameter suddenly becomes 0 or 1. If you become certain that the latter explanation is right, you can put the RJObject proposal in a try/catch block:

try { logH += objects.perturb(rng); } catch(...) {

}

On Thu, Jan 3, 2019 at 5:22 AM João Camacho notifications@github.com wrote:

Sometimes (rarely) I happen to get

terminate called after throwing an instance of 'std::domain_error' what(): Input to cdf_inverse must be in [0, 1]. Aborted (core dumped)

and Kima stops running, why does it happen? Does it mean something wrong with my priors definition to make the cdf_inverse to have a value outside the [0,1] interval?

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/j-faria/kima/issues/55, or mute the thread https://github.com/notifications/unsubscribe-auth/ABgVOhap5Xc43O2qQGVh3b4oCmlIIM0mks5u_NyngaJpZM4Zm4kf .