从一个循环绘图


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中得到"下标索引必须是实正整数或逻辑"的错误。

谢谢。

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

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

1) write cont=0;.

循环前

2)在循环开始处写cont=cont+1

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

相关内容

最新更新