   return AF_UNKNOWN_FLOAT;
 }
 
-__device__
+__device__ __host__
 float af_BNOptionTheta(afOptionInfo_t* option, afBNOptionValuationSettings_t* settings) {
   float tau     = option->tau;
   option->tau   = tau + settings->epsilon;

  return (v1 - v2) / (2. * settings->epsilon);
}

__device__
float af_BNOptionVega(afOptionInfo_t* option, afBNOptionValuationSettings_t* settings) {
  if (option->sigma_style == AF_OPTION_SIGMA_STYLE_SCALAR) {
    float sigma     = option->sigma;

  return (v1 - v2) / (2. * settings->epsilon);
}

__device__ __host__
float af_BNOptionGamma(afOptionInfo_t* option, afBNOptionValuationSettings_t* settings) {
  // This can be made faster by doing three price evaluations
  // instead of 4. - FIXME
