  We present EXOFAST, a fast, robust suite of routines written in IDL which is
designed to fit exoplanetary transits and radial velocity variations
simultaneously or separately, and characterize the parameter uncertainties and
covariances with a Differential Evolution Markov Chain Monte Carlo method. We
describe how our code incorporates both data sets to simultaneously derive
stellar parameters along with the transit and RV parameters, resulting in more
self-consistent results on an example fit of the discovery data of HAT-P-3b
that is well-mixed in under five minutes on a standard desktop computer. We
describe in detail how our code works and outline ways in which the code can be
extended to include additional effects or generalized for the characterization
of other data sets -- including non-planetary data sets. We discuss the pros
and cons of several common ways to parameterize eccentricity, highlight a
subtle mistake in the implementation of MCMC that could bias the inferred
eccentricity of intrinsically circular orbits to significantly non-zero
results, discuss a problem with IDL's built-in random number generator in its
application to large MCMC fits, and derive a method to analytically fit the
linear and quadratic limb darkening coefficients of a planetary transit.
Finally, we explain how we achieved improved accuracy and over a factor of 100
improvement in the execution time of the transit model calculation. Our entire
source code, along with an easy-to-use online interface for several basic
features of our transit and radial velocity fitting, are available online at
http://astroutils.astronomy.ohio-state.edu/exofast .
