中易网

matlab中函数绘图问题

答案:2  悬赏:0  
解决时间 2021-02-18 17:36
程序如下:
>> t=0:1:100;
>> y=t;
>> x=0;
>> for i=1:length(t)
if t(i)<6
x=exp(-0.79794*t.^0.95524+0.9929*t.^0.74404);
else
x=1.319909*exp(-0.15504*t);
end
if x<0.2
y(i)=1/[(1.7*x+0.66)*(471.016*x.^3-135.469*x.^2-0.331*x+2.777)];
else
y(i)=1/(1.075-0.075*x);
end
plot(t,y)
end
为什么会出错呢?还有如何把这个变成一个function,让我输入t值,就可以得到y值?
最佳答案
程序改为如下就可以了。
t=0:1:100;
y=t;
x=0;
for i=1:length(t)
if t(i)<6
x=exp(-0.79794*t(i).^0.95524+0.9929*t(i).^0.74404); %此处有改动
else
x=1.319909*exp(-0.15504*t(i)); %此处有改动
end
if x<0.2
y(i)=1/[(1.7*x+0.66)*(471.016*x.^3-135.469*x.^2-0.331*x+2.777)];
else
y(i)=1/(1.075-0.075*x);
end
plot(t,y)
end

改为函数需要这样做。

1.建立一个新m文件,命名为myfunction.m,输入
function y=myfunction(t)
y=t;

x=0;
for i=1:length(t)
if t(i)<6
x=exp(-0.79794*t(i).^0.95524+0.9929*t(i).^0.74404); %此处有改动
else
x=1.319909*exp(-0.15504*t(i)); %此处有改动
end
if x<0.2
y(i)=1/[(1.7*x+0.66)*(471.016*x.^3-135.469*x.^2-0.331*x+2.777)];
else
y(i)=1/(1.075-0.075*x);
end
plot(t,y)
end
2.再建立一个新m文件,命名为main.m,与上面的m文件放在同一个文件夹内。输入
t=0:1:100;
myfunction(t);
3.保存运行。
祝好。
全部回答
出现这个问题的直接原因:本来用plot命令绘制曲线,把句柄保存在变量p中,但while循环体内有一句 p = pdata(j)把变量p的值给覆盖了,当然就会出现无效句柄(invalid handle object)的错误了。   另外,有点不明白,你在最前面声明那么多全局变量干什么?
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
春晓的作者是什么朝代
惠尔宾馆怎么去啊,有知道地址的么
有一首歌都是很多歌的一句词连起来的叫什么
如果记忆如钢铁般坚固,我该微笑还是哭泣?如
南山下地址在哪,我要去那里办事
成语谜语:兰花生谷里,松柏立岩中
最新研究发现,为什么谈恋爱就变傻女人
能查到IP地址吗
lol怎么可以发字所有人字
杭城百货地址在什么地方,想过去办事
汇丽国际怎么样:这个楼盘其实不太好
稀有碱基的作用
爱乐生血压计好用吗
Z92次上海到西安16号列车票是哪个火车站?上
有首歌的歌词是未曾离去粤语的
推荐资讯
拿别人的数据线充电,充的好快,这样对手机不
关于曹操的作文
砗磲有升值潜力吗?
停车场(通文街)怎么去啊,我要去那办事
ACI心理咨询师的报考要求高不高?
临沂金锣火腿肠厂还招人不
大陆学生在台湾一年考驾照,回去大陆会承认吗
四川文科489分在川内可以上哪些大学 二本
怎么参加RDPAC认证考试???哪里报名??
状元堂学校城市公园校区这个地址在什么地方,
选文以简单的理想有题有什么好处
伤心难过时吃什么药管用
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?