Quantum Geometric Tensor and Berry Curvature Visualization and Sample MonteCarlo Simulation of Biopolymer
This project computes and visualizes the quantum geometric tensor for a simple moiré superlattice model. The quantum geometric tensor includes the quantum metric and Berry curvature, which are essential in understanding geometric and topological properties of electronic wavefunctions in condensed matter physics.
The script calculates the quantum geometric tensor components (g_xx, g_yy, g_xy) and the Berry curvature over a grid of momentum space values (kx, ky). It then visualizes these components as color maps using matplotlib.
-
Define the Hamiltonian:
- The model considers a 2x2 Hamiltonian matrix parameterized by kx, ky and potential V.
-
Compute the Quantum Geometric Tensor:
- The eigenvalues and eigenvectors of the Hamiltonian are obtained.
- The ground state wavefunction is numerically differentiated to estimate derivatives.
- Using these derivatives, the quantum metric tensor and Berry curvature are computed.
-
Visualization:
- The computed tensor components are plotted over the momentum space grid.
- A
matplotlibheatmap is generated for each component.
Ensure you have the following Python libraries installed:
pip install numpy matplotlibRun the script using Python:
python quantum_geometry.pyThis will generate and display the visualizations.
The script will display four heatmaps corresponding to:
- g_xx - Quantum metric tensor component (xx direction)
- g_yy - Quantum metric tensor component (yy direction)
- g_xy - Off-diagonal component of the quantum metric tensor
- Berry Curvature - Topological property of the wavefunction
Each heatmap will be color-coded and labeled accordingly.
- Studying the geometry of electronic wavefunctions in moiré superlattices.
- Analyzing topological properties of condensed matter systems.
- Exploring Berry curvature effects in quantum Hall systems.
Overview
The Biopolymer Monte Carlo Simulation models the behavior of polymer chains by randomly perturbing monomer positions and accepting changes based on the Metropolis criterion.
Implements random-walk initialization of polymer chains.
Uses a Lennard-Jones-like potential for energy calculations.
Employs the Metropolis algorithm for system evolution.
from biopolymer_monte_carlo import BiopolymerMonteCarlo
num_monomers = 50
num_steps = 10000
temperature = 1.0
sim = BiopolymerMonteCarlo(num_monomers, num_steps)
sim.run_simulation(temperature)
sim.plot_results()The simulation produces:
Energy vs. Monte Carlo Steps: Tracks energy fluctuations over time.
Final Polymer Configuration: 3D visualization of polymer structure.
Janak Sitaula