Sunday, March 29, 2015

CircuiTikZ

Bagi para guru SMK dalam Bidang Studi Keahlian Teknologi dan Rekayasa pada Program Studi Keahlian Teknik Elektronika, menggambar rangkaian (circuit) adalah hal biasa dan dapat dilakukan baik dengan menggunakan tangan maupun dengan menggunakan software tertentu. "Masalah" akan terasa ketika mereka menulis naskah atau dokumen yang memuat circuit. Kalau hanya memotong bagian gambarnya kemudian menyisipkannya ke dalam dokumen teks, tentu "masalah" itu teratasi; tetapi bagaimana dengan hasil cetaknya?

Bila kita bekerja dengan $\small\LaTeX$, maka circuit dapat sekaligus kita gambarkan di dalam dokumen teks yang kita susun. Ini berkat paket "yang dahsyat" dari Mas­simo Redaelli, yaitu circuitikz. Paket ini terlahir karena penyusunnya memerlukannya untuk menulis buku latihan dan naskah (lembar) soal ujian dalam mata kuliah Kelistrikan pada Politeknik Milano, Italia.
Sesuai dengan namanya, paket ini sepenuhnya berdasarkan kepada paket tikz.

Sekarang mari kita perhatikan contoh naskah soal dalam mata pelajaran Elektronika yang saya peroleh dari Mas Didik Siswoko dan telah saya sunting ulang dalam $\small\LaTeX$ berikut ini.



