2.2.1. Tạo tệp tin đầu vào
Từ tệp tin .out thu được sau quá trình tính toán hồi phục, các giá trị sau được lấy ra để tạo tệp tin đầu vào cho quá trình tính phổ năng lượng: hằng số mạng, vecter mạng đảo, số điểm k, lưới diểm k, số điểm chia, số dải năng lượng, tọa độ các điểm k, tổng
45
nguyên tử, số loại nguyên tử, nguyên tử số (số Z), số lượng từng loại nguyên tử, tọa độ tương đối của các nguyên tử. Một chương trình nhỏ viết bằng fortran giúp viết lại các giá trị trên theo cấu trúc của tệp tin .in phục vụ cho quá trình tính toán phổ năng lượng. Một số cấu trúc có số lượng nguyên tử lớn như Fddd, F2dd, Pbca có số nguyên tử lớn 88 nguyên tử với tài nguyên máy có hạn nên không đáp ứng được nhu cầu tính toán vì vậy phổ năng lượng của các pha này không được thực hiện trong luận văn này.
2.2.2. Cấu trúc chương trình
Tương tự như khi tính toán hồi phục, để thực hiện chương trình cần có các tệp tin sau:
tệp tin .files: khi chạy chương trình sẽ gọi đến tệp tin này, trong tệp tin gồm tệp tin đầu vào chính, tệp tin đầu ra chính, tệp tin đầu vào gốc, tệp tin đầu ra gốc, tệp tin tạm thời, các tệp tin thế. Cần chú ý các tệp tin thế phải được viết theo đúng thứ tự của các nguyên tố dùng trong tệp tin .in.
Tệp tin .in: đây là tệp tin chương trình chính chứa các thông tin về cấu trúc, thuật toán,... được tạo ra từ quá trình II.1.
Các tệp tin thế: các tệp tin thế được sử dụng trong luận văn này là PBE đây là thế tương tác được xây dựng bởi Perdew, Burke, Ernzerfhof.
46
Cấu trúc chương trình trong tệp tin .in được mô tả thông qua lưu đồ sau:
Bắt đầu
Các thông số cấu trúc Các điều kiện ban đầu
hồi phục cấu trúc
tính toán tự tương hợp
tính toán phổ năng lượng
47 Các thông số cấu trúc:
acell: hằng số mạng đơn vị là Bohr
rprim: vecter mạng đảo
ntypat: tổng số loại nguyên tố trong cấu trúc
znucl: số Z của từng nguyên tố
natom: tổng số nguyên tử
typat: loại của từng nguyên tử
xred: tọa độ tương đối của từng nguyên tử Các điều kiện ban đầu:
ecut: động năng cắt tối đa đặc trưng cho khoảng cách tương tác tối đa của 1 nguyên tử đơn vị là Hartree
diemac: hằng số điện môi
Chương trình tính phổ năng lượng gồm 3 phần:
Phần 1 hồi phục cấu trúc: phần này có thuật toán giông như đã trình bày trên mục I, do đã lấy các thông số của cấu trúc đã hồi phục sau quá trình tính ở trên nên chỉ cần 1 vòng lặp thì cấu trúc đã hồi phục.
Phần 2 tính toán tự tương hợp: các biến được gọi ra trong phần này sẽ lấy các thông số mạng, tọa độ từ phần 1 để tính tự tương hợp cuối cùng in ra tệp tin mật độ điện tử.
Phần 3 tính toán phổ năng lượng: biến getden được gọi ra sẽ sử dụng tệp tin mật độ điện tử được tạo ra từ phần trên cùng với các thứ tự các điểm k, số điểm chia giữa hai điểm k liên tiếp do ta chọn để tính ra giá trị năng lượng ứng với các tọa độ các điểm đó.
48