Hello, I want to make function Runge-Kutta orde 4 with equation depend on time, but in MATLAB i get some error
1 次查看(过去 30 天)
显示 更早的评论
I want to use this equation with runge-kutta orde 4
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1388514/image.png)
function M1 =fRK4M1(M1)
%M1 =M1(j)+1./(1+exp(-T(j)));
m1 = (50*M1(j+1)*(1-(M1(j+1)/75))-2*(10^-4)*M1(j+1)*M1(j+1)-M1(j+1)*((5*10^-4).*M2(j+1))-((10-3)*(10^-4)*M1(j+1)*M3(j+1))-((100-10)*0.1*M1(j+1)*O(j+1))-((10^-3)*M1(j+1)));
M1 = dt *m1;
end
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1388519/image.png)
0 个评论
采纳的回答
Cris LaPierre
2023-5-19
You have not defined j, so in MATLAB, by default that letter is used to create complex numbers. As the error message states, your index must be positive integers.
j+1
a=1:5;
a(j+1)
2 个评论
Cris LaPierre
2023-5-20
Keep in mind that MATLAB is case sensitive. T and t are different variables.
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!