A Julia package for dynamical billiard systems in two dimensions. The goals of the package is to provide a flexible and intuitive framework for fast implementation of billiard systems of arbitrary construction.
The core of
DynamicalBilliards.jl is separated in simple and cohesive modular structures:
NOTICE: This package does not support collision between particles (currently). All particles are considered point-particles for all simulations offered by
This package is registered, simply use
Pkg.add("DynamicalBilliards") to install it.
The master branch of
DynamicalBilliards is used for development purposes. It is not advised to use
Pkg.checkout("DynamicalBilliards"), unless you want to contribute to the development of the package.
DynamicalBilliards is done through the
PyPlot package. However, all plotting-related functions are not available by default but only "on-demand". Use
DynamicalBilliards.enableplotting() to bring them into scope.
WARNING: You must be able to
using PyPlot if you want to use the plotting capabilities of
DynamicalBilliards! If you are having trouble installing
PyPlot you can always use the minimal Python installation through miniconda by running these lines in your Julia terminal:
ENV["PYTHON"]=""; Pkg.add("PyCall"); Pkg.build("PyCall"); Pkg.add("PyPlot"); using PyPlot;
This package is mainly developed by George Datseris. However, this development would not have been possible without significant help from other people:
8 days ago