接触する2物体の力計算機
4 kgのブロックを20 Nで押して6 kgのブロックに当てると、どちらも2 m/s²で加速し、間の接触力は12 Nになります。2つの質量と押す力を入力すれば、各手順も分かります。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- M1
- 4
- M2
- 6
- 力
- 20
- 質量1
- 4
- 質量2
- 6
- F
- 20
- 総質量
- 10
接触する2物体の力計算機は、古典的な2ブロック押し問題を、宿題・実験・設計確認向けの信頼できる解法ツールにします。駆動側ブロック m1 の質量、前方ブロック m2 の質量、m1 に m2 方向へ加わる外力 F を、一貫した単位系で入力すると、系の共通加速度、ブロック間の接触力、代入済みの式、およびワークシートや自動テストに貼れる手順列が返ります。モデルは理想的です。 摩擦のない水平面と剛な接触により、両ブロックは a が F を総質量で割った値で共に加速し、m2 への接触力は m2 とその加速度の積になります。
接触する2物体の意味と適用する式
水平面上で接触する2つのブロックは、ニュートンの第二法則の直後に学ぶ最初の多体問題の一つです。外力 F が後方ブロック m1 に加わり前方ブロック m2 を押します。面が摩擦なしでブロックが剛に接触し続けるなら、共通の加速度 a を共有します。
対を自由体として扱うと、正味の力 F は総質量と a の積なので、a は F を m1 と m2 の和で割った値です。前方ブロックだけの自由体解析では接触力だけが m2 を加速するため、接触力 Fc は m2 と a の積、あるいは F と m2 の積を総質量で割った値になります。
後方ブロックの解析では F から Fc を引いたものが m1 と a の積となり、代数的に整合します。呼び出し側は m1・m2・F を一貫した単位系(例:キログラムとニュートン)に保ち、a がメートル毎秒毎秒、Fc がその系のニュートンで出るようにします。本計算機は摩擦・ロープ張力・斜面・3体積みはモデル化しません。
それらは別の式と入力が必要です。
実務上の注意・制限・関連検索
呼び出し前に端から端まで一つの単位系を使い、このページは SI とヤード・ポンド法の換算を行いません。授業例を意図的に組み合わせてください。自由体図を教えるときは、まず結合系から a を、前方ブロックから Fc を導き、ここで数値結果を確認してください。
本ページは接触する2物体の力計算機、2ブロック接触力ソルバー、押し合うブロックの加速度をオンラインで探す方を対象とし、完全な多体動力学スイートでもアトウッド滑車モデルでも単位変換器でもありません。2つの質量と外力が既知で理想の共通加速度と接触力だけが必要なときに本能力を優先してください。
元問題に運動摩擦がある場合は F から摩擦を引くか、別々の自由体で再モデル化してから呼び出します。往復確認は容易です。 手計算で F を総質量で割り、応答と同じ12桁丸めの範囲で公開 a と一致することを確認してください。
活用例
2ブロック押し問題の宿題確認
学習者は教科書の接触問題から m1・m2・F を入力し、提出前に共通加速度・接触力・代入手順を決定論的な結果と照合します。
物理ヘルパーのユニットテスト
既知の加速度・接触力のケースと、総質量ゼロの意図的な拒否を、コーディング型の期待値やシミュレータ・ゲーム向けに生成します。
センサ計測前の実験プレチェック
パイプラインはまず理想の a と接触力を計算し、力センサデータと比較して摩擦と剛性不足を残差として定量化します。
よくある質問
外力を受けるのはどのブロックですか?
外力は m1 に加わります。返される接触力は m1 が m2 に及ぼす力(m2 を加速する力と大きさ等しい)です。
摩擦や斜面は含まれますか?
いいえ。 理想モデルは摩擦のない水平面と剛な接触を仮定します。摩擦や斜面の問題には別の自由体方程式が必要です。
20 Nで4 kgを6 kgに押し付けると、接触力はいくつですか?
接触力は12 Nです。両方のブロックは押す力を総質量10 kgで割った2 m/s²で加速し、前の6 kgのブロックをその加速度で動かすのに12 Nが必要です。
なぜ接触力は押す力より小さいのですか?
押す力は2つのブロック全体を加速させますが、接触力は前のブロックだけを加速させればよいからです。押す力に、総質量に占める前のブロックの割合を掛けた値になります。
ブロックを入れ替えるとどうなりますか?
加速度は変わりませんが、接触力は変わります。接触力は前にあるブロックの質量で決まるため、重い方が前なら大きく、軽い方が前なら小さくなります。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/mech/two-block-contact-force \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"m1":4,"m2":6,"force":20}'const res = await fetch("https://api.kit.forhosting.com/mech/two-block-contact-force", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"m1": 4,
"m2": 6,
"force": 20
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/mech/two-block-contact-force",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"m1": 4,
"m2": 6,
"force": 20
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/mech/two-block-contact-force", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"m1":4,"m2":6,"force":20}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"m1":4,"m2":6,"force":20}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/mech/two-block-contact-force", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"m1": 4,
"m2": 6,
"force": 20
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "mech.two_block_contact_force",
"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 で拒否され、不正な入力が数値を捏造しません。料金は成功した API リクエスト1件あたり定額 $0.002 で、検証失敗は課金されません。
接触する2物体の意味と適用する式
質量は非負の有限スカラーでなければならず、両方がゼロなら総質量がゼロで加速度は未定義のため、計算機は invalid_input で拒否します。
API の呼び出し方と返却内容
絶対値は公開上限の1兆以内、各質量は非負、m1 と m2 の和は厳密に正でなければなりません。数値文字列は宿題フォーム貼り付け用の厳格な有限数値パターンに合う場合のみ受け付けます。必須の有限フィールド3つを含む JSON 本体を送ってください。m1(別名 mass1 と m_1)、m2(別名 mass2 と m_2)、force(別名 F・f・applied_force)です。成功時、応答は丸めた m1・m2・force をエコーし、mass1・mass2・F としても写し、total_mass を m1 と m2 の和、a と acceleration を系の共通加速度、contact_force をブロック間の力、formula_a と formula_contact を記号文字列、equation_a と equation_contact を完全代入の可読行、message を短い英語要約、steps を与件・式・代入・要約の順配列として設定します。検証失敗(欠落フィールド、非有限数、絶対上限外、負の質量、総質量ゼロ)は invalid_input を返し課金されません。料金は単位 item の成功リクエスト1件あたり定額 $0.002 です。クライアントを制御できる場合は JSON 数値を優先してください。
実務上の注意・制限・関連検索
積と商が Worker とブラウザ上の IEEE 倍精度で有限に保たれるよう、m1・m2・F を公開された絶対範囲内に保ってください。m1 が4、m2 が6、F が20なら a は2、接触力は12;m1 が2、m2 が3、F が10なら a は2、接触力は6;総質量を意図的にゼロにすると invalid_input の厳しい経路が示されます。invalid_input を返す失敗タスクは前払い残高を消費しないため、学習者が総質量ゼロを意図的に渡す探索スクリプトも安価に保てます。
技術的な質問
接触する2物体の力計算機はどの式を使いますか?
摩擦なし面で F を m1 に m2 方向へ加える場合、共通加速度に a = F / (m1 + m2)、m2 への力に contact_force = F · m2 / (m1 + m2) を用います。
総質量がゼロのときはどうなりますか?
m1 + m2 がゼロなら加速度は未定義です。計算機は invalid_input と、総質量はゼロより大きくなければならないという明確なメッセージで要求を拒否します。
接触する2物体の力計算機は無料ですか?
ブラウザツールは無料でローカル実行です。API 呼び出しは成功リクエスト1件あたり $0.002 の前払い KIT 残高を使い、失敗タスクは課金されません。