Very large output numbers
2 次查看(过去 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
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1771910/image.png)
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!