声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 685|回复: 1

[编程技巧] 这个程序为何不通啊?

[复制链接]
发表于 2008-6-24 15:35 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
我做了一个程序,在调用子程序时老是出错,这个子程序我在其他的程序里调用,只是形式有些变化,总是不通,不知为何,请高手指点:
主程序:function [I1zxiao]=int1xiao(alpha,beta)

EM=0;
m=3;
for ii=1:8
    p=ii-1;
    EM1=((-1)^p+(-1)^(m+p))*(alpha)^(2*p)/(((m+2*p+1)*factorial(2*p)*2^(2*p)));
    FM=0;
    for jj=1:ii
        k=jj-1;
        Jmk1=shuzhijifen(2*p-2*k,beta);
        Jmk2=shuzhijifen(-2*k+2*p,beta);
        Jmk3=shuzhijifen(0,beta);
        JM=Jmk1+Jmk2-(factorial(2*p)/(factorial(p)^2))*Jmk3;
        FM1=(-1)^(p-k)*factorial(2*p)/(factorial(k)*factorial(2*p-k))*JM;
        FM=FM+FM1;
    end
    EM=EM+EM1*FM
end

子程序:
function y=shuzhijifen(n,k)
function f=f(y)
f=((i)^n/pi)*exp(i*k*cos(y)*cos(k*y));
end
y=quadl(@f,0,pi);
end
下面是报的错误信息:
??? Error using ==> mtimes
Inner matrix dimensions must agree.

Error in ==> shuzhijifen>f at 5
f=((i)^n/pi)*exp(i*k*cos(y)*cos(k*y));

Error in ==> quadl at 64
y = feval(f,x,varargin{:}); y = y(:).';

Error in ==> shuzhijifen at 7
y=quadl(@f,0,pi);

Error in ==> int1xiao at 19
        Jmk1=shuzhijifen(2*p-2*k,beta);
谢谢了!
回复
分享到:

使用道具 举报

发表于 2008-6-24 16:02 | 显示全部楼层
注意*和.*的区别

评分

1

查看全部评分

您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-10-2 03:33 , Processed in 0.051632 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表