Transfer Function Sensitivity & Complete Derivations

5 views (last 30 days)
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!

Answers (1)

Sam Chak
Sam Chak on 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 = 

Categories

Find more on Simulink in Help Center and File Exchange

Products


Release

R2023b

Community Treasure Hunt

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

Start Hunting!