Lyapunov exponent function submitted by community
8 views (last 30 days)
Show older comments
It seems this funcftion only takes Ordinary Differential Equations (ODE). I have experimental data. how can I use it with data, instead of ODE
7 Comments
Torsten
on 15 Jun 2022
Edited: Torsten
on 15 Jun 2022
@Don comment moved here:
Were gaining on it!
The function i'm interested in has been submitted by the COMMUNITY:
MathWorks FileExchange website for community implementations of Lyapunov Exponent calculations. https://www.mathworks.com/matlabcentral/fileexchange/4628-calculation-lyapunov-exponents-for-ode
However, this one apparently works with ODE
I have experimental data. I need one that works with a data file. There is one in the Predictive Maintenance Toolbox, but that costs a lot of money and I have no use for the rest of the toolbox.
is tit possible to find a community supplied function that will work with data??
Accepted Answer
Sam Chak
on 18 Jun 2022
Hi @Don
If your experimental data is not large, then you can test lyapunovExponent() here to see if it works for your case.
% Parameters
sigma = 10;
beta = 8/3;
rho = 28;
% Lorenz System
f = @(t, x) [-sigma*x(1) + sigma*x(2); ...
rho*x(1) - x(2) - x(1)*x(3); ...
-beta*x(3) + x(1)*x(2)];
tspan = linspace(0, 88, 8801);
init = [1 1 1];
[t, x] = ode45(f, tspan, init);
plot3(x(:,1), x(:,2), x(:,3)), view(45, 30)
% Characterize the rate of separation of infinitesimally close trajectories
xdata = x(:,1);
fs = 10;
dim = 3;
[~, lag] = phaseSpaceReconstruction(xdata, [], dim);
eRange = 50;
lyapunovExponent(xdata, fs, lag, dim, 'ExpansionRange', eRange)
0 Comments
More Answers (0)
See Also
Categories
Find more on Matrix Computations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!