Algoritma, Rumus dan Analisa Perhitungan (Arah Kiblat dan Waktu Shalat)


I.                   Perhitungan Arah Kiblat
      


      a.     Keterangan & Input Data
       Sebelumnya, dalam input data yang diperlukan adalah data Markaz baik Lintang maupun Bujur, dan dalam program tersebut data lintang maupun bujur sudah tersedia dalam sheet Lembar kerja, dari kolom C3:G4, dalam membahasakannya data lintang maupun bujur yang ada berupa drajat, menit dan detik, digabungkan dan digunakan fungsi “=Vlookup” dan dalam tampilan kolom lintang B6 dan Bujur C6 merupakan hasil dari saving perhitungan lintang pada kolom F3 dan bujur kolom F4.
Adapun untuk data Lintang Makkah (21˚25’ 21.04”) dan Bujur Makkah (39˚49’34.33”) ada di kolom B9 dan B10. Selanjutnya, pencarian SBMD (Selisih Bujur Mekah Daerah), merupakan proses dari pengurangan antara bujur tempat dengan bujur makkah dan ditampilkan pada kolom I9.
       Selanjutnya dan pencari Arah kiblat, akan ditampilkan dua buah hasil perhitungan, yaitu hasil dari perhitungan dengan rumus Cotan (yang berarti dari Utara ke Barat) dan Tan (yang berarti dari Barat ke UTara). Tampilan hasil Cotan berada pada kolom B13 dan tampilan Tan pada kolom E13.


