Skip to content

Commit

Permalink
Ready for PyPi distribution + README update
Browse files Browse the repository at this point in the history
  • Loading branch information
spollok committed May 5, 2022
1 parent a488bfc commit 8a3c1df
Show file tree
Hide file tree
Showing 2 changed files with 31 additions and 9 deletions.
23 changes: 17 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,28 @@
<div align="center">
<img src="https://cmt-dtu-energy.github.io/MagTense/_static/MagTense_logo.PNG" height=250><br>
</div>

# MagTense version 2021

MagTense consists of both a magnetostatic and a micromagnetism calculation framework.

The magnetostatic framework can calculate the magnetic field from objects shaped as cylinders, pieces of cylinders, prisms, circular pieces and tetrahedrons. This is done using a fully analytical calculation of the demagnetization tensor. The frameworkis fully implemented in Fortran and has both a Matlab MEX interface and a Python interface.
The magnetostatic framework can calculate the magnetic field from objects shaped as cylinders, pieces of cylinders, prisms, circular pieces and tetrahedrons. This is done using a fully analytical calculation of the demagnetization tensor. The framework is fully implemented in Fortran and has both a Matlab MEX interface and a Python interface.

The micromagnetism framework solves the Landau-Lifshitz equation. The framework is fully implemented in Fortran and has a Matlab MEX interface, as well as an older Matlab implementation. The micromagnetism framework utilizes the magnetostatic framework for calculating the demagnetization field.

MagTense is directly useable in Matlab on Windows by downloading the already compiled MEX-files in [matlab/MEX](https://github.com/cmt-dtu-energy/MagTense/tree/master/matlab/MEX_files) with no compilation required. The files are directly useable with no compilation required, although Matlab 2018a or greater is required. Examples of how to calculate magnetostatic and micromagnetic problems using the Matlab interface can be found in [matlab/examples](https://github.com/cmt-dtu-energy/MagTense/tree/master/matlab/examples).

The micromagnetism framework solves the Landau–Lifshitz equation. The frameworkis fully implemented in Fortran and has a Matlab MEX interface, as well as an older Matlab implementation. The micromagnetism framework utilizes the magnetostatic framework for calculating the demagnetizating field.
Instructions on how to use the Python interface are listed in [python/](https://github.com/cmt-dtu-energy/MagTense/tree/master/python). Binary installers for the Python interface are available at the [Python
Package Index (PyPI)](https://pypi.org/project/magtense) and can be installed via (requires **Python 3.9**):

MagTense is directly useable in Matlab on Windows by downloading the already compiled MEX-files in matlab\MEX with no compilation required. The files are directly useable with no compilation required, although Matlab 2018a or greater is required. Examples of how to calculate magnetostatic and micromagnetic problems using the Matlab interface can be found in matlab\examples. Documentation on how to use the Python interface can be found in the Techmanual below.
```sh
pip install magtense
```

If you want to compile MagTense a Visual Studio project file for Windows, MagTense.sln, is available, as well as a Matlab function to build the MEX-files, buildMagTenseMEX.m. MagTense utilizies Intel MKL for the micromagnetic simlations and can also utilize CUDA and CVODE.
If you want to compile MagTense with a Visual Studio project file for Windows, [MagTense.sln](https://github.com/cmt-dtu-energy/MagTense/blob/master/MagTense.sln), is available, as well as a Matlab function to build the MEX-files, [buildMagTenseMEX.m](https://github.com/cmt-dtu-energy/MagTense/blob/master/buildMagTenseMEX.m). MagTense utilizies Intel MKL for the micromagnetic simlations and can also utilize CUDA and CVODE.

The webpage of the code is available at https://www.magtense.org
The TechManual on the code is available at https://cmt-dtu-energy.github.io/MagTense/index.html
The webpage of the code is available at https://www.magtense.org
The TechManual on the code is available at https://cmt-dtu-energy.github.io/MagTense/

Currently the code is in development. The main features being worked on at the moment are:
- Proper code documentation
Expand Down
17 changes: 14 additions & 3 deletions python/setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,16 +11,27 @@
long_description_content_type="text/markdown",
classifiers=[
"Development Status :: 3 - Alpha",
"License :: OSI Approved :: GNU Lesser General Public License v3 or later (LGPLv3+)",
"License :: OSI Approved :: GNU General Public License v3 (GPLv3)",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.9",
"Topic :: Scientific/Engineering",
],
keywords=[
"Micromagnetism",
"Magnetostatics",
"Demagnetization tensor",
],
url="https://www.magtense.org/",
author="Rasmus Bjørk",
author_email="rabj@dtu.dk",
project_urls={
'Source': 'https://github.com/cmt-dtu-energy/MagTense',
'Documentation': 'https://cmt-dtu-energy.github.io/MagTense/',
},
author="Stefan Pollok",
author_email="spol@dtu.dk",
license="GPL 3.0",
packages=find_packages(include=['magtense', 'magtense.*']),
package_data={'magtense': ['utils/data/*.csv']},
python_requires="==3.9.*",
include_package_data=True,
install_requires=["numpy", "matplotlib"],
)

0 comments on commit 8a3c1df

Please sign in to comment.