Help With for loop with tranfer function and step
古いコメントを表示
s=tf('s');
G=1/(s^2+0.4*s+0.1);
K=[1 2 3 4 5 6];
figure
hold on
for i=1:1:length(K)
T=K(i)*G;
step(T)
S=stepinfo(T);
L=S.Peak(T)
end
I have this code but i get the error : "Unable to use a value of type tf as an index."
I want actually to make a vector containg all the values of the peak values and only then plot the peaks with the corresponding value of gain.
Thank you in advance
採用された回答
その他の回答 (1 件)
Dyuman Joshi
2023 年 11 月 20 日
編集済み: Dyuman Joshi
2023 年 11 月 20 日
There is no field in the struct 'S' with name 'T'. Thus you get the error in the line you defined 'S'.
I suspect that you want to get the 'Peak' value for each system -
s=tf('s');
G=1/(s^2+0.4*s+0.1);
K=[1 2 3 4 5 6];
%Preallocation
L = K.*0;
figure
hold on
for i=1:1:length(K)
T=K(i)*G;
step(T);
S=stepinfo(T);
L(i)=S.Peak;
end
L
カテゴリ
ヘルプ センター および File Exchange で Loops and Conditional Statements についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


