0
for t=0:0.1:10;
VS=3*exp(-t/3).*sin(t*pi);

    if VS>0
        VL(t+1)=VS;
    else 
        VL(t+1)=0;

    end
end


plot(0:100,VL);
xlabel('Time(s)')
ylabel('Across Voltage(V)')
title('Across Voltage Vs Time') 

如何根据 VL(基于与上面所示表达式的 VS 的关系)与 t(从 0 到 10,增量 0.01)绘制此图?

总是从 matlab 得到错误“下标索引必须是真正的正整数或逻辑。”

谢谢。

4

1 回答 1

1

你的脚本有问题。请注意,t 以 0.1 的间隔定义。因此,它是一个实变量,不能用作下标索引。

解决这个问题的一种方法是

1) 写 cont=0; 在循环之前。

2) 在循环的开头写 cont=cont+1

3) 在循环内的两个地方用 VL(cont) 替换 VL(t+1)

于 2013-03-07T06:35:53.427 回答