インボリュート関数
ラジアンで表した圧力角を入力すると、tan(a)からaを引いたインボリュートが分かります。20度、つまり0.3490658503988659ラジアンなら0.014904383867です。転位や歯厚の計算の出発点になります。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 角度
- 0.3490658504
- インボリュート
- 0.0149043839
インボリュート関数は、インボリュート歯車の幾何学が登場するあらゆる場面で現れます。ラジアンで与えられた圧力角に対して、その角度のタンジェントから角度そのものを引いた値、すなわち歯車の基礎円と運転時のピッチ円を結びつける値を返します。歯車設計者、機械加工技術者、学生の皆様は、圧力角同士の換算、新しい直径における歯厚の検証、インボリュート曲線が所定の半径に達する角度の求解にこの関数を用います。この機能はその唯一の計算を正確かつ決定的に実行します。角度を一つお送りいただければインボリュート値をお返しし、角度が有限数でない場合には明確なエラーをお返しします。
インボリュート関数とは何か、なぜ重要なのか
現代の歯車の歯のほぼすべては円のインボリュート、すなわち歯車の基礎円からほどけていく張り詰めた糸の先端が描く曲線です。この選択こそが、軸間距離がわずかにずれていても歯車が滑らかにかみ合うことを可能にしています。
インボリュート関数は inv(a) と書き、圧力角 a におけるその曲線の角度座標であり、角度をラジアンとして tan(a) - a に等しくなります。一見自明に見えますが、これは歯車数学の要です。ある直径における圧力角と別の直径における圧力角の関係は、まさにインボリュートの差だからです。
設計者が、20 度の標準歯車に対してピニオンが 24 度の運転圧力角で動作すると言うとき、その主張を支えている数値はインボリュートの差なのです。この関数は 0 から pi/2 までの実用区間で単調かつ滑らかであるため、安全に逆変換することも可能であり、測定された歯厚から運転圧力角を復元するのはこの方法です。
この値を浮動小数点の全精度で正しく求めることが、あらゆる本格的な歯車計算の第一歩です。
呼び出し方法と返ってくる結果
度数法の度は意図的に受け付けていません。インボリュートを使う教科書の公式はすべてラジアンを前提としており、度を黙って受け入れることが、かみ合わない歯車を表計算ソフトが生み出す原因になるからです。お手持ちの角度が度の場合は、呼び出す前に pi を掛けて 180 で割ってください。
一般的な 20 度の圧力角は 0.3490658503988659 ラジアンであり、そのインボリュートはよく知られた 0.0149043838673367 です。応答はお送りいただいた角度をそのまま返し、計算値である involute を付け加えます。値は十二桁の小数に丸められるため、同じ入力はどの機械でもバイト単位で同一の出力を生みます。
計算には状態も乱数も時計もないため、同じ角度での繰り返し呼び出しは常に同じ値を返します。
歯車ワークフローの中での位置づけ
実務では、インボリュートが最終的な答えになることはまれです。それは他のすべてがその上に構築されるプリミティブです。転位の計算には標準圧力角と運転圧力角におけるインボリュートが必要です。
ピンまたぎ測定の換算では、測定された寸法から角度を復元するために逆変換を行います。バックラッシュの検査では、公差のある歯厚どうしのインボリュート差を比較します。タンジェント一つ、引き算一つ、決定的な丸め、そしてラジアンの有限角度でないものをすべて拒否する厳格な検証層です。
チームの皆様はこれを設計自動化のマイクロサービスとして組み込み、図面を測定済みの形状と照合する品質ツールに組み込み、学生が手計算を参照実装と照らし合わせる教材にも組み込んでいます。
活用例
転位の検証
標準圧力角と運転圧力角におけるインボリュートを計算し、既存の歯車対の転位が図面と一致するかを確認します。
新しい直径における歯厚
ピッチ円直径と目的の直径の間のインボリュート差を用いて、歯面の任意の位置における歯厚を求めます。
歯車ソフトウェアのテスト用基準値
inv(20 deg) のような既知のインボリュート値を、より大規模な歯車設計アプリケーションのテストスイートに基準値として固定します。
よくある質問
度数法の度は使えますか?
いいえ。 すべてのインボリュート公式が前提とする通り、角度はラジアンである必要があります。度は事前に pi/180 を掛けて換算してください。
具体的に何が返されますか?
お送りいただいた角度と、インボリュート値 inv(a) = tan(a) - a を含むオブジェクトです。機械間の安定性のため十二桁の小数に丸められています。
インボリュートの逆変換、つまり値から角度を求めることはできますか?
いいえ。 この機能が計算するのは順方向の関数のみです。逆変換には反復ソルバーが必要で、それは別の機能です。
結果は決定的ですか?
はい。 ネットワーク、乱数、時計は一切関与せず、出力は丸められるため、同じ角度はどこでもバイト単位で同一の出力を生みます。
歯車の設計ではインボリュート関数をどこで使いますか?
転位の計算では、標準圧力角と運転圧力角の両方のインボリュートが必要です。またオーバーピン測定では、測った歯厚から運転圧力角を求めるために逆算して使います。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/math/involute-function \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"angle":0.3490658503988659}'const res = await fetch("https://api.kit.forhosting.com/math/involute-function", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"angle": 0.3490658503988659
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/math/involute-function",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"angle": 0.3490658503988659
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/math/involute-function", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"angle":0.3490658503988659}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"angle":0.3490658503988659}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/math/involute-function", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"angle": 0.3490658503988659
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.involute_function",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
呼び出し方法と返ってくる結果
angle という一つのフィールドに、ラジアンの圧力角を入れてお送りください。単純な数値を含む文字列は変換され、pressure_angle と alpha という別名も便宜上受け付けます。それ以外のもの、つまりフィールドの欠落、null、true、配列、NaN、Infinity、あるいはタンジェントが発散する pi/2 の奇数倍にちょうど位置する角度は、invalid_input エラーで拒否され、課金されることは決してありません。
歯車ワークフローの中での位置づけ
これらの各段階がインボリュート値を全面的に信頼するため、このエンドポイントは意図的に退屈な作りになっています。同じコードはこのページのブラウザ上で無料で動作しますので、数値を一つ貼り付けるだけで値を確認でき、より大きなパイプラインの中で呼び出しを自動化するときにのみ、$0.002/リクエストをお支払いいただきます。
技術的な質問
料金はいくらですか。
API 経由で $0.002/リクエストです。このページのブラウザ上での実行も無料です。
無効な入力の場合はどうなりますか。
欠落している、数値でない、または有限でない角度(NaN、Infinity)は invalid_input エラーで拒否され、課金されません。