声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1100|回复: 5

[编程技巧] 哪位高手帮忙解一个方程,谢谢啊。我搞了半天没有出来。

[复制链接]
发表于 2009-5-22 13:20 | 显示全部楼层 |阅读模式

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

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

x
k=5.0e-4:1e-6:6e-4;
h=1.6e-6; n1=2.2899; n0=1.5040; n2=1.000;
p1=sqrt(k.^2.*n1.^2-b.^2); p2=sqrt(b.^2-k.^2.*n2.^2); p0=sqrt(b.^2-k.^2.*n0.^2);
y=solve('p1*h-pi-atan(p0./p1)-atan(p2./p1)=0');
出错的信息室b没有定义:
??? Undefined function or variable 'b'.

后来,我就把中间变量p0,p1,p2的表达式直接代入solve函数,但是还是出错,改后和出错原因如下:
k=5.0e-4:1e-6:6e-4;
h=1.6e-6; n1=2.2899; n0=1.5040; n2=1.000;
y=solve('(sqrt(k.^2.*n1.^2-b.^2)*h-pi-atan(sqrt(b.^2-k.^2.*n0.^2)./sqrt(k.^2.*n1.^2-b.^2))-atan(sqrt(b.^2-k.^2.*n2.^2)./sqrt(k.^2.*n1.^2-b.^2))=0');
出错提示信息:
??? Error using ==> solve
'sqrt(k.^2.*n1.^2-b.^2)*h-pi-atan(sqrt(b.^2-k.^2.*n0.^2)./sqrt(k.^2.*n1.^2-b.^2))-atan(sqrt(b.^2-k.^2.*n2.^2)./sqrt(k.^2.*n1.^2-b.^2))=0' is not a valid expression or equation.
Error in ==> E:\matlab\work\Untitled3.m
On line 6  ==> y=solve('sqrt(k.^2.*n1.^2-b.^2)*h-pi-atan(sqrt(b.^2-k.^2.*n0.^2)./sqrt(k.^2.*n1.^2-b.^2))-atan(sqrt(b.^2-k.^2.*n2.^2)./sqrt(k.^2.*n1.^2-b.^2))=0');
哪位高手能给我解释一下,谢谢。

[ 本帖最后由 ChaChing 于 2009-5-23 10:47 编辑 ]
回复
分享到:

使用道具 举报

发表于 2009-5-22 23:48 | 显示全部楼层

回复 楼主 awlfa 的帖子

Undefined function or variable
Ref  3F
常见的程序出错问题整理 (eight)
http://forum.vibunion.com/forum/thread-46001-1-1.html
 楼主| 发表于 2009-5-26 10:42 | 显示全部楼层
好的。谢谢大侠啊。
 楼主| 发表于 2009-6-1 12:31 | 显示全部楼层

哪位高手帮忙解一个方程,谢谢啊。

开始,我是想直接画图,但是老出现问题,后来我就想先接触两组数据再画图。下面是我要解的方程,我想解出来后再画图,但是还没有解出来,方程本身就出错了。哪位高手帮我看看问题出在哪里。谢谢。
k=5.0e+4:1e+3:6e+4;
h=1.6e-6;
n1=2.2899;
n0=1.5040;
n2=1.000;
y=solve('p1=sqrt(k.^2.*n1.^2-b.^2)',...
    'p2=sqrt(b.^2-k.^2.*n2.^2)','p0=sqrt(b.^2-k.^2.*n0.^2)',...
    'p1*h-pi-atan(p0./p1)-atan(p2./p1)=0');
x=subs(b);
plot(k,x);

错误提示如下:
??? Error using ==> solve
'p1=sqrt(k.^2.*n1.^2-b.^2)' is not a valid expression or equation.
Error in ==> E:\matlab\work\Untitled2.m
On line 6  ==> y=solve('p1=sqrt(k.^2.*n1.^2-b.^2)',...


solve 函数不是可以解方程的吗?
谢谢
发表于 2009-6-1 12:45 | 显示全部楼层
solve里不需要点乘,help solve
这组方程没有解析解,试试fsolve

评分

1

查看全部评分

 楼主| 发表于 2009-6-3 10:26 | 显示全部楼层
还是不行啊。哪位高手能帮忙解决下。但是有人画出来了,书上有画出来。可是我就是画不出来。它又没有答案,非常郁闷。
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

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

GMT+8, 2024-6-18 18:53 , Processed in 0.077732 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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