Skip to content
/ genml Public

GenML: A Python library to generate the Mittag-Leffler correlated noise

License

Notifications You must be signed in to change notification settings

huangzih/genml

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GenML: A Python Library to Generate the Mittag-Leffler Correlated Noise

Xiang Qu, Hui Zhao, Wenjie Cai, Gongyi Wang, and Zihan Huang

School of Physics and Electronics, Hunan University, Changsha 410082, China

E-mail: huangzih@hnu.edu.cn

GenML is a Python library designed for generating Mittag-Leffler correlated noise, which is crucial for modeling a wide range of phenomena in complex systems. This document provides a brief overview of how to install and use GenML to generate M-L noise and compute its autocorrelation functions.

Documentation website: https://genml.readthedocs.io

Installation

To install GenML, simply run the following command in your Python environment:

pip install -U genml

Basic Usage

The core functionalities of GenML include generating sequences of Mittag-Leffler correlated noise and calculating their autocorrelation functions. Here's how you can get started:

Generating Mittag-Leffler Correlated Noise

To generate sequences of Mittag-Leffler correlated noise , use the mln function with the desired parameters:

import genml

# Parameters
N = 10  # Number of sequences
T = 500  # Length of each sequence
C = 1.0  # Amplitude coefficient
lamda = 0.5  # Mittag-Leffler exponent
tau = 10  # Characteristic memory time
seed = 42 # Random seed

# Generate M-L noise sequences
xi = genml.mln(N, T, C, lamda, tau, seed)

Calculating Autocorrelation Function

To calculate the autocorrelation function (ACF) values of the generated noise sequences, you can use the acf function for actual ACF values and the acft function for theoretical ACF values:

tmax = 100  # Max lag for ACF calculation
dt = 1  # Step size between lags
nc = 4  # Number of CPU cores for parallel processing

# Calculate actual ACF values
acfv = genml.acf(xi, tmax, dt, nc)

# Calculate theoretical ACF values
acftv = genml.acft(tmax, dt, C, lamda, tau)

Examples

The repository includes detailed examples illustrating the generation of Mittag-Leffler correlated noise and the calculation of its autocorrelation function. These examples demonstrate the library's capability to replicate theoretical noise properties.

About

GenML: A Python library to generate the Mittag-Leffler correlated noise

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Languages