problem inside a for loop while trying to change values inside matlab functions
Info
This question is closed. Reopen it to edit or answer.
Show older comments
please help i don't understand what am i doing wrong
clear all
clc
kvals=0.1:0.1:7; % Change the values of k parameter
for kidx=1:length(kvals);
k=kvals(kidx);
G(kidx)=tf([k],[10*10^-3 1]);
Gtotal(kidx)=feedback(G(k),1);
TAU(kidx)=(0.01)/(G(k).num{1,1}(2));
end
this thing just won't work.
1 Comment
Walter Roberson
on 21 Apr 2013
What difficulty are you encountering? Is there an error message?
Answers (1)
Rahul Narendra Shanbhag
on 18 Jun 2020
0 votes
Hi Kobi,
I noticed that you are trying to create an array of transfer function variables. However, you have not declared the variable initially. This causes errors since the tf function gives a system model object as output.
Please refer to the section Array of Transfer Function Models in the given document on how to pre-allocate the transfer function array.
Also, you seem to have made syntactical errors in line 7 and 8 of your uploaded code, where you are trying to access the said tf array by using the variable k. However, k is a non-integer and cannot be used as an array index. Array indices must be positive integers.
Thanks
This question is closed.
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!