aboutsummaryrefslogtreecommitdiff
path: root/scm
AgeCommit message (Collapse)Author
2021-06-30Expose rstats in scheme wrapper.Arun Isaac
* scm/nsmc/wrap.scm (rstat-alloc): Export it. (volume, integral): Accept and return rstats object.
2021-04-20Wrap ellipsoid functions.Arun Isaac
* scm/nsmc/wrap.scm (make-ellipsoid-params, make-ellipsoid-oracle, ellipsoid-true-volume): New functions.
2021-04-20Return rstat object from volume and integral wrappers.Arun Isaac
We return the rstat object so it can be passed on into another invocation to continue the estimation and refine the estimate to a closer tolerance. * scm/nsmc/wrap.scm (volume, integral): Return rsat object.
2021-04-20Do not return volume or integral estimate.Arun Isaac
We are already passing in the true volume or integral, and checking that the estimate is within the required tolerance. What is the point in returning the estimate to the caller. * include/extent-sampling.h (volume, integral): Return nothing. * src/extent-sampling.sc (volume, integral): Return nothing. * scm/nsmc/wrap.scm (volume, integral): Accept no return value from C function.
2021-04-20Return the first accurate estimate.Arun Isaac
* include/extent-sampling.h (volume_window): Delete function. * src/extent-sampling.sc (integral, volume): Return the first accurate estimate. (volume-window): Delete function. * scm/nsmc/wrap.scm (volume-window): Delete function.
2021-04-08Wrap volume-importance.Arun Isaac
* scm/nsmc/wrap.scm (volume-importance): New function.
2021-04-08Wrap gsl_sf_lngamma.Arun Isaac
* scm/nsmc/wrap.scm (log-gamma): New function.
2021-03-16Deal in solid angle fractions, not absolute solid angles.Arun Isaac
* src/extent-sampling.sc (volume-cone): Use solid-angle-fraction->planar-angle instead of solid-angle->planar-angle. * src/nd-random.sc (planar-angle->solid-angle): Rename to planar-angle->solid-angle-fraction and return a solid angle fraction. (solid-angle->planar-angle): Rename to solid-angle-fraction->planar-angle and accept a solid angle fraction. (hollow-cone-random-vector): Use planar-angle->solid-angle-fraction instead of planar-angle->solid-angle. (beta-inc-unnormalized, incomplete-wallis-integral): Delete functions. * include/nd-random.h (planar_angle_to_solid_angle): Rename to planar_angle_to_solid_angle_fraction. (solid_angle_to_planar_angle): Rename to solid_angle_fraction_to_planar_angle. * scm/nsmc/wrap.scm (planar-angle->solid-angle): Rename to planar-angle->solid-angle-fraction.
2021-02-26Add copyright and license headers.Arun Isaac
* scm/nsmc/load-libs.scm.in, scm/nsmc/wrap.scm: Add copyright and license headers.
2021-02-26Rename subsampling-random-vector to cone-random-vector.Arun Isaac
* scm/nsmc/wrap.scm: (subsampling-random-vector): Rename to cone-random-vector. * src/nd-random.sc (subsampling-random-vector): Rename to cone-random-vector. * include/nd-random.h (subsampling_random_vector): Rename to cone_random_vector.
2021-02-26Rename project to nsmc.Arun Isaac
2021-02-26Wrap volume-window function.Arun Isaac
* scm/extent-sampling/wrap.scm (volume-window): New function.
2021-02-23Wrap integral function.Arun Isaac
* scm/extent-sampling/wrap.scm (maybe-procedure->integrand, integral): New functions.
2021-02-23Wrap volume function.Arun Isaac
* scm/extent-sampling/wrap.scm (maybe-procedure->extent-oracle, maybe-procedure->integrand): New functions.
2021-02-23Wrap integrands.Arun Isaac
* scm/extent-sampling/wrap.scm (make-integrand, make-polynomial-integrand, gaussian-integrand, x-coordinate-integrand): New functions.
2021-02-23Wrap extent oracles.Arun Isaac
* scm/extent-sampling/wrap.scm (make-extent-oracle, make-bernoulli-params, make-bernoulli-oracle, true-volume-procedure, bernoulli-true-volume, make-uniform-params, make-uniform-oracle, uniform-true-volume, make-beta-params, make-beta-oracle, beta-true-volume, make-cube-params, make-cube-oracle, cube-true-volume, make-spheroid-params, make-spheroid-oracle, spheroid-true-volume): New functions.
2021-02-23Implement the lower incomplete gamma function as a scheme wrapper.Arun Isaac
With this change, the wrapper around the gsl lower incomplete gamma function is directly in scheme. Earlier, there was one layer of wrapping in C which needed to be wrapped again in scheme. * include/utils.h (lower_incomplete_gamma): Delete function. * src/utils.sc (lower-incomplete-gamma): Delete function. * scm/extent-sampling/wrap.scm (lower-incomplete-gamma): New function.
2021-02-23Wrap gsl polynomial evaluation function.Arun Isaac
* scm/extent-sampling/wrap.scm (polyval): New function.
2021-02-23Wrap gsl rstat functions.Arun Isaac
* scm/extent-sampling/wrap.scm (rstat-alloc, rstat-n): New functions.
2021-02-10Add scheme wrapper.Arun Isaac
* scm/extent-sampling/load-libs.scm.in, scm/extent-sampling/wrap.scm: New files. * CMakeLists.txt: Check for guile. Build and install scheme wrapper. (change_extension): New function.