MATLAB错误:“向量必须是相同的长度”
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MATLAB错误:“向量必须是相同的长度”相关的知识,希望对你有一定的参考价值。
我收到的错误是“向量必须长度相同”,但我不确定原因。我基本上试图绘制关于时间的分段函数。我之前使用“分段”运算符遇到了一些其他问题,所以我决定使用if语句。
figure(1);
t = linspace(0, 30, 200);
v_wind1 = linspace(0, 20, 100);
v_wind2 = linspace(20, 0, 100);
if (0 <= t < 15)
v_wind = v_wind1;
elseif (15 <= t <30)
v_wind = v_wind2;
end
plot(t, v_wind);
答案
只需连接v_wind1
和v_wind2
。
figure(1);
t = linspace(0, 30, 200);
v_wind1 = linspace(0, 20, 100);
v_wind2 = linspace(20, 0, 100);
v_wind = [v_wind1 v_wind2];
plot(t, v_wind);
这应该做的伎俩!?你想要那个结果,不是吗?
另一答案
简单地使用:索引
t = linspace(0, 30, 200);
v_wind1 = linspace(0, 20, 200);
v_wind2 = linspace(20, 0, 200);
v_wind = zeros(size(t)) ;
idx = t >= 0 & t<15 ;
v_wind(idx) = v_wind1(idx) ;
idx = t >=15 & t < 30 ;
v_wind(idx) = v_wind2(idx) ;
plot(t,v_wind)
以上是关于MATLAB错误:“向量必须是相同的长度”的主要内容,如果未能解决你的问题,请参考以下文章
在下面的代码片段中的剩余 ='passthrough' 处的代码中出现语法错误
错误代码:错误域 = NSCocoaErrorDomain 代码 = 3840“JSON 文本没有以数组或对象和允许未设置片段的选项开头。”