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

1 view (last 30 days)
Moath el dalahmeh
Moath el dalahmeh on 14 Apr 2022
Answered: VBBV on 14 Apr 2022
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

Accepted Answer

VBBV
VBBV on 14 Apr 2022
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))

More Answers (0)

Community Treasure Hunt

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

Start Hunting!

Translated by