Các thông số đặc trưng của phân tử chỉ loại, vị trí, độ dài liên kết, góc giữa các liên kết của nguyên tử trong phân tử. Bộ phần mềm Gaussian cần các thông số này để thực hiện tính toán. Các dữ liệu này có thể được đưa vào theo một trong 3 dạng:
(1) Toạ độ Descartes; (2) Ma trận Z (toạ độ nội);
Các dữ liệu để tính toán có thể được nhập vào một cách trực tiếp hoặc thông qua sự hỗ trợ của bộ phần mềm HyperChem, GaussView. Dưới đây là ma trận Z của ion phosphate (hình bên) được đưa vào để tính toán bằng bộ phần mềm Gaussian. P O,1,R2 O,1,R3,2,A3 O,1,R4,2,A4,3,D4,0 O,1,R4,2,A4,3,-D4,0 Variables: R2=1.79 R3=1.78951893 R4=1.79058342 A3=109.48798702 A4=109.47593348 D4=119.99746943
Trong đó R2, R3,R4 là khoảng cách từ các nguyên tử O đến nguyên tử P; A3, A4 là góc giữa các liên kết : O3-P-O2, O4-P-O2, O5-P-O2; D4, D5 là các góc nhị diện : O4-P-O2 -O3, O5-P-O2 -O3.
Tính toán bằng phương pháp ab initio này trong nhiều trường hợp có thể mang đến những kết quả đáng tin cậy mà không thể thực hiện được bằng phương pháp khác. Mục đích chính của sự tính toán phổ dao động bằng phương pháp này không chỉ để dự đoán tần số và cường độ, bởi vì chúng có thể được xác định một cách chính xác hơn bằng thực nghiệm, mà còn để giải đoán phổ, tính toán trường lực, năng lượng phân tử và các thông số quan trọng khác. Các thông số kể trên không thể có được chỉ từ phổ thực nghiệm, đặc biệt đối với những phân tử có kích thước lớn với 3N-6 tần số chuẩn tắc được xác định bằng (3N)2 giá trị hằng số lực.
Nhập dữ liệu để tính toán
Cũng như các chương trình tính toán khác, bộ phần mềm Gaussian 03 cần các thủ tục và các dữ liệu cần thiết, được gọi chung là dữ liệu nhập (input) để
: P : O 3
5 4 1 2
thực hiện tính toán. Các dữ liệu được đưa vào các vùng (section) tương ứng của chương trình.
2.3. Xây dựng ma trận Z
2.3.1. Mục đích
Mục đích của phần này là trình bày cách xây dựng ma trận Z để biểu diễn phân tử.
2.3.2. Dùng tọa độ nội
Mỗi hàng của ma trận Z ghi tọa độ nội của một nguyên tử trong phân tử. Có nhiều dạng ma trận Z, dạng thông dụng nhất có cấu trúc như sau:
Ký hiệu nguyên tử, nguyên tử 1, chiều dài nối, nguyên tử 2, góc nối, nguyên tử 3, góc nhị diện
Ở đây, các dấu phẩy (,) được dùng để phân cách các số hạng, nhưng tùy trường hợp, các dấu khác như khoảng trống, dấu gạch,…cũng có thể được dùng.
Ký hiệu nguyên tử: là chuỗi ký tự chứa hoặc ký hiệu hóa học hoặc bậc số nguyên tử. Nếu là ký hiệu hóa học, có thể kèm theo các chữ số để định danh nguyên tử tương ứng (thí dụ C1, C2, O1, O2, N1,…).
Nguyên tử 1, nguyên tử 2, nguyên tử 3: là ký hiệu của các nguyên tử (đã được xác định rồi) và được dùng để xác định vị trí của nguyên tử đang xét. Có thể sử dụng thứ tự dòng của một nguyên tử ở trong vùng “Molecule Specification Section” thay cho ký hiệu của nguyên tử tương ứng (dòng chứa điện tích và độ bội là dòng 0).
Vị trí của nguyên tử đang xét được xác định qua chiều dài nối của nó với
nguyên tử 1; góc tạo thành bởi nối trên và nối giữa nguyên tử 1 và nguyên tử 2; góc nhị diện (góc xoắn) tạo bởi mặt phẳng chứa nguyên tử 1, nguyên tử 2 và nguyên tử 3 với mặt phẳng chứa nguyên tử đang xét, nguyên tử 1 và nguyên
Lưu ý là 00 < góc nối < 1800 và 00 ≤ góc nhị diện ≤ 1800. Thí dụ : Phân tử hydroperoxide H2O2 O2 O3 H1 H4 O2 H1 H4 Khoảng cách: O2-H1 = H4-O3 = 0.9Å O3-O2 = 1.4 Å Góc: O3-O2-H1 = H4-O3-H2 = 1050 H4-O3-O2-H1 = 1200 Hình 2.6.Phân tử Hydroperoxide Ma trận Z có dạng: H O 1 0.9 O 2 1.4 1 105.0 H 3 0.9 2 105.0 1 120.
- Dòng 1 của ma trận Z xác định một nguyên tử hydro.
- Dòng 2 xác định một nguyên tử oxy, ở cách nguyên tử hydro (xác định ở dòng 1) một khoảng cách 0.9 Å.
- Dòng 3 xác định một nguyên tử oxy, ở cách nguyên tử oxy xác định ở dòng 2 một khoảng 1.4 Å và tạo một góc O-O-H (với nguyên tử được xác định ở dòng 2 và 1) là 105 độ.
- Dòng 4 xác định một nguyên tử hydro, ở cách nguyên tử oxy xác định ở dòng 3 một khoảng 0.9 Å, tạo một góc H-O-O (với nguyên tử xác định ở dòng 3 và 2) là 150 độ và tạo một góc nhị diện H-O-O-H (với nguyên tử xác định ở dòng 1, 2 và 3) là 120 độ. Dạng tương đương: H O 1 B1 O 2 B2 1 A H 3 B1 2 A 1 D Variables: B1=0.9 B2=1.4 A =105.0
Các ràng buộc về tính đối xứng thể hiện rõ qua tọa độ nội. Hai độ dài H-O được chỉ định bởi cùng một biến số, hai góc H-O-O cũng thế. Khi ma trận Z này được dùng trong việc tối ưu hóa cấu trúc (Opt=Z-matrix), giá trị của các biến số sẽ được tối ưu hóa để cho ra cấu trúc có năng lượng thấp nhất.
Trong tính toán tối ưu đầy đủ (Fopt), các biến số cần phải độc lập tuyến tính với nhau và bao gồm mọi độ tự do trong phân tử. Trong các tính toán tối ưu một phần (Popt), các biến xuất hiện trong vùng sau từ khóa Constants
được giữ không đổi.
Variables:
B1=0.9 được tối ưu hóa
B2=1.4 được tối ưu hóa
A=105.0 được tối ưu hóa
Constants:
D=120.0 được giữ không đổi
Sau đây chúng ta sẽ thực hiện các bước cần thiết để thực hiện việc tính toán bằng Gaussian (13 bước cơ bản).
2.4 Các bước cần để thực hiện việc tính toán bằng Gaussian 98
- Khởi động chương trình (thao tác 1-2)
- Nạp hoặc nhập dữ liệu (thao tác 3-11)
- Thực hiện việc tính toán (thao tác 12)
- Xem xét và diễn giải dữ liệu xuất (thao tác 13)
2.4.1 Khởi động chương trình
1. Bắt đầu chương trình:
Nhấp kép biểu tượng của Gaussian 03 (hình 1.1), cửa sổ chính của chương trình gồm nhiều mục sẽ xuất hiện trên màn hình.
Hình 2.1 Biểu tượng Gaussian 03
2. Các mục trong cửa sổ chính (hình 1.2): Menu bar (thanh đơn lệnh)
Job control icons (các biểu tượng kiểm soát phép tính) Job progress display (trình bày quá trình tính toán) Gaussian output area (vùng dữ liệu xuất)
Editing icons (biểu tượng soạn thảo) Status line (dòng trạng thái)
Out put filename (tập tin xuất)
Chúng ta sẽ xem xét lần lượt các mục trên.
Để thực hiện việc tính toán cần cung cấp các dữ liệu cần thiết cho chương trình. Đơn lệnh File được dùng để tạo một tập tin nhập mới hoặc để sửa đổi một tập tin đã có.
Đơn lệnh File gồm các lệnh:
- New: tạo tập tin nhập mới và mở cửa sổ Job Entry.
- Open: nạp một tập tin nhập đã có hoặc chuyển đổi một cấu trúc phân tử.
- Modify: biên tập tập tin nhập hiện đang được nạp. - Preferences: dùng chỉ rõ các sắp xếp mặc định.
Exit: thoát khỏi Gaussian.
Hình 2.2 Cửa sổ chính của chương trình
2.4.2 Nạp hoặc nhập dữ liệu
3. Chọn New từ đơn lệnh File để tạo một tập tin nhập mới, cửa sổ Job Entry sẽ xuất hiện với những vùng chính như trong hình 1.3:
- %Section: ghi tên file kiểm tra (ví dụ: %Chk=toluene).
- Route Section: ghi cách thức, hệ hàm cơ sở, từ khóa dùng cho tính toán.
- Title Section: ghi tựa đề, mô tả sơ lược phép tính.
- Charge&Multipl. : ghi điện tích và đội bội spin của phân tử.
Độ bội spin của phân tử được cho bởi công thức 2S+1, trong đó S là spin tổng của phân tử. Các điện tử cặp đôi không đóng góp vào đại lượng này.
Chúng có spin tổng cuối cùng bằng 0 vì điện tử α có spin là ½ và điện tử β có spin là -½. Mỗi điện tử không cặp đôi đóng góp giá trị ½ vào đại lượng S. Do đó:
+ Trạng thái singlet - một hệ không có điện tử cặp đôi sẽ có độ bội spin là 1 (S=0);
+ Trạng thái doublet - một hệ có một điện tử không cặp đôi sẽ có độ bội spin là 2 (S= ½ );
+ Trạng thái triplet - một hệ có hai điện tử không cặp đôi giống spin sẽ có độ bội spin là 3 (S=1).
- Molecule Specification: chứa thông tin về cấu trúc phân tử như ma trận Z (hoặc tọa độ Descartes hoặc hỗn hợp), các biến và các dữ liệu và tham số cần thiết khác.
Con trỏ được di chuyển giữa các vùng bằng cách ấn phím Tab - sang vùng sau; Shift+Tab - về vùng trước, hay nhấp chuột thẳng vào vùng muốn chuyển đến.
Sau đây, chúng ta sẽ điền dữ liệu nhập vào cửa sổ Job Entry để tính năng lượng của phân tử nước (H2O).
4. Chuyển con chạy đến vùng Route Section. Vùng này chứa các lệnh để thực hiện việc tính toán.
5. Điền dòng sau đây vào vùng Route Section:
#T RHF/6-31G(d) Test
để xác định phương pháp tính toán và hàm cơ sở dùng cho phép tính này. Các từ khóa được ghi trong bảng 1.1.
Bảng 2.1
Từ khóa Ý nghĩa
RHF Restricted Hartree-Fock (restricted: không có các điện tử không cặp trong phân tử)
6-31G(d) Dùng hệ hàm cơ sở 6-31G(d)
(là hệ hàm cơ sở hữu hiệu và thường được sử dụng)
Với dòng trên đã xác định phép tính sẽ dùng là RHF với hệ hàm cơ sở 6-31G(d).
Các dòng trong Route Section bắt đầu với dấu #:
- #T : yêu cầu chỉ có những kết quả chính được in mà thôi.
- #N (hoặc không kèm ký tự nào khác): xuất dữ liệu bình thường. - #P: xuất tối đa các dữ liệu.
Vùng Route Section phải gồm: Từ khóa chỉ phương pháp tính; Từ khóa chỉ hệ hàm cơ sở.
Các từ khóa phụ để xác định thêm loại phép tính mong muốn và các nhiệm ý phụ.
Từ khóa Test cho biết đây là một phép tính thử nghiệm và kết quả tính toán không được lưu trữ vào hồ sơ.
6. Chuyển con trỏ đến vùng Title Section, vùng này chứa thông tin ngắn gọn (thướng chỉ có một hàng) để mô tả phép tính. Thí dụ: nhập câu sau đây vào Title Section:
My first job: water single point energy
Các nội dung trong Title Section xuất hiện trong dữ liệu xuất và được lưu trong mục lưu trữ của Gaussian và không được dùng trong chương trình.
7. Chuyển con trỏ đến vùng Charge&Multipl.
Vùng này và vùng kế tiếp (Molecular Specification) xác định cấu trúc của phân tử cần khảo sát. Điện tích và độ bội của phân tử được ghi trong vùng này dưới dạng các số nguyên cách nhau bởi một hay nhiều khoảng cách.
Vì nước là phân tử trung hòa nên điện tích bằng 0. Độ bội tương ứng với cách sắp xếp của các điện tử trong phân tử. Nước không có các điện tử không ghép đôi vì vậy phân tử này ở trạng thái singlet với độ bội spin là 1.
8. Nhập các giá trị sau vào vùng Charge&Multipl. : 0 1
Vùng Molecular Specification ghi loại và vị trí của từng nguyên tử trong phân tử (tọa độ Descartes được dùng trong phép tính này).
9. Nhập các dữ liệu sau đây vào vùng Molecular Specification:
O -0.464 0.1770.0 H -0.464 1.1370.0 H 0.441 -0.1430.0
Các dữ liệu cần thiết cho phép tính đã được cung cấp và màn hình sẽ có dạng như hình 2.5.
Hình 2.5. Cửa sổ soạn thảo (Existing File Job Edit)
Ba biểu tượng bên cạnh phải cửa sổ dùng để trở về đơn lệnh chính theo ba cách khác nhau như trong bảng 1.2.
Bảng 2.2
Icon Tác dụng Đơn lệnh file
Trở về đơn lệnh chính và bắt đầu thực hiện phép tính Exit & Run Trở về đơn lệnh chính Exit
Bõ dữ liệu nhập và trở về đơn lệnh chính Abandon Data
10. Chọn Save Job hay Save Job As từ đơn lệnh File lưu dữ liệu nhập vào một tập tin. Cần chọn thư mục và tên tập tin (.gif, gaussian job file).
11. Chọn Exit từ đơn lệnh File hay nhấp chuột lên icon Exit để trở về cửa sổ chương trình chính. Lưu ý là trong vùng Output file lúc này có tên tập tin mà dữ liệu tính được sẽ được lưu vào (water.out). Dữ liệu xuất cũng sẽ xuất hiện trong cửa sổ lớn, dưới dòng chữ Run Progress.
Có thể bắt đầu phép tính bằng một trong hai cách sau: Chọn icon Run;
Chọn Begin Processing từ đơn lệnh Process.
2.4.3. Thực hiện việc tính toán
12.Bắt đầu thực hiện phép tính bằng một trong hai cách nói trên. Khi phép tính được thực hiện, vùng Run Progress sẽ cho biết diễn tiến của quá trình tính toán.
Thí dụ:
Dòng trên cho biết rằng phép tính hiện đang thực hiện Link 302 (mọi phiên bản Gaussian đều được chia thành khoảng 75 Link có chức năng tính toán riêng).
Ngoài ra, trong dòng trạng thái ở cạnh dưới màn hình sẽ xuất hiện thông tin về Link đang thực hiện.
Thí dụ:
Có thể cho phép tính tạm dừng hay chấm dứt việc tính toán bằng các mục trong đơn lệnh Process hay các icon tương đương (Bảng 2.3).
Bảng 2.3
Icon Tác dụng Đơn lệnh Process Tạm ngừng tức khắc Pause
Tạm ngừng sau khi Link hiện hành kết thúc Pause @ Next Link Bắt đầu lại phép tính đã bị tạm dừng Resume
Chấm dứt phép tính hiện hành Kill Job
Dữ liệu xuất được trình bày trong vùng Output Display. Vùng này có thể cuộn lên hay kéo xuống để xem khi muốn.
Khi phép tính chấm dứt, vùng Run Progress có thông báo:
Khi ấy trong cửa sổ Output vẫn còn chứa dữ liệu xuất từ phép tính.
2.4.4. Xem xét và diễn giải dữ liệu xuất
Xem xét dữ liệu xuất
Ở phần dữ liệu xuất sẽ thấy thông báo có dạng:
SCF Done: E(RHF) = -76.0098706218 A.U. after 6 cycles
Cho biết năng lượng của hệ thống tính theo cách RHF. Ở gần cuối của cửa sổ output có thông tin, như:
Job CPU time: O days O hours 0 minutes 12.6 seconds Files lengths (Mbytes): RWF=5 Int=1 D2E=0 Chk=1 Scr=0 Normal termination of Gaussian 98.
Cho biết phép tính đã được thực hiện tốt và cung cấp một số dữ liệu thống kê về phép tính.
2.5 Tính thế năng của phân tử Hidro
Sử dụng phần mềm Gaussian 98 để tính năng lượng điện tử, năng lượng hạt nhân và năng lượng liên kết phân tử của phân tử hidro với phương pháp tính toán Ab initio Hatree-FockSCF và bộ hàm cơ sở 6-31G(d) và STO-3G. Nhập ma trận Z như sau :
H
H 1 B1 Variables : B1=0.3
Với R=0.3a0 đến R=50a0 (1a0=0.5291772A0) ta thu được bảng số liệu năng lượng đẩy giữa hạt nhân, năng lượng điện tử và năng lượng phân tử hidro (đơn vị haatree) như sau :
Bảng 2.4. Số liệu thu được của năng lượng bằng phương pháp tính ab initio Hatree-Fock SCF với bộ hàm cơ sở 6-31G(d)
R[a0] Năng lượng
đẩy giữa hai hạt nhân
Năng lượng
của điện tử lượng Năng
liên kết phân tử 0.3 1.763924 -0.64515 1.11877 0.35 1.511935 -0.81916 0.692779 0.4 1.322943 -0.933 0.389939 0.45 1.175949 -1.00834 0.167614 0.5 1.058354 -1.05802 0.00033 0.6 0.881962 -1.11003 -0.22807 0.7 0.755967 -1.12612 -0.37016 0.75 0.70557 -1.12655 -0.42098 0.8 0.661472 -1.12371 -0.46224 0.9 0.587975 -1.11169 -0.52371 1.0 0.529177 -1.09481 -0.56563 1.1 0.48107 -1.07569 -0.59462 1.2 0.440981 -1.05576 -0.61478 1.3 0.4070594 -1.03582 -0.62877 1.5 0.352785 -0.9975 -0.64471 1.7 0.311281 -0.96231 -0.65103 1.9 0.278514 -0.93071 -0.65219 2.0 0.264589 -0.91627 -0.65168 2.1 0.251989 -0.90273 -0.65074 2.3 0.230077 -0.87821 -0.64814 2.5 0.211671 -0.8569 -0.64523 2.7 0.195992 -0.83847 -0.64248 3.0 0.176392 -0.81559 -0.6392 3.5 0.151193 -0.78797 -0.63678 4.0 0.132294 -0.7702 -0.63791
4.5 0.117595 -0.75888 -0.64129 5.0 0.105835 -0.75139 -0.64555 5.5 0.096214 -0.74602 -0.64981 6.0 0.088196 -0.74185 -0.65365 7.0 0.075597 -0.7355 -0.65991 8.0 0.066147 -0.73078 -0.66463 9.0 0.058797 -0.7271 -0.6683 10.0 0.052918 -0.72416 -0.67124 15.0 0.035278 -0.71534 -0.68006 20.0 0.026459 -0.71093 -0.68447 25.0 0.021167 -0.70829 -0.68712 30.0 0.017639 -0.70652 -0.68888 35.0 0.015119 -0.70526 -0.69014 40.0 0.013229 -0.70432 -0.69109 45.0 0.011759 -0.70358 -0.69182 50.0 0.010584 -0.703 -0.69241
Kết quả thu được của tính toán Ab initio Hartree-Fock SCF bằng bộ hàm cơ sở STO-3G khi thay đổi khoảng cách giữa hai hạt nhân R giống như khi dùng với bộ hàm cơ sở 6-31G[d] như sau :
Bảng 2.5 Số liệu thu được của năng lượng bằng phương pháp tính ab initio Hatree-Fock SCF với bộ hàm cơ sở STO-3G
R[a0] Năng lượng