ANALISIS KONSENTRASI CAMPURAN SENYAWA MENGGUNAKAN VB 2008
Harry S.J. Koleangan 1)
1) Program Studi Matematika FMIPA Universitas Sam Ratulangi Jl. Kampus Unsrat, Manado 95115 e-mail: koleanganharry@yahoo.com

## ABSTRAK
Telah dibuat sebuah program aplikasi menggunakan VB 2008 yang ditujukan untuk menganalisis suatu  larutan  yang  berisi  campuran  senyawa  etil-benzena, o -silena, m -silena,  dan p -silena. Konsentrasi  dari  masing-masing  senyawa  ini  ditentukan  menggunakan  metode  eliminasi  Gauss dalam  bentuk  program  komputer  yang  ditulis  menggunakan  bahasa  pemrograman  Visual  Basic 2008.  Penggunaan  program  ini  terhadap  suatu  data  sekunder,  memberikan  hasil  konsentrasi (dalam  satuan  molar)  sebagai  berikut:  etil-benzena  =  0,04153, o -silena  =  0,04067, m -silena  = 0,02772,  dan p -silena = 0,02522.
Kata kunci: metode Gauss, VB 2008

## ANALYSIS OF MIXED CPMPOUND CONCENTRATION USING VB 2008

## ABSTRACT
A  VB  2008-based    application  program    to  analyze    a  solution  containing  four  different compounds,  which  are  ethyl-benzene, o -xylene, m -xylene,  and p -xylene,  has  been  built. Concentration of each compound was then determined by using Gauss elimination method in the form  of  computer  program  written in Visual  Basic  2008  programming  language.  Application  of the program using the secondary data shows that concentrations (in molar) of each compuound are as follows: ethyl-benzene = 0,04153, o -xylena = 0,04067, m - xylena = 0,02772,  and p - xylena = 0,02522.
Keywords: Gauss method, VB 2008

## PENDAHULUAN
Analisis  secara  simultan  terhadap suatu  larutan  multi-komponen  adalah  sukar atau  bahkan  tidak  mungkin  dilakukan  secara konvensional.  Untuk  dapat  menganalisis larutan  seperti  ini  dapat  dilakukan  dengan menggunakan metode modern seperti spektroskopi.
Metode  spektroskopi  untuk  analisis larutan  multi-komponen  didasarkan  pada hukum  Beer.  Hukum  ini  menyatakan  bahwa absorbansi dari suatu larutan yang mengandung  suatu  spesies  yang  dapat menyerap  sinar  adalah  berbanding  lurus dengan  konsentrasi  spesies  tersebut.  Untuk larutan  yang  mengandung  campuran  spesies yang mampu menyerap sinar, maka absorbansinya  adalah  sama  dengan  jumlah absorbansi dari masing-masing-masing spesies  yang  ada  dalam  campuran  tersebut.
Dengan demikian, untuk menentukan konsentrasi  setiap  spesies  yang  ada  dalam suatu  campuran  maka  diperlukan  sejumlah persamaan  linear  yang  banyaknya  sama dengan  banyaknya  spesies  yang  hendak ditentukan konsentrasinya.
Penyelesaian persamaan linear simultan membutuhkan ketelitian yang tinggi dan  apabila  dilakukan  secara  manual  akan membutuhkan  waktu  yang  cukup  lama. Dengan  sebuah  program  komputer,  maka penyelesaian tersebut dapat dilakukan dengan waktu  yang  sangat  singkat  dengan  tingkat akurasi  yang  tinggi.  Tujuan  penelitian  ini adalah  membuat  suatu  program  komputer menggunakan  bahasa  pemrograman  Visual Basic  2008  konsentrasi  suatu  larutan  yang mengandung  etil-benzena, o -silena, m -silena, dan p -silena.

## METODOLOGI PENELITIAN

## Data
Data  penelitian  ini  merupakan  data sekunder  yang  diambil  dari  textbook How  to Use  Excel  in  Analytical  Chemistry  and  in General  Scientific  Data  Analysis tulisan Robert  de  Levie  (2004),  dengan  rincian seperti pada Tabel 1.
Tabel 1. Data Penelitian
Angka gelombang/cm -1 etil- benzena o -silena m -silena p -silena Campuran yang tidak diketahui 696,3 1,6534 0,0 0,1289 0,0641 0,07386 741,2 0,5524 4,7690 0,0668 0,0645 0,22036 768,0 0,1544 0,0 2,8542 0,0492 0,08676 795,2 0,0768 0,0 0,0968 2,8288 0,07721 Perhitungan selengkapnya untuk menentukan konsentrasi setiap spesies dalam larutan yang tidak  diketahui  dilakukan  melalui  program komputer yang dibuat.

