一个关于matlab编程的问题
补充:>> clear,clf
>> x0=0;
>> xt=2;
>> Num=100;
>> h=(xt-x0)/(Num-1);
>> x=x0+[0:Num]*h;
>> a=1;
>> yt=1-exp(-a*x);
>> fun=inline('-y+1','x','y');
>> y0=0;
>> PointNum=4;
>> [x1,ye]=MyRunge_Kutta(fun,x0,xt,y0,PointNum);
??? Undefined function or method 'MyRunge_Kutta' for input arguments of
type 'inline'.
我就是想编一个,用龙格库塔法,解一个方程的问题。书上写的,调用格式的函数名是MyRunge_Kutta。但我写了,为什么显示没定义,是不是我要先编一个MyRunge_Kutta这个函数的程序?第一用matlab,不懂,希望高手来解答~~~~~~
追问:
能加个QQ815191828么,最好能语音教我下,我编了一个M文件,的这个函数的程序了,跟我提问的这个程序mat格式的,都存在一个文件夹里,是不是这样?但还是不行
qq现在登不了,.函数和主函数都是M文件
额,现在都是了,但我现在点击这个调用的函数文件,我点RUN,没反映~
左下角是不是状态是busy,如果是说明你程序可能死循环了,这样就用ctrl+C终止程序。
好了,搞定了。谢谢
答案:要编写好一个这个程序,放在跟你调用它的程序同一目录下,主函数才能调用它。 或者是将你的函数放置在你自己专门放置自己编写的函数的文件夹下,然后file-setpath..将这个文件夹的位置放进去就能直接调用了
其他:MyRunge_Kutta是自定义的函数,你要自己去实现,matlab里没有的,比如:
function [x1, ye] = MyRunge_Kutta(@fun, x0, xt, y0, num)
% to fill your code here
%...
% 最后你必须给返回参数赋值
x1 = your_value_x1;
ye = your_value_ye;
上一个:matlab编程中 for i=1:997; c=a([i],1:2) 这个语句是错的吗?
下一个:用matlab编程实现用FEC和交织编码方式的信道的传输