JUK1
|
Go to the source code of this file.
Functions | |
end | numPoles () |
Get residues for these | final (stable) poles[r |
Plot modelled vs actual data | plot (freqBins, abs(freqData),'-x') |
plot (freqBins, abs(Asim *res(:)), 'o') | |
Variables | |
function [poles, residues, remainder, proportional] | |
Scale incoming frequencies | maxFreq = max(freqBins) |
freqBins = freqBins/maxFreq | |
wPoleFreqs = 2*pi*poleFreqs | |
sigma = -0.1 | |
sPoleFreqs = sigma + 1j*wPoleFreqs | |
Create vector of simulation frequencies | wFreqBins = 2*pi*freqBins |
Turn this into a | matrix |
Turn this into a with identical frequencies along the rows | s = repmat(1j*wFreqBins(:),1,numPoles) |
for | ii |
Extract zeros Form matrix with poles on diagonal | Az = diag(sPoleFreqs) |
Bz = ones(size(sPoleFreqs,2),1) | |
Get residues for these | Asim |
Get residues for these | residual = getResidues(sPoleFreqs,freqData,wFreqBins) |
Extract | resiudes |
r = Asim\freqDataFull | |
Count number of useful output variables | numVar = numPoles + 2 |
Extract these output variables | res = r(1:numVar) |
hold | on |
hold | off |
Undo scaling of outgoing | residues = res(1:numVar-2,:)*maxFreq |
Undo scaling of outgoing | poles = sPoleFreqs*maxFreq |
remainder = res(numVar-1,:) | |
proportional = res(numVar,:)/maxFreq | |
Get residues for these final | ( | stable | ) |
|
virtual |
Get residues for these Asim |
Definition at line 51 of file findComplexRationalApproximation.m.
Extract zeros Form matrix with poles on diagonal Az = diag(sPoleFreqs) |
Definition at line 36 of file findComplexRationalApproximation.m.
Bz = ones(size(sPoleFreqs,2),1) |
Definition at line 38 of file findComplexRationalApproximation.m.
freqBins = freqBins/maxFreq |
Definition at line 11 of file findComplexRationalApproximation.m.
function[poles, residues, remainder, proportional] |
for ii |
Definition at line 28 of file findComplexRationalApproximation.m.
Turn this into a matrix |
Definition at line 25 of file findComplexRationalApproximation.m.
Scale incoming frequencies maxFreq = max(freqBins) |
Definition at line 10 of file findComplexRationalApproximation.m.
Count number of useful output variables numVar = numPoles + 2 |
Definition at line 61 of file findComplexRationalApproximation.m.
hold off |
Definition at line 68 of file findComplexRationalApproximation.m.
hold on |
Definition at line 67 of file findComplexRationalApproximation.m.
Undo scaling of outgoing remainder term and proportional terms poles = sPoleFreqs*maxFreq |
Definition at line 70 of file findComplexRationalApproximation.m.
Definition at line 75 of file findComplexRationalApproximation.m.
Definition at line 55 of file findComplexRationalApproximation.m.
Definition at line 74 of file findComplexRationalApproximation.m.
Definition at line 64 of file findComplexRationalApproximation.m.
Compute residual error and print to screen residual = getResidues(sPoleFreqs,freqData,wFreqBins) |
Definition at line 51 of file findComplexRationalApproximation.m.
Definition at line 70 of file findComplexRationalApproximation.m.
Extract resiudes |
Definition at line 53 of file findComplexRationalApproximation.m.
Definition at line 26 of file findComplexRationalApproximation.m.
sigma = -0.1 |
Definition at line 16 of file findComplexRationalApproximation.m.
end Ensure poles are stable sPoleFreqs = sigma + 1j*wPoleFreqs |
Definition at line 17 of file findComplexRationalApproximation.m.
Definition at line 23 of file findComplexRationalApproximation.m.
wPoleFreqs = 2*pi*poleFreqs |
Definition at line 15 of file findComplexRationalApproximation.m.