ForHosting KIT · 開発者向けツール

ステファンセン法による求根計算

このステファンセン法計算機は、導関数を入力せず、1つの初期値から実数関数の零点を近似します。f(x)の式、開始値、停止条件を指定すると、最終近似値と全反復の履歴を返します。f(x)とf(x + f(x))から構成するエイトケン型の補正を使うため、適切な単根の近くでは、関数値だけで二次収束を得られる場合があります。構造化された結果は、数値解析の学習、計算確認、再現可能な自動処理に利用できます。

● Beta無料・ブラウザ内で実行
ご利用方法 ウェブAPIメールTelegramアプリ 近日

関数と適切な初期値を入力します

関数はxを使い、x^2 - 2、cos(x) - x、exp(-x) - xのように入力してください。乗算は2xではなく2*xと明記します。パーサーは小数、科学表記、括弧、+、-、*、/、^による累乗、定数piとe、およびsin、cos、tan、exp、log、log10、sqrt、absなどの1引数関数に対応します。JavaScriptは実行せず、f(x)=のような代入も受け付けません。initial_guessには、目的の根に十分近い有限値を指定してください。ステファンセン法は開放型手法であり、二分法のように根を含む区間から始める保証はありません。開始値によって別の根へ収束したり、特異点に到達したり、有効な定義域から外れたりします。グラフ、符号の調査、数学的な見積もりが開始値の選択に役立ちます。toleranceは残差と相対変化の許容値、max_iterationsは計算回数の上限です。入力データが裏付ける精度に合う許容値をお選びください。

エイトケン型の更新式を確認します

現在の近似値xで、まずf(x)を評価し、次に移動点x + f(x)でも関数を評価します。差f(x + f(x)) - f(x)を分母とし、次の近似値をxからf(x)の2乗をその分母で割った値を引いて求めます。この構成は固定点反復へのエイトケン加速と解釈でき、f'(x)を明示的に計算せずにニュートン法の効果を近似します。関数が十分滑らかで、根が単根であり、開始値が適切なら、局所的には通常二次収束し、解の近くで正しい桁が急速に増えます。ただし大域的な保証ではありません。分母が0なら更新は未定義で、非常に小さい分母は大きな飛躍を生みます。本計算機は分母が厳密に0の場合や有限でない値をエラーにします。履歴の各行にはx、f(x)、移動点、その関数値、分母、次の近似値、次の残差が表示されるため、式を再現し、問題が起きた反復を特定できます。

収束判定を読み、結果を検証します

新しい残差がtolerance以下になるか、新しい近似値の尺度に対して更新量が小さくなると、convergedはtrueになります。rootとf_rootは最後の近似値と残差、iterationsは完了した更新回数です。初期値が残差判定を満たす場合は、反復回数0、空の履歴を返します。上限に達した場合、convergedはfalseのまま、最後の有限な近似値と全履歴を返し、未収束を成功とは表示しません。数値的停滞によって更新だけが小さくなる場合があるため、必ずf_rootもご確認ください。重要な用途では、元の式に根を代入し、近い開始値で再実行し、可能なら区間を使う手法とも比較してください。重根では収束次数が下がり、不連続、制限された定義域、平坦部、悪いスケーリングでは失敗します。浮動小数点演算も有効精度を制限します。本ツールは数値計算機であり、根の存在、一意性、保証誤差を証明するものではありません。それらには連続性、導関数、区間、条件数の別途解析が必要です。

数値解析の演習を確認する

導関数を使わない各更新を手計算と比較し、得られた根の残差をご確認いただけます。

非線形モデル方程式を解く

関数値は計算できても導関数の導出や実装が難しい場合に、有限の零点を求められます。

初期値への感度を調べる

近接する開始値から同じ式を実行し、吸引域、収束速度、失敗の仕方を調査できます。

APIリクエストの料金はいくらですか?

APIは1リクエスト$0.002です。ブラウザー版では同じ決定論的ソルバーをローカルで実行できます。

ステファンセン法には導関数が必要ですか?

いいえ。各更新では、現在値、移動点、得られた次の近似値における関数値を使用します。

二次収束は保証されますか?

いいえ。滑らかさ、単根、適切な開始値などの条件下での局所的な性質であり、難しい問題では失敗します。

分母が0になるのはなぜですか?

差分に使う2つの関数値が等しく、補正が未定義になったためです。別の初期値または手法をお試しください。

反復回数の上限に達するとどうなりますか?

convergedをfalseとし、診断用に最後の有限な近似値、残差、履歴を返します。

このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。

POSThttps://api.kit.forhosting.com/calculus/steffensen-method

Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。

curl -X POST https://api.kit.forhosting.com/calculus/steffensen-method \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"expression":"x^2 - 2","initial_guess":1}'
{
  "expression": "x^2 - 2",
  "initial_guess": 1
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "calculus.steffensen_method",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。

1リクエストあたり$0.002

単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。

max_expression_chars500
max_iterations10000
HTTPコード意味
401unauthorizedAPIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。
402insufficient_balance残高が不足しています。チャージ後に再度お試しください。
404unknown_type指定されたタスクタイプは存在しません。タイプ名を確認してください。
429rate_limitedリクエストが多すぎます。しばらく待ってから再度お試しください。

KITの完全なドキュメントを見る →