matlab中的函数自变量为一个数组,结因变量却为一个数值?

在m文件里functionDt_test=Dt_test(time)Dt_test=0;%赋初值dt=81.4;fort=0:dt:time%每个周期分为100份,在总时... 在m文件里
function Dt_test=Dt_test(time)
Dt_test=0; %赋初值
dt=81.4;
for t=0:dt:time %每个周期分为100份,在总时间内
Dt_test=Dt_test+100*((t+dt)^0.25-t^0.25);
end;
在命令窗口里输入
time=0:100:40700;
Dt_test=Dt_test(time);

然后出来Dt_test就是一个数值而不是对应的数组,为什么?
展开
 我来答
xjtu09011044
2015-12-04
知道答主
回答量:5
采纳率:0%
帮助的人:4.3万
展开全部
time=0:100:40700;这条语句将time定义为一个列向量而非单元素变量,
所以在 for t=0:dt:time 这里首先出现问题,这里按照语法,time应为单元素变量,所以t会卡在
t=0,而不会继续循环下去。

其次 Dt_test=Dt_test+100*((t+dt)^0.25-t^0.25); 在for循环下,t每层循环都是在对Dt_test这个单元素进行覆盖,从而导致输出结果Dt_test为单个数值。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式