在MATLAB中随机改变三角波的斜率?

时间:2014-12-05 09:32:18

标签: matlab graphics simulink matlab-figure figure

下面的代码产生三角波:

x=0:0.1:3;
f=(mod(x,1)<=0.3).*(1-1/0.3.*mod(x,1))+(0.3<mod(x,1)).*(1/0.7.*(mod(x,1)-0.3));
plot(x,f)

wave

我需要为每个周期(1秒)改变斜率(随机0.3值)。

例如

  • 0-1 = 0.4(随机数)
  • 1-2 = 0.7(随机数)
  • .......

1 个答案:

答案 0 :(得分:1)

你可以使用rand(N,1)来获得一个N元素列向量,其中每个元素都是0到1之间的一个随机数。将N设置为你的&#34; ...表示多少值。 ....&#34;在帖子的最后。每个周期&#34;(1秒)&#34;增加一个整数计数器并使用该计数器移动随机数组。例如,如果计数器被调用&#34;计数&#34;使用rand(N,1)(count)代替&#34; 0.3&#34;。