Witam, moim zadaniem jest napisanie odpowiedniego skryptu zawierającego funkcję która ma obliczyć wartość wektora falowego - wartość własną równania drgań swobodnych, w funkcji wykorzystuję metodę Numerov'a.
Nie rozumiem błędu, który wyrzuca mi program:
Error in ==> intgrt at 4
n=100;??? Output argument "algNum" (and maybe others) not assigned during call to
"C:\Users...".Error in ==> skrypt at 3
x=intgrt(k,phip);
Mój skrypt:
k=1;
dk=1;
x=intgrt(k,phip);
phiold=phip;
y=myfun( k,phip );
exact=4*atan(1);
Funkcja:
function eigval = myfun( k,phip )
%UNTITLED5 Summary of this function goes here
% Detailed explanation goes here
tolk=0.0001;
k=k+dk;
while (abs(dk) > tolk)
if (phip*phiold < 0)
k=k-dk;
dk=dk/2;
end
end
end
% subfunction:
function algNum = intgrt( k,phip )
%UNTITLED4 Summary of this function goes here
% Detailed explanation goes here
n=100;
m=n-1;
h=1/n;
phim=0;
phiz=0.01;
const=((k*h)^2)/12;
for l=1:m
phip=2*(1-5*const)*phiz-(1+const)*phim ;
phip=phip/(1+const);
phim=phiz;
phiz=phip;
end
return
end
Bardzo proszę o jakąkolwiek pomoc i wskazówki. Pozdrawiam