Graham's Law of Effusion Calculator
.effusion-calculator-container {
max-width: 800px;
margin: 0 auto;
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
line-height: 1.6;
color: #333;
padding: 20px;
background: #f9fbfd;
border-radius: 8px;
box-shadow: 0 4px 15px rgba(0,0,0,0.05);
}
.effusion-header {
text-align: center;
margin-bottom: 30px;
border-bottom: 2px solid #0056b3;
padding-bottom: 15px;
}
.effusion-header h2 {
color: #0056b3;
margin: 0;
font-size: 28px;
}
.calc-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 20px;
background: #ffffff;
padding: 25px;
border-radius: 8px;
border: 1px solid #e1e4e8;
}
.input-group {
display: flex;
flex-direction: column;
}
.input-group label {
font-weight: 600;
margin-bottom: 8px;
color: #4a5568;
font-size: 14px;
}
.input-group input {
padding: 12px;
border: 1px solid #cbd5e0;
border-radius: 6px;
font-size: 16px;
transition: border-color 0.2s;
}
.input-group input:focus {
border-color: #0056b3;
outline: none;
box-shadow: 0 0 0 3px rgba(0,86,179,0.1);
}
.input-group .unit {
font-size: 12px;
color: #718096;
margin-top: 4px;
}
.calc-controls {
grid-column: 1 / -1;
text-align: center;
margin-top: 10px;
}
.calc-btn {
background-color: #0056b3;
color: white;
border: none;
padding: 15px 40px;
font-size: 18px;
font-weight: bold;
border-radius: 6px;
cursor: pointer;
transition: background-color 0.2s;
}
.calc-btn:hover {
background-color: #004494;
}
.calc-instruction {
grid-column: 1 / -1;
background-color: #e6fffa;
color: #2c7a7b;
padding: 10px;
border-radius: 6px;
text-align: center;
font-size: 14px;
border: 1px solid #b2f5ea;
}
#effusion-result {
grid-column: 1 / -1;
margin-top: 20px;
display: none;
background-color: #ebf8ff;
border-left: 5px solid #0056b3;
padding: 20px;
}
.result-value {
font-size: 24px;
font-weight: bold;
color: #2b6cb0;
margin-bottom: 10px;
}
.result-steps {
font-size: 15px;
color: #4a5568;
border-top: 1px solid #bee3f8;
padding-top: 10px;
margin-top: 10px;
}
.content-section {
margin-top: 40px;
background: #fff;
padding: 30px;
border-radius: 8px;
border: 1px solid #e1e4e8;
}
.content-section h3 {
color: #2d3748;
border-bottom: 1px solid #edf2f7;
padding-bottom: 10px;
margin-top: 30px;
}
.content-section p, .content-section li {
color: #4a5568;
margin-bottom: 15px;
}
.formula-box {
background: #f7fafc;
padding: 15px;
border-radius: 5px;
font-family: 'Courier New', monospace;
text-align: center;
font-weight: bold;
margin: 20px 0;
border: 1px solid #cbd5e0;
}
@media (max-width: 600px) {
.calc-grid {
grid-template-columns: 1fr;
}
}
Enter exactly 3 known values to calculate the remaining unknown variable. Leave the field you want to find empty.
Rate of Gas A (r1 )
m/s, mol/s, or mL/s
Molar Mass of Gas A (M1 )
g/mol
Rate of Gas B (r2 )
m/s, mol/s, or mL/s
Molar Mass of Gas B (M2 )
g/mol
Calculate Unknown
Reset
How to Calculate Rate of Effusion
The rate at which a gas escapes through a tiny pinhole into a vacuum is known as effusion. This physical property is governed by Graham's Law of Effusion , which states that the rate of effusion of a gas is inversely proportional to the square root of its molar mass.
r₁ / r₂ = √(M₂ / M₁)
Where:
r₁ = Rate of effusion for Gas A
r₂ = Rate of effusion for Gas B
M₁ = Molar mass of Gas A (g/mol)
M₂ = Molar mass of Gas B (g/mol)
Understanding the Physics
Lighter gas molecules move faster than heavier ones at the same temperature and pressure. Because kinetic energy depends on both mass and velocity (KE = ½mv²), if two gases have the same average kinetic energy (same temperature), the gas with the smaller mass (m) must have a higher velocity (v).
This means a light gas like Helium (4.00 g/mol) will effuse much faster than a heavy gas like Sulfur Hexafluoride (146.06 g/mol).
Example Calculation
Let's say you want to compare the rate of Hydrogen gas (H₂, 2.02 g/mol) to Oxygen gas (O₂, 32.00 g/mol). If Oxygen effuses at 5 mL/s, how fast will Hydrogen effuse?
Identify knowns: M₁ (H₂) = 2.02, M₂ (O₂) = 32.00, r₂ (O₂) = 5.
Set up the ratio: r₁ / 5 = √(32.00 / 2.02).
Calculate the mass ratio: 32.00 / 2.02 ≈ 15.84.
Take the square root: √15.84 ≈ 3.98.
Solve for r₁: r₁ = 5 * 3.98 = 19.9 mL/s.
Hydrogen effuses approximately 4 times faster than Oxygen because it is roughly 16 times lighter.
Common Applications
This calculation is vital in various fields, including:
Isotope Separation: Enriching uranium for nuclear fuel relies on the slight difference in effusion rates between U-235 and U-238.
Industrial Chemistry: determining molecular weights of unknown gases.
Safety Engineering: Estimating how quickly a gas leak might spread in a confined space.
function calculateEffusion() {
var r1Input = document.getElementById('rate1').value;
var m1Input = document.getElementById('mass1').value;
var r2Input = document.getElementById('rate2').value;
var m2Input = document.getElementById('mass2').value;
var resultDiv = document.getElementById('effusion-result');
resultDiv.style.display = 'block';
resultDiv.style.color = '#333';
resultDiv.style.backgroundColor = '#ebf8ff';
resultDiv.style.borderColor = '#0056b3';
// Parse values, keeping track of which are provided
var r1 = r1Input === "" ? null : parseFloat(r1Input);
var m1 = m1Input === "" ? null : parseFloat(m1Input);
var r2 = r2Input === "" ? null : parseFloat(r2Input);
var m2 = m2Input === "" ? null : parseFloat(m2Input);
// Count nulls to ensure exactly one is missing
var inputs = [r1, m1, r2, m2];
var missingCount = 0;
for(var i = 0; i < inputs.length; i++) {
if(inputs[i] === null) missingCount++;
}
if (missingCount !== 1) {
resultDiv.innerHTML = "
Error: Please enter exactly 3 values and leave 1 empty to calculate.";
resultDiv.style.backgroundColor = '#fff5f5';
resultDiv.style.borderColor = '#c53030';
return;
}
// Validate positive numbers
if ((r1 !== null && r1 <= 0) || (m1 !== null && m1 <= 0) || (r2 !== null && r2 <= 0) || (m2 !== null && m2 <= 0)) {
resultDiv.innerHTML = "
Error: Rates and Molar Masses must be positive numbers greater than zero.";
resultDiv.style.backgroundColor = '#fff5f5';
resultDiv.style.borderColor = '#c53030';
return;
}
var resultValue = 0;
var resultText = "";
var formulaStep = "";
// Calculation Logic based on Graham's Law: r1/r2 = sqrt(m2/m1)
// Case 1: Find r1
if (r1 === null) {
// r1 = r2 * sqrt(m2/m1)
var ratio = Math.sqrt(m2 / m1);
resultValue = r2 * ratio;
resultText = "Rate of Gas A (r₁)";
formulaStep = "r₁ = " + r2 + " × √(" + m2 + " / " + m1 + ")r₁ = " + r2 + " × " + ratio.toFixed(4);
}
// Case 2: Find r2
else if (r2 === null) {
// r2 = r1 / sqrt(m2/m1)
var ratio = Math.sqrt(m2 / m1);
resultValue = r1 / ratio;
resultText = "Rate of Gas B (r₂)";
formulaStep = "r₂ = " + r1 + " / √(" + m2 + " / " + m1 + ")r₂ = " + r1 + " / " + ratio.toFixed(4);
}
// Case 3: Find m1
else if (m1 === null) {
// r1/r2 = sqrt(m2/m1) -> (r1/r2)^2 = m2/m1 -> m1 = m2 / (r1/r2)^2
var rateRatio = r1 / r2;
var rateRatioSq = Math.pow(rateRatio, 2);
resultValue = m2 / rateRatioSq;
resultText = "Molar Mass of Gas A (M₁)";
formulaStep = "M₁ = " + m2 + " / (" + r1 + " / " + r2 + ")²M₁ = " + m2 + " / " + rateRatio.toFixed(4) + "²";
}
// Case 4: Find m2
else if (m2 === null) {
// r1/r2 = sqrt(m2/m1) -> (r1/r2)^2 = m2/m1 -> m2 = m1 * (r1/r2)^2
var rateRatio = r1 / r2;
var rateRatioSq = Math.pow(rateRatio, 2);
resultValue = m1 * rateRatioSq;
resultText = "Molar Mass of Gas B (M₂)";
formulaStep = "M₂ = " + m1 + " × (" + r1 + " / " + r2 + ")²M₂ = " + m1 + " × " + rateRatio.toFixed(4) + "²";
}
// Display Output
resultDiv.innerHTML =
"
Result: " + resultValue.toFixed(4) + "
" +
"
Variable Found: " + resultText + "
" +
"
" +
"Calculation Steps: " +
"Using Graham's Law: r₁/r₂ = √(M₂/M₁)" +
formulaStep + "" +
"Final Answer: " + resultValue.toFixed(4) +
"
";
}
function resetEffusion() {
document.getElementById('rate1').value = ";
document.getElementById('mass1').value = ";
document.getElementById('rate2').value = ";
document.getElementById('mass2').value = ";
document.getElementById('effusion-result').style.display = 'none';
}