## Algoritma Program
Ada  tiga  tahapan  utama  untuk menyelesaikan suatu persamaan linear simultan. Untuk mempermudah pemrograman,  setiap  tahapan  ini  dijadikan prosedur  pemrograman  tersendiri.  Ketiga prosedur  tersebut  adalah: MasukkanData untuk  memasukkan  data, Eliminasi untuk
melakukan  eliminasi,  dan SubstitusiBalik untuk melakukan substitusi balik.
Proses eliminasi dilakukan menggunakan metode Gauss. Untuk mempermudah  penyajian  algoritma  untuk proses eliminasi, maka algoritmanya dituliskan dalam bentuk flowchart (Gambar 1 dan 2).
Dari proses eliminasi For i = 3 to 0 step -1 s = H(i) For j = i + 1 to 3 s = s - Data(i,j) * X(j) Next j X(i) = s / Data(I,i) Next i end Gambar 2. Flowchart proses substitusi balik.
For i = 0 to 3 For k = i + 1 to 3 Pengali = Data(k,i)/Data(i,i) For j = i + 1 to 3 Data(k,j)= Data(k,j) – Pengali * Data(i,j) Next j H(k) = H(k) – Pengali * H(i) Data(k,i) = 0 Next k Next i end Dim Data(4,3), H(3)
Gambar 1. Flowchart proses eliminasi
Gauss.
Selanjutnya,  algoritma  dari  proses substitusi  balik  dalam  bentuk flowchart terlihat pada Gambar 2.

## Kode Program
Kode  program  selengkapnya  dapat dilihat pada lampiran.

## HASIL DAN PEMBAHASAN
Program  yang  telah  dibuat  diuji menggunakan data yang ada. Ketika pertama kali  dijalankan,  program  meminta  masukkan data.  Dengan  memasukkan  data  yang  ada
maka diperoleh tampilan pada Gambar 3 dan 4.
Gambar 3. Tampilan setelah data dimasukkan. Data  yang  telah  dimasukkan  ini selanjutnya  diproses  untuk  menghasilkan persamaan simultan dan dilakukan perhitungan  konsentrasi  senyawa.  Dengan menekan tombol Hitung Konsentrasi Masing- masing  Senyawa  dalam  Sampel ,  maka program  akan  menghitung  dan  menampilkan konsentrasi  dari  senyawa-senyawa  yang  ada dalam sampel (Gambar 4).
Gambar 4.  Tampilan hasil perhitungan.

## KESIMPULAN
Berdasarkan  uji  program  di  atas maka  dapat  disimpulkan  bahwa  program yang dibuat dapat digunakan untuk menentukan konsentrasi empat senyawa yang ada  dalam  suatu  sampel  yang  dianalisis secara spektrofotometri, yaitu konsentrasi etil benzena  =  0,04153,  konsentrasi o -silena  = 0,04067,  konsentrasi m -silena  =  0,02772  M, dan  konsentrasi p -silena  =  0,02522  M. Keuntungan menggunakan program ini dibandingkan  menggunakan  metode  manual adalah  perhitungan  dapat  dilakukan  dengan lebih  cepat  dengan  tingkat  ketilitian  tinggi dan  tidak  mengenal  lelah.  Selain  itu,  dengan sedikit  modifikasi,  program  ini  juga  dapat digunakan  untuk  penentuan  konsentrasi senyawa yang jenisnya lebih besar atau lebih
kecil  dari  empat  yang  dianalisis  secara spektrofotometri.

## DAFTAR PUSTAKA
Chapra,  S.  C.  and  R.  P.  Canale.  2006. Numerical Methods for Engineers. 5 th
Ed. McGraw-Hill,  New  York,  NY 10020.
Conte,  S.  D.  and  Carl  de  Boer.  1980.
Elementary  Numerical  Analysis.  An Algorithmic Approach. 3 rd Ed. McGraw-Hill, New York.
Dewobroto,  W.  2004.  Aplikasi  Sain  dan Teknik dengan Visual Basic 6.0.  PT.
Elex Media Komputindo. Jakarta.
Kennedy,  J.  H.  1990. Analytical  Chemistry: Principles . Second Edition. Saunders
College Publishing. Munadi,  S.  1995.  Perhitungan  Matriks dengan  Quick  Basic.  Andi  Offset. Yogyakarta. Petroutsos, E., M. Ridgeway. 2008.
Mastering Visual 2008. SYBEX Inc., 1151 Marina
Press,  W.  H.,  S.  A.  Teukolsky,  W.  T.
Vetterling,  B.  P.  Flannery.  2007.
Numerical  Recipes.  The  Art  of Scientific Computing. 3 rd Ed ., Cambridge University Press.

