Error: Matrix dimensions must agree

1 回表示 (過去 30 日間)
Jose Cruz
Jose Cruz 2019 年 9 月 21 日
コメント済み: Jose Cruz 2019 年 9 月 21 日
I need to multiply the Diff () = dVdt [1369 x 1] with V [1370 x 1] equation. How can I add to the lenght of dVdt? I need to add three terms together and their Matrix Dimeions must match. See error below:
Matrix dimensions must agree.
Error in homework_1_P2 (line 40)
Inertia = (1.1*Mv*(dVdt).*V)./1000; % kW
load CYC_FUDS.mat
t = cyc_mph(:,1); % Time [s]
Vmph = cyc_mph(:,2); % Velocity [mph]
V = Vmph.*(1609/3600); % Velocity [m/s]
dVdt = (diff(V)./diff(t)); % Accel. m/s^2
% Aerodynamic = (0.5*pa*Cd*Af*V.^3)./1000; % kW
% Rolling = ((Cr*Mv*g*cos(Xa)).*V)./1000; % kW
Inertia = (1.1*Mv*(dVdt).*V)./1000; % kW
% Pw = (Aerodynamic+Rolling+Inertia); % kW

採用された回答

James Tursa
James Tursa 2019 年 9 月 21 日
編集済み: James Tursa 2019 年 9 月 21 日
You could use V(2:end) or V(1:end-1) instead of V in that line. Or maybe average the two.
  5 件のコメント
Walter Roberson
Walter Roberson 2019 年 9 月 21 日
There are two versions of gradient(). One of them works with symbolic functions or symbolic expressions; the other works with numeric matrices.
Jose Cruz
Jose Cruz 2019 年 9 月 21 日
Thank you! I'll have to try with the gradient and see how it compares to using V(1:end-1).

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeSparse Matrices についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by