panduan mathematica
TRANSCRIPT
Daftar Isi
1 Kata Pengantar 3
2 Sekilas Mathematica 52.1 Perhitungan Angka . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.2 Fungsi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.3 Ketelitian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62.4 Terbiasa dengan Mathematica . . . . . . . . . . . . . . . . . . . . . 72.5 Menggunakan Palettes . . . . . . . . . . . . . . . . . . . . . . . . . 72.6 Menghindar dari Masalah . . . . . . . . . . . . . . . . . . . . . . . . 72.7 Help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3 List dan Table 93.1 Pendahuluan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93.2 Membuat List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93.3 Ukuran List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103.4 Operasi List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.4.1 Posisi Komponent List . . . . . . . . . . . . . . . . . . . . . 113.4.2 Struktur Element List . . . . . . . . . . . . . . . . . . . . . . 113.4.3 Penyisipan Sorting List . . . . . . . . . . . . . . . . . . . . 12
3.5 Operasi Multi List . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133.6 Fungsi Bertingkat . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143.7 Fungsi Berulang . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
4 Plot dan Graphic 194.1 Basic Plot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194.2 Menggunakan Options . . . . . . . . . . . . . . . . . . . . . . . . . 214.3 MemPlot Data Titik . . . . . . . . . . . . . . . . . . . . . . . . . . . 264.4 Re-Display dan Kombinasi Plot . . . . . . . . . . . . . . . . . . . . 284.5 Contour dan Density . . . . . . . . . . . . . . . . . . . . . . . . . . 314.6 Advanced:Control Options . . . . . . . . . . . . . . . . . . . . . . . 32
1
2 DAFTAR ISI
Bab 1
Kata Pengantar
Mathematica adalah software yang sudah digunakan secara luas. Penyusun inginmemberikan kontribusi supaya Mathematica juga bisa digunakan dengan lebih mu-dah oleh orang-orang indonesia. Buku panduan ini sekarang hanya terdiri dari beber-apa bab dan akan ditambah lagi. Penyusun ingin menyampaikan terima kasih kepadasuper gunk tank atas software bajakannya dan setiap orang yang memberikan sumban-gan pikiran atas tersusunnya buku panduan ini. Penyusun menyadari buku panduanini masih jauh dari sempurna. Sumbangan pembaca sangat diharapkan untuk penyer-punaan tutorial ini.
3
4 BAB 1. KATA PENGANTAR
Bab 2
Sekilas Mathematica
Untuk memulai Mathematica pada Mathematica notebook,dilakukan dengan mengklikicon Mathematica.Untuk mengakhiri Mathematica bisa dilakukan dari menu (Quit).Untukmengeksekusi perintah di Mathematica dilakukan dengan menekan Shift-Enter bersamaan.
2.1 Perhitungan Angka
Untuk perhitungan angka mudah Mathematica bisa digunakan seperti kalkulator.Sebagaicontoh
In[1]:= ���� � �����Out[1]= �����In[2]:= ���� � �����
Out[2]= �����In[3]:= ����� �����
Out[3]= ����In[4]:= ���
Out[4]= ���
x dipangkat y ��
x ditambah y �� �x dikurangi y �� �
x dikali y � � � ����� �
2.2 FungsiMisalkan kita ingin menghitung nilai �� ��.
In[5]:=Log[20.0]Out[5]=2.99573
Di sini Log[] adalah nama fungsi. Secara umum di Mathematica input suatu fungsimemiliki bentuk nama fungsi[].Dalam kurung siku [] adalah variable yang mau dicarinilai fungsinya.Out[5] adalah nilai pendekatan dari Log[20.0].Untuk menentukan basisdari ��� dilakukan dengan Input sebagai berikut.
5
6 BAB 2. SEKILAS MATHEMATICA
Berikut beberapa contoh fungsi yang sering digunakan.
������� akarx����
���� fungsi exponent����� ���� fungsi logaritma��� � ��
� ���� �� fungsi logartima dengan basis b��� � ��������� � ����� ������ fungsi trigonometri�variable dalam radian�
�������������� �������������� inverse fungsi trigonometri�� n factorial
������ mutlak �� ������ nilai pembulatan dari �� ������ module�sisa� dibagi ������ ��� random�random � ��
������ �� � � ��������� �� � � �� masing-masing maksimum dan minimum dari himpunan x,y,� � ����� ����������� factor dari �
Dalam Mathematica semua variable ditaruh dalam kurung siku([ ]) ,() hanya digunakanuntuk membedakan tiap suku saja.
In[6]:=Log[10,20.0]Out[6]=1.30103
In[7]:=Sin[����]Out[7]=1
In[8]:=����� ������//NOut[8]=����
In[9]:=� �����Out[9]=�
�� ! � ������ � � �������
����� !���� � �
�����"����� �
2.3 Ketelitian
//N dapat digunakan untuk mancari nilai fungsi dengan tingkat ketelitian yang di-inginkan.
expr��#����# �expr� mencari nilai pendekatan expr# �expr� # � mencari nilai pendekatan expr dengan � digit
In[10]:=N[Exp[Pi Sqrt[21]]]Out[10]=885480.
In[11]:=N[Exp]Pi Sqrt[21]],40]Out[11]=885479.7776801543194975378934817196268207
2.4. TERBIASA DENGAN MATHEMATICA 7
2.4 Terbiasa dengan Mathematica
� Gunakan kurung siku [ ] untuk variable suatu fungsi� Nama fungsi selalu dimulai dengan hurup besar� Gunakan spasi sebagai pengganti �� Pangkat gunakan �� Untuk angka ilmiah gunakan bentuk ��� � ��� atau bentuk ��� � � ��
Bagi pembaca yang memiliki pengalaman menggunakan software lain, setelah memba-ca sekilas tutorial ini bisa membedakan perbedaan dengan software lain.Dalam Math-ematica digunakan kurung siku [ ]. Nama fungsi selalu dimulai dengan hurup be-sar.Adalah dua hal yang perlu diperhatikan dalam Mathematica.
2.5 Menggunakan Palettes
Palettes dapat digunakan untuk input dalam dua dimensi. Jika memulai notebook dis-amping kanan akan muncul palettes. Atau untuk menampilkan dilakakukan denganclick File-Palettes-Basic Input. Setelah itu tinggak click palette yang mau di input.Sebagai contoh, kita ingin menghitung nilai integral dari ���������
�
dalam selang �sampai�.
In[12]:=� ��
� ��������
��
Out[12]=��
�����
2.6 Menghindar dari Masalah
Kadang-kadang saat menggunakan Mathematica terjadi masalah yang tidak diinginkan.Untukmenyelesaikan fungsi yang rumit terkadang diperlukan waktu yang lama.Saat itu jikaingin membatalkan proses, perintah berikut sangat berguna.
Macintosh Command- keyWindows Alt-dan(.) tekan bersamaan
PC Command Line Type Ctrl-BreakUNIX Type Ctrl-C,dan tekan Return key
2.7 Help
?Name Mencari informasi dari Name??Name Mencari informasi lebih detail mengenai Name?Name* Mencari informasi setiap fungsi yang dimulai dengan Name
Jika nama fungsi,kerja fungsi dapat dicari diHelp dengan perintah ?function.Sebagai contoh dapat dilihat seperti berikut.
8 BAB 2. SEKILAS MATHEMATICA
In[10]:= ?Sin
Sin�z� gives the sine of z. More…In[11]:= ?? Sin
Sin�z� gives the sine of z. More…
Attributes�Sin� � �Listable, NumericFunction, Protected�In[12]:= ?Sin*
System`Sin SingularValuesSingleLetterItalics SinhSingularityDepth SinhIntegralSingularValueDecomposition SinIntegralSingularValueList
Bab 3
List dan Table
3.1 PendahuluanHimpunan adalah beberapa simbol atau
angka yang dipisahkan dengan comma”,”.Penggunaan list dan table dalam Mathematica sangat luas. List dibuat dengan perintah List,dengan bentuk umum
List������ ����� � � � � �����
Anggota himpunan list dipisahkan dengan kurung kurawal .
����� ����� � � � � ����
Anggota himpunan dari list bisa berupa ���� � � � � � ��� � � �� � � � � ,atau berupa list .
In[1]:= List�1.5, cat, "cath your dream", �9, 8�, ��, Pi�
Out[1]= �1.5, cat, cath your dream, �9, 8�, ��, �Selanjutanya kita akan berlatih mengoperasikan list.
3.2 Membuat ListRange����� � ��������,nilai awal ����,nilai terbesar ���� bertambah tiap ��.
In[1]:= Range��5, 5, 2�
Out[1]= ��5, �3, �1, 1, 3, 5�Jika �� disingkat otomatis �� � � .
In[2]:= Range��5, 5�
Out[2]= ��5, �4, �3, �2, �1, 0, 1, 2, 3, 4, 5�Apabila sekaligus ������� singkat, otomatis ���� � � ��� � � .
In[3]:= Range�5�
Out[3]= �1, 2, 3, 4, 5������ ���� ��� tidak harus bilangan bulat, tetapi bisa juga bilangan rasional.
In[4]:= Range��5.5, 5.5, 1.25�
Out[4]= ��5.5, �4.25, �3., �1.75, �0.5, 0.75, 2., 3.25, 4.5�Table����������� ����� ���� ����,�� � � � �� � di-looping dari ���� batas atas ���� berubah sebesar ��.
9
10 BAB 3. LIST DAN TABLE
In[5]:= Table�2 i, �i, �5, 5, 2��
Out[5]= ��10, �6, �2, 2, 6, 10�Sama seperti pada List jika �� disingkat otomatis �� � � .Table bisa digunakan untuk lebih dari satu variable.
In[6]:= Table�i � j, �i, 1, 3�, �j, 1, 10, 2��
Out[6]= ��2, 4, 6, 8, 10�, �3, 5, 7, 9, 11�, �4, 6, 8, 10, 12��List yang dihasilkan bisa ditampilkan dalam bentuk matrik.1
In[7]:= Table�i � j, �i, 1, 3�, �j, 1, 10, 2�� �� TableForm
Out[7]//TableForm=
2 4 6 8 103 5 7 9 114 6 8 10 12
Satu lagi perintah yang bisa digunakan untuk menghasilkan list adalah Array.Sebagai contoh
In[9]:= Table�f�i�, �i, 5��
Out[9]= �f�1�, f�2�, f�3�, f�4�, f�5��bisa dihasilkan dengan perintah Array seperti berikut.
In[10]:= Array�f, 5�
Out[10]= �f�1�, f�2�, f�3�, f�4�, f�5��
Table�"� ����� f di-loop sampai imaxTable�"� �� ����� f di-loop dengan variable i � �imax
Table�"� �� ����� ����� f di-loop dari i�imax dengan peningkatan �Table�"� �� ����� ����� ��� f di-loop dari i�imax dengan peningkatan di
Table�"� �� ����� ����� ��� $� $���� $���� �$� � � �� f di-loop, dengan multi dimensiTableForm�%��� lis ditampilkan dalam bentuk matrik ataulis��TableForm
3.3 Ukuran List
Ukuran list bisa diketahui dengan perintah Length dan Dimensions.In[8]:= Length�Table�Random��, �10���
Out[8]= 10
Ukuran dalam suatu list bisa diketahui dengan perintah Dimensions.In[8]:= Dimensions����1, 2, 3��, ��3, 4, 5����
Out[8]= �2, 1, 3�
List dengan � sub-list dimana setiap sub-list memiliki sub-sub-list dengan masing-masing 3 anggota komponent.
1matrik adalah kumpulan baris dan kolom
3.4. OPERASI LIST 11
3.4 Operasi List
3.4.1 Posisi Komponent List
Posisi suatu komponent dari list diketahui dengan perintah Position.In[1]:= Position��5, 4, 3, 2, 1, 0, 5, 3�, 3�
Out[1]= ��3�, �8��
terletak pada suku ke-3 dan ke-8.In[2]:= Position���1, 2, a, b�, �c, d, 3, 4��, b�
Out[2]= ��1, 4��
Komponent � terletak pada sub-list suku ke-�.
3.4.2 Struktur Element List
First�%���� mengambil suku pertama dari listLast�%���� mengambil suku terakhir dari list
Part�%���� ������list[[n]] mengambil suku ke-n dari listPart�%�����������list[[-n]] mengambil suku ke-n dari belakang dari list
Part�%���� ��� ��� � � ������list[[��� ��� � � �]] mengambil ke-��� ��� � � � dari list
Sebagai contoh kita ingin melakukan operasi pada list �.In[1]:= l � �1, 4, 0, 3, 5, 7, 9�
Out[1]= �1, 4, 0, 3, 5, 7, 9�
In[2]:= First�l�
Out[2]= 1
In[3]:= Last�l�
Out[3]= 9
In[4]:= Part�l, 3�
Out[4]= 0
In[5]:= l���2, 5���
Out[5]= �4, 5�
Take�%���� �� mengambil suku pertama sampai suku ke-n dari listTake�%������� mengambil element list dari belakang sampai suku ke-n secara terurut
Take�%���� ���� mengambil element dari suku ke-m sampai suku ke-n dari listTake�%���� ���� �� mengambil element sari suku ke-m sampai suku ke-n list dengan step s
Contoh penggunaan Take dapat dilihat seperti dibawah.
12 BAB 3. LIST DAN TABLE
In[6]:= Take�l, 2�
Out[6]= �1, 4�
In[7]:= Take�l, �2�
Out[7]= �7, 9�In[8]:= Take�l, �2, 5��
Out[8]= �4, 0, 3, 5�In[9]:= Take�l, ��5, �2��
Out[9]= �0, 3, 5, 7�
Rest�%���� menghapus suku pertama dari listDrop�%���� �� membuat list baru dengan menghapus � element dari suku pertama dari list
Drop�%������� membuat list baru dengan menghapus � element dari suku akhir dari listDrop�%���� ���� menghapus element dari suku ke-m sampai suku ke-n dari list
Drop�%���� ���� �� menghapus element sari suku ke-m sampai suku ke-n list dengan step s
Contoh penggunaan perintah Rest dan Drop seperti contoh di bawah.In[10]:= Rest�l�
Out[10]= �4, 0, 3, 5, 7, 9�In[10]:= Rest�l�
Out[10]= �4, 0, 3, 5, 7, 9�In[12]:= Drop�l, �2�
Out[12]= �1, 4, 0, 3, 5�
In[13]:= Drop�l, �3, 5��
Out[13]= �1, 4, 7, 9�In[14]:= Drop�l, �3, 5, 2��
Out[14]= �1, 4, 3, 7, 9�
3.4.3 Penyisipan Sorting List
Menyisipkan element pada akhir list dengan perintah Append.In[16]:= Append�animals, pig�
Out[16]= �cat, dog, horse, cow, bear, pig�
Menyisipkan element pada awal list dengan perintah Prepend.In[3]:= Prepend�animals, python�
Out[3]= �python, cat, dog, horse, cow, bear�
Menyisikan element pada suku tertentu dengan perintah Insert.
3.5. OPERASI MULTI LIST 13
In[4]:= Insert�animals, elephant, 2�
Out[4]= �cat, elephant, dog, horse, cow, bear�
Mengganti element suku tertentu dari list dengan perintah ReplacePartIn[5]:= ReplacePart�animals, donkey, 2�
Out[5]= �cat, donkey, horse, cow, bear�
Untuk mengurutkan list digunakan perintah SortindexSort.In[6]:= Sort�animals�
Out[6]= �bear, cat, cow, dog, horse�
list animals diurutkan berdasarkan urutan angka atau urutan alphabet.Untuk list yangterdiri dari sub-list diurutkan berdasarkan suku pertama dari sub-list.In[7]:= Sort���2, p�, �3, 5�, �y, t, h�, �11, 7, 5�, �o, n���
Out[7]= ��2, p�, �3, 5�, �o, n�, �11, 7, 5�, �y, t, h��
Jumlah element tertentu dari list dapat diputar ke kanan atau ke kiri.indexRotateIn[8]:= RotateRight�animals�
Out[8]= �bear, cat, dog, horse, cow�In[9]:= RotateLeft�animals�
Out[9]= �dog, horse, cow, bear, cat�
List dengan element sub-list diflatten dengan perintah Flatten.In[10]:= Flatten���2, p�, �3, 5�, �y, t, h�, �11, 7, 5�, �o, n���
Out[10]= �2, p, 3, 5, y, t, h, 11, 7, 5, o, n�
Perintah Partition digunakan untuk membuat sub-list dari suatu list dengan jumlahelement tertentu.In[11]:= Partition�animals, 2�
Out[11]= ��cat, dog�, �horse, cow��
Perintah Transpose digunakan untuk mengubah colom menjadi baris,baris menjadicolom.In[12]:= Transpose���1, 2, 3�, �4, 5, 6�, �7, 8, 9���
Out[12]= ��1, 4, 7�, �2, 5, 8�, �3, 6, 9��
3.5 Operasi Multi List
Berbeda dengan Transpose yang beroperasi dalam sub-list terdapat perintah yang lang-sung beroperasi pada list.In[1]:= Join��p, y, t, h, o, n�, �c, o, w��
Out[1]= �p, y, t, h, o, n, c, o, w�
14 BAB 3. LIST DAN TABLE
In[2]:= Union��p, y, t, h, o, n�, �c, o, w��
Out[2]= �c, h, n, o, p, t, w, y�
Funsi Join hanya menggabungkan dua list. Sedangkan fungsi Union menggabungkandua list tanpa ada pengulangan element,sekaligus element list baru menjadi terurut.PerintahComplement digunakan untuk membuat list baru dari dengan element list � yang tidakterdapat pada element list��list� � � ��.Intersection[list�� list�� � � �] digunakan untuk mem-buat list baru element persekutuan dari list �.Fungsi Complement,Intersection meng-hasilkan element terurut.In[3]:= Complement��p, y, t, h, o, n�, �c, o, w��
Out[3]= �h, n, p, t, y�
In[4]:= Intersection��p, y, t, h, o, n�, �c, o, w��
Out[4]= �o�
3.6 Fungsi BertingkatFungsi bertingkat adalahfungsi dengan variable fungsilain.
Fungsi bertingkat sangat penting dalam programming Mathematica.Jika setiap element list merupakan variable dari fungsi untuk mempermudah operasidapat digunakan fungsi Map.Kerja fungsi Map pada fungsi tak terdefinisi f sepertiberikut.In[1]:= Map�f, �3, 17, 13, 11, 7, 5��
Out[1]= �f�3�, f�17�, f�13�, f�11�, f�7�, f�5��
Reverse dan Map dapat digabungkan untuk mengubah urutan element sub-list dari list.In[2]:= Map�Reverse, ��a, b�, �c, d, e�, �f, g, h���
Out[2]= ��b, a�, �e, d, c�, �h, g, f��
Sort dan Map digabungkan untuk sorting element sub-list dari list.In[3]:= Map�Sort, ��8, 2, 5, 3�, �p, y, t, o, n�, �p, i, g, 7���
Out[3]= ��2, 3, 5, 8�, �n, o, p, t, y�, �7, g, i, p��
MapThread[f,�list�� list�� � � ��] setiap element list� pada suku yang sama menjadi vari-able dari fungsi f.Setiap list harus memiliki jumlah element yang sama.Kerja MapThreaddapat dilihat pada fungsi tak terdefinisi f.In[4]:= MapThread�f, ��8, 2, 5, 3, 7�, �p, y, t, o, n���
Out[4]= �f�8, p�, f�2, y�, f�5, t�, f�3, o�, f�7, n��
Element list� menjadi basis dari fungsi Log.In[5]:= MapThread�Log, ��2, 10, E�, �10, 20, 40��� �� N
Out[5]= �3.32193, 1.30103, 3.68888�
Untuk membuat kombinasi variable yang mungkin dari beberapa list digunakan fungsiOuter.
3.6. FUNGSI BERTINGKAT 15
In[6]:= Outer�f, �a, b�, �2, 3, 5��
Out[6]= ��f�a, 2�, f�a, 3�, f�a, 5��, �f�b, 2�, f�b, 3�, f�b, 5���
List dengan element semua kombinasi dari list � bisa bibuat dengan mengganti fungsitak terdifinisi f dengan funsi List.In[7]:= Outer�List, �a, b�, �2, 3, 5��
Out[7]= ���a, 2�, �a, 3�, �a, 5��, ��b, 2�, �b, 3�, �b, 5���
Fungsi dengan dua variable list atau lebih, setiap element dari variable list diambilsecara berurut.Dengan kata lain setiap element list di-thread secara otomatis.SebagaicontohIn[8]:= �1, 3, 5, 7� � �2, 4, 6, 8�
Out[8]= �3, 7, 11, 15�
MapThread dengan variable fungsi Plus akan menghasilkan nilai yang sama sepertidi atas.In[9]:= MapThread�Plus, ��1, 3, 5, 7�, �2, 4, 6, 8���
Out[9]= �3, 7, 11, 15�
Element dari list di map secara otomatis,sifat dari fungsi dithread dinamakan List-table.Sebagian besar fungsi memiliki Attribute.In[10]:= Attributes�Mod�
Out[10]= �Listable, NumericFunction, Protected�
Element fungsi List dapat dirubah menjadi element dari fungsi yang lain.Saat itu jum-lah variable fungsi sama dengan element List.In[11]:= Apply�f, Lis�2, 3, 5, 7, 11��
Out[11]= f�2, 3, 5, 7, 11�
Element List menjadi element baru dari fungsi f.Dengan kata lain List dirubah menjadif.Contoh nyata dapat dilihat seperti dibawah.In[12]:= Apply�Plus, Lis�2, 3, 5, 7, 11��
Out[12]= 28
List[2,3,5,7,11] diubah menjadi Plus[2,3,5,7,11].Penggantian hanya terjadi di bagianterluar list,tidak bekerja pada sub-list.In[13]:= Apply�f, ��2, 3, 5�, �7, 11, 13���
Out[13]= f��2, 3, 5�, �7, 11, 13��In[14]:= Apply�Plus, ��2, 3, 5�, �7, 11, 13���
Out[14]= �9, 14, 18�
Penggantian element terluar juga dapat dilakukan pada sub-list.In[15]:= Apply�f, ��2, 3, 5�, �7, 11, 13��, 2�
Out[15]= �f�2, 3, 5�, f�7, 11, 13��
16 BAB 3. LIST DAN TABLE
In[16]:= Apply�Plus, ��2, 3, 5�, �7, 11, 13��, 2�
Out[16]= �10, 31�
3.7 Fungsi Berulang
Hasil fungsi dari suatu variable menjadi variable fungsi yang sama, dan seterusnya.Fungsitidak terdefinisi f,nilai awal � dieksekusi � kali.In[1]:= Nest�f, a, 5�
Out[1]= f�f�f�f�f�a�����
Untuk melihat hasil sementara dapat digunakan fungsi NestList sebagai penggantiNest.In[2]:= NestList�f, a, 5�
Out[2]= �a, f�a�, f�f�a��, f�f�f�a���, f�f�f�f�a����, f�f�f�f�f�a������
Fungsi Sin dengan nilai awal �� � dieksekusi � kali.In[3]:= NestList�Sin, 0.95, 10�
Out[3]= �0.95, 0.813416, 0.726638, 0.664361, 0.616556,
0.578229, 0.546541, 0.519736, 0.496651, 0.476483, 0.458657�
Fungsi Fold,nilai awal menjadi variable pertama,suku ke-1 menjadi variable ke-2,selanjutnyahasil itu menjadi variable pertma,suku ke-2 sebagai variable ke-2 dari suatu fungsi danseterusnya.In[4]:= Fold�f, 0, �a, b, c, d, e��
Out[4]= f�f�f�f�f�0, a�, b�, c�, d�, e�
Hasil sementara bisa dilihat dengan mengganti fungsi Fold dengan fungsi FoldList.In[5]:= FoldList�f, 0, �a, b, c, d, e��
Out[5]= �0, f�0, a�, f�f�0, a�, b�, f�f�f�0, a�, b�, c�,f�f�f�f�0, a�, b�, c�, d�, f�f�f�f�f�0, a�, b�, c�, d�, e��
Contoh nyata dapat dilihat seperti berikut.In[6]:= FoldList�Plus, 0, �1, 2, 3, 4, 5��
Out[6]= �0, 1, 3, 6, 10, 15�In[7]:= FoldList�Power, 2, �1, 2, 3, 4, 5��
Out[7]= �2, 2, 4, 64, 16777216, 1329227995784915872903807060280344576�
Fungsi Nest mengulang operasi untuk fungsi yang sama.Untuk fungsi berbeda bisa di-gunakan fungsi Inner.In[8]:= Inner�f, �a, b, c�, �d, e, f�, g�
Out[8]= g�f�a, d�, f�b, e�, f�c, f��
Dengan fungsi Inner bisa digunakan untuk menghitung nilai dari perkalian titik vec-
3.7. FUNGSI BERULANG 17
tor(dot product).In[9]:= Inner�Times, �a, b, c�, �d, e, f�, Plus�
Out[9]= a d � b e � c fTerdapat vector &� �
��� ��� � � � � �����&� �
��� ��� � � � � ����,��'�%���&��&�
didefenisikan sebagai
����
���
�� � ��
18 BAB 3. LIST DAN TABLE
Bab 4
Plot dan Graphic
Bab Plot dan Graphic akan menjelaskan cara menggambar, penggunaan option danpengetahuan dasar yang diperlukan untuk menggambar graphic.
4.1 Basic Plot
Plot[f,��� ����� �����] memplot fungsi f dari xmin� xmaxPlot[��� �� � � ��� ��� ����� �����] memplot lebih dari satu fungsi bersamaan
Mari kita mencoba memplot fungsi ������ dalam interval � � � � �.In[1]:= Plot�Sin�x�, �x, 0, 2�Pi��
1 2 3 4 5 6
-1
-0.5
0.5
1
Out[1]= � Graphics �
Dibawah output graphic,muncul-graphics-,iniberarti output berupa graphics object.Marikita lihat lebih detail.
19
20 BAB 4. PLOT DAN GRAPHIC
In[2]:= Short�InputForm�%�, 6�
Out[2]//Short=
Graphics���Line���2.617993877991494*^-7,2.6179938779914644*^-7�, �0.25488992540742256, 0.25213889196341294�,�0.5328694051959509, 0.508006999749293�, ��78��,
�6.283185045380199, �2.6179938774695577*^-7�����, ���25����
Fungsi yang disketsa dengan Plot dibuat dengan cara menghubungkan titik-titik.Disini� ���menunjukkan �� titik disingkat. Kita juga dapat memplot fungsi yang memilititik khusus,sebagai contoh fungsi ������. Scala dari sumbu � dan sumbu � ditentukansecara otomatis.In[3]:= Plot�Tan�x�, �x, �2�Pi, 2�Pi��
-6 -4 -2 2 4 6
-30
-20
-10
10
20
30
Out[3]= � Graphics �
Untuk memplot beberapa fungsi bersamaan dilakukan dalam bentuk list.In[4]:= Plot��Sin�x�, Cos�x�, Sin�x� Cos�x��, �x, 0, 2�Pi��
1 2 3 4 5 6
-1
-0.5
0.5
1
Out[4]= � Graphics �
Saat Mathematica diperintahkan untuk memplotsuatu fungsi,Mathematica akan meng-gunakan dua cara.
1. Pertama fungsi f dieksekusi, kemudian dicari nilai fungsi dari setiap titik � yang
4.2. MENGGUNAKAN OPTIONS 21
diberikan.
2. Pertama dicari dulu range � dimana fungsi akan diplot,kemudian dicari nilaisetiap fungsi dari tiap titik � yang diberikan.
Saat Plot[f,��� ����������] dieksekusi Mathematica akan mengambil cari � .Pen-dekatan ini dilakukan dengan mencari nilai fungsi dari range yang diberikan.Tidakperduli apakah fungsi terdefinisi dalam semua � atau tidak. Tetapi terkadang fungsi harus dieksekusi terlebih dahulu.Untuk melakukan ini bisa dilakukan dengan struk-tur Plot[Evaluate[f],��� ����� �����].In[5]:= Plot�Evaluate�Table�BesselJ�n, x�, �n, 4���, �x, 0, 10��
2 4 6 8 10
-0.2
0.2
0.4
0.6
Out[5]= � Graphics �
4.2 Menggunakan Options
Terkadang default options pada Mathematica tidak sesuai dengan keinginan user.Mathematica mem-berikan kebebasan kepada user untuk merubah default options.
Plot[f,������ ����� � ����� ������] menentukan option,memplot fungsi f
Untuk mengetahui options apa saja yang ada pada fungsi Plot dilakukan dengan meng-gunakan perintah Options
22 BAB 4. PLOT DAN GRAPHIC
In[1]:= Options�Plot�
Out[1]= �AspectRatio �1
GoldenRatio
, Axes � Automatic, AxesLabel � None,
AxesOrigin � Automatic, AxesStyle � Automatic, Background � Automatic,
ColorOutput � Automatic, Compiled � True, DefaultColor � Automatic,
DefaultFont $DefaultFont, DisplayFunction $DisplayFunction, Epilog � ��,FormatType $FormatType, Frame � False, FrameLabel � None, FrameStyle � Automatic,
FrameTicks � Automatic, GridLines � None, ImageSize � Automatic,
MaxBend � 10., PlotDivision � 30., PlotLabel � None, PlotPoints � 25,
PlotRange � Automatic, PlotRegion � Automatic, PlotStyle � Automatic,
Prolog � ��, RotateLabel � True, TextStyle $TextStyle, Ticks � Automatic�
Selanjutnya akan dijelaskan beberapa options yang sering digunakan.
In[2]:= Plot�Sin�Pi t���������������������������
Pi t, �t, �5, 5��
-4 -2 2 4
-0.2
0.2
0.4
Out[2]= � Graphics �
Graphic ����!��!� dengan default options,graphic bagian atas tidak muncul. Dengan per-
intah InputForm bisa diketahui graphics options dari PlotRange adalah Automat-ic.Untuk melihat semua bagian graphic dengan merubah option PlotRange� Auto-matic menjadi PlotRange� All.
In[3]:= Plot�Sin�Pi t���������������������������
Pi t, �t, �5, 5�, PlotRange � All�
-4 -2 2 4
-0.2
0.2
0.4
0.6
0.8
1
Out[3]= � Graphics �
4.2. MENGGUNAKAN OPTIONS 23
Untuk memberikan label pada sumbu � dan sumbu � bisa dilakukan menggunakan op-tion AxesLabel
In[4]:= Plot�Sin�Pi t���������������������������
Pi t, �t, �5, 5�, AxesLabel � �"x value", "
Sin�Πt�����������������������
Πt", PlotRange � All�
-4 -2 2 4x value
-0.2
0.2
0.4
0.6
0.8
1
Sin�Πt�
Πt
Out[4]= � Graphics �
PlotRange juga bisa diberikan nilai tertentu.
In[5]:= Plot�Sin�Pi t���������������������������
Pi t, �t, �5, 5�,
AxesLabel � �"x value", "Sin�Πt�����������������������
Πt", PlotRange � ���2, 2�, All��
-2 -1.5 -1 -0.5 0.5 1 1.5 2x value
-0.2
0.2
0.4
0.6
0.8
1
Sin�Πt�
Πt
Out[5]= � Graphics �
Untuk memberikan Frame bisa dilakukan dengan merubah default options Frame�Falsemenjadi Frame�True.
24 BAB 4. PLOT DAN GRAPHIC
In[6]:= Plot�Sin�Pi t���������������������������
Pi t, �t, �5, 5�, AxesLabel � �"x value", "
Sin�Πt�����������������������
Πt",
PlotRange � All, Frame � True, GridLines � Automatic�
-4 -2 0 2 4-0.2
0
0.2
0.4
0.6
0.8
1
x value
Sin�Πt�
Πt
Out[6]= � Graphics �
Dengan DisplayFunction menjadi Identity data graphic hanya dibuat tetapi di tampilkan.Ini dipakai jika graphic akan digunakan kemudian.In[7]:= Plot�x Sin�x^2�, �x, 0, 2�Pi�, DisplayFunction � Identity�
Out[7]= � Graphics �
Dengan perintah Show,option DisplayFuntion� �DisplayFunction.In[8]:= Show�%, DisplayFunction � $DisplayFunction�
1 2 3 4 5 6
-6
-4
-2
2
4
6
Out[8]= � Graphics �
Perintah Show akan dibicarakan section berikut.Terpisah dari perintah Plot,primitive plotbisa dibuat dengan menggunakan option Plot-Style.Thickness[0.001] membuat plottebal garis ����.
4.2. MENGGUNAKAN OPTIONS 25
In[9]:= Plot�Sin�Pi t���������������������������
Pi t, �t, �5, 5�, PlotRange � All, PlotStyle � Thickness�0.01��
-4 -2 2 4
-0.2
0.2
0.4
0.6
0.8
1
Out[9]= � Graphics �
Option PlotStyle bisa digunakan lebih dari satu dalam bentuk List. Dashing[������ ����],memplotdengangaris putus-putus, panjang garis ����,panjang spasi ���.
In[10]:= Plot�Sin�Pi t���������������������������
Pi t, �t, �5, 5�, PlotRange � All,
PlotStyle � �Thickness�0.01�, Dashing��0.05, 0.02����
-4 -2 2 4
-0.2
0.2
0.4
0.6
0.8
1
Out[10]= � Graphics �
Untuk dua graphic atau lebih option PlotStyle diberikan dengan mengurutkan optionuntuk setiap graphic dalam bentuk list.
26 BAB 4. PLOT DAN GRAPHIC
In[11]:= Plot��Sin�x�, Cos�x��, �x, 0, 4�Pi�,PlotStyle � �Thickness�0.01�, Dashing��0.05, 0.03����
2 4 6 8 10 12
-1
-0.5
0.5
1
Out[11]= � Graphics �
Setiap graphic dengan lebih dari satu option dibuat dalam bentuk list.In[12]:= Plot��Cos�5�x�, E�x^2�, �x, �Pi�2, Pi�2�, PlotStyle �
��Thickness�0.01�, Dashing��0.05, 0.03���, �Thickness�0.008�, GrayLevel�0.4����
-1.5 -1 -0.5 0.5 1 1.5
-1
-0.5
0.5
1
Out[12]= � Graphics �
4.3 MemPlot Data Titik
Data list diplot dengan perintah ListPlot.Berikut fungsi ������ dengan interval � �� � � disampling sebanyak � titik.In[1]:= pnt � Table�Sin� x� �� N, �x, 0, 2�Pi, 2�Pi�8��
Out[1]= �0., 0.707107, 1., 0.707107, 0., �0.707107, �1., �0.707107, 0.�
Untuk mempebesar ukuran titik digunkan option PointSize.
4.3. MEMPLOT DATA TITIK 27
In[2]:= ListPlot�pnt, PlotStyle � PointSize�0.02��
4 6 8
-1
-0.5
0.5
1
Out[2]= � Graphics �
Untuk menghubungkan titik dilakukan dengan option PlotJoined� True.In[3]:= ListPlot�pnt, PlotStyle � PointSize�0.02�, PlotJoined � True�
4 6 8
-1
-0.5
0.5
1
Out[3]= � Graphics �
Jika ingin menampilkan kembali plot titik dan garis bisa lakukan dengan perintah ShowIn[4]:= Show�Out�2�, Out�3�, GridLines � Automatic�
2 4 6 8
-1
-0.5
0.5
1
Out[4]= � Graphics �
28 BAB 4. PLOT DAN GRAPHIC
4.4 Re-Display dan Kombinasi Plot
Satu kali suatu fungsi diplot,fungsi data tersebut disimpan dalam buffer 1.Data tersebutbisa dipanggil kapanpun, pengubahan option juga diizinkan.
Show[plot] re-display plotShow[plot,option�value] re-display plot dengan option tertentuShow[% �� � % ��� � � �] re-display % ��� % ��� � � � bersamaanShow[GraphicsArray[% �� � % ��� � � �� � � �]] menampilkan beberapa graphics dalam dua dimensi
Graphic ������ diplot dalam interval � � �� � �.Data graphic disimpan dalambuffer dengan nama gp01.In[1]:= gp01 � Plot�Sin�x�, �x, �2�Pi, 2�Pi��
-6 -4 -2 2 4 6
-1
-0.5
0.5
1
Out[1]= � Graphics �
Untuk menampilkan satu output sebelumnya digunakan �.In[2]:= Show�gp01�
-6 -4 -2 2 4 6
-1
-0.5
0.5
1
Out[2]= � Graphics �
1buffer adalah memory area yang digunakan untuk menyimpan data sementara
4.4. RE-DISPLAY DAN KOMBINASI PLOT 29
Saat re-display options graphic bisa dirubah,dan disimpan dalam buffer dengan namatertentu. Misal: gp02In[3]:= gp02 � Show�gp01, PlotRange � ��0, 2�Pi�, All�,
PlotLabel �� "Sinx�", Ticks � ��0, Π �2, Π, 3�Π �2, 2�Π�, Automatic��
Π2
Π 3 Π2
2 Π
-1
-0.5
0.5
1Sin�x�
Out[3]= � Graphics �
Graphic ������ diplot dalam interval � � �� � �.Data graphic disimpan dalambuffer dengan nama gp03.In[4]:= gp03 � Plot�Cos�x�, �x, �2�Pi, 2�Pi��
-6 -4 -2 2 4 6
-1
-0.5
0.5
1
Out[4]= � Graphics �
Graphic gp01,gp03 ditampilkan bersamaan,dan disimpan dengan nama gp04.
30 BAB 4. PLOT DAN GRAPHIC
In[5]:= gp04 � Show��gp01, gp03��
-6 -4 -2 2 4 6
-1
-0.5
0.5
1
Out[5]= � Graphics �
Beberapa graphic yang dibuat tadi ditampilkan satu kali bersamaan menggunakan per-intah GraphicsArray.Option yang berikan menjadi option untuk semua graphic.Disini re-display graphics disimpan dengan nama gp05In[6]:= Show�GraphicsArray���gp01, gp02�, �gp03, gp04���, Frame � True�
-6 -4 -2 2 4 6
-1
-0.5
0.5
1
-6 -4 -2 2 4 6
-1
-0.5
0.5
1
-6 -4 -2 2 4 6
-1
-0.5
0.5
1
Π2
Π 3 Π2
2 Π
-1-0.5
0.51
Sin�x�
Out[6]= � GraphicsArray �
Untuk merubah option dari setiap graphic digunakan perintah options seperti berikut.
4.5. CONTOUR DAN DENSITY 31
In[7]:= Show�gp05 �. Ticks � Automatic� � Ticks � None��
Π2
Π 3 Π2
2 Π
-1-0.5
0.51
Sin�x�
Out[7]= � GraphicsArray �
GraphicsArray jika tidak diberikan option tertentu,spasi antar dua graphic sempit.Untukmengatur spasi digunakan option GraphicsSpacing� ��� ��.In[8]:= Show�%, GraphicsSpacing � �0.3, 0��
Π2
Π 3 Π22 Π
-1-0.5
0.51
Sin�x�
Out[8]= � GraphicsArray �
4.5 Contour dan Density
ContourPlot[f,�� ����� ����� �� ����� ����] memplot contour fungsi f dengan variable �� �dalam interval � � ���� � ����� � � ���� � ����
DensityPlot[f,�� ����� ����,������� ����] memplot density fungsi f dengan variable �� �dalam interval � � ���� � ����
32 BAB 4. PLOT DAN GRAPHIC
4.6 Advanced:Control Options
Dalam Mathematica , seperti Plot jika tidak diberikan option,maka yang dipakai adalahdefault options.Seperti sudah dijelaskan sebelumnya, untuk melihat options dari suatufungsi bisa dilihat dengan perintah Options[function,option�value].Dari default op-tions untuk meruba tinggal merubah value dari option. Untuk mengubah default op-tions digunakan perintah SetOptions[function,option�value]. Perlu diperhatikan jikasekali default options dirubah, selama belum dirubah lagi, value dari option lama akanterus dipakai.In[1]:= Options�Plot, PlotRange�
Out[1]= �PlotRange � Automatic�
value dari option PlotRange:AutomaticIn[2]:= SetOptions�Plot, PlotRange � All�;
Default option dari PlotRange dirubah menjadi All.In[3]:= Options�Plot, PlotRange�
Out[3]= �PlotRange � All�
Bisa dilihat Default option dari PlotRange berubah manjadi All.
Indeks
Abs, 6Append, 12ArcCos, 6ArcSin, 6ArcTan, 6Array, 10Atribute, 15AxesLabel, 23
Complement, 14Contour, 31ContourPlot, 31Cos, 6
Dashing, 25Degree, 6Density, 31DensityPlot, 31DisplayFunction, 24Drop, 12
E, 6Evaluate, 21Exp, 6
FactorInteger, 6First, 11Flatten, 13Fold, 16FoldList, 16Frame, 23
Graphics, 19GraphicsArray, 30GraphicsSpacing, 31
Help, 7
I, 6Identity, 24Infinity, 6Inner, 16Insert, 12
Join, 14
Last, 11Length, 10List, 9Log, 6
Map, 14MapThread, 14Mathematica, 5Max, 6Min, 6Mod, 6
Nest, 16NestList, 16
Options, 21Outer, 14
Palettes, 7Part, 11Partition, 13Pi, 6Plot, 19PlotJoined, 27PlotRange, 22PlotStyle, 24PointSize, 26Prepend, 12
Random, 6
33
34 INDEKS
Range, 9ReplacePart, 13Rest, 12Reverse, 14Round, 6
Show, 24, 27, 28Sin, 6, 16Sort, 14Sqrt, 6
Table, 9, 10Take, 11Tan, 6Thickness, 24Transpose, 13
Union, 14