Undefined function or method 'tf' for input arguments of type 'double'.
Show older comments
Hi..
i am using MATLAB R2007 version in my PC.
i tried to define a transfer function from the following command..
a = tf([5],[0.8 1])
but my command window is showing an error like......
" Undefined function or method 'tf' for input arguments of type 'double'."
requesting you to help me on this issue...
Regards
venkatapathi.p
Accepted Answer
More Answers (3)
Azzi Abdelmalek
on 12 Feb 2013
Edited: Azzi Abdelmalek
on 12 Feb 2013
Try
clear tf
a = tf([5],[0.8 1])
% You, probably used tf as a variable in your script, or you don't have a system control toolbox
8 Comments
Andreas Goser
on 12 Feb 2013
run
which tf -all
before executing Azzi's code to see if there are multiple or non TFs
Azzi Abdelmalek
on 12 Feb 2013
Ah, tf could belong to many toolbox. good to know and thanks Andreas.
Venkatapathi
on 12 Feb 2013
Azzi Abdelmalek
on 12 Feb 2013
Ok, What did you get after?
clear tf
a = tf([5],[0.8 1])
Undefined function or method 'tf' for input arguments of type 'double'.
This does not mean, that "tf" has been defined as a variable, because then the non-integer indexing would be the problem. The reply of "which tf -all" shows also, that "tf" is not a variable. Therefore clearing will not change the situation.
Azzi Abdelmalek
on 12 Feb 2013
Edited: Azzi Abdelmalek
on 12 Feb 2013
Exact. Then, what does mean
"C:\Program Files\MATLAB\R2007\toolbox\signal\signal\@dfilt\tf.m.
I mean, tf can be defined differently for two toolbox?
Venkatapathi
on 12 Feb 2013
Jan
on 12 Feb 2013
@Azzi: This means, that there is a TF function for dfilt objects. The same happens, if you add a function in a subfolder like @uint32\strcmp.m. Then calling strcmp(uint32('a')) calls this user-defined function instead of Matlab's builtin STRCMP.
Sai Sandeep padala
on 14 Mar 2013
1 vote
but what if you have a licensed control tool box and you still get the same error
danner baron
on 4 Oct 2016
0 votes
[num,den]=tfdata(Yz,'v'); zplane(num,den) zgrid Undefined function 'tfdata' for input arguments of type 'sym'.
requesting you to help me on this issue..
1 Comment
lounis chehrit
on 8 Jun 2021
Hello ,
I hope you're doing well.
I have an issue, can you help me on this please?
I have two signal column vectors ( input and output ) : ( very large but they both have the same size):
x_inp=[0.0001, -0.0233, ..... ]
x_out=[0.005, -0.0053, ..... ]
i also have a system TF, which is represented like this:
Real( H(s) ) = 23 cos (2*pi*s) + 12 cos (5*pi*s/10) + 1 cos (2*pi*s)/19 + 0.75 cos (5*pi*s/10).
Imag( H(s) ) =11 sin (3*pi*s) + 7 cos (9*pi*vs2) + 10 sin (2*pi*s)/2 + 1.25 sin (4*pi*s/18).
I want to know if , TF( x_out / x_inp ) = H(s).
I tried this :
sys = Real( H(s) ) + i.* Imag (H(s) ).
so to compute the TF( x_out / x_inp ) i did this :
TL1 = tf ( x_inp )
TL2 = tf ( x_out).
and then :
signal = TL2 ./ TL1.
But it doesn't work.
Can anyone please, tell me how can i compute that tf and compare them to the H(s) system.
Or is there another method to see if TF( x_out / x_inp ) = H(s) ? Wether fft method or something like that.
Thank you in advance !
Categories
Find more on Matched Filter and Ambiguity Function in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!