楕円の周長
楕円の2つの半軸を入力すると、ラマヌジャンの第2公式で周長が分かります。半軸が5と3なら約25.53で、形を表す値hは0.0625です。半軸が等しければ円周がぴったり出ます。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- A
- 5
- B
- 3
- 円周
- 25.5269988628
- H
- 0.0625
- Pi
- 3.1415926536
楕円の厳密な周長は初等的な閉形式を持たない楕円積分であり、技術者や学習者はほぼ常に高精度近似に頼ります。ラマヌジャンの第二公式は定番の選択です。二つの半軸、わずかな算術演算、一つの平方根だけで、通常の離心率では真の周長に非常に近い値になります。この楕円周長ラマヌジャン2計算機は、正の有限半軸二つを受け取り、離心率補助量 h を (a−b)/(a+b) の二乗として構成し、C をおよそ π(a+b)[1 + 3h/(10+√(4−3h))] として返します。a が b と等しいとき図形は円となり、公式はちょうど 2πa に退化するため、円の特別な場合と検算が一致します。
ラマヌジャン第二近似が計算するものと使われる理由
半軸 a・b を持つ楕円の周長は、第二種完全楕円積分で与えられます。この積分は a と b の初等関数の有限結合には簡約されないため、実用計算機は級数を走らせるか閉形式近似を適用します。ラマヌジャンは非常に精度の高い式を複数残しており、第二式は平方根が一つで足り、ほぼ円から中程度に細長い楕円まで実測で使う形の範囲で優秀なため特に人気です。
無次元の補助量 h を比 (a−b)/(a+b) の二乗として定義します。周長の推定は π(a+b) に、括弧 1 + 3h/(10+√(4−3h)) を掛けたものです。a が b と等しいとき h は 0、括弧は 1 となり、C はちょうど 2πa — 円の厳密公式 — になります。
軸が離れるにつれ h は 1 に向かい、補正項は滑らかに増えます。相対測定誤差は大きい軸ほど絶対周長誤差への寄与が大きくなります。先頭因子が a+b の和だからです。
単位は利用者の責任です。a と b がメートルなら周長もメートル、インチなら結果もインチです。a と b の順序は問いません。
入れ替えても h と C は変わりませんが、製図では水平半軸を先に書くことが多いです。面積・離心率・焦点も必要ならより広い楕円ツールをご利用ください。ここでは検索意図がラマヌジャン第二近似による周長に特化しており、宿題・CAD 検算・楕円周長ラマヌジャン2計算機の SEO クエリに合致します。
正確な楕円の周長が役立つ場面
教室やチュータリング基盤では、専用のラマヌジャン周長計算機により、学習者が任意の正の軸で第二近似を確認でき、電卓モードのミスや長短軸ラベルの混同を避けられます。試験生成器や LMS プラグインには、負の半軸を無効と判定し、絶対値を黙って取って学生の符号ミスを隠さない決定的オラクルが必要です。
製造・造園・建築の見積もりでは、測定した半軸から楕円トラック・テーブル縁・花壇境界・楕円開口の周長を、部材発注前に計算します。検証失敗は残高を消費しません。両半軸を有限かつ正に保ち、丸め済み周長をテストに固定すれば、宿題・CAD 検算・エッジワーカー向けに、特殊関数ライブラリを自前で立てずに再現可能な楕円周長が得られます。
活用例
宿題・教室での検算
学習者が二つの半軸を入力し、楕円積分ソフトなしで教科書やワークシートの答えとラマヌジャン II 周長を照合します。
試験・LMS の自動採点
負の半軸を拒否し、符号ミスを黙って反転しない決定的オラクルで楕円周長問題を採点します。
よくある質問
半軸が負の場合はどうなりますか?
ユークリッド楕円の半軸はゼロ未満にできず、その失敗は課金されません。
これは楕円積分の厳密な周長ですか?
いいえ。 ラマヌジャンの第二の高精度閉形式近似であり、通常の離心率では特殊関数を評価せずに十分です。
値hは何を表していますか?
2つの半軸の差を和で割って2乗した値で、半軸がどれだけ違うかを表します。円なら0で、楕円が平たくなるほど1に近づきます。半軸5と3では0.0625です。
aとbの順番は関係ありますか?
関係ありません。値を入れ替えてもhも周長も変わらないので、どちらを先に入力しても同じ結果になります。
aとbが等しいときはどうなりますか?
hが0になり、式はちょうど2π×半径、つまり円周になります。結果にも円であることが示されます。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/geom/ellipse-perimeter-ramanujan2 \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"a":5,"b":3}'const res = await fetch("https://api.kit.forhosting.com/geom/ellipse-perimeter-ramanujan2", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"a": 5,
"b": 3
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/geom/ellipse-perimeter-ramanujan2",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"a": 5,
"b": 3
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/geom/ellipse-perimeter-ramanujan2", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"a":5,"b":3}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"a":5,"b":3}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/geom/ellipse-perimeter-ramanujan2", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"a": 5,
"b": 3
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "geom.ellipse_perimeter_ramanujan2",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
負の半軸はユークリッド幾何では長さが負になり得ないため invalid_input で拒否されます。
ラマヌジャン第二近似が計算するものと使われる理由
エンドポイントは単位変換をせず、二つの半軸からラマヌジャン II 周長への純粋な幾何写像だけを適用します。
入力契約、応答形、負の半軸エラー
各値は正の有限数または数値文字列である必要があります。いずれかの半軸が厳密に負なら、楕円半軸はゼロ未満にできないという明確なメッセージで拒否され、課金されません。図形が正の長さを持つ真の楕円または円のままであるよう、ゼロも拒否されます。例:a が 5、b が 3 のとき周長はおよそ 25.53 付近で、穏やかな離心率を示す小さな正の h が付きます。UI ではご自身の単位ラベルと組み合わせてください。必須フィールド a と b を持つ JSON オブジェクトを POST してください(第一軸の別名 semi_axis_a, semi_major, semiAxisA、第二軸の別名 semi_axis_b, semi_minor, semiAxisB)。欠落・空・非数値・NaN・Infinity はフィールド名付きの invalid_input で失敗します。成功時の本文にはエコーされた a・b、計算された周長、補助量 h、ラマヌジャン II を再掲する formula 文字列、method タグ ramanujan_ii、a が b と等しいとき true の is_circle、ランタイムが使う定数 pi が含まれます。本エンドポイントは formula 以外の単位文字列や多段説明を出しません。リクエストは小さく保ち — 入力は二つの数、出力は少数の数 — 自動テストに丸め済み周長を固定すれば、将来の丸め変更がすぐ表面化し、楕円積分を手で再導出する必要がありません。
楕円周長ラマヌジャン II API が役立つ場面
小さな parse API を呼べば、スプレッドシートごとに場当たり的な π 定数や入れ子根号を埋め込む必要がありません。実装は pure parse の tier A のため、成功呼び出しは公開の基本料金 $0.002 で、モデルトークンも外向きネットワークもありません。
連携の活用例
製造・現場の見積もり
測定した半軸から楕円トラック・テーブル縁・花壇境界・開口の周長を、小さな前払い API 呼び出しで見積もります。
技術的な質問
ラマヌジャン第二近似で楕円の周長をどう計算しますか?
正の有限長 a と b を送ってください。API は C ≈ π(a+b)[1 + 3h/(10+√(4−3h))](h=((a−b)/(a+b))²)と補助量 h、formula 文字列を返します。
a が b と等しい場合は?
楕円は半径 a(または b)の円になります。ラマヌジャン II はちょうど C = 2πa に縮み、is_circle は true です。
楕円周長ラマヌジャン2計算機の料金は?
ブラウザツールは無料です。API は前払い KIT 残高で成功呼び出しごとに $0.002、無効入力は課金されません。