Error: variable might be used before it is defined.

回答(2 个)

Ruchika
Ruchika 2023-8-11
移动:Image Analyst 2023-8-11
The error message "variable might be used before it is defined" typically occurs when you're trying to use a variable before it has been assigned a value or initialized. This error can often be resolved by ensuring that you define or initialize your variables properly before using them in your MATLAB code. In this code, 'yy3' has been used to initialise 'yy2' before being initialised itself. You want to have an initial value for 'yy3' before using it to resolve this error.
Change this line
yy2 = Pr*(y(4)*y(2)-y(1)*y(5)-Df*yy3-Nb*y(5)*y(7)-Nt*y(5)^2)
to
yy2 = Pr*(y(4)*y(2)-y(1)*y(5)-Df*y(3)-Nb*y(5)*y(7)-Nt*y(5)^2)
% ^^

6 个评论

yy3 has been used even before its defined a finite value. Matlab doesnt recognize any undefined variables in a program and throws error as soon as code attempts to call that variable,
@VBBV yy3 cannot be replaced by y(3), they are totally different.
Then give yy3 a value before you use it in that line of code.
Insert the expression for yy2 in the equation for yy3. Then this equation will only depend on yy3 and you can solve for it.
@Torsten I tried it and get this error
Error using bvparguments (line 108)
Error in calling BVP5C(ODEFUN,BCFUN,SOLINIT):
The derivative function ODEFUN should return a column vector of length 8.
Error in bvp5c (line 137)
bvparguments(solver_name,ode,bc,solinit,options);
Error in SAD_Sol_bvp4c (line 17)
sol = bvp5c(@bvp2D, @bc2D, sol1);
If you have an initial vector of length 8, you must return a dydt vector of length 8.

请先登录,再进行评论。

类别

帮助中心File Exchange 中查找有关 Argument Definitions 的更多信息

产品

版本

R2018a

标签

提问:

2023-8-11

评论:

2023-8-11

Community Treasure Hunt

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

Start Hunting!

Translated by