File | Date | Author | Commit |
---|---|---|---|
Henon | 2016-08-07 |
![]() |
[b067d0] Copy |
old | 2016-08-07 |
![]() |
[b067d0] Copy |
test | 2016-08-07 |
![]() |
[b067d0] Copy |
.gitignore | 2016-08-07 |
![]() |
[b067d0] Copy |
README.md | 2016-08-07 |
![]() |
[b067d0] Copy |
clean | 2016-08-07 |
![]() |
[b067d0] Copy |
clean-win.bat | 2016-08-07 |
![]() |
[b067d0] Copy |
debug_mode | 2016-08-07 |
![]() |
[b067d0] Copy |
git_add | 2016-08-07 |
![]() |
[b067d0] Copy |
run | 2016-08-07 |
![]() |
[b067d0] Copy |
run-win.bat | 2016-08-07 |
![]() |
[b067d0] Copy |
setup.py | 2016-08-07 |
![]() |
[b067d0] Copy |
A Python program for exploring the Hénon attractor. For an explanation of what the Hénon attractor is please see Wikipedia.
How to use the program
With this program you can draw the Hénon attractor and interact with it in various ways. You can zoom in by selecting an area, vary the Henon parameters manually and even make animations with them. The functionality is demonstrated in a Youtube video. There is a help function included that explains in more detail how to use the program.
Multithreading support
The program uses the Python multiprocessing module for CPU multithreading support. The Hénon calculation is started in several threads simultaneously using slightly different starting conditions in order to speed up the overall calculation. On Linux the attractor can be drawn with a reasonable resolution within ~0.1 seconds. When zooming in the program increases the maximum iteration threshold for each thread in order to generate the required level of detail.
OpenCL support
Further multithreading support for CPU and GPU is available through OpenCL. The Python module PyOpenCL is used to enable this feature. Further details on how to use it are available in the help function of the program.
Sidenote
This program is a re-implementation of an old Visual C++ program. The installer of that program is still functional up until Windows 7 at least. The old installer is available as the first release.