diff --git a/MagnetiCalc.ini b/MagnetiCalc.ini index b288b31..c09988a 100644 --- a/MagnetiCalc.ini +++ b/MagnetiCalc.ini @@ -1,5 +1,5 @@ [DEFAULT] -version = MagnetiCalc v1.8.3.2 +version = MagnetiCalc v1.8.4 backend = 0 auto_calculation = True num_cores = 0 diff --git a/README.md b/README.md index 37f8f91..9cfe366 100755 --- a/README.md +++ b/README.md @@ -34,7 +34,9 @@ whenever I needed to solve a magnetostatic problem. The -field calculation is implemented using the Biot-Savart law [1], employing multiprocessing techniques; -MagnetiCalc uses just-in-time compilation (JIT/Numba) to achieve high-performance calculations. +MagnetiCalc uses just-in-time compilation ([JIT](https://numba.pydata.org/)) +and, if available, GPU-acceleration ([CUDA](https://numba.pydata.org/numba-doc/dev/cuda/overview.html)) +to achieve high-performance calculations. Additionally, the use of easily constrainable "sampling volumes" allows for selective calculation over grids of arbitrary shape and arbitrary relative permeabilities (experimental). @@ -146,6 +148,14 @@ python3 -m pip install . python3 -m pip uninstall magneticalc -y ``` +### Enabling CUDA Support + +Tested in Ubuntu 20.04, using the NVIDIA CUDA 10.1 driver and NVIDIA GeForce GTX 1650 GPU. + +Please refer to the +[Numba Installation Guide](https://numba.pydata.org/numba-doc/latest/user/installing.html) +which includes the steps necessary to get CUDA up and running. + License ------- Copyright © 2020, Paul Wilhelm, M. Sc. <[anfrage@paulwilhelm.de](mailto:anfrage@paulwilhelm.de)> @@ -172,7 +182,6 @@ If this software has been helpful to you in some way or another, please let me a ToDo ---- -* Add CUDA backend for Biot-Savart implementation. * Add installation instructions for Windows, ensure consistent PyQt5 look and feel. * Add support for modeling of core material saturation and hysteresis effects. * Add support for selective display over a portion of the metric range, in order to get a kind of iso-contour display. @@ -182,7 +191,7 @@ Video ----- A very short demo of MagnetiCalc in action: -[![Magnetic Field Calculation with Python (MagnetiCalc)](https://raw.githubusercontent.com/shredEngineer/MagnetiCalc/master/docs/Video-Thumb.png)](https://www.youtube.com/watch?v=B60dk3BZO0c) +[![Magnetic Field Calculation with Python (MagnetiCalc)](https://raw.githubusercontent.com/shredEngineer/MagnetiCalc/master/docs/Video-Thumb.png)](https://www.youtube.com/watch?v=d3QKdYfOuvQ) Links ----- diff --git a/docs/Video-Thumb.png b/docs/Video-Thumb.png index 394b089..6c05590 100644 Binary files a/docs/Video-Thumb.png and b/docs/Video-Thumb.png differ diff --git a/docs/classIndex.html b/docs/classIndex.html index 0a82342..99a2a24 100644 --- a/docs/classIndex.html +++ b/docs/classIndex.html @@ -27,7 +27,7 @@
PyQt5.QtCore.QThread
PyQt5.QtWidgets.QDialog
PyQt5.QtWidgets.QFrame
PyQt5.QtWidgets.QGroupBox
PyQt5.QtWidgets.QMainWindow
PyQt5.QtWidgets.QScrollArea
PyQt5.QtWidgets.QSlider
PyQt5.QtWidgets.QTableWidget
PyQt5.QtWidgets.QWidget
vispy.scene.SceneCanvas
PyQt5.QtCore.QThread
PyQt5.QtWidgets.QDialog
PyQt5.QtWidgets.QFrame
PyQt5.QtWidgets.QGroupBox
PyQt5.QtWidgets.QMainWindow
PyQt5.QtWidgets.QScrollArea
PyQt5.QtWidgets.QSlider
PyQt5.QtWidgets.QTableWidget
PyQt5.QtWidgets.QWidget
vispy.scene.SceneCanvas