Mystery Error; same code runs fine the 2nd time, but not the 1st!

20 ビュー (過去 30 日間)
Sree 2019 年 6 月 21 日
コメント済み: Sree 2019 年 6 月 24 日
The 1st run produces this error: "Unable to perform assignment because the left and right sides have a different number of elements." The same exact identical code, works fine the 2nd time around. What gives? Installation issues? Cache problems?
MATLAB Version: (R2019a) Update 1
  4 件のコメント
Jan 2019 年 6 月 24 日
It would be useful, if you post the error message. I guess "the main code" is "Euler_Main_All.m".



Jan 2019 年 6 月 21 日
Without seeing the relevant part of the code, answering is based on guessing.
I guess, that your code is a script and not a function. Inside the script some variables are defined at the first run such that the second run can use them.
Neither "installation issues" nor "cache problems" are standing to reason. Most likely this is a simple programming error. You can use the debugger to test this. Another approach is to convert the script into a function, and check, if the problem occurs every time. Then you know that the data shared with previous runs is the source of the different behaviour.
  4 件のコメント
Sree 2019 年 6 月 24 日
Thanks. (Dennis nailed it.) The code works now, after removing global variables, and defining lambda properly. Inputs are still retained; quite useful when you are asking others to run your code (without their having to edit the code); their inputs will be logged in the diary file. (Had I sent you my diary file along with the codes, debugging would've been easier.) "Nuke" clear/clc/ close commands are kept as well for similar reasons. "Cargo cult programming?" Hmm! Thanks just the same.
P.S. That "global variable" habit is vestigial, from decades of Fortran coding. But I get it; don't use them in Matlab.


その他の回答 (0 件)


Community Treasure Hunt

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

Start Hunting!

Translated by