PythonTEX & SymPy 
Kolaborasi PythonTEX & SymPy dalam interpretasi 
hasil di LATEX 
Hirwanto 
24 Nopember 2014
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.
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.
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.
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.
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.
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
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)
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)
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)
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
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
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.
||||||||TERIMA KASIH ||||||||||{

PythonTeX dan Sympy kolaborasi

  • 1.
    PythonTEX & SymPy Kolaborasi PythonTEX & SymPy dalam interpretasi hasil di LATEX Hirwanto 24 Nopember 2014
  • 2.
    Motivasi LATEX sebagaiperangkat 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 dibuatoleh 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 PemrosesanPythonTEX 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 Pemrosesanpada 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 Berikutini 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 Perhitungankali 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 Kitaakan 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 Turunanlebih 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 Turunanlebih 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 Berikutini 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 Menghitungderet 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 memudahkankita 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.
  • 14.