how can I increase accuracy

24 visualizzazioni (ultimi 30 giorni)
mim
mim il 10 Ott 2012
I am working with a program that deals with very small numbers and I build a matrix that has this very small numbers, is there any way in matlab that I could increase accuracy to deal with this very small numbers like 1^(-12)? can I increase the number of digits that matlab use to save a number? thanks

Risposte (4)

Walter Roberson
Walter Roberson il 10 Ott 2012
10^(-12) is not very small; MATLAB handles that easily.
MATLAB uses IEEE 754 double precision numbers, which have 53 bits of precision (approximately 1 part in 10^16)
You might want to look at the "format" command, to change the default display form of numbers.

José-Luis
José-Luis il 10 Ott 2012
doc vpa
That would work, if you have the symbolic math toolbox.
  2 Commenti
mim
mim il 10 Ott 2012
so you mean that I have to solve the problem symbolically and then I use this vpa function to give me more accurate number than when I solve it numerically? and I did not understand how can I use doc here. thanks
José-Luis
José-Luis il 10 Ott 2012
Modificato: José-Luis il 11 Ott 2012
Just look for vpa in the Matlab documentation. Or type doc vpa at the prompt. You can define a number to have whatever precision you want. It is rather slow though...
However, Walter might be right and you might have more of a display problem (especially if the data is already loaded into your computer). To see if that is so, just type format long in the prompt and look at your values again.

Accedi per commentare.


Matt J
Matt J il 10 Ott 2012
If you can transform your problem (e.g., by doing 1/x) to deal with very large integers, instead of very small floats, the following might be applicable to you

Andreas Goser
Andreas Goser il 10 Ott 2012
The whole thing might be a display issue like others suggested or it is that the numbers are too small in comparison to other entries in a matrix and thus numberical operations are not returning results you expect. Here you may be abel to scale columns or rows by a factor like 1e3, 1e6

Categorie

Scopri di più su Symbolic Math Toolbox in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by