The result is given to 5 significant digits, which is quite a small number - a pocket calculator do a lot better. I’m sure the CPU’s floating point processor can do a lot better than that. I tried indicating that the 2 was know more precisely than one significant digit, by indicating a number of zeros, but again a result with only 5 significant digits is returned.
In[9]:= 3^Sqrt[2.00000000000]
Out[9]= 4.7288
Obviously I can perform the this particular calculation in arbitrary precision,
but that inconvenient, and slower than desirable. Is there any way to force Mathemaitca to display about 12 digits? A standard Intel CPU should be able to handle that in the vast majority of cases.. I realise that rounding errors can be significant for some calculations, so I might have less than 12 digits, but I’m sure printing to 10 or 12 digits would be a vast improvement, and they would probably all be right.
which seems to do the trick, but I wonder if there’s a way to display machine precision numbers to a bit more than 5 significant digits. A pocket calculator does better than that.
Mathematica does keep all of the precision. You are just seeing how it displays the numbers in its OutpuForm. You should read the documentation about Precision but here is some of it in a nutshell:
ans = 3^Sqrt[2.]
Displays in OuputForm as
4.7288
If you do NumberForm you can see the whole thing (The default of 2.0 is 16 decimal places of precision):
NumberForm[ans,16]
gives
4.728804387837416
You also get all the digits if you do CForm or InputForm, etc.:
ans //CForm
You can set the precision of a number with the prime symbol (`) :
This tells mathematica that the 2 is really 2.000… to 30 decimal places.
You can do this as well:
2.35463`15
To mean that the number is 2.3546300000000000000
I hope this helps. As an experiment, take the output of a number from Mathematica and copy and paste it as input – you will see it add the precision mark and you can see the actual precision of that result – not what was displayed in the OutputForm.
One should note that providing a precision using a prime mark will trigger arbitrary precision numbers as opposed to machine precision numbers. Which has a lot more implications than showing more digits. This is definitely not the problem of the OP. It is just a display issue (if you can call it that) in this case which can be set in the preferences as said by @Henrik Schachner…
When we use SetOptions on $FrontEnd the options are saved in the FrontEnd’s init.m file. For changing options for current session only we need to apply it on $FrontEndSession.