p = everything.p; Error in m_file (line 72)

34 views
Skip to first unread message

sapan agrawal

unread,
Apr 11, 2019, 3:55:45 PM4/11/19
to YALMIP

Hi, I am using YALMIP with SEDUMI for region of attraction analysis for Van der Pol Oscillator system as given in Estimation of region of attraction for polynomial nonlinear systems: A numerical method.

I have formulated the constraints as:

vars = monolist(xbar,4);
lambda = sdpvar(length(vars)); // parametric variable
lambda_x = vars' * lambda * vars;
s1 = - (slack + Vdot ) - lambda_x * (rho - V);
S = [sos(lambda_x), sos(s1)];
[sol,v, Q, res] = solvesos(S)
 

Error:
YALMIP SOS module started...
-------------------------------------------------------------------------
Detected 0 parametric variables and 122 independent variables.
Detected 0 linear inequalities, 0 equality constraints and 0 LMIs.
Using kernel representation (options.sos.model=1).
Reference to non-existent field 'p'.
Error in solvesos (line 114)
p = everything.p;
Error in VdPol_yalmip (line 72)

[sol,v, Q, res] = solvesos(S)


Where am I going wrong?


Also if I declare, 

S = [ sos(lambda_x), sos(s1), lambda >= eye(length(vars)) * 1e-4];
 
I get high residual value [0 ; 1]
sol = 
yalmipversion: '20181012'
yalmiptime: 0.4348
solvertime: 0.1682
info: 'Unbounded objective function (SeDuMi-1.3)'
problem: 2

Johan Löfberg

unread,
Apr 11, 2019, 4:06:42 PM4/11/19
to YALMIP
you haven't declared the parametric variables

sapan agrawal

unread,
Apr 11, 2019, 10:05:19 PM4/11/19
to YALMIP
[sol,v, Q, res] = solvesos(S, [ ], [ ], lambda);

It works when parametric variables are passed in solvesos. Is this correct?

Johan Löfberg

unread,
Apr 12, 2019, 1:46:05 AM4/12/19
to YALMIP
yes, assuming lambda is the only parameters, that follows the syntax specified in the tutorials
Reply all
Reply to author
Forward
0 new messages