Why do I get undefined variable error in the attached code?

<<
>>
What's wrong with my code? I can't figure it out, I'm a beginner. Please help.
See screenshots attached. I'm trying to plot and show that the system is non linear.
The error says "undefined Cw1"

3 commentaires

here Cw1 and Cw2 are not in input data within the function, then how you assigned x(1)=Cw1.. ..so on, So either you have to consider Cw1, Cw2 as input during function call or it should be defined before assigned as x(1)=Cw1.
Did you mean to say this?
Cw1 = x(1);
Cw2 = x(2);
Otherwise, no inputs will affect the output xdot.
In future, paste actual code text, not figure. That way folks can edit directly rather than having to type everything from scratch.

Connectez-vous pour commenter.

Réponses (1)

dpb
dpb le 9 Sep 2017
Modifié(e) : dpb le 9 Sep 2017
As another wrote, looks like you transposed the LH and RH sides of the assignment of input argument x to local variables. Why not use the named variable dummy argument array internally as the local variable and Matlab array syntax as well?
function Cwdot=NonLin(t,Cw)
Cwi=1;
k=1.5;
F=100;
V=[400; 2000];
Cw=Cw(:); % ensure column vector
Cwdot=F./V.*(Cwi-Cw)-k*Cw.^2;
end

Modifié(e) :

dpb
le 9 Sep 2017

Community Treasure Hunt

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

Start Hunting!

Translated by