DIsplay numbers in an expression in scientific notation

조회 수: 28 (최근 30일)
Sita
Sita 2022년 11월 22일
댓글: Walter Roberson 2022년 11월 23일
I have an expression that I'm plugging a bunch of values into and I would like for matlab to show me the result with the constants in scientific notation. By default, it shows the constants as big fractions that aren't as easy to work with. Here's what I mean:
syms L1 L2 C1 C2 C3 Rl s;
L1=10e-9;
L2=500e-12;
C1=600E-12;
C2=2E-9;
C3=100E-12;
Rl=2;
H_P_V2DivI1 = (C2*Rl*s + 1)/(C1*C2*L1*s^3 + C1*C2*Rl*s^2 + (C1 + C2)*s)
H_P_V2DivI1 =
((4835703278458517*s)/1208925819614629174706176 + 1)/((8362779449448985*s^3)/696898287454081973172991196020261297061888 + (3115378115120897*s^2)/1298074214633706907132624082305024 + (785801782749509*s)/302231454903657293676544)
Is there a way to display this expression using scientific notation instead? Thanks!

채택된 답변

Walter Roberson
Walter Roberson 2022년 11월 22일
syms L1 L2 C1 C2 C3 Rl s;
L1=10e-9;
L2=500e-12;
C1=600E-12;
C2=2E-9;
C3=100E-12;
Rl=2;
H_P_V2DivI1 = (C2*Rl*s + 1)/(C1*C2*L1*s^3 + C1*C2*Rl*s^2 + (C1 + C2)*s)
H_P_V2DivI1 = 
vpa(H_P_V2DivI1, 16)
ans = 
  댓글 수: 3
Sita
Sita 2022년 11월 23일
Thanks Walter! I'd noticed that the vpa command helped, but I didn't know there was a second term - I'm assuming that's number of digits after the decimal, right? I brought it down to 8 and got everything in scientific notation:
vpa(H_P_V2DivI1,8)
ans =
(4.0e-9*s + 1.0)/(1.2e-26*s^3 + 2.4e-18*s^2 + 2.6e-9*s)
Walter Roberson
Walter Roberson 2022년 11월 23일
yes optional second parameter is the number of digits. Otherwise it uses the current digits() setting

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Conversion Between Symbolic and Numeric에 대해 자세히 알아보기

제품


릴리스

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by