Rumus & Ketentuan Falak
Rumus-rumus yang ada didalam penentuan arah kiblat adalah sebagai berikut:
o   SBMD              = Bujur Tempat – Bujur Mekkah
o   Tan Kiblat      = (cos Lintang Tempat * tan Lintang Makkah / sin SBMD – sin Lintang Tempat / tan SBMD)
o   Cotan Kiblat   =(sin (90 – Lintang Tempat ) * (1/tan(90 – Lintang Makkah)) / sin SBMD – cos (90 – Lintang Tempat) * (1/tan SBMD)

b.      Logika & Pembahasan Program Excel
       Dalam bagian ini akan dilampirkan bentuk bahasa excel yang membahasakan perhitungan rumusnya, yaitu:
o   Lintang           tampilan        =(IF(M90>0," ","-"))&TRUNC(ABS(M90))&"˚"&TRUNC(((ABS(M90))-(IF(M90>0," ","-")&TRUNC(ABS(M90))))*60)&"'"&ROUND((((ABS(M90))-(IF(M90>0," ","-")&TRUNC(ABS(M90))))*60-(TRUNC(((ABS(M90))-(IF(M90>0," ","-")&TRUNC(ABS(M90))))*60)))*60,2)&"''"
o   Lintang Perhitungan = IF(VLOOKUP(B4,S3:Y386,2,FALSE)<0,(((VLOOKUP(B4,S3:Y386,2,FALSE)))+(-1*((VLOOKUP(B4,S3:Y386,3,FALSE))))/60+((VLOOKUP(B4,S3:Y386,4,FALSE)))/3600),(((VLOOKUP(B4,S3:Y386,2,FALSE)))+((VLOOKUP(B4,S3:Y386,3,FALSE)))/60+((VLOOKUP(B4,S3:Y386,4,FALSE)))/3600))
o   Bujur Tampilan                     =  INT((M91))&"˚"&INT(((M91)-INT((M91)))*60)&"'"&ROUND(((((M91)-INT((M91)))*60)-INT(((M91)-INT((M91)))*60))*60,2)&""""
o   Bujur Perhitungan    = ((VLOOKUP(B4,S3:Y386,5,FALSE)))+(((VLOOKUP(B4,S3:Y386,6,FALSE)))/60)+(((VLOOKUP(B4,S3:Y386,7,FALSE)))/3600)
o   SBMD  Perhitungan   = M91-M93
o   SBMD Tampilan        = INT((M94))&"˚"&INT(((M94)-INT((M94)))*60)&"'"&ROUND(((((M94)-INT((M94)))*60)-INT(((M94)-INT((M94)))*60))*60,2)&""""
o   Tan Kiblat                  = ATAN(COS(RADIANS(M90))*TAN(RADIANS(M92))/SIN(RADIANS(M94))-SIN(RADIANS(M90))/TAN(RADIANS(M94)))*180/PI()
o   Cotan Kiblat               = ATAN(1/(SIN(RADIANS(90-M90))*(1/TAN(RADIANS(90-M92)))/SIN(RADIANS(M94))-COS(RADIANS(90-M90))*(1/TAN(RADIANS(M94)))))*180/PI()


II.                Perhitungan Waktu Shalat


      a.       Keterangan & Input Data
       Dan selanjutnya dalam perhitungan waktu shalat, yang mencakup waktu Dhuhur (kolom C25), Asar (kolom C26), Maghrib (kolom C27), Isya’ (kolom C28), Imsak (kolom C29), Subuh (C30), Terbit (C31), dan Dhuha (C32). Data yang diperlukan adalah Lintang tempat, bujur, ketinggian tempat, dan klasifikasi zona waktu(yang mencakup  bujur 105, 120 dan 135). Selain itu data yang diperlukan adalah Deklinasi dan Equation of time, hasil dari kedua data tadi merupakan pengaruh dari input data pada kolom H2,I2 dan J2 yang masing-masingnya adalah jumlah hari, bulan dan tahun. Setelah diketahui tinggi tempat maka akan ditemukan kerendahan ufuk dan tinggi matahari waktu terbenam. Input data dari list lintang dan bujur diambil sama dari data dalam perhitungan Arah Kiblat sebelumnya sama menggunakan fungsi “=Vlookup”. Pada tampilannya zona waktu pada inputnya akan mempengaruhi klasifikasi masuk WIB, WITA atau WIT.
       B19 adalah kolom hasil pencarian lintang, C19 adalah bujur, D19 merupakan zona waktu dan E19 adalah tinggi tempat. Kolom B17 menjadi penentu input data dari markaz berdasarkan tabel lintang dan bujur. B21 dan B22 adalah kerendahan ufuk dan hasil dari perhitungan antara semi diameter teratas dengan kerendahan ufuk menghasilkan tinggi matahari ketika terbenam dan juga data ini dipakai pada perhitungan terbit matahari. Perhitungan deklinasi dan equation of time berada pada kolom M87 dan L87. Waktu shalat merupakan hasil perhitungan dari: Subuh pada kolom N110, Terbit kolom N111, Dhuha pada kolom N112, Dzuhur pada kolom N106, Ashar terletak pada kolom N107, Maghrib pada kolom N108 dan Isya’ pada kolom N109.

b.      Rumus & Ketentuan Falak
       Sebagaimana dalam perhitungan arah kiblat, Waktu Shalat pun memiliki beberapa rumus, diantaranya:
o   Kerendahan ufuk      = 0˚1.76 * akar tinggi tempat
o   Tinggi Matahari                     = -( 0˚34’ + 0˚16 + kerendahan ufuk)
o   Deklinasi                    = - 23.45 * cos [(360 * (jumlah hari dan bulan + 10)/ 365]
o   Equation of Time      = 9.87 * sin (2 *((360 * (jumlah hari dan bulan - 81))/364)) – 7.53 * cos (((360 * (jumlah hari dan bulan - 81))/364)) – 1.75 * sin (((360 * (jumlah hari dan bulan - 81))/364)))
o   Dzuhur                                   =  - equation of time +( ( zona waktu – bujur daerah)/15)

o   Ashar                          =   +(Abs(( (sin ((((tan(deklinasi matahari – lintang tempat)) + 1) ) / cos Lintang Tempat / cos Deklinasi Matahari – tan Lintang Tempat * Tan deklinasi))/15)) - equation of time +( ( zona waktu – bujur daerah)/15)
o   Maghrib                      =  +(Abs(( (sin tinggi matahari saat terbenam atau terbit/ cos Lintang Tempat / cos Deklinasi Matahari – tan Lintang Tempat * Tan deklinasi))/15)) - equation of time +( ( zona waktu – bujur daerah)/15);

o   Isya’                            =   +(Abs(( (sin (-17˚ + tinggi matahari saat terbenam atau terbit)/ cos Lintang Tempat / cos Deklinasi Matahari – tan Lintang Tempat * Tan deklinasi))/15)) - equation of time +( ( zona waktu – bujur daerah)/15);


o   Shubuh                                   =   +(-1 * (( (sin (-19˚ + tinggi matahari saat terbenam atau terbit)/ cos Lintang Tempat / cos Deklinasi Matahari – tan Lintang Tempat * Tan deklinasi))/15)) - equation of time +( ( zona waktu – bujur daerah)/15)

o   Terbit Matahari                     =   +(-1 * (( (sin tinggi matahari saat terbenam atau terbit/ cos Lintang Tempat / cos Deklinasi Matahari – tan Lintang Tempat * Tan deklinasi))/15) )- equation of time +( ( zona waktu – bujur daerah)/15);


o   Dhuha                         =   +(( (sin 4˚30’/ cos Lintang Tempat / cos Deklinasi Matahari – tan Lintang Tempat * Tan deklinasi))/15) - equation of time +( ( zona waktu – bujur daerah)/15);



c.       Logika & Pembahasaan Program Excel
       Dan untuk waktu Shalat, adapun Bahasa dalamnya adalah sebagai berikut:
o   Lintang dan Bujur sama seperti Bahasa pada Waktu Shalat;
o   Zona waktu, disana menggunakan fungsi dari menu data > data validation > data validation > Allow > list > yang akan mengambil opsi data dari kolom P88:P90.
o   Tinggi Tempat juga sama dengan zona waktu, menggunakan data validation.
o   Kerendahan Ufuk      = N88*SQRT(E19)
o   Tinggi Matahari Terbit atau terbenam       = - (N89+N90+M98)
o   Deklinasi Matahari    = -23.45*COS(RADIANS((360*((H2+IF(O89=INT(O89),((IF(I2=1,0,IF(I2=2,31,IF(I2=3,60,IF(I2=4,91,IF(I2=5,121,IF(I2=6,152,IF(I2=7,182,IF(I2=8,213,IF(I2=9,244,IF(I2=10,274,IF(I2=11,305,335))))))))))))),(IF(I2=1,0,IF(I2=2,31,IF(I2=3,59,IF(I2=4,90,IF(I2=5,120,IF(I2=6,151,IF(I2=7,181,IF(I2=8,212,IF(I2=9,243,IF(I2=10,273,IF(I2=11,304,334))))))))))))))+10)/365)))
o   Equation of Time      = (((9.87*SIN(RADIANS(2*(360*(((H2+IF(O89=INT(O89),((IF(I2=1,0,IF(I2=2,31,IF(I2=3,60,IF(I2=4,91,IF(I2=5,121,IF(I2=6,152,IF(I2=7,182,IF(I2=8,213,IF(I2=9,244,IF(I2=10,274,IF(I2=11,305,335))))))))))))),(IF(I2=1,0,IF(I2=2,31,IF(I2=3,59,IF(I2=4,90,IF(I2=5,120,IF(I2=6,151,IF(I2=7,181,IF(I2=8,212,IF(I2=9,243,IF(I2=10,273,IF(I2=11,304,334))))))))))))))-81)/364))))-7.53*COS(RADIANS(360*(((H2+IF(O89=INT(O89),((IF(I2=1,0,IF(I2=2,31,IF(I2=3,60,IF(I2=4,91,IF(I2=5,121,IF(I2=6,152,IF(I2=7,182,IF(I2=8,213,IF(I2=9,244,IF(I2=10,274,IF(I2=11,305,335))))))))))))),(IF(I2=1,0,IF(I2=2,31,IF(I2=3,59,IF(I2=4,90,IF(I2=5,120,IF(I2=6,151,IF(I2=7,181,IF(I2=8,212,IF(I2=9,243,IF(I2=10,273,IF(I2=11,304,334))))))))))))))-81)/364)))-1.5*SIN(RADIANS(360*(((H2+IF(O89=INT(O89),((IF(I2=1,0,IF(I2=2,31,IF(I2=3,60,IF(I2=4,91,IF(I2=5,121,IF(I2=6,152,IF(I2=7,182,IF(I2=8,213,IF(I2=9,244,IF(I2=10,274,IF(I2=11,305,335))))))))))))),(IF(I2=1,0,IF(I2=2,31,IF(I2=3,59,IF(I2=4,90,IF(I2=5,120,IF(I2=6,151,IF(I2=7,181,IF(I2=8,212,IF(I2=9,243,IF(I2=10,273,IF(I2=11,304,334))))))))))))))-81)/364)))))/180*PI())
o   Subuh             =12-((ACOS(SIN(RADIANS(-19+O104))/COS(RADIANS(P86))/COS(RADIANS(M87))-TAN(RADIANS(P86))*TAN(RADIANS(M87)))*180/PI())/15)+(-L87+((D19-P87)/15))
o   Terbit                         = 12+(-1*((ACOS(SIN(RADIANS(O104))/COS(RADIANS(P86))/COS(RADIANS(M87))-TAN(RADIANS(P86))*TAN(RADIANS(M87)))*180/PI())/15))+(-L87+((D19-P87)/15))
o   Dhuha             = 12+(-1*((ACOS(SIN(RADIANS(N87))/COS(RADIANS(P86))/COS(RADIANS(M87))-TAN(RADIANS(P86))*TAN(RADIANS(M87)))*180/PI())/15))+(-L87+((D19-P87)/15))
o   Dzuhur                       = N91-O88+((D19-P87)/15)
o   Ashar              = 12+((ACOS(SIN(RADIANS((ATAN(1/((TAN(RADIANS(ABS(O87-P86))))+1))*180/PI())))/COS(RADIANS(P86))/COS(RADIANS(M87))-TAN(RADIANS(P86))*TAN(RADIANS(M87)))*180/PI())/15)+(-L87+((D19-P87)/15))
o   Maghrib          = 12+((ACOS(SIN(RADIANS(O104))/COS(RADIANS(P86))/COS(RADIANS(M87))-TAN(RADIANS(P86))*TAN(RADIANS(M87)))*180/PI())/15)+(-L87+((D19-P87)/15))
o   Isya’                = 12+((ACOS(SIN(RADIANS(-17-1.489247))/COS(RADIANS(P86))/COS(RADIANS(M87))-TAN(RADIANS(P86))*TAN(RADIANS(M87)))*180/PI())/15)+(-L87+((D19-P87)/15))
o   Daerah Waktu           = IF(D19=105,"WIB",IF(D19=120,"WITA","WIT"))
III.              Koreksi
     Ada beberapa hal yang perlu dikoreksi, karena ada beberapa kelemahan yang terjadi pada proses pembahasaan dari rumus-rumus Arah Kiblat dan Waktu Shalat, diantaranya adalah sebagai berikut:
a)     Dalam kolom lintang, ada kalanya hasil dari menit yang didapatkan dari model Vlookup yang digabungkan antara Vlookup derajat + Vlookup menit/ 60 + Vlookup detik / 3600 mendapatkan hasil yang janggal, karena adakalanya hasilnya menit lebih dari 2 dijit, kekurangan yang terjadi dari sana;
b)     Terlalu berbelit-belit ataupun terlalu panjang pembahasaan dalam program tersebut. Sehingga ada banyak kolom yang rumusnya panjang, disebabkan oleh upaya logika dan juga efisiensi tempat tanpa mencantumkan berbagai data atau proses tampak luar perhitungan; dan,
c)      Hasil decimal dari perhitungan terpisah penempatannya dari tampilan program  tersebut, sehingga ada kesulitan dalam pengecekan hasil dan penyelarasan dalam tampilan.


IV.              Kesimpulan

       Dalam pembuatan program arah kiblat dan waktu shalat dengan menggunakan Microsoft Excel, analisa penulis menemukan beberapa kekurangan yang ditemukan, dari kesalahan penghitungan, seperti:
5.1*12850 atau 20.4*32125, hasil dari excel 2007 adalah 100.000 setelah dibandingkan dengan kalkulator ternyata hasilnya 65535. Penulisan rumus perhitungan dalam Microsoft Excel dan pemakaian fungsi kurang efektif. Rumus-rumus yang ada, tak digali tapi justru dipersempit dengan menggunakan logika-logika aritmatika. Alhasilnya, hasil yang ditunjukkan dalam program Arah Kiblat dan Waktu Salat menggunakan Microsoft Excel ini belum bisa dijadikan rujukan.
 Wallahu a,lam bisshawaab..


1 comment:

  1. gambarnya [rumus] masih fi harddisk lokal gan, belom ke-uploadkalo bisa diulang akan lebihh jelas

    ReplyDelete

Powered by Blogger.