波数cm-1をkJ/molに変換する式(cm-1 to kJ/mol)

雑記Topに戻る

 波数(cm-1)について

波数(ウェーブナンバー)は「カイザー」とも呼ばれ、1センチメートルあたりの波の数であるが、ここでは特に物質波(ド・ブロイ波)の振動数を考えている。振動数$\nu$は量子化されたエネルギーに対応しており、プランクによって与えられた波数とエネルギーの換算式$$E=h \nu$$によってエネルギーに変換することができる($h$はプランク定数)。そのため、cm-1は便宜的にエネルギーの単位として利用される。

※粒子と波動の二重性については「プランクの量子仮説」なども参照のこと。

 波数(cm-1)をkJ/molに変換する

1カイザーは「波数が1センチメートルにつき1回の電磁波が持つエネルギー」として解釈される。電磁波の速度は光速$c$であるため、1センチメートルあたりの振動数は$c$を$0.01$メートルで割った値となる。故に、$1 \ \mathrm{[cm^{-1}]}$は$$10^2 \ [\text{m}^{-1}] \times h \times c$$のエネルギーに相当し、およそ $1.9864… \times 10^{-23} \ \mathrm{[J]}$ となる。

光速$c$、プランク定数$h$が既知であればSI単位系(ジュール)に変換でき、これにアボガドロ定数$N_A$を乗じることでkJ/molに変換できる。以下はPythonのスクリプトである。

AVOGADRO_CONSTANT = 6.02214076e23 # 1 / mol
PLANCK_CONSTANT = 6.62606957e-34 # J * s
SPEED_OF_LIGHT = 2.99792458e8 # m / s

print(PLANCK_CONSTANT * 100.0 * SPEED_OF_LIGHT)
# 1 [cm-1] ~ 1.986445683269303e-23 [J]

print(PLANCK_CONSTANT * 100.0 * SPEED_OF_LIGHT * 0.001 * AVOGADRO_CONSTANT)
# 1 [cm-1] ~ 1.1962656986711926e-2 [kJ/mol]

※なお、これらの定数は scipy.constants モジュールによって取得できる。


雑記Topに戻る