Array indices must be positive or logical values
2 views (last 30 days)
Show older comments
I am trying to conduct Implicit Midpoint and I am getting stuck. Why does this error appear? It is also coming up for my Adams-Bashforth.
clc
clear
close all
f= @(x,y)(-50*(y-cos(x)));
N = 100;
T = 1;
y0 = 0;
h = T/N;
x= (0:h:1);
y = zeros(N+1,1);
y(1) = y0;
for i = 1:N
j = i+0.5
y(i+1) = y(i) + h*f(x(j), y(j));
end
0 Comments
Answers (1)
Steven Lord
on 27 Feb 2021
for i = 1:N
j = i+0.5
y(i+1) = y(i) + h*f(x(j), y(j));
end
There's no such thing as the 1.5th element of either x or y in MATLAB, which is what you're trying to use as inputs to f on the third line of this code segment. Numeric indices must be real positive finite integer values.
0 Comments
See Also
Categories
Find more on Entering Commands in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!