[表紙へ]
▼ 変更履歴

電卓ベンチマーク02(三角関数を含んだ式の積分)

The expression of sum01

各電卓で上式の計算を行い、その計算にかかる時間を測定しました。
bの値は、10, 10 2 , 10 3 , 10 4 の4つです。それぞれの値で測定を行いました。

積分の計算は、電卓の演算速度だけでなく、電卓内蔵ソフトウェアの積分計算アルゴリズムの良し悪しによっても大きく左右されます。

目次

  1. 数式の意味
  2. 測定方法
  3. CAS搭載電卓の測定について
  4. SHARPの関数電卓の積分計算について(シンプソン法)
  5. SwissMicros DM42 の積分計算
  6. 測定結果(ガウス=クロンロッド法、ロンバーグ積分などの電卓)
  • 測定結果(シンプソン法の電卓)
  • 測定して気がついたこと
  • 数式の意味

    ▲先頭へ戻る

    測定方法

    ▲先頭へ戻る

    CAS搭載電卓の測定について

    CAS(数式処理システム)搭載電卓は通常操作において、超越関数や数学定数(π,eなど)を数値化しません。そのため、特殊な操作をしたり、設定を変更する必要があります。

    ▲先頭へ戻る

    SHARPの関数電卓の積分計算について(シンプソン法)

    2018年9月現在、SHARPの関数電卓の積分計算は「シンプソン法」という古い方法で行われています。 他社は「ガウス=クロンロッド法」「ロンバーグ積分」などのさらに進んだ積分計算方法を使っています。

    しかも SHARP の関数電卓のシンプソン法は積分区間の長さを全く考慮してくれません。 積分区間がどんなに広くても、分割数を指定しないときは、デフォルトの100分割になります。

    そのため、積分区間が広い場合、手動で分割数を指定する必要があります。 分割数を増やしたいときは、積分式のdxの前に分割数を指定します。「,分割数dx」という書式です。 その様子は「 SHARP EL-5160J-X 画像集 」をご覧ください。

    このように他の機種と公平な比較にならないため、別の表として結果をまとめます。

    (注意) Canon F-789SG の説明書の日本語部分に「シンプソンの公式」と書かれていますが、英語部分には "Gauss-kronrod method"(ガウス=クロンロッド法)と書かれています。 間違いなく英語部分の記述が正しいと思われます。 F-789SG の積分計算方法は、計算時間と計算精度からして「ガウス=クロンロッド法」に間違いないでしょう。

    ▲先頭へ戻る

    SwissMicros DM42 の積分計算

    DM42 は RPN 電卓ですので、代数式の記述はできません( RPL 電卓ではないため)。
    そのため、ソルバーや積分計算機能にプログラムという形で数式を渡す必要があります。

    以下の「プログラム BM02A」で数式 x(sin(x)+cos(x)+1) を表現しています。

    ▼ プログラム BM02A (押すとコードが表示されます)

    この「プログラム BM02A」を単体で実行することに意味がありません。
    これを DM42 の積分計算機能に渡して積分計算を行います。

    複雑な数式の場合、プログラムの書き方で計算速度が変わる可能性があります。

    DM42 は積分をするときに積分精度 ACC を手動で指定する必要があります。
    2021年5月16日の3回目の測定では、積分精度 ACC = 10 -9 にしています。10 -8 にすると、わずかな誤差が生じることがあるからです。
    積分精度 ACC を大きくすると、精度は下がりますが、計算速度は速くなります。
    そのため、今回の DM42 の結果も参考ということになります。

    DM42 は電池動作時とUSB給電時で CPU のクロック周波数が変化します。
    電池動作時は 24MHz、USB給電時は 80MHz になります。それぞれのクロック周波数に対して測定を行なっています。

    ▲先頭へ戻る

    測定結果(ガウス=クロンロッド法、ロンバーグ積分などの電卓)

    参考値としてwxMaxima(PC用数式処理ソフト)の計算結果(16桁)を使っています。参考値がどの桁まで正確なのかよく分かりませんが、ここで扱う電卓よりも高精度なのは間違いないと思われます。

    参考値と異なる計算結果の一部は 赤字 にします。四捨五入を考慮して 赤字 にします。
    例えば、参考値が1.235のとき、計算結果が1.23ならば、1.2 3 として、3を誤りとします。この場合、四捨五入を考慮して1.24が正解とします。


    b = 10

    参考値(wxMaximaによる): 50.567411541905

    機種名 種別 ファームウェア
    バージョン
    計算結果(桁数) 計算時間 備考
    HP Prime (Home表示) グラフ電卓(CAS有) 10637 50.5674115419(12桁) 1秒未満 Home表示=CASなしモード
    HP Prime (CAS表示) グラフ電卓(CAS有) 10637 50.5674115419(12桁) 1秒未満 Exact:ON,Complex:OFF
    SwissMicros DM42 (USB給電) 関数電卓 DM42 3.19 50.5674115419(12桁) 1秒未満 精度 ACC=10 -9 時の参考測定。表示モード : ALL
    CASIO fx-CG50 グラフ電卓(CAS無) 03.10.0212 50.56741154(10桁) 1秒未満
    TI-Nspire CX CAS グラフ電卓(CAS有) 4.3.0.702 50.5674115419(12桁) 1秒未満 Calculation Mode:Auto, 最大12桁表示に設定
    CASIO fx-CG10 グラフ電卓(CAS無) 02.02.3211 50.56741154(10桁) 1秒未満 fx-CG20同等品
    CASIO fx-9750GII グラフ電卓(CAS無) 02.04.0701 50.56741154(10桁) 1秒未満
    CASIO fx-9860GII グラフ電卓(CAS無) 02.09.0201 50.56741154(10桁) 1秒未満
    SwissMicros DM42 (電池動作) 関数電卓 DM42 3.19 50.5674115419(12桁) 1秒 精度 ACC=10 -9 時の参考測定。表示モード : ALL
    TI-84 Plus CE グラフ電卓(CAS無) 5.2.2.0043 50.56741154(10桁) 2秒
    CASIO fx-JP900 関数電卓 CY-243 VerA 50.56741154(10桁) 5秒
    TI-36X Pro 関数電卓 不明 50.56741154(10桁) 5秒
    CASIO fx-5800P 関数電卓 INROM-A27,0002 50.56741154(10桁) 7秒
    HP 50g グラフ電卓(CAS有) 2.15 50.5674115419(12桁) 11秒 Approx:ON,Complex:OFF
    TI-89 Titanium グラフ電卓(CAS有) 3.10 50.5674115419(12桁) 12秒 Exact/Approx:AUTO,最大12桁表示に設定
    Canon F-789SG 関数電卓 不明 50.56741154(10桁) 14秒
    CASIO fx-915ES 関数電卓 LY718X VerB 50.56741154(10桁) 23秒
    CASIO fx-375ES 関数電卓 LY717X VerA 50.56741154(10桁) 23秒
    HP 35s 関数電卓 不明 50.5674115419 (12桁) 59秒 表示モード : ALL
    ▲先頭へ戻る

    b = 10 2

    参考値(wxMaximaによる): 4862.487501891434

    機種名 種別 ファームウェア
    バージョン
    計算結果(桁数) 計算時間 備考
    HP Prime (Home表示) グラフ電卓(CAS有) 10637 4862.48750189(12桁) 1秒未満 Home表示=CASなしモード
    HP Prime (CAS表示) グラフ電卓(CAS有) 10637 4862.48750189(12桁) 1秒未満 Exact:ON,Complex:OFF
    SwissMicros DM42 (USB給電) 関数電卓 DM42 3.19 4862.48750189(12桁) 2秒 精度 ACC=10 -9 時の参考測定。表示モード : ALL
    CASIO fx-CG50 グラフ電卓(CAS無) 03.10.0212 4862.487502(10桁) 3秒
    TI-Nspire CX CAS グラフ電卓(CAS有) 4.3.0.702 4862.48750189(12桁) 4秒 Calculation Mode:Auto, 最大12桁表示に設定
    SwissMicros DM42 (電池動作) 関数電卓 DM42 3.19 4862.48750189(12桁) 4秒 精度 ACC=10 -9 時の参考測定。表示モード : ALL
    CASIO fx-CG10 グラフ電卓(CAS無) 02.02.3211 4862.487502(10桁) 5秒 fx-CG20同等品
    CASIO fx-9750GII グラフ電卓(CAS無) 02.04.0701 4862.487502(10桁) 6秒
    CASIO fx-9860GII グラフ電卓(CAS無) 02.09.0201 4862.487502(10桁) 6秒
    TI-84 Plus CE グラフ電卓(CAS無) 5.2.2.0043 4862.487502(10桁) 12秒
    CASIO fx-JP900 関数電卓 CY-243 VerA 4862.487502(10桁) 36秒
    HP 50g グラフ電卓(CAS有) 2.15 4862.48750189(12桁) 44秒 Approx:ON,Complex:OFF
    TI-36X Pro 関数電卓 不明 4862.487502(10桁) 45秒
    CASIO fx-5800P 関数電卓 INROM-A27,0002 4862.487502(10桁) 1分6秒
    TI-89 Titanium グラフ電卓(CAS有) 3.10 4862.48750189(12桁) 2分1秒 Exact/Approx:AUTO,最大12桁表示に設定
    Canon F-789SG 関数電卓 不明 4862.487502(10桁) 2分7秒
    CASIO fx-915ES 関数電卓 LY718X VerB 4862.487502(10桁) 2分56秒
    CASIO fx-375ES 関数電卓 LY717X VerA 4862.487502(10桁) 2分57秒
    HP 35s 関数電卓 不明 4862.48750189 (12桁) 3分56秒 表示モード : ALL
    ▲先頭へ戻る

    b = 10 3

    参考値(wxMaximaによる): 500264.8897228584

    機種名 種別 ファームウェア
    バージョン
    計算結果(桁数) 計算時間 備考
    HP Prime (Home表示) グラフ電卓(CAS有) 10637 500264.889723(12桁) 1秒 Home表示=CASなしモード
    HP Prime (CAS表示) グラフ電卓(CAS有) 10637 500264.889723(12桁) 1秒 Exact:ON,Complex:OFF
    SwissMicros DM42 (USB給電) 関数電卓 DM42 3.19 500264.889723(12桁) 12秒 精度 ACC=10 -9 時の参考測定。表示モード : ALL
    CASIO fx-CG50 グラフ電卓(CAS無) 03.10.0212 500264.8897(10桁) 20秒
    TI-Nspire CX CAS グラフ電卓(CAS有) 4.3.0.702 500264.88972 2 (12桁) 25秒 Calculation Mode:Auto, 最大12桁表示に設定
    SwissMicros DM42 (電池動作) 関数電卓 DM42 3.19 500264.889723(12桁) 32秒 精度 ACC=10 -9 時の参考測定。表示モード : ALL
    CASIO fx-CG10 グラフ電卓(CAS無) 02.02.3211 500264.8897(10桁) 38秒 fx-CG20同等品
    CASIO fx-9750GII グラフ電卓(CAS無) 02.04.0701 500264.8897(10桁) 48秒
    CASIO fx-9860GII グラフ電卓(CAS無) 02.09.0201 500264.8897(10桁) 49秒
    HP 50g グラフ電卓(CAS有) 2.15 500264.88972 8 (12桁) 2分59秒 Approx:ON,Complex:OFF
    CASIO fx-JP900 関数電卓 CY-243 VerA 500264.8897(10桁) 4分45秒
    CASIO fx-5800P 関数電卓 INROM-A27,0002 500264.8897(10桁) 8分56秒
    Canon F-789SG 関数電卓 不明 500264.8897(10桁) 15分25秒
    TI-89 Titanium グラフ電卓(CAS有) 3.10 500264.88972 2 (12桁) 15分37秒 Exact/Approx:AUTO,最大12桁表示に設定
    CASIO fx-915ES 関数電卓 LY718X VerB 500264.8897(10桁) 23分18秒
    CASIO fx-375ES 関数電卓 LY717X VerA 500264.8897(10桁) 23分31秒
    HP 35s 関数電卓 不明 500264.88972 2 (12桁) 31分35秒 表示モード : ALL
    TI-84 Plus CE グラフ電卓(CAS無) 5.2.2.0043 ERROR:
    TOLERANCE NOT MET
    「エラー:許容誤差を満たせない」の意
    TI-36X Pro 関数電卓 不明 MEMORY LIMIT Error 「メモリ上限エラー」の意。つまりメモリ不足。
    ▲先頭へ戻る

    b = 10 4

    参考値(wxMaximaによる): 50006463.15202395

    機種名 種別 ファームウェア
    バージョン
    計算結果(桁数) 計算時間 備考
    HP Prime (Home表示) グラフ電卓(CAS有) 10637 50006463.152(11桁) 11秒 Home表示=CASなしモード
    HP Prime (CAS表示) グラフ電卓(CAS有) 10637 50006463.152(11桁) 11秒 Exact:ON,Complex:OFF
    CASIO fx-CG50 グラフ電卓(CAS無) 03.10.0212 50006463.15(10桁) 2分41秒
    SwissMicros DM42 (USB給電) 関数電卓 DM42 3.19 50006463.152(11桁) 3分14秒 精度 ACC=10 -9 時の参考測定。表示モード : ALL
    TI-Nspire CX CAS グラフ電卓(CAS有) 4.3.0.702 50006463.152(11桁) 3分29秒 Calculation Mode:Auto, 最大12桁表示に設定
    CASIO fx-CG10 グラフ電卓(CAS無) 02.02.3211 50006463.15(10桁) 5分1秒 fx-CG20同等品
    CASIO fx-9750GII グラフ電卓(CAS無) 02.04.0701 50006463.15(10桁) 6分22秒
    CASIO fx-9860GII グラフ電卓(CAS無) 02.09.0201 50006463.15(10桁) 6分35秒
    SwissMicros DM42 (電池動作) 関数電卓 DM42 3.19 50006463.152(11桁) 8分34秒 精度 ACC=10 -9 時の参考測定。表示モード : ALL
    HP 50g グラフ電卓(CAS有) 2.15 50006463.15 18 (12桁) 24分10秒 Approx:ON,Complex:OFF
    TI-89 Titanium グラフ電卓(CAS有) 3.10 50006463.152(11桁) 2時間19分29秒 Exact/Approx:AUTO,最大12桁表示に設定
    TI-84 Plus CE グラフ電卓(CAS無) 5.2.2.0043 ERROR:
    TOLERANCE NOT MET
    「エラー:許容誤差を満たせない」の意
    CASIO fx-JP900 関数電卓 CY-243 VerA タイムアウトになりました 許容誤差範囲は10^-5(デフォルト)
    TI-36X Pro 関数電卓 不明 MEMORY LIMIT Error 「メモリ上限エラー」の意。つまりメモリ不足。
    CASIO fx-5800P 関数電卓 INROM-A27,0002 Time out
    Canon F-789SG 関数電卓 不明 Time out 許容誤差範囲はデフォルト(数は不明)
    CASIO fx-915ES 関数電卓 LY718X VerB Time out 許容誤差範囲は10^-5(デフォルト)
    CASIO fx-375ES 関数電卓 LY717X VerA Time out 許容誤差範囲は10^-5(デフォルト)
    HP 35s 関数電卓 不明 NONEXISTENT 表示モード : ALL
    NONEXISTENTは「積分の結果が存在しない」の意
    ▲先頭へ戻る

    測定結果(シンプソン法の電卓)

    各bの値(10, 10 2 , 10 3 , 10 4 )に対して、分割数を100(デフォルト), 10 3 , 10 4 の順番に増加させて正しい値が出るまで続けます。
    ただし、分割数を10 5 にすると12時間以上の計算時間がかかると予想されるので、分割数は10 4 までにします。

    参考値と異なる計算結果の一部は 赤字 にします。四捨五入を考慮して 赤字 にします。
    例えば、参考値が1.235のとき、計算結果が1.23ならば、1.2 3 として、3を誤りとします。この場合、四捨五入を考慮して1.24が正解とします。

    b = 10

    参考値(wxMaximaによる): 50.567411541905

    機種名(分割数) 種別 ファームウェア
    バージョン
    計算結果(桁数) 計算時間 備考
    SHARP EL-5160J-X(100分割) 関数電卓 不明 50.567411 89 (10桁) 44秒 デフォルト分割数
    SHARP EL-5160J-X(10 3 分割) 関数電卓 不明 50.56741154(10桁) 7分17秒
    SHARP EL-509T-AX(100分割) 関数電卓 不明 50.567411 89 (10桁) 47秒 デフォルト分割数
    SHARP EL-509T-AX(10 3 分割) 関数電卓 不明 50.56741154(10桁) 7分46秒
    ▲先頭へ戻る

    b = 10 2

    参考値(wxMaximaによる): 4862.487501891434

    機種名(分割数) 種別 ファームウェア
    バージョン
    計算結果(桁数) 計算時間 備考
    SHARP EL-5160J-X(100分割) 関数電卓 不明 4862.4 39231 (10桁) 45秒 デフォルト分割数
    SHARP EL-5160J-X(10 3 分割) 関数電卓 不明 4862.487 497 (10桁) 7分24秒
    SHARP EL-5160J-X(10 4 分割) 関数電卓 不明 4862.487502(10桁) 1時間14分22秒
    SHARP EL-509T-AX(100分割) 関数電卓 不明 4862.4 39231 (10桁) 47秒 デフォルト分割数
    SHARP EL-509T-AX(10 3 分割) 関数電卓 不明 4862.487 497 (10桁) 7分54秒
    SHARP EL-509T-AX(10 4 分割) 関数電卓 不明 4862.487502(10桁) 1時間20分11秒
    ▲先頭へ戻る

    b = 10 3

    参考値(wxMaximaによる): 500264.8897228584

    機種名(分割数) 種別 ファームウェア
    バージョン
    計算結果(桁数) 計算時間 備考
    SHARP EL-5160J-X(100分割) 関数電卓 不明 498955.6899 (10桁) 45秒 デフォルト分割数
    SHARP EL-5160J-X(10 3 分割) 関数電卓 不明 500264. 9839 (10桁) 7分28秒
    SHARP EL-5160J-X(10 4 分割) 関数電卓 不明 500264.8897(10桁) 1時間14分53秒
    SHARP EL-509T-AX(100分割) 関数電卓 不明 498955.6899 (10桁) 49秒 デフォルト分割数
    SHARP EL-509T-AX(10 3 分割) 関数電卓 不明 500264. 9839 (10桁) 8分4秒
    SHARP EL-509T-AX(10 4 分割) 関数電卓 不明 500264.8897(10桁) 1時間20分47秒
    ▲先頭へ戻る

    b = 10 4

    参考値(wxMaximaによる): 50006463.15202395

    機種名(分割数) 種別 ファームウェア
    バージョン
    計算結果(桁数) 計算時間 備考
    SHARP EL-5160J-X(100分割) 関数電卓 不明 48702216.67 (10桁) 45秒 デフォルト分割数
    SHARP EL-5160J-X(10 3 分割) 関数電卓 不明 49974305.81 (10桁) 7分30秒
    SHARP EL-5160J-X(10 4 分割) 関数電卓 不明 5000646 5.47 (10桁) 1時間15分23秒
    SHARP EL-509T-AX(100分割) 関数電卓 不明 48702216.67 (10桁) 49秒 デフォルト分割数
    SHARP EL-509T-AX(10 3 分割) 関数電卓 不明 49974305.81 (10桁) 8分6秒
    SHARP EL-509T-AX(10 4 分割) 関数電卓 不明 5000646 5.47 (10桁) 1時間21分17秒
    ▲先頭へ戻る

    測定して気がついたこと

    HP Prime の突出した計算速度の速さ

    前回の測定でも HP Prime の計算速度はダントツの速さでしたが、CAS表示の動作が不安定でした。 しかも12桁表示にも関わらず、末尾の2桁は誤差が多くて信頼性がないものでした。

    ところが、今回はCAS表示も安定して動作しており、精度も問題ありません。計算速度は前回同様に高速です。 その速さは HP Prime に搭載されている ARM9 400 MHz の性能だけでは説明できません。 なぜなら TI-Nspire CX CAS も ARM9 132MHz (150MHz説もある)を搭載しているので、クロック周波数は3倍程度の差にすぎません。 それなのに b=10 4 のときの計算速度は HP Prime の方が約19倍も速いのです。 仮に HP Prime の ARM9プロセッサのキャッシュメモリとTCM(スクラッチパッドメモリ)が TI-Nspire CX CAS のそれよりも多かったとしてもここまで差が出るとは思えません。

    もしかしたら HP Prime の内部演算が多くの電卓で使われる BCD(2進化10進数) ではなく、2進数の浮動小数点を使っているのかもしれません。しかし、それが事実かどうかは私には分かりません。

    ただし、前回の測定のように HP Prime は不安定な動作をすることもあり、速ければいいというものでもありません。

    ▲先頭へ戻る

    SHARPの関数電卓のシンプソン法による積分計算は実用性がない

    EL-5160J-X は2011年8月に発売されたものです。その時代でもシンプソン法による積分計算は時代遅れでした。
    それよりも2年以上古い CASIO fx-993ES (ヨドバシ.comによると2009年2月発売)でもガウス=クロンロッド法で積分を行なっていました。

    今回測定した機種の中で最も古くから発売されている TI-89 Titanium(2004年発売)は積分の計算方法が公表されていませんが、おそらくシンプソン法を使っていないでしょう。 シンプソン法の場合、ガウス=クロンロッド法と違って誤差推定ができないので、分割数を自動的に設定するのは困難です。 しかし、TI-89 Titanium は分割数を利用者に要求しないのにほとんどの場合で正確な結果を出しますので、シンプソン法ではないでしょう。

    EL-5160J-X の測定結果を見る限り、今回の数式において分割幅が0.1のときは正確な結果を出すようです。
    分割幅=積分区間/分割数 ですので、積分区間が長くなるほど分割数を増やす必要があります。 そのため、シンプソン法で正確な値を出すには長い計算時間がかかります。 b=10のときですら正確な計算をするのに7分17秒(分割数10 3 のとき)もかかっています(分割数を101~999の間で調整して時間短縮できる可能性はあるが、そうしても他機種よりはかなり遅いだろう)。
    EL-5160J-X 以外の機種で最も計算速度の遅い CASIO fx-375ES ですら b=10 のときに23秒で正確な値を出しています。

    それ以前の問題として、電卓の利用者からすると、分割数をいくらにすれば正確な値が出るのか知りようがありません。 今回のようにwxMaximaの結果などと比較しないと適切な分割数が分からないのです。 つまり、EL-5160J-X の積分計算に実用性はないのです。

    非常に残念なことに後継機種の EL-5160T-X (2016年10月発売)ですら積分計算は進化しておらず、シンプソン法のままです。 その下位機種の EL-509T も同様です。

    ▲先頭へ戻る

    許容誤差範囲(tol)の設定を変えてタイムアウトを回避できるか?

    今回の測定では、b=10 4 のときにCASIO fx-375ES, fx-915ES, fx-JP900, Canon F-789SG の4機種がタイムアウトエラーを出しています。
    しかし、fx-JP900の説明書によると、タイムアウトエラーの説明は
    「微分または積分計算にて、解が終了条件を満たしていない。」
    ということになっています。 fx-315ES/915ESとF-789SGの説明書にも同じようなことが書かれています。

    この説明はタイムアウトしたときに「解が終了条件を満たしていない」という意味でしょうか。 それとも「解が終了条件を満たしそうにない」ので、タイムアウトしたことにしたのでしょうか。

    fx-JP900 の説明書にはタイムアウトの対応策として、
    「tol値(許容誤差範囲)を現在の値より大きくすることで、求解条件を緩めて試してみる。ただしこのとき、求解精度は落ちます。」
    と書かれています。

    前述の4機種は教科書表示入力からライン表示入力に切り替えると、ガウス=クロンロッド法で使う許容誤差範囲を設定できます。 この値は計算結果に対する許容誤差範囲ではなく、計算過程で使う許容誤差範囲のようですが、詳細は説明書に書かれていません。 おそらくは積分区間を細かく分割して、それぞれの分割された区間にガウス=クロンロッド法を適用した時の許容誤差範囲という意味かもしれませんが、私にはよく分かりません。

    そこで、fx-JP900の許容誤差範囲をデフォルトの10^-5から大きくしてどのようになるのか試して見ました。 許容誤差範囲を指定するためにライン表示入力にしないといけないので、数式は ∫(X*(sin(X)+cos(X)+1), 0, 10000, 許容誤差範囲 ) となります。これは他の3機種でも一緒です。

    許容誤差範囲をかなり大きくすると、タイムアウトしなくなりましたが、計算精度は大幅に悪化しています。
    b=10 4 のときの参考値(wxMaximaによる)は 50006463.15202395 であり、許容誤差範囲=10^-1のときは計算になっていないのです。 結局のところ、許容誤差範囲(tol)の設定を変えても意味のない数値が出るだけでした。 fx-375ES, fx-915ESでも完全に同じ動作でした。

    一方、Canon F-789SG は異なる動作をします。

    結局、F-789SGでも答えになっていない酷い結果が出るだけでした。

    どうやら許容誤差範囲の設定変更はあまり意味がないようです。 許容誤差範囲の設定変更でタイムアウトを解決できる場合もあるのかもしれませんが、メーカー自ら「ただしこのとき、求解精度は落ちます。」と宣言しているので、無理にやることもない気がします。 デフォルト設定で積分計算してタイムアウトになった時点で余計なことはしない方が良いようです。

    ▲先頭へ戻る

    bの値によってHP 50gの順位が変動する

    HP 50gは、b=10 と b=10 2 のとき CASIO fx-JP900 よりも計算時間がかかります。 しかし、b=10 3 と b=10 4 のときは計算時間で逆転しています。 積分区間が長いと HP 50g の方が有利になるようです。

    とはいえ、単4電池4本で動作する HP 50g に対して、太陽電池とLR44ボタン電池1個しか搭載していない fx-JP900 が一部条件下で勝っているのは特筆するべきことでしょう。

    別の視点で見ると、HP 50g は ARM CPU 75MHz 上で動作する Saturn CPU エミュレータが相当な足かせになっているとも言えます。

    ▲先頭へ戻る

    CASIO fx-375ES と fx-915ES のわずかな計算時間の差について

    今回は b=10 3 のときに0.9%程度の差が出ています。
    普通の関数電卓のCPUクロックはCR発振回路のものが多いので、この程度の誤差はありえるでしょう。

    前回のベンチマークの 「電池電圧と太陽電池電圧の差によって計算速度に差が出る?」 に書いたように電池電圧と太陽電池電圧の差が反映されている可能性もあります。

    ▲先頭へ戻る


    [表紙へ]