回答:
連続体PDEの離散化は、通常、有限精度よりもはるかに多くのエラーをコミットします。より高い精度を要求する人々の約90%が問題の定式化に怠惰であり、不十分なスケーリング、不適切な離散化、または不適切な連続体モデリングを使用して問題を解決しようとしていることがわかりました。残りの10%は、精度の向上が本当に理にかなっている正当に悪条件のシステムを持っている可能性があります。これらの場合でも、ほとんどの場合、デバッグツールとして(特に、有限差分フレシェ微分を使用する方法と組み合わせて、「偽の」数値ヌルスペースの原因を調査するために)またはローカルでではなく非常に敏感な操作のためにローカルで4倍精度を使用します生産のための大規模。
GCCは__float128
バージョン4.6以降で提供されているため、簡単に試すことができます。(以前の実装は、一般にはるかに煩わしく、移植性が低くなっていました。)PETScは--with-precision=__float128
バージョン3.2以降でサポートされているため、再コンパイルするだけです。
FEMソフトウェアをdeal.IIプロジェクト(http://www.dealii.org/)の形式で提供してから15年、PDEを解決するための真の要求があったことはないと思います倍精度より高い精度。その理由は、Jedが他の回答で示唆しているとおりです。PDEを離散化するときに発生するエラーは、倍精度浮動小数点演算から得られる16桁の精度よりもはるかに大きくなります。したがって、全体的なエラーに影響を与えるために演算の精度を高める必要があるポイントに到達するには、非常に細かいメッシュが必要です。
私は実際には逆だと思います。たとえば、単精度を使用して行列または前提条件子の要素を格納すると、人々は何が起こるかを考えています(そして取り組んでいます)。一般に、これによって精度が大幅に低下することはありませんが、メモリからプロセッサへのデータ量を半分にするだけでよいため、パフォーマンスが約2倍になります。
つまり、4倍精度(またはそれ以上)は、ODEソルバーコミュニティに関連している可能性があるが、PDEコミュニティには関連していない可能性があるということです。