声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1003|回复: 5

[编程技巧] 求大家看看我的是个什么错误。

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

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

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

x
一个函数文件 是sgma_x0.m文件 下边的
function xx=sgma_x0(w,x,y,v,alf)
a=alf^2+4*w^2;
b=4*sqrt(alf^2*w^2*v/(1-v));
r=sqrt(a^2+b^2);
B=0.5*sqrt((r-a)/2);
C=0.5*(alf-sqrt((r+a)/2));
xx=-(B^2+C^2)*exp(C*y)*(B*cos(B*y)+C*sin(B*y))*cos(w*x)/(B*w^2*pi);
然后我在命令窗口

quad(@(w)sgma_x0(w,1,1,0.3,20),1,20)
出现下边的错误
??? Error using ==> mpower
Matrix must be square.

Error in ==> sgma_x0 at 2
a=alf^2+4*w^2;

Error in ==> @(w)sgma_x0(w,1,1,0.3,20)


Error in ==> quad at 63
y = f(x, varargin{:});
高手帮我看看怎么解决啊
多谢了
最好可以发到我的邮箱yanice@163.com
非常感谢

[ 本帖最后由 eight 于 2007-1-24 18:34 编辑 ]
回复
分享到:

使用道具 举报

发表于 2006-11-6 22:56 | 显示全部楼层

回复

注意function中向量的点运算,以及quad的用法.

[ 本帖最后由 xjzuo 于 2006-11-6 23:00 编辑 ]

评分

1

查看全部评分

 楼主| 发表于 2006-11-6 23:06 | 显示全部楼层

回复 #3 xjzuo 的帖子

quad地用法我觉得没错,根据matlab的help里边的写的 如果把函数换一下 就可以
另外 您说的注意function向量的点运算是什么意思?
我是蔡鸟
发表于 2006-11-7 01:21 | 显示全部楼层
3楼的意思如下:

  1. function xx=sgma_x0(w,x,y,v,alf)
  2. a=alf.^2+4*w.^2;
  3. b=4*sqrt(alf.^2.*w.^2.*v./(1-v));
  4. r=sqrt(a.^2+b.^2);
  5. B=0.5*sqrt((r-a)/2);
  6. C=0.5*(alf-sqrt((r+a)/2));
  7. xx=-(B.^2+C.^2).*exp(C.*y).*(B.*cos(B.*y)+C.*sin(B.*y)).*cos(w.*x)./(B.*w.^2.*pi);
复制代码

评分

1

查看全部评分

 楼主| 发表于 2006-11-7 09:59 | 显示全部楼层

回复 #5 多情清秋 的帖子

大哥 我爱死你了 好了谢谢您 太爱你了
多谢了 多谢啊
 楼主| 发表于 2006-11-7 10:08 | 显示全部楼层

回复 #5 多情清秋 的帖子

现在我想计算quad(@(w)sgma_x0(w,X,Y,v,alf),1,7)
其中x=1:10;
y=1:10;
[X,Y]=meshgrid(x,y);
这样ans是不是给我一个10x10的矩阵啊?
多谢
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

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

GMT+8, 2024-9-25 01:22 , Processed in 0.059806 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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