Very large output numbers
8 ビュー (過去 30 日間)
古いコメントを表示
I have a code which gives me the output of a transfer function with giant values, but I know that they can be reduced to get something smaller but I don't know how, this would be an example of the output:
(6982830709666455*Kc*s)/140737488355328 or (6383029463564235*s^2)/2251799813685248
0 件のコメント
回答 (2 件)
John D'Errico
2024 年 9 月 13 日
syms Kc s
X = (6982830709666455*Kc*s)/140737488355328
vpa(X,10)
So here, 10 digits shown.
1 件のコメント
John D'Errico
2024 年 9 月 13 日
Unfortunately, Answers is currently bugged, so all symbolic display seems to not work. Regardless, vpa is what you need.
Sam Chak
2024 年 9 月 13 日
Hi @Marcos
Proper transfer function should have the degree of the numerator less than or equals to the degree of the denominator. You can probably do something like this:
s = tf('s');
Kc = 1; % Enter the Gain value
G = ((6982830709666455*Kc*s)/140737488355328)/((6383029463564235*s^2)/2251799813685248);
Gmin= minreal(G) % after simplification
0 件のコメント
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!