Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2008-07-05, 09:38   #1
joseph
初级会员
 
注册日期: 2008-07-04
年龄: 42
帖子: 1
声望力: 0
joseph 正向着好的方向发展
默认 [求助]M函数调用问题

新手,在演示书上例题时,出现的问题。lambda和fseries是M文件,工作台调用两个函数过程中出现错误,请那位牛人给指正一下,不胜感激。
lambda.m
function y=lambda(x)
%y=lambda(x)generates a triangular signal.
y=(x+1).*(x>-1&x<0)+(x==0)+(-x+1).*(x>0&x<1);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%5
fseries.m
function xx=fseries(myfunfcn,a,b,n,tol,p1,p2,p3)
%Fseries 返回傅里叶序列系数
% function=在m-file中给出的函数。
% 它依赖于3个参数
% p1、p2和p3。函数是定在从a'到b'的一个周期内。
% xx=长度为n+1的傅里叶序列系数的向量,xx0,xx1,……xxn。
%p1,p2,p3=funfcn的参数。
%tol=差错级别。
j=sqrt(-1);
args=[];
for nn=1:nargin-5
args=[args,',p',int2str(nn)];
end
args=[args,')'];
t=b-a;
xx(1)=eval(['1/(',num2str(t),').*quad(myfunfcn,a,b,tol,[]',args]);
for i=1:n
newfun=['exp(-j*2*pi*x*(',int2str(i),')/(',num2str(t),')).*',myfunfcn];
xx(i+1)=eval(['1/(',num2str(t),').*quad(newfun,a,b,tol,[]',args]);
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
echo on
>> myfunction='lambda'

myfunction =

lambda

>> a=-1.3;
>> b=3.3;
>> n=24;
>> tol=0.1;
>> xx=fseries(myfunction,a,b,n,tol)
??? Error using ==> inline.subsref
Not enough inputs to inline function.

Error in ==> quad at 63
y = f(x, varargin{:});

Error in ==> fseries at 19
xx(i+1)=eval(['1/(',num2str(t),').*quad(newfun,a,b,tol,[]',args]);
joseph 当前离线   回复时引用此帖
回复


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码


相似的主题
主题 主题作者 版面 回复 最后发表
[求助]遗传算法工具箱求关键路径的问题 xueao413 MATLAB论坛 1 2008-07-11 15:30
请问这个方程可以用MATLAB解没有? thb296 MATLAB论坛 6 2008-04-28 19:02
[求助]如何把单元数组转化为一般数组 心际依然 MATLAB论坛 4 2008-04-22 12:08
【求助】如何做FFT变换? ceeshy MATLAB论坛 1 2007-12-21 11:27
【求助】产生随机数?? wpy6609 MATLAB论坛 4 2007-06-25 22:45


所有时间均为北京时间。现在的时间是 15:40


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.