This repository contains a Monte Carlo simulation in Python to model vacuum-induced frequency drifts in cesium (NIST-F2) and Al(^+) ion clocks, along with visuals from the associated research paper "Probing Vacuum-Induced Clock Drifts via Quantum Metrology: A Testable Hypothesis" (Jansson, 2025, DOI: 10.5281/zenodo.15163879).
updated_time_sim.py
simulates frequency drifts in atomic clocks due to vacuum fluctuations, testing noise levels ((\eta = 0.1, 0.01, 0.001)) corresponding to vacuum pressures ((10^{-8}) to (10^{-12}) Pa). The script generates fractional frequency drifts ((\Delta f/f)) to explore vacuum fluctuation effects at the (10^{-18}) s scale, producing console output and a graph (Figure 3). The repository also includes additional figures from the paper: an experimental setup schematic (Figure 1) and a bar chart comparing simulated vs. real-world drifts (Figure 2).
updated_time_sim.py
: The main Python script for the Monte Carlo simulation.requirements.txt
: Lists the required Python libraries.figures/
: Contains visuals:Figure_1_Experimental_Setup_Schematic.png
: Schematic of the proposed experimental setup (from the paper).Figure_2_Simulated_vs_Real_Drift_Bar_Chart.png
: Bar chart comparing simulated and real-world drifts (from the paper).Figure_3_Cesium_vs_Ion_Graph.png
: Graph of mean drifts vs. noise levels (generated by the script).
- Python 3.6 or higher
- Required libraries (see
requirements.txt
):- numpy
- scipy
- matplotlib
- pandas
-
Clone this repository: git clone https://github.com/ChristieMJ/Clock-Drift-Sim.git cd Clock-Drift-Sim
-
Install the required libraries: pip install -r requirements.txt
-
Verify the installation: python -c import numpy, scipy, matplotlib, pandas print('All libraries installed successfully')
-
Run the script: python updated_time_sim.py
-
The script will:
- Simulate frequency drifts for cesium and ion clocks.
- Output results to the console (mean drifts, standard deviations, 95% confidence intervals).
- Save a graph (Figure 3) in the
ClockData
directory (default:C:\Users\chris\Documents\ClockData
).
The following visuals are included in the repository:
This schematic (from the paper) illustrates the proposed setup for measuring vacuum-induced frequency drifts, including an ultra-high vacuum chamber, mu-metal shielding, and a Ti:sapphire frequency comb.
This bar chart (from the paper) compares simulated fractional frequency drifts (from the script) with real-world data for cesium and ion clocks.
This graph is generated by updated_time_sim.py
, plotting mean drifts for cesium and ion clocks across noise levels.
- Output Directory: The script saves the graph to
C:\Users\chris\Documents\ClockData
by default. Modify theoutput_dir
variable inupdated_time_sim.py
to change this. - Reproducibility: The script uses a random seed (
np.random.seed(42)
) for consistent results. - .gitignore: The
ClockData
directory is excluded from version control to avoid tracking dynamically generated files. - Figures 1 and 2: These are static figures from the paper, not generated by the script, included here for context.
If you use this code or visuals in your research, please cite the associated paper: Jansson, Christie. (2025). Probing Vacuum-Induced Clock Drifts via Quantum Metrology: A Testable Hypothesis. Zenodo. https://doi.org/10.5281/zenodo.15163879
For questions or collaboration, contact Christie Jansson at christiejansson@hotmail.com.
This project is licensed under the GPU 3-0 License - see the LICENSE file for details.