BAB 5 KERJASAMA DALAM BERBAGAI BIDANG KEHIDUPAN.pptx
PythonTeX dan Sympy kolaborasi
1. PythonTEX & SymPy
Kolaborasi PythonTEX & SymPy dalam interpretasi
hasil di LATEX
Hirwanto
24 Nopember 2014
2. Motivasi
LATEX sebagai perangkat lunak yang memiliki hasil pengaturan teks
yanng cantik khususnya yang memuat notasi /simbol matematika.
Namun LATEX, dapat juga dikembangkan sebagai sebuah kalkulator
/perhitungan suatu persaman melalui PythonTEX. Ini memberikan
kepraktisan dalam menampilkan data dan hasil dalam satu
perintah di LATEX. Motivasi ini menginisiasi dalam perkembangan
yang lebih luas seperti penerapan module Sympy untuk mencari
hasil perhitungan matematika seperti integral, limit, turunan,
maupun fungsi eksponen. PythonTEX dan Sympy berkolaborasi
menghasilkan perhitungan yaitu :
1. Module Sympy melakukan perhitungan dan hasil di Python.
2. PythonTEX sebagai sebuah interpreter antara Python dan TEX
yaitu Python bekerja dalam menghasilkan perhitungan
sedangkan pada LATEX menampilkan hasil dalam bentuk
format .pdf.
3. Pendahuluan
PythonTEX dibuat oleh G. Poore yang berguna untuk akses cepat
kode Python melalui LATEX. Ini sangat berguna bila kita melakukan
perhitungan di Python kemudian menyisipkan ke LATEX. Namun,
dengan adanya PythonTEX akses menjadi secara data dan hasil
menjadi satu.
Sympy atau Sympy merupakan sekumpulan simbol yang berguna
untuk melakukan perhitungan di Python.
4. Proses PythonTEX
Pemrosesan PythonTEX berjalan 3 proses yaitu sebagai berikut :
1. PDFLATEX, proses ini merupakan proses standar dalam
melakukan kompilasi dokumen di LATEX dari dokumen.tex ke
dalam bentuk dokumen .pdf.
2. PythonTEX, proses ini melakukan perhitungan atau
menjalankan proses pada kode Python. Artinya disini,
dokumen yang memuat kode Python di LATEX akan diproses
melalui PythonTEX sedangkan untuk dokumen utama LATEX
tidak terpengaruh pada pemrosesan di PythonTEX.
3. PDFLATEX, proses ini bisa dikatakan sebagai proses
menyeluruh dari kode LATEX dan kode Python yang telah
diproses oleh PythonTEX akan dirubah menjadi bentuk
dokumen yang biasa kita sebut .pdf.
5. Proses SymPy
Pemrosesan pada SymPy umum hanya terjadi pada program
PythonTEX dengan syarat module SymPy telah terlebih dahulu
diinstall. SymPy merupakan module yang akan menjalankan proses
perhitungan melalui program Python.
6. Contoh 1
Berikut ini diberikan contoh sederhana yaitu :
1. Penjumlahan dua bilangan dengan tanda plus(+)
py{200000000000+201213131313}
Akan menghasilkan nilai : 401213131313
2. Pengurangan dilakukan dengan tanda minus(-)
py{121212119211-921812121-32324}
Akan menghasilkan nilai : 120290274766
3. Perpangkatan dilakukan dengan tanda bintang ganda(**)
py{23**10**2}
Akan menghasilkan nilai :
1488619150636303939379155658655975423198711965380136868657698820922243327853933135215239014327734680423347659217944731085952022Selain itu, dapat dilakukan proses pembagian namun tidak
disebutkan untuk mempersingkat bagian ini.
7. Contoh 2
Perhitungan kali melibatkan penambahan variabel yang
mempersingkat perhitungan dan menampilkan proses perhitungan
yang sama dengan yang ada di Python.
>>> var = 2014*20
>>> var
40280
var('x, y, z')
z = x + y
Sekarang kita mengakses bahwa nila z akan sama dengan :
z = x + y
8. Contoh 3
Kita akan menghitung suatu nilai Integral melalui SymPy seperti
contoh dibawah ini :
f = x**3 + cos(x)**5
g = Integral(f, x)
Z
x3 + cos5 (x) dx =
x4
4
+
1
5
sin5 (x)
2
3
sin3 (x) + sin (x)
Mencari nilai turunan suatu fungsi seperti ini :
from sympy import *
x, y, z = symbols('x y z')
nilai_turunan = diff(cos(x), x)
nilai turunan dari
d
dx
cos(x) adalah sin(x)
9. Contoh 4
Turunan lebih lanjut,
diff(exp(x**2), x)
nilai_turunan1 = diff(exp(x**2), x)
Nilai turunan dari ex2
adalah 2*x*exp(x**2)
Proses diatas ketika kita memasukkan perhitungan lainnya akan
menyebabkan error. Hal ini disebabkan proses berjalan beriringan
ketika menghasilkan dokumen.tex yang memuat kode Python.
diff(exp(x**3), x)
nilai_turunan2 = diff(exp(x**3), x)
Nilai turunan dari ex3
adalah 3*x**2*exp(x**3)
10. Contoh 5
Turunan lebih lanjut,
expr = exp(x*y*z)
diff(expr,x,y,y,z,z,z,z)
Nilai dari exyz adalah x**3*y**2*(x**3*y**3*z**3 +
14*x**2*y**2*z**2 + 52*x*y*z + 48)*exp(x*y*z)
11. Contoh 6
Berikut ini contoh dari mencari nilai limit :
r= limit(sin(x)/x, x, 0)
Nilai limit dari lim
x!0
sin(x) adalah 1
Kita dapat juga menghitung,
expr = x**2/exp(x)
s = limit(expr,x,oo)
Nilai limit dari lim
x!1
x2
ex adalah 0
12. Contoh 7
Menghitung deret pangkat, dengan cara berikut :
expr = exp(sin(x))
t = expr.series(x,0,4)
Nilai deret pangkat dariesin(x) adalah 1 + x +
x2
2
+ O
x4
Kita juga dapat menghitung tidak hanya pada titik nol, seperti ini :
u = exp(x - 3).series(x, x0=3)
Deret pangkat dari ex1 adalah2+
1
2
(x 3)2+
1
6
(x 3)3+
1
24
(x 3)4
13. Kesimpulan
PythonTEX memudahkan kita dalam menghasilkan perhitungan
dalam satu paket yaitu data dan hasil perhitungan dalam LATEX.
Proses ini memiliki kemudahan dalam hal waktu, kode maupun
interpretasi hasil. Namun dengan adanya perangkat pihak ketiga
menjadi lebih beresiko dalam hal keamanan dokumen. Jadi,
pakailah module Python yang berasal dari situs resmi.