# Matlab- Extraction of system modes using Prony Analysis

Discussion in 'Programmer's Corner' started by tle531, Feb 1, 2015.

1. ### tle531 Thread Starter New Member

Feb 1, 2015
2
0
Hello, I was wondering if you could help me with some problems I am having with the prony function in Matlab. I have a spreadsheet which contains data on damped oscillations in a mechanical system - the amplitude of a rotor is varying with time following a disturbance and then settling back down to steady state. My aim is to extract data on the system modes (damping, frequency, amplitude, phase) from the time series data using prony analysis. The relevant bit of my code is show below.

denOrder=6; numOrder=6;
[Num,Den]=prony(datafile,numOrder,denOrder);
H=tf([Num],[Den])
damp(H)
[r,p,k]=residuez(Num,Den);

The problem is that the help file for the prony function states that it accepts the impulse response of a system and outputs a numerator and a denominator, presumably of a transfer function. How can I use this function with time series data? I do not have the impulse response. I have tried inputting a file with amplitude and time data, as above, but with incorrect results. I have used the prony toolbox and this uses the prony function. My aim is to make something much simpler that can be automated. Would finding the poles of H, as above, find the system eigenvalues / modes? Any help appreciated.

2. ### tle531 Thread Starter New Member

Feb 1, 2015
2
0
Solved this, I think - it looks like the prony function just needs the amplitude data to approximate the transfer function. The poles it has calculated look reasonable.