声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 919|回复: 7

[编程技巧] 帮忙看看

[复制链接]
发表于 2007-1-18 15:58 | 显示全部楼层 |阅读模式

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

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

x
nr=44;ns=29;Lx=1.0;Ly=1.5;c=340;f=200;
k=2*pi*f/c;
for r=0:1:nr
    k(r)=r*pi/Lx;                     %求k(r,x),x坐标
    k'(r)=sqrt(k^2-k(r)^2);           %求k(r,y),y坐标
    bo(r)=cos(k(r)*x)exp(-i*k'(r)*y);
    bo'=zeros(1,nr);
    bo'(1,r)=bo(r);
end
???     k'(r)=sqrt(k^2-k(r)^2);           %求k(r,y),y坐标
          |
Error: Unbalanced or misused parentheses or brackets.

哪位大狭能告诉我这怎么回事,该怎么改吗?谢谢
回复
分享到:

使用道具 举报

发表于 2007-1-18 16:29 | 显示全部楼层
有很多常识性的错误。变量命名,变量名中可包含字母、数字、下划线,但是标点不能用。
发表于 2007-1-18 16:32 | 显示全部楼层
你这存在几个语法错误:
1. k'在Matlab中表示的是转置,建议换一个字母表示,bo'也是同样道理;
2. bo(r)=cos(k(r)*x)exp(-i*k1(r)*y) 中存在语法错误,少了*;
3. bo'(1,r)=bo(r)表示的是什么意思,
还有一些………………
总之,这段程序错误比较多,建议楼主多看看基本的知识。

评分

1

查看全部评分

发表于 2007-1-18 19:07 | 显示全部楼层

回复

请先把问题讲清楚一些.
另: x,y未定义,是要作为符号变量吗?
发表于 2007-1-18 19:49 | 显示全部楼层
大概猜了一下意思, 不知向量函数bo是否是你所求.
顺便也优化了一下程序:
%%%%%%%%%%%%%
nr=44;
ns=29;
Lx=1.0;
Ly=1.5;
c=340;
f=200;
k=2*pi*f/c;

syms x y
r=0:nr; %%%按原意, 可能应为nr-1
k1=r*pi/Lx;   
k2=sqrt(k^2-k1.^2);  
bo=cos(k1*x).*exp(-i*k2*y);
%%%%%%%%%%%%%%%%%%%%%%%%
%%%再打印向量函数的前几个分量图形看看
ezplot(bo(1))
figure
ezplot(bo(2))
figure
ezplot(bo(3)) %%%似乎越来越奇怪
%%%%%%%%%%%%%%%%%%%%%
建议还是把问题用word文档上传一下.

[ 本帖最后由 xjzuo 于 2007-1-18 19:50 编辑 ]

评分

1

查看全部评分

 楼主| 发表于 2007-1-19 10:01 | 显示全部楼层
我的意思是形成一个1行nr列的矩阵,命名为bo,但其中每个元素是由循环产生的bo(r)组成的,请教各位那该怎么改?
发表于 2007-1-19 11:12 | 显示全部楼层
请看仔细看5楼贴,已经完全按照你的意思写了,只不过用向量代替了循环。
 楼主| 发表于 2007-1-19 12:17 | 显示全部楼层
谢谢,特别感谢五楼的xizuo,新手有什么不会的还请多指教
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

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

GMT+8, 2024-11-19 14:37 , Processed in 0.066040 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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