\EMround
\EMround*

四捨五入をします。
 

定義されているスタイルファイル

emathC.sty

書式

\EMround#1#2#3
\EMround*#1#2

基本例

EMround01.png

0.1 刻みの目盛り

y軸に,0.1刻みの目盛りを入れるとします。
2進・10進換算などの誤差が累積されていきます。
EMround10.png
\EMround を用いて,四捨五入をする例です。
EMround11.png

注意事項

オーバーフロー

条件によっては,
  ! Dimension too large.
というエラーが発生することがあります。
その場合は perl との連携機能をお使いください。一例です:

overflow01.png
\EMround の内部処理手順は次のようになっています:
1) 1.732051 の小数点の位置を4桁下げます。17320.51
2) 0.5 を加えます。17321.01
3) 小数点以下を切り捨てます。17321
4) 小数点の位置を復元します。1.7321
以上の手順2) において,TeX がオーバーフローします。
(TeX の寸法では 16384pt が上限--16384pt はダメ--です。)

対策は,FPパッケージを使用,perlとの連携機能を利用します。
下の例は,perl との連携機能を利用しています(当然 emathPl.sty が必要です。)

overflow02.png

※ なお,emathC.sty v 0.56以降では,2)の処理を修正して整数計算で済ますようにしています。
 その結果,オーバーフローの発生上限は 2147483648(0x80000000) と緩和されました。

関連事項


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS