Skip to content
This repository was archived by the owner on Jul 27, 2026. It is now read-only.

Repository files navigation

Deviations from spectral Dirac comb due to semiperiodic pulses

Code to generate, plot and fit data used in the paper "Deviations from spectral Dirac comb due to semiperiodic pulses",

doi 10.1103/ps5v-1ph3

arXiv 2106.15904

DOI

Reproducing the environment

To set up the environment to reproduce the figures, clone the repo to your local machine, then install the project and its dependencies with poetry:

git clone https://github.com/uit-cosmo/cosmoplots.git
cd cosmoplots
poetry install

Description of figure generation

The top-level scripts may be run without any extra preparation.

Time series, power spectral density and conditional averaging of the Rayleigh Bénard data. create_figure.py may be run directly. See the section below for simulation details.

Generates figures 8 and 9 in the manuscript.

Power spectral density and autocorrelation of the stochastic process with exponentially distributed amplitudes and Gamma distributed waiting times.

Generates figure 1 in the manuscript.

Power spectral density and autocorrelation of the stochastic process with asymmetrically Laplace distributed amplitudes.

Generates figure 2 in the manuscript.

Power spectral density and autocorrelation of the stochastic process with periodic arrivals with Gaussian jitter.

Generates figure 3 in the manuscript.

Power spectral density and autocorrelation of the stochastic process with Gaussian waiting times.

Generates figure 4 in the manuscript.

Compares the parts due to renewal waiting times in several different cases.

Comparison of PSD for normal, Gamma and inverse gamma waiting times.

Run gen_gammainv_cf.py and gen_norm_wait_num_psd.py first, then create_figure_compare_wait.py.

Generates figure 5 in the manuscript.

Comparison of PSD for correlated waiting times driven by fractional Gaussian noise.

Run gen_fGn_wait_num_psd.py first, then create_figure_fGn_wait.py.

Generates figure 6 in the manuscript.

Compares the parts due to jittered waiting times in the PSD for normal jitter times using the analytic and numeric solutions.

Run gen_norm_jitter_num_psd.py first, then create_figure.py.

Generates figure 7 in the manuscript.

Generating Rayleigh-Bénard data

Raw data of $\mathcal{E}$

The raw data of the energy integral $\mathcal{E}$ and the according time values are available in RB_data. The values 1e-4 and 1.6e-3 refer to the diffusivity $\kappa$ and viscosity $\mu$.

Run Rayleigh-Benard model in BOUT++

If you prefer to run the RB-model from scratch in BOUT++ you find all necessary files in BOUT_files. The PhysicsModel is defined in rb-model.cxx and the simulation inputs, such as $\kappa$ and $\mu$, are defined in BOUT.inp. The data shown in the paper is created with BOUT++ version 4.4.0. Check the BOUT++ manual for instructions for to install BOUT++ and run a custom PhysicsModel: https://bout-dev.readthedocs.io/en/stable/

You can calculate $\mathcal{E}$ from the simulation output using the calculate_E.py script. For this, install the xbout package (https://github.com/boutproject/xBOUT) and adjust the path to the BOUT++ output data in line 4.

About

Collection of scripts generating data and figures of manuscript "Deviations from spectral Dirac comb due to semiperiodic pulses"

Resources

Stars

1 star

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors

Languages