Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Joss paper #9

Closed
wants to merge 9 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 23 additions & 0 deletions .github/workflows/draft-pdf.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
on: [push]

jobs:
paper:
runs-on: ubuntu-latest
name: Paper Draft
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Build draft PDF
uses: openjournals/openjournals-draft-action@master
with:
journal: joss
# This should be the path to the paper within your repo.
paper-path: paper.md
- name: Upload
uses: actions/upload-artifact@v1
with:
name: paper
# This is the output path where Pandoc will write the compiled
# PDF. Note, this should be the same directory as the input
# paper.md
path: paper.pdf
60 changes: 60 additions & 0 deletions paper.bib
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
@article{bauer2011alps,
title={The ALPS project release 2.0: open source software for strongly correlated systems},
author={Bauer, Bela and Carr, LD and Evertz, Hans Gerd and Feiguin, Adrian and Freire, J and Fuchs, Sebastian and Gamper, Lukas and Gukelberger, Jan and Gull, Emanuel and Guertler, Siegfried and others},
journal={Journal of Statistical Mechanics: Theory and Experiment},
volume={2011},
number={05},
pages={P05001},
year={2011},
publisher={IOP Publishing}
}

@book{frenkel2023understanding,
title={Understanding molecular simulation: from algorithms to applications},
author={Frenkel, Daan and Smit, Berend},
year={2023},
publisher={Elsevier}
}

@article{theodoropoulos2000coarse,
title={“Coarse” stability and bifurcation analysis using time-steppers: A reaction-diffusion example},
author={Theodoropoulos, Constantinos and Qian, Yue-Hong and Kevrekidis, Ioannis G},
journal={Proceedings of the National Academy of Sciences},
volume={97},
number={18},
pages={9840--9843},
year={2000},
publisher={National Acad Sciences}
}

@article{larsen2017atomic,
title={The atomic simulation environment—a Python library for working with atoms},
author={Larsen, Ask Hjorth and Mortensen, Jens J{\o}rgen and Blomqvist, Jakob and Castelli, Ivano E and Christensen, Rune and Du{\l}ak, Marcin and Friis, Jesper and Groves, Michael N and Hammer, Bj{\o}rk and Hargus, Cory and others},
journal={Journal of Physics: Condensed Matter},
volume={29},
number={27},
pages={273002},
year={2017},
publisher={IOP Publishing}
}

@article{janssen2019pyiron,
title={pyiron: An integrated development environment for computational materials science},
author={Janssen, Jan and Surendralal, Sudarsan and Lysogorskiy, Yury and Todorova, Mira and Hickel, Tilmann and Drautz, Ralf and Neugebauer, J{\"o}rg},
journal={Computational Materials Science},
volume={163},
pages={24--36},
year={2019},
publisher={Elsevier}
}

@article{schneider2021ab,
title={Ab initio based models for temperature-dependent magnetochemical interplay in bcc Fe-Mn alloys},
author={Schneider, Anton and Fu, Chu-Chun and Waseda, Osamu and Barreteau, Cyrille and Hickel, Tilmann},
journal={Physical Review B},
volume={103},
number={2},
pages={024421},
year={2021},
publisher={APS}
}
44 changes: 44 additions & 0 deletions paper.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
---
title: 'mamonca: magnetic Monte Carlo code'
tags:
- Python
- Heisenberg-Landau model
- Spin dynamics
- Metadynamics
- Thermodynamic integration
authors:
- name: Osamu Waseda
orcid: 0000-0002-1677-4057
corresponding: true # (This is how to denote the corresponding author)
equal-contrib: true
affiliation: 1
- name: Tilmann Hickel
affiliation: 1
- name: Jörg Neugebauer
affiliation: 1
affiliations:
- name: Max-Planck-Institut für Eisenforschung, Max-Planck-Straße 1, D-40237 Düsseldorf, Germany
index: 1
date: 1 November 2023
bibliography: paper.bib

# Optional fields if submitting to a AAS journal too, see this blog post:
# https://blog.joss.theoj.org/2018/12/a-new-collaboration-with-aas-publishing
aas-doi: 10.3847/xxxxx <- update this with the DOI from AAS once you know it.
aas-journal: Astrophysical Journal <- The name of the AAS journal.
---

# Summary

Magnetic interactions account for a significant portion of free energy in certain materials, ranging from iron, whose ground state would be wrongly predicted without considering magnetic interactions, to Heusler alloys, whose magnetic properties could allow for the development of highly efficient refrgiration systems. In materials science, the Heisenberg model is frequently employed to heuristically compute the potential energy. There are two main methods to make use of the Heisenberg model at finite temperature: one is the Monte Carlo method for an efficient free energy minimization, the other is spin dynamics for the calculation of spin configuration evolution.

`mamonca` is a C++-based python software package for the computation of magnetic interactions in solid materials. It has a clear interface consisting of setters (methods starting with `set_`) for inputs and getters (methods starting with `get_`). It has also an excellent interactivity, as the parameters can be changed on-the-fly, as well as the outputs can be retrieved in the same way. In order to have full flexibility in terms of multi-component systems and inclusion of defects, `mamonca` outsourced the structure definition, so that the user can analyse the interactions externally using a software package like pyiron [@janssen2019pyiron] or Atomic Structure Environment (ASE) [@larsen2017atomic]. `mamonca` has also high flexibility in defining the Hamiltonian, as it allows the user to define not only the classical Heisenberg model, but higher order components including the longitudinal variation can be defined, as it has been employed for Fe-Mn systems [@schneider2021ab]. In addition to the classical Monte Carlo and spin-dynamics, `mamonca` allows also for an addition of Metadynamics [@theodoropoulos2000coarse] and magnetic thermodynamic integration [@frenkel2023understanding], which can deliver the free energy variation.

Internally, each atom points to the magnetic moment of the interacting neighboring atoms, which allows for an efficient computation of pairwise interactions both in terms of speed and memory. Moreover, while it performs an on-the-fly computation of average magnetization and average energy, it does not allocate new memory for any property on-the-fly, which makes it highly memory-efficient.

# Acknowledgements

We acknowledge contributions from Brigitta Sipocz, Syrtis Major, and Semyeong
Oh, and support from Kathryn Johnston during the genesis of this project.

# References
Loading