Age | Commit message (Collapse) | Author |
|
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.
|
|
* 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.
|
|
* scm/nsmc/wrap.scm (volume-importance): New function.
|
|
* scm/nsmc/wrap.scm (log-gamma): New function.
|
|
* 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.
|
|
* scm/nsmc/load-libs.scm.in, scm/nsmc/wrap.scm: Add copyright and
license headers.
|
|
* 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.
|
|
|
|
* scm/extent-sampling/wrap.scm (volume-window): New function.
|
|
* scm/extent-sampling/wrap.scm (maybe-procedure->integrand, integral):
New functions.
|
|
* scm/extent-sampling/wrap.scm (maybe-procedure->extent-oracle,
maybe-procedure->integrand): New functions.
|
|
* scm/extent-sampling/wrap.scm (make-integrand,
make-polynomial-integrand, gaussian-integrand,
x-coordinate-integrand): New functions.
|
|
* 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.
|
|
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.
|
|
* scm/extent-sampling/wrap.scm (polyval): New function.
|
|
* scm/extent-sampling/wrap.scm (rstat-alloc, rstat-n): New functions.
|
|
* 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.
|