I want to execute a code to calculate Largest Lyapunov Exponent in time series. There is a "nlinfit" function in my m-file, but the result is this error:
Error using nlinfit (line 239)
No usable observations after removing NaNs in Y and
in the result of evaluating MODELFUN at the initial
value BETA0.
Error in lyaprosen (line 377)
beta =
nlinfit(K(1:Tl),L(1:Tl),@nonlin1,[betar;randn(1,1)]);
I searched this error, but there was not any results. Can anyone help me to solve this issue?
Thanks; Peyman

4 Kommentare

the cyclist
the cyclist am 11 Feb. 2016
Are you able to post your code and a small subset of data that will allow us to generate this error for ourselves?
Yes, of course. please find the codes in the attachment. copy the files in your directory and then run this command:
[LLE lambda tau m]=lyaprosen(R,0,0);
It should calculate largest Lyapunov exponent.
Thank You.
the cyclist
the cyclist am 14 Feb. 2016
I was not able to run your code. I get the error
dist is not included in your installed products. These products offer 'dist':
Neural Network Toolbox
Error in lyaprosen (line 106)
Dmm=dist(EEMmm(:,1:k)');
I may still be able to help. If you halt your code just before the call to nlinfit [line 377 of lyaprosen], and save those variables into a *.mat file, then you could upload the file here and I could just load the variables and run the command.
Peyman Ghasemi
Peyman Ghasemi am 14 Feb. 2016
I did it. Because the workspace variables was bigger than 5 MB (They are 7.5 MB!). I upload them on my Dropbox. please download it from this link:
The "lyaprosen" was a function and I hadn't access to variables, So I modified it to a m-file and a function. please load the files in your directory, then load the variables and go to line 377 of "lyaprosen.m".
Thank you very much.

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

the cyclist
the cyclist am 15 Feb. 2016

0 Stimmen

The immediate cause of the problem with nlinfit() is that your variables K and L are empty arrays. They are empty because Tl is an empty array as well.
You can trace this back to the fact that Ldiff is all NaNs, which is due to Lm being NaN, and so on. (That's as far as I went.)
I suggest you use the debugger to diagnose the ultimate cause.

Weitere Antworten (1)

Peyman Ghasemi
Peyman Ghasemi am 26 Mai 2016
Bearbeitet: Peyman Ghasemi am 26 Mai 2016

1 Stimme

Finally I solved the problem! My signals had a low domain and they were changed to NaN in the process of the Lyapanov code! The solution is just multiplying the signal in a proper number.

1 Kommentar

Aaron Best
Aaron Best am 3 Jun. 2019
Hi Peyman,
I am running into the same error could you please go into a little more detial about how you solved this problem?

Melden Sie sich an, um zu kommentieren.

Kategorien

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by