There’s no easy way to call external code from within a Stan program. But let’s look at the function and see if we can reimplement. The doc for dbinom_robust(k, size, logit_p)
says:
Density of binomial distribution parameterized via logit(prob)
This version should be preferred when working on the logit scale as it is numerically stable for probabilities close to 0 or 1.
We’re in luck. This is already impelemented as binomial_logit_lpmf(k | size, logit_p)
, which returns the log of the probability mass function with the probability on the log odds (logit) scale. You can call it like this in a Stan program:
k ~ binomial_logit(size, logit_p)
For the full doc, see: 16.2 Binomial distribution, logit parameterization | Stan Functions Reference
In general, we suffix distributions with the scale of the parameter when it’s non-standard.
I found the name in TMB to be confusing because it is meant to indicate arithmetic stability, not statistical robustness.