아레니우스 방정식을 사용하여 두 속도 상수와 온도로부터 활성화 에너지(Ea)를 계산합니다. K, °C, 또는 °F 단위로 값을 입력하면 kJ/mol로 Ea와 아레니우스 플롯을 얻습니다.
서로 다른 온도에서 측정된 속도 상수를 사용하여 화학 반응의 활성화 에너지(Ea)를 계산합니다.
k = A × e^(-Ea/RT)
Ea = R × ln(k₂/k₁) × (1/T₁ - 1/T₂)⁻¹
여기서 R은 기체 상수 (8.314 J/mol·K), k₁과 k₂는 온도 T₁과 T₂에서의 속도 상수입니다 (켈빈).
반응은 가열하면 빨라집니다. 이 도구는 그러한 일상적인 관찰을 숫자로 변환합니다: 두 온도에서 반응이 얼마나 빠르게 진행되는지 측정하면, **활성화 에너지(Ea)**를 알려줍니다. 이는 분자가 반응하기 위해 넘어야 하는 에너지 "언덕"의 크기입니다.
네 개의 값이 필요합니다: 두 개의 속도 상수(k₁, k₂)와 그것들이 측정된 두 온도(T₁, T₂). 켈빈, 섭씨, 또는 화씨 단위로 온도를 입력하면 계산기가 변환해줍니다. 결과는 kJ/mol(화학의 표준 단위)로 나옵니다.
공이 계곡에 앉아 있다고 생각해보세요. 그것을 다음 계곡으로 굴리려면, 먼저 능선을 통해 밀어 올려야 합니다. 활성화 에너지는 그 능선의 높이입니다. 전체적으로 에너지를 방출하는 반응도 시작 결합을 끊기 위해 이러한 초기 추진이 필요합니다.
반응을 가열해도 능선을 낮추지 않습니다. 오히려 더 많은 분자가 그 능선을 넘을 수 있는 에너지를 갖게 되므로, 더 많은 분자가 매초 반응합니다. 이것이 10°C 상승이 반응을 눈에 띄게 빠르게 할 수 있는 이유입니다.
아레니우스 방정식은 속도 상수 k를 온도에 연결합니다:
여기서 A는 전지수 인수, R = 8.314 J/(mol·K)는 기체 상수, T는 켈빈 단위의 절대 온도입니다.
k를 두 온도에서 측정하면 비를 구할 때 미지수 A가 소거됩니다:
이것이 정확히 계산기가 평가하는 것입니다(그리고 kJ/mol로 보고하기 위해 1000으로 나눕니다). 기하학적으로, 이는 아레니우스 플롯에서 ln k 대 1/T의 직선의 기울기입니다: 기울기는 −Ea/R와 같습니다. 이 도구는 당신의 두 점에서 그 플롯을 그립니다.
k₁ = 0.0025 s⁻¹ at 300 K이고 k₂ = 0.035 s⁻¹ at 350 K일 때:
k₂/k₁)은 오류를 증가시킵니다. 1에 가까운 숫자의 로그를 취하고 있기 때문입니다.k₂/k₁을 사용하기 때문에 k의 단위는 소거됩니다. s⁻¹, M⁻¹s⁻¹ 등 뭐든지 상관없습니다. 두 상수가 모두 같은 단위를 사용하고 같은 동력학 분석에서 나왔다면 괜찮습니다.| Ea (kJ/mol) | 해석 | 예시 |
|---|---|---|
| < 40 | 매우 빠름, 낮은 장벽 | 라디칼 반응, 산염기 중화 |
| 40–100 | 실온에서 적당함 | 대부분의 용액상 유기 반응 |
| 100–200 | 느림; 가열 필요 | 디엘스–알더, 에스터 가수분해 |
| > 200 | 강력한 가열 없이 매우 느림 | C–H 활성화, N₂ 고정 |
촉매와 효소는 더 낮은 장벽 경로를 제공함으로써 작동합니다. 예를 들어, 카탈라제는 과산화수소 분해의 장벽을 약 75 kJ/mol에서 약 8 kJ/mol로 낮춥니다. 활성화 에너지는 온도가 아닌 경로의 특성입니다. 가열하면 장벽의 높이가 아니라 장벽을 넘을 분자의 수가 변합니다.
2점 공식은 당신의 점들 사이의 완벽한 아레니우스 행동을 가정합니다. 선형이 아닐 때:
ln k 대 1/T 플롯이 신호입니다. 그러면 2점 값은 고정 장벽이 아니라 유효 평균입니다.k를 측정하고 2점만 사용하지 않고 선형 회귀로 아레니우스 플롯의 기울기를 맞춥니다.핵심은 한 줄의 산술입니다. 순서대로 Excel → Python → JavaScript → Java → C# → C++ → Go → Rust → PHP → Ruby → R.
1' Cells: A1=k1, A2=T1(K), A3=k2, A4=T2(K); result in kJ/mol
2=8.314*LN(A3/A1)/((1/A2)-(1/A4))/1000
31import math
2
3def activation_energy(k1, T1, k2, T2):
4 """Ea in kJ/mol from two rate constants at Kelvin temperatures T1, T2."""
5 return 8.314 * math.log(k2 / k1) / (1 / T1 - 1 / T2) / 1000
6
7print(f"{activation_energy(0.0025, 300, 0.035, 350):.2f} kJ/mol")
81function activationEnergy(k1, T1, k2, T2) {
2 // Ea in kJ/mol; T1, T2 in Kelvin
3 return (8.314 * Math.log(k2 / k1)) / (1 / T1 - 1 / T2) / 1000;
4}
5
6console.log(activationEnergy(0.0025, 300, 0.035, 350).toFixed(2), "kJ/mol");
71public class ActivationEnergy {
2 static double ea(double k1, double T1, double k2, double T2) {
3 return 8.314 * Math.log(k2 / k1) / (1 / T1 - 1 / T2) / 1000; // kJ/mol
4 }
5
6 public static void main(String[] args) {
7 System.out.printf("%.2f kJ/mol%n", ea(0.0025, 300, 0.035, 350));
8 }
9}
101using System;
2
3class ActivationEnergy {
4 static double Ea(double k1, double T1, double k2, double T2) =>
5 8.314 * Math.Log(k2 / k1) / (1 / T1 - 1 / T2) / 1000; // kJ/mol
6
7 static void Main() =>
8 Console.WriteLine($"{Ea(0.0025, 300, 0.035, 350):F2} kJ/mol");
9}
101#include <cmath>
2#include <cstdio>
3
4double ea(double k1, double T1, double k2, double T2) {
5 return 8.314 * std::log(k2 / k1) / (1 / T1 - 1 / T2) / 1000; // kJ/mol
6}
7
8int main() {
9 std::printf("%.2f kJ/mol\n", ea(0.0025, 300, 0.035, 350));
10}
111package main
2
3import (
4 "fmt"
5 "math"
6)
7
8func ea(k1, T1, k2, T2 float64) float64 {
9 return 8.314 * math.Log(k2/k1) / (1/T1 - 1/T2) / 1000 // kJ/mol
10}
11
12func main() {
13 fmt.Printf("%.2f kJ/mol\n", ea(0.0025, 300, 0.035, 350))
14}
151fn ea(k1: f64, t1: f64, k2: f64, t2: f64) -> f64 {
2 8.314 * (k2 / k1).ln() / (1.0 / t1 - 1.0 / t2) / 1000.0 // kJ/mol
3}
4
5fn main() {
6 println!("{:.2} kJ/mol", ea(0.0025, 300.0, 0.035, 350.0));
7}
81<?php
2function ea($k1, $T1, $k2, $T2) {
3 return 8.314 * log($k2 / $k1) / (1 / $T1 - 1 / $T2) / 1000; // kJ/mol
4}
5
6printf("%.2f kJ/mol\n", ea(0.0025, 300, 0.035, 350));
71def ea(k1, t1, k2, t2)
2 8.314 * Math.log(k2 / k1) / (1.0 / t1 - 1.0 / t2) / 1000 # kJ/mol
3end
4
5puts format("%.2f kJ/mol", ea(0.0025, 300, 0.035, 350))
61ea <- function(k1, T1, k2, T2) {
2 8.314 * log(k2 / k1) / (1 / T1 - 1 / T2) / 1000 # kJ/mol
3}
4
5cat(sprintf("%.2f kJ/mol\n", ea(0.0025, 300, 0.035, 350)))
6온도가 활성화 에너지를 변경합니까? 아니요. Ea는 주어진 경로에 대해 고정되어 있습니다. 온도를 올리면 장벽을 넘는 분자의 분율이 증가하므로 속도가 올라갑니다.
Ea는 ΔH과 어떻게 다릅니까? Ea는 반응하기 위해 넘어야 할 언덕의 높이입니다. ΔH는 반응물에서 생성물로의 고도의 순 변화입니다. 반응은 높은 장벽(큰 Ea)을 가질 수 있지만 시작보다 낮게 끝날 수 있습니다(음의 ΔH, 발열).
왜 두 온도가 필요합니까? 한 번의 측정으로 두 개의 미지수(Ea와 A)를 가진 한 개의 방정식을 제공합니다. 두 번째 측정을 통해 A가 소거되므로 Ea를 직접 풀 수 있습니다.
2점 방법의 정확도는 어느 정도입니까? 선형 아레니우스 행동을 가정하는 적당한 온도 범위에서 일반적으로 5–10% 이내입니다. 더 높은 정밀도를 위해, 4–5개 온도에서 ln k 대 1/T를 맞춥니다.
귀하의 워크플로에 유용할 수 있는 더 많은 도구를 발견하세요.