필터 지우기
필터 지우기

Info

이 질문은 마감되었습니다. 편집하거나 답변을 올리려면 질문을 다시 여십시오.

Index exceeds the number of elements (1)

조회 수: 1 (최근 30일)
Advait Sinha
Advait Sinha 2019년 6월 18일
마감: MATLAB Answer Bot 2021년 8월 20일
close all;
dt = 0.01;%time step
k1=1;
m=1;%initial parameters
u1 =2;
u2 =1;
v1=2;
a1=1;
tend=10;
t=0;
i=1
while t < tend-2*dt
v1h=v1(i)-dt*k1*u1(i)-u2(i)/ (2*m);
u1(i+1)= u1(i)+ dt*v1h;
a1(i+1)= -k1*u1(i+1)/2;
v1(i+1)= v1h + dt*a1(i+1)/2;
i = i+1;
t = t + dt
end
plot(linspace(0,tend,tend/dt),u1);

답변 (1개)

Adam Danz
Adam Danz 2019년 6월 18일
편집: Adam Danz 2019년 6월 24일
On the second iteration of your while-loop, u2(i) is causing the error since you're trying to access the second element of u2 but u2 will always be u2=1 and that never changes in your code. I see you're updating u1 within the while loop but that isn't happening for u2.

이 질문은 마감되었습니다.

Community Treasure Hunt

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

Start Hunting!

Translated by