*Matrix dimensions must agree error*

1 Ansicht (letzte 30 Tage)
Adriaan Breytenbach
Adriaan Breytenbach am 23 Nov. 2020
Kommentiert: Alan Stevens am 23 Nov. 2020
I am relatively new to Matlab and is working on a problem but keep getting this error. Please help! I attached the matlab file, but is also posting a screenshot.

Akzeptierte Antwort

Alan Stevens
Alan Stevens am 23 Nov. 2020
Look up .* (i.e. dot*), ./ and .^ for element by element actions. Replace the later part of your code by
x=linspace(0.5,1);
Vx=V1*cos(x);
Vy=V1*sin(x);
%===========
%Calculations
%===========
y1=(L4./(V1*cos(x))); % ./ not just /
y2=((-g/2)*(L4./(V1*cos(x)).^2)+V1*sin(x).*(L4./(V1*cos(x)))+L3); % ./, .^ and .* y2?
y3=Vb*(L4./(V1*cos(x)))+L1; % ./
plot(x,y1,x,y2,x,y3),grid
xlabel('x'),ylabel('y')
legend('y1','y2','y3')

Weitere Antworten (1)

Mohamad
Mohamad am 23 Nov. 2020
Hi , I made the required corrections in the code , now it is working , I also plot y1 and y3 .
%==============================
% Computer based assigment - dynamics
%==============================
% Question 1
%Given
L1=14;
L2=25;
L3=2;
L4=100;
Vb=6;
V1=40;
g=9.81;
x=linspace(0.5,1);
Vx=V1*cos(x);
Vy=V1*sin(x);
%===========
%Calculations
%===========
y1=(L4./(V1*cos(x)));
y3=(-0.5*g*(L4./(Vx).^2)+Vy.*(L4./(Vx))+L3);
y3=Vb*(L4./(Vx))+L1;
subplot(211) ; plot(x,y1) ; grid
subplot(212) ; plot(x,y3) ; grid
  1 Kommentar
Alan Stevens
Alan Stevens am 23 Nov. 2020
Note that you have two expressions for y3.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu 2-D and 3-D Plots finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by