Không biết khai báo thiếu chỗ nào

  • Thread starter yunasaras
  • Ngày mở chủ đề
Y

yunasaras

Author
Mình đang giải phương trình vi phân bằng phương pháp runge kutta 4, mình đã tham khảo và viết các lệnh sau:

function dy=f(x,y)
dy=alpha*(1-x^2)*x/y
********************************
function y = rk4(a,b,N,ya)
h=(b-a)/N;
x=zeros(1,N+1);
y=zeros(1,N+1);
x(1)=a;
y(1)=ya;
for i = 1:N
k1=f(x(i), y(i));
k2=f(x(i)+h/2, y(i)+(k1)/2);
k3=f(x(i)+h/2, y(i)+(k2)/2);
k4=f(x(i)+h, y(i)+(k3));
y(i+1)=y(i)+(k1+2*k2+2*k3+k4)*h/6;
x(i+1)=0.5+i*h;
end
*********************************
alpha=input('nhap alpha: ');
a=input('nhap gia tri dau cua x: ');
ya=input('nhap gia tri dau cua y: ');
b=input('nhap gia tri sau cua x: ');
N=input('nhap so buoc N: ');
[x' y'];
plot(x,y, 'k')


Tới đây chạy thì nó báo không nhận được hàm x hay biến x gì đó, có ai chỉ giáo với, cảm ơn nhiều!
 
Top