เครื่องคำนวณพลังงานกระตุ้น (สมการ Arrhenius)
คำนวณพลังงานกระตุ้น (Ea) จากค่าคงที่อัตรา สองค่าและอุณหภูมิโดยใช้สมการ Arrhenius ป้อนค่าใน K, °C, หรือ °F และรับ Ea ใน kJ/mol พร้อมแปลง Arrhenius
เครื่องคำนวณพลังงานกระตุ้น
ค้นหาพลังงานกระตุ้น (Ea) ของปฏิกิริยาจากค่าคงที่อัตราที่วัดที่อุณหภูมิสองอุณหภูมิ
อินพุต
ผลลัพธ์
สูตรที่ใช้
Ea = R · ln(k₂/k₁) / (1/T₁ − 1/T₂)
R คือค่าคงที่แก๊ส (8.314 J/mol·K); k₁ และ k₂ คือค่าคงที่อัตราที่อุณหภูมิ T₁ และ T₂ เป็น Kelvin
แผนภาพพลังงานปฏิกิริยา
เอกสารประกอบการใช้งาน
อันนี้คำนวณอะไร
ปฏิกิริยาเคมีเร็วขึ้นเมื่อคุณให้ความร้อน เครื่องมือนี้เปลี่ยนการสังเกตการณ์ในชีวิตประจำวันเป็นตัวเลข: วัดว่าปฏิกิริยาเกิดขึ้นเร็วแค่ไหนที่ อุณหภูมิสอง อุณหภูมิ และมันบอกคุณถึง พลังงานกระตุ้นของปฏิกิริยา (Ea) — ขนาดของ "เนินเขา" พลังงานที่โมเลกุลต้องปีนขึ้นไปเพื่อทำปฏิกิริยา
คุณต้องการค่าสี่ค่า: ค่าคงที่อัตรา (k₁, k₂) สองค่า และอุณหภูมิสองค่าที่วัดไป (T₁, T₂) ป้อนอุณหภูมิเป็น Kelvin, Celsius, หรือ Fahrenheit — เครื่องมือคำนวณจะแปลงให้คุณ ผลลัพธ์จะแสดงเป็น kJ/mol ซึ่งเป็นหน่วยมาตรฐานในเคมี
พลังงานกระตุ้นพูดในแบบธรรมชาติ
ลองนึกภาพลูกบอลที่นั่งอยู่ในหุบเขา เพื่อให้มันกลิ้งไปยังหุบเขาถัดไป ก่อนอื่นคุณต้องดันมันขึ้นไปข้ามสันเขา พลังงานกระตุ้นคือความสูงของสันเขา แม้แต่ปฏิกิริยาที่ปล่อยพลังงานโดยรวมก็ยังต้องการการดันเริ่มต้นนี้เพื่อแยกพันธะที่เริ่มต้น
การให้ความร้อนแก่ปฏิกิริยาไม่ได้ลดสัน — มันให้โมเลกุลมากขึ้นพอพลังงานเพื่อให้ข้ามไปได้ ดังนั้นจำนวนที่มากขึ้นจึงทำปฏิกิริยาในแต่ละวินาที นี่คือเหตุที่การเพิ่มขึ้น 10 °C สามารถทำให้สิ่งต่างๆ เร็วขึ้นได้อย่างเห็นได้ชัด
สูตร
สมการ Arrhenius เชื่อมค่าคงที่อัตรา k กับอุณหภูมิ:
เมื่อ A เป็นตัวประกอบก่อนเลขชี้กำลัง R = 8.314 J/(mol·K) คือ ค่าคงที่แก๊ส และ T คืออุณหภูมิสัมบูรณ์เป็น Kelvin
วัด k ที่อุณหภูมิสองค่า และค่า A ที่ไม่ทราบจะหายไปเมื่อคุณนำอัตราส่วน:
นี่คือสิ่งที่เครื่องมือคำนวณประเมินอย่างแน่นอน (จากนั้นหารด้วย 1000 เพื่อรายงาน kJ/mol) ในทางเรขาคณิต มันคือความชันของเส้นตรงบน แปลง Arrhenius ของ ln k กับ 1/T: ความชันเท่ากับ −Ea/R เครื่องมือวาดแปลงนั้นจากสองจุดของคุณ
ตัวอย่างที่ได้งาน
ด้วย k₁ = 0.0025 s⁻¹ ที่ 300 K และ k₂ = 0.035 s⁻¹ ที่ 350 K:
การได้คำตอบที่เชื่อถือได้
- ใช้ Kelvin ภายใน Celsius หรือ Fahrenheit โอเค่พิมพ์ — เครื่องมือแปลง — แต่คณิตศาสตร์ทำงานได้เฉพาะที่อุณหภูมิสัมบูรณ์เท่านั้น การลืมนี้คือความผิดพลาดที่พบบ่อยที่สุด
- เว้นระยะอุณหภูมิของคุณออก ช่องว่าง 20–50 °C ให้ผลลัพธ์ที่เสถียร จุดที่ใกล้เกินไป (อัตราส่วน
k₂/k₁ใกล้ 1) ระเบิดข้อผิดพลาด เพราะคุณกำลังนำลอการิทึมของตัวเลขใกล้ 1 - ให้หน่วยสอดคล้องกัน เพราะคุณใช้อัตราส่วน
k₂/k₁หน่วยของkยกเลิก — s⁻¹, M⁻¹s⁻¹, อะไรก็ได้ — ตราบใดที่ค่าคงที่ทั้งสองใช้หน่วยเดียวกัน และมาจากการวิเคราะห์จลนศาสตร์เดียวกัน
การอ่านผลลัพธ์
| Ea (kJ/mol) | การตีความ | ตัวอย่าง |
|---|---|---|
| < 40 | เร็วมาก กำแพงต่ำ | ปฏิกิริยารากอิสระ เนื่องจากการจึงเจอ |
| 40–100 | ปานกลางที่อุณหภูมิห้อง | ปฏิกิริยาอินทรีย์เฟสสารละลายส่วนใหญ่ |
| 100–200 | ช้า ต้องให้ความร้อน | Diels–Alder, ไฮโดรไลซิสเอสเตอร์ |
| > 200 | ช้ามากโดยไม่ให้ความร้อนแรง | C–H การเปิดใช้งาน, การตรึง N₂ |
ตัวเร่งปฏิกิริยาและเอนไซม์ทำงานโดยเสนอเส้นทางกำแพงต่ำกว่า ตัวอย่างเช่น Catalase ลดกำแพงสำหรับการสลายตัวของไฮโดรเจนเปอร์ออกไซด์จาก ~75 kJ/mol ลงมาประมาณ 8 kJ/mol พลังงานกระตุ้นเป็นคุณสมบัติของ เส้นทาง ไม่ใช่อุณหภูมิ — การให้ความร้อนเปลี่ยนว่าโมเลกุลจำนวนเท่าใดล้างกำแพง ไม่ใช่ความสูงของกำแพง
นอกเหนือจากวิธีสองจุด
สูตรสองจุดถือว่ามีพฤติกรรม Arrhenius ที่สมบูรณ์แบบระหว่างจุดของคุณ เมื่อไม่เป็นเส้นตรง:
- ความโค้ง Non-Arrhenius ปรากฏขึ้นพร้อมกับการเปิดตัวเอนไซม์ อุโมงค์ควอนตัมที่อุณหภูมิต่ำ หรือปฏิกิริยาจำกัดการแพร่ แปลง
ln kvs1/Tที่โค้งคือการบอก — จากนั้นค่าสองจุดคือ ประสิทธิภาพ เฉลี่ย ไม่ใช่กำแพงคงที่ - Ea ลบ เป็นไปไม่ได้สำหรับขั้นตอนเบื้องต้น ถ้าคุณคำนวณหนึ่ง กลไกมีหลายขั้นตอนพร้อมการสมดุลก่อนอุณหภูมิ
- สำหรับความเข้มงวด ทฤษฎีสถานะการเปลี่ยนผ่านใช้สมการ Eyring แยกกำแพงออกเป็นเอนทัลปีและการมีส่วนสนับสนุนเอนโทรปี สำหรับความแม่นยำในการทดลองที่ดีที่สุด วัด
kที่ 4–5 อุณหภูมิและพอดีกับความชันของแปลง Arrhenius โดยการถดถอยเชิงเส้นแทนที่จะใช้เพียงสองจุด
การใช้โค้ด
หลักเป็นบรรทัดหนึ่งของเลขคณิต สั่ง 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 ลบ exothermic)
ทำไมฉันต้องอุณหภูมิสองอุณหภูมิ การวัดหนึ่งครั้งให้สมการหนึ่งกับสองสิ่งที่ไม่รู้จัก (Ea และ A) การวัดวินาทีให้ A ยกเลิกเพื่อให้คุณสามารถแก้ Ea ได้โดยตรง
วิธีสองจุดมีความแม่นยำเท่าไร โดยทั่วไปภายใน 5–10% ในช่วงอุณหภูมิปานกลาง สมมติว่ามีพฤติกรรม Arrhenius เชิงเส้น สำหรับความแม่นยำมากขึ้น พอดี ln k vs 1/T ข้ามอุณหภูมิ 4–5
อ้างอิง
- Laidler, K. J. (1984). "The development of the Arrhenius equation." J. Chem. Educ. 61(6), 494. https://doi.org/10.1021/ed061p494
- Eyring, H. (1935). "The Activated Complex in Chemical Reactions." J. Chem. Phys. 3(2), 107. https://doi.org/10.1063/1.1749604
- Atkins, P., & de Paula, J. (2014). Atkins' Physical Chemistry (10th ed.). Oxford University Press.
- IUPAC. Compendium of Chemical Terminology (Gold Book), "activation energy." https://goldbook.iupac.org/terms/view/A00102
- NIST. Fundamental Physical Constants — molar gas constant. https://physics.nist.gov/cgi-bin/cuu/Value?r