SciPost logo

SciPost Submission Page

Carlo.jl: A general framework for Monte Carlo simulations in Julia

by Lukas Weber

This is not the latest submitted version.

Submission summary

Authors (as registered SciPost users): Lukas Weber
Submission information
Preprint Link: https://arxiv.org/abs/2408.03386v2  (pdf)
Code repository: https://github.com/lukas-weber/Carlo.jl
Code version: v0.2.3
Code license: MIT
Date submitted: 2024-11-26 14:55
Submitted by: Weber, Lukas
Submitted to: SciPost Physics Codebases
Ontological classification
Academic field: Physics
Specialties:
  • Condensed Matter Physics - Computational
  • Statistical and Soft Matter Physics
Approach: Computational

Abstract

Carlo is a Monte Carlo simulation framework written in Julia. It provides MPI-parallel scheduling, organized storage of input, checkpoint, and output files, as well as statistical postprocessing. With a minimalist design, it aims to aid the development of high-quality Monte Carlo codes, especially for demanding applications in condensed matter and statistical physics. This hands-on user guide shows how to implement a simple code with Carlo and provides benchmarks to show its efficacy.

Current status:
Has been resubmitted

Reports on this Submission

Report #1 by Anonymous (Referee 1) on 2024-12-12 (Invited Report)

Strengths

- Simple and well-written Julia package for performing Monte Carlo simulations

- A simple (Ising code) and more complex (stochastic series expansion, a quantum monte calro method) example are now provided

Report

The main two points in my previous reported (explanation of parallel mode, addition of a new appliative package) have been clearly taken into account. by the author.
The corresponding new features (parallel tempering and stochastic series expansion code) are clear added values to the code and thus broadne the range of potential users of the package.

Requested changes

There are very minor points to fix :
- The abstract has not been changed to reflect the new additions
- Minor : I am not sure the sign problem in the model Eq 5 comes only from the signs of J_ij . Couldn't there be sign problem due to sign of D_i^x ?
- A final reading could be useful to improve the style, in particular of the newly added paragraphs (e.g. 'Now, we will now sketch ...')

Recommendation

Publish (easily meets expectations and criteria for this Journal; among top 50%)

  • validity: high
  • significance: good
  • originality: good
  • clarity: good
  • formatting: good
  • grammar: reasonable

Author:  Lukas Weber  on 2024-12-13  [id 5039]

(in reply to Report 1 on 2024-12-12)

We thank the referee for their careful reevaluation of the manuscript.

The statement about the sign-problem was indeed imprecise. The sign-problem free case is when the sign of $D^x_i$ is uniform throughout the lattice. The reason is that the off-diagonal component of $(S^x)^2$, consisting $(S^+)^2$ and $(S^-)^2$ can only appear in even numbers due to the magnetization conservation of the remaining Hamiltonian.
Therefore, there will always be an even power of $D^x_i$ operators and an even number of extra $J_{ij} S^+_i S^-_j$ paths connecting them, leaving the sign positive on a bipartite lattice.
The above argument breaks however, when $D^x_i$ has different signs on different lattice sites. A discussion of this has been added.

Apologies for the typos. After adjusting the abstract to incorporate the changes, I have checked the manuscript to improve the style.

Login to report or comment