Transfer Function Sensitivity & Complete Derivations

8 Ansichten (letzte 30 Tage)
Richard
Richard am 5 Nov. 2023
Beantwortet: Sam Chak am 6 Nov. 2023
I have a transfer function block which looks like the following in SIMULINK:
Ignore the temporary error messages as 'a', 'k1', & 'k2' are not defined. When I find the CLTF of this system or T(s) I get this expression:
I am unsure how to derive these steps (if they are even correct!) in MATLAB.
My second problem is that I cannot determine the following sensitivity paramaters, definitely not in MATLAB and unsure about my own derivations:
=
&
(chain rule!)
I have = , however I did not expect the denominator powers and I remain unsure. For I simply could not figure this problem out myself.
I would appreciate any help on this subject matter, thank you!

Antworten (1)

Sam Chak
Sam Chak am 6 Nov. 2023
I followed the formulas you provided and arrived at these solutions.
syms s a k1 k2
Gp = 1/(s^2 + a*s);
Gc = k1 + 1;
H = k2;
G = Gc*Gp;
% Closed-loop transfer function
Gcl = G/(1 + G*H);
T = simplify(Gcl)
T = 
% sensitivity of T to changes in Gp
STG = 1/(1 + (Gc*Gp)*H);
STG = simplify(STG, 'steps', 100)
STG = 
% sensitivity of Gp to changes in a
dGda = diff(Gp, a);
dGda = simplify(dGda, 'steps', 100);
SGa = dGda*a/G;
SGa = simplify(SGa, 'steps', 100)
SGa = 
% sensitivity of T to changes in a
STa = STG*SGa;
STa = simplify(STa, 'steps', 100)
STa = 

Kategorien

Mehr zu Simulink finden Sie in Help Center und File Exchange

Produkte


Version

R2023b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by