2016-02-08 6 views
5

Hier gibt es eine weite Zeit Übertragungsfunktion (G(s)) in Form von:Zersetzen die Zähler und Nenner Polynome in ihre geraden und ungeraden Teile

G(s) = N(s)/D(s); 
G(s) = (s^3+4s^2-s+1)/(s^5+2s^4+32s^3+14s^2-4s+50)  (1) 

und (s = j*w) wo w = frequency symbol.

Nun, wie es möglich ist, Zerlegung des Zählers und des Nenners Polynome von Gl. (1) in ihrer geraden und ungeraden Teile und erhalten die G(jw) als (mit Matlab):

enter image description here

+0

Dies ist in der Tat keine Programmierfrage. –

+1

Sie können Ihre Übertragungsfunktion G wie folgt definieren: 's = tf ('s') ; G = (s^3 + 4 * s^2-s + 1)/(s^5 + 2 * s^4 + 32 * s^3 + 14 * s^2-4 * s + 50); '. '[p, z] = pzmap (G)' gibt Ihnen die Pole und Nullen. Hilft das? –

+0

Leider Nein. Diese Methode geben nur Pole und Nullen der Z-Form-Transfer-Funktion .Ne, Nein, De und Do ist wichtig für mich (bezogen auf W-Quadrat). – salam

Antwort

5

Sie wahrscheinlich die realen und imaginären Teile nach der Substitution mit s=j*w nehmen könnte. Sie können jedoch tatsächlich wählen Sie die geraden und ungeraden Teile Ihrer Polynome:

% G(s) = N(s)/D(s); 

syms s; 
N = s^3+4*s^2-s+1; 

p = sym2poly(N); 

%// do this in fewer lines: 
%{ 
/* 
if mod(length(p),2)==0 %// then first index is odd 
    imin_o = 1; %// for odd part 
    imin_e = 2; %// for even part 
else 
    imin_o = 2; %// for odd part 
    imin_e = 1; %// for even part 
end 
*/ 
%} 
imin_o = mod(length(p),2) + 1; 
imin_e = 2 - mod(length(p),2); 

% odd part of numerator 
p_o = zeros(size(p)); 
p_o(imin_o:2:end) = p(imin_o:2:end); 
% even part of numerator 
p_e = zeros(size(p)); 
p_e(imin_e:2:end) = p(imin_e:2:end); 

% restore 
N_o = poly2sym(p_o,s); 
N_e = poly2sym(p_e,s); 

und das gleiche für den Nenner.

+0

Lieber Deak, ist es möglich, dieses Problem auch für s = j * w zu lösen? – Thomas

+0

@Thomas Wie wäre es, 's = jw' in das Ergebnis einzusetzen? :) Wie auch immer, wenn' w' wirklich ist, wie es normalerweise ist, dann ist 'N_e' einfach' real (N) 'und' N_o' ist 'imag (N)/w 'wenn ich mich nicht irre. –

+1

Netter Job Deak. +1. – rayryeng

Verwandte Themen