batoid

c++ backed python optical raytracer

BSD-2-CLAUSE License

Downloads
23.8K
Stars
21
Committers
3

.. image:: https://github.com/jmeyers314/batoid/workflows/batoid%20CI/badge.svg :target: https://github.com/jmeyers314/batoid/workflows/batoid%20CI/badge.svg .. image:: https://codecov.io/gh/jmeyers314/batoid/branch/master/graph/badge.svg :target: https://codecov.io/gh/jmeyers314/batoid

batoid

A c++ backed python optical raytracer.

docs

https://jmeyers314.github.io/batoid/overview.html

Requirements

Batoid is known to work on MacOS and linux, using Python version 3.9+, and either the clang or gcc compiler with support for c++14.

Installation

PyPI

Released versions of batoid are available on pypi as both wheels and source distributions. To compile from source, you will need a c++14 compiler available and placed such that that setup.py can find it. This should hopefully be the case on most *nix systems, in which case, the following ought to work::

pip install batoid

Github

If PyPI doesn't work, then you can try cloning the source from github and running setup.py. Clone the repo with either ::

git clone [email protected]:jmeyers314/batoid.git

or ::

git clone https://github.com/jmeyers314/batoid.git

Once the repo has been cloned, then compile and install with ::

pip install .

Tests

To run the unit tests, from the batoid directory, first install the testing requirements ::

pip install -r test_requirements.txt

And then run the tests using pytest ::

pytest