Dalam contoh di atas saya menggambar rangkaian di dalam naskah soal yang sedang disusun.
Lalu, bagaimana cara menggambar rangkaian seperti ditunjukkan pada gambar yang mengawali tulisan ini? Bagaimana cara menggambar masing-masing komponen dan bagaimana pula cara merangkaikannya?
Tentu saja petunjuk selengkapnya terdapat dalam dokumentasi paket ini. Untuk menggambar rangkaian kita memerlukan
\usepackage[siunitx]{circuitikz}  
\usetikzlibrary{...}  
Opsi siunitx diperlukan untuk penggunaan satuan internasional pada penamaan dan ukuran gambar. Selain itu, karena gambar rangkaian dapat mengacu kepada sistem Eropa atau Amerika, maka dapat pula langsung kita muat opsi european atau american. Bila pemuatan paket ini tanpa disertai dengan opsi berarti digunakan opsi asal (default) dari penyusun paket ini, yaitu [europeancurrents, europeanvoltages, americanresistor, cuteinductors, americanports, nosiunitx, noarrowmos, smartlabels].
Gambar rangkaian kita susun dalam environment
\begin{circuitikz}[opsi]  
...  
\end{circuitikz}
Komponen ekakutub (monopole) kita gambar dengan perintah
\draw (koordinat) node[kode komponen] {};
sedangkan komponen dwikutub (bipolekita gambar dengan perintah
\draw (koordinat) to[kode komponen] (koordinat);
Sekarang perhatikan cara membentuk rangkaiannya berikut ini.
\draw (x1,y1) to[kode komponen (seperti R,L,C), i=nilai,v=nilai,l=penamaan,color=warna]
      (x2,y2) to[sama dengan atas]
      (x3,y3) to[sama dengan atas]
      ...
      (xn,yn);
Nah, inilah contoh dokumen kedua tentang menggambar komponen dan rangkaiannya.



Contoh-contoh dokumen tersebut saya susun melalui Online LaTeX Editor ShareLaTeX
Demikian semoga bermanfaat.

Adjie Gumarang Pujakelana 2015 


Saturday, March 28, 2015

Showexpl

Pada tulisan sebelumnya sudah saya uraikan tentang cara menyoroti (highlighting) sintaks pengkodean dalam $\small\LaTeX$ dengan menggunakan paket minted. Dalam tulisan ini, dengan maksud yang sama tetapi dengan cara dan tujuan yang agak berbeda, saya akan tunjukkan penggunaan paket showexpl dari Rolf Niepraschk.

Paket showexpl adalah paket yang berdasarkan pada paket listing yang memberikan penyusunan kode sumber yang baik dengan penekanan pada kata kunci dan sebagainya. Oleh karena itu, penampakan dalam pengkodean yang ditunjukkan bergantung pada opsi-opsi dalam pengaturan
\lstdefinestyle{...}{...}
Yang khas dalam penggunaan paket ini adalah bahwa pengkodean dan hasil penyusunannya dapat kita tunjukkan dalam "sekali jalan", yaitu cukup kita muat dalam environment
\begin{LTXexample}[...]
...
\end{LTXexample}
Secara asal (default), pengkodean dan hasil penyusunannya itu terletak berdampingan (side by side). Ini menjadi masalah bila sintaks pengkodean itu cukup lebar, seperti yang akan saya tunjukkan contohnya. Tentu saja hal ini dapat diatasi dengan memuat opsi pengaturan yang bersesuaian. 
Nah, sekarang mari kita perhatikan contoh berikut ini.



Dalam contoh ini saya menggambarkan trafo, dengan menggunakan paket circuitikz dari Mas­simo Redaelli, dan sekaligus menunjukkan sintaks pengkodean untuk menggambarnya. Pengaturannya saya buat seperti ini
\usepackage{showexpl}
\lstdefinestyle{gayaku}{
    language={[LaTeX]TeX},texcsstyle=*\color{SeaGreen},
    literate=
    *{\{}{{\textcolor{Crimson}{\{}}}{1}
     {\}}{{\textcolor{Crimson}{\}}}}{1},
    basicstyle=\null,
    backgroundcolor=\color{paper!50},
    numbers=left, numberstyle=\scriptsize, stepnumber=1,
    numbersep=5pt,
    commentstyle=\color{DarkOrange},
    showstringspaces=false,
    keywordstyle=\color{stempel}\bfseries,
    morekeywords={circuitikz,draw,center},
    pos=l,frame=single,rframe=,framesep=\fboxsep,
    framerule=\fboxrule,rulecolor=\color{bistre},
    breaklines,breakautoindent=true,
    captionpos=t
}
Opsi-opsi dalam pengaturan inilah yang kita sesuaikan dengan penampakkan yang kita harapkan.

Pengkodean selengkapnya, untuk contoh dokumen di atas, berikut ini meliputi pula paket tikzpagenodes untuk menempatkan logo pada sudut kanan-atas halaman dan paket background untuk memuat latar "kertas". Selain itu juga memuat penetapan tiga warna yang saya gunakan.
\documentclass[a4paper,10pt]{article}
\usepackage[margin=1.5cm,top=1.5cm,bottom=2cm]{geometry}
\usepackage[svgnames,dvipsnames]{xcolor}
\usepackage{mathpazo,dejavu}
\usepackage[T1]{fontenc}
%\renewcommand{\rmdefault}{put}
\usepackage[indonesian]{babel}
\usepackage{tikz}
\usepackage{tikzpagenodes}
\usepackage[siunitx,cuteinductors,american]{circuitikz}

\definecolor{bistre}{RGB}{133, 109, 77}
\definecolor{stempel}{RGB}{0 34 85} 
\definecolor{paper}{RGB}{239,227,157}

\usepackage{showexpl}
\lstdefinestyle{gayaku}{
    language={[LaTeX]TeX},texcsstyle=*\color{SeaGreen},
    literate=
    *{\{}{{\textcolor{Crimson}{\{}}}{1}
     {\}}{{\textcolor{Crimson}{\}}}}{1},
    basicstyle=\null,
    backgroundcolor=\color{paper!50},
    numbers=left, numberstyle=\scriptsize, stepnumber=1,
    numbersep=5pt,
    commentstyle=\color{DarkOrange},
    showstringspaces=false,
    keywordstyle=\color{stempel}\bfseries,
    morekeywords={circuitikz,draw,center},
    frame=single,rframe=,framesep=\fboxsep,
    framerule=\fboxrule,rulecolor=\color{bistre},
    breaklines,breakautoindent=true,
    captionpos=t
}
\usepackage{adjustbox}
\usepackage{url}
\usepackage{amsmath,bm}
\let\ds\displaystyle
\usepackage{background}
\backgroundsetup{top,scale=2.6,angle=0,opacity=1,  %% adjust
contents={\includegraphics[width=\textwidth,height=6cm]{kertaskoran}}
}%

\begin{document}

\begin{tikzpicture}[remember picture,overlay]
\node[rotate=-20,below left,transform canvas={yshift=-1.25cm,xshift=.25cm}] at (current page.north east) {
\includegraphics[width=.2\textwidth]{Stempel1}
};
\end{tikzpicture}

\section*{Trafo}

\centering

\begin{LTXexample}[style=gayaku,pos=t]
\begin{circuitikz}[]
\draw (0,0) node [transformer](T){}
      (T.A1) node[above] {A1}
      (T.A2) node[below] {A2}
      (T.B1) node[above] {B1} 
      (T.B2) node[below] {B2}
      (T.base) node{K};
\draw (T.A1) --++(-2,0);
\draw (T.A2) --++(-2,0);
\draw (T.B1) --++(2,0) to[D, v=${V_\gamma=0.7}$, i>_=](5,0);        
\draw (T.B2) --++(2,0) to[D, v=${V_\gamma=0.7}$ ,i>_=](5,-2.1);
\draw(T.A1) to[open,v<={$240V_{rms}$}](T.A2);
\draw(T.B2) to[open,v>=$12V_{rms}$](T.B1);
\draw ($(T.base)+(1mm,-2mm)$)  -- ++(0,-1.8);
\draw ($(T.base)+(-1mm,-2mm)$) -- ++(0,-1.8);
\end{circuitikz}
\end{LTXexample}

Belajar \LaTeX\textcopyright\ Adjie Gumarang Pujakelana: \url{http://menulislatex.blogspot.com/}

\end{document}
Contoh dokumen di atas saya susun melalui Online LaTeX Editor ShareLaTeX
Demikian semoga bermanfaat.

Adjie Gumarang Pujakelana 2015 


Friday, March 27, 2015

ISBN

ISBN (International Standard Book Number) atau Angka Baku Buku Internasional adalah tanda pengenal yang khas untuk buku-buku yang digunakan secara komersial. Semula ISBN dibuat berdasarkan 9-angka kode Standard Book Numbering (SBN) oleh Gordon Foster (seorang Profesor Emeritus Statistik di Trinity College, Dublin)  untuk penjual buku dan alat-alat tulis WHSmith dan yang lainnya pada tahun 1965. Pengakuan terhadap bentuk dan susunan (konfigurasi) ISBN dilakukan pada tahun 1967 oleh David Whitaker (dianggap sebagai "Bapak ISBN") dan Emery Koltay (yang kemudian menjadi direktur lembaga ISBN Amerika Serikat, Bowker).

ISBN terdiri dari 10 angka dengan urutan penulisan adalah kode negara-kode penerbit-kode buku-no identifikasi. Namun, sejak 1 Januari 2007 penulisan ISBN mengalami perubahan mengikuti pola EAN (European Article Number), yang terdiri dari 13 angka. Perbedaannya hanya terletak pada penambahan tiga angka pertama, yaitu 978. Jadi, penulisan ISBN 13 angka adalah 978-kode negara-kode penerbit-kode buku-no identifikasi.
Awalan ISBN untuk negara Indonesia adalah 979 dan 602. (Demikian dikutip dari Wikipedia.)

Sekarang dapatkah kita membuat barcode beserta 13 angka ISBN tersebut?
Dalam $\small\LaTeX$, Zdeněk Wag­ner telah membuat paket ean13isbn, yaitu paket yang menyediakan sarana untuk menyusun kode ISBN dengan EAN-13 dan menyusun barcode yang sebenarnya. Yang perlu kita lakukan adalah memuat paket tersebut beserta opsinya di dalam preamble.
\usepackage[ISBN=978-80-85955-35-4,SC0]{ean13isbn}
Angka-angka kode ISBN pada opsi tersebut bersifat "panduan" yang dapat kita ganti sesuai dengan kode yang akan kita cetak. Opsi SC0 menyatakan ukuran barcode, yang secara asal (default) berukuran SC2. Tentang ragam ukuran ini dapat dipelajari dalam dokumentasi paket ini.

Berikut ini pengkodean untuk pembuatan contoh barcode yang telah saya buat beserta dokumen yang dihasilkannya. Dokumen ini saya susun melalui Online LaTeX Editor ShareLaTeX
Demikian semoga bermanfaat.

Adjie Gumarang Pujakelana 2015
\documentclass[10pt,a5paper,landscape]{article}
\usepackage{geometry}
\geometry{margin=1.5cm}
\renewcommand{\rmdefault}{put}
\usepackage{adjustbox}
\usepackage[ISBN=978-80-85955-35-4,SC0]{ean13isbn}
\parindent0em
\pagestyle{empty}

\begin{document}

\adjustbox{valign=t}{\begin{minipage}[t]{0.45\textwidth}
\EANisbn[SC5b,ISBN=979-60-2340-097-2]

\medskip
\verb!\EANisbn[SC5b,ISBN=979-60-2340-097-2]!
\end{minipage}}\hfill
%
\adjustbox{valign=t}{\begin{minipage}[t]{0.45\textwidth}
\EANisbn[SC3]

\medskip
\verb!\EANisbn[SC3]!
\end{minipage}}

\vspace{1cm}

\adjustbox{valign=t}{\begin{minipage}[t]{0.45\textwidth}
\EANisbn[ISBN=979-60-2340-097-2]

\medskip
\verb!\EANisbn[ISBN=979-60-2340-097-2]!
\end{minipage}}\hfill
%
\adjustbox{valign=t}{\begin{minipage}[t]{0.45\textwidth}
\EAN 979-60-2340-097-2

\medskip
\verb!\EAN 979-60-2340-097-2!
\end{minipage}}

\end{document}




Thursday, March 26, 2015

Menulis dengan $\small\mathbf{\LaTeX}$ Tanpa Software di ShareLaTeX

Tulisan kali ini saya tujukan kepada Anda yang baru menjajaki penggunaan $\small\LaTeX$ dalam menulis dokumen. Agar tak membebani komputer dan tanpa direpotkan oleh pemasangan software di komputer, maka saya arahkan Anda untuk menggunakan penyunting (editor) $\small\LaTeX$ dalam jaringan. Salah satunya, yang akan kita gunakan, adalah ShareLaTeX.

Silakan Anda ikuti panduan berikut ini.
1.  Klik ini Online LaTeX Editor ShareLaTeX, maka terbuka halaman seperti tampak pada gambar di samping.
2.  Pada bagian kanan-atas halaman itu, klik tombol Register untuk mendaftarkan diri dan isilah sesuai dengan permintaan dan persyaratannya.
3.  Setelah akun Anda diterima, silakan melakukan login. (Sebaiknya tetap mengingat alamat email yang didaftarkan berikut kata sandi yang digunakan.) 

4.  Sekarang Anda memasuki "dapur Anda" untuk mengolah dokumen dengan menggunakan $\small\LaTeX$. Untuk memulai penulisan dokumen baru, silakan klik New Project. (Anda dapat menjelajahi bagian Templates nanti.)
Bila Blank Project maupun Example Project diklik, maka muncul permintaan nama dokumen yang disusun. Misalkan dipilih Blank Project, kemudian dokumen itu dinamai BaRu1, maka setelah tombol Create diklik yang muncul adalah   
















Jika dipilih Example Project, lalu dokumen itu dinamai BaRu2, maka setelah tombol Create diklik yang muncul adalah  

Bila Anda memang benar-benar baru dalam menulis dengan menggunakan $\small\LaTeX$, saya sarankan untuk memilih Example Project. Selain itu, Anda tak perlu khawatir, ShareLaTeX siap memandu Anda bahkan dari nol. Silakan Anda buka halaman panduannya di sini. Bila perlu teman untuk berdiskusi, saya siap hadir di sana.

Demikian semoga bermanfaat.

Adjie Gumarang Pujakelana 2015


Wednesday, March 25, 2015

Kertas Berpetak

Istilah pada judul tulisan ini saya kenali sejak bersekolah di SD. Berikutnya saya mengenali milimeter block. Pada dasarnya keduanya sama, yaitu tersusun oleh petak-petak dengan ukuran tertentu. Susunan petak-petak ini disebut grid, yang oleh Glosarium dari Pusat Bahasa diterjemahkan sebagai kisi.
Di sekolah, baik kertas berpetak maupun milimeter block ("orang sana" menyebutnya graph paper) tentu masih digunakan karena sangat membantu dalam hal menggambar koordinat, grafik, bangun geometri, vektor, dll.

Nah, sekarang saya ajak Anda untuk memproduksi sendiri kertas berpetak ini. Untuk ini kita cukup menyiapkan paket TikZ serta pewarnaan yang diinginkan. Dalam TikZ, secara asal (default), ukuran satu petak ditetapkan oleh jarak $x=1\ \text{cm}$ dan $y=1\ \text{cm}$. Perintah untuk membuat kisi (grid) dalam TikZ adalah
\draw[opsi] (koordinat batas kiri-bawah) grid (koordinat batas kanan-atas);
Misalkan kita akan membuat kisi dari $(0,0)$ hingga $(5,5)$, maka nyatakan
\begin{tikzpicture}
\draw (0,0) grid (5,5);
\end{tikzpicture}
Hasilnya
Sekarang, bila kita menginginkan kisi yang terbentuk sejarak $1\ \text{mm}$, maka pada perintah \draw kita muat opsi step=1mm sebagai berikut.
\begin{tikzpicture}
\draw[step=1mm] (0,0) grid (5,5);
\end{tikzpicture}
Berikutnya untuk kisi $5\ \text{mm}$
\begin{tikzpicture}
\draw[step=5mm] (0,0) grid (5,5);
\end{tikzpicture}

Perhatikan hasilnya, dalam contoh ini saya gunakan warna bistre dari Prancis.
Gambar 1, 2, 3, dan 4 berturut-turut menunjukkan kisi sejarak $1\ \text{mm}$$5\ \text{mm}$$1\ \text{cm}$, dan $5\ \text{cm}$.

Kemudian, bagaimana bila keempat ukuran kisi itu kita gambarkan dalam satu sistem koordinat?
\begin{tikzpicture}[semitransparent]
\draw[step=1mm, line width=0.1mm, bistre] (0,0) grid (5,5);
\draw[step=5mm, line width=0.2mm, bistre] (0,0) grid (5,5);
\draw[step=1cm, line width=0.3mm, bistre] (0,0) grid (5,5);
\draw[step=5cm, line width=0.5mm, bistre] (0,0) grid (5,5);
\end{tikzpicture}
Silakan dilihat hasilnya pada gambar 5 di bawah ini.
Bagimana kalau kita buat kisi untuk satu halaman penuh pada kertas A4?
Untuk ini kita mendapatkan contoh yang baik dari Benjamin Abel.
Berikut ini pengkodeannya
\documentclass{article}
\usepackage{geometry}
\geometry{hmargin=1.25cm,vmargin=1cm}
\usepackage{tikz}
\def\lebar{18}
\def\tinggi{25}
\begin{document}
\begin{tikzpicture}[semitransparent]
\draw[step=1mm, line width=0.1mm, black!30!white] (0,0) grid (\lebar,\tinggi);
\draw[step=5mm, line width=0.2mm, black!40!white] (0,0) grid (\lebar,\tinggi);
\draw[step=1cm, line width=0.3mm, black!90!white] (0,0) grid (\lebar,\tinggi);
\draw[step=5cm, line width=0.5mm, black!50!white] (0,0) grid (\lebar,\tinggi);
\end{tikzpicture}
\end{document}
dan di bawah ini dokumen yang dihasilkannya. Semua contoh dokumen ini saya susun melalui Online LaTeX Editor ShareLaTeX
Demikian semoga bermanfaat.

Adjie Gumarang Pujakelana 2015




Tuesday, March 24, 2015

Mengarsir Daerah di antara Dua Persegi dan Perhitungannya

Perhatikan gambar di samping ini. Saya akan menunjukkan cara untuk menggambarnya beserta perhitungan yang berkaitan dengan gambar tersebut.
Masalah ini bersumber dari brilliant.org yang menyertakan gambar tersebut dengan pertanyaan
The figure above shows two overlapped squares of side 1. Find the shaded area.
Pertanyaan ini sudah saya jawab pada situs tersebut. Kali ini akan saya tunjukkan pekerjaan saya itu dalam $\small\LaTeX$. Saya awali pada bagian preamble. Saya pilih mathpazo untuk tulisan matematika dan utopia untuk tulisan teks. Untuk sintaks matematika selengkapnya saya gunakan amsmath.
\usepackage{mathpazo}
\renewcommand{\rmdefault}{put}
\usepackage{amsmath}
Kemudian, untuk menempatkan tulisan dalam minipage saya siapkan adjustbox dan untuk pewarnaan saya gunakan xcolor.
\usepackage{adjustbox}
\usepackage[dvipsnames,svgnames]{xcolor}
Untuk menggambar bangun tersebut saya gunakan tikz dan tkz-euclide.
\usepackage{tikz}
\usepackage{tkz-euclide}
\usetkzobj{all}
Saya tempatkan titik $A$ di $(0,0)$ beserta penamaannya sebagai berikut.
\draw[thick] (0,0) coordinate (A) node[left] {$A$};
Untuk menggambar persegi $ABCD$ kita akan berikan perintah
\draw[thick] (A)--(B)--(C)--(D)--cycle; 
Dalam hal ini penetapan keempat titik itu saya satukan menjadi
\draw[thick] (0,0) coordinate (A) node[left] {$A$} -- (2,0) coordinate (B) node[right] {$B$} -- (2,2) coordinate (C) node[right] {$C$}--(0,2) coordinate (D) node[left] {$D$} --cycle; 
Untuk mendapatkan koordinat titik $E$, lebih dulu saya gunakan GeoGebra, kemudian saya gambarkan persegi $DEGH$ dan ruas garis $EB$ dengan warna tersendiri.
\draw[thick,DarkSlateGray] (1.41,0.59) coordinate (E) node[below,black] {$E$}--(2,1.17) coordinate (F) node[right,black] {$F$}--(2.83,2) coordinate (G) node[right,black] {$G$}--(1.41,3.41) coordinate (H) node[above,black] {$H$}--(D)--cycle (E)--(B);
Karena koordinat titik $F$ sudah saya tetapkan dalam perintah di atas, maka saya gambarkan pengarsiran daerah $CDEF$ sebagai berikut.
\path[fill=SlateGray,opacity=.5] (C)--(D)--(E)--(F)--cycle;
Kenapa perintahnya \path? Karena saya tidak lagi menggambarkan garisnya, hanya mewarnai daerahnya saja.

Berikutnya saya akan menandai semua sisi (yang sama panjang) dari kedua persegi. Di sinilah saya gunakan perintah dari tkz-euclide.
\tkzMarkSegments[mark=|,size=3pt,color=gray](A,B B,C C,D D,A E,G G,H H,D D,E)
Perhatikan pula bahwa ruas garis $EB$ dan $EF$ sama panjang, sehingga saya tandai
\tkzMarkSegments[mark=||,size=3pt,color=gray](B,E E,F)
Perlu diketahui, perintah dalam tkz-euclide tidak perlu di akhiri dengan semicolon $;$.
Terakhir, saya menunjukkan bahwa panjang setiap sisi persegi adalah $1$ satuan dengan
\draw[|-|,gray] (0,-.15)--(2,-.15) node[midway,below,black] {1};
Nah, berikut ini pengkodean selengkapnya.
\documentclass[a4paper,10pt]{article}
\usepackage[margin=2cm]{geometry}
\usepackage[T1]{fontenc} 
\usepackage[indonesian]{babel} 
\usepackage{mathpazo}
\renewcommand{\rmdefault}{put}
\usepackage{amsmath}
\usepackage{adjustbox}
\usepackage[dvipsnames,svgnames]{xcolor}
\usepackage{tikz}
\usepackage{tkz-euclide}
\usetkzobj{all}

\begin{document}

\adjustbox{valign=t}{\begin{minipage}[t]{0.4\textwidth}
\centering
\begin{tikzpicture}[scale=1.5] 
\draw[thick] (0,0) coordinate (A) node[left] {$A$} -- (2,0) coordinate (B) node[right] {$B$} -- (2,2) coordinate (C) node[right] {$C$}--(0,2) coordinate (D) node[left] {$D$} --cycle;  
\draw[thick,DarkSlateGray] (1.41,0.59) coordinate (E) node[below,black] {$E$}--(2,1.17) coordinate (F) node[right,black] {$F$}--(2.83,2) coordinate (G) node[right,black] {$G$}--(1.41,3.41) coordinate (H) node[above,black] {$H$}--(D)--cycle (E)--(B);
\path[fill=SlateGray,opacity=.5] (C)--(D)--(E)--(F)--cycle;
\tkzMarkSegments[mark=|,size=3pt,color=gray](A,B B,C C,D D,A E,G G,H H,D D,E)
\tkzMarkSegments[mark=||,size=3pt,color=gray](B,E E,F)
\draw[|-|,gray] (0,-.15)--(2,-.15) node[midway,below,black] {1};
\end{tikzpicture}  
\end{minipage}}\hfill

\medskip
\adjustbox{valign=t}{\begin{minipage}[t]{.9\textwidth}
\begin{align*}
\text{Luas daerah}\ CDEF&= \text{luas daerah}\ ABCD-\left(\text{luas daerah}\ ABD+\text{luas daerah}\ BEF\right)\\
&= 1^2-\left(\frac{1}{2}\cdot1\cdot1+\frac{1}{2}\cdot\left(\sqrt{2}-1\right)\cdot\left(\sqrt{2}-1\right)\right)\\
&= 1-\left(\frac{1}{2}+\frac{1}{2}\left(2-2\sqrt{2}+1\right)\right)\\
&= 1-\left(\frac{1}{2}+1-\sqrt{2}+\frac{1}{2}\right)\\
&= 1-\left(1+1-\sqrt{2}\right)\\
&= 1-2+\sqrt{2}\\
&= \sqrt{2}-1
\end{align*}
\end{minipage}}\hfill

\end{document} 
Tentu kita juga akan mengingat bahwa panjang diagonal $BD$ pada persegi $ABCD$ dengan panjang sisi $1$ satuan ditentukan oleh
\begin{align}
BD^2&=AB^2+AD^2\\
&=1^2+1^2\\
&=1+1\\
&=2
\end{align}
sehingga $BD=\sqrt{2}$.

Demikianlah dokumen yang telah saya kemas dengan lebih rapi saya sertakan di bawah ini. Dokumen ini saya susun melalui Online LaTeX Editor ShareLaTeX
Demikian semoga bermanfaat.

Adjie Gumarang Pujakelana 2015



Sunday, March 22, 2015

Minted

Ketika saya menulis atau menggambar sesuatu, saya ingin pembaca dokumen yang saya susun itu dapat melakukan hal yang sama dengan mengikuti pengkodean yang saya tunjukkan. Secara umum, saya dapat melakukannya dengan menggunakan environment verbatim atau (untuk yang ringkas) saya nyatakan dalam \verb!...! atau dalam {\ttfamily ...}. Bagaimana kalau sintaks pengkodean itu saya soroti (highlighting) dengan "taburan" warna, seperti tampak pada gambar di samping?

Inilah hal baru (bagi saya) yang saya peroleh ketika sedang bekerja dalam menerjemahkan dokumentasi paket tkz-euclide, sebuah paket dari Alain Matthes yang merupakan alat untuk menggambar Geometri Euclides. Perhatikan contoh berikut ini.
Anda, pembaca, yang sedang membaca dokumen yang memuat gambar tersebut mungkin bertanya, "Bagaimana cara membuat gambar itu?". Nah, agar pembaca mengetahui pengkodeannya, saya tunjukkan
Lalu, bagaimana caranya untuk menunjukkan itu?
Tentu berbeda dengan menunjukkan berbagai pengkodean yang telah saya lakukan dalam blog ini. Karena ini dimaksudkan agar tampak dalam dokumen yang disusun, maka di sinilah saya memerlukan paket minted. Paket minted berguna untuk menyoroti (highlighting) kode sumber dalam $\small\LaTeX$, yang memudahkan penyorotan sintaks secara tepat dan jelas berkat digunakannya library Pygments yang kuat. Paket ini juga menyediakan pilihan untuk menyesuaikan penampakkan kode sumber yang disorot dengan menerapkan paket fancyvrb.

Untuk menunjukkan sintaks pengkodean tersebut, dalam preamble saya muat
\usepackage{minted}
\usepackage{tcolorbox}
\usepackage{etoolbox}
\BeforeBeginEnvironment{minted}{\begin{tcolorbox}}%
\AfterEndEnvironment{minted}{\end{tcolorbox}}%
Paket tcolorbox dan etoolbox beserta pengaturan environment-nya disiapkan untuk pengkotakkannya. Dalam penggunaannya, environment tersebut dinyatakan dengan
\begin{minted}{latex}
...
\end{minted}
Untuk menampakkan pengkodean seperti ditunjukkan oleh gambar pertama, yang mengawali tulisan ini, saya muat
\usepackage{minted}
\definecolor{bistre}{RGB}{133, 109, 77}
dalam preamble dan dalam penggunaan environment-nya dinyatakan
\begin{minted}[frame=lines,framerule=1pt,framesep=5pt,rulecolor=\color{bistre}]{latex}
...
\end{minted}
Demikianlah contoh-contoh pembuatan gambar di atas saya susun melalui Online LaTeX Editor ShareLaTeX
Demikian semoga bermanfaat.

Adjie Gumarang Pujakelana 2015 


Monday, March 16, 2015

Cara Membuat Pedoman Penskoran

Membuat kisi-kisi soal, kartu soal, naskah soal, dan pedoman penskoran adalah rangkaian sistem perakitan soal yang (mestinya) sudah terbiasa diakukan oleh para guru. Pada tulisan ini saya arahkan percontohannya tentang guru Matematika yang akan membuat pedoman penskoran untuk tes berbentuk soal uraian (essay). Ini sekaligus merupakan penjelasan tentang cara menyusun contoh dokumen yang sudah diterbitkan di sini.

Pilihan yang tepat untuk membuat pedoman penskoran adalah paket sekaligus kelas dokumen exam dari Philip S. Hirschhorn. Sebagaimana disebutkan dalam pengantarnya,
Paket exam menyediakan kelas exam, yang memudahkan dalam menghasilkan naskah soal, bahkan oleh seorang pemula $\LaTeX$ sekali pun. Perintah-perintah sederhananya tersedia untuk:
  • Membuat soal, bagian dari soal, subbagian dari bagian soal, dan subsubbagian dari subbagian soal, semuanya dengan opsi poin nilai;
  • Membuat tabel penilaian, yang diindeks berdasarkan nomor soal (daftar setiap soal dan total poin yang mungkin untuk soal itu) atau berdasarkan nomor halaman (daftar setiap halaman dengan poin dan total poin yang mungkin untuk halaman tersebut);
  • Membuat kepala halaman (header) dan kakai halaman (footer) yang masing-masing ditentukan dalam tiga bagian: di kiri, di tengah, dan di kanan, dengan cara seperti dalam fancyhdr.
Baiklah, segera kita mulai penyusunan naskah soal ini. Saya pilih ukuran kertas A4 dan ukuran huruf 10pt. Ini adalah opsi pada kelas dokumen.
\documentclass[a4paper,10pt]{exam}
Dalam preamble, kita awali dengan tata letak halaman di mana saya gunakan paket geometry dengan margin yang cocok pada kelas exam ini.
\usepackage[hmargin=1.5cm,top=2cm,bottom=2cm]{geometry}
Jenis huruf untuk teks saya gunakan XCharter sedangkan untuk matematika saya gunakan fourier.
\usepackage{XCharter,fourier}
Agar kebahasaan dan pemenggalan kata mengikuti sistem Bahasa Indonesia, saya cantumkan
\usepackage[indonesian]{babel}
Untuk menyiapkan penggunaan lambang-lambang tertentu, baik dalam teks maupun matematika, saya muat
\usepackage[T1]{fontenc}
Ini yang utama dalam penulisan matematika
\usepackage{amsmath}
Untuk menebalkan tulisan matematika, selain menggunakan perintah \boldmath atau \mathbf{...}, biasanya saya gunakan paket bm.
Paket adjustbox saya sertakan untuk digunakan dalam environment minipage agar teks atau matematika di dalamnya merapat ke tepi atasnya. Sedangkan untuk pewarnaan saya lebih suka menggunakan paket xcolor dengan mencantumkan ketiga opsi.
\usepackage{adjustbox}
\usepackage[svgnames,dvipsnames,table]{xcolor}
Untuk pengurutan atau penyusunan daftar urut saya siapkan paket enumitem beserta opsinya, sedangkan untuk pembuatan tabel dan pengaturan baris dan kolomnya saya siapkan paket-paket booktabs, array, multirow.
\usepackage[inline,shortlabels]{enumitem}
\usepackage{booktabs,array,multirow}
Berikutnya kita akan menetapkan kepala dan kaki untuk tiap halaman.
\pagestyle{headandfoot}
\firstpageheader{...}{...}{...} % header untuk halaman pertama
\runningheader{...}{...}{...} % header untuk halaman kedua dan seterusnya

\runningheadrule % garis pembatas header

\firstpagefooter{...}{...}{...} % footer untuk halaman pertama
\runningfooter{...}{...}{...} % footer untuk halaman kedua dan seterusnya
Kita dapat mengisi tiap bagiannya sesuai dengan keperluan. Misalnya, pada bagian kanan-atas halaman pertama ingin kita isi dengan tanggal, maka kita tuliskan tanggal dimaksud; atau jika kita ingin tanggal yang tercetak itu adalah hari ini, maka kita nyatakan perintah \today.

Sekarang kita akan menyiapkan perintah untuk pengisian tabel penilaian. Untuk ini kita atur agar sesuai dengan keinginan kita (dalam Bahasa Indonesia). Saya letakkan tabel ini pada bagian atas halaman pertama dalam bentuk mendatar. Oleh karena itu perintah-perintah terkait berikut ini diawali oleh huruf "h" (dari kata horizontal). 
\pointpoints{bobot}{bobot}
\hqword{No. Soal}
\hpword{Bobot Soal}
\htword{Jumlah}
\hsword{Skor Maksimum}
Jika kita menginginkan bentuk tabel penilaian itu tegak, maka huruf "h" itu diganti oleh "v" (dari kata vertikal). 

Sekarang kita mengarah ke penyusunan butir soal (question). Dalam exam, soal-soal disusun dalam environment
\begin{questions}
...
\end{questions}
dan setiap soal diawali oleh perintah
\question[...]
Opsi dalam kurung siku itu diisi oleh bobot untuk soal tersebut, yang dalam exam diperlakukan sebagai \totalpoints. Kemudian, agar pada setiap butir soal ditunjukkan bobotnya, maka saya berikan perintah
\qformat{\bfseries Soal Nomor \thequestion\hspace{14cm} bobot = \totalpoints\hfill}

Terakhir, kita memasuki bagian utama dalam penskoran, yaitu jawaban atas soal beserta skor-skor untuk tiap tahap yang dinilai. Paket exam telah menyediakan environment untuk hal ini, yaitu
\begin{solution}
...
\end{solution}
Agar judulnya dalam Bahasa Indonesia, saya berikan perintah baru
\renewcommand{\solutiontitle}{\noindent\textbf{Jawaban:}\enspace}
Jawaban-jawaban ini dapat ditunjukkan dan dapat disembunyikan. Ini dikendalikan oleh perintah 
\printanswers
Untuk menyembunyikan jawaban, letakkan lambang "%" di kiri perintah itu, sehingga menjadi %printanswers.

Demikianlah, hal dasar dalam membuat dokumen pedoman penskoran dengan menggunakan paket dan kelas dokumen exam sudah dijelaskan seperlunya. Berikut ini pengkodean selengkapnya untuk uraian di atas beserta dokumen yang dihasilkannya. Contoh dokumen ini saya susun melalui Online LaTeX Editor ShareLaTeX
Demikian semoga bermanfaat.

Adjie Gumarang Pujakelana 2015 

\documentclass[a4paper,10pt]{exam}
%----------------paket utama
\usepackage[hmargin=1.5cm,top=2cm,bottom=2cm]{geometry}
\usepackage{XCharter,fourier}
\usepackage[indonesian]{babel}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{adjustbox}
\usepackage[svgnames,dvipsnames,table]{xcolor}
%--------------------------
\usepackage[inline,shortlabels]{enumitem}
\usepackage{booktabs,array,multirow}

%----------------header dan footer
\pagestyle{headandfoot}
\firstpageheader{kiri-atas-1}{tengah-atas-1}{kanan-atas-1} % header untuk halaman pertama
\runningheader{kiri-atas-2dll}{tengah-atas-2dll}{kanan-atas-2dll} % header untuk halaman kedua dan seterusnya

\runningheadrule%garis pembatas header

\firstpagefooter{kiri-bawah-1}{tengah-bawah-1}{kanan-bawah-2} % footer untuk halaman pertama
\runningfooter{kiri-bawah-2dll}{tengah-bawah-2dll}{kanan-bawah-2dll} % footer untuk halaman kedua dan seterusnya

%----------------penerjemahan perintah
\pointpoints{bobot}{bobot}
\hqword{No. Soal}
\hpword{Bobot Soal}
\htword{Jumlah}
\hsword{Skor Maksimum}

\qformat{\bfseries Soal Nomor \thequestion\hspace{14cm} bobot = \totalpoints\hfill}
\renewcommand{\solutiontitle}{\noindent\textbf{Jawaban:}\enspace}
\printanswers % (atau [answers] pada opsi kelas dokumen) penyedia jawaban

\let\ds\displaystyle
\parindent0em

\begin{document}

\rule[2ex]{\textwidth}{1pt}%

\addpoints %perintah pembobotan dan penskoran
\begin{center}
\gradetable[h][questions]
\end{center}

\begin{questions}       % soal nomor 1
\question[15]
Jika $\ds x=\sqrt{3-\sqrt{5}}$ dan $\ds y=\sqrt{3+\sqrt{5}}$, berapakah nilai dari $\ds(x-y)^2+5xy$?
    \begin{solution}
\begin{align*}
\ds(x-y)^2+5xy &=\left(\sqrt{3-\sqrt{5}}-\sqrt{3+\sqrt{5}}\right)^2+5\sqrt{3-\sqrt{5}}\ \sqrt{3+\sqrt{5}}{\color{SteelBlue}\quad\cdots\cdots\cdots\quad 1}\\
&=\left(\sqrt{3-\sqrt{5}+3+\sqrt{5}-2\sqrt{\left(3-\sqrt{5}\right)\left(3+\sqrt{5}\right)}}\right)^2+5\sqrt{\left(3-\sqrt{5}\right)\left(3+\sqrt{5}\right)}{\color{SteelBlue}\quad\cdots\ 2}\\
&=\left(\sqrt{6-2\sqrt{9-5}}\right)^2+5\sqrt{9-5}{\color{SteelBlue}\quad\cdots\cdots\cdots\quad 2}\\
&=\left(\sqrt{6-2\sqrt{4}}\right)^2+5\sqrt{4}{\color{SteelBlue}\quad\cdots\cdots\cdots\quad 1}\\
&=\left(\sqrt{2}\right)^2+10{\color{SteelBlue}\quad\cdots\cdots\cdots\quad 1}\\
&=12{\color{SteelBlue}\quad\cdots\cdots\cdots\quad 1}
\end{align*}
\flushright \textbf{Skor maksimum = 8}
    \end{solution}
    
\question[10]       % soal nomor 2
Garis yang melalui titik ($a$, $b$) memotong tegak lurus garis $2x + 3y - 13 = 0$ di titik ($-b$, $a$). \\
Tentukan nilai dari $a+b$.
\begin{solution}
\adjustbox{valign=t}{\begin{minipage}{0.425\textwidth}
\begin{description}
\item[Garis 1\hspace{5mm}] $y-b = m(x-a)${\color{SteelBlue}\qquad\ldots\quad 1}
\item[Garis 2\hspace{5mm}] $2x + 3y - 13 = 0${\color{SteelBlue}\qquad\ldots\quad 1}
\item[\hspace{1.6cm}] $\ds y = -\frac{2}{3}x+\frac{13}{3}${\color{SteelBlue}\qquad\ldots\quad 2}
\end{description}
Hubungan gradien kedua garis: 
\[-\frac{2}{3}m=-1{\color{SteelBlue}\qquad\cdots\quad 2}\]
\[m=\frac{3}{2}{\color{SteelBlue}\qquad\cdots\quad 1}\]
Titik potong ($-b$, $a$), maka{\color{SteelBlue}\qquad\ldots\quad 1}
\end{minipage}}%
\hfill
\adjustbox{valign=t}{\begin{minipage}{0.475\textwidth}
\begin{align*}
\textrm{Garis 1}\hspace{1cm} y-b &= m(x-a){\color{SteelBlue}\qquad\cdots\quad 1}\\
a-b &= \frac{3}{2}(-b-a){\color{SteelBlue}\qquad\cdots\quad 1}\\
2a-2b &= 3(-b-a){\color{SteelBlue}\qquad\cdots\quad 1}\\
2a-2b &= -3b-3a{\color{SteelBlue}\qquad\cdots\quad 1}\\
b &= -5a{\color{SteelBlue}\qquad\cdots\quad 1}\\
\textrm{Garis 2}\hspace{1.5cm} 2x + 3y - 13 &= 0{\color{SteelBlue}\qquad\cdots\quad 1}\\
2(-b) + 3a - 13 &= 0{\color{SteelBlue}\qquad\cdots\quad 1}\\
-2b + 3a - 13 &= 0{\color{SteelBlue}\qquad\cdots\quad 1}\\
-2(-5a) + 3a - 13 &= 0{\color{SteelBlue}\qquad\cdots\quad 1}\\
10a + 3a - 13 &= 0{\color{SteelBlue}\qquad\cdots\quad 1}\\
13a - 13 &= 0{\color{SteelBlue}\qquad\cdots\quad 1}\\
a &= 1{\color{SteelBlue}\qquad\cdots\quad 1}\\
\end{align*}
\end{minipage}}%

sehingga $b = -5(1)=-5)$. {\color{SteelBlue}\qquad\ldots\quad 2}\\
Jadi nilai dari $a+b=1+(-5)=-4$.{\color{SteelBlue}\qquad\ldots\quad 2}

\flushright \textbf{Skor maksimum = 14}
   \end{solution}

\question[10]       % soal nomor 3
Tentukan batas-batas nilai $m$ agar akar-akar persamaan kuadrat  $x^2 - mx - m + 3 = 0$ berbeda tanda. 
    \begin{solution}
\begin{align*}
\ds x_1x_2 &< 0{\color{SteelBlue}\quad\cdots\cdots\cdots\quad 1}\\
-m+3 &< 0{\color{SteelBlue}\quad\cdots\ 2}\\
-m &< -3{\color{SteelBlue}\quad\cdots\cdots\cdots\quad 1}\\
m &> 3{\color{SteelBlue}\quad\cdots\cdots\cdots\quad 1}
\end{align*}
\flushright \textbf{Skor maksimum = 5}
    \end{solution}   
    
\question[20]       % soal nomor 4
bla\ldots bla\ldots bla\ldots
    \begin{solution}
bla\ldots bla\ldots bla\ldots
\flushright \textbf{Skor maksimum = \ldots}
    \end{solution} 
    
\question[25]       % soal nomor 5
bla\ldots bla\ldots bla\ldots
    \begin{solution}
bla\ldots bla\ldots bla\ldots
\flushright \textbf{Skor maksimum = \ldots}
    \end{solution} 

\question[10]       % soal nomor 6
bla\ldots bla\ldots bla\ldots
    \begin{solution}
bla\ldots bla\ldots bla\ldots
\flushright \textbf{Skor maksimum = \ldots}
    \end{solution} 

\question[10]       % soal nomor 7
bla\ldots bla\ldots bla\ldots
    \begin{solution}
bla\ldots bla\ldots bla\ldots
\flushright \textbf{Skor maksimum = \ldots}
    \end{solution} 

\end{questions}

\end{document}




Related Posts Plugin for WordPress, Blogger...