Data for "Finding and characterising physical states of Euclidean Abelianized loop quantum gravity using neural quantum states"
收藏资源简介:
1. Repository Information This repository contains numerical data produced for the paper "Finding and characterising physical states of Euclidean Abelianized loop quantum gravity using neural quantum states". Please refer to this paper for more details on how the data was produced. The data consists of variational Monte Carlo simulation outputs for the standard and alternative orderings of the quadratic Hamilton constraint considered in the paper. These simulations were performed in the gauge-invariant truncated Hilbert space of the Abelianized 4-dimensional loop quantum gravity model on the complete graph ($K_5$). The main purpose of the data is to provide the raw simulation logs for the near-kernel solutions obtained for the two constraint orderings studied in the paper. 2. Citing If you use this data, please cite this repository and the corresponding paper: Hanno Sahlmann and Waleed Sherif, "Finding and characterising physical states of Euclidean Abelianized loop quantum gravity using neural quantum states", arXiv:2604.14067v1 [gr-qc], 2026. 3. File Description The repository is organised according to the charge cutoff ($m_{\max}$) and the constraint ordering used in the simulation. The main directory contains subdirectories of the form cutoff1/ cutoff2/ cutoff3/ cutoff4/ cutoff5/ Each cutoffX directory corresponds to simulations performed at charge cutoff m_max = X Inside each cutoff directory, there are two ordering directories: alternative/ standard/ The standard directory contains simulation data for the standard ordered quadratic constraint Q_H = sum_v H_v H_v^\dagger The alternative directory contains simulation data for the alternative ordered quadratic constraint Q_Hdagger = sum_v H_v^\dagger H_v Each of these directories contains several subdirectories. Each subdirectory corresponds to an individual simulation run. Inside each run directory, there is a .json file containing the raw simulation log for that run. 4. Usage 4.1 Loading the JSON Files The .json files contain the raw logged quantities recorded during the variational optimisation. They can be loaded in Python using the standard json module: import json filePath = "path/to/file.json" with open(filePath, "r") as f: data = json.load(f) After loading, data is a Python dictionary. 4.2 JSON File Structure Each JSON file is a nested dictionary. The top-level keys correspond to observables or logged quantities measured during the simulation. For example, a file may contain top-level keys such as "V0", "V1", "V2", "V3", ... These labels denote the logged quantities in that particular simulation. In the attached example, the top-level keys are volume observables labelled by vertex, such as V0, V1, and V2. Each top-level entry has the same general internal structure: data["V0"] = { "iters": [...], "Mean": { "real": [...], "imag": [...] }, "Variance": [...], "Sigma": [...], "R_hat": [...], "TauCorr": [...] } The same structure applies to the other top-level entries, for example data["V1"] data["V2"] data["V3"] depending on which quantities were logged in the corresponding run. 4.3 Meaning of the JSON Keys For each logged quantity, the internal keys have the following meaning. iters The iteration numbers of the variational optimisation. Mean The Monte Carlo estimate of the expectation value of the logged quantity at each iteration. Since the expectation value may be complex, it is stored as a dictionary with separate real and imaginary parts: data["V0"]["Mean"]["real"] data["V0"]["Mean"]["imag"] Variance The estimated variance of the logged quantity at each iteration. Sigma The estimated statistical error of the Monte Carlo estimate at each iteration. R_hat The split ($\hat{R}$) diagnostic at each iteration. This is used as a convergence diagnostic for the Monte Carlo chains. TauCorr The estimated autocorrelation time at each iteration. 4.4 Accessing Data Entries To access the iteration numbers for the observable V0, use data["V0"]["iters"] To access the real part of the mean value of V0, use data["V0"]["Mean"]["real"] To access the imaginary part of the mean value of V0, use data["V0"]["Mean"]["imag"] To access the variance, statistical error, split ($\hat{R}$), and autocorrelation time, use data["V0"]["Variance"] data["V0"]["Sigma"] data["V0"]["R_hat"] data["V0"]["TauCorr"] The same pattern applies to all other top-level keys. For example: data["V1"]["Mean"]["real"] data["V2"]["Sigma"] data["V3"]["TauCorr"] 4.5 Array Lengths Each array stores the value of the corresponding quantity over the course of the variational optimisation. For example, if a simulation contains 150 iterations, then the following arrays will typically each contain 150 entries: data["V0"]["iters"] data["V0"]["Mean"]["real"] data["V0"]["Mean"]["imag"] data["V0"]["Variance"] data["V0"]["Sigma"] data["V0"]["R_hat"] data["V0"]["TauCorr"] Some JSON files may contain null entries. When loaded in Python, these become None. These should be handled appropriately when plotting or post-processing the data. 4.6 Example: Plotting an Observable The following example plots the real part of the mean value of V0 over the optimisation iterations: import json import matplotlib.pyplot as plt filePath = "path/to/file.json" with open(filePath, "r") as f: data = json.load(f) iters = data["V0"]["iters"] mean_real = data["V0"]["Mean"]["real"] plt.plot(iters, mean_real) plt.xlabel("Iteration") plt.ylabel("Re <V0>") plt.show() Similarly, the statistical error can be plotted using sigma = data["V0"]["Sigma"] or used as error bars in a plot. 5. Contact If you have any questions regarding the usage of the data, please contact the corresponding author: Waleed Sherifemail: waleed.sherif@fau.de 7. References The data provided in this repository was produced using neuraLQX[1], which is built on NetKet[2]. [1] neuraLQX, GitHub: https://github.com/waleed-sh/neuraLQX [2] NetKet: doi: 10.21468/SciPostPhysCodeb.7 doi: 10.1016/j.softx.2019.100311



