24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1005  |  回复: 5

那年⑧月

铁虫 (小有名气)

[求助] 求助一个简单的matlab编程画图题已有1人参与

要画出T=515-315erf(1/(2*sqrt(0.000000767*t)))的图像
为什么总是提示   y=1/x ,这种错误?  求解释

t=0:0.01:5;
T=515-315erf(1/(2*sqrt(0.00000767*t)))
axis ([0 5 0 500])
plot(t,T)

为什么这样就不行?  为什么?》????

求助一个简单的matlab编程画图题
w692h2841201_1418004411_264.png
回复此楼

» 猜你喜欢

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

别拦我,我要找圆脸萌妹子。。。 [人总是要有理想,万一找到了呢]
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

月只蓝

主管区长 (职业作家)

【答案】应助回帖

感谢参与,应助指数 +1
clear all;clc
t=0:0.01:5;
T=515-315*erf(t./(2*sqrt(0.00000767*t)));
axis ([0 5 0 500]),plot(t,T)

1. 315erf[...] 在数学表达中可以省去乘号,在MATLAB中,乘号“*”不能省略;
2. t已经被定义为数组,T中对t的乘 除 幂运算得加“.”
MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
2楼2015-03-10 18:32:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

月只蓝

主管区长 (职业作家)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
那年⑧月: 金币+30, ★★★★★最佳答案 2015-03-11 10:39:12
楼主给出的 t=0:0.01:5;
在左端点0处,T的计算会出现0/0的情况
此外,t按0.01间隔取值,使得t/(2*sqrt(0.00000767*t))最小都为18左右,erf(18)已经=1,对于其他t取值,t/(2*sqrt(0.00000767*t))比18更大,erf()运算肯定都=1,这样,对于所有 t=0.01:0.01:5,T的计算值都=515-315*1=200,使得画图没意义。
为了显示出t和T之间的关系,t的取值间隔和右端点不能太大。
CODE:
clear all;clc
t=0:1e-6:5e-4;
T=515-315*erf(t./(2*sqrt(0.00000767*t)));
figure(1),plot(t,T),axis ([min(t)-0.1*mean(t) max(t) 0 500]);

MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
3楼2015-03-10 18:49:34
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

那年⑧月

铁虫 (小有名气)

引用回帖:
3楼: Originally posted by 月只蓝 at 2015-03-10 18:49:34
楼主给出的 t=0:0.01:5;
在左端点0处,T的计算会出现0/0的情况
此外,t按0.01间隔取值,使得t/(2*sqrt(0.00000767*t))最小都为18左右,erf(18)已经=1,对于其他t取值,t/(2*sqrt(0.00000767*t))比18更大,erf()运 ...

版主真乃神人也   这个题困扰了我很久 发了好几个帖子也没人理  自己在我要自学网上学又没这部分 在这关键时刻 幸得相助 无以为报 要不把我1/3的金币送给你把   虽然对你来说不值一提  可也是一片心意啊

后来我又研究了一下  是我自己犯了一个致命的错误,0.001/(2*sqrt(0.00000767*t))  分子是0.001,不是1,是我单位搞错了,还是版主对取值范围的分析提醒了我  我还纳闷怎么画出来一直都是200呢
clear all;clc
t=0:0.01::15;
T=515-315*erf(0.001./(2*sqrt(0.00000767*t)));
plot(t,T)
axis ([0 15 100 700])
set(gac,'xtick',[0:1:15])

完美画出~~~
再次感谢  以后再碰到不会的  还能向版主大人请教吗?
别拦我,我要找圆脸萌妹子。。。 [人总是要有理想,万一找到了呢]
4楼2015-03-11 10:38:17
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

那年⑧月

铁虫 (小有名气)

引用回帖:
2楼: Originally posted by 月只蓝 at 2015-03-10 18:32:47
clear all;clc
t=0:0.01:5;
T=515-315*erf(t./(2*sqrt(0.00000767*t)));
axis (),plot(t,T)

1. 315erf 在数学表达中可以省去乘号,在MATLAB中,乘号“*”不能省略;
2. t已经被定义为数组,T中对t的乘 除 幂 ...

恩  没法多给金币  就送你20多小红花吧  
别拦我,我要找圆脸萌妹子。。。 [人总是要有理想,万一找到了呢]
5楼2015-03-11 10:45:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

月只蓝

主管区长 (职业作家)

引用回帖:
4楼: Originally posted by 那年⑧月 at 2015-03-11 10:38:17
版主真乃神人也   这个题困扰了我很久 发了好几个帖子也没人理  自己在我要自学网上学又没这部分 在这关键时刻 幸得相助 无以为报 要不把我1/3的金币送给你把   虽然对你来说不值一提  可也是一片心意啊

后来 ...

不必客气,有问题一起讨论、一起学习吧。
MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
6楼2015-03-11 11:40:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 那年⑧月 的主题更新
信息提示
请填处理意见