비리얼(virial)이란 무엇인가?
비리얼, 'virial'이란 표현은 'force'를 뜻하는 'vis'에서 유래됐다.
오늘은 비리얼에 대해서 이야기를 해보고자 한다. 지금까지 분자동역학(molecular dynamics, MD)을 공부하면서 '비리얼'이란 단어는 종종 들어봤지만, 내가 직접 비리얼 계수(virial coefficient)나 비리얼 응력(virial stress), 비리얼 압력(virial pressure) 등을 계산하거나, 이를 통해 퍼텐셜을 피팅해 본 적이 없기에 그냥 위키피디아에 한번 쳐보고 뭔지 모르겠다며 지나간 기억이 있다. 그런데 최근에 여러 통계역학적인 기초들, 그리고 분자동역학의 기초 기술들을 차근차근 공부하다보니 한번쯤 짚고 넘어가야 하는 주제라 생각해서 정리해보고자 한다.
내가 비리얼을 구글링하여 처음에 마주친 것은 'virial coefficient'라는 것이었다. 고등학교 시절, 우리는 이상기체의 거동을 나타내는 상태방정식으로 다음의 등식을 배웠다.
헌데, 이 상태방정식은 이상기체를 해석하는데에만 유효하며, 우리는 실재하는 분자들로 구성된 기체를 해석하기 위해 압축인자(compressibility factor) 'Z'라는 것을 도입했다. 압축인자는 아래와 같이 정의된다.
여기서 압축인자는 상태방정식에 곱해지는 hyper parameter이며, 현재 관찰하는 기체의 거동이 이상기체의 거동으로부터 얼마나 벗어나 있는가를 나타내는 척도로 사용된다. 당연한 얘기지만 압축인자가 1일 경우 상태방정식이 정확히 이상기체상태방정식과 동일해진다.
다시 virial로 돌아가서, 'virial coefficient'는 이 압축인자를 결정하는 하나의 방법으로 'virial expansion'이라는 방식을 사용할 때, 이 expansion set의 항에 들어가는 계수들(coefficients)을 지칭한다. Virial expansion을 이용한 압축인자 표현을 수식으로 풀어 쓰면, (N을 계속 표현하기 귀찮으니까, 부피 V를 molar volume v로 바꾸고, 이를 다시 ρ = 1/v로 바꿔 수식에 표현 하겠다.)
위에서 첫번째 계수 A는 1이 되어, 나머지 계수들이 0일 경우 이상기체의 거동을 표현한다. 그 이후에 따라오는 2차, 3차, 또 그 이상의 계수들은 앞서 이야기 한 바와 같이 이상기체의 거동에서 벗어나는 경향을 나타내기 위한 것이며, 많은 사람들이 각 계수들이 물리적인 특성으로 어떻게 이어지는지에 대해 연구를 하였다. 초기 van der Waals force에 근거한 계수 결정법을 시작으로 Starling에 의해 수정된 Benedict-Webb-Rubin EOS에 이르기까지 수정이 계속됐는데, 어찌됐든 간에 중요한 것은 1차 계수를 제외한 나머지 계수들이 원자간의 상호작용에 따른 힘(interatomic force)을 기술하는 역할을 한다는 것이다. 예를 들어, 2차 계수는 두 원자간의 상호작용에 대한 term이며, 3차 계수는 세 원자 사이에 작용하는 비중첩성 상호작용을 기술한다.
자, 여기까지가 virial expansion과 virial coefficient에 대해 내가 학습한 내용이다. 그런데, 이러한 내용은 내가 분자동역학에서 다루던 개념들과는 너무 동떨어져있는 내용인지라 나에게 있어서는 virial이란 개념을 이해하는데 되려 혼란만 가중시키는 결과를 초래했다. 사실, 위에 빨간색으로 밑줄 친 부분을 좀 더 마음에 새겼더라면 이러한 혼란에서 금방 탈출할 수 있었을 텐데 말이다.
내가 궁극적으로 궁금해했던, 분자동역학적 방식으로 virial pressure를 구해내는 과정과 이 virial coefficient, virial expansion이 어떠한 점에서 접점을 가지기에 'virial'이란 이름을 가지는가에 대해서 해답을 찾기 까지는 꽤나 많은 시간이 걸렸다.
우선 열역학에서 정의하는 압력을 살펴보자. 이는 다음의 식으로 표현된다.
$$ p = -\left(\frac{\partial A}{\partial V}\right)_{T,N} = k_{B}T\left( \frac{\partial lnQ}{\partial V} \right)_{T,V} $$
여기서 A는 Helmholtz energy이고, N, V, T는 각 계의 입자수, 체적, 온드를, Q는 해당하는 partition function을 의미한다. 중간에 있는 표현은 압력에 대한 가장 기초적인 표현으로 부피가 변할 때의 에너지 변화량으로서 이를 정의하고 있다. 그 좌측에 있는 항에서는 보다 통계적인 접근으로 압력을 표현하고 있는데, equipartion theorem을 이용하여 에너지를 기술한 경우이다. 뭔가 앞서 살펴본 virial expansion과 연관지을수가 없다!
이제 다른 방향으로 생각을 해보자. 우리는 위의 식들이 과연 정적인(static) 상황이 아닌, 특정한 외압이나 온도 상승 등을 동반하는 동적인(dynamic) 상황에서도 정확하게 적용될 지를 생각해 볼 필요가 있다. 열에너지에 의한 상동으로 원자들이 충돌했을 때 순간적으로 발생하는 힘과 같은 요소들 말이다.
위의 의문점을 머릿속에 염두해 둔 채로 좀 전에 이상기체방정식을 설명하면서 가정했던 조건인 '이상기체'에 대해서 생각해보자. 위키피디아 내용에 따르면,
오늘은 비리얼에 대해서 이야기를 해보고자 한다. 지금까지 분자동역학(molecular dynamics, MD)을 공부하면서 '비리얼'이란 단어는 종종 들어봤지만, 내가 직접 비리얼 계수(virial coefficient)나 비리얼 응력(virial stress), 비리얼 압력(virial pressure) 등을 계산하거나, 이를 통해 퍼텐셜을 피팅해 본 적이 없기에 그냥 위키피디아에 한번 쳐보고 뭔지 모르겠다며 지나간 기억이 있다. 그런데 최근에 여러 통계역학적인 기초들, 그리고 분자동역학의 기초 기술들을 차근차근 공부하다보니 한번쯤 짚고 넘어가야 하는 주제라 생각해서 정리해보고자 한다.
내가 비리얼을 구글링하여 처음에 마주친 것은 'virial coefficient'라는 것이었다. 고등학교 시절, 우리는 이상기체의 거동을 나타내는 상태방정식으로 다음의 등식을 배웠다.
$$PV = nRT$$
헌데, 이 상태방정식은 이상기체를 해석하는데에만 유효하며, 우리는 실재하는 분자들로 구성된 기체를 해석하기 위해 압축인자(compressibility factor) 'Z'라는 것을 도입했다. 압축인자는 아래와 같이 정의된다.
$$Z = \frac{PV}{nRT}$$
여기서 압축인자는 상태방정식에 곱해지는 hyper parameter이며, 현재 관찰하는 기체의 거동이 이상기체의 거동으로부터 얼마나 벗어나 있는가를 나타내는 척도로 사용된다. 당연한 얘기지만 압축인자가 1일 경우 상태방정식이 정확히 이상기체상태방정식과 동일해진다.
다시 virial로 돌아가서, 'virial coefficient'는 이 압축인자를 결정하는 하나의 방법으로 'virial expansion'이라는 방식을 사용할 때, 이 expansion set의 항에 들어가는 계수들(coefficients)을 지칭한다. Virial expansion을 이용한 압축인자 표현을 수식으로 풀어 쓰면, (N을 계속 표현하기 귀찮으니까, 부피 V를 molar volume v로 바꾸고, 이를 다시 ρ = 1/v로 바꿔 수식에 표현 하겠다.)
$$Z = \frac{P}{RT\rho}= A+B\rho + C\rho^2 +D\rho^3 + ...$$
위에서 첫번째 계수 A는 1이 되어, 나머지 계수들이 0일 경우 이상기체의 거동을 표현한다. 그 이후에 따라오는 2차, 3차, 또 그 이상의 계수들은 앞서 이야기 한 바와 같이 이상기체의 거동에서 벗어나는 경향을 나타내기 위한 것이며, 많은 사람들이 각 계수들이 물리적인 특성으로 어떻게 이어지는지에 대해 연구를 하였다. 초기 van der Waals force에 근거한 계수 결정법을 시작으로 Starling에 의해 수정된 Benedict-Webb-Rubin EOS에 이르기까지 수정이 계속됐는데, 어찌됐든 간에 중요한 것은 1차 계수를 제외한 나머지 계수들이 원자간의 상호작용에 따른 힘(interatomic force)을 기술하는 역할을 한다는 것이다. 예를 들어, 2차 계수는 두 원자간의 상호작용에 대한 term이며, 3차 계수는 세 원자 사이에 작용하는 비중첩성 상호작용을 기술한다.
자, 여기까지가 virial expansion과 virial coefficient에 대해 내가 학습한 내용이다. 그런데, 이러한 내용은 내가 분자동역학에서 다루던 개념들과는 너무 동떨어져있는 내용인지라 나에게 있어서는 virial이란 개념을 이해하는데 되려 혼란만 가중시키는 결과를 초래했다. 사실, 위에 빨간색으로 밑줄 친 부분을 좀 더 마음에 새겼더라면 이러한 혼란에서 금방 탈출할 수 있었을 텐데 말이다.
내가 궁극적으로 궁금해했던, 분자동역학적 방식으로 virial pressure를 구해내는 과정과 이 virial coefficient, virial expansion이 어떠한 점에서 접점을 가지기에 'virial'이란 이름을 가지는가에 대해서 해답을 찾기 까지는 꽤나 많은 시간이 걸렸다.
우선 열역학에서 정의하는 압력을 살펴보자. 이는 다음의 식으로 표현된다.
$$ p = -\left(\frac{\partial A}{\partial V}\right)_{T,N} = k_{B}T\left( \frac{\partial lnQ}{\partial V} \right)_{T,V} $$
여기서 A는 Helmholtz energy이고, N, V, T는 각 계의 입자수, 체적, 온드를, Q는 해당하는 partition function을 의미한다. 중간에 있는 표현은 압력에 대한 가장 기초적인 표현으로 부피가 변할 때의 에너지 변화량으로서 이를 정의하고 있다. 그 좌측에 있는 항에서는 보다 통계적인 접근으로 압력을 표현하고 있는데, equipartion theorem을 이용하여 에너지를 기술한 경우이다. 뭔가 앞서 살펴본 virial expansion과 연관지을수가 없다!
이제 다른 방향으로 생각을 해보자. 우리는 위의 식들이 과연 정적인(static) 상황이 아닌, 특정한 외압이나 온도 상승 등을 동반하는 동적인(dynamic) 상황에서도 정확하게 적용될 지를 생각해 볼 필요가 있다. 열에너지에 의한 상동으로 원자들이 충돌했을 때 순간적으로 발생하는 힘과 같은 요소들 말이다.
위의 의문점을 머릿속에 염두해 둔 채로 좀 전에 이상기체방정식을 설명하면서 가정했던 조건인 '이상기체'에 대해서 생각해보자. 위키피디아 내용에 따르면,
- The molecules of the gas are indistinguishable, small, hard spheres
- All collisions are elastic and all motion is frictionless (no energy loss in motion or collision)
- Newton's laws apply
- The average distance between molecules is much larger than the size of the molecules
- The molecules are constantly moving in random directions with a distribution of speeds
- There are no attractive or repulsive forces between the molecules apart from those that determine their point-like collisions
- The only forces between the gas molecules and the surroundings are those that determine the point-like collisions of the molecules with the walls
- In the simplest case, there are no long-range forces between the molecules of the gas and the surroundings.
아래서 ,세번 째 빨간 줄에 나와 있듯이, 이상기체에서는 입자 사이의 충돌을 해석 할 때, 입자간 인력 및 척력이 작용하고 않으며, 완전탄성 점충돌을 하는 것을 조건으로 하고 있다. (density가 작을 수록 이상기체 방정식에 잘 들어 맞는 이유가 여기에 있다.) 흠... 인력, 척력. 입자간 작용하는 힘. 아? virial이 '힘'이란 단어에서 유래됐다고 했지? 그렇다면 뭔가 여기에 실마리가 있지 않을까?
그럼 이래저래 여러 가지 개념들을 살펴보면서 우리 최종적으로 알고 있는 virial pressure의 식을 가져오자. (드디어 이 모든 괴로운 생각들을 하게 만든 장본인인 virial pressure가 나온다!) virial pressure는 다음과 같이 기술된다.
$$ PV = Nk_{B}T + \frac{1}{3}\left< \sum^{N}_{i=1}{\bf{r}_{i} \cdot \bf{F}_{i}} \right> $$
이 수식은 아래의 virial theorem에서 유래했다. 위아래 수식에서 꺽쇠 괄호 < >는 시간에 대한 평균값을 의미한다.
$$ \langle E_{kin} \rangle = -\frac{1}{2} \sum^{N}_{i=1}{\left< \bf{F}_{i} \cdot \bf{r}_{i} \right>} = \frac{n}{2}\langle V_{TOT} \rangle $$
엄청 험난한 길을 걸어왔지만, 그리고 사실 virial theorem이 어떻게 유도되었는지 모르지만, 어쨌든 드디어 뭔가 앞서 살펴본 virial expansion과 비교하면서 이해할 수 있는 형태가 튀어 나왔다. 식을 보면, virial theorem에서는 운동에너지가 원자간 힘을 통해 기술되는 것을 알 수가 있다. Equipartition theorem에서운동에너지를 계의 온도를 통해 통계적으로 기술했던 것과 다른 방식임을 알 수 있다. 아, 여기까지 알고 나니 열역학에서의 압력 정의와 virial pressure의 차이를 알 수 있을 것 같다. 열역학적 관점에서의 압력은 equipartion theorem에 따른 운동에너지를 사용하고, virial pressure는 virial theorem에 따른 운동에너지를 사용하는구나! 그리고 이 virial theorem은 '원자간에 작용하는 힘'을 이용해 kinetic energy를 표현하는구나!
이렇게 한번 이해를 하고 나면, virial pressure 표현식이 마음으로 느껴진다. 처음 우리가 virial expansion을 할 때, 각 항이 나름대로 어떤 원자간 작용하는 힘들을 표현하여, 이상기체가 아닌 경우에 발생하는 thermal kick이나 hard collision 등에 의한 '비이상기체적'인 거동을 더욱 잘 기술할 수 있게 해준다는 것을 배웠다. virial pressure 식은 이러한 개념을 다차항 형태로 표현한 것이 아니라 각 원자에 작용하는 힘이라는 표현으로 보다 직접적인 기술을 한 것이다.
이 포스트는 무언가를 엄밀하게 해석하고 탐구하고자 하는 것이 아니므로 더 자세한 내용은 생략하겠다. Virial theorem의 유도는 너무나 쉬우니 굳이 설명하지 않았다. 유도가 궁금하다면 wikipedia에 해당 키워드를 검색해보기 바란다. 이만.
$$ PV = Nk_{B}T + \frac{1}{3}\left< \sum^{N}_{i=1}{\bf{r}_{i} \cdot \bf{F}_{i}} \right> $$
이 수식은 아래의 virial theorem에서 유래했다. 위아래 수식에서 꺽쇠 괄호 < >는 시간에 대한 평균값을 의미한다.
$$ \langle E_{kin} \rangle = -\frac{1}{2} \sum^{N}_{i=1}{\left< \bf{F}_{i} \cdot \bf{r}_{i} \right>} = \frac{n}{2}\langle V_{TOT} \rangle $$
엄청 험난한 길을 걸어왔지만, 그리고 사실 virial theorem이 어떻게 유도되었는지 모르지만, 어쨌든 드디어 뭔가 앞서 살펴본 virial expansion과 비교하면서 이해할 수 있는 형태가 튀어 나왔다. 식을 보면, virial theorem에서는 운동에너지가 원자간 힘을 통해 기술되는 것을 알 수가 있다. Equipartition theorem에서운동에너지를 계의 온도를 통해 통계적으로 기술했던 것과 다른 방식임을 알 수 있다. 아, 여기까지 알고 나니 열역학에서의 압력 정의와 virial pressure의 차이를 알 수 있을 것 같다. 열역학적 관점에서의 압력은 equipartion theorem에 따른 운동에너지를 사용하고, virial pressure는 virial theorem에 따른 운동에너지를 사용하는구나! 그리고 이 virial theorem은 '원자간에 작용하는 힘'을 이용해 kinetic energy를 표현하는구나!
이렇게 한번 이해를 하고 나면, virial pressure 표현식이 마음으로 느껴진다. 처음 우리가 virial expansion을 할 때, 각 항이 나름대로 어떤 원자간 작용하는 힘들을 표현하여, 이상기체가 아닌 경우에 발생하는 thermal kick이나 hard collision 등에 의한 '비이상기체적'인 거동을 더욱 잘 기술할 수 있게 해준다는 것을 배웠다. virial pressure 식은 이러한 개념을 다차항 형태로 표현한 것이 아니라 각 원자에 작용하는 힘이라는 표현으로 보다 직접적인 기술을 한 것이다.
이 포스트는 무언가를 엄밀하게 해석하고 탐구하고자 하는 것이 아니므로 더 자세한 내용은 생략하겠다. Virial theorem의 유도는 너무나 쉬우니 굳이 설명하지 않았다. 유도가 궁금하다면 wikipedia에 해당 키워드를 검색해보기 바란다. 이만.
Comments
Post a Comment