how to find integral absolute error
84 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
bhanu kiran vandrangi
le 8 Août 2021
Commenté : Walter Roberson
le 8 Août 2021
i need to derive a cost function from one of performance indices ( i took IAE as my performance index)
my reference value(steady state) is 7.5 and my output is a function of (t,d,e) where d,e constants vary between (0.1)
how to do the integration to find integral absolute error
0 commentaires
Réponse acceptée
Walter Roberson
le 8 Août 2021
syms d e t
f(t) = d*exp(-t^2*e)
reference = 7.5;
final_time = 10
IAE = int(abs(f(t) - reference), t, 0, final_time)
subs(IAE, [d, e], [1/5, 2/3])
2 commentaires
Walter Roberson
le 8 Août 2021
syms d e t
f(t) = d*exp(-t^2*e)
reference = 7.5;
final_time = 10
diff_function = f(t) - reference;
IAE = int(abs(diff_function), t, 0, final_time)
best_d = solve(diff_function,d)
diff_function2 = subs(diff_function, d, best_d)
best_e = solve(diff(diff_function2, e), e)
best_d = subs(best_d, e, best_e)
best_f = subs(f, [d, e], [best_d, best_e])
Which is to say that for this particular function, f(t), with d and e in that particular relationship to the function, that the best function (smallest IAE) occurs when the function is the constant function equal to the reference value.
The approach used here is the standard calculus approach: the critical points of a function are the points at which the derivative of the function are equal to 0. When the function to be optimized is an integral, then the derivative is the thing that was being integrated... so solve f(t)-reference == 0 for d and e. If the function never equals the reference over the permitted range of d and e, then the best IAE occurs at one of the boundary points.
Plus de réponses (0)
Voir également
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!