CAMLprim value ml_gsl_sf_ellint_D_e(value arg1, value arg2, value arg3) { gsl_sf_result res; double dummy_n = 0; /* Ignored by old implementation anyway */ gsl_sf_ellint_D_e( Double_val(arg1), Double_val(arg2), dummy_n, GSL_MODE_val(arg3), &res); return val_of_result(&res); }
double gsl_sf_ellint_D(double phi, double k, double n, gsl_mode_t mode) { EVAL_RESULT(gsl_sf_ellint_D_e(phi, k, n, mode, &result)); }
/** * C++ version of gsl_sf_ellint_D_e(). * D(phi,k,n) = R_D(1-Sin[phi]^2, 1-k^2 Sin[phi]^2, 1.0) * @param phi A real number * @param k A real number * @param n A real number * @param mode The mode * @param result The result as a @c gsl::sf::result object * @return Error code on failure */ inline int D_e( double phi, double k, double n, mode_t mode, result& result ){ return gsl_sf_ellint_D_e( phi, k, n, mode, &result ); }