When using ode45, have Error using odeget Unrecognized property name 'NonNegative'. See ODESET for possibilities.
27 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Ying Liu
el 11 de Abr. de 2023
Comentada: Simon Neuroscience
el 20 de Jun. de 2023
I was using ode45 with 'options' defined as:
options = odeset('RelTol',1e-10,'AbsTol',1e-10);
[t1,y1] = ode45(@(t,y)disc_dy(t,y,delta,g,C,N,F,H),tspan,y0,options);
When tried to run the code above, errors pop up as follows:
Error using odeget
Unrecognized property name 'NonNegative'. See ODESET for possibilities.
Error in ode45 (line 158)
idxNonNegative = odeget(options,'NonNegative',[]);
Error in simulation (line 122)
[~,y1] = ode45(@(t,y)disc_dy(t,y,delta,g,C,N,F,H),tspan,y0,options);
These codes worked well in ver. 2021b. Recently, I upgraded my MATLAB from R2021b to R2023a. And it seems strange since I didn't define 'NonNegative' in my options. Would the upgrade be the reason why I can't run them? Thanks a lot in advance.
4 comentarios
Walter Roberson
el 11 de Abr. de 2023
Editada: Walter Roberson
el 11 de Abr. de 2023
Could you verify that you have the Optimization Toolbox installed and licensed?
Also what shows up for
which -all odeset
Respuesta aceptada
Walter Roberson
el 11 de Abr. de 2023
You can use pathtool() to move MatCont7p3 further down in your path.
This is likely to interfere with running part of MatCont7p3.. but perhaps you would be okay.
22 comentarios
Steven Lord
el 23 de Mayo de 2023
Is there a reason you need to have your own version of odeget.m rather than using the one included with MATLAB? Could the solution be to delete the odeget.m in the Continuer directory rather than updating it? Having your own copy that shadows the one in MATLAB means that you're likely going to have this type of conflict whenever we update the odeget function in MATLAB and that you would have to update it to get any benefit of bug fixes or improvements to the function in MATLAB.
Bowen
el 23 de Mayo de 2023
I deleted the odeset.m in subfile of Matcont. But it reported a bug when I run a demo model. I have no idea of how to fix. Probabaly, I do not find the right solution.
Más respuestas (1)
Simon Neuroscience
el 19 de Jun. de 2023
I have the same error: Unrecognized property name 'NonNegative'. See ODESET for possibilities.
I am trying to use matcont on mac on R2023a Version of Matlab. Already installed Xcode.
The GUI opens normal, but everytime I am trying to Compute a ODE System it gets the error.
If I run which -all odeset I also get 2 path:
1) Code/Matlab/MatCont7p4/Continuer/odeset.m
2) /Applications/MATLAB_R2023a.app/toolbox/matlab/funfun/odeset.m
Does anybody know how to fix this problem?
2 comentarios
Hil Meijer
el 20 de Jun. de 2023
As I wrote above (as MatCont developer!), and probably the culprit of this problem, here is a quick fix: In the file MatCont7p3/Continuer/odeget.m, you can add a line (say at line 63, keeping alphabetical order) with the entry:
'NonNegative '
After that, on my machines, simulations again work.
Simon Neuroscience
el 20 de Jun. de 2023
Thank you Hil Meijer, this seems to fix the problem!
Now Matcont works perfectly!
Great to get advice from a MatCont developer.
Ver también
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!