How to set Matlab precision to Single

조회 수: 113 (최근 30일)
Pratheek
Pratheek 2012년 8월 31일
my code requires a precision 32 bit float. Matlab uses double by default, is there a way to set it to single by default so that when ever my program executes , all my variables are in single

답변 (3개)

Walter Roberson
Walter Roberson 2012년 8월 31일
This information can be found in http://undocumentedmatlab.com. My memory is that it is
system_specific('precision', '24')
but you should check.
However, it should definitely not be trusted that all internal calculations will be made in single precision even if all the variables involved are single precision.
  댓글 수: 4
Star Strider
Star Strider 2012년 8월 31일
Thank you! (Bookmarked for later reference.)
An experimental system_dependent() call generated no errors (or to the best of my knowledge, anything else), and a feature() call generated:
Error using feature
Not enough input arguments.
I was hoping that both calls would generate some documentation themselves, but no such luck. I don't surf Undocumented MATLAB much because it seems to be mostly Java. I may need to visit it more often.
Jan
Jan 2012년 9월 1일
The command is: feature('SetPrecision', 24). The deafult value is 53, which means standard 64 bit DOUBLE precision, while 64 enables the storing of intermediate values in the 80 bit registers of Intel processors.
But this command enables rounding to single precision. This is useful to check the numerical precision of an algorithm, but it neither saves time nor memory. Therefore I assume, that this is not useful for you. Please explain, what you are wanting to achieve.

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


Azzi Abdelmalek
Azzi Abdelmalek 2012년 8월 31일
  댓글 수: 2
Pratheek
Pratheek 2012년 8월 31일
i want all my variable to work automatically with single precision, not by casting
Azzi Abdelmalek
Azzi Abdelmalek 2012년 8월 31일
편집: Azzi Abdelmalek 2012년 8월 31일
if your data are single , all your variables will be single
a=single(2)% single
b=14 % double
c=a*b % single

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


Star Strider
Star Strider 2012년 8월 31일
The best you can likely do is described in this thread ‘Single Precision by Default? ... lots of auxiliary variables to cast’ last year.

카테고리

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

제품

Community Treasure Hunt

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

Start Hunting!

Translated by