vpasolve only shows 5 significant figures

조회 수: 3 (최근 30일)
Eddie
Eddie 2025년 4월 1일
댓글: Eddie 2025년 4월 2일
Hello,
MATLAB help shows the following command should produce the result shown below
syms x
S = vpasolve(sin(x) == 1/2, x)
S = 
0.52359877559829887307710723054658
but on my machine it produces the following result
S = 0.5236
Similarly the command below should produce the result shown below
vpa(pi,10)
ans = 
3.141592654
but on my machine it produces the following result
ans = 3.1416
Why am I only getting 4 decimal places of precision? I've tried the digits(10) command but it doesn't help.
Any help greatly appreciated.
Thanks!

답변 (1개)

Steven Lord
Steven Lord 2025년 4월 1일
이동: Walter Roberson 2025년 4월 1일
Let's make sure you're using the functions from Symbolic Math Toolbox. What do these commands display?
which -all syms
/MATLAB/toolbox/symbolic/symbolic/syms.m
which -all vpasolve
/MATLAB/toolbox/symbolic/symbolic/@sym/vpasolve.m % sym method
which -all vpa
/MATLAB/toolbox/symbolic/symbolic/vpa.m /MATLAB/toolbox/symbolic/symbolic/@sym/vpa.m % sym method
Also what are your symbolic preferences? In particular, what is the FloatingPointOutput preference value?
sympref
ans = struct with fields:
FourierParameters: [1 -1] HeavisideAtOrigin: 1/2 AbbreviateOutput: 1 TypesetOutput: 1 FloatingPointOutput: 0 PolynomialDisplayStyle: 'default' MatrixWithSquareBrackets: 0
  댓글 수: 3
Walter Roberson
Walter Roberson 2025년 4월 1일
Heh. I knew the cause of the problem from the Title to the question alone ;-)
Eddie
Eddie 2025년 4월 2일
Haha, Google Gemini needs to scrape your brain then because it didn't ;)
Thanks guys!

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

카테고리

Help CenterFile Exchange에서 Assumptions에 대해 자세히 알아보기

제품


릴리스

R2023a

Community Treasure Hunt

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

Start Hunting!

Translated by