2次元主応力計算機
垂直応力が80と20、せん断応力が30なら、主応力は中心50の両側に並び、大きいほうの向きはx軸から22.5°です。要素を回したときの応力の極値と面内最大せん断応力を、三つの成分から一度に求めます。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- x方向応力 (σx)
- 80
- y方向応力 (σy)
- 20
- Tau xy
- 30
- 主応力1 (σ1)
- 92.4264068712
- 主応力2 (σ2)
- 7.5735931288
- τ 最大
- 42.4264068712
- 平均応力 σ
- 50
平面応力解析は一見単純な問いを立てます。ある点の面内成分 σx, σy, τxy が与えられたとき、検査要素を回転させるとどのような極値の垂直応力と最大の面内せん断が現れるか、という問いです。その極値は主応力 σ1 と σ2、およびモール円の半径 τmax です。応力変換の宿題を検算する学生、ひずみゲージロゼットを読む構造・機械技術者、二次元応力状態を許容値と比較する機械設計者は、いずれもモール円か、同じ幾何を表す閉じた平方根の恒等式に頼ります。この二次元主応力計算機は三つの有限な平面応力成分を受け取り、それらの恒等式を適用し、二つの主応力、最大面内せん断、円の中心と半径、および x 軸から代数的に大きい主方向までの角を返します。
平面応力要素についてモール円が示すもの
平面応力下の材料点は三つの面内成分で記述されます。検査要素を回転させると、これら三つの数は固定されません。ある向きではせん断が消え、残る垂直応力が極値を取ります。
同じ幾何は円を描かずに書けます。恒等式は二次元の平面応力、または平面ひずみ問題の面内部を仮定し、三次元テンソルの第三主応力は求めず、von Mises や Tresca の降伏判定も単位換算も行いません。返される主応力とせん断も同じ単位になります。
せん断の符号を反転すると主方向の角は変わりますが、二つの主応力の大きさは変わりません。せん断は半径へ二乗でのみ入るためです。
実務での使い方、制限、料金、F/A および My/I との違い
応力変換の宿題の採点、ひずみを応力に直したあとのゲージロゼットの整理、自由表面での有限要素照会の確認、モール円の半径が平均からの偏差であると同時に最大面内せん断であること教えるときなど、すぐに主応力を確かめたい場合はブラウザツールを使ってください。単位を一貫させ、公開された大きさの範囲内に留め、中間積が有限であるようにしてください。
言語モデルも外部構造解析サービスも乱数もないため、継続的インテグレーションや再現可能な教材に安全に固定できます。このページは力と面積だけが分かるときの単軸応力 σ=F/A 計算機ではなく、別ツールです。平均せん断 τ=F/A 計算機でも、曲げ応力 σ=M y/I 計算機でも、はり横せん断公式 V Q/I t でもありません。
それらのページは別の恒等式を解き、別の検索意図を捉えます。
活用例
ひずみゲージと FEA の後処理
技術者は二次元応力照会や換算済みロゼット読みを主応力と最大面内せん断に落とし、許容値や別途実行する降伏判定と比較します。
力学テスト向けの決定的フィクスチャ
単体テストや対話的なモール円デモを種付けするパイプラインは、平方根の恒等式を言語ごとに再実装せず、純粋な二次元主応力オラクルを呼び出します。
よくある質問
σx, σy, τxy から二次元主応力をどう求めますか?
σavg は二つの垂直応力の平均、R はモール円半径 sqrt(((σx−σy)/2)² + τxy²) です。
最大面内せん断応力とは何ですか?
モール円の半径 R に等しい値です。二次元要素では最大の面内せん断は二つの主応力の差の半分であり、その半径と同じ数になります。
三次元主応力や降伏判定も解きますか?
いいえ。 この計算機は面内のモール円だけを評価します。σz は受け取らず、第三主応力も報告せず、von Mises や Tresca の相当応力も計算しません。
主応力の角度は何を表していますか?
x軸から、大きいほうの主応力の向きまでの回転角で、その向きではせん断応力がゼロになります。垂直応力80と20、せん断応力30の例では22.5°です。
せん断応力の符号は結果に影響しますか?
主応力の角度は変わりますが、二つの主応力と最大せん断応力の大きさは変わりません。せん断応力は半径に2乗の形でしか入らないためです。正のx面で正のy方向を向くものを正とします。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/eng/principal-stress-2d \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"sigma_x":80,"sigma_y":20,"tau_xy":30}'const res = await fetch("https://api.kit.forhosting.com/eng/principal-stress-2d", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"sigma_x": 80,
"sigma_y": 20,
"tau_xy": 30
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/eng/principal-stress-2d",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"sigma_x": 80,
"sigma_y": 20,
"tau_xy": 30
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/eng/principal-stress-2d", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"sigma_x":80,"sigma_y":20,"tau_xy":30}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"sigma_x":80,"sigma_y":20,"tau_xy":30}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/eng/principal-stress-2d", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"sigma_x": 80,
"sigma_y": 20,
"tau_xy": 30
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "eng.principal_stress_2d",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
平面応力要素についてモール円が示すもの
x 面の垂直応力 sigma_x、y 面の垂直応力 sigma_y、および相補的なせん断 tau_xy です。その極値が主応力 sigma_1(代数的に大きい方)と sigma_2(代数的に小さい方)です。モール円を半周した位置、物理空間では主軸から四十五度の向きで、面内せん断は最大の大きさ tau_max に達します。中心は sigma_x と sigma_y の平均、半径は垂直応力の半差の二乗とせん断の二乗の和の平方根、主応力はその半径を中心に足したものと引いたもの、tau_max はその半径に等しい、という関係です。二次元主応力計算機、モール円、平面応力の主応力、最大面内せん断を探す人は、ロゼット・有限要素の照会・宿題の問題文から既に三成分を持ち、安定した JSON 契約で極値を欲しています。sigma_x、sigma_y、tau_xy はメガパスカル、ポンド毎平方インチ、パスカルなど一つの一貫した応力単位にそろえてください。符号規約は連続体の標準に従い、正の垂直応力は引張、正の tau_xy は正の x 面上で正の y 方向のせん断です。
入力の検証とモールの恒等式の適用方法
二つの垂直応力が等しくせん断がゼロの静水圧または既に主軸の状態では、等しい主応力、ゼロ半径、零度の主方向角を報告します。これらの恒等式にゼロ除算の経路はないため、有限な三つ組は常に定義された結果を返します。単位換算も図の画像も三次元固有値求解も降伏判定の重ね描きもなく、二次元応力要素の純粋なモール円評価のみです。必須の三フィールド sigma_x、sigma_y、tau_xy を含む JSON 本体を送ってください。各フィールドは有限数、または有限数に解釈できる数値文字列でなければなりません。欠落・空文字・非数値テキスト・NaN・Infinity は結果を返す前に即座に invalid_input となり、検証失敗は課金されません。文書化されている場合、sx、sy、txy、stress_x、stress_y、shear_xy、sigmax、sigmay、tau、shear、sigma_xx、sigma_yy、sxx、syy、tauxy などの任意エイリアスも受け付け、フォームやスクリプトが教科書記号を使えるようにします。検証後、エンジンは二つの垂直応力の平均をモール円の中心、半差とせん断のユークリッドノルムを半径、中心に半径を足したものと引いたものを主応力、せん断の二倍を垂直応力差で割った atan2 の半分を度単位の角 theta_p として計算します。この atan2 形は代数的に大きい主応力の向きを余分な分岐なしに選び、得られた倍角を応力変換式に代入すると構成上 sigma_1 が復元されます。大きさの上限は Worker isolate 上で中間積を有限に保つためだけにあります。結果は安定した有効数字十二桁に丸められ、同じ入力は JavaScript エンジン間で常に同じ JSON になります。同じ純粋関数がブラウザと API を駆動し、計算経路にネットワーク・乱数種・壁時計はありません。
実務での使い方、制限、料金、F/A および My/I との違い
スクリプト・授業基盤・ノートブックが一つの契約の下で多数の sigma_x、sigma_y、tau_xy の三つ組に安定した JSON を必要とするときは API を使ってください。成功した各リクエストは $0.002 の課金単位で、検証失敗は残高を消費しません。結果は完全に決定的で、同一入力は常に同じ主応力、同じ tau_max、同じ式・手法ラベルを返します。欠落した sigma_x の拒否など明示的なドメインエラーを好む力学ドリル・コンテスト採点・初期設計シート・前処理にエンドポイントを接続してください。
連携の活用例
宿題・試験の検算
学生と採点者は与えられた平面応力の三つ組から σ1, σ2, τmax を求め、成分の欠落や非有限値に対して明確な invalid_input を受け取ります。
技術的な質問
theta_p_deg は何を意味しますか。
正の x 軸から代数的に大きい主方向 σ1 までの度単位の角で、atan2(2 τxy, σx − σy) の半分として計算します。τxy の符号を反転するとこの角は変わりますが、σ1 と σ2 は変わりません。
二次元主応力計算機の料金はいくらですか。
ブラウザツールは無料です。API リクエストは成功した呼び出しごとに前払い KIT 残高から $0.002 を使い、無効な入力は課金されません。