Index exceeds array dimensions. Index value 150002 exceeds valid range [1-150001] for array 'v'.

1 次查看(过去 30 天)
I tried to run this sentence using Simulink but this error keeps popping upfor
for n = 1:length(t); % Start simulation
v(n+1) = v(n) + (g*sin(theta(n)) - k./m.*v(n)).*dt;
theta(n+1) = theta(n) - 1./L.*v(n).*dt;
end

采纳的回答

VBBV
VBBV 2022-4-14
for n = 1:length(t)-1;
Error shows clearly that vector v has 1 additional element. Change the loop as above since v(n+1) should correspond to last element in vector v. A better way is to preaalocate array as
v = zeros(1,length(t))

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Get Started with MATLAB 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by