## Lampiran. Kode Program
'***************************************************************** 'Program untuk menentukan konsentrasi 4 senyawa dalam suatu sampel 'Dibuat oleh: Ir. Harry S. J. Koleangan, M.Si. 'Jurusan Kimia, FMIPA Unsrat, Manado '*****************************************************************
Public Class Spektrometri Dim dataMentah(3, 4), H(3), X(3) As Double
'fungsi untuk mengkonversi data tipe string pada textbox menjadi tipe numeric Private Function Konversi( ByVal Teks As String ) As Double
If IsNumeric(Teks) Then Konversi = CType (Teks, Double ) End If
End Function
'subrutin untuk memasukkan data Private Sub masukkanData() 'data pada angka gelombang pertama (696.3 cm-1) dataMentah(0, 0) = Konversi(txtEtil1.Text) dataMentah(0, 1) = Konversi(txtOsil1.Text) dataMentah(0, 2) = Konversi(txtMsil1.Text) dataMentah(0, 3) = Konversi(txtPsil1.Text) H(0) = Konversi(txtSampel1.Text)
'data pada angka gelombang kedua (741.2 cm-1) dataMentah(1, 0) = Konversi(txtEtil2.Text) dataMentah(1, 1) = Konversi(txtOsil2.Text) dataMentah(1, 2) = Konversi(txtMsil2.Text) dataMentah(1, 3) = Konversi(txtPsil2.Text) H(1) = Konversi(txtSampel2.Text)
'data pada angka gelombang ketiga (768.0 cm-1) dataMentah(2, 0) = Konversi(txtEtil3.Text) dataMentah(2, 1) = Konversi(txtOsil3.Text) dataMentah(2, 2) = Konversi(txtMsil3.Text) dataMentah(2, 3) = Konversi(txtPsil3.Text) H(2) = Konversi(txtSampel3.Text)
'data pada angka gelombang keempat (795.2 cm-1) dataMentah(3, 0) = Konversi(txtEtil4.Text) dataMentah(3, 1) = Konversi(txtOsil4.Text) dataMentah(3, 2) = Konversi(txtMsil4.Text) dataMentah(3, 3) = Konversi(txtPsil4.Text) H(3) = Konversi(txtSampel4.Text) End Sub
'subrutin untuk melakukan eliminasi Private Sub Eliminasi() Dim i, j, k As Integer
Dim Pengali As Double For i = 0 To 3 For k = i + 1 To 3 Pengali = dataMentah(k, i) / dataMentah(i, i) For j = i + 1 To 3 dataMentah(k, j) = dataMentah(k, j) - Pengali * dataMentah(i, j) Next H(k) = H(k) - Pengali * H(i) dataMentah(k, i) = 0 Next Next End Sub
'subrutin untuk melakukan substitusi balik Private Sub SubstitusiBalik() Dim i, j As Integer Dim s As Double For i = 3 To 0 Step -1
s = H(i) For j = i + 1 To 3 s = s - dataMentah(i, j) * X(j) Next X(i) = s / dataMentah(i, i) Next End Sub
'subrutin untuk menghitung dan menampilkan hasil perhitungan Dim hasilPerhitunganForm As New hasilPerhitungan Private Sub btHitung_Click( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btHitung.Click Dim i, j As Integer masukkanData() Eliminasi() SubstitusiBalik() 'menampilkan hasil perhitungan For i = 0 To 3 For j = 0 To 3
Select Case j Case 0 hasilPerhitunganForm.lblEtil.Text = Format(X(j), "0.00000" ) Case 1 hasilPerhitunganForm.lblOsil.Text = Format(X(j), "0.00000" ) Case 2 hasilPerhitunganForm.lblMsil.Text = Format(X(j), "0.00000" ) Case 3 hasilPerhitunganForm.lblPsil.Text = Format(X(j), "0.00000" ) End Select
Next
Next hasilPerhitunganForm.Show() End Sub
Private Sub btKlaar_Click( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btKlaar.Click End End Sub End Class