2 files changed, 40 insertions, 0 deletions
@@ -4,6 +4,10 @@ This repository is the source code accompanying the following papers.
- [[https://arxiv.org/abs/2101.00936][An O(n) algorithm for generating uniform random vectors in n-dimensional cones]]
- [[https://arxiv.org/abs/2007.06808][An algorithm for estimating volumes and other integrals in n dimensions]]
+Most of the code has been ported to Python and is in the /python/
+directory. So, if you wish, you can ignore the rest of this document,
+and jump straight there.
Build dependencies are
diff --git a/python/README.md b/python/README.md
new file mode 100644
@@ -0,0 +1,36 @@
+This repository is the source code accompanying the following papers.
+- [An O(n) algorithm for generating uniform random vectors in n-dimensional cones](https://arxiv.org/abs/2101.00936)
+- [An algorithm for estimating volumes and other integrals in n dimensions](https://arxiv.org/abs/2007.06808)
+However, most of the code for [An O(n) algorithm for generating
+uniform random vectors in n-dimensional
+cones](https://arxiv.org/abs/2101.00936) has been released as a
+separate library—sambal. See [PyPI
+The code depends on the following dependencies. Please install them
+before running the scripts. A python virtual environment may be an
+easy way to do this.
+- Python 3
+The core functions are in `nsmc.py`. The experiments are in the
+scripts `distribution-volumes.py`, `distribution-integrals.py` and
+`spheroid.py`. Run those scripts as
+$ python3 distribution-volumes.py
+$ python3 distribution-integrals.py
+$ python3 spheroid.py
+Plots of the number of samples versus the dimension get written to the
+current directory. Play around with the number of trials, dimensions,
+and relative error tolerances in the scripts.