角度の差のコサイン計算機
角度の差のコサイン計算機は、指定された2つの角度にcos(A)cos(B) + sin(A)sin(B)を適用してcos(A − B)を求めます。角度を度またはラジアンで入力すると、それぞれのサインとコサイン、2つの積、その和、最終値が表示されます。数値解を得るだけでなく、公式を電卓の1つのキーに隠さず、教科書の計算手順を各段階で確認できます。
無料で実行
2つの角度を正しい順序で設定します
最初の角度をA、2番目の角度をBとして入力し、両方に共通する単位を選択してください。この計算機はcos(A − B)を求めるため、差を表示する際にはAからBを引きます。コサインは偶関数なのでcos(A − B)とcos(B − A)は等しくなりますが、筆記した問題と結果を照合したり、表示された差を後の計算で再利用したりする場合には、指定された順序を保つことが大切です。既定値は度で、30、45、60、90などのよく使う値に適しています。微積分、プログラミング、物理、またはラジアン表記の公式から得た角度にはラジアンを選択してください。一方だけを変換してはいけません。選択した単位は両方の入力に適用されます。サインとコサインは周期関数で、有限の実数角すべてに定義されるため、負の角度や1回転を超える角度も入力できます。出力には両入力と差が再掲されるので、計算を確認する前に設定を検証できます。
差の公式を項ごとに確認します
計算にはcos(A − B) = cos(A)cos(B) + sin(A)sin(B)を使用します。まずAとBのコサインを求め、それらを掛けてコサインの積を作ります。次にAとBのサインを求め、それらを掛けてサインの積を作ります。最後に2つの積を加えます。プラス記号はコサインの和の公式と混同しやすい点です。コサイン内で角度を引くと積同士は加算になり、角度を足すと積同士は減算になります。応答ではvalueの前にcosine_a、cosine_b、sine_a、sine_b、cosine_product、sine_productが示されるため、手計算の各行を個別に検証できます。結果は12桁の小数に丸め、通常の数値計算に十分な精度を維持しながら、意味のない2進浮動小数点ノイズを抑えます。ゼロに極めて近い値はゼロとして返すため、正確な角度の数学でゼロになる箇所に微小な科学表記の剰余が現れません。
返された値を解釈して検証します
最終値は表示された2つの積の和であり、角度差のコサインを表します。実数角のコサインと同様、値は−1以上1以下になります。1に近ければ周期性を考慮した2方向が近く、0に近ければ差が直角に近く、−1に近ければ方向がほぼ反対です。この幾何学的な解釈は、方位の比較、位相差の処理、回転の検査、正規化された方向類似度の計算にも役立ちます。独立して確認するには、入力角度を引き、同じ単位でその差のコサインを直接求めてください。直接計算と公式による結果は、通常の丸めを除いて一致します。このendpointは記号的な証明ではなく追跡可能な数値要素を返すため、指定した数値角の計算に適しています。pi/6のような式の解析、混在する単位の推測、変数の簡約は行いません。APIによる自動処理は1件あたり$0.002で、生成されるWeb計算機も同じ決定論的な関数を使用します。
活用例
三角法の問題を確認します
差の公式を手計算した結果と、各サイン、コサイン、積、最終的な和を比較できます。
2つの方向を比較します
進路、方位、または2次元の向きの角度間隔についてコサインを求められます。
位相計算を検証します
度またはラジアンの位相差のコサインを求め、監査用に中間項を残せます。
よくある質問
どの公式を使用しますか?
cos(A − B) = cos(A)cos(B) + sin(A)sin(B)を使用します。
度とラジアンの両方を入力できますか?
はい。degまたはradを選択してください。選んだ単位は両方の角度に適用されます。
数式にプラス記号があるのはなぜですか?
コサインでは、関数内の差がコサインの積とサインの積の加算に対応するためです。
負の角度も使用できますか?
はい。負の値や1回転を超える値を含む、有限の実数角を入力できます。
結果を丸めるのはなぜですか?
実用的な精度を保ちながら微小な浮動小数点誤差を除くため、12桁の小数に丸めます。
API計算の料金はいくらですか?
APIは1件あたり$0.002で、Web計算機は無料です。
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/trig/cos-difference \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"angle_a":60,"angle_b":30}'const res = await fetch("https://api.kit.forhosting.com/trig/cos-difference", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"angle_a": 60,
"angle_b": 30
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/trig/cos-difference",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"angle_a": 60,
"angle_b": 30
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/trig/cos-difference", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"angle_a":60,"angle_b":30}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"angle_a":60,"angle_b":30}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/trig/cos-difference", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"angle_a": 60,
"angle_b": 30
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "trig.cos_difference",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |