Mathematica 4.0ではNでの機械数の表示方法が変わったでしょうか.
 Mathematica 3.0以前のバージョンでは,Nの第2引数は計算の精度だけでなく,機械精度の数値結果を表示する桁数も制御しました.表示の際にNがこのような影響を与えることはドキュメントされておらず,Mathematica の後続バージョンからは削除されました.その代りに,このような例では,機械精度の数値がデフォルトの精度で表示されるようになりました. Mathematica のどのバージョンでも,表示桁数を制御する際は,NumberFormのようにその目的のためにデザインされ,またドキュメントされている関数を使うとよいでしょう. バージョン4以降のMathematica では,機械数表示のデフォルト精度は,OutputFormで数字を表示する際にはMachineRealPrintPrecisionシステムオプションを,StandardFormやTraditionalFormを使って数字を表示する際にはのPrintPrecisionオプションを使って変更することもできます. Nの結果の数学的な側面に変更はありません.またこの変更は,機械数以外の結果にも影響しません.変化するのは表示方法だけで,それも機械数にしか当てはまりません. 次は,Mathematica 3.0より前の典型的な動作例です. In[1]:= |  |
Out[1]= |
 |
これと同じ例をMathematica 3.0以降のバージョンで行うと,機械数の結果がデフォルトの出力精度で表示されます. In[1]:= |  |
Out[1]= |
 |
これに関連した変化として,機械数の入力桁数も表示のためには保存されなくなりました.バージョン3での入力桁数の保存を示した例をご覧ください. In[2]:= |  |
Out[2]= |
 |
これと同じ例題をバージョン4以降で処理すると,機械数がデフォルトの出力精度で表示されます. In[2]:= |  |
Out[2]= |
 |
この機能はあらゆる数に対して余分のメモリが必要だったため,またこれを一貫性をもって実装するのは不可能だったため,上記の変更が加えられました.数の表示は,例えばその数がNの直接の結果か他の計算によるものかなどで変わります. 次はNumberFormで表示桁数を管理する方法の例です. In[3]:= |  |
Out[3]//NumberForm= |
 |
OutputFormで機械精数を表示するデフォルト桁数は,MachineRealPrintPrecisionというシステムオプションでコントロールできます.次の例をご覧ください. In[4]:= |  |
Out[4]= |
 |
In[5]:= |  |
Out[5]= |
 |
Download this FAQ as a Mathematica 5.2 Notebook
Questions or comments? Send email to support@wolfram.com.
|