Hi everyone, Say I have a frequency response in the time domain from 0 - 100 MHz. What would be a good way to find the transfer function? I don,t have the system identification toolbox in Matlab. Best regards
Deduct transfer function from the frequency response
Started by ●November 4, 2010
Reply by ●November 4, 20102010-11-04
Benjamin Couillard wrote:> Hi everyone, > > Say I have a frequency response in the time domain from 0 - 100 MHz. > What would be a good way to find the transfer function?FDLS by Greg Berchin.> I don,t have > the system identification toolbox in Matlab.Newton, Einstein and Fourier didn't have Matlab. Why do you need it? VLV
Reply by ●November 4, 20102010-11-04
On 4 nov, 13:26, Vladimir Vassilevsky <nos...@nowhere.com> wrote:> Benjamin Couillard wrote: > > Hi everyone, > > > Say I have a frequency response in the time domain from 0 - 100 MHz. > > What would be a good way to find the transfer function? > > FDLS by Greg Berchin. > > > I don,t have > > the system identification toolbox in Matlab. > > Newton, Einstein and Fourier didn't have Matlab. Why do you need it? > > VLVI know that, but I wanted to make sure that no one would tell me something along those line "well use blabla function from system identification toolbox."
Reply by ●November 4, 20102010-11-04
On 11/04/2010 10:28 AM, Benjamin Couillard wrote:> On 4 nov, 13:26, Vladimir Vassilevsky<nos...@nowhere.com> wrote: >> Benjamin Couillard wrote: >>> Hi everyone, >> >>> Say I have a frequency response in the time domain from 0 - 100 MHz. >>> What would be a good way to find the transfer function? >> >> FDLS by Greg Berchin. >> >>> I don,t have >>> the system identification toolbox in Matlab. >> >> Newton, Einstein and Fourier didn't have Matlab. Why do you need it? >> >> VLV > > I know that, but I wanted to make sure that no one would tell me > something along those line "well use blabla function from system > identification toolbox."On this group it's the converse: don't use a tool from Matlab unless you know what it's doing. Usually, if you know what it's doing you don't need it, though. All of us who are paid consultants should encourage you to do go ahead and use the toolboxes anyway, because they give a great illusion of knowledge and progress. That lures you deep into your project before you screw up, so when you come crying to us you're more willing to sign up to give us big bags of cash when we pull your cookies out of the fire. But there's this problem with an engineer's compulsive honesty, and a preference for getting in on the start of things, instead of a messy and treacherous middle. -- Tim Wescott Wescott Design Services http://www.wescottdesign.com Do you need to implement control loops in software? "Applied Control Theory for Embedded Systems" was written for you. See details at http://www.wescottdesign.com/actfes/actfes.html
Reply by ●November 4, 20102010-11-04
On Thu, 04 Nov 2010 12:26:12 -0500, Vladimir Vassilevsky <nospam@nowhere.com> wrote:>> Say I have a frequency response in the time domain from 0 - 100 MHz. >> What would be a good way to find the transfer function? > >FDLS by Greg Berchin.Even FDLS can't find the transfer function if the *frequency* response is expressed in the *time* domain.>> I don,t have >> the system identification toolbox in Matlab. > >Newton, Einstein and Fourier didn't have Matlab. Why do you need it?I guess that if I was as smart as Newton, Einstein, or Fourier, I wouldn't need Matlab either. But it is awfully handy when used properly ... though dangerous if misused. (Kind of like a .357 Magnum.) Greg
Reply by ●November 5, 20102010-11-05
Dnia 04-11-2010 o 18:18:53 Benjamin Couillard <benjamin.couillard@gmail.com> napisa�(a):> Hi everyone, > > Say I have a frequency response in the time domain from 0 - 100 MHz. > What would be a good way to find the transfer function? I don,t have > the system identification toolbox in Matlab. > > Best regards >You mean Laplace form of transfer function? When I was stupident I used fminsearch. But even then I had to do some assumptions (knowledge) by looking on Fourier Transform plots. Now I don't need it because I understand what am I doing. -- Mikolaj
Reply by ●November 5, 20102010-11-05
On Thu, 4 Nov 2010 10:18:53 -0700 (PDT), Benjamin Couillard <benjamin.couillard@gmail.com> wrote:>Hi everyone, > >Say I have a frequency response in the time domain from 0 - 100 MHz. >What would be a good way to find the transfer function? I don,t have >the system identification toolbox in Matlab. > >Best regardsHello Benjamin, I bet someone here can answer your question, if you would only tell us what you have. There is no such thing as a "frequency response in the time domain". Is your frequency response (1) a plot with frequency on the horizontal axis, or (2) an equation in terms of a frequency variable? If you have an equation, is your frequency variable measured in Hz, or is it measured in radians/sample? [-Rick-]
Reply by ●November 6, 20102010-11-06
On 11/05/2010 04:15 PM, Rick Lyons wrote:> On Thu, 4 Nov 2010 10:18:53 -0700 (PDT), Benjamin Couillard > <benjamin.couillard@gmail.com> wrote: > >> Hi everyone, >> >> Say I have a frequency response in the time domain from 0 - 100 MHz. >> What would be a good way to find the transfer function? I don,t have >> the system identification toolbox in Matlab. >> >> Best regards > > Hello Benjamin, > I bet someone here can answer your question, > if you would only tell us what you have. > > There is no such thing as a "frequency response in > the time domain". Is your frequency response > (1) a plot with frequency on the horizontal axis, > or (2) an equation in terms of a frequency variable? > If you have an equation, is your frequency > variable measured in Hz, or is it measured in > radians/sample?or (3) the results of a swept-sine measurement (which I might call "a time-domain frequency response" if I were being sloppy with my terms). -- Tim Wescott Wescott Design Services http://www.wescottdesign.com Do you need to implement control loops in software? "Applied Control Theory for Embedded Systems" was written for you. See details at http://www.wescottdesign.com/actfes/actfes.html
Reply by ●November 7, 20102010-11-07
Hi Benjamin, Yes, you can. You would need to choose a structure of the transfer function, let's say K/(s+a) (for a first order model), or a second order, etc... depending on the number of poles and zeros you would want to add (the lesser the simpler system). Once it is done, you would need to program a function which minimizes the error between the real and the imaginary part of your transfer function, doing a comparison between the data you have and the structure of the model you have chosen. A command in Matlab to do this would be lsnonlin. I would be glad to pass you the code but unfortunately I am out of my office. This is a problem I solved in one of my PhD signatures. I had this same discussion in another forum some years ago, you could take a look here for a better explanation: http://www.mathworks.com/matlabcentral/newsreader/view_thread/172709 Hope it helps, M>Hi everyone, > >Say I have a frequency response in the time domain from 0 - 100 MHz. >What would be a good way to find the transfer function? I don,t have >the system identification toolbox in Matlab. > >Best regards > >
Reply by ●November 7, 20102010-11-07






