Matlab中的简单for循环for循环

Matlab中的简单for循环for循环,matlab,for-loop,Matlab,For Loop,我有一个for循环来计算周期时间T。 当我有一个向量,但现在我有两个向量时,这就行了 我的想法是将所有I、I1、I2和I3放入一个矩阵I,然后围绕下面的初始for循环创建一个for循环。但我似乎无法让它发挥作用。我是否有可能或者应该换一种方法 如果我需要澄清什么,请告诉我 for n = 1:length(I) - 1; if I(n)*I(n+1) >= 0 n = n+1; else g = (I(n+1)-I(n))/(tt(n+1)

我有一个for循环来计算周期时间
T
。 当我有一个向量,但现在我有两个向量时,这就行了

我的想法是将所有I、I1、I2和I3放入一个矩阵
I
,然后围绕下面的初始
for
循环创建一个
for
循环。但我似乎无法让它发挥作用。我是否有可能或者应该换一种方法

如果我需要澄清什么,请告诉我

for n = 1:length(I) - 1;
    if I(n)*I(n+1) >= 0 
        n = n+1;
    else
        g = (I(n+1)-I(n))/(tt(n+1)-tt(n));
        T = 2*(tt(n)-(I(n)/g)); 
        disp(' Period [Seconds]:')
        disp(T);
        break
    end;
end;

我不明白你的问题,你能提供一个示例输入和所需的输出吗?你发布的代码在我第一次变为零时进行计算(大概是交流电或类似的东西)。如果你有三个电流I1,I2,I3,它们可能在不同的时间变为零。为了在Matlab中对它们进行合理的处理,首先必须澄清以下情况:预期周期是否相同?阶段如何?你想要实现什么?“现在我还有两个向量”并不是一个明确的问题陈述。所以I1、12和I3是,比方说1x3000向量。现在我想把它们添加到矩阵I中,矩阵I是3x3000。并围绕原始脚本进行for循环,以计算所有I,并将T1、T2和T3保存在向量中。I1、I2和I3都是不同的电流,或者更准确地说,是指示电流值的矢量。希望这能澄清问题:)然后使用
I(k,n)
T(k)
而不是
I(n)
T
,其中k=1,2,3是外for-loop。ThP:有点作用,我得到了一个具有T值的looong向量,但只针对一个I,而不是所有三个I。
TS = [];
Tsvang = [];

for k = 1:3

for n = 1:length(I(k,:)) - 1;
if I(k,n)*I(k,n+1) >= 0 
n = n+1;
else
g = (I(k,n+1)-I(k,n))/(tt(n+1)-tt(n));
Tsvang(k) = 2*(tt(n)-(I(k,n)/g)); 
break
end;
TS = [TS Tsvang];
end;
end;
disp(' Period [Seconds]:')
disp(Tsvang)