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!