Info

この質問は閉じられています。 編集または回答するには再度開いてください。

Error in first line, looks fine though

1 回表示 (過去 30 日間)
Jeremy Carlisle
Jeremy Carlisle 2020 年 6 月 1 日
閉鎖済み: MATLAB Answer Bot 2021 年 8 月 20 日
I'm trying to obtain the commented out varibales (matrix B) but I get an error in the first line
"Error in example_112 (line 1)
A = [ 1 0 1 0 0 0 ; 0 1 0 1 0 0 ; -r122 r121 -r322 r321 0 1 ; 0 0 -1 0 1 0 ; 0 0 0 -1 u 0 ; 0 0 r232 -r231
(u*r131-r132) 0 ]; "
I'm not sure if it has something to do with the second last variable but it doesn't want to run.
A = [ 1 0 1 0 0 0 ; 0 1 0 1 0 0 ; -r122 r121 -r322 r321 0 1 ; 0 0 -1 0 1 0 ; 0 0 0 -1 u 0 ; 0 0 r232 -r231 (u*r131-r132) 0 ];
%[B = [ f121 ; f122 ; f321 ; f322 ; f131 ; T12];
C = [ m2*ag21 ; m2*ag22 ; ig2*aa2 ; m3*ag31 -fp1 ; m3*ag32 -fp2 ; ig3*aa3 -rp1*fp2 +rp2*fp1 ];
r12 = 3;
r32 = 2.83;
r23 = 9;
r13 = 10.72;
rp = 2.7;
r121 = r12*cosd(270);
r122 = r12*sind(270);
r322 = r32*cosd(28);
r321 = r32*sind(28);
r231 = r23*cosd(324.5);
r232 = r23*sind(324.5);
r131 = r13*cosd(63.14);
r132 = r13*sind(63.14);
rp1 = rp*cosd(201);
rp2 = rp*sind(201);
fp = 50;
%{
f121 ;
f122 ;
f321 ;
f322 ;
f131 ;
%}
fp1 = fp*cosd(-45);
fp2 = fp*sind(-45);
ag2 = 2700.17;
ag3 = 3453.35;
ag21 = ag2*cosd(-89.4);
ag22 = ag2*sind(-89.4);
ag31 = ag3*cosd(254.4);
ag32 = ag3*sind(254.4);
aa2 = -10;
aa3 = -136.16;
ig3 = 0.1;
u = 0.2;
m2 = 2/386;
m3 = 4/386;
%[ T12 ;
Y = inv(a);
B = Y*C;
  1 件のコメント
Mohammad Sami
Mohammad Sami 2020 年 6 月 1 日
Your code only defines the values for rXXX and u after you have tried to use them to create matrix A.
Your matrix A definition require the variable rXXX and u to be defined first.

回答 (1 件)

Dinesh Yadav
Dinesh Yadav 2020 年 6 月 3 日
On top of what Mohammad Sami said, after moving the matrix A and B just above second last line of your code so all variable definitions are available for your matrices, still definition of ig2 variable is missing in matrix C. Kindly check again that you have defined all the variable you need before you use them. Second there are spaces in matrix C such as 'm3*ag31 -fp1' these will be treated as 2 different entities (i.e 2 columns) and you will again get error related to dimensions not being consistent. After removing unnecessary spaces, the third error will be due to "Y=inv(a)" as it should be "Y=inv(A)". After that the code runs without error.

Community Treasure Hunt

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

Start Hunting!

Translated by