{"id":20147495,"url":"https://github.com/computationalmodelling/fidimag","last_synced_at":"2025-10-12T01:02:50.741Z","repository":{"id":44637531,"uuid":"43129493","full_name":"computationalmodelling/fidimag","owner":"computationalmodelling","description":"Finite DIfference microMAGnetic code, based on Python, Cython and C","archived":false,"fork":false,"pushed_at":"2024-12-05T19:29:55.000Z","size":41079,"stargazers_count":62,"open_issues_count":9,"forks_count":25,"subscribers_count":17,"default_branch":"master","last_synced_at":"2025-03-30T17:08:43.507Z","etag":null,"topics":["hacktoberfest"],"latest_commit_sha":null,"homepage":"http://computationalmodelling.github.io/fidimag/","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/computationalmodelling.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS.txt","dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-09-25T09:51:27.000Z","updated_at":"2025-03-23T18:40:18.000Z","dependencies_parsed_at":"2023-01-19T04:01:14.850Z","dependency_job_id":"e19bdea5-4a8e-43fa-a64e-a2e418b6c855","html_url":"https://github.com/computationalmodelling/fidimag","commit_stats":null,"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/computationalmodelling%2Ffidimag","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/computationalmodelling%2Ffidimag/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/computationalmodelling%2Ffidimag/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/computationalmodelling%2Ffidimag/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/computationalmodelling","download_url":"https://codeload.github.com/computationalmodelling/fidimag/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247526762,"owners_count":20953143,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["hacktoberfest"],"created_at":"2024-11-13T22:29:20.121Z","updated_at":"2025-10-12T01:02:50.735Z","avatar_url":"https://github.com/computationalmodelling.png","language":"C++","readme":"# Fidimag\n\n\n[![Binder](https://mybinder.org/badge.svg)](https://mybinder.org/v2/gh/computationalmodelling/fidimag/master)\n[![Documentation Status](https://readthedocs.org/projects/fidimag/badge/?version=latest)](http://fidimag.readthedocs.org/en/latest/?badge=latest)\n[![codecov](https://codecov.io/gh/computationalmodelling/fidimag/branch/master/graph/badge.svg)](https://codecov.io/gh/computationalmodelling/fidimag)\n[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.167858.svg)](https://doi.org/10.5281/zenodo.167858)\n[![Website](https://img.shields.io/website-up-down-green-red/http/shields.io.svg?label=Fidimag-Website)](http://computationalmodelling.github.io/fidimag/)\n\n| Tests Type | Status |\n|:-:|:-:|\n| GHA Unit Tests | ![Build](https://github.com/computationalmodelling/fidimag/actions/workflows/build.yml/badge.svg?)\n\n\u003cimg src=\"http://computationalmodelling.github.io/fidimag/figs/skyrmion.jpg\" alt=\"Fidimag Image\" width=\"400\" align=\"right\"\u003e\n\nFidimag solves finite-difference micromagnetic problems and supports atomistic simulations, using Python interface. The interface to both types of simulation is similar.\n\n### Install\n\nSee: [https://fidimag.readthedocs.io/en/latest/install.html](https://fidimag.readthedocs.io/en/latest/install.html)\n\n### Features\n* Optimal LLG equation integration using modern [Sundial's v6](https://github.com/LLNL/sundials/) CVODE solver\n* Offers LLG and LLG with spin torque terms (Zhang-Li and Sloncewski)\n* Calculations using the Geodesic-Nudged-Elastic-Band and String methods to compute energy barriers.\n* Exchange, Zeeman, Demagnetising, Uniaxial Anisotropy energy classes.\n* Parallelised using OpenMP.\n* Easily extensible to add new features.\n* Cubic and Hexagonal Meshes in atomistic simulations.\n* Open-source under the 2-clause BSD Licence.\n\n### Example\nHere we show how to relax a nanodisk system from an initial state. We have many more examples in the [documentation](http://fidimag.readthedocs.io/en/latest/?badge=latest)!\n\n```python\nimport fidimag\nfrom fidimag.common import CuboidMesh\nfrom fidimag.micro import Sim, UniformExchange, Demag, DMI, UniaxialAnisotropy\nmesh = CuboidMesh(nx=60, ny=60, nz=1, dx=2.0, dy=2.0, dz=2.0, unit_length=1e-9)\n\ndef Ms_init(position):\n    \"\"\"\n    Set where the system has magnetic material\n    Form a nanodisk shape\n    \"\"\"\n    Ms = 8.6e5\n    x, y, z = position\n    if (x - 60)**2 + (y - 60)**2 \u003c 60**2:\n        return Ms\n    else:\n        return 0\n\ndef m_init(position):\n    \"\"\"\n    Approximate skyrmion profile\n    \"\"\"\n    x, y, z = position\n    if (x - 60)**2 + (y - 60)**2 \u003c 40**2:\n        return (0, 0, 1)\n    else:\n        return (0, 0, -1)\n\nsim = Sim(mesh, name='target_skyrmion')\nsim.set_Ms(Ms_init)\nsim.set_m(m_init)\nsim.add(Demag())\nsim.add(UniformExchange(A=1e-11))\nsim.add(DMI(D=3e-3))\nsim.add(UniaxialAnisotropy(Ku=4e5, axis=(0, 0, 1)))\nsim.relax()\nsim.save_vtk()\n```\nThe results can be straightforwardly visualised from the outputted VTK files using programs such as Paraview:\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"http://computationalmodelling.github.io/fidimag/figs/target.png\" alt=\"Target Skyrmion State\" width=\"250\"\u003e\n\u003c/p\u003e\n\n### Publications\n\nA list tracking publications that cite FIDIMAG can be found in the [Publications](PUBLICATIONS.md) document.\n\n\n### Attributions\nThe code is currently developed by Weiwei Wang, David Cortes, Ryan Pepper and Hans Fangohr at Anhui University, University of Southampton and European XFEL. Previous developers who have worked on Fidimag are Marc-Antonio Bisotti, Thomas Kluyver, Mark Vousden, Oliver Laslett and Rebecca Carey.\n\nContributions and pull requests to both the code and documentation are welcome.\nIf you use Fidimag, please cite as:\n\nBisotti, M.-A., Cortés-Ortuño, D., Pepper, R., Wang, W., Beg, M., Kluyver, T. and Fangohr, H., 2018. Fidimag – A Finite Difference Atomistic and Micromagnetic Simulation Package. Journal of Open Research Software, 6(1), p.22. DOI: http://doi.org/10.5334/jors.223\n\n\n### Acknowledgements\n\nWe acknowledge financial support from EPSRC’s Centre for Doctoral Training in Next Generation Computational Modelling (EP/L015382/1),  EPSRC’s Doctoral Training Centre in Complex System Simulation (EP/G03690X/1), EPSRC Programme grant on Skyrmionics (EP/N032128/1) and OpenDreamKitHorizon 2020 European Research Infrastructure project (676541).\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcomputationalmodelling%2Ffidimag","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcomputationalmodelling%2Ffidimag","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcomputationalmodelling%2Ffidimag/lists"}