Calculate Unit Weight of Soil from Specific Gravity

Calculate Unit Weight of Soil from Specific Gravity | Professional Geotechnical Tool :root { –primary-color: #004a99; –primary-dark: #003366; –success-color: #28a745; –text-color: #333333; –bg-color: #f8f9fa; –border-color: #e0e0e0; –white: #ffffff; –error-color: #dc3545; } * { box-sizing: border-box; margin: 0; padding: 0; } body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; line-height: 1.6; color: var(–text-color); background-color: var(–bg-color); } .container { max-width: 960px; margin: 0 auto; padding: 20px; } /* Header Styles */ header { background-color: var(–primary-color); color: var(–white); padding: 40px 0; margin-bottom: 40px; text-align: center; } header h1 { font-size: 2.5rem; margin-bottom: 10px; font-weight: 700; } header p { font-size: 1.1rem; opacity: 0.9; } /* Calculator Styles */ .calculator-wrapper { background: var(–white); border-radius: 8px; box-shadow: 0 4px 6px rgba(0,0,0,0.1); padding: 30px; margin-bottom: 50px; border: 1px solid var(–border-color); } .calc-header { margin-bottom: 25px; padding-bottom: 15px; border-bottom: 2px solid var(–border-color); } .calc-header h2 { color: var(–primary-color); font-size: 1.5rem; } .input-group { margin-bottom: 20px; } .input-group label { display: block; font-weight: 600; margin-bottom: 8px; color: var(–primary-dark); } .input-group input, .input-group select { width: 100%; padding: 12px; border: 1px solid #ccc; border-radius: 4px; font-size: 1rem; transition: border-color 0.3s; } .input-group input:focus, .input-group select:focus { outline: none; border-color: var(–primary-color); box-shadow: 0 0 0 3px rgba(0, 74, 153, 0.1); } .helper-text { display: block; font-size: 0.85rem; color: #666; margin-top: 5px; } .error-msg { color: var(–error-color); font-size: 0.85rem; margin-top: 5px; display: none; } .button-group { display: flex; gap: 15px; margin-top: 25px; } button { padding: 12px 24px; border: none; border-radius: 4px; font-weight: 600; cursor: pointer; font-size: 1rem; transition: background-color 0.2s; } .btn-reset { background-color: #e2e6ea; color: #495057; } .btn-reset:hover { background-color: #dae0e5; } .btn-copy { background-color: var(–primary-color); color: var(–white); flex-grow: 1; } .btn-copy:hover { background-color: var(–primary-dark); } /* Results Styles */ .results-section { background-color: #f1f8ff; padding: 25px; border-radius: 6px; margin-top: 30px; border-left: 5px solid var(–primary-color); } .main-result { text-align: center; margin-bottom: 25px; } .main-result-label { font-size: 1.1rem; color: var(–primary-dark); margin-bottom: 5px; font-weight: 600; } .main-result-value { font-size: 2.5rem; font-weight: 800; color: var(–primary-color); } .intermediate-results { display: grid; gap: 15px; margin-bottom: 20px; } .result-row { display: flex; justify-content: space-between; align-items: center; padding: 10px 0; border-bottom: 1px solid rgba(0,0,0,0.1); } .result-row:last-child { border-bottom: none; } .result-row span:first-child { font-weight: 600; color: #555; } .result-row span:last-child { font-weight: 700; color: var(–text-color); } /* Chart Section */ .chart-container { margin-top: 30px; background: var(–white); padding: 20px; border-radius: 6px; border: 1px solid var(–border-color); text-align: center; } canvas { max-width: 100%; height: auto; } .chart-caption { font-size: 0.9rem; color: #666; margin-top: 10px; font-style: italic; } /* Article Styles */ .article-content { background: var(–white); padding: 40px; border-radius: 8px; box-shadow: 0 2px 4px rgba(0,0,0,0.05); } .article-content h2 { color: var(–primary-color); margin-top: 30px; margin-bottom: 20px; padding-bottom: 10px; border-bottom: 1px solid #eee; } .article-content h3 { color: var(–primary-dark); margin-top: 25px; margin-bottom: 15px; } .article-content p { margin-bottom: 15px; } .article-content ul, .article-content ol { margin-bottom: 20px; margin-left: 25px; } .article-content li { margin-bottom: 8px; } /* Tables */ table { width: 100%; border-collapse: collapse; margin: 25px 0; font-size: 0.95rem; } th, td { padding: 12px 15px; text-align: left; border-bottom: 1px solid #ddd; } th { background-color: var(–primary-color); color: var(–white); font-weight: 600; } tr:nth-child(even) { background-color: #f2f2f2; } /* Related Links */ .related-links { background-color: #e9ecef; padding: 25px; border-radius: 6px; margin-top: 40px; } .related-links h3 { margin-top: 0; } .related-links ul { list-style: none; margin: 0; padding: 0; } .related-links li { margin-bottom: 10px; } .related-links a { color: var(–primary-color); text-decoration: none; font-weight: 600; } .related-links a:hover { text-decoration: underline; } footer { text-align: center; padding: 40px 0; margin-top: 40px; color: #666; font-size: 0.9rem; border-top: 1px solid #ddd; } /* Responsive */ @media (max-width: 600px) { .article-content { padding: 20px; } header h1 { font-size: 1.8rem; } .button-group { flex-direction: column; } }

Calculate Unit Weight of Soil from Specific Gravity

Accurately determine Bulk, Dry, and Saturated Soil Density for Geotechnical Analysis

Soil Unit Weight Calculator

Enter the soil parameters below to compute the unit weights.

SI Units (kN/m³) Imperial Units (lb/ft³) Select the unit system for your project.
Ratio of the mass of soil solids to the mass of water (typically 2.60 – 2.80).
Please enter a valid specific gravity (1.0 – 5.0).
Ratio of volume of voids to volume of solids ($e = V_v / V_s$).
Void ratio must be greater than 0.
Percentage of void space occupied by water (0% = Dry, 100% = Saturated).
Degree of saturation must be between 0 and 100.
Bulk Unit Weight ($\gamma$)
Natural / Moist Unit Weight
Dry Unit Weight ($\gamma_d$)
Saturated Unit Weight ($\gamma_{sat}$)
Water Content ($w$)
Unit Weight of Water used ($\gamma_w$)

Figure 1: Soil Phase Diagram (Volume Relationships)

Comprehensive Guide: Calculate Unit Weight of Soil from Specific Gravity

Understanding the physical properties of soil is the foundation of geotechnical engineering. One of the most critical calculations involves determining the unit weight (or density) of soil based on its fundamental phase relationships. This guide explains how to calculate unit weight of soil from specific gravity, void ratio, and saturation levels.

What is Unit Weight of Soil?

Unit weight, often referred to as weight density, is the weight of a soil sample per unit volume. It is a crucial parameter in geotechnical design, influencing the calculation of earth pressures, bearing capacity of foundations, and slope stability analysis.

Engineers typically deal with three distinct states of unit weight:

  • Dry Unit Weight ($\gamma_d$): The weight of soil solids per unit of total volume when the soil contains no water.
  • Bulk (Moist) Unit Weight ($\gamma$): The total weight of soil (solids + water) per unit of total volume in its natural state.
  • Saturated Unit Weight ($\gamma_{sat}$): The weight of soil per unit volume when all voids are completely filled with water.

This calculator is designed for civil engineers, geologists, and students who need to calculate unit weight of soil from specific gravity quickly and accurately without manual phase diagram derivations.

Formula and Mathematical Explanation

To calculate unit weight of soil from specific gravity, we utilize the fundamental "Three-Phase System" of soil mechanics (Solids, Water, and Air). The relationships are derived from the definitions of Specific Gravity ($G_s$), Void Ratio ($e$), and Degree of Saturation ($S_r$).

Core Formulas

The general formula for Bulk Unit Weight is:

$\gamma = \frac{(G_s + S_r \cdot e) \cdot \gamma_w}{1 + e}$

Where:

Variable Meaning Unit (SI / Imperial) Typical Range
$\gamma$ Bulk Unit Weight kN/m³ / lb/ft³ 14 – 22 / 90 – 140
$G_s$ Specific Gravity Dimensionless 2.60 – 2.80
$e$ Void Ratio Dimensionless 0.3 – 1.2
$S_r$ Degree of Saturation Decimal (0 to 1) 0 – 1.0
$\gamma_w$ Unit Weight of Water 9.81 kN/m³ / 62.4 lb/ft³ Constant

From this general equation, we can derive the specific states:

  • Dry State ($S_r = 0$): $\gamma_d = \frac{G_s \cdot \gamma_w}{1 + e}$
  • Saturated State ($S_r = 1$): $\gamma_{sat} = \frac{(G_s + e) \cdot \gamma_w}{1 + e}$

Practical Examples (Real-World Use Cases)

Example 1: Sandy Soil Analysis (SI Units)

A geotechnical engineer is analyzing a sand layer for a foundation design. Laboratory tests indicate the following properties:

  • Specific Gravity ($G_s$) = 2.65
  • Void Ratio ($e$) = 0.55
  • The soil is 60% saturated ($S_r = 0.60$)

Calculation:

$\gamma = \frac{(2.65 + 0.60 \cdot 0.55) \cdot 9.81}{1 + 0.55}$

$\gamma = \frac{(2.65 + 0.33) \cdot 9.81}{1.55} = \frac{2.98 \cdot 9.81}{1.55} \approx 18.86 \text{ kN/m}^3$

The engineer uses this bulk unit weight to calculate the overburden pressure at depth.

Example 2: Compacted Clay Fill (Imperial Units)

For a road embankment, contractors are compacting clay. The specifications require a check on density.

  • Specific Gravity ($G_s$) = 2.70
  • Void Ratio ($e$) = 0.75
  • The soil is fully saturated due to heavy rain ($S_r = 100\%$ or 1.0)

Using the tool to calculate unit weight of soil from specific gravity:

$\gamma_{sat} = \frac{(2.70 + 0.75) \cdot 62.4}{1 + 0.75} = \frac{3.45 \cdot 62.4}{1.75} \approx 123.0 \text{ lb/ft}^3$

How to Use This Soil Unit Weight Calculator

  1. Select Unit System: Choose between SI (kN/m³) or Imperial (lb/ft³) based on your project requirements.
  2. Input Specific Gravity ($G_s$): Enter the specific gravity of the soil solids. If unknown, 2.65 is a standard assumption for quartz sands.
  3. Input Void Ratio ($e$): Enter the void ratio. If you only have porosity ($n$), convert it first using $e = n / (1 – n)$.
  4. Input Degree of Saturation ($S_r$): Enter the percentage of voids filled with water (0 to 100).
  5. Review Results: The calculator instantly provides the Bulk, Dry, and Saturated unit weights, along with the calculated Gravimetric Water Content ($w$).

Key Factors That Affect Soil Unit Weight Results

When you calculate unit weight of soil from specific gravity, several physical factors influence the final density:

1. Mineralogy (Specific Gravity)

The $G_s$ value depends on the mineral composition. Heavy minerals (like magnetite) increase density, while organic matter significantly lowers it (often $G_s < 2.0$).

2. Compaction Level (Void Ratio)

Compaction reduces the void ratio ($e$), packing particles closer together. A lower void ratio results in a higher unit weight, which is the goal of soil compaction in construction to increase strength.

3. Water Content

Water is heavier than air. As water replaces air in the voids (increasing $S_r$), the bulk unit weight increases until saturation is reached.

4. Soil Texture

Granular soils (sands/gravels) can often be packed to lower void ratios than fine-grained soils (clays/silts), potentially leading to higher dry densities.

5. Organic Content

Organic soils (peat) have very high void ratios and low specific gravities, resulting in very low unit weights, often making them unsuitable for supporting loads.

6. Structure and Cementation

Natural soil structure or artificial cementation can maintain high void ratios (loose structure) while still having stability, affecting the density calculation.

Frequently Asked Questions (FAQ)

1. Can I calculate void ratio if I only have porosity?

Yes. The relationship is $e = n / (1 – n)$. Our tool requires void ratio input, so perform this quick conversion first.

2. What is a typical specific gravity for soil?

For most inorganic soils, $G_s$ ranges from 2.60 to 2.80. Clean sand is often 2.65, while clay might be 2.70 or higher.

3. Why is dry unit weight important?

Dry unit weight is used as a measure of compaction quality. It represents the amount of solid material packed into a volume, independent of water content.

4. How does specific gravity affect the calculation?

Since $G_s$ represents the density of the solid particles themselves, a higher $G_s$ directly scales up the unit weight of the soil mass.

5. What is the difference between bulk and saturated unit weight?

Bulk density is the in-situ weight including whatever water is present. Saturated density is the theoretical maximum weight if all air voids were filled with water.

6. Does this calculator work for rock?

While the physics are similar, rock mechanics often use porosity and bulk density directly. This tool is optimized for particulate soil mechanics.

7. Why do I get a water content result?

Water content ($w$) is mathematically linked to the other variables by $S_r \cdot e = w \cdot G_s$. We display it as a helpful cross-check for your lab data.

8. Can unit weight be greater than the unit weight of concrete?

Rarely for natural soils. Concrete is roughly 24 kN/m³. Most soils top out around 20-22 kN/m³ unless they contain very heavy ore minerals.

© 2023 Geotechnical Tools Inc. All rights reserved.

Disclaimer: This calculator is for educational and preliminary estimation purposes only. Always consult a licensed professional engineer for final design.

// Constants var WATER_UNIT_SI = 9.81; // kN/m^3 var WATER_UNIT_IMP = 62.4; // lb/ft^3 // Main Calculation Function function calculateSoil() { // 1. Get Input Values var unitSystem = document.getElementById('unitSystem').value; var gsStr = document.getElementById('specificGravity').value; var eStr = document.getElementById('voidRatio').value; var srStr = document.getElementById('saturation').value; // 2. Validate Inputs var gs = parseFloat(gsStr); var e = parseFloat(eStr); var sr = parseFloat(srStr); var isValid = true; // Reset errors document.getElementById('gsError').style.display = 'none'; document.getElementById('eError').style.display = 'none'; document.getElementById('srError').style.display = 'none'; if (isNaN(gs) || gs 5.0) { document.getElementById('gsError').style.display = 'block'; isValid = false; } if (isNaN(e) || e <= 0) { document.getElementById('eError').style.display = 'block'; isValid = false; } if (isNaN(sr) || sr 100) { document.getElementById('srError').style.display = 'block'; isValid = false; } if (!isValid) return; // 3. Determine Water Unit Weight var gamma_w = (unitSystem === 'SI') ? WATER_UNIT_SI : WATER_UNIT_IMP; var unitLabel = (unitSystem === 'SI') ? 'kN/m³' : 'lb/ft³'; // 4. Perform Calculations // Saturation as decimal var S = sr / 100.0; // Bulk Unit Weight: gamma = ((Gs + S*e) * gamma_w) / (1 + e) var gamma_bulk = ((gs + (S * e)) * gamma_w) / (1 + e); // Dry Unit Weight: gamma_d = (Gs * gamma_w) / (1 + e) var gamma_dry = (gs * gamma_w) / (1 + e); // Saturated Unit Weight: gamma_sat = ((Gs + e) * gamma_w) / (1 + e) var gamma_sat = ((gs + e) * gamma_w) / (1 + e); // Water Content: w = (S * e) / Gs var w_content = ((S * e) / gs) * 100; // 5. Update UI document.getElementById('resultBulk').innerHTML = gamma_bulk.toFixed(2) + ' ' + unitLabel + ''; document.getElementById('resultDry').innerHTML = gamma_dry.toFixed(2) + ' ' + unitLabel; document.getElementById('resultSat').innerHTML = gamma_sat.toFixed(2) + ' ' + unitLabel; document.getElementById('resultWaterContent').innerText = w_content.toFixed(1) + '%'; document.getElementById('constWaterUnit').innerText = gamma_w + ' ' + unitLabel; // 6. Draw Chart drawPhaseDiagram(e, S); } function drawPhaseDiagram(e, S) { var canvas = document.getElementById('phaseDiagram'); var ctx = canvas.getContext('2d'); var w = canvas.width; var h = canvas.height; // Clear canvas ctx.clearRect(0, 0, w, h); // Calculate volumes for visualization (Total V = 1 + e) // We normalize height to fit canvas with padding // Vs = 1 // Vv = e // Vw = S * e // Va = e * (1 – S) var totalV = 1 + e; var scale = (h – 40) / totalV; // leave 20px padding top/bottom var h_solids = 1 * scale; var h_water = (S * e) * scale; var h_air = (e * (1 – S)) * scale; var startX = 100; var barWidth = 150; var bottomY = h – 20; // Draw Solids (Bottom) ctx.fillStyle = '#8B4513'; // SaddleBrown ctx.fillRect(startX, bottomY – h_solids, barWidth, h_solids); // Label Solids ctx.fillStyle = '#333′; ctx.font = '12px Arial'; ctx.textAlign = 'right'; ctx.fillText('Solids (Vs=1)', startX – 10, bottomY – h_solids / 2 + 4); // Draw Water (Middle) var currentY = bottomY – h_solids; if (h_water > 0) { ctx.fillStyle = '#4682B4'; // SteelBlue ctx.fillRect(startX, currentY – h_water, barWidth, h_water); // Label Water ctx.fillStyle = '#333'; ctx.textAlign = 'right'; if(h_water > 12) ctx.fillText('Water', startX – 10, currentY – h_water / 2 + 4); currentY -= h_water; } // Draw Air (Top) if (h_air > 0) { ctx.fillStyle = '#F0F8FF'; // AliceBlue ctx.strokeStyle = '#999'; ctx.fillRect(startX, currentY – h_air, barWidth, h_air); ctx.strokeRect(startX, currentY – h_air, barWidth, h_air); // Border for air visibility // Label Air ctx.fillStyle = '#333'; ctx.textAlign = 'right'; if(h_air > 12) ctx.fillText('Air', startX – 10, currentY – h_air / 2 + 4); } // Draw container border ctx.strokeStyle = '#000'; ctx.lineWidth = 2; ctx.strokeRect(startX, bottomY – (h_solids + h_water + h_air), barWidth, h_solids + h_water + h_air); // Legend/Info on right ctx.textAlign = 'left'; ctx.font = '14px Arial'; ctx.fillText('Volume Relations:', startX + barWidth + 20, 50); ctx.font = '12px Arial'; ctx.fillText('Voids (e) = ' + e.toFixed(2), startX + barWidth + 20, 75); ctx.fillText('Saturation = ' + (S*100).toFixed(0) + '%', startX + barWidth + 20, 95); } function resetCalculator() { document.getElementById('specificGravity').value = "2.65"; document.getElementById('voidRatio').value = "0.60"; document.getElementById('saturation').value = "50"; document.getElementById('unitSystem').value = "SI"; calculateSoil(); } function copyResults() { var bulk = document.getElementById('resultBulk').innerText; var dry = document.getElementById('resultDry').innerText; var sat = document.getElementById('resultSat').innerText; var gs = document.getElementById('specificGravity').value; var e = document.getElementById('voidRatio').value; var text = "Soil Unit Weight Calculation:\n" + "Inputs: Gs=" + gs + ", e=" + e + "\n" + "Results:\n" + "Bulk Unit Weight: " + bulk + "\n" + "Dry Unit Weight: " + dry + "\n" + "Saturated Unit Weight: " + sat; var tempInput = document.createElement("textarea"); tempInput.value = text; document.body.appendChild(tempInput); tempInput.select(); document.execCommand("copy"); document.body.removeChild(tempInput); var btn = document.querySelector('.btn-copy'); var originalText = btn.innerText; btn.innerText = "Copied!"; setTimeout(function(){ btn.innerText = originalText; }, 2000); } // Initialize on load window.onload = function() { calculateSoil(); };

Leave a Comment