adding custom basis set in input Gaussian 03

Gaussian datang dengan berbagai basis set default yang dibawanya terutama basis set yang dikembangkan dengan John Pople dkk. seperti sto-3g, 6-31g dst. dan beberapa basis set lainnya. Penggunaan basis set ini penting dalam perhitungan kimia komputasi, namun pada tulisan kali ini tidak akan dibahas tentang basis set itu sendiri karena telah dibahas pada tulisan yang lalu. Tulisan kali ini akan membahas bagaimana memasukkan basis set ke dalam input Gaussian, baik itu basis set yang dikembangkan oleh Pople maupun yang dikembangkan oleh yang lainnya.


Jika kita lupa memasukkan basis set dalam route section input, maka secara otomatis Gaussian (Gaussian 03) akan menggunakan STO-3G. Basis set yang akan digunakan harus disebutkan sesuai dengan penamaan dari Pople dkk. misalnya STO-3G, 6-31g, kecuali untuk beberapa basis set lain seperti LANL2DZ, LANL2MB dll. Penambahan fungsi polarisasi atau difusi ditunjukkan dengan tanda * (d) seperti 6-31g* atau 6-31g(d), dapat juga menggunakan ** untuk penambahan fungsi polarisasi. Fungsi diffusi bisa ditambahkan dengan tanda + atau ++, misalnya 6-31g++. Nah, jika mengkombinasi antara fungsi polarisasi dengan fungsi difusi bisa ditulis sebagai berikut : 6-31g+(d) -> fungsi difusi dulu baru fungsi polarisasi. Semua ini mudah dilakukan jika menggunakan GaussView, Gabedit dan software-software lain yang semacamnya.

Permasalahan muncul mana kala menggunakan basis set yang tidak ada di dalam databasenya Gaussian (Gaussian 03) seperti DZP Dunning. Untuk mengatasi hal ini, Gaussian menyediakan dua keyword (CMIIW), Gen dan Pseudo. Gen digunakan apabila kita menggunakan basis set yang tidak ada di database Gaussian seperti DZP Dunning, CRENBL, basis set dengan ECP dan berbagai macam basis set lain. Perlu diketahui bahwasanya pengembangan basis set tidak hanya dilakukan oleh Pople dkk. saja. Eh iya, mungkin ada pertanyaan darimana kita bisa memperoleh basis set? Hmm, bisa dari EMSL Basis Set Exchange atau dari alamat web lainnya, misalnya Stutgart (saya agak lupa alamat lengkapnya😦 ). Jika mengambil basis set dari EMSL, sangat disarankan memakai format basis set yang digunakan oleh Gaussian, karena terdapat berbagai macam format penulisan basis set seperti dalam format NWCHEM, Turbo Mole, Q-CHEM dan yang lainnya. Oke, mari kita lihat contohnya, di sini saya menggunakan LANL2DZ ECP untuk atom Al.

Contoh pertama -> basis set LANL2DZ dengan ECP untuk atom Al.

# hf/gen pseudo=read gfprint
(blank line)
Title Card Required
(blank line)
3 1
Al                 0.00000000    0.00000000    0.00000000
(blank line)
Al     0
S   2   1.00
0.9615000             -0.5021546
0.1819000              1.2342547
S   1   1.00
0.0657000              1.0000000
P   2   1.00
1.9280000             -0.0712584
0.2013000              1.0162966
P   1   1.00
0.0580000              1.0000000
****
(blank line)
AL     0
AL-ECP     2     10
d   potential
5
1    304.7291926            -10.0000000
2     61.5299768            -63.8079837
2     13.9259006            -22.8972174
2      4.1463626             -8.0063232
2      1.3715443             -0.8829345
s-d potential
5
0    467.8437756              3.0000000
1     79.3992216             50.9705682
2     25.4035967            143.8716460
2      6.9954696             48.0055753
2      1.7860129             14.0114180
p-d potential
6
0    776.2717190              5.0000000
1    118.4992254             93.0595424
2     34.4107276            266.7686329
2      8.7859563             70.0725805
2      2.3406228             17.2290839
2      0.7398386              0.7105331

