Finsih report

This commit is contained in:
2025-11-19 21:10:16 +01:00
parent 9e4328a23d
commit f2979621c0
6 changed files with 152 additions and 11 deletions
+3
View File
@@ -24,3 +24,6 @@ Run `src/project2/generate_results.sh` to compile all binaries and automatically
### Project 3
Run `src/project3/generate_results.sh` to compile all binaries and automatically start the simulations. Afterwards, to create all output plots, run `src/project3/python/generate_plots.sh`. If you don't have `pueue` available, change the variable `PUEUE` to false in all bash scripts. To create all simulations it takes about 2 hours. To evaluate the run time of the different algorithms, you can run `src/project3/python/performance_analysis.py`. All python scripts use `typer` to make a straightforward usage possible. Run `python script.py --help` to see all available options.
### Project 3
Run `src/project3/generate_results.sh` to compile all binaries and automatically start the simulations. Afterwards, run the jupyter notebooks located in `src/project4/python/` to create all output plots.
+1 -1
View File
@@ -1,4 +1,4 @@
The Ising model is a mathematical representation of ferromagnetism in statistical mechanics. This model consists of discrete variables, known as spins, which can take on one of two values, typically represented as +1 (up) or -1 (down). These spins are arranged on a lattice and interact with their nearest neighbors. The model is used to study phase transitions, such as the transition from a magnetized to a non-magnetized state, and has applications in physics, biology and the social sciences.
The Ising model is a mathematical representation of ferromagnetism in statistical mechanics. This model consists of discrete variables, known as spins, which can take on one of two values, typically represented as +1 (up) or -1 (down). These spins are arranged on a lattice and interact with their nearest neighbors. The model is used to study phase transitions, such as the transition from a magnetized to a non-magnetized state, and has applications in physics, biology and the social sciences \cite{kulskeIsingModelHighlights2025,mullickSociophysicsModelsInspired2025}.
It allows us to measure the statistical properties of the system, such as magnetization, susceptibility and specific heat, as functions of temperature. In order to efficiently sample the Ising model, we approximate the system state using Markov Chain Monte Carlo (MCMC) methods with rejection sampling. These are a class of algorithms that sample complex probability distributions by constructing a Markov chain with the desired distribution as its equilibrium distribution. In the context of the Ising model, these methods enable us to generate spin configurations representative of the system's behavior at a given temperature. Parallel computation can significantly speed up the sampling process, enabling the concurrent evaluation of multiple systems. This is particularly useful for large numbers of computations under different conditions, such as at various temperatures.
+8 -8
View File
@@ -1,5 +1,5 @@
\subsection{Ising Model}
In a two-dimensional system of size $L \times L$, each lattice site $i$ contains a spin variable $s_i$ that can take on values of either +1 (up) or -1 (down). The energy of a given configuration of spins is described by the sum over nearest-neighbor interactions:
In a two-dimensional system of size $L \times L$, each lattice site $i$ contains a spin variable $s_i$ that can take on values of either +1 (up) or -1 (down). The energy of a given configuration of spins is described by the sum over nearest-neighbor interactions \cite{anderskvellestadProject4FYS3150}:
\begin{equation}
E = -J \sum_{\langle i,j \rangle} s_i s_j.
\end{equation}
@@ -26,7 +26,7 @@ The alteration in energy resulting from the flip is then
\end{equation}
This expression demonstrates how the energy change depends exclusively on the local configuration of spins surrounding site $k$.
The total magnetization of the system $M$ is derived from the summation of all spin variables
The total magnetization of the system $M$ is derived from the summation of all spin variables \cite{anderskvellestadProject4FYS3150}
\begin{equation}
M = \sum_{i} s_i.
\end{equation}
@@ -36,14 +36,14 @@ Both extensive quantities, defined as those that scale with the system size, can
\end{equation}
where $N = L^2$ is the total number of spins in the lattice.
The Ising model displays a specific heat capacity, $C_V$, and magnetic susceptibility, $\chi$, both of which are defined as follows, once more normalized per spin:
The Ising model displays a specific heat capacity, $C_V$, and magnetic susceptibility, $\chi$, both of which are defined as follows, once more normalized per spin \cite{anderskvellestadProject4FYS3150}:
\begin{equation} \label{eq:heat_capacity}
\frac{C_V}{N} = \frac{N \left(\expect{\epsilon^2} - \expect{\epsilon}^2\right)}{k_B T^2},
\end{equation}
\begin{equation} \label{eq:susceptibility}
\frac{\chi}{N} = \frac{N \left(\expect{m^2} - \expect{m}^2\right)}{k_B T},
\end{equation}
where $k_B$ is the Boltzmann constant and $T$ is the temperature of the system. The notation $\expect{\cdot}$ denotes the expectation value, which can be estimated through averaging over sampled configurations. The average over a sufficiently large number of Monte Carlo samples will converge to the true expectation value. Given that expectation values are computed from sampled configurations, it is imperative to ensure that the system's state space is sampled correctly. In the Ising model, it is assumed that the configurations follow the Boltzmann distribution. This distribution dictates the probability of a configuration with energy $E$ at temperature $T$ as follows:
where $k_B$ is the Boltzmann constant and $T$ is the temperature of the system. The notation $\expect{\cdot}$ denotes the expectation value, which can be estimated through averaging over sampled configurations. The average over a sufficiently large number of Monte Carlo samples will converge to the true expectation value. Given that expectation values are computed from sampled configurations, it is imperative to ensure that the system's state space is sampled correctly. In the Ising model, it is assumed that the configurations follow the Boltzmann distribution. This distribution dictates the probability of a configuration with energy $E$ at temperature $T$ as follows \cite{anderskvellestadProject4FYS3150,kulskeIsingModelHighlights2025}:
\begin{equation}
P(E) = \frac{e^{-E/(k_B T)}}{Z},
\end{equation}
@@ -53,12 +53,12 @@ with the partition function $Z$ defined as
\end{equation}
\subsubsection{Critical Temperature}
In two dimensions, the Ising model undergoes a continuous phase transition at the critical temperature $T_C$ separating an ordered low-temperature phase from a disordered high-temperature phase. In the context of the model, spontaneous magnetization is exhibited when the temperature falls below the critical temperature, $T_C$. This phenomenon occurs because, even in the absence of an external magnetic field, the magnetization $m$ remains non-zero. As the temperature approaches $T_C$ from below, the magnetization decreases continuously, eventually vanishing according to a characteristic power law. Concurrently, fluctuations in energy and magnetization exhibit a marked increase, as evidenced by the divergent behavior of both the heat capacity \autoref{eq:heat_capacity}, and the susceptibility \autoref{eq:susceptibility}. Precisely at $T_C$, the system becomes scale-invariant, and configurations manifest correlations that extend across the entire lattice. In numerical simulations, such phenomena manifest as strong critical slowing down, necessitating sufficiently long sampling times to resolve the sharply peaked response functions. The exact solution for the square lattice with nearest-neighbor interactions yields the following result:
In two dimensions, the Ising model undergoes a continuous phase transition at the critical temperature $T_C$ separating an ordered low-temperature phase from a disordered high-temperature phase. In the context of the model, spontaneous magnetization is exhibited when the temperature falls below the critical temperature, $T_C$. This phenomenon occurs because, even in the absence of an external magnetic field, the magnetization $m$ remains non-zero. As the temperature approaches $T_C$ from below, the magnetization decreases continuously, eventually vanishing according to a characteristic power law. Concurrently, fluctuations in energy and magnetization exhibit a marked increase, as evidenced by the divergent behavior of both the heat capacity \autoref{eq:heat_capacity}, and the susceptibility \autoref{eq:susceptibility}. Precisely at $T_C$, the system becomes scale-invariant, and configurations manifest correlations that extend across the entire lattice. In numerical simulations, such phenomena manifest as strong critical slowing down, necessitating sufficiently long sampling times to resolve the sharply peaked response functions. The exact solution for the square lattice with nearest-neighbor interactions yields the following result \cite{anderskvellestadProject4FYS3150,metraTemperaturedependentCriticalityRandom2021}:
$k_B T_C / J = 2 / \ln(1 + \sqrt{2}) \approx \num{2.269}$, providing a precise reference point for validating numerical results.
\subsubsection{Ergodic Property}
The implementation of Monte Carlo methods within the Ising model is contingent upon the assumption of ergodicity, which stipulates that the Markov chain generated by successive spin updates must possess the capacity to attain all physically relevant configurations within a sufficient time frame. In practice, this implies that single-spin flip dynamics must form a connected set over the configuration space, thereby avoiding traps in metastable regions. The MetropolisHastings update rule, which is employed for sampling purposes, ensures detailed balance by ensuring that the stationary distribution of the Markov chain corresponds to the Boltzmann distribution. Ergodicity guarantees the convergence of long-time averages of observables, such as $\epsilon$ and $m$, to ensemble averages. As the critical point is approached, ergodicity remains valid; however, the time required to decorrelate successive configurations grows significantly due to the emergence of large correlated domains. This phenomenon, often referred to as critical slowing down, necessitates meticulous care in determining autocorrelation times to obtain statistically independent samples and reliable estimates of thermodynamic quantities.
When an ergodic Markov chain is considered, the equivalence between ensemble averages and long-time averages is guaranteed in the limit of a sufficient number of Monte Carlo steps. For any observable $A$, the ensemble expectation value $\expect{A}$ obtained from the Boltzmann distribution coincides with the time-averaged estimate $\hat{A}$ extracted from the simulation. It is imperative to note that the aforementioned equality is only valid once the chain has thoroughly explored configuration space. This underscores the significance of ergodicity and adequate sampling length as essential prerequisites for reliable numerical measurements. However, it does allow for the utilization of an adequately sampled time average in place of the expectation value. The time-averaged estimate is defined as follows:
When an ergodic Markov chain is considered, the equivalence between ensemble averages and long-time averages is guaranteed in the limit of a sufficient number of Monte Carlo steps. For any observable $A$, the ensemble expectation value $\expect{A}$ obtained from the Boltzmann distribution coincides with the time-averaged estimate $\hat{A}$ extracted from the simulation. It is imperative to note that the aforementioned equality is only valid once the chain has thoroughly explored configuration space. This underscores the significance of ergodicity and adequate sampling length as essential prerequisites for reliable numerical measurements. However, it does allow for the utilization of an adequately sampled time average in place of the expectation value. The time-averaged estimate is defined as follows \cite{ErgodicitySpringerLink}:
\begin{equation}
\hat A(t) = \frac{1}{t} \int_0^t \mathrm{d} t' A(t').
\end{equation}
@@ -72,7 +72,7 @@ To ensure the proper sampling of the Boltzmann distribution and to facilitate ef
This acceptance criterion ensures that the system can explore higher energy states, allowing it to escape local minima and sample the configuration space more effectively. The acceptance of the flip is contingent upon the random number $r$ being drawn uniformly from the interval $[0, 1)$. More specifically, the flip is accepted if $r < P_{accept}$.
\subsection{Parallelization}
Parallelization of MCMC methods is challenging due to the sequential nature of Markov chains. However, it is possible to exploit the independence of multiple simulations at different temperatures or initial conditions to achieve parallelism. The implementation of multiple independent Markov chains operating concurrently, with each chain simulating the Ising model at an distinct temperature, has been demonstrated to result in a substantial acceleration of the overall sampling process. Each chain functions independently, facilitating straightforward parallelization across multiple processors. This approach is particularly beneficial when studying temperature-dependent properties of the Ising model, as it enables simultaneous exploration of the system's behavior across a range of temperatures.
Parallelization of MCMC methods is challenging due to the sequential nature of Markov chains. However, it is possible to exploit the independence of multiple simulations at different temperatures or initial conditions to achieve parallelism \cite{glatt-holtzParallelMCMCAlgorithms2024}. The implementation of multiple independent Markov chains operating concurrently, with each chain simulating the Ising model at an distinct temperature, has been demonstrated to result in a substantial acceleration of the overall sampling process. Each chain functions independently, facilitating straightforward parallelization across multiple processors. This approach is particularly beneficial when studying temperature-dependent properties of the Ising model, as it enables simultaneous exploration of the system's behavior across a range of temperatures.
\subsection{Implementation Details}
@@ -93,5 +93,5 @@ Furthermore, to support large parameter sweeps, the code incorporates a scheduli
\subsubsection{Tools and Usage of AI}
For concurrent execution, the implementation utilizes the C++ library \texttt{OpenMP}. The executables were compiled using \texttt{g++ (GCC) 15.2.1 20251022 (Red Hat 15.2.1-3)} with optimization flag \texttt{-O3} enabled. All executions were carried out on an AMD Ryzen 7 PRO 4750U Processor, equipped with 16 GB of RAM, operating on the Fedora Linux 42 distribution. A large impact of IO operations on performance is not anticipated, given the utilization of an NVMe SSD for all read and write operations.
For the purposes of analysis, the \texttt{Python 3.13} programming language was utilized in conjunction with the libraries \texttt{NumPy}, \texttt{Pandas}, \texttt{SciPy}, and \texttt{Matplotlib}. In the course of composing this report, the large language model \texttt{ChatGPT} was employed to proofread various sections and to propose enhancements in terms of phrasing and grammar. All figures were created manually, without the use of AI assistance. During the implementation of the code, the large language model provided by \texttt{GitHub Copilot} was used to improve coding speed, but not for generating large code blocks. A comprehensive review and testing of the code was conducted to ensure its correctness.
For the purposes of analysis, the \texttt{Python 3.13} programming language was utilized in conjunction with the libraries \texttt{NumPy} \cite{harrisArrayProgrammingNumPy2020}, \texttt{Pandas} \cite{teamPandasdevPandasPandas2025}, \texttt{SciPy} \cite{2020SciPy-NMeth}, and \texttt{Matplotlib} \cite{hunterMatplotlib2DGraphics2007}. In the course of composing this report, the large language model \texttt{ChatGPT} was employed to proofread various sections and to propose enhancements in terms of phrasing and grammar. All figures were created manually, without the use of AI assistance. During the implementation of the code, the large language model provided by \texttt{GitHub Copilot} was used to improve coding speed, but not for generating large code blocks. A comprehensive review and testing of the code was conducted to ensure its correctness.
Binary file not shown.
+1 -1
View File
@@ -158,7 +158,7 @@ The following quantities are furthermore obtained analytically:
\expect{|m|} &= \frac{2}{Z} \left(2+e^{8\beta}\right)\\
\expect{m^2} &= \frac{8}{Z} \left(1 + e^{8\beta}\right).
\end{align}
Using those expression it is also straightforward to obtain $\expect{\frac{C_V}{N}}$ and $\expect{\frac{\chi}{N}}$.
Using those expressions it is also straightforward to obtain $\expect{\frac{C_V}{N}}$ and $\expect{\frac{\chi}{N}}$.
For the numerical evaluation at $k_BT = J = 1$ of all expectation values, \texttt{Python} is used. The expectation values shown in \cref{tab:analytical_expectation_values} are obtained from the numerical analysis.
+138
View File
@@ -0,0 +1,138 @@
@article{2020SciPy-NMeth,
title = {{{SciPy}} 1.0: {{Fundamental}} Algorithms for Scientific Computing in Python},
author = {Virtanen, Pauli and Gommers, Ralf and Oliphant, Travis E. and Haberland, Matt and Reddy, Tyler and Cournapeau, David and Burovski, Evgeni and Peterson, Pearu and Weckesser, Warren and Bright, Jonathan and {van der Walt}, St{\'e}fan J. and Brett, Matthew and Wilson, Joshua and Millman, K. Jarrod and Mayorov, Nikolay and Nelson, Andrew R. J. and Jones, Eric and Kern, Robert and Larson, Eric and Carey, C J and Polat, {\.I}lhan and Feng, Yu and Moore, Eric W. and VanderPlas, Jake and Laxalde, Denis and Perktold, Josef and Cimrman, Robert and Henriksen, Ian and Quintero, E. A. and Harris, Charles R. and Archibald, Anne M. and Ribeiro, Ant{\^o}nio H. and Pedregosa, Fabian and {van Mulbregt}, Paul and {SciPy 1.0 Contributors}},
year = 2020,
journal = {Nature Methods},
volume = {17},
pages = {261--272},
doi = {10.1038/s41592-019-0686-2}
}
@misc{anderskvellestadProject4FYS3150,
title = {Project 4 --- {{FYS3150}}/{{FYS4150}} Course Material},
author = {{Anders Kvellestad}},
urldate = {2025-11-19},
howpublished = {https://anderkve.github.io/FYS3150/book/projects/project4.html},
file = {/home/lars/Zotero/storage/V5DGD436/project4.html}
}
@misc{ErgodicitySpringerLink,
title = {Ergodicity \textbar{} {{SpringerLink}}},
urldate = {2025-11-19},
howpublished = {https://link.springer.com/chapter/10.1007/978-3-662-03961-8\_19},
file = {/home/lars/Zotero/storage/B8AA6GLC/978-3-662-03961-8_19.html}
}
@misc{glatt-holtzParallelMCMCAlgorithms2024,
title = {Parallel {{MCMC Algorithms}}: {{Theoretical Foundations}}, {{Algorithm Design}}, {{Case Studies}}},
shorttitle = {Parallel {{MCMC Algorithms}}},
author = {{Glatt-Holtz}, Nathan E. and Holbrook, Andrew J. and Krometis, Justin A. and Mondaini, Cecilia F.},
year = 2024,
month = jul,
number = {arXiv:2209.04750},
eprint = {2209.04750},
primaryclass = {stat},
publisher = {arXiv},
doi = {10.48550/arXiv.2209.04750},
urldate = {2025-11-19},
abstract = {Parallel Markov Chain Monte Carlo (pMCMC) algorithms generate clouds of proposals at each step to efficiently resolve a target probability distribution. We build a rigorous foundational framework for pMCMC algorithms that situates these methods within a unified 'extended phase space' measure-theoretic formalism. Drawing on our recent work that provides a comprehensive theory for reversible single proposal methods, we herein derive general criteria for multiproposal acceptance mechanisms which yield ergodic chains on general state spaces. Our formulation encompasses a variety of methodologies, including proposal cloud resampling and Hamiltonian methods, while providing a basis for the derivation of novel algorithms. In particular, we obtain a top-down picture for a class of methods arising from 'conditionally independent' proposal structures. As an immediate application, we identify several new algorithms including a multiproposal version of the popular preconditioned Crank-Nicolson (pCN) sampler suitable for high- and infinite-dimensional target measures which are absolutely continuous with respect to a Gaussian base measure. To supplement our theoretical results, we carry out a selection of numerical case studies that evaluate the efficacy of these novel algorithms. First, noting that the true potential of pMCMC algorithms arises from their natural parallelizability, we provide a limited parallelization study using TensorFlow and a graphics processing unit to scale pMCMC algorithms that leverage as many as 100k proposals at each step. Second, we use our multiproposal pCN algorithm (mpCN) to resolve a selection of problems in Bayesian statistical inversion for partial differential equations motivated by fluid measurement. These examples provide preliminary evidence of the efficacy of mpCN for high-dimensional target distributions featuring complex geometries and multimodal structures.},
archiveprefix = {arXiv},
keywords = {Mathematics - Probability,Mathematics - Statistics Theory,Statistics - Computation},
file = {/home/lars/Zotero/storage/9DBGSWDS/Glatt-Holtz et al. - 2024 - Parallel MCMC Algorithms Theoretical Foundations, Algorithm Design, Case Studies.pdf;/home/lars/Zotero/storage/IFPYDLIP/2209.html}
}
@article{harrisArrayProgrammingNumPy2020,
title = {Array Programming with {{NumPy}}},
author = {Harris, Charles R. and Millman, K. Jarrod and van der Walt, St{\'e}fan J. and Gommers, Ralf and Virtanen, Pauli and Cournapeau, David and Wieser, Eric and Taylor, Julian and Berg, Sebastian and Smith, Nathaniel J. and Kern, Robert and Picus, Matti and Hoyer, Stephan and van Kerkwijk, Marten H. and Brett, Matthew and Haldane, Allan and del R{\'i}o, Jaime Fern{\'a}ndez and Wiebe, Mark and Peterson, Pearu and {G{\'e}rard-Marchant}, Pierre and Sheppard, Kevin and Reddy, Tyler and Weckesser, Warren and Abbasi, Hameer and Gohlke, Christoph and Oliphant, Travis E.},
year = 2020,
month = sep,
journal = {Nature},
volume = {585},
number = {7825},
pages = {357--362},
publisher = {{Springer Science and Business Media LLC}},
doi = {10.1038/s41586-020-2649-2}
}
@article{hunterMatplotlib2DGraphics2007,
title = {Matplotlib: {{A 2D}} Graphics Environment},
author = {Hunter, J. D.},
year = 2007,
journal = {Computing in Science \& Engineering},
volume = {9},
number = {3},
pages = {90--95},
publisher = {IEEE COMPUTER SOC},
doi = {10.1109/MCSE.2007.55},
abstract = {Matplotlib is a 2D graphics package used for Python for application development, interactive scripting, and publication-quality image generation across user interfaces and operating systems.}
}
@article{kulskeIsingModelHighlights2025,
title = {The {{Ising}} Model: Highlights and Perspectives},
shorttitle = {The {{Ising}} Model},
author = {K{\"u}lske, Christof},
year = 2025,
month = aug,
journal = {Mathematical Physics, Analysis and Geometry},
volume = {28},
number = {3},
pages = {20},
issn = {1572-9656},
doi = {10.1007/s11040-025-09515-1},
urldate = {2025-11-19},
abstract = {We give a short non-technical introduction to the Ising model, and review some successes as well as challenges which have emerged from its study in probability and mathematical physics. This includes the infinite-volume theory of phase transitions, and ideas like scaling, renormalization group, universality, SLE, and random symmetry breaking in disordered systems and networks. This note is based on a talk given on 15 August 2024, as part of the Ising lecture during the 11th Bernoulli-IMS world congress, Bochum.},
langid = {english},
keywords = {60K35,82B20,82B26,Disordered systems,Extremal decomposition,Gibbs measures,Ising model,Phase transitions,Renormalization group,SLE,Spin models},
file = {/home/lars/Zotero/storage/ZR75W2W7/Külske - 2025 - The Ising model highlights and perspectives.pdf}
}
@article{metraTemperaturedependentCriticalityRandom2021,
title = {Temperature-Dependent Criticality in Random {{2D Ising}} Models},
author = {Metra, Matteo and Zorrilla, Luc and Zani, Maurizio and Puppin, Ezio and Biscari, Paolo},
year = 2021,
month = sep,
journal = {The European Physical Journal Plus},
volume = {136},
number = {9},
eprint = {2108.13725},
primaryclass = {cond-mat},
pages = {939},
issn = {2190-5444},
doi = {10.1140/epjp/s13360-021-01939-2},
urldate = {2025-11-19},
abstract = {We consider 2D random Ising ferromagnetic models, where quenched disorder is represented either by random local magnetic fields (Random Field Ising Model) or by a random distribution of interaction couplings (Random Bond Ising Model). In both cases we first perform zero- and finite-temperature Monte-Carlo simulations to determine how the critical temperature depends on the disorder parameter. We then focus on the reversal transition triggered by an external field, and study the associated Barkhausen noise. Our main result is that the critical exponents characterizing the power-law associated with the Barkhausen noise exhibit a temperature dependence in line with existing experimental observations.},
archiveprefix = {arXiv},
keywords = {Condensed Matter - Disordered Systems and Neural Networks,Condensed Matter - Statistical Mechanics},
file = {/home/lars/Zotero/storage/HFEXCMHD/Metra et al. - 2021 - Temperature-dependent criticality in random 2D Ising models.pdf;/home/lars/Zotero/storage/2TETXMJX/2108.html}
}
@misc{mullickSociophysicsModelsInspired2025,
title = {Sociophysics Models Inspired by the {{Ising}} Model},
author = {Mullick, Pratik and Sen, Parongama},
year = 2025,
month = jun,
number = {arXiv:2506.23837},
eprint = {2506.23837},
primaryclass = {physics},
publisher = {arXiv},
doi = {10.48550/arXiv.2506.23837},
urldate = {2025-11-19},
abstract = {The Ising model, originally developed for understanding magnetic phase transitions, has become a cornerstone in the study of collective phenomena across diverse disciplines. In this review, we explore how Ising and Ising-like models have been successfully adapted to sociophysical systems, where binary-state agents mimic human decisions or opinions. By focusing on key areas such as opinion dynamics, financial markets, social segregation, game theory, language evolution, and epidemic spreading, we demonstrate how the models describing these phenomena, inspired by the Ising model, capture essential features of collective behavior, including phase transitions, consensus formation, criticality, and metastability. In particular, we emphasize the role of the dynamical rules of evolution in the different models that often converge back to Ising-like universality. We end by outlining the future directions in sociphysics research, highlighting the continued relevance of the Ising model in the analysis of complex social systems.},
archiveprefix = {arXiv},
keywords = {Condensed Matter - Statistical Mechanics,Physics - Computational Physics,Physics - Physics and Society},
file = {/home/lars/Zotero/storage/FDJZV7PH/Mullick and Sen - 2025 - Sociophysics models inspired by the Ising model.pdf;/home/lars/Zotero/storage/CKDZET55/2506.html}
}
@misc{teamPandasdevPandasPandas2025,
title = {Pandas-Dev/Pandas: {{Pandas}}},
shorttitle = {Pandas-Dev/Pandas},
author = {pandas development {team}, The},
year = 2025,
month = sep,
doi = {10.5281/zenodo.17229934},
urldate = {2025-10-16},
abstract = {Pandas is a powerful data structures for data analysis, time series, and statistics.},
howpublished = {Zenodo},
keywords = {data science,python},
file = {/home/lars/Zotero/storage/QV289HHN/17229934.html}
}