平行軸の定理計算機
平行軸の定理計算機は、物体の重心を通る軸と平行な別の軸について慣性モーメントを求めます。重心まわりの慣性モーメント、物体の質量、2本の軸の垂直距離を入力してください。I = I_c + md²を計算し、移動による加算項を個別に示したうえで最終的な慣性モーメントを返します。機械設計、構造計算、動力学の学習、回転軸が重心を通らない剛体問題にご利用いただけます。
無料で実行
平行軸の定理を適用できる場合
物体の重心を通る軸について慣性モーメントが既知であり、実際の回転軸がそこからずれている場合に、この定理をご利用ください。2本の軸は平行でなければならず、距離は両軸に垂直な方向で測定します。重心から離れた支点で回転する振り子、端を基準にする梁、偏心軸に取り付けた機械部品などが代表例です。既知の重心慣性モーメントをI_c、全質量をm、軸間距離をdとして入力してください。すべての量で整合した単位系を使用する必要があります。質量がキログラム、距離がメートルなら、重心値と結果はいずれもキログラム平方メートルになります。本計算機は形状からI_cを導出しません。形状公式、CAD、測定、または別の計算で先に値を求めてください。その後、定理が示す軸の移動だけを計算します。
I = I_c + md²の計算方法
垂直距離dを2乗し、その値に質量mを掛け、得られたmd²を重心慣性モーメントI_cに加えます。質量が同じなら、中心からの距離を2倍にすると追加される回転慣性は4倍になります。offset_termにはこの加算分を表示するため、合計の内訳をご確認いただけます。物理的な入力ではmとd²は負にならないので、軸を重心から遠ざけても慣性モーメントは減少せず、結果は必ずI_c以上です。距離が0なら両軸は一致し、重心値は変わりません。質量が0の場合も加算項は0ですが、通常の物体は正の質量を持ちます。負の質量は明示的に拒否されます。また、慣性モーメントや距離について、未入力、数値でない値、有限でない値、負の値も拒否し、不正なデータからもっともらしい結果が生じることを防ぎます。
単位、解釈、結果の確認
送信前に単位が整合していることをご確認ください。I_cがkg·m²なら、質量はキログラム、距離はメートルで入力します。グラムとセンチメートルを使用する場合、I_cと結果はいずれもg·cm²にそろえてください。単位系の混在は危険なため、本計算機では自動変換を行いません。結果を受け取ったら、offset_termがI_cと同じ質量掛ける長さの2乗の次元を持ち、moment_of_inertiaが両者の和になっていることをご確認ください。結果が重心値より小さくないことも簡単な妥当性確認になります。また、dは物体上の任意点からの距離ではなく、平行な2本の軸線間の最短距離です。この定理は慣性テンソルを回転させず、角度を持つ軸には適用できません。複合物体では、各部品の質量と重心慣性モーメントで定理を適用し、共通の対象軸について移した値を合計してください。
活用例
偏心して回転する部品の設計
トルクと角加速度を見積もる前に、既知の重心慣性モーメントを平行な軸へ移します。
物理振り子の解析
重心慣性モーメント、全質量、重心のずれから支点まわりの慣性モーメントを求めます。
構造断面の合成
合成断面を足し合わせる前に、各部材の重心慣性モーメントを共通の平行基準軸へ移します。
よくある質問
計算機の料金はいくらですか?
APIリクエスト1回の料金は$0.002です。ブラウザー計算は機能ページでご利用いただけます。
どの公式を使用しますか?
I = I_c + md²を使用します。I_cは重心慣性モーメント、mは質量、dは平行軸間の垂直距離です。
移動後の慣性モーメントが重心値より小さくなることはありますか?
ありません。非負の質量と実数の距離ではmd²が非負なので、移動後の値はI_c以上です。
キログラム、グラム、メートル、センチメートルを混在できますか?
事前に換算しない限り混在できません。I_c、md²、結果の単位がそろう単位系をご使用ください。
角度を持って交差する軸にも使えますか?
使えません。軸は平行である必要があります。異なる向きには座標変換またはテンソル変換が必要です。
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/mech/parallel-axis-theorem \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"centroidal_inertia":2.5,"mass":3,"distance":0.4}'const res = await fetch("https://api.kit.forhosting.com/mech/parallel-axis-theorem", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"centroidal_inertia": 2.5,
"mass": 3,
"distance": 0.4
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/mech/parallel-axis-theorem",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"centroidal_inertia": 2.5,
"mass": 3,
"distance": 0.4
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/mech/parallel-axis-theorem", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"centroidal_inertia":2.5,"mass":3,"distance":0.4}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"centroidal_inertia":2.5,"mass":3,"distance":0.4}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/mech/parallel-axis-theorem", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"centroidal_inertia": 2.5,
"mass": 3,
"distance": 0.4
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "mech.parallel_axis_theorem",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |