1. 개요
Hartree-Fock Method(HF)분자의 파동함수(분자 오비탈, MO)를 구하기 위해선 계에 해당하는 슈뢰딩거 방정식을 풀어야 한다. 하지만 다전자 분자의 경우 다체 문제가 되므로 [math({\rm H}_{2}^+)] 이외의 분자의 경우 MO를 해석적으로 구하기는 불가능하다. 그렇기에 근사적으로 슈뢰딩거 방정식을 풀어야 하는데 그 방법들 중 실험값을 이용하지 않고 순수 이론만을 이용하여 계산하는 방법을 ab initio(제 1원리 계산)라 한다. 여기서 가장 기초가 되는 방법이 하트리-포크 방법(Hartree-Fock Method)이며 이 방법을 통해 MO의 에너지 준위와 모양을 알 수 있다. 물론 가장 기초적인 방법인 만큼 잘 맞지 않는 부분[1]도 있지만 이후 개량된 방법들[2] 또한 대부분 이 하트리-포크 방법을 기초로 하기에 계산화학에서 중요한 이론이다.
2. 유도
2.1. 슈뢰딩거 방정식
먼저 분자의 해밀토니언을 구하는 것으로 시작하자. 특수 상대론적 보정과 스핀-궤도 결합을 무시하면 분자의 해밀토니언은 다음과 같다.[math(\displaystyle \begin{aligned} \mathcal{H}_{\textup{mol}}=-\frac{\hbar^2}{2m_e}\sum\limits_{i} \nabla_i^2-\frac{\hbar^2}{2}\sum\limits_{\alpha} \frac{\nabla_\alpha^2} {M_\alpha}-\frac{e^2}{4\pi\epsilon_0}\sum\limits_{\alpha, i} \frac{Z_\alpha}{r_{i\alpha}}+\frac{e^2}{4\pi\epsilon_0}\sum\limits_{i>j} \frac{1}{r_{ij}}+\frac{e^2}{4\pi\epsilon_0}\sum\limits_{\alpha>\beta} \frac{Z_\alpha Z_\beta}{R_{\alpha \beta}} \end{aligned} )] |
[math(\displaystyle \begin{aligned} \mathcal{H}_{\textup{mol}}=-\frac{1}{2}\sum\limits_{i} \nabla_i^2-\frac{1}{2}\sum\limits_{\alpha} \frac{\nabla_\alpha^2}
{M_\alpha}-\sum\limits_{\alpha, i} \frac{Z_\alpha}{r_{i\alpha}}+\sum\limits_{i>j} \frac{1}{r_{ij}}+\sum\limits_{\alpha>\beta} \frac{Z_\alpha Z_\beta}{R_{\alpha \beta}} \end{aligned} )] |
[math(\displaystyle \begin{aligned} T_N=-\frac{1}{2}\sum\limits_{\alpha} \frac{\nabla_\alpha^2}{M_\alpha} \quad V_{NN}=\sum\limits_{\alpha>\beta} \frac{Z_\alpha Z_\beta}{R_{\alpha \beta}} \quad \mathcal{H}_{e}=-\frac{1}{2}\sum\limits_{i} \nabla_i^2 -\sum\limits_{\alpha, i} \frac{Z_\alpha}{r_{i\alpha}}+\sum\limits_{i>j} \frac{1}{r_{ij}} \end{aligned} )] |
[math(\begin{aligned} \mathcal{H}_{\textup{mol}} = T_N + V_{NN} + \mathcal{H}_e \end{aligned})]
가 되며 최종적으로 분자의 슈뢰딩거 방정식은
[math(\begin{aligned} \mathcal{H}_{\textup{mol}}\Psi_{\textup{tot}}=E_{\textup{tot}}\Psi_{\textup{tot}} \end{aligned})]
이 된다. 여기서 원자핵이 전자보다 훨씬 무겁다는 사실을 상기하면 보른-오펜하이머 근사(Born-Oppenheimer approximation)을 적용하여 파동함수 [math(\Psi_{\textup{tot}})]를 핵에 대한 파트와 전자에 대한 파트로 분리할 수 있으며
[math(\begin{aligned} \Psi_{\textup{tot}}(\textbf{r}, \textbf{R})\approx \Psi_{e}(\textbf{r}; \textbf{R})\times \Psi_{N}(\textbf{R}) \end{aligned})]
방정식 또한 핵에 관한 방정식과 전자에 관한 방정식으로 분리된다.
- Electronic Schrödinger Equation
[math(\displaystyle \begin{aligned} \mathcal{H}_e\Psi_e(\textbf{r}; \textbf{R}) = E_e{(\textbf{R})}\Psi_e{(\textbf{r}; \textbf{R})} \end{aligned} )] |
- Nuclear Schrödinger Equation
[math(\displaystyle \begin{aligned} \{ T_N+E_e(\textbf{R})+V_{NN} \} \Psi_N(\textbf{R}) = E_{\textup{tot}}\Psi_N(\textbf{R}) \end{aligned} )] |
2.2. 슬레이터 행렬식
핵과 전자의 운동을 분리했지만 그럼에도 저 방정식을 해석적으로 푸는것은 전자-전자 상호작용 때문에 불가능하다. 만약 전자-전자 상호작용이 없었다면 파동함수는 어떻게 될까? 단순히 각 전자가 차지하고 있는 파동함수의 곱(Hartree product)[math(\begin{aligned} \Psi_e(1, 2, \cdots , N) = \chi_1(1) \chi_2(2) \cdots \chi_N(N) \end{aligned})]
으로 나타날 것이라 생각할 수도 있다.[3] 하지만 전자는 페르미온이므로 파동함수가 입자 교환에 대하여 반대칭(antisymmetric)[4]이어야 하는데 일반적으로 위 식은 반대칭성을 만족하지 않는다. 이때 슬레이터 행렬식(Slater determinat)을 이용하면 반대칭화 조건을 만족시킬 수 있다.
[math(\displaystyle \begin{aligned} \Psi_e(1, 2, \cdots, N)=\frac{1}{\sqrt{N!}}\begin{vmatrix} \chi_1(1) & \chi_2(1) & \cdots & \chi_N(1) \\ \chi_1(2) & \chi_2(2) & \cdots & \chi_N(2) \\ \vdots & \vdots & \ddots & \vdots \\ \chi_1(N) & \chi_2(N) & \cdots & \chi_N(N) \end{vmatrix} =|\chi_1\chi_2 \cdots \chi_N \rangle \end{aligned} )] |
물론 전자-전자 상호작용을 무시할 수 없으므로 정확한 해를 슬레이터 행렬식으로 표현할 수는 없다. 하지만 [math(\chi_i)]를 잘 고른다면 슬레이터 행렬식이 정확한 해의 좋은 근사라고 가정할 것이다. 이를 오비탈 근사(orbital approximation)라 한다.[5]
2.3. 하트리-포크 에너지
위에서 구한 [math(\Psi_e)]를 이용하여 [math(\mathcal{H}_e)]의 기댓값(하트리-포크 에너지)을 구하면 변분 원리에 의하여[math(\begin{aligned} E_{\textup{HF}}= \langle \Psi_e | \mathcal{H}_e | \Psi_e \rangle \geq E_{g} \end{aligned})]
가 된다. 여기서 슬레이터-컨던 규칙을 이용하면
[math(\displaystyle \begin{aligned} \langle\Psi_e|\mathcal{H}_e|\Psi_e\rangle &= \Big\langle \Psi_e\Big|-\frac{1}{2}\sum\limits_{i} \nabla_i^2-\sum\limits_{\alpha, i} \frac{Z_\alpha}{r_{i\alpha}}+\sum\limits_{i>j} \frac{1}{r_{ij}}\Big|\Psi_e \Big\rangle \\&= \sum\limits_{i}\langle \chi_i(1)|h_i(1)|\chi_i(1)\rangle +\frac{1}{2}\sum\limits_{i\neq j} \bigg[\bigg\langle \chi_i(1)\chi_j(2)\bigg|\frac{1}{r_{12}}\bigg|\chi_i(1)\chi_j(2)\bigg\rangle -\bigg\langle \chi_i(1)\chi_j(2)\bigg|\frac{1}{r_{12}}\bigg|\chi_j(1)\chi_i(2)\bigg\rangle\bigg] \end{aligned} )] |
2.4. 표기법
위 식에서 나온 3개의 적분 중 첫째항[math(\begin{aligned} \langle \chi_i(1)|h_i(1)|\chi_i(1)\rangle\end{aligned})]
은 일전자 적분(One-electron integral)이라 하며 다음과 같이 표기한다.
[math(\displaystyle \begin{aligned}\langle i|h|i \rangle \equiv \int \chi_i^*(1)h(1)\chi_i(1)d1 = \langle \chi_i(1)|h_i(1)|\chi_i(1)\rangle \end{aligned} )] |
[math(\begin{aligned} \bigg\langle \chi_i(1)\chi_j(2)\bigg|\frac{1}{r_{12}}\bigg|\chi_i(1)\chi_j(2)\bigg\rangle \end{aligned})]
[math(\begin{aligned} \bigg\langle \chi_i(1)\chi_j(2)\bigg|\frac{1}{r_{12}}\bigg|\chi_j(1)\chi_i(2)\bigg\rangle\end{aligned})]
은 이전자 적분(Two-electron integral)이라 하며 두가지의 표기법이 존재한다. 하나는 물리학자의 표기법(Physicist's notation) 또는 디랙 표기법(Dirac notation)이라 불리는 표기법으로
[math(\begin{aligned} \langle ij|kl \rangle \equiv \int\int \frac{\chi_i^*(1)\chi_j^*(2)\chi_k(1)\chi_l(2)}{r_{12}}d1d2 \end{aligned})]
로 정의하며 또 다른 하나는 화학자의 표기법(Chemist's notation) 또는 쿨롱 표기법(Coulomb notation)이라 불리는 표기법으로
[math(\begin{aligned} (ij|kl) \equiv \int\int \frac{\chi_i(1)\chi_j^*(1)\chi_k(2)\chi_l^*(2)}{r_{12}}d1d2 \end{aligned})]
와 같이 표기한다. 위 표기법을 이용하면 이전자 적분을
[math(\displaystyle \begin{aligned} \bigg\langle \chi_i(1)\chi_j(2)\bigg|\frac{1}{r_{12}}\bigg|\chi_i(1)\chi_j(2)\bigg\rangle=\langle ij|ij \rangle=(ii|jj) \end{aligned} )] |
[math(\displaystyle \begin{aligned} \bigg\langle \chi_i(1)\chi_j(2)\bigg|\frac{1}{r_{12}}\bigg|\chi_j(1)\chi_i(2)\bigg\rangle=\langle ij|ji \rangle=(ij|ji) \end{aligned} )] |
[math(\begin{aligned} E_{\textup{HF}} = \sum\limits_{i} \langle i|h |i\rangle +\frac{1}{2}\sum\limits_{i\neq j} [\langle ij|ij \rangle- \langle ij|ji \rangle] \end{aligned})]
가 된다.
2.4.1. 관계식
두 식은 아래와 같은 관계식이 있다.[math(\begin{aligned} \langle ij|kl \rangle=(ik|jl) \end{aligned})]
만약 복소 켤래를 취하면
[math(\begin{aligned} \langle ij|kl \rangle^*=\langle kl|ij \rangle \quad (ij|kl)^*=(ji|lk) \end{aligned})]
가 된다.그리고 적분 변수를 뭘로 잡든 적분값이 바뀌지 않는 것을 상기하면 변수 1과 변수 2를 바꿔서 적분을 해도 같은 값을 가질 것이고 이를 식으로 쓰면 다음과 같은 관계식을 얻는다.
[math(\begin{aligned} \langle ij|kl \rangle=\langle ji|lk \rangle \quad (ij|kl)=(kl|ij) \end{aligned})]
만약 모든 함수들이 실함수라면 복소 켤래를 취해도 값은 같을 것이므로
[math(\begin{aligned} \langle ij|kl \rangle = \langle kl|ij \rangle \quad (ij|kl) = (ji|lk) \end{aligned})]
가 된다. 위 사실들을 종합해보면 실함수를 썼을 땐 아래와 같이 8개의 적분들이 동일해 진다.
[math(\displaystyle \begin{aligned} \langle ij|kl \rangle = \langle kl|ij \rangle = \langle ji|lk \rangle = \langle lk|ji \rangle &= \langle kj|il \rangle = \langle il|kj \rangle = \langle jk|li \rangle = \langle li|jk \rangle \\ [ij|kl] = [ji|kl] = [ij|lk] = [ji|lk] &= [kl|ij] = [lk|ij] = [kl|ji] = [lk|ji] \end{aligned} )] |
[math(\displaystyle \begin{aligned} \langle ij|kl \rangle = [ik|jl] \quad \langle ij|lk \rangle = [il|jk] \quad \langle ik|jl \rangle = [ij|kl] \end{aligned} )] |
2.5. 하트리-포크 방정식
지금까지 [math(\chi_i)]를 계속 써왔지만 아직까진 [math(\chi_i)]를 구하는 식을 얻지 못했다. 앞서 말했던[math(\begin{aligned} E_{\textup{HF}}= \langle \Psi_e | \mathcal{H}_e | \Psi_e \rangle \geq E_{g} \end{aligned})]
에서 [math(\langle \Psi_e | \mathcal{H}_e | \Psi_e \rangle)]을 최소화 시키는 [math(\chi_i)]를 찾는다면 그게 구하고자 하는 [math(\chi_i)]가 될 것이다. 이는 변분법으로 구할 수 있다. 하지만 [math(\chi_i)]에는 직교규격화 조건 [math(\langle \chi_i|\chi_j \rangle=\delta_{ij})]이 있기 때문에 이 조건 하에서 에너지를 최소화 시켜야 한다. 이는 라그랑주 승수법으로 구할 수 있으며 결과적으론 다음과 같은 양을 최소화 시켜야한다.
[math(\displaystyle \begin{aligned} \mathscr{L}[\{ \chi_i \} ] = E[\{ \chi_i \}] - \sum\limits_{i, j} \varepsilon_{ij} ( \langle i | j \rangle - \delta_{ij} ) \end{aligned})] |
[math(\displaystyle \begin{aligned} \delta \mathscr{L} &= \delta E - \delta \sum\limits_{i, j} \varepsilon_{ij} ( \langle i | j \rangle - \delta_{ij} ) \\ &= \sum\limits_{i}( \langle \delta i | h | i \rangle + \langle i | h | \delta i \rangle ) + \frac{1}{2} \sum\limits_{i, j} ( \langle \delta ij | ij \rangle + \langle i \delta j | ij \rangle + \langle ij | \delta ij \rangle + \langle ij | i \delta j \rangle \\ &- \langle \delta ij | ji \rangle - \langle i \delta j | ji \rangle - \langle ij | \delta ji \rangle - \langle ij | j \delta i \rangle) - \sum\limits_{i, j} \varepsilon_{ij} ( \langle \delta i | j \rangle + \langle i | \delta j \rangle) = 0 \end{aligned})] |
[math(\displaystyle \begin{aligned} \langle ij | lk \rangle = \langle ji | kl \rangle \end{aligned})] |
[math(\displaystyle \begin{aligned} \delta \mathscr{L} &= \sum\limits_{i} \langle \delta i | h | i \rangle + \sum\limits_{i, j}(\langle \delta ij | ij \rangle) + \langle \delta ij | ji \rangle) - \sum\limits_{i, j} \varepsilon_{ij} \langle \delta i | j \rangle \\ &+ \sum\limits_{i} \langle h i | \delta i \rangle + \sum\limits_{i, j}(\langle ij | \delta ij \rangle) + \langle ji | \delta ij \rangle) - \sum\limits_{i, j} \varepsilon_{ji} \langle j | \delta i \rangle \\ &= \sum\limits_{i} \int \delta \chi_i ^ *(1) \left[ h(1)\chi_{i}(1)+\sum\limits_{j}\Bigg\{\chi_{i}(1)\int \frac{\chi_{j}^*(2)\chi_{j}(2)}{r_{12}} d2+\chi_{j}(1)\int \frac{\chi_{j}^*(2)\chi_i(2)}{r_{12}}d2\Bigg\}- \sum\limits_{j} \varepsilon_{ij}\chi_j(1) \right] d1 \\ &+ \sum\limits_{i} \int \delta \chi_i(1) \left[ h(1)\chi_{i}(1)+\sum\limits_{j}\Bigg\{\chi_{i}(1)\int \frac{\chi_{j}^*(2)\chi_{j}(2)}{r_{12}} d2+\chi_{j}(1)\int \frac{\chi_{j}^*(2)\chi_i(2)}{r_{12}}d2\Bigg\}- \sum\limits_{j} \varepsilon_{ji}^* \chi_j(1) \right] ^* d1 \\ &= 0 \end{aligned})] |
[math(\displaystyle \begin{aligned} h(1)\chi_{i}(1)+\sum\limits_{j}\Bigg\{\chi_{i}(1)\int \frac{\chi_{j}^*(2)\chi_{j}(2)}{r_{12}} d2+\chi_{j}(1)\int \frac{\chi_{j}^*(2)\chi_i(2)}{r_{12}}d2\Bigg\}- \sum\limits_{j} \varepsilon_{ij}\chi_j(1)=0 \\ h(1)\chi_{i}(1)+\sum\limits_{j}\Bigg\{\chi_{i}(1)\int \frac{\chi_{j}^*(2)\chi_{j}(2)}{r_{12}} d2+\chi_{j}(1)\int \frac{\chi_{j}^*(2)\chi_i(2)}{r_{12}}d2\Bigg\}- \sum\limits_{j} \varepsilon_{ji} ^ * \chi_j(1)=0 \end{aligned} )] |
[math(\begin{aligned} J_j(1)\chi_i(1) \equiv \chi_{i}(1)\int \frac{\chi_{j}^*(2)\chi_{j}(2)}{r_{12}} d2 \end{aligned})]
[math(\begin{aligned} K_j(1)\chi_i(1) \equiv \chi_{j}(1)\int \frac{\chi_{j}^*(2)\chi_{i}(2)}{r_{12}} d2 \end{aligned})]
로 연산자를 정의하며, 첫 번째 연산자를 쿨롱 연산자(Coulomb operator)라 하며, 두 번째 연산자를 교환 연산자(Exchange operator)라 한다. 해당 연산자들의 의미는 후술하기로 한다. 추가로 포크 연산자(Fock operator)를 다음과 같이 정의한다.
[math(\begin{aligned} f(1) \equiv h(1) + \sum_{j} \left[ J_{j}(1) - K_{j}(1) \right] \end{aligned})]
이런 연산자들을 정의하면 얻은 방정식이 다음과 같이 써진다.
[math(\begin{aligned} f|\chi_i \rangle = \sum_{j} \varepsilon_{ij}|\chi_{j} \rangle \\ f|\chi_i \rangle = \sum_{j} \varepsilon_{ji}^*|\chi_{j} \rangle \end{aligned})]
두 식을 빼보자.
[math(\begin{aligned} \sum_{j} (\varepsilon_{ji}^* - \varepsilon_{ij})|\chi_{j} \rangle = 0 \end{aligned})]
근데 [math(\langle \chi_i|\chi_j \rangle=\delta_{ij})]이므로 [math(\varepsilon_{ji}^* = \varepsilon_{ij})]임을 쉽게 알 수 있다. 이제 결과적으로 1개의 식
[math(\begin{aligned} f|\chi_i \rangle = \sum_{j} \varepsilon_{ij}|\chi_{j} \rangle \end{aligned})]
만 남게 된다. 여러 항들이 섞여있는 우변은 유니터리 행렬을 이용하여 [math(|\chi_{i} \rangle)]만 남겨둘 수 있다. 유니터리 행렬 [math(\textbf{U})]를 이용한 다음과 같은 변환을 생각해보자.
[math(\displaystyle \begin{aligned} | \chi_a' \rangle = \sum\limits_{b} U_{ba} | \chi_b \rangle \end{aligned} )] |
[math(\displaystyle \begin{aligned} f'| \chi'_a \rangle = f'\sum\limits_{b} U_{ba} | \chi_b \rangle = \sum\limits_{b} U_{ba} f | \chi_b \rangle = \sum\limits_{b, c} U_{ba}\varepsilon_{bc}| \chi_c \rangle \end{aligned} )] |
[math(\displaystyle \begin{aligned} \langle \chi_d' | f'| \chi'_a \rangle = \sum\limits_{b, c, e} U_{ba} U_{ed}^* \varepsilon_{bc}\langle \chi_d | \chi_c \rangle = \sum\limits_{b, c, e} U_{ba} U_{ed}^* \varepsilon_{bc} \delta_{ce} = \sum\limits_{b, c} U_{ba} U_{cd}^* \varepsilon_{bc} \end{aligned} )] |
[math(\begin{aligned} f|\chi_i \rangle=\varepsilon_i |\chi_i \rangle \end{aligned})]
와 같은 형태가 된다. 이 방정식을 하트리-포크 방정식(Hartree-Fock equation)이라 한다. [8]그런데 포크 연산자를 계산하기 위해선 다른 전자들의 [math(\chi)]를 알아야 한다. 그렇기에 위 방정식을 해석적으로 풀기는 매우 어렵고 후술할 basis set approach를 통해 Roothan 방정식으로 변환하여 풀게 된다.
3. 물리적 의미
우리가 얻은 방정식의 의미를 살펴보자. 일단 [math(\chi_i(1)=\psi_i(\textbf{r}_1)\sigma_i)]이므로 스핀에 관한 부분을 먼저 계산해주면 [math(\textbf{r}_1)]에 관한 방정식이 되며 결과적으로 식은[math(\displaystyle \begin{aligned} \Bigg(-\frac{1}{2} \nabla_1^2-\sum\limits_{\alpha}\frac{Z_\alpha}{r_{1\alpha}}\Bigg)\psi_i(\textbf{r}_1)+\Bigg[\sum\limits_{j \neq i}\int\frac{|\psi_j(\textbf{r}_2)|^2}{r_{12}}d\textbf{r}_2\Bigg]\psi_i(\textbf{r}_1)-\Bigg[\sum\limits_{j \neq i}\delta_{\sigma_i\sigma_j}\int\frac{\psi_j^*(\textbf{r}_2)\psi_i(\textbf{r}_2)}{r_{12}}d\textbf{r}_2\Bigg]\psi_j(\textbf{r}_1)=\varepsilon_i\psi_i(\textbf{r}_1) \end{aligned} )] |
[math(\displaystyle \begin{aligned} V(\mathbf{r}) =\frac{q}{4 \pi \varepsilon_{0}} \iiint \frac{\rho (\mathbf{r'}) }{ \left| \mathbf{r-r'} \right| } \, dV' \end{aligned} )] |
이제 물리적 의미가 드러나게 방정식을 다시 써보자. 전자 밀도는 파동함수의 성질을 생각하면 다음과 같이 주어짐을 알 수 있다.
[math(\displaystyle \begin{aligned} \rho(\textbf{r}_2)=\sum\limits_{j \neq i} |\psi_j(\textbf{r}_2)|^2 \end{aligned} )] |
[math(\displaystyle \begin{aligned} v_{\textup{Coul}}(\textbf{r}_1) = \int \frac{\rho(\textbf{r}_2)}{r_{12}} d\textbf{r}_2 \end{aligned} )] |
[math(\displaystyle \begin{aligned} \Bigg[\int\frac{\psi_j^*(\textbf{r}_2)\psi_i(\textbf{r}_2)}{r_{12}}d\textbf{r}_2\Bigg]\psi_j(\textbf{r}_1) = \Bigg[\int \frac{\psi_j^*(\textbf{r}_2)\psi_i(\textbf{r}_2)\psi_i^*(\textbf{r}_1)\psi_j(\textbf{r}_1)}{|\psi_i(\textbf{r}_1)|^2}\frac{1}{r_{12}}d\textbf{r}_2\Bigg]\psi_i(\textbf{r}_1) \end{aligned} )] |
[math(\displaystyle \begin{aligned} \rho_{\textup{ex}}(\textbf{r}_1, \textbf{r}_2) &= \sum\limits_{j \neq i} \Bigg[ \delta_{\sigma_i\sigma_j}\frac{\psi_j^*(\textbf{r}_2)\psi_i(\textbf{r}_2)\psi_i^*(\textbf{r}_1)\psi_j(\textbf{r}_1)}{|\psi_i(\textbf{r}_1)|^2}\Bigg] \\ \\ v_{\textup{ex}}(\textbf{r}_1) &= -\int\frac{\rho_{\textup{ex}}(\textbf{r}_1, \textbf{r}_2)}{r_{12}}d\textbf{r}_2 \end{aligned} )] |
[math(\displaystyle \begin{aligned} \rho_{\textup{eff}}(\textbf{r}_1, \textbf{r}_2) &= \rho(\textbf{r}_2) - \rho_{\textup{ex}}(\textbf{r}_1, \textbf{r}_2) \\ \\ v_{\textup{HF}}(\textbf{r}_1) &= \int\frac{\rho_{\textup{eff}}(\textbf{r}_1, \textbf{r}_2)}{r_{12}}d\textbf{r}_2\end{aligned} )] |
[math(\displaystyle \begin{aligned} f(\textbf{r}_1) = -\frac{1}{2} \nabla_1^2-\sum\limits_{\alpha}\frac{Z_\alpha}{r_{1\alpha}} + v_{\textup{HF}}(\textbf{r}_1) \end{aligned} )] |
4. 오비탈 에너지
[math(\varepsilon_i)]가 각 오비탈의 에너지라면 [math(\sum\limits_a \varepsilon_a)]가 [math(E_{\textup{HF}})]와 같을 것이라 생각할 수 있다. 하지만 실제로 계산해보면 그렇지 않다.[math(\begin{aligned} \sum\limits_a \varepsilon_a = \sum\limits_{a} \langle a | h | a \rangle + \sum\limits_{a, b}[\langle ab | ab \rangle - \langle ab | ba \rangle] \end{aligned})]
[math(\begin{aligned} E_{\textup{HF}} = \sum\limits_{a} \langle a | h | a \rangle + \frac{1}{2}\sum\limits_{a, b}[\langle ab | ab \rangle - \langle ab | ba \rangle]=\sum\limits_a \varepsilon_a - \frac{1}{2}\sum\limits_{a, b}[\langle ab | ab \rangle - \langle ab | ba \rangle] \neq \sum\limits_a \varepsilon_a \end{aligned})]
[math(\sum\limits_a \varepsilon_a)]에서 빼줘야 하는 항이 무엇인지 생각하면 왜 그런지 알 수 있는데 전자-전자 상호작용을 두 번 센 꼴이라 다 더한 후 절반을 빼 줘야 분자의 총 에너지가 나온다.
4.1. 쿠프만 정리
오비탈 에너지의 총합이 분자 전체의 에너지와 다르다면 [math(\varepsilon_i)]에 어떤 물리적 의미를 붙일 수 있을까? 쿠프만 정리(Koopmans' Theorem)에 따르면 [math(|\chi_i\rangle)]에서 전자를 제거하는데 드는 에너지, 즉 이온화 에너지는 [math(-\varepsilon_i)]와 같다. 이를 증명해보자. 일단 N개의 전자로 이루어진 시스템이 있을 때 분자의 파동함수를 다음과 같이 쓰자[math(\displaystyle \begin{aligned} |^{N}\Psi_0 \rangle = |\Psi_0 \rangle= |\chi_1\chi_2\cdots\chi_c\cdots\chi_N \rangle \end{aligned} )] |
[math(\displaystyle \begin{aligned} |^{N-1}\Psi_c \rangle = |\chi_1\chi_2\cdots\chi_{c-1}\chi_{c+1}\cdots\chi_N \rangle \end{aligned} )] |
[math(\displaystyle \begin{aligned}\textup{IE}= ^{N-1}E_c - ^{N}E_0 \end{aligned} )] |
[math(\displaystyle \begin{aligned} ^{N}E_0&=\sum\limits_{a} \langle a | h | a \rangle + \frac{1}{2}\sum\limits_{a, b}[\langle ab | ab \rangle - \langle ab | ba \rangle]\\^{N-1}E_c&=\sum\limits_{a\neq c} \langle a | h | a \rangle + \frac{1}{2}\sum\limits_{a\neq c, b\neq c}[\langle ab | ab \rangle - \langle ab | ba \rangle]\\ \textup{IE} &= ^{N-1}E_c - ^{N}E_0 = - \langle c | h | c \rangle - \frac{1}{2} \sum\limits_{a}[\langle ac | ac \rangle - \langle ac | ca \rangle]-\frac{1}{2}\sum\limits_{b}[\langle cb | cb \rangle - \langle cb | bc \rangle] \\&= - \langle c | h | c \rangle - \sum\limits_{a}[\langle ac | ac \rangle - \langle ac | ca \rangle] = - \varepsilon_c
\end{aligned} )]
|
5. SCF Type
후술할 SCF procedure에선 우리가 [math(\psi_i)]들의 모양을 정해서 넣어주어야 한다. closed shell molecule[14]의 경우 짝지은 두 전자의 [math(\psi_i)]를 같게 두는데 이를 RHF(Restricted Hartree-Fock)라 한다. 예시로 베릴륨 원자의 경우 RHF에선 파동함수를 다음과 같이 쓴다.[math(\displaystyle \begin{aligned} |\Psi_0 \rangle = |\psi_{1s}^{\alpha}\psi_{1s}^{\beta}\psi_{2s}^{\alpha}\psi_{2s}^{\beta} \rangle \end{aligned} )] |
[math(\displaystyle \begin{aligned} |\Psi_0 \rangle = |\psi_{1s}^{\alpha}\psi_{1s}^{\beta}\psi_{2s}^{\alpha} \rangle \end{aligned} )] |
[math(\displaystyle \begin{aligned} |\Psi_0 \rangle = |\psi_{a}^{\alpha}\psi_{b}^{\beta}\psi_{c}^{\alpha} \rangle \end{aligned} )] |
UHF의 경우 [math(\psi_i)]가 RHF와 ROHF의 것보다 더 유연하므로 두 방법보다 더 정확한 결과를 내놓는다. 하지만 모든 [math(\psi_i)]를 다르게 두었으므로 RHF, ROHF 보다 계산량은 2배로 늘어난다. 이 문서에선 RHF만 다룰 것인데 N개의 전자를 가진 closed shell molecule의 경우 [math(\psi_i)]가 실질적으론 [math(N/2)]개만 존재한다. 이를 이용하여 식을 단순화 시킬 수 있는데 포크 연산자의 경우
[math(\displaystyle \begin{aligned} f(1)=h(1)+\sum\limits_{a=1}^{N/2} [2J_{a}(1)-K_{a} (1) ] \end{aligned} )] |
[math(\displaystyle \begin{aligned} E_0 &= 2\sum\limits_{a=1}^{N/2} \langle a | h | a \rangle + \sum\limits_{a=1}^{N/2}\sum\limits_{b=1}^{N/2}[2\langle ab | ab \rangle - \langle ab | ba \rangle] \\ \varepsilon_a &= \langle a | h | a \rangle + \sum\limits_{b=1}^{N/2}[2\langle ab | ab \rangle - \langle ab | ba \rangle] \end{aligned} )] |
6. Roothaan 방정식
앞서 설명했듯이 하트리-포크 방정식을 직접 풀기는 어렵다. 그렇기에 원자 오비탈의 선형 결합으로 분자 오비탈을 구성할 것이다. 이를 LCAO-MO(Linear Combination of Atomic Orbitals - Molecular Orbital)라 한다. 이를 수식으로 쓰면[math(\displaystyle \begin{aligned} \psi_i = \sum_{\nu = 1}^K C_{\nu i}\phi_\nu \end{aligned} )] |
[math(\displaystyle \begin{aligned} f(1)\sum_{\nu = 1}^K C_{\nu i}\phi_\nu(1) = \varepsilon_i\sum_{\nu = 1}^K C_{\nu i}\phi_\nu(1) \end{aligned} )] |
[math(\displaystyle \begin{aligned} \sum_{\nu = 1}^K \langle \phi_\mu | f | \phi_\nu \rangle C_{\nu i} = \varepsilon_i\sum_{\nu = 1}^K \langle \phi_\mu | \phi_\nu \rangle C_{\nu i} \end{aligned} )] |
[math(\displaystyle \begin{aligned} F_{\mu \nu} = \langle \phi_\mu | f | \phi_\nu \rangle \quad S_{\mu \nu} = \langle \phi_\mu | \phi_\nu \rangle \quad E_{ij} = \varepsilon_i\delta_{ij} \end{aligned} )] |
[math(\displaystyle \begin{aligned} \textbf{FC} = \textbf{SCE} \end{aligned} )] |
6.1. 밀도 행렬
전자 밀도와 관련된 밀도 행렬을 정의하면 식들을 이 행렬을 이용해 표현할 수 있다. 파동함수의 성질을 생각해보면 전자 밀도는 다음과 같다.[math(\displaystyle \begin{aligned} \rho(\textbf{r}) = 2 \sum\limits_{a=1}^{N/2} |\psi_a(\textbf{r})|^2 \end{aligned} )] |
[math(\displaystyle \begin{aligned} 2 \sum\limits_{a=1}^{N/2} |\psi_a(\textbf{r})|^2 = 2 \sum\limits_{a=1}^{N/2} \sum\limits_{\nu=1}^{K} C_{\nu a}^* \phi_{\nu}^*(\textbf{r}) \sum\limits_{\mu=1}^{K} C_{\mu a} \phi_{\mu}(\textbf{r}) = \sum\limits_{\nu=1}^{K} \sum\limits_{\mu=1}^{K} \Big[2\sum\limits_{a=1}^{N/2} C_{\nu a}^*C_{\mu a}\Big]
\phi_{\nu}^*(\textbf{r})\phi_{\mu}(\textbf{r}) \end{aligned} )]
|
[math(\displaystyle \begin{aligned} P_{\mu \nu}=2\sum\limits_{a=1}^{N/2} C_{\nu a}^*C_{\mu a} \quad \textbf{P} = 2 \textbf{C} \textbf{C}^\dagger \end{aligned} )] |
[math(\displaystyle \begin{aligned} F_{\mu \nu} = \langle \phi_{\mu} | h | \phi_{\nu} \rangle + \sum\limits_{a=1}^{N/2} [2\langle \phi_{\mu} | J_a | \phi_{\nu} \rangle - \langle \phi_{\mu} | K_a | \phi_{\nu} \rangle] \end{aligned} )] |
[math(\displaystyle \begin{aligned} \sum\limits_{a=1}^{N/2} [2\langle \phi_{\mu} | J_a | \phi_{\nu} \rangle - \langle \phi_{\mu} | K_a | \phi_{\nu} \rangle] = \sum\limits_{a=1}^{N/2} [2\langle \mu a | \nu a\rangle - \langle \mu a | a \nu \rangle] = \sum\limits_{a=1}^{N/2} \sum\limits_{\lambda=1}^{K} \sum\limits_{\sigma=1}^{K} C_{\lambda a}C_{\sigma a}^*[2\langle \mu \sigma | \nu \lambda \rangle - \langle \mu \sigma | \lambda \nu \rangle] \end{aligned} )] |
[math(\displaystyle \begin{aligned} \sum\limits_{a=1}^{N/2} \sum\limits_{\lambda=1}^{K} \sum\limits_{\sigma=1}^{K} C_{\lambda a}C_{\sigma a}^*[2\langle \mu \sigma | \nu \lambda \rangle - \langle \mu \sigma | \lambda \nu \rangle] = \sum\limits_{\lambda=1}^{K} \sum\limits_{\sigma=1}^{K} P_{\lambda \sigma}[\langle \mu \sigma | \nu \lambda \rangle - \frac{1}{2} \langle \mu \sigma | \lambda \nu \rangle] \end{aligned} )] |
[math(\displaystyle \begin{aligned} F_{\mu \nu} = H_{\mu \nu}^c + G_{\mu \nu} \end{aligned} )] |
[math(\displaystyle \begin{aligned} E_{\textup{HF}} &= 2\sum\limits_{a=1}^{N/2} \langle a | h | a \rangle + \sum\limits_{a=1}^{N/2} \sum\limits_{b=1}^{N/2} [2\langle ab | ab \rangle - \langle ab | ba \rangle] \\ &= \sum\limits_{a=1}^{N/2} \langle a | h | a \rangle + \sum\limits_{a=1}^{N/2} \langle a | h | a \rangle + \sum\limits_{a=1}^{N/2} \sum\limits_{b=1}^{N/2} [2\langle ab | ab \rangle - \langle ab | ba \rangle] \\ &= \sum\limits_{a=1}^{N/2} \langle a | h | a \rangle + \sum\limits_{a=1}^{N/2} \langle a | f | a \rangle = \sum\limits_{\mu=1}^{K} \sum\limits_{\nu=1}^{K} \sum\limits_{a=1}^{N/2} C_{\nu a}C_{\mu a}^*H_{\mu \nu}^c + \sum\limits_{\mu=1}^{K} \sum\limits_{\nu=1}^{K} \sum\limits_{a=1}^{N/2} C_{\nu a}C_{\mu a}^*F_{\mu \nu} \\ &= \frac{1}{2} \sum\limits_{\mu=1}^{K} \sum\limits_{\nu=1}^{K} P_{\nu \mu} H_{\mu \nu}^c + \frac{1}{2} \sum\limits_{\mu=1}^{K} \sum\limits_{\nu=1}^{K} P_{\nu \mu}F_{\mu \nu}= \frac{1}{2}\textup{Tr}[\textbf{P}(\textbf{H}^c+\textbf{F} ) ] \end{aligned})] |
7. Basis set
Roothaan equation 파트에서 밝혔듯 우리는 MO를 AO의 선형 결합으로 나타낼 것이다. 여기에 쓰이는 AO를 우리가 아는 함수들의 집합 [math(\{f_i\})]으로 나타낼 것인데, 이러한 함수들의 집합을 Basis set이라 한다. 성공적인 계산을 위해선 이러한 basis set을 잘 선택하는 것도 매우 중요하다. 물론 무한개의 complete한 basis를 쓰면 가장 좋은 결과를 얻겠지만[15] 컴퓨터에선 무한개의 basis를 사용할 수 없으므로 유한개의 basis를 사용한다. 이러한 이유로 발생하는 오차를 basis-set truncation error라 한다.[math(\{f_i\})]를 선택할때 제일 중요한 것은 경계 조건을 맞춰주는 것이다. 분자에서 경계 조건은 [math(r \rightarrow \infin)] 에서 [math(\psi \rightarrow 0)] 이 되어야하며 이러한 조건을 만족시키는 complete set이라면 어떠한 함수라도 사용될 수 있다. 여기서 주로 사용되는 것이 STO(Slater-Type Orbital)과 GTO(Gaussian-Type Orbital)이다. 원자 a에 중심을 둔 STO의 경우
[math(\displaystyle \begin{aligned} S_{nlm}(r_a, \theta_a, \phi_a) = \frac{(2 \zeta) ^ {n + 1/2}}{[(2n)! ] ^ {1/2}} {r_a}^{n-1} e ^ {-\zeta r_a}Y^m_l(\theta_a, \phi_a) \end{aligned} )] |
[math(\displaystyle \begin{aligned} g_{ijk} = \left( \frac{2 \alpha}{\pi} \right) ^ {3/4} \left[ \frac{(8 \alpha)^{i+j+k}i!j!k!}{(2i)!(2j)!(2k)!} \right] ^ {1/2} x_b^i y_b^j z_b^k e^{-\alpha r_b^2}\end{aligned} )] |
8. SCF procedure
이제 위 내용들을 총집합하여 분자 오비탈을 얻어보자. 앞서 설명했듯이 하트리-포크 방정식은 연립 적분 방정식이기에 다음과 같은 iteration을 통해 풀어야 한다.- 풀고자 하는 분자를 정하여 [math(\{ \textbf{R} \})], [math(\{Z_\alpha\})], N을 얻고 basis set [math(\{\phi_\nu \})]의 종류 또한 설정한다.
- basis들이 직교규격화 되어있지 않으면 그람-슈미트 과정 같은 과정을 통해 그렇게 하도록 만들어준다.
- [math(\psi_i = \sum\limits_{\mu}C_{\mu i}\phi_{\mu})]에서 [math(C_{\mu i})]를 추정하여 넣어준다.
- [math(H_{\mu \nu}^c)]와 [math(\textbf{P}, \langle \mu \nu | \sigma \lambda \rangle)]를 계산하여 [math(F_{\mu \nu})]를 얻는다.
- Roothaan equation [math(\textbf{FC} = \textbf{CE})] ( [math(\textbf{S})]는 직교규격화를 했기에 단위행렬이 된다.)에서 [math(\textbf{C}^{\dagger}\textbf{FC} = \textbf{E})]를 얻는다. 여기서 [math(\textbf{F})]를 대각화하는 [math(\textbf{C}_{\textup{new}})]를 찾는다.
- [math(\textbf{C}_{\textup{new}})]를 통해 [math(\textbf{P}_{\textup{new}})]를 얻는다.
- 만약 설정한 기준 하에서 [math(\textbf{P}_{\textup{old}} = \textbf{P}_{\textup{new}})]라면 계산을 멈춘다. 마지막에 얻은 [math(\textbf{C})]를 통해 MO의 모양을 얻고 [math(\textbf{E})]를 통해 MO의 에너지를 얻는다.
- 수렴하지 않는다면 4번으로 돌아가 수렴할 때 까지 반복한다.
이를 그림으로 나타내면 다음과 같다.
위와 같이 반복을 통해 방정식을 푸는 방법을 SCF(Self-Consistent Field) method라 부른다.
9. Population analysis와 결합 차수
10. 분자의 전기적 성질
10.1. 전기 퍼텐셜
10.2. 전하량
11. Localized MO
12. 한계
제일 처음 문단에서 설명했듯이 하트리-포크 방법에는 여러 문제점들이 존재한다. 그중 제일 큰 문제는 정확도이다. 전자는 운동은 전자의 위치에 영향을 받을 수밖에 없다. 예시로 한 전자가 핵 주위에 머무른다면 다른 전자들은 핵 가까이 오기가 힘들것이다. 이러한 현상을 electron correlation라 한다. 하지만 하트리-포크 방법에선 이를 단순히 평균내었기에 이러한 사실을 반영하지 못하여 오차가 발생한다. 비상대론적인 영역에서 얻어진 정확한 에너지를 [math(E_{\textup{nonrel}})]라 했을 때 correlation energy를 다음과 같이 정의한다.[math(\displaystyle \begin{aligned} E_{\textup{corr}} \equiv E_{\textup{nonrel}} - E_{\textup{HF}} \end{aligned} )] |
[math(\displaystyle \begin{aligned} E_{\textup{corr}} \approx -0.0170n^{1.31}(27.2 \textup{eV}) \end{aligned} )] |
- CI(Configuration Interaction)에선 파동함수에 들뜬 상태의 슬레이터 행렬식을 추가하여 정확도를 높인다. 모든 들뜬 상태를 추가하는 방법을 Full-CI라 하는데 정확도는 당연히 높겠지만 계산량이 안드로메다로 가버리기에 큰 분자엔 적용시킬 수 없고 몇개만 골라서 넣는다. Singly excited state만 추가하는 CIS는 HF으로 얻은 에너지와 같아서 쓸모가 없고 Doubly excited state도 추가한 CISD부터 정확도가 늘아나기 시작한다. 더 추가할수록 CISDT, CISDTQ...로 계속해서 추가할 수 있지만 당연히 계산 비용문제로 어느 정도에서 끊는다. 물론 저 순서대로 들뜬 상태를 추가할 필요는 없고 이를 고르는 방법에 따라 여러 이론이 존재한다.
- MP(Møller–Plesset perturbation theory)에선 [math(\sum\limits^{N}_{m = 1}f(m))]을 비섭동 해밀토니언, [math(\mathcal{H}_{\textup{e}}-\sum\limits^{N}_{m = 1}f(m))]를 섭동으로 처리하여 고차 섭동을 계산한다. 일차 섭동은 0이라 이차 섭동부터 보정이 존재한다. N차 섭동까지 고려한 방법을 MPN이라 표현하며 계산 비용 문제로 일반적으로 MP2 즉 2차 섭동까지 계산하는 방법이 주로 쓰인다. Closed Shell 분자의 바닥 상태 특성을 매우 높은 정확도로 예측할 수 있다.
- CC(Coupled Cluster)에선 이쪽은 n차수까지의 들뜬 상태 연산자를 연속적으로 적용함으로서 나오는 행렬식만을 골라내서 계산하는 방법이다. 보통 CCSD(T)라 표기되는, 2차수까지의 파동함수를 구한 후 이를 바탕으로 섭동론으로 3차수의 에너지를 예측하는 방법이 사실상 표준 화학결합의 기술로 알려져 있다.
13. 관련 문서
[1]
착화합물, 들뜬 상태 예측 등
[2]
통칭 Post Hartree-Fock Methods
[3]
여기서 [math(\chi_i)]는 스핀 오비탈([math(= \psi_i \sigma_i)])을 나타낸다.
[4]
[math(\Psi_e(1, \cdots ,i, \cdots, j, \cdots, N) = - \Psi_e(1, \cdots ,j, \cdots, i, \cdots, N))]
[5]
'리튬의 2s 오비탈' 같은 문장도 저 가정 하에서 성립한다. 리튬 원자의 정확한 해는
수소 원자 모형에서 구한 해로 표현할 수 없다.
[6]
[math(\varepsilon_{ij})]는 라그랑주 승수
[7]
Szabo의 Modern Quantum Chemistry 3.2.3절 참고
[8]
우변에 [math(| \chi_i \rangle)] 이외의 항들이 있는 형태를 non-canonical Hartree-Fock equation, [math(| \chi_i \rangle)]만 남아있는 식을 canonical Hartree-Fock equation이라 한다.
[9]
전기 퍼텐셜 문서 참조
[10]
원자 단위계에선 [math(4\pi\epsilon, e)]이 1이 됨을 기억하라
[11]
크로네커 델타가 붙어있는 것을 보아라.
[12]
일반화학이나 일반화학실험에서 계산 화학 실습을 해보았다면 보통 이렇게 간단하게 배웠을 것이다.
[13]
이렇게 다체문제에서 입자간 상호작용을 평균 내어 유효 퍼텐셜 하에서 움직이는 일체 문제로 바꾸는 근사를 평균장 근사(Mean-field approximation)라 한다.
[14]
홀전자가 없는 분자
[15]
실제 값에 근접할 수는 없다. 계의 파동함수를 각 전자의 파동함수들의 곱으로 근사했기 때문. 이러한 한계값을 Hartree-Fock limit(HF limit)이라 한다.
[16]
중심을 둔 원자의 갯수에 따라 일, 이, 삼, 사전자 적분이 존재하며 그 이상의 적분을 계산할 일은 없다.
[17]
d-type의 경우 5개가 아닌 6개([math(xy, yz, zx, x^2, y^2, z^2)])가 나온다. 원한다면 선형 결합을 통해
수소 원자 모형처럼 [math(xy, yz, zx, x^2-y^2, 3z^2-r^2)] 만들 수 있으며 6번째 선형 결합 [math(r^2)]은 보통 제외한다.
[18]
GTO에는 주양자수에 해당하는 값이 없다. 어떠한 s AO들이라도 다른 [math(\alpha)]값을 가지는 s-type GTO들의 선형결합으로 써질 수 있으며 다른 오비탈들의 경우에도 마찬가지이다.
[19]
[math(r = 0)]에서의 미분계수를 비교해보아라.
[20]
참고로 수소 분자의 결합 에너지가 대략 [math(4.5 \textup{eV})] 정도이다.