Dari sini, terlihat bahwa setelah spesifikasi input diselingi 1 blank line, kemudian ditulis basis set untuk atom dan diakhiri dengan tanda ****. Untuk memasukkan ECP (Effective Core Potential) setelah tanda **** diselingi 1 blank line kemudian ECP dimasukkan tanpa diakhiri tanda ****.

Contoh kedua -> basis set DZP Dunning  untuk Al dan O

# hf/gen gfprints
(blank line)
Title Card Required
(blank line)
(koordinat atom)
(blank line)
O     0
S   6   1.00
7816.5400000              0.0020310
1175.8200000              0.0154360
273.1880000              0.0737710
81.1696000              0.2476060
27.1836000              0.6118320
3.4136000              0.2412050
S   1   1.00
9.5322000              1.0000000
S   1   1.00
0.9398000              1.0000000
S   1   1.00
0.2846000              1.0000000
P   4   1.00
35.1832000              0.0195800
7.9040000              0.1241890
2.3051000              0.3947270
0.7171000              0.6273750
P   1   1.00
0.2137000              1.0000000
D   1   1.00
0.8500000              1.0000000
****
Al     0
S   5   1.00
23490.0000000              0.0025090
3548.0000000              0.0189860
823.5000000              0.0929140
237.7000000              0.3359350
78.6000000              0.6473910
S   3   1.00
78.6000000              0.1119370
29.0500000              0.6559760
11.6200000              0.2833490
S   1   1.00
3.4650000              1.0000000
S   1   1.00
1.2330000              1.0000000
S   1   1.00
0.2018000              1.0000000
S   1   1.00
0.0780500              1.0000000
P   4   1.00
141.5000000              0.0178820
33.2200000              0.1203750
10.3900000              0.4115800
3.5930000              0.5953530
P   2   1.00
3.5930000              0.2117580
1.2420000              0.8377950
P   1   1.00
0.3040000              1.0000000
P   1   1.00
0.0762900              1.0000000
D   1   1.00
0.3250000              1.0000000
****
Dari contoh kedua ini terlihat bahwa setelah spesifikasi koordinat atom, diselingi satu blank kemudian basis set untuk atom pertama dan diakhiri dengan tanda ****, kemudian basis set untuk atom kedua dan juga diakhiri dengan tanda ****.

#To Be Continue ..

6 thoughts on “adding custom basis set in input Gaussian 03

  1. saya ingin tahu kalau membuat koordinat antara Zr(IV) dengan H2O dalam bentuk z-matrix, lalu menulis basis set lanl2dz dan dzp duning dan mengatasi adanya charge transfer

    • oia, yang masalah charge transfer belum sempat tak jawab.dari beberapa seminar tesis yang sya ketahui, satu2nya cara mengatasi charge transfer adalah dengan mengganti basis set sampai tidak ada lagi charge transfer.🙂

      • thanks neax502, saya sudah coba sarannya mengganti basis set tetapi belum ketemu tetapi kalau menghilangkan sebagian fungsi basis dengan eksponen lebih kecil 0.5 malah berhasil mengatasi CT.

        saya mau nanya lagi.

        Kalau mau menggunakan basis set selain yang default (def-SV(P)) dalam turbomole, bagaimana caranya? Tolong dijelaskan step by step so be clear. Saya sudah mengotak-atik di basen juga belum berhasil.

        best regards

      • hmm, mengurangi fungsi basis merupakan hal yang riskan, sebaiknya di cek kembali apakah ada kesalahan setelah sebagian fungsi basis dihilangkan.
        ya nanti kalo ada waktu akan saya coba tuliskan basis set turbo mole🙂

  2. Pingback: adding external basis set to turbomole | Niko Prasetyo's personal blog

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s