24小时热门版块排行榜    

查看: 669  |  回复: 4
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

小鱼118

银虫 (小有名气)

[求助] MATLAB程序调整

L=0.02;
z=1:1:100;
h=z-1-log(z);
R=exp((-1)*L.*(h./log(z)));
plot(z.R)

运行结果
Warning: Divide by zero.
??? Attempt to reference field of non-structure array.
求高手帮助
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

好好爱自己
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhangzhiguang

至尊木虫 (文坛精英)


dbb627: 金币+1, 谢谢应助! 2012-11-12 09:05:40
警告: 除数为零。 "R=exp((-1)*L.*(h./log(z)));"中这个z是从1开始的,matlab中的log函数实际上是我们常用的ln,而z的起始值为1,就是0,被用作除数了,需要将此点扣掉
好好学习,天天向上!
4楼2012-11-11 14:09:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 5 个回答

dbb627

荣誉版主 (著名写手)

【答案】应助回帖

★ ★ ★ ★
感谢参与,应助指数 +1
小鱼118: 金币+4, ★★★很有帮助 2012-11-09 19:24:41
高版本的matlab没问题

你的代码可以改下
L=0.02;
z=[1:1:100]+eps;
h=z-1-log(z);
R=exp((-1)*L.*(h./log(z)));
plot(z,R)
The more you learn, the more you know, the more you know, and the more you forget. The more you forget, the less you know. So why bother to learn.
2楼2012-11-09 18:59:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

【答案】应助回帖

★ ★ ★ ★
感谢参与,应助指数 +1
小鱼118: 金币+4, ★★★★★最佳答案, 谢谢 2012-11-09 19:24:51
仔细看提示,问题出在最后一句上
plot(z.R)
你用了点(.)而不是逗号(,)
那matlab以为你要存取z这个元素的一个叫R的field,所以出错了
你是要plot(z,R)吧
matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
3楼2012-11-09 19:06:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhangzhiguang

至尊木虫 (文坛精英)

而第二个问题就是三楼所说
好好学习,天天向上!
5楼2012-11-11 14:12:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见