Can anyone help to see what is wrong with this function to solve a DAE problem

dx(1)=x(2);
dx(2)=k1*(x(3)-x(1))-(knl_1*x(1)+knl_3*x(1)^3);
dx(3)=x(4);
dx(4)=(-c*x(4)-k1*(x(3)-x(1))+kAmp*cos(w*t)+theta_p*x(5))/m;
dx(5)=(-theta_p*(ks/(kp+ks))*(x(4)-x(2))*R_s-x(5))/R_s/C_p;
The mass matrix
M=diag([1 0 1 1 1]);
options = odeset('mass', M, 'RelTol',1.e-6);
I am trying to solve the equations below. The y values and V values are unknown and the rest of them are constant.
But, it gave out the error
"This DAE appears to be of index greater than 1."
Can anyone help to solve the problem?
Thank you very much.

2 Kommentare

Hello ! I currently have a similar issue, did you find a way ?
I think ode15 works in some situations.
But for faster calculation, ode45 is better.

Melden Sie sich an, um zu kommentieren.

Antworten (0)

Produkte

Version

R2018b

Gefragt:

am 19 Jan. 2022

Kommentiert:

am 10 Jul. 2022

Community Treasure Hunt

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

Start Hunting!

Translated by