皆さん、こんなニュースを見たことはありませんか?「マンション不同沈下で住民避難」「造成地で地盤沈下、住宅に傾き」。「え、まさか自分の家も…?」 そう思った方、多いんじゃないでしょうか。
実は、すべての建物は「沈む」ことを前提に設計されているんです。問題は「均一に沈むか」「どれだけの時間をかけて沈むか」。今日は、地盤工学の巨人・テルツァーギの公式を使って、基礎沈下の計算をゼロから実装してみましょう。
ざっくり本質——「土の種類で沈み方が180度変わる」
建物の重さで地面が沈む——これを「沈下」と呼びます。でも、土の種類によってその振る舞いがまったく違うんです。
砂質土(砂浜のような地盤)
- 荷重をかけた瞬間に「ドスン」と沈む
- その後はほとんど動かない
- 透水性が高いから、水がすぐ逃げる
粘性土(粘土のような地盤)
- 最初はあまり沈まない
- でも何年もかけてジワジワ沈む
- 水が抜けるのに時間がかかる(圧密現象)
「砂は即座に沈み、粘土はじわじわ沈む」——これが地盤沈下の本質です。
数式で理解する——テルツァーギの極限支持力
まず、地盤が壊れる限界の力=極限支持力 ( q_u ) を計算します。テルツァーギの公式はこうです:
q_u = c N_c + \gamma D_f N_q + 0.5 \gamma B N_\gamma
各項の意味を日本語で:
| 項 | 意味 | 単位 |
|---|---|---|
| ( c N_c ) | 粘着力による抵抗(土がくっつく力) | kN/m² |
| ( \gamma D_f N_q ) | 根入れ効果(埋まった分の重さで押さえる) | kN/m² |
| ( 0.5 \gamma B N_\gamma ) | 基礎幅による抵抗(幅が広いほど強い) | kN/m² |
ここで、( N_c, N_q, N_\gamma ) は支持力係数と呼ばれ、内部摩擦角 ( \phi ) から決まる値です。例えば:
N_q = e^{\pi \tan \phi} \tan^2\left(45^\circ + \frac{\phi}{2}\right)
N_c = (N_q - 1) \cot \phi
N_\gamma = 2(N_q + 1) \tan \phi
次に、安全率 ( F_s ) は:
F_s = \frac{q_u}{q}
ここで ( q ) は実際に基礎にかかる荷重(kN/m²)。安全率3.0なら、壊れる力の1/3しか使わないという意味です。
コードで実装する——JavaScriptでテルツァーギ式を再現
ここが一番大事!このツールの核心部分を、実際に動くJavaScriptコードで実装してみましょう。
/**
* テルツァーギの極限支持力・安全率を計算する
* @param {string} soilType - 'sand' または 'clay'
* @param {number} B - 基礎幅 (m)
* @param {number} Df - 根入れ深さ (m)
* @param {number} gamma - 土の単位体積重量 (kN/m³)
* @param {number} N - N値 (標準貫入試験)
* @param {number} q - 作用荷重 (kN/m²)
* @returns {object} 計算結果
*/
function calculateBearingCapacity(soilType, B, Df, gamma, N, q) {
// 1. 内部摩擦角 φ と粘着力 c を N値から推定
let phi, c;
if (soilType === 'sand') {
// 砂質土: N値からφを推定(大崎の式)
phi = Math.sqrt(20 * N) + 15; // 度
c = 0; // 砂は粘着力なし
} else { // clay
// 粘性土: N値からcを推定(一軸圧縮強さqu = 12.5 * N)
phi = 0; // 粘土はφ≒0
c = 12.5 * N / 2; // 粘着力 c = qu/2 (kN/m²)
}
// 2. ラジアン変換
const phiRad = phi * Math.PI / 180;
// 3. 支持力係数の計算
const Nq = Math.exp(Math.PI * Math.tan(phiRad)) *
Math.pow(Math.tan(45 * Math.PI / 180 + phiRad / 2), 2);
const Nc = (Nq - 1) / Math.tan(phiRad); // φ=0で発散するので注意
const Ngamma = 2 * (Nq + 1) * Math.tan(phiRad);
// 4. 極限支持力 (kN/m²)
let qu;
if (soilType === 'clay' && phi === 0) {
// φ=0の特殊ケース: qu = c * Nc (Nc=5.14)
qu = c * 5.14 + gamma * Df; // 根入れ効果は残す
} else {
qu = c * Nc + gamma * Df * Nq + 0.5 * gamma * B * Ngamma;
}
// 5. 安全率
const Fs = qu / q;
return {
phi: phi,
c: c,
Nc: Nc,
Nq: Nq,
Ngamma: Ngamma,
qu: qu,
Fs: Fs,
isSafe: Fs >= 2.5 // 実務の目安
};
}
// 使用例:砂質土、B=2m, Df=1m, γ=18kN/m³, N=15, 荷重200kN/m²
const result = calculateBearingCapacity('sand', 2, 1, 18, 15, 200);
console.log('内部摩擦角 φ =', result.phi.toFixed(1), '°');
console.log('極限支持力 qu =', result.qu.toFixed(1), 'kN/m²');
console.log('安全率 Fs =', result.Fs.toFixed(2));
console.log('判定:', result.isSafe ? '✅ 安全' : '❌ 再検討必要');
実行結果の例:
内部摩擦角 φ = 32.3 °
極限支持力 qu = 1084.2 kN/m²
安全率 Fs = 5.42
判定: ✅ 安全
数値例で確かめる——実際の値で計算してみる
ある戸建て住宅の基礎を設計するとしましょう。
条件:
- 土質:砂質土(N値 = 10)
- 基礎幅 B = 1.5 m
- 根入れ深さ Df = 0.8 m
- 土の単位体積重量 γ = 18 kN/m³
- 建物からの荷重 q = 150 kN/m²
ステップ1:内部摩擦角の推定
\phi = \sqrt{20 \times 10} + 15 = \sqrt{200} + 15 \approx 29.1^\circ
ステップ2:支持力係数
N_q = e^{\pi \tan 29.1^\circ} \tan^2(45^\circ + 14.55^\circ) \approx 16.4
N_\gamma = 2(16.4 + 1) \tan 29.1^\circ \approx 19.4
(砂質土なので c=0、Ncは不要)
ステップ3:極限支持力
q_u = 0 + 18 \times 0.8 \times 16.4 + 0.5 \times 18 \times 1.5 \times 19.4
= 236.2 + 261.9 = 498.1 \text{ kN/m}^2
ステップ4:安全率
F_s = \frac{498.1}{150} = 3.32
判定: 安全率3.32 > 2.5 → ✅ 安全です!
シミュレーターで遊ぶ——パラメータを動かして実験
実際に 基礎沈下計算ツール を開いて、以下の実験を試してみてください。
実験1:基礎幅を変えるとどうなる?
- 砂質土、N値=15、Df=1m、荷重200kN/m²
- B=1m → B=3m に変更
結果: 基礎幅が大きくなると極限支持力は増加します(幅の項が効く)。でも、沈下量も増えるんです!なぜなら、荷重がより深く広い範囲に伝わるから。これが「幅を広げれば安心」とは限らない理由です。
実験2:砂質土 vs 粘性土の沈下曲線
- 同じN値=10、B=2m、Df=1m、荷重150kN/m²
- 土質を切り替えてグラフを比較
砂質土: グラフが急に立ち上がり、すぐに収束。即時沈下が支配的。
粘性土: 時間とともにジワジワ沈下が進行。圧密沈下が長期に続く。
実験3:安全率を1.0以下にしてみる
- 粘性土、N値=3(非常に軟弱)、B=1m、荷重300kN/m²
- すると…安全率が1.0を切る!
結果: 極限支持力より大きな荷重をかけている状態。地盤が壊れる可能性があります。現実では、不同沈下や建物の傾きが発生する危険な状態です。
現場でハマるポイント——知らないと痛い目を見る3つの罠
罠1:「安全率が大きければ大きいほど良い」は大間違い
安全率10.0の基礎を設計すると、コストが2〜3倍になることも。実務では2.5〜3.0を目標に、経済性と安全性のバランスを取ります。過剰設計は「安全」ではなく「無駄」です。
罠2:単位を間違えると全計算が無意味に
現場のデータは「tf/m³」や「g/cm³」で来ることがよくあります。例えば、γ=1.8 tf/m³ をそのまま入力すると、正しい値(18 kN/m³)の1/10になってしまいます。入力前に単位換算を必ず確認!
罠3:この計算は「均質な地盤」と「中心荷重」が前提
実際の地盤は層状だったり、建物の片側だけ重かったりします。このツールの結果は第一近似。複雑な条件(傾斜地、不同沈下、偏心荷重)では、専門のソフトウェアや地盤調査会社の検討が必要です。
まとめ——今日から使える3つの知識
- 砂は即座に沈み、粘土はじわじわ沈む——土質によって沈下メカニズムが根本的に違う
- 安全率2.5〜3.0が実務の目安——小さすぎず大きすぎず、経済性とのバランスが重要
- テルツァーギ式はたった3項で地盤の限界を評価できる——粘着力・根入れ・幅の効果を同時に考慮
そして何より、実際にパラメータを動かして「なぜそうなるか」を体感するのが一番の近道です。
▶ 基礎沈下計算ツール — ブラウザで即動作、登録不要
NovaSolverでは700以上の工学シミュレーターを無料公開中 👉 一覧はこちら
「地盤は見えないからこそ、数式で透視する」。これが技術者の基本姿勢です。今日学んだ知識を、ぜひ実際の設計検討に活かしてみてください。