Skip to main content

Introduction to Wolfram Mathematica

Free-form inputs

To compute, press SHIFT + ENTER

In[1]:= 3 + 9 SHIFT + ENTER

Out[1]:= 12

To suppress output, add ; after the line

In[1]:= 3 + 9; SHIFT + ENTER -> no output

You can execute multiple lines at once

In[1]:= a = 2

b = a + 2

c = b ^ 3 SHIFT + ENTER

Out[1]:= 2

Out[2]:= 4

Out[3]:= 64

Starting from now, when we have output, it means that in the end of the previous line, we press SHIFT + ENTER.

To get the most recent output, use %

In[1]:= 3 + 9

Out[1]:= 12

In[1]:= % + 5

Out[1]:= 17

Basics in Programming


A variable starts with letters. If you want, you may add numbers into the variable name. It is much better if you start the variable name with lowercase

In[1]:= myVariable123 = 2

Out[1]:= 2

Please notice how I join the two words and the number into a single word. If you put space between the variable name, it will indicate multiplication

In[1]:= x = 3;

5 x x

Out[1]:= 45

To clear the variable, use Clear function

In[1]:= x = 2

Out[1]:= 2

In[2]:= 2 x

Out[2]:= 4

In[3]:= Clear[x]

In[4]:= 5 x x

Out[4]:= \(5x^2\)

Conditional Statement

The if contains three parts i.e. test, then (what to do if true), and else (what to do if false). The syntax is as follows

If[test, then, else]


In[1]:= If[5<8, Print["5 is less than 8"], Print["5 is more than 8"]

5 is less than 8


List of items are indicated by { ... }

In[1]:= {1, 2, 3} * 2

Out[1]:= {2, 4, 6}

The index of the list starts from 1

In[1]:= {3, 8, 2, 9}[[3]]



The syntax used for the loop in Mathematica is as follows

For[start, test, incr, body]

start indicate the condition when the loop is started (initialization)

test indicate the condition to check during the loop

incr indicate the increment happen on each loop

body indicate the operation done during the loop


In[1]:= For[i=0, i<4, i++, Print[i]]





If you want to add more command on each section, separate the command using semicolon ;


In[1]:= For[i = 0, i < 4, i++, Print[i]; Print["hello"]]









Data Visualisation


You can plot single function using the following command

Plot[f, {x , \(x_{min}\) , \(x_{max}\) }]


In[1]:=Plot[Sin[x], {x, 0, 6 Pi}]

If you want to plot more than one functions, use list in the functions

Plot[{f1, f2, ... fn}, {x , \(x_{min}\) , \(x_{max}\) }]


Plot[{Sin[x], Cos[x]}, {x, 0, 6 Pi}]



ListPlot function can be used to plot points. The syntax is as follows

ListPlot[{y1, y2, ... yn}]


ListPlot[{1, 3, 5}]



ListLinePlot can be used to plot a line through the points. The syntax is as follows

ListLinePlot[{y1, y2, ... yn}]


ListLinePlot[{1, 3, 5, 8}]


Manipulate Commands

Manipulate is used to see the changes in the output when the input is changed


Manipulate[Plot[Sin[a x], {x, 0, 6}], {a, Pi, 3 Pi}]



Popular posts from this blog

Find JIRA issues mentioned in Confluence Page

I have been walking through a lot of pages in internet but have not found any answer except one. However, the answer is not complete, so I will share my experience here. This feature is very useful, especially to summarize the issues found during certain tests, where the tests are reported in a confluence page. I found that there are so many questions about this, but Atlassian seems does not want to bother with this request. I found one way to do this by the following tricks Take one JIRA issue that related to the target confluence page (in this case, say it is GET-895) Find the global ID of a JIRA issue: It will show the JSON like this: [{"id":28293,"self":"","globalId":"appId=662e1ccf-94da-3121-96ae-053d90587b29&pageId=105485659","application":{

Mininet/Containernet Problem: Exception: Error creating interface pair (s2-eth5,s3-eth1): RTNETLINK answers: File exists

If you did not shut down the previous running mininet/containernet network (e.g. if you lose your connection to remote server), you will got the following error when you try to rerun your mininet network Traceback (most recent call last): File "./", line 31, in <module> net.addLink(d2, s1) File "build/bdist.linux-x86_64/egg/mininet/", line 403, in addLink File "build/bdist.linux-x86_64/egg/mininet/", line 430, in __init__ File "build/bdist.linux-x86_64/egg/mininet/", line 474, in makeIntfPair File "build/bdist.linux-x86_64/egg/mininet/", line 202, in makeIntfPair Exception: Error creating interface pair (d2-eth0,s1-eth2): RTNETLINK answers: File exists In order to solve the problem, you need to clean up the previous running topology by using the following command sudo mn -c It will clean up all your cache. It will be something like this $ sudo mn -c *** Re

Akte, paspor, dan visa untuk anak Indonesia yang lahir di Malaysia

Alhamdulillah, akhirnya urusan administrasi kenegaraan-nya Marwa sudah hampir selesai. Kemarin sore, di paspor marwa sudah ada visa pelancong selama 30 hari, tinggal nunggu proses di Putrajaya selama 7 hari untuk mendapatkan Multiple Entry-nya. Selepas itu, selesai.... Di dalam tulisan ini, saya pengen sedikit cerita pengalaman saya mengurus administrasi untuk anak Indonesia yang lahir di Malaysia (saya tidak tahu apakah untuk di negara lain prosedurnya juga sama). #1. Administrasi di klinik terdekat (sebelum melahirkan) Sebelum istri melahirkan, istri disarankan untuk mendaftar dan memeriksakan kandungannya secara rutin di klinik terdekat (meskipun hanya klinik, tapi fasilitas pemeriksaan dan labnya cukup lengkap dan canggih). Pada fase ini, istri akan diberi buku pemeriksaan. Buku ini penting untuk mengetahui kondisi si ibu, dan perkembangan janin. Buku ini akan diisi oleh dokter atau perawat yang memeriksa kandungan. #2. Administrasi setelah melahirkan Di klinik biasanya tid