The RADSEL function automates the selection of an optimal radius parameter for estimating nonlinear measures from finite-length temporal signals. It leverages the Kernel Density Estimator (KDE) framework to improve the precision of measures such as the correlation dimension and Kolmogorov-Sinai entropy. This function is particularly useful for analyzing signals generated by nonlinear systems and experimental electroencephalographic time series.
If you use RADSEL in your research or academic work, please cite the following paper:
Johan Medrano, Abderrahmane Kheddar, Annick Lesne, Sofiane Ramdani;
"Radius selection using kernel density estimation for the computation of nonlinear measures."
Chaos, 1 August 2021; 31 (8): 083131.
DOI: 10.1063/5.0055797
Direct Link: https://doi.org/10.1063/5.0055797
Ensure you have MATLAB installed on your machine to use RADSEL. The function is compatible with MATLAB R2018a and later versions.
Clone this repository or download the ZIP file to get started with RADSEL:
git clone https://github.com/yourusername/RADSEL.git
Navigate to the RADSEL directory in MATLAB to access the function.
To use RADSEL, load your data into MATLAB and call the function with your data matrix as the input. The function syntax is as follows:
radius = RADSEL(X, P, D, N, STD, IQR)
X
: Input data matrix (samples x dimensions).P
(optional): Norm order (default is 2, Euclidean distance).D
(optional): Number of dimensions to consider (default is all columns inX
).N
(optional): Number of samples to consider (default is all rows inX
).STD
(optional): Standard deviation of the input data (default is calculated fromX
).IQR
(optional): Interquartile range of the input data (default is calculated fromX
).
Load your data and call RADSEL:
load('yourData.mat'); % Replace 'yourData.mat' with your data file
optimalRadius = RADSEL(data);
disp(['Optimal Radius: ', num2str(optimalRadius)]);
This project is licensed under the MIT License - see the LICENSE.md file for details.