mamonca - interactive Magnetic Monte Carlo
This code allows you to launch Metropolis Monte Carlo simulations via Heisenberg Landau models (with various polynomial degrees) from a jupyter notebook.
How to compile
Download all files and run python setup.py build_ext --inplace
.
First steps:
In the following simple (but complete) example, we create a bcc Fe system using pyiron and launch a Metropolis Monte Carlo simulation with a Heisenberg coefficient J=0.1
(eV) for the first nearest neighbor pairs:
from pyiron import Project
from mc import MC
structure = Project('.').create.structure.bulk(
name='Fe',
cubic=True
)
structure.set_repeat(10)
J = 0.1 # eV
neighbors = structure.get_neighbors()
first_shell_tensor = neighbors.get_shell_matrix()[0]
mc = MC(len(structure))
mc.set_heisenberg_coeff(J*first_shell_tensor.toarray())
mc.run(temperature=300, number_of_iterations=1000)
How to set inputs and get outputs
As a rule of thumb, you can set all input parameters via functions starting with set_
. Similarly, output values can be obtained via functions whose names start with get_
. Take a look at the list of auto-complete and see their docstrings