Menghitung isomer alkana dan delapan homolog-satu

advertisement
Ruang Lingkup
Penelitian ini terdiri atas dua bagian yakni:
mendaftarkan kode struktur serta menghitung
jumlah isomer senyawa dan konversi kode
SMILES menjadi nama IUPAC. Pembentukan
kode senyawa dilakukan oleh perangkat lunak
garuna.py (generator alkana dan turunannya)
sedangkan hiaruna.py (penghitung isomer
alkana dan turunannya) hanya menghitung
jumlah isomer senyawa. Konversi kode
SMILES menjadi nama IUPAC dilakukan
oleh nu.py (nama IUPAC).
Tabel 1 Cara penggabungan kode alkil untuk
membentuk kode senyawa
Homolog
Penggabungan kode
Alkil
[C](R2)(R3)R1
Alkana
R2C(R3)(R4)R1
Alkena
R2=R1
Alkuna
R2C#CR1
Alkohol
OR
Eter
O(R2)R1
Aldehida
O=CR
Keton
O=C(R2)R1
Asam karboksilat
O=C(O)R
Ester
O=C(OR2)R1
Algoritma garuna
Pembentukan kode senyawa dimulai
dengan menentukan homolog rumus molekul
yang dimasukkan. Hal ini dilakukan dengan
membandingkan jumlah atom karbon,
hidrogen, dan oksigen dalam rumus molekul
yang dimasukkan dengan rumus molekul
homolog. Selanjutnya garuna membuat kode
alkil yang diperlukan sesuai senyawa yang
akan dibuat. Gugus fungsi diperlakukan
sebagai pusat sehingga kode senyawa dibuat
dengan menggabungkan kode alkil-alkil
dengan kode gugus fungsi seperti terlihat pada
Tabel 1. Kode dengan warna merah adalah
pusat senyawa. Setelah selesai membuat kode
senyawa garuna dapat menyimpan kode
tersebut dalam berkas.
Penentuan Waktu Perhitungan Garuna
Waktu perhitungan garuna adalah selang
waktu antara proses mulai dijalankan hingga
garuna selesai membuat semua struktur yang
mungkin. Penentuan waktu perhitungan
garuna dilakukan dengan menjalankan
garuna.py dengan bantuan cmd.exe. Garuna
dijalankan dengan perintah garuna.py
[rumus molekul]. Perintah ini akan
menjalankan python.exe yang bertugas
mengerjakan perintah dalam garuna.py.
Homolog, jumlah atom karbon, jumlah
isomer, dan waktu proses yang diperoleh
garuna dicatat dalam berkas log.txt.
Algoritma Hiaruna
Cara kerja hiaruna mirip dengan garuna,
pertama perangkat lunak akan menentukan
homolog rumus molekul yang dimasukkan.
Selanjutnya hiaruna akan memuat data jumlah
isomer alkil. Data tersebut akan dimanfaatkan
untuk menghitung jumlah isomer senyawa
yang dicari berdasarkan cara penggabungan
alkil-alkil untuk membentuk senyawa
tersebut.
Algoritma Nu (Konversi Kode SMILES
Menjadi Nama IUPAC)
Konversi kode SMILES menjadi nama
IUPAC diawali dengan mencari kode yang
menjadi pusat dari kode yang dimasukkan.
Berdasarkan kode tersebut perangkat lunak
akan menentukan homolog dan memecah
kode menjadi kode alkil-alkil pembangunnya.
Selanjutnya perangkat lunak menentukan
panjang, cabang dan posisi cabang tiap alkil.
Parameter tersebut berguna untuk menentukan
urutan prioritas alkil. Alkil yang lebih panjang
akan memiliki prioritas lebih tinggi. Jika
panjang alkil sama maka alkil dengan jumlah
cabang lebih banyak akan memiliki prioritas
lebih tinggi. Jika jumlah cabangnya sama
maka alkil dengan jumlah posisi lebih sedikit
akan memiliki prioritas lebih tinggi.
Rantai utama dibentuk dari dua alkil
dengan prioritas tertinggi. Alkil lainnya
diperlakukan sebagai cabang. Posisi cabang
yang dimiliki alkil yang membentuk rantai
utama akan disesuaikan berdasarkan posisinya
pada rantai utama. Berdasarkan nama cabang
dan nama rantai utama yang diperoleh, nama
IUPAC senyawa disusun.
HASIL DAN PEMBAHASAN
Pembentukan Kode Struktur Senyawa
Alkil yang dibutuhkan untuk membentuk
senyawa tergantung pada homolog senyawa
yang dicari. Berdasarkan cara penggabungan
kode alkil pada Tabel 1, alkil yang dibutuhkan
untuk membuat senyawa dengan n atom
karbon ditampilkan pada Tabel 2. Misalkan
untuk membuat kode struktur CnH2n-2 alkil
5
yang dibutuhkan adalah metil hingga CnH2n-3
karena kode pusatnya memiliki dua atom
karbon.
Tabel 2 Alkil yang diperlukan untuk membuat
senyawa dengan n atom karbon
Homolog
Alkil yang diperlukan
Alkil
1 hingga n-1
Alkana
1 hingga k
Alkena
1 hingga n-1
Alkuna
1 hingga n-2
Alkohol
1 hingga n
Eter
1 hingga n-1
Aldehida
1 hingga n-1
Keton
1 hingga n-2
Asam karboksilat
1 hingga n-1
Ester
1 hingga n-2
Cara penggabungan kode alkil juga
menentukan partisi yang digunakan. Misalnya
saat membuat alkana diperlukan dua hingga
empat alkil sehingga jumlah bilangan dalam
partisi adalah dua hingga empat. Jika a, b, c, d
adalah bilangan asli dan a > b > c > d maka
pola partisi yang digunakan untuk membuat
suatu senyawa ditunjukkan oleh Tabel 3.
Khusus untuk ester nilai a bisa kurang dari b.
Garuna berhasil mendaftarkan semua kode
struktur isomer alkana dari CH4 hingga C24H50.
Hal ini diketahui dari jumlah kode struktur
yang dihasilkan garuna sama dengan jumlah
isomer alkana menurut referensi.
Berdasarkan Tabel 3 dapat diketahui
bahwa pola partisi alkohol, aldehida dan asam
karboksilat sama. Hal ini disebabkan oleh cara
pembentukan ketiga senyawa homolog
tersebut sama. Karena gugus fungsi aldehida
dan asam karboksilat mengandung satu atom
karbon untuk membuat senyawa dengan n
atom karbon hanya diperlukan alkil hingga
Cn-1H2n-1 sedangkan untuk alkohol garuna
memerlukan alkil hingga CnH2n+1. Akibatnya
jumlah isomer alkil dengan n atom karbon
sama dengan jumlah isomer alkohol dengan n
atom karbon sama dengan jumlah isomer
aldehida dengan n+1 atom karbon dan sama
dengan jumlah isomer asam karboksilat
dengan n+1 atom karbon. Selain itu karena
alkil yang digunakan sangat banyak, dalam
penelitian
ini
garuna
hanya
dapat
menghasilkan struktur alkohol hingga 20 atom
karbon, serta aldehida dan asam karboksilat
hingga 21 atom karbon.
Tabel 3 Daftar pola partisi untuk membuat
suatu homolog
Homolog
Pola partisi
Alkil
(a), (a, b), (a, a), (a, b, c),
(a, a, b), (a, a, a)
Alkana
(a, a), (a, b, c), (a, a, b),
(a, a, a), (a, b, c, d),
(a, a, b, c), (a, a, b, b),
(a, a, a, b), (a, a, a, a)
Alkena
(a, b), (a, a)
Alkuna
(a), (a, b), (a, a)
Alkohol
(a)
Eter
(a, b), (a, a)
Aldehida
(a)
Keton
(a, b), (a, a)
Asam karboksilat
(a)
Ester
(a), (a, b)
Alkena, eter dan keton juga memiliki pola
partisi yang sama. Karena gugus fungsi keton
mengandung satu atom karbon sehingga untuk
membuat keton dengan n atom karbon hanya
diperlukan alkil hingga Cn-2H2n-3 sedangkan
dua lainnya memerlukan alkil hingga Cn-1H2n-1.
Karena itu garuna dapat menghasilkan
struktur keton hingga 21 atom karbon.
Struktur alkena dapat diperoleh hingga C 21H42
karena jumlah isomernya relatif sedikit
dibandingkan eter. Struktur eter hanya dapat
dihasilkan hingga 20 atom karbon.
Alkuna sedikit istimewa karena boleh
mengikat atom H sehingga bisa mengikat nol,
satu atau dua alkil. Akibatnya untuk membuat
alkuna dengan n atom karbon diperlukan alkil
hingga Cn-2H2n-3 sehingga strukturnya dapat
dibentuk hingga C22H42.
Ester juga istimewa karena gugus
fungsinya tidak simetris seperti pada keton.
Akibatnya rantai induk boleh lebih pendek
dari rantai cabang sehingga a boleh kurang
dari b tapi tidak boleh nol. Struktur ester
hanya dapat dibentuk hingga C20H40O2 karena
memiliki jumlah isomer paling banyak
dibandingkan homolog lainnya.
Waktu Perhitungan Garuna
Gambar 4 menunjukkan waktu yang
diperlukan untuk menghasilkan struktur
alkana yang dilakukan garuna dan beberapa
generator yang telah dibuat oleh peneliti lain.
Berdasarkan
gambar
tersebut
laju
pembentukan oleh garuna adalah yang paling
6
besar, yakni sebesar 28000 isomer per detik.
Hal ini disebabkan oleh komputer yang
digunakan paling cepat. KP, AHM dan HPVK
dijalankan pada sistem Silicon Graphics
Indingo 4000, processor RISC IP20 100 MHz
sedangkan generator Ballard dijalankan pada
sistem dengan prosesor Intel® Pentium® 1.6
GHz.
Gambar 4
Grafik waktu perhitungan lima
generator alkana.
Gambar
5
menunjukkan
waktu
pembentukan homolog selain alkana oleh
garuna hingga 19 atom karbon. Batas tersebut
ditetapkan karena pada saat itu memori virtual
belum digunakan. Hal ini dapat dilihat dari
bentuk grafik yang lurus. Berdasarkan gambar
tersebut laju pembentukan ester paling cepat
yakni sebesar 527.000 isomer per detik. Laju
pembentukan alkohol, eter, aldehida, keton
dan asam karboksilat sebesar 367.000 isomer
per detik. Laju pembentukan alkuna dan
alkena masing masing sebesar 185.000 dan
67.000 isomer per detik. Laju pembentukan
alkena paling lambat karena alkena hanya bisa
dibuat dari alkil primer dan sekunder. Laju
pembentukan ester paling cepat karena
tersedia lebih banyak partisi dengan pola yang
sama.
Gambar 12 menunjukkan perlambatan laju
pembentukan delapan yang ditunjukkan oleh
pelengkungan kurva ke kanan. Hal ini
disebabkan oleh penggunaan memori virtual
yang memiliki laju lebih rendah dari memori
RAM.
Jumlah Isomer
Jumlah isomer senyawa dihitung dari pola
partisi yang digunakan. Karena bilangan
dalam partisi menunjukkan jumlah atom
karbon dalam alkil maka jumlah isomer
adalah jumlah semua kombinasi yang
mungkin dibuat dari tiap pola partisi. Rumus
untuk tiap pola partisi dapat dilihat pada
lampiran x. berdasarkan cara tersebut hiaruna
dapat menghitung jumlah isomer tiap
homolog hingga 300 atom karbon dan
hasilnya sesuai dengan referensi.
Gambar 5 Grafik waktu pembentukan homolog selain alkana hingga 19 atom
karbon.
Gambar 6 Grafik waktu perhitungan garuna.
Konversi SMILES Menjadi Nama
IUPAC
Perangkat lunak nu menyusun nama
senyawa berdasarkan prioritas alkil yang
membangun senyawa tersebut. Meskipun saat
ini nu dapat menentukan nama IUPAC
senyawa yang kodekan SMILES tetapi masih
terbatas hingga sepuluh atom karbon. Batasan
ini karena pada senyawa yang memiliki
jumlah atom yang lebih banyak akan
ditemukan alkil yang berbeda tetapi memiliki
jumlah posisi cabang yang sama.
Download