0% menganggap dokumen ini bermanfaat (0 suara)
505 tayangan

Tutorial GrADS

Linux adalah sistem operasi multiuser dan multitasking yang dapat berjalan di berbagai platform. Linux awalnya dikembangkan oleh Linus Torvalds dan bersifat sumber terbuka. Linux memiliki perintah dasar seperti pwd, cd, ls, cat, mkdir, rmdir, rm, cp, mv, dan more untuk mengelola berkas dan direktori.

Diunggah oleh

Bony Septian
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
505 tayangan

Tutorial GrADS

Linux adalah sistem operasi multiuser dan multitasking yang dapat berjalan di berbagai platform. Linux awalnya dikembangkan oleh Linus Torvalds dan bersifat sumber terbuka. Linux memiliki perintah dasar seperti pwd, cd, ls, cat, mkdir, rmdir, rm, cp, mv, dan more untuk mengelola berkas dan direktori.

Diunggah oleh

Bony Septian
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 38

Pengenalan Linux

Modul I
Pengenalan Linux

Secara teknis dan singkat dapat dikatakan, Linux adalah suatu sistem operasi
yang bersifat multi user dan multi tasking, yang dapat berjalan di berbagai platform
termasuk prosesor Intel 386 maupun yang lebih tinggi. Sistem operasi ini
mengimplementasikan standar POSIX. Linux dapat berinteroperasi secara baik dengan
sistem operasi yang lain, termasuk Apple, Microsoft dan Novell.
Linux pada awalnya dibuat oleh seorang mahasiswa Finlandia yang bernama
Linus Torvalds. Dulunya Linux merupakan proyek hobi yang diinspirasikan dari
Minix, yaitu sistem UNIX kecil yang dikembangkan oleh Andrew Tanenbaum. Linux
versi 0.01 dikerjakan sekitar bulan Agustus 1991. Kemudian pada tanggal 5 Oktober
1991, Linus mengumumkan versi resmi Linux, yaitu versi 0.02 yang hanya dapat
menjalankan shell bash (GNU Bourne Again Shell) dan gcc (GNU C Compiler).
Karena kernel Linux dikembangkan dengan usaha yang independen, banyak
aplikasi yang tersedia. Sebagai contoh, C Compiler menggunakan gcc dari Free
Software Foundation GNU’s Project. Compiler ini banyak digunakan pada lingkungan
Hewlett-Packard dan Sun.
Sekarang ini, banyak aplikasi Linux yang dapat digunakan untuk keperluan
kantor seperti untuk spreadsheet, word processor, database dan program editor grafis
yang memiliki fungsi dan tampilan seperti Microsoft Office, yaitu Open Office.org.
Selain itu, juga sudah tersedia versi Corel untuk Linux dan Matlab untuk Linux..
Dunia Linux atau umumnya keluarga Unix mempunyai perbedaan jauh di
bandingkan dengan system operasi lain, misalnya Microsoft Windows. Dikarenakan
terbiasa dengan Windows maka akan sangat sulit jika harus langsung berhadapan
dengan Linux. Secara teoritis sebelum menggunakan Linux hal dasar yang harus di
ketahui ialah perintah-perintah dasar yang ada di Linux. Perintah dasar inilah yang
digunakan untuk melakukan konfigurasi dan menjalankan / mengoperasikan Linux.
Beberapa perintah dasar tersebut adalah :
• pwd
pwd (present working direktori) ialah perintah untuk melihat direktori kerja
sekarang atau mudahnya untuk melihat posisi kursor sekarang.
:~> pwd
/home
• cd (change direktori)
cd digunakan untuk berpindah direktori. Sintaknya : cd nama_direktori.
:~> cd dewa108
ada trik mengenai perintah cd, ketika anda dihadapkan pada suatu kasus
dimana nama direktori tersebut panjang dan jika di ketik terlalu lama dan
rentan kesalahan ketik , maka cukup ketik satu atau beberapa huruf dan
tekan tombol tab.
1. :~> cd d # tekan tab hasilnya seperti dibawah ini
2. :~> cd dewa108/
Pada contoh diatas, kita ingin berpindah ke direktori dewa108, cukup
dengan mengetikkan ‘cd d’ dan tekan tombol tab maka hasilnya akan
seperti pada contoh kedua.
Sedangkan untuk berpindah direktori satu tingkat diatas direktori kerja
gunakan ‘cd ..’

Tutorial Komputasi Kerma ITB-BMKG 1


Pengenalan Linux

:~> pwd
/home/dewa108/mail
:~> cd .. #naik satu tingkat direktori diatasnya
:~> pwd
/home/dewa108
• ls (List)
Perintah ‘dir’ pada DOS digunakan untuk melihat isi direktori sedangkan di
shell digunakan ‘ls’.
Sintaknya : :~>ls
:~> ls
Mail home mail mbox
Perintah di atas digunakan untuk menampilkan isi direktori, seperti halnya
pada Windows, di Linux juga terdapat hidden file (nama file yang diawali
dengan tanda titik berarti hidden file). Untuk menampilkan hidden file maka
tambahkan atribut ‘-a’ pada ls. Huruf ‘a’ berarti menampilkan semua (all)
file tanpa kecuali.
Sintaknya : :~>ls –a
:~> ls -a
. .addressbook.lu .bash_profile .mh_profile Mail mbox
.. .bash_history .bashrc .pinerc home
.addressbook .bash_logout .emacs .screenrc mail
Untuk menampilkan file lengkap dengan ukuran , waktu di-create dan hak
kepemilikan tambahkan atribut ‘-l’ (long).
:~> ls -l
drwx------ 2 dewa108 dewa108 4096 Aug 12 22:46 Mail
drwxrwxr-x 2 dewa108 dewa108 4096 Aug 15 08:37 home
drwx------ 2 dewa108 dewa108 4096 Aug 12 22:44 mail
-rw------- 1 dewa108 dewa108 1797 Aug 12 22:45 mbox
atribut ‘a’ dan ‘l’ juga dapat digabung dengan sintak :~>ls –al
• cat (Concatenate)
cat digunakan untuk melihat isi file. Layaknya perintah ‘type’ di dos.
Sintak : :~> cat nama_file
:~> cat test.txt
metode komputasi 2005
• mkdir (Make direktori)
Perintah yang satu ini mempunyai fungsi yang sama dengan perintah ‘md’
pada DOS. Untuk membuat direktori ketik saja mkdir.
Sintak : :~>mkdir nama_direktori
:~> mkdir metkom
:~> ls
Mail home mail mbox metkom test.txt
• rmdir (remove direktori)
Kebalikan dari mkdir, rmdir berfungsi menghapus direktori.
Sintak : :~>rmdir nama_direktori
:~>rmdir metkom
• rm (remove)
Jika rmdir digunakan untuk menghapus direktori maka untuk menghapus
(remove) file digunakan
perintah rm.
Sintak : :~>rm nama_file

Tutorial Komputasi Kerma ITB-BMKG 2


Pengenalan Linux

:~>rm test.txt
Perintah rm juga bisa digunakan untuk menghapus direktori, dengan
menambahkan option –R, sehingga menjadi :~>rm –R metkom
• cp (copy)
Untuk meng-copy file dalam satu direktori atau antar direktori secara umum
mempunyai sintak :
:~>cp nama_file tujuan
:~> cp test.txt metkom/
keterangan perintah diatas yaitu file test.txt akan di-copy ke direktori
metkom.
• mv (move)
Perintah mv mempunyai dua makna yaitu
1. ‘mv’ untuk memindahkan file ke direktori lain
sintak : :~>mv nama_file direktori_tujuan
:~>mv test.txt metkom
file test.txt akan dipindahkan ke direktori metkom.
2. ‘mv’ digunakan untuk merubah ke nama file lain (rename).
Sintak : :~>mv nama_file_lama nama_file-baru
:~>mv test.txt tess.txt
file test.txt akan di-rename menjadi tess.txt
• more
Perintah ini sama fungsinya dengan cat yaitu melihat isi file, tapi isi file
diperlihatkan per halaman. Untuk melihat halaman berikutnya, gunakan
tombol enter.
Tambahan :
• Untuk mencari file perintah yang digunakan locate
:~>locate nama_file
• Untuk menghapus layer ketikkan ‘clear’
:~>clear # atau juga dapat dengan menekan ctrl+l
• Untuk melihat manual (help) yang lengkap dari suatu perintah, dapat anda
ketikkan
:~>man nama_perintah
:~>man cp
Untuk keluar dari man ketik q

Administrasi dan Manajemen Sistem Operasi Linux


Organisasi filesistem
Susunan filesistem linux besar dan komplek. Pada dasarnya linux terdiri dari lima
filesistem. Filesistem ini dapat ditempatkan pada partisi yang berbeda-beda dalam partisi
hard disk.
root “/” berisi dasar sistem operasi dan piranti perawatan. Isi dari filesistem ini penting
untuk proses start up dan untuk penyelamatan pada saat keadaan darurat dan
perbaikan jika diperlukan.
/usr berisi semua perintah, librari dan dokumentasi dan file yang lain yang tidak boleh
berubah selama operasi normal. Filesistem ini juga terdiri dari aplikasi utama yang
disertakan dalam distro linux.
/var berisi file yang selalu berubah saat pengoperasian sistem; direktori spool, file log, file
lock, file temporary.
/home tempat menyimpan seluruh pekerjaan, data dan file lain setiap user.

Tutorial Komputasi Kerma ITB-BMKG 3


Pengenalan Linux

/proc berisi file yang sebenarnya tidak ada di hard disk. File ini sebenarnya ada di memori
dan merupakan hasil proses dari kernel.
Bagian dari filesistem root diantaranya adalah:
/bin -- berisi program (biner) yang dapat dieksekusi yang diperlukan oleh user biasa dan
biasanya merupakan program-program dasar.
/sbin -- berisi program eksekutabel juga tetapi biasanya hanya bisa dioperasikan oleh user
root atau group root. Beberapa program bisa dijalankan oleh user biasa asal direktori
ini ada dalam PATH.
/etc -- berisi file-file konfigurasi yang penting untuk sistem operasi
/root -- direktori home untuk root
/dev -- file device. Device ini biasanya adalah hardware yang terpasang pada komputer
kita. Contoh file device adalah fd0 yang merupakan device dari floopy disk.
/mnt -- direktori mount point untuk media tak tetap (floopy, cdrom, flashdisk). Pada
beberapa distro linux direktori ini tidak terpakai dan digantikan oleh direktori
/media.
/lib -- berisi librari dinamis yang diperlukan oleh program untuk berjalan secara normal
dan juga berisi module kernel.
/boot -- merupakan diretori tempat kernel linux dan initrd yang diload saat booting.
/opt -- direktori tempat aplikasi besar diinstal, misalnya OpenOffice.
/tmp -- direktori file sementara dan dibersihkan secara otomatis oleh sistem operasi.

Linux shortcuts dan perintah-perintah penting:


Legend:
<> = kunci tunggal special atau fungsi kunci dalam keyboard, mis <CTRL>
italic = nama file atau variabel yang dapat diganti sesuai dengan kebutuhan

Catatan UNIX:
1. Perlu diingat bahwa linux adalah sistem operasi yang case-sensitive. Contoh
DELETE, delete, dELete merupakan tiga perintah atau komentar yang berbeda.
2. Filename maksimum terdiri dari 256 karakter dan bisa berupa huruf, angka,
“.”(dot), ”_” (underscore), “-“ (dash), atau karakter lain yang tidak
direkomendasikan, dan bisa kombinasi dari karakter-karakter di atas.
3. File yang dimulai dengan karakter “.” merupakan file tersembunyi (hidden file)
yang tidak bisa dilihat dengan perintah ls (list) kecuali dengan menambakan option –
a.
4. “/” sama dengan “\” DOS
5. Pada file konfigurasi, baris yang dimulai dengan # adalah komentar.

A. Shortcuts penting Linux


<CTRL><ALT><F1> Pindah ke terminal teks pertama. Dalam linux terdapat
beberapa terminal yang dibuka pada waktu bersamaan
<CTRL><ALT><Fn> (n=1...6) pindah ke n terminal teks.
<CTRL><ALT><F7> Pindah ke terminal GUI pertama (jika aktif)
<CTRL><ALT><Fn> (n=7...12) pindah ke n terminal GUI (jika terminal GUI
berjalan pada screen n-1)
<TAB> Auto komplit perintah atau nama file dalam mode
terminal
<ArrowUp> Geser dan sunting perintah sebelumnya. Tekan [ENTER]
untuk mengeksekusi
<SHIFT><PgUp> Geser luaran terminal ke atas.

Tutorial Komputasi Kerma ITB-BMKG 4


Pengenalan Linux

<SHIFT><PgDown> Geser luaran terminal ke bawah.


<CTRL><ALT><+> (di X-windows) Rubah resolusi X-server dengan setting
selanjutnya ( jika X-server mempunyai lebih dari satu
seting resolusi)
<CTRL><ALT><-> (di X-windows) Rubah resolusi X-server dengan setting
sebelumnya
<CTRL><ALT><BkSpc> (di X-windows) Menghentikan server X-windows yang
aktif. Digunakan jika server X-windows crash dan tidak
bisa keluar secara normal
<CTRL><ALT><DEL> Matikan sistem dan reboot. Ini adalah perintah
mematikan sistem normal untuk user pada konsole
mode-teks
<CTRL>c Matikan proses yang sedang berjalan
<CTRL>d Keluar dari terminal
<CTRL>d Kirim [End-of-File] pada proses yang sedang berjalan
<CTRL>s Berhentikan tranfer di terminal
<CTRL>q Kembalikan tranfer ke terminal. Coba jika terminal tiba-
tiba berhenti merespon
<CTRL>z Kirim proses yang sedang berjalan ke proses background
reset Kembalikan tampilan terminal yang kacau ke setting
default.
<MiddleMouseButton> Tempel teks yang telah disorot ditempat yang lain.
~ (tilde) Home direktori sendiri. Contoh, cd ~/my_dir
perintah untuk berpindah ke home direkdori dengan
subdirektori “my_dir”
. (dot) Direktori saat ini. Contoh, “./my_program” akan
mengeksekusi file “my_program”
.. (dua dot) Direktori di atas direktori saat ini

B. Common LINUX commands--system info


Command Deskription
pwd Print working directory, i.e., display the name of my current directory
on the screen
hostname Print the name of the local host (the machine on which you are
working).
whoami Print my login name
id username Print user id (uid) and his/her group id (gid), effective id (if different
than the real id) and the supplementary groups
date Print or change the machine date and time. E.g., change the date and
time to 2005-07-01 13:00 using this command:
date 010713002005
time Determine the amount of time that it takes for a process to complete +
other info.
who Determine the users logged on the machine
rwho -a Determine all users logged on your network. The rwho service must
be enabled for this command to run.
finger user_name System info about a user. Try: finger root
last Show listing of users last logged-in on your system

Tutorial Komputasi Kerma ITB-BMKG 5


Pengenalan Linux

uptime Amount of time since last reboot


ps (=print status) List the processes currently run by the current user
ps axu | more List all the processes currently running processes, even those without
the controlling terminal, together with the name of the user that owns
each process.
top Keep listing the currently running processes, sorted by cpu usage. In
KDE, you can get GUI-based Ktop from “K” menu under “System”-
“Task Manager” (or by executing “ktop” in an X-terminal)
uname -a Info on your server
free Memory info (in kilobytes)
df -h (=disk free) Print disk info about all the filesystems (in human-
readable form)
du / -bh | more (=disk usage) Print detailed disk usage for each subdirectory starting
at root (in human legible form)
cat /proc/cpuinfo Cpu info. Note that the files in the /proc directory are not real files.
They are hooks to look at information available to the kernel
lsmod (as root) Show the kernel modules currently loaded
set|more Show the current user environment
echo :~>PATH Show the content of the environment variable “PATH”. This
command can be used to show other environment variables as well.
dmesg Print the boot messages. (It displays the file: /var/log/dmesg)

C. Basics operations
any_command -- Display a brief help on a command (works with most commands)
help | more
ls List the content of the current directory. Under linux, the command
“dir” is an alias to ls.
cd directory Change directory. Using “cd” without the directory name will take
you to your home directory. “cd –“ will take you to your previous
directory and is a convenient way to toggle between two directories.
cp source dest Copy files
mv source dest Move or rename files
ln -s source dest Create a symbolic link
rm files Remove files
mkdir directory Make a new directory
rmdir directory Remove an empty directory
cat filename|more View a content of a text called “filename”, one page a time. The “|” is
the “pipe” symbol (on many American keyboard it shares the key with
“\”). The pipe makes the output stop after each screenful. For long
files, it is sometimes convenient to use the commands “head” and
“tail” that display just the beginning and the end of the file.
less filename Scroll through a content of a text file. Press q when done.
tar –zxvf Untar a tarred and compressed tarball (*.tar.gz or *.tgz) that you
filename.tar.gz downloaded from the internet
gunzip Decompress a zipped file (*.gz or *.z). Use gzip (also zip or
filename.gz compress) if you wanted to compress files
find / -name Find the file “filename” on your filesystem starting from /. The
filename “filename” may contain a wildcard (*,?)
locate filename Find the file of which contains the string “filename”. Easier and faster

Tutorial Komputasi Kerma ITB-BMKG 6


Pengenalan Linux

than the previous command


pine A good text-mode mail reader. Another good and standard one is
“elm”. Pine will let you read the “local” mail, e.g. the mail your son or
a cron process sends to you
talk username Talk to another user currently logged on your machine (or use “talk
username@machinename” to talk to a user on a different computer)
mc Launch the “Midnight Commander” file manager (looks like “Norton
Commander” for Linux)
telnet server Connect to another machine using the TELNET protocol. Use a
remote machine name or IP address. Telnet is not very secure—
everything you type goes in open text, even your password
rlogin server (=remote login) Connect to another machine. The login
name/password from your current session is used; if it fails you are
prompted for a password
rsh server (=remote shell) Yet another way to connect to a remote machine. The
login name/password from your current session is used
ftp server Ftp another machine. This is good for copying files to/from the remote
machine
./program_name Run an executable in the current directory, which is not on your
PATH
shutdown –h now (as root) Shut down the system to a halt. Mostly used for a remote
shutdown
halt (as root) Halt or reboot the machine. Used for remote shutdown,
reboot simpler to type than the previous command
man topic Display the contents of the system manual pages (help) on the topic.
Try “man man” first. Press “q” to quit the viewer. The command “info
topic” works similar and may contain more up-to-date information.

D. Process control
fg PID Bring a background or stopped process to the foreground
bg PID Send the process to the background. Opposite to fg. The same can be
accomplished with <CTRL>z
kill PID Force a process shutdown. First determine the PID of the process to
kill using ps
killall Kill program(s) by name
program_name
xkill (in an xwindow terminal) Kill a GUI-based program with mouse.
(Point with your mouse cursor at the window of the process you want
to kill and click)
nice Run program_name adjusting its priority. Since the priority is not
program_name specified in this example, it will be adjusted by 10 (the process wil run
slower), from the default value (usually 0). The lower the number (of
“niceness” to other users on the system), the higher the priority. The
priority value may be in the range -20 to 19. Only root may specify
negative values. Use”top” to display the priorities of the running
processes
renice -1 PID (as root) Change the priority of a running process to -1. Normal users
can only adjust processes they own, and only up from the current
value (make them run slower)

Tutorial Komputasi Kerma ITB-BMKG 7


Pengenalan Linux

E. Basic administration commands


setup (as root) Configure mouse, soundcard, keyboard, X-windows, system
services. If you’re using SuSE you can use yast
alias ls=”ls -- Create an alias for the command “ls” to enhance its format with color.
color” In this example, the alias is also called “ls”. Put the alias into the file
/etc/bashrc if you would like the alias to be always accessible to all
users on the system. Type “alias” alone to see the list of aliases on
your system
adduser username Create a new account (you must be root). E.g,
adduser barbara
Don’t forget to set up the password for the new user in the next step.
The user home directory is /home/username
useradd username The same as adduser
userdel username Remove an account (you must be a root). The user’s home directory
and the undelivered mail must be dealt with separately
groupadd Create a new group on your system. Non-essential on a home machine
groupname with a small number of users
passwd Change the password on your current account. If you are root, you can
change the password for any user using:
passwd username
chmod perm (=change mode) Change the file access permission for the files you
filename own (unless you are root in which case you can change any file). You
can make a file accessible in three modes: read (r), write (w), execute
(x) to three classes of users: owner (u), members of the same group as
the owner (g), others on the system (o). Check the current access
permissions using:
ls –l filename
If the file is accessible to all user in all mode it will show:
rwxrwxrwx
The first triplet shows the file permission for the owner of the file, the
second for his/her group, the third for others. A “no” permission is
shown as “-“. E.g., this command will add the permission to read the
file “junk” to all (=user+group+others):
chmod a+r junk
This command will remove the permission to execute the file junk
from others:
chmod o-x junk
You can set the default file permission for the news files that you
create using the command “umask” (see man umask)
chown Change the file owner and group. You should use these two
new_ownername commands after you copy a file for use by somebody else. This to
filename command can simplified into one command using:
chown new_ownername.new_groupname filename
chgrp
new_groupname
filename
su (=substitute user id) Assume the superuser (=root) identity (you will
be prompted for the password). Type “exit” to return you to your
previous login. Don’t habitually work on your machine as root. The
root account is for administration and the su command is to ease your
access to the administration account when you require it.
rpm –ivh (=Red Hat Package Manager) Install a content of RedHat rpm

Tutorial Komputasi Kerma ITB-BMKG 8


Pengenalan Linux

filename.rpm package(s) and print info on what happened.


insmod modname Insert modules into the kernel (a module is roughly an equivalent of a
DOS device driver)
fdisk (as root) Linux hard drive partitioning utility (DOS has a utility with
the same name)
ldconfig (as root) Re-create the bindings and the cache for the loader of
dynamic libraries (“ld”). You may want to run ldconfig after an
installation of new dynamically linked libraries on your system. (It is
also re-run every time you boot the computer, so if you reboot you
don’t have to run it manually)
touch filename Change the date/time stamp of the file filename to the current time.
Create an empty file if does not exist
mknod (=make node, as root) Create a device file.
mknod /dev/fd0 b 2 0
This example shows how to create a device file associated with your
first floopy drive and could be useful if you happened to accidentally
erase it. The options are: b=block mode device (c=character mode
device, p=FIFO device, u=unbuffered character mode device). The
two integers specify the major and the minor device number.
mount –t auto (as root) Mount the CD. You may need to create/modify the
/dev/cdrom /dev/cdrom file depending where your CDROM is. The directory
/mnt/cdrom /mnt/cdrom must exist, be empty and NOT be your current directory
umount Unmount the cdrom. The directory /mnt/cdrom must not be your
/mnt/cdrom current working directory

F. Networking tools
ping Check if you can contact another machine (give the machine’s name
machine_name or IP), press <CTRL>-c when done
route –n Show the routing table
ifconfig (as root) Display info on the network interfaces currently active
(ethernet, ppp, etc). Your first ethernet should show up as eth0, second
as eth1, first ppp over modem ppp0, etc. The “lo” is the “loopback
only” interface which should be always active. Use the options (see
ifconfig –help) to configure the interfaces
ifup Startup the interface. E.g.,:
interface_name ifup eth0

ifdown Shutdown the network interface


interface_name
netstat | more Displays a lot (too much?) information on the status of your network

G. Linux built-in developer tools and programming languages


emacs (in X-terminal) The emacs editor. For gurus only. Yes the “vi” editor
is also available (not recommended for newbies). To exit “vi” press:
<ESC>
:
q!<ENTER>
gcc filename.c GNU C compiler. Quite straight-forward. Good free manuals are
available on the net
g++ filename.C GNU C++ compiler. The capital “C” is normally use for C++ sources
perl Powerful and widely used scripting language. Flexible but with cryptic

Tutorial Komputasi Kerma ITB-BMKG 9


Pengenalan Linux

syntax. Very popular among gurus


python Modern and elegant object oriented interpreter. Seems as powerful and
easier than perl. Very good (and large) free handbooks by G. Van
Rossum are available on the net
g77 GNU FORTRAN compiler
make Run the “make” utility to compile a project described in the Makefile
found in the current directory
diff file1 file2 Compare content of two files and list any differences
grep Search content of text files for matching patterns. Definitely worth to
learn at least the basics of the command. The pattern are specified
using a powerful and standard notation called “regular expressions”
gawk GNU awk (mostly for processing delimited text files)
sed Tool for processing text files

Tutorial Komputasi Kerma ITB-BMKG 10


Dasar-dasar Pemrograman Fortran

Modul II
Dasar-dasar Pemrograman Fortran

Compiling Program

Apabila Anda sudah melakukan editing program, maka langkah selanjutnya adalah tinggal
compiling program dan kemudian melihat hasil output program. Langkah-langkahnya adalah sebagai
berikut :
1. Misalkan nama file yang akan di-compile adalah tes.f dan Anda menghendaki nama file output
program adalah tes, maka perintah yang harus diketikkan adalah:
met601@stratus:~> pgf90 –o tes tes.f
Lalu tekan Enter !
Catatan: compiler Fortran yang dipakai dalam praktikum ini adalah Portland Group Compiler
Fortran 90. Oleh karena itu, untuk melakukan compiling perintah yang digunakan
adalah pgf90

2. Jika tidak ada kesalahan pada program, maka Anda tinggal melihat hasil outputnya dengan
mengetikkan perintah:
met601@stratus:~>./tes

3. Bila ada kesalahan pada program, maka kesalahan tersebut akan ditunjukkan dengan tanda ‘ ^ ’
atau angka di bawah syntax yang salah, editlah program sampai tidak ada kesalahan (jangan
lupa untuk menge-save ulang). Lakukan compiling kembali, sebab Anda telah mengedit dan
menge-save ulang program.
Catatan :
saat menggunakan perintah vi hal-hal dasar yang harus diperhatikan antara lain :
vi namafile.ext : untuk membuat file / program baru dengan ekstensi tertentu
setelah selesai membuat atau melakukan edit program maka simpanlah kembali program
dengan menekan :
<ESC>
:
wq<ENTER>
namun bila edit program yang anda lakukan menurut anda salah dan anda ingin proses edit
yang anda lakukan tidak tersimpan maka cukup tekan :
<ESC>
:
q!<ENTER>

Tutorial Komputasi Kerma ITB-BMKG


Dasar-dasar Pemrograman Fortran

Struktur Kontrol dan Operasi Bilangan Dalam Fortran


1. Tujuan Praktikum
• Mengetahui dan memahami alur program dan operasi bilangan dalam komputasi.
• Membuat program sederhana sesuai dengan struktur program dalam Fortran secara baik dan
benar

2. Pendahuluan
2.1. Struktur Program Fortran
Struktur program dalam Fortran secara garis besar dapat digambarkan sebagai berikut:

PROGRAM NamaProgram [Program utama]


[deklarasi : variabel, konstanta dll] CONTAINS
[isi program] [subprogram:
END PROGRAM NamaProgram
- subroutine
- function]

2.2. Kontrol Alur Program


Pada pemrograman menggunakan bahasa Fortran alur program dapat dikendalikan dengan
beberapa cara menggunakan:
- pernyataan kondisional, (IF … dan IF … THEN … ELSE … END IF)
- perulangan/iterasi, (DO … END DO)
- pilihan berganda, (SELECT CASE)

Kondisional menggunakan IF …
Sintaks sederhana pernyataan IF:
if (logical expression) executable statement
jika pernyataan yang dipakai lebih dari satu sintaks yang digunakan
if (logical expression) then
statements
endif
Contoh:
IF (X < 0.0) Absolute_X = -X

Kondisional IF … THEN … ELSE IF … END IF


Kondisional IF … THEN … ELSE IF … END IF merupakan bentuk pemanjangan dari perintah
kondisional IF … THEN … ELSE … END IF. Bentuk pemanjangan ini berfungsi jika kondisi
pilihan lebih dari dua. Apabila kondisi pilihan hanya dua maka cukup digunakan perintah IF …
THEN … ELSE … END IF. Sintaks umum perintah ini adalah sebagai berikut:
if (logical expression) then
statements
else if (logical expression) then
statements
:
:
Tutorial Komputasi Kerma ITB-BMKG
Dasar-dasar Pemrograman Fortran

else
statements
end if

Perulangan atau Iterasi


Iterasi dalam Fortran dapat dilakukan menggunakan beberapa cara. Perintah yang digunakan
antara lain; DO … END DO, DO … WHILE.

Iterasi DO … END DO
Sintaks umum:
do
statements
if (logical expr) exit
statements
end do

Kondisional dengan SELECT CASE


SELECT CASE dapat digunakan jika ada n kondisi kemungkinan terjadi, yang masing-masing
harus dievaluasi. Sintaks umum:
select case (selector)
case (label-list-1)
statements-1
case (label-list-2)
statements-2
case (label-list-3)
statements-3
………………………
case (label-list-n)
statements-n
case default
statements-default
end select

2.3. Operator Aritmatika dan Relasi


Fortran sangat mendukung operasi pada bilangan, diantaranya adalah operasi aritmatika
(perkalian, pembagian, penambahan dan pengurangan) dan operasi logika (lebih besar, lebih kecil,
sama dengan, tidak sama dengan). Tabel operasi dasar dalam Fortran beserta simbol operasinya.

Tipe Operator Asosiasi


Aritmatika ** kanan - kiri
* / kiri - kanan
+ - kiri - kanan
Relasi < <= > >= == /= tidak ada

Selain itu Fortran juga telah dibekali dengan fungsi intrinsik. Fungsi intrinsik merupakan fungsi
standar yang telah didefinisikan dan disediakan dalam Fortran. Contoh fungsi intrinsik adalah fungsi
trigonometri (sinus, cosinus, tangen dll).

Tutorial Komputasi Kerma ITB-BMKG


Dasar-dasar Pemrograman Fortran

3. Langkah Pengerjaan
a. Hidupkan aplikasi “putty” lakukan ssh ke komputer server. Tulis program sederhana di bawah ini.
Catatan: gunakan editor dalam lingkungan Linux (misal; vi)

PROGRAM TempConversion
IMPLICIT NONE
INTEGER, PARAMETER :: DegF = 82
INTEGER :: DegC, K
DegC = 5*(DegF-32)/9
PRINT*,”Hasil konversi adalah: “, DegC, “C”
K = DegC + 273
PRINT*, “dan”, K, “K”
END PROGRAM TempConversion

c. Simpan hasil tulisan program Anda dengan nama ekstensi *.f90.


d. Kompil (compile) program Anda dengan menggunakan program g95. Cara kompil dapat dilihat
pada “Petunjuk Praktikum” bagian “Compiling Program”
e. Selanjutnya, lakukan modifikasi pada program sehingga masukan nilai awal berasal dari papan kunci
(keyboard). Petunjuk: gunakan perintah READ.

4. Tugas Praktikum
a. Tuliskan arti setiap perintah pada program Fortran yang telah Anda ketik.
b. Lakukan modifikasi program sehingga dapat memfilter nilai masukan. Misalnya program menolak
masukan yang nilainya sangat kecil atau sangat besar. Petunjuk: gunakan kondisional IF.
c. Modifikasi program sehingga dapat menerima nilai masukan secara berulang-ulang dan program
akan berhenti jika menerima masukan tertentu. Petunjuk: gunakan iterasi DO.
d. Modifikasi program sehingga dapat menampilkan menu pilihan. Misal: konversi ke Celcius dan
Kelvin. Petunjuk: gunakan kondisional SELECT CASE.
e. Buat program untuk menghitung nilai akar kuadrat suatu persamaan polinomial orde 2. Bentuk
persamaan kuadrat: ax2 + bx + c = 0

Tutorial Komputasi Kerma ITB-BMKG


Input/output (I/O)

MODUL III
Input/Output (I/O)

1. Tujuan Praktikum
A. Mengetahui dan memanfaatkan Format dalam pemrograman Fortran.
B. Mengetahui dan memahami fungsi input/output (i/o) pada Fortran.
C. Menguasai operasi i/o dengan format biner pada Fortran.

2. Pendahuluan
2.1 Format
Format digunakan untuk mengatur tampilan luaran, yaitu mengatur tipe letak, tipe
panjang dari data yang akan dimasukkan lewat input atau yang akan ditampilkan ke
output. Berikut ini adalah contoh dari statement format:
Format Fungsi
Iw[.m] Untuk nilai integer
Zw Untuk nilai heksadesimal
Fw.d Untuk nilai real
Ew.d Untuk nilai real dengan eksponen
Gw.d Untuk nilai real dengan range extended
Dw.d Untuk nilai real dengan range double
Lw Untuk nilai logika
A[w] Untuk nilai karakter
nX Untuk spasi horizontal
/ Untuk spasi vertikal
Tc,TLc,TRc Untuk tabulasi

Keterangan:
w banyaknya digit yang dibutuhkan
d banyaknya angka di belakang koma
n banyaknya spasi
c posisi tab

2.2 Operasi Input/Output


Sebuah program mungkin memerlukan data yang dibaca dari, misal, sebuah file,
keyboard. Sebuah program mungkin juga perlu menuliskan data ke, misal, layar monitor,
sebuah file.
Perintah I/O:
Perintah Fungsi

BACKSPACE Menempatkan posisipembacaan penulisan ke awal rekaman dari arsip


eksternal yang sedang diproses.
CLOSE Memutuskan hubungan antara arsip eksternal dengan peralatan input/output
yang sedang dihubungkan dengannya.
ENDFILE Menulis “end of file”
OPEN Menghubungkan arsip ke suatu peralatan input/output

Tutorial Komputasi Kerma ITB-BMKG 1


Input/output (I/O)

READ Mentransfer data dari arsip eksternal ke memori utama atau dari suatu
daerah memori utama ke daerah memori utama yang lain.
REWIND Menempatkan posisi ke awal rekaman pertama dari arsip eksternal yang
sedang diproses.
WRITE Mentransfer data dari array (memori utama) ke arsip eksternal atau dari
arsip internal ke arsip eksternal atau dari memori utama ke daerah memori
utama yang lain.
PRINT Mentranfer data dari memori utama ke ”eksternal device”

Sintaks:
READ(unit, format) input
WRITE(unit, format)output
Keterangan:
- unit menentukan dari/ke device mana input/output dibaca/ditulis; contoh device:
keyboard, monitor, file, printer dll.
- format menentukan format data yang dibaca/ditulis.
- input harus variabel, sedangkan output bisa variabel atau ekspresi karakter.
Contoh:
1. Terminal
READ(*, format) input

WRITE(*, format) output
Keterangan: unit = *; membaca dari keyboard / menulis ke monitor
2. Internal file
CHARACTER(10) :: buffer

READ(buffer, format) input

WRITE(buffer, format) output
Keterangan: unit = buffer (variabel character); membaca /
menulis dari / ke buffer sebagai file internal
3. Eksternal file
OPEN(unit,argument)

READ(unit, format) input

WRITE(unit, format) output

CLOSE(unit)
Keterangan: OPEN file eksternal, beri nomor unit; membaca /
menulis dari / ke unit dengan nomor unit (file eksternal); argument
berisi antara lain FILE (nama file), STATUS (‘OLD, NEW,

Tutorial Komputasi Kerma ITB-BMKG 2


Input/output (I/O)

REPLACE’), FORM (‘FORMATTED, UNFORMATTED’),


ACCESS (‘DIRECT, SEQUENTIAL’), ACTION (‘READ,
WRITE, READWRITE’); CLOSE file eksternal.

3. Langkah Pengerjaan
a. Hidupkan aplikasi “X-Win32” dan dengan “putty” lakukan ssh ke
komputer server. Keterangan lebih lanjut baca pada bagian “Petunjuk
Praktikum”.
b. Tulis program sederhana di bawah ini.

PROGRAM TempConversion
IMPLICIT NONE
REAL, DIMENSION(:), ALLOCATABLE :: DegF, DegC, K
INTEGER :: n, i
CHARACTER(LEN=254) :: FMT1, FMT2, FMT3
LOGICAL :: fileexist
NAMELIST /input/ n
NAMELIST /formatout/ FMT1, FMT2, FMT3
INQUIRE(FILE='namelist.input',EXIST=fileexist)
IF (fileexist) THEN
OPEN(10,FILE='namelist.input',FORM='FORMATTED')
ELSE
WRITE(*,*)'FILE NOT FOUND'
STOP
END IF
OPEN(20,FILE='data.txt',FORM='FORMATTED',STATUS='OLD')
OPEN(30,FILE='tabel.txt',FORM='FORMATTED', &
& STATUS='UNKNOWN')
READ(10,NML=input)
READ(10,NML=formatout)
OPEN(40,FILE='output.bin',FORM='UNFORMATTED', &
& ACCESS='DIRECT',STATUS='UNKNOWN',RECL=4*n)
ALLOCATE(DegF(n), DegC(n), K(n))
READ(20,*)(DegF(i),i=1,n) !IMPLIED DO
DO i=1,n
DegC(i) = 5*(DegF(i)-32)/9
END DO
K = DegC + 273
WRITE(*,FMT1) "Hasil konversi adalah: ", "Fahrenheit", "Celcius", "Kelvin"
WRITE(*,FMT2) "==========" , "=======", "======"
WRITE(*,FMT3)(DegF(i),DegC(i),K(i),i=1,n)
WRITE(30,FMT1) "Hasil konversi adalah: ", "Fahrenheit", "Celcius", "Kelvin"
WRITE(30,FMT2) "==========" , "=======", "======"
WRITE(30,FMT3)(DegF(i),DegC(i),K(i),i=1,n)
WRITE(40,REC=1)DegC
DEALLOCATE(DegF, DegC, K)
END PROGRAM TempConversion

Tutorial Komputasi Kerma ITB-BMKG 3


Input/output (I/O)

c. Modifikasi program untuk menerima masukan data REAL berformat, dan cek
apakah file data.txt dapat sukses dibuka.

4. Tugas Praktikum
a. Buatlah tabel konversi temperatur dengan format semenarik mungkin.
b. Buatlah program untuk membaca data sounding yang diberikan dalam file brunei.snd.
c. Buatlah program perkalian dua matrik, simpan hasilnya dalam bentuk binari.

Tutorial Komputasi Kerma ITB-BMKG 4


Input/output (I/O)

program memformat_1

write(*,*)'Format ke 1 :'
write(*,'(A)')'selamat datang di modul 3'
write(*,*)
write(*,*)'Format ke 2 :'
write(*,'(1X,A)')'selamat datang di modul 3'
write(*,*)
write(*,*)'Format ke 3 :'
write(*,'(/,1X,A10)')'selamat datang di modul 3'
write(*,*)

stop
end

program memformat_2
! Integer
write(*,*)'Format ke 1 :'
write(*,*)’Masukkan 3 angka integer (pisahkan dengan spasi)’
read(*,*)i,j,k
10 format (3I5) !penulisan format
write(*,'(/,A)')'Output dengan format: '
write(*,’(3I5)’)i,j,k
write(*,'(/,A)')'Output tanpa format: '
write(*,*)i,j,k

! Real
write(*,*)
write(*,*)'Format ke 2 :'
write(*,*)’Masukkan 3 angka real (pisahkan dengan spasi)’
read(*,*)a,b,c
10 format (3F5.2) !penulisan format
write(*,'(/,A,\)')'Output dengan format: '

Tutorial Komputasi Kerma ITB-BMKG 5


Input/output (I/O)

write(*,10)a,b,c
write(*,'(/,A,\)')'Output tanpa format: '
write(*,*)a,b,c

! Character
write(*,*)
write(*,*)'Format ke 3 :'
write(*,'(A,\)')'Komputasi'
write(*,*)'Komputasi'
write(*,*)

stop
end

Tutorial Komputasi Kerma ITB-BMKG 6


GrADS I/O dan Scripting

MODUL IX
GrADS I/O DAN SCRIPTING

1. Tujuan Praktikum
• Memahami struktur dan cara penulisan script GrADS
• Memahami cara memanfaatkan script untuk operasi input dan output dalam GrADS

2. Pendahuluan
2.1. GrADS Script
Script memfasilitasi pengguna untuk memprogram operasi-poperasi dalam GrADS.
Walapun cukup mudah untuk menghasilkan analisa atau grafik dengan GrADS tanpa harus
menulis sebuah script, dalam beberapa kasus menggunakan script akan sangat
memudahkan pekerjaan anda.
Sebuah script dijalankan dengan perintah:
run filename <arguments>
Perintah di atas akan menjalankan script dengan nama filename, yang biasanya berekstensi
“.gs”. Sementara arguments bersifat opsional (boleh ada boleh tidak), tergantung script
yang anda tulis, apakah membutuhkan masukan dari luar atau tidak. Opsi argument akan
diteruskan ke dalam script sebagai variabel string. Anda dapat menjalankan semua
perintah GrADS di dalam script, termasuk perintah run untuk memanggil script yang lain.
Secara garis besar, sebuah script berisi baris-baris perintah berikut:
• comment
• statement
• assignment
• say / prompt / pull
• if / else / endif
• while / endwhile
• function header / return
Baris comment selalu dimulai dengan tanda asterisk (*) di kolom pertamanya. Baris
comment tidak akan dieksekusi oleh GrADS. Baris statement adalah semua perintah
GrADS, dituliskan dalam script berbentuk string yang diapit oleh tanda petik, contoh:
‘open u.ctl’
‘set lat -15 15’
‘set lon 90 150’
‘d u’
Baris assignment digunakan untuk mendefinisikan sebuah variabel dan nilainya.
Contoh:
jdl=‘Angin Meridional’
minlat=-15
maxlat=15
‘set lat ‘minlat’ ‘maxlat
‘d u’
‘draw title ‘jdl
Nama variabel dalam GrADS terdiri atas 1-8 karakter, diawali dengan alfabet dan hanya
boleh mengandung huruf atau angka. Nama variabel case sensitive (yang berarti variabel
jdl dan Jdl adalah dua variabel yang berbeda).
GrADS juga menyediakan fasilitas array sederhana dalam script, menggunakan
variabel gabungan. Sebuah variabel gabungan terdiri atas nama variabel dengan bagian-
bagian dipisahkan oleh titik. Contohnya:

Tutorial Komputasi Kerma ITB-BMKG 1


GrADS I/O dan Scripting

i=1
j=5
var.i.j=100
atau dapat juga ditulis:
var.1.5=100
Baris perintah say/prompt digunakan untuk menampilkan informasi atau pertanyaan
ke jendela terminal GrADS.
say expression
prompt expression
akan menampilkan expression di layar terminal. Perintah prompt sedikit berbeda karena
akan menunggu pengguna menekan tombol enter.
Untuk memperoleh informasi dari pengguna lewat terminal, digunakan perintah:
pull variabel
Script akan menunggu pengguna memasukkan input melalui keyboard (diakhiri dengan
menekan tombol enter). Sebagai contoh:
'open u.ctl'
prompt 'Enter min and max latitudes: '
pull minlat maxlat
prompt 'Enter min and max longitudes: '
pull minlon maxlon
'set lat 'minlat' 'maxlat
'set lon 'minlon' 'maxlon
'd u'
Untuk mengatur alur program, dapat digunakan pengkondisian if/else/endif atau
pengulangan while/endwhile. Format dalam script sebagai berikut:
if expression
script record
script record
.
.
else
script record
.
.
endif
Sebagai catatan, dalam script GrADS tidak ditemukan elseif, sehingga jika diperlukan
ekspresi elseif anda harus menggunakan nested if (if bersarang).
Sementara format pengulangan sebagai berikut:
while expression
script record
script record
.
.
endwhile
Sebagai contoh:
ti= 1
while (ti < 10)
'set t 'ti
'd u'
ti = ti + 1
endwhile
Dua perintah tambahan untuk pengulangan adalah break dan continue. Baris perintah
break akan segera menghentikan loop dan eksekusi dilanjutkan pada baris di bawah
endwhile. Sementara perintah continue menghentikan loop yang sedang dijalankan dan
kembali melanjutkan pengulangan.

Tutorial Komputasi Kerma ITB-BMKG 2


GrADS I/O dan Scripting

Fungsi-fungsi intrinsik dalam GrADS


GrADS juga menyediakan beberapa fungsi internal yang dapat dimanfaatkan dalam
penulisan script:
sublin(string,n) – mengambil string baris ke-n
subwrd(string,n) – mengambil kata ke-n dari sebuah string
substr(string,start,length)
mengambil karakter, dimulai dari
karakter di posisi start hingga posisi yang
ditentukan oleh length
Fungsi lainnya berhubungan dengan input dan output data dalam GrADS:
read(filename)
write(filename,record<,append>)
close(name)
Fungsi read akan membaca record data perbaris. Sehingga untuk membaca keseluruhan
baris data, harus digunakan loop. Keluaran fungsi read terdiri atas dua baris, baris pertama
adalah kode (0 atau 1) dan baris kedua adalah record yang dibaca.

2.2. Input
Dalam script GrADS, selain input standar dari keyboard (dengan perintah pull),
anda juga dapat memperoleh input dari suatu file teks standar, dengan memanfaatkan
fungsi read. Sebagai contoh, anda memiliki file teks yang berisi nama stasiun berikut
posisi lintang bujurnya, misal:
Iswahyudi_Madiun -7.62 111.52
Surabaya_AURI -7.22 112.72
.....
sebanyak 40 baris. Contoh script dibawah ini akan membaca file di atas dan menggunakan
posisi lintang dan bujur masing-masing stasiun sebagai inputan untuk memperoleh data
time series angin meridional dari file uwnd.2008.nc.
stafile='note_stasiun.txt'
'sdfopen uwnd.2008.nc'
'set t 1 31'
ista=1
while (ista <= 40)
sta=read(stafile)
stanam=subwrd(sta,2)
stalat=subwrd(sta,3)
stalon=subwrd(sta,4)
'interp2d 'stalat' 'stalon' uwnd intpwnd'
'set gxout fwrite'
'set fwrite uwnd_'stanam '.dat'
'd intpwnd'
'undefine intpwnd'
'disable fwrite'
ista = ista + 1
endwhile
'quit'

2.2. Output

GrADS menyediakan beberapa perintah untuk mengatur ouputnya. Perintah yang


paling sederhana adalah printim yang digunakan untuk menyimpan apapun yang
ditampilkan dalam jendela display ke dalam sebuah file gambar berformat GIF atau PNG.
Sintaksnya:
printim filename options
option : gif – menghasilkan gambar format gif (default png)

Tutorial Komputasi Kerma ITB-BMKG 3


GrADS I/O dan Scripting

black – menggunakan latar hitam


white – menggunakan latar putih
xNNN – ukuran horizontal dengan NNN dalam pixl
yNNN – ukuran vertikal dengan NNN dalam pixel
salah satu atau semua option dapat digunakan dengan urutan diabaikan.
Sedangkan untuk menyimpan data numerik, anda dapat menggunakan perintah
fwrite atau print. Perintah fwrite akan menyimpan data dengan format binari stream
atau sequential. Sintaksnya:
set gxout fwrite
set fwrite fname <-be|-le> <-sq|-st>
disable fwrite
Bagian <-be|-le> <-sq|-st> opsional, menjelaskan bagaimana GrADS menulis data
binary (big endian/little endian) dan (sequential/stream). Defaultnya adalah litle endian dan
stream.
Sementara perintah untuk menyimpan data dalam format ASCII, dapat
dimanfaatkan perintah set gxout print. Pada dasarnya perintah tersebut hanya
menampilkan data ke layar, tapi dengan memanfaatkan script dan dikombinasikan dengan
fungsi write, anda dapat menggunakannya untuk menyimpan data dalam format ASCII.
Sebagai contoh:
fout='uwnd_ascii.txt'
'sdfopen uwnd.2008.nc'
'set x 1 145'
'set gxout print'
'set prnopts %10.5f 145 1 u'
j = 1
while (j <= 73)
'set y 'j
'd uwnd'
dat=sublin(result,2)
write (fout,dat,append)
j = j + 1
endwhile
close(fout)
Script di atas akan menulis data angin meridional dari file uwnd.2008.nc ke dalam
file uwnd.ascii.txt, baris perbaris, dengan format ASCII.

Tutorial Komputasi Kerma ITB-BMKG 4


Fungsi dan Subroutine

MODUL V
Fungsi dan Subroutine

1. Tujuan Praktikum
• Mengetahui dan memahami cara kerja function dan subroutine
• Memanfaatkan fasilitas function dan subroutine dalam pemrograman

2. Pendahuluan
2.1. Function
Selain fungsi intrinsik seperti disinggung pada Modul I, Fortran juga memberikan
keleluasaan pada programer untuk mendefinisikan fungsinya sendiri. Fungsi (function)
Fortran mirip dengan fungsi dalam matematika. Fungsi ini memiliki (beberapa) masukan
dan juga mempunyai nilai luaran atau biasa disebut return value. Struktur pembuatan
fungsi mengikuti sintaks sebagai berikut:
type FUNCTION function-name (arg1, arg2, ..., argn)
IMPLICIT NONE
[specification part]
[execution part]
[subprogram part]
END FUNCTION function-name
“[specification part]” merupakan bagian pendeklarasian variabel yang diperlukan.
”[execution part]” adalah isi dari fungsi dan ” [subprogram part]” adalah bagian tambahan
bila masih diperlukan. Jika tidak ada masukan yang digunakan maka bentuk struktur
fungsi dapat dituliskan sebagai berikut:
type FUNCTION function-name ()
Contoh sederhana di bawah ini merupakan fungsi untuk menjumlahkan tiga masukan
(a,b,c):
INTEGER FUNCTION Sum(a,b,c)
IMPLICIT NONE
INTEGER, INTENT(IN) :: a, b, c
Sum = a + b + c
END FUNCTION Sum
Cara pemanggilan function adalah dengan menyebutkan nama fungsi dan
argumennya.
Contoh :
N=<nama fungsi>(argument)

2.2. Subroutine
Subroutine merupakan unit yang mempunyai isi sendiri yang menerima masukan
dari luar melalui argumen, melakukan perhitungan dan kemudian mengembalikan hasilnya
pada program utama. Berbeda dengan fungsi, pemberian nama subroutine hanya berfungsi
sebagai identifikasi saja dan tidak dapat digunakan dalam perhitungan. Subroutine hanya
dapat digunakan setelah dipanggil dengan menggunakan perintah CALL. Subroutine

Tutorial Komputasi Kerma ITB-BMKG 1


Fungsi dan Subroutine

mempunyai tiga bentuk sintaks, yaitu; (a) menggunakan argumen, (b) argumen kosong dan
(c) tanpa argumen sama sekali. Contoh sintaks yang menggunakan argumen:
SUBROUTINE subroutine-name (arg1, arg2, …… argn)
IMPLICIT NONE
[specification part]
[execution part]
[subprogram part]
END SUBROUTINE subroutine-name

Beberapa ketentuan dalam SUBROUTINE adalah :


• Subroutine merupakan unit program tersendiri yang diawali dengan statement
subroutine dan diakhiri dengan statement end, serta dipergunakan oleh unit
program lain dalam bentuk CALL.
PROGRAM UTAMA
...
CALL A(X,Y)
...
END
SUBROUTINE A(X,Y)
... ARGUMEN
... NAMA SUBROUTINE
...
END
• Subroutine dapat berisi berbagai statement kecuali statement PROGRAM,
SUBROUTINE yang lainnya atau FUNCTION.
• Argumen yang sebenarnya di statement CALL harus sesuai urutannya ,
jumlahnya dan tipenya dengan dummy argumen yang tampak di
SUBROUTINE. Sedangkan nama argumen boleh sama boleh tidak.
• Didalam SUBROUTINE dapat memanggil SUBROUTINE lainnya.
• SUBROUTINE dapat tidak mengandung dummy argument, yang berarti tidak
ada yang dikirim ke subroutine dan tidak ada hasil yang dikirim ke pemanggil
subroutine

3. Langkah Pengerjaan
a. Hidupkan aplikasi “X-Win32” dan dengan “putty” lakukan ssh ke komputer server.
Keterangan lebih lanjut baca pada bagian “Petunjuk Praktikum”.
b. Tulis program sederhana di bawah ini. Compile lalu jalankan.

Program konversi_derajat_celcius
c pendeklarasian variabel
real C
c pemasukan nilai
write(*,*)'Masukkan nilai derajat celcius yang ingin dikonversi:'
read(*,*)C

c Fungsi Statement
FAH(C)=1.8*C+32

Tutorial Komputasi Kerma ITB-BMKG 2


Fungsi dan Subroutine

Write(*,*)’------------------------------‘
Write(*,*)’Celcius Fahrenheit’
Write(*,*)’------------------------------‘
5 WRITE(*,’(1X,f7.2,4X,F10.2)C,FAH(C)
C=C+1
Goto 5

Write(*,*)’-----------------------------’
End

Program hitung-hitungan
c pendeklarasian variabel
real a,b,c,z
c pemasukan nilai
write(*,*)'Masukkan nilai a:'
read(*,*)a
write(*,*)'Masukkan nilai b:'
read(*,*)b
write(*,*)'Masukkan nilai c :'
read(*,*)c

c proses menghitung
z=F(a)-F(b)+F(c)
write(*,*)'Luas daerah =',z
end

c fungsi
real function F(x)
F=100/(x)
end

Program Menghitung
c Penentuan cara
write(*,*)'Tentukan cara yang akan Anda pilih'
write(*,*)'Tekan 1 untuk penambahan'
write(*,*)'Tekan 2 untuk pengurangan'

c Pemilihan subroutine
read(*,*)A
if(A.eq.1) then
call Tambah(a,b,c)
else if(A.eq.2) then
call Kurang(a,b,c)
else
write(*,*)'Tekan angka yang tepat'
end if
stop
Tutorial Komputasi Kerma ITB-BMKG 3
Fungsi dan Subroutine

return

c list subroutine
SUBROUTINE Tambah(a,b,c)
integer a,b,c
write(*,*)
write(*,*)'Anda akan melakukan operasi penambahan'
write (*,*)'Masukkan nilai a'
read (*,*)a
write (*,*)'Masukkan nilai b'
read (*,*)b
c=a+b
write(*,*)
write(*,*)'hasil jumlah =',c
stop
end

SUBROUTINE Kurang(a,b,c)
integer a,b,c
write(*,*)
write(*,*)'Anda akan melakukan operasi pengurangan'
write (*,*)'Masukkan nilai a'
read (*,*)a
write (*,*)'Masukkan nilai b'
read (*,*)b
c=a-b
write(*,*)
write(*,*)'hasil kurang =',c
stop
end

c. Copy program konversisuhu.f90 dan circ.f90 dari direktori src. Compile dan jalankan
kedua program tersebut.
d. Modifikasi program konversisuhu agar bisa menghitung konversi semua satuan suhu
(Celcius, Kelvin, Fahrenheit, Reamur). Petunjuk : tambahkan function dan case-nya.
e. Tambahkan subroutine untuk menghitung luas permukaan bola dan volume bola dari
nilai radius pada program circ.

Tutorial Komputasi Kerma ITB-BMKG 4


Module dan Makefile

MODUL VI
Module dan Makefile

1. Tujuan Praktikum
• Mengetahui dan memahami cara kerja module
• Memanfaatkan fasilitas Makefile dalam meng-compile program

2. Pendahuluan
2.1. Module
Program Fortran yang rumit biasanya mempunyai fungsi yang lebih dari satu.
Fungsi-fungsi tersebut dapat dituliskan kedalam satu subprogram. Kumpulan fungsi yang
telah disatukan tersebut disebut Module. Module dapat juga diisi dengan subroutine.
Struktur module mirip dengan struktur program, bedanya dalam module tidak ada bagian
eksekusi sehingga module tidak dapat berdiri sendiri. Sintaks struktur module adalah:
MODULE modulename
IMPLICIT NONE
[specification part]
CONTAINS
[internalfunctions]
END MODULE modulename
”[internalfunctions]” adalah kumpulan fungsi yang kita buat. Module dapat
digunakan dalam sebuah program setelah menambahkan perintah USE pada kepala
(header) program.

2.2. Makefile
Makefile adalah suatu file yang digunakan oleh program GNU-Make untuk
menentukan program-program yang akan dicompile. Sebuah makefile terdiri dari bagian
target, dependencies dan rules. Dependecies berisikan hal-hal atau kode sumber yang
diperlukan untuk membuat sebuah target, target ini biasanya berupa sebuah file executable.
Sementara rules mendefinisikan perintah-perintah yang digunakan untuk membuat target
tersebut.
Berikut ini adalah bagan sederhana sebuah makefile :
target: dependencies
[tab] command
[tab] command
....

Sebagai contoh aplikasi dari sintaks ini :

all :
pgf90 –o filename filename.f90

Pada contoh ini dapat kita lihat bahwa target adalah all. Ini adalah target default dari
makefile. Make akan mengeksekusi target jika tidak ada target lain yang ditentukan. Dapat
dilihat pula bahwa tidak ada dependensi untuk target all sehingga make dapat
mengeksekusi command dengan aman.
Menggunakan dependencies

Tutorial Komputasi Kerma ITB-BMKG 1


Module dan Makefile

Kita dapat melakukan pengaturan dependencies apabila kita ingin melakukan modifikasi
terhadap sebuah file, namun tidak ingin melakukan recompile terhadap seluruh file yang
ada. Sebagai contoh :

all: hello
hello: main.o hello.o
pgf90 main.o hello.o –o hello

main.o: main.f90
pgf90 –c main.f90

hello.o: hello.f90
pgf90 –c hello.f90

clean:
rm –rf *o hello

Dapat dilihat bahwa target all hanya memiliki dependencies tanpa command. Make dapat
mengeksekusi secara tepat ketika seluruh dependencies dari target terpenuhi. Tiap
dependencies dipanggil dan dieksekusi apabila ditemukan. Pada contoh diatas terdapat
target clean yang berfungsi untuk menghapus seluruh file object dan executable.

3. Langkah Pengerjaan
a. Hidupkan aplikasi “X-Win32” dan dengan “putty” lakukan ssh ke komputer server.
Keterangan lebih lanjut baca pada bagian “Petunjuk Praktikum”.
b. Copy direktori /work1/tutkom/src/external dan /work1/tutkom/src/taqm ke home
direktori anda masing-masing
c. Compile dan jalankan program circ.exe dan tempconv.exe
d. Compile program TAQM.
e. Buatlah sebuah program yang menggunakan subroutine, function dan module eksternal.
Buat juga makefile untuk meng-compile program tersebut.

Tutorial Komputasi Kerma ITB-BMKG 2


Pengenalan GrADS

MODUL VII
Pengenalan GrADS

1. Tujuan Praktikum
• Mengetahui dan memahami dasar-dasar pengoperasian GrADS
• Memahami struktur dan cara penulisan GrADS control file (ctl)
• Memahami struktur data binari GrADS

2. Pendahuluan
2.1. Konsep Dasar Pengoperasian GrADS
Perintah-perintah GrADS dituliskan di sebuah terminal dengan keluaran berupa
gambar ditampilkan di jendela grafik dan keluaran berupa teks ditampilkan di jendela
terminal. Ada tiga perintah dasar GrADS:
1. open berfungsi untuk membuka data
2. d merupakan perintah untuk menampilkan suatu “ekspresi” GrADS
3. set untuk memanipulasi “apa” “dimana” dan “bagaimana” data
ditampilkan
Yang dimaksud dengan suatu “ekspresi” adalah apa yang ingin anda tampilkan,
dapat berupa suatu variabel dalam data yang dibuka, misalnya d u atau hasil operasi
fungsi intrisik GrADS, misalnya d mag(u,v) (untuk menampilkan magnitude dari vektor
angin).
Perintah set digunakan untuk mengatur data yang ditampilkan (dimensi data, jenis
plot – contour, shaded, dll).
set lon lon1 lon2
set lat lat1 lat2
set t n
set gxout contour
Satu lagi perintah dasar GrADS adalah q atau query yang digunakan untuk
memperoleh informasi dari GrADS seperti file apa saja yang dibuka, variabel-variabel
yang ada dalam data, dll. Beberapa perintah q yang sering digunakan:
q file
q dim

2.2. GrADS Control File (ctl)


Dalam GrADS, data binari dan meta data (informasi mengenai data binari tsb)
disimpan dalam file terpisah. File meta data berisikan deskripsi menyeluruh mengenai data
binari beserta instruksi dimana data tersebut berada dan bagaimana membacanya. File
meta data ini disebut data descriptor file atau control file dengan ekstensi .ctl. File inilah
yang anda buka melalui GrADS dengan perintah open nama_file.ctl
File ctl adalah file ASCII biasa yang dapat ditulis menggunakan editor teks apapun.
Pada umumnya suatu file ctl standar berisi:
• Nama file data binari
• Nilai yang menunjukkan data kosong atau tidak terdefinisi
• Mapping koordinat grid
• Deskripsi variabel(-variabel) dalam data binari
Berikut ini contoh isi file ctl.

Tutorial Komputasi Kerma ITB-BMKG 1


Pengenalan GrADS

DSET ^gridded_data_sample.dat
TITLE Gridded Data Sample
UNDEF -9.99E33
XDEF 180 LINEAR 0.0 2.0
YDEF 90 LINEAR -90 2.0
ZDEF 10 LEVELS 1000 850 700 500 400 300 250 200 150 100
TDEF 4 LINEAR 0Z10apr1991 12hr
VARS 4
slp 0 99 sea level pressure
hgt 10 99 heights
temp 10 99 temperature
shum 6 99 specific humidity
ENDVARS

Penjelasan masing-masing baris pada contoh di atas sebagai berikut:


- DSET ^gridded_data_sample.dat
Baris ini menunjukkan nama file binari yang dibuka, dalam hal ini adalah
gridded_data_sample.dat yang berada di direktori yang sama dengan file ctl
(ditunjukkan oleh tanda ^ di depan nama file).
- TITLE Gridded Data Sample
Baris ini mendeskripsikan data yang dibuka, sangat disarankan untuk menuliskan
TITLE yang representatif untuk menghindari kesulitan di kemudian hari.
- UNDEF -9.99E33
Baris ini menunjukkan data kosong atau data yang tidak tersedia
- XDEF 180 LINEAR 0.0 2.0
YDEF 90 LINEAR -90 2.0
Dua baris tersebut mendeskripsikan dimensi horizontal data, dalam hal ini terdapat
180 grid data dalam arah X (longitude) dimulai dari bujur 0 ke arah timur dengan
ukuran grid 2o serta 90 grid dalam arah Y (latitude) dimulai dari 90 LS ke arah
utara dengan ukuran grid juga 2o.
- ZDEF 10 LEVELS 1000 850 700 500 400 300 250 200 150 100
Baris ini mendefinisikan dimensi data dalam arah vertikal, dalam hal ini terdapat
10 level vertikal dari 1000 mb (di permukaan) hingga ketinggian 100 mb.
- TDEF 4 LINEAR 0Z10apr1991 12hr
Baris ini mendeskripsikan dimensi waktu, dalam hal ini terdapat 4 langkah waktu
dimulai pada t=1 pkl. 00 tgl 10 April 1991 dengan ∆t 12 jam.
- VARS 4
slp 0 99 sea level pressure
hgt 10 99 heights
temp 10 99 temperature
shum 6 99 specific humidity
ENDVARS
Segmen baris di atas mendeskripsikan variabel-variabel dalam data binari, segmen
dibuka dengan baris VARS dan ditutup dengan baris ENDVARS. Deskripsi variabel
terdiri atas 4 kolom: kolom pertama menunjukkan nama-nama variabel (slp,
hgt, temp, shum dalam contoh di atas). Kolom kedua menjelaskan berapa level
vertikal masing-masing variabel. Dalam contoh di atas variabel slp adalah variabel
permukaan, sehingga tidak memiliki level vertikal, secara default di asosiasikan
dengan z=1. Kolom ketiga adalah id data (tidak dibahas lebih lanjut) dan kolom ke
empat adalah keterangan masing-masing variabel.

Tutorial Komputasi Kerma ITB-BMKG 2


Pengenalan GrADS

2.3. Struktur Data Binari


File ctl GrADS mendeskripsikan dimensi-dimensi grid data binari, akan tetapi
tergantung pengguna untuk memastikan data binari tersebut telah ditulis dengan urutan
yang tepat sehingga GrADS dapat mengintrepetasikan data tersebut dengan benar.
GrADS membaca data grid sebagai data grid horizontal (bervariasi dalam arah X dan
Y) yang ditulis dalam urutan level vertikal (dari permukaan ke atas), variabel, dan
kemudian waktu.
Sebagai contoh, misalkan anda ingin membuat data binari 4-D (X,Y,Z,T) yang
terdiri atas 4 variabel. Maka grid horizontal (X,Y) masing-masing variabel harus ditulis
dengan urutan sebagai berikut:
T 1, Variabel 1(X,Y), Semua level vertikal dari bawah ke atas
T 1, Variabel 2(X,Y), Semua level vertikal dari bawah ke atas
T 1, Variabel 3(X,Y), Semua level vertikal dari bawah ke atas
T 1, Variabel 4(X,Y), Semua level vertikal dari bawah ke atas

T 2, Variabel 1(X,Y), Semua level vertikal dari bawah ke atas


T 2, Variabel 2(X,Y), Semua level vertikal dari bawah ke atas
T 2, Variabel 3(X,Y), Semua level vertikal dari bawah ke atas
T 2, Variabel 4(X,Y), Semua level vertikal dari bawah ke atas

dst.

3. Langkah Pengerjaan
a. Hidupkan aplikasi “X-Win32” dan dengan “putty” lakukan ssh ke komputer server.
b. Copy file u.dat dan v.dat dari direktori /work1/tutkom/src ke home direktori anda
masing-masing
c. Tulis ulang script program berikut ini, gunakan editor teks standar (misalnya vi),
compile dan jalankan.
program dump_data_grads
parameter (ni=25,nj=13,nk=17,nt=31)
dimension u(ni,nj,nk,nt),v(ni,nj,nk,nt),dum(ni,nj)
open(10,file='u.dat',form='unformatted',&
& access='direct',recl=ni*nj*4)
open(20,file='v.dat',form='unformatted',&
& access='direct',recl=ni*nj*4)
open(30,file='uv.dat',form='unformatted',&
& access='direct',recl=ni*nj*4)
do n=1,nt
do k=1,nk
read(10)dum
u(:,:,k,n)=dum
read(20)dum
v(:,:,k,n)=dum
enddo
enddo
do n=1,nt
do k=1,nk
write(30)u(:,:,k,n)
enddo
do k=1,nk
write(30)v(:,:,k,n)
enddo
enddo
stop
end

Tutorial Komputasi Kerma ITB-BMKG 3


Pengenalan GrADS

Script di atas adalah program sederhana untuk membaca variabel 4-D u dan v dari
file binari u.dat dan v.dat dengan struktur data sebagai berikut:
File u.dat:
t 1, u (x,y), semua level vertikal dari bawah ke atas
t 2, u (x,y), semua level vertikal dari bawah ke atas
…… dst
File v.dat:
t 1, v (x,y), semua level vertikal dari bawah ke atas
t 2, v (x,y), semua level vertikal dari bawah ke atas
…… dst
untuk kemudian ditulis ulang ke dalam file uv.dat dengan struktur data yang
diterima GrADS seperti yang telah dijelaskan di atas.
d. Tulis ulang file ctl di bawah ini:
DSET ^uv.dat
TITLE uv wind data
UNDEF -9.99E33
XDEF 25 LINEAR 90 2.5
YDEF 13 LINEAR -15 2.5
ZDEF 17 LEVELS 1000 925 850 700 600 500 400 300 250 200 150
100 70 50 30 20 10
TDEF 31 LINEAR 0Z1jan2008 24hr
VARS 2
u 17 99 u wind
v 17 99 v wind
ENDVARS

e. Buat symbolic link untuk file uwnd.2008.nc dan vwnd.2008.nc yang ada di direktori
/work1/model/data (gunakan perintah ln –s file_sumber nama _link)
f. Buka file ctl yang telah anda buat sebelumnya, plot vektor angin di ketinggian dan
waktu sembarang, bandingkan dengan vektor angin pada ketinggian dan waktu yang
sama dari data uwnd.2008.nc dan vwnd.2008.nc. (gunakan perintah sdfopen
nama_file.nc untuk membuka file berekstensi .nc)

Tutorial Komputasi Kerma ITB-BMKG 4


Setting Display Dalam GrADS

MODUL VIII
Setting Display Dalam GrADS

1. Tujuan Praktikum
• Mengetahui dan memahami dasar-dasar pengaturan display dalam GrADS

2. Pendahuluan
2.1. Tipe Graphic
Pengaturan tipe graphic dilakukan dengan perintah set gxout graphic_type
dengan graphic_type adalah salah satu dari:
bar diagram batang
barb wind barb
contour kontur
errbar error bar
grfill kotak grid berwarna
fgrid kotak grid berwarna dengan nilai yg ditentukan oleh perintah
set fgvals nilai warna nilai warna ....
fwrite menulis data ke file
grid kotak grid dengan nilai
line grafik garis
linefill warna di antara dua garis
print membuat keluaran ascii, diatur dengan perintah
set prnopts format numl numb <u>
format : format C untuk ascii (e.g %10.3e)
numl : jumlah nilai yang ditulis per baris
numb : jumlah spasi antar nilai
<u> : menulis “undef”, bukan nilai yg didefinisikan dari
baris UNDEF di ctl
scatter scatter plot
shaded shaded kontur
stream streamline
stat menampilkan statistik keluaran
vector vektor angin

2.2. Pengaturan Graphic


Beberapa perintah untuk melakukan pengaturan sepesifik:
set cthick nilai mengatur ketebalan garis kontur sebesar nilai
set cstyle style mengatur garis kontur (1 – 7)
set cint nilai interval kontur sebesar nilai
set cmin nilai di bawah nilai tidak di gambar
set cmax nilai di atas nilai tidak di gambar
set arrscl size mag mengatur panah vektor angin
set arrowhead size ukuran kepala panah
set clab option mengatur label kontur (on, off, forced, format)

Tutorial Komputasi Kerma ITB-BMKG 1


Setting Display Dalam GrADS

2.2. Element Graphic


Beberapa perintah untuk menggambar elemen-elemen dasar graphic
draw map menggambar map sesuai dimensi yg telah di set
draw xlab string menulis string di sumbu x
draw ylab string menulis string di sumbu y
draw string x y string menulis string di posisi x y dalam inci
draw line x1 y1 x2 y2 menggambar garis
draw rec xlo ylo xhi yhi menggambar kotak
draw recf xlo ylo xhi yhi menggambar kotak berisi warna
draw mark type x y size type : 1-5
draw polyf x1 y1 x2 y2 x3 y3 ... xn yn
draw wxsym symbol x y size <color<thickness>> jalankan wxsym.gs
untuk melihat symbol yg tersedia (perintah run wxsym.gs)

Beberapa perintah untuk pengaturan spesifik:


set font number
set line color# <style(1-7)> <thickness>
set string color# <justification <thickness <rotation>>>
dengan justification terhadap posisi x dan y string:
tr tc tr tl - top left

+-------------+--------------+ tc - center top

| | tr - right top

l + + c + r etc.

| |

+-------------+--------------+

bl bc br
dan rotation dalam derajat
set strsiz lebar tinggi (dalam inci)

2.2. Pengaturan Warna


GrADS memiliki satu set warna default dengan id 0-15 seperti di bawah ini:
Col# Description Sample R G B
0 background 0 0 0 (black by default)
1 foreground 255 255 255 (white by default)
2 red 240 0 0
3 green 0 220 0
4 dark blue 31 61 250
5 light blue 0 199 199
6 magenta 220 0 99
7 yellow 230 220 51
8 orange 240 130 41
9 purple 161 0 199
10 yellow/green 161 230 51
11 medium blue 0 161 230
12 dark yellow 230 176 46
13 aqua 0 209 140
14 dark purple 110 0 220
15 gray 125 125 125

Tutorial Komputasi Kerma ITB-BMKG 2


Setting Display Dalam GrADS

Ketika anda menggambar contour atau shaded, GrADS secara default


menggunakan palet (urutan warna) berikut: 9 14 4 11 5 13 3 10 7 12 8 2 6
yang mengatur warna interval legenda (cbar atau cbarn).

Untuk pengaturan legenda gunakan perintah


cbarn sf vert xmid ymid
dengan
sf - skala, default 1.0
vert – orientasi, 0 = horizontal, 1 = vertical
xmid – posisi tengah dalam arah x
ymid – posisi tengah dalam arah y

Anda dapat membuat palet sendiri dengan perintah


set clevs lev1 lev2 lev3 .... levN
set ccols col1 col2 .... colN
dan membuat warna sendiri dengan perintah
set rgb color# R G B
dimana color# adalah angka dari 16 s.d 99 (berhubung GrADS sudah
mendefinisikan angka 0-15 sebagai id warna defaultnya) dan R G B adalah nilai 0-
255 yang merepresentasikan nilai Red Green dan Blue.

Dalam membuat palet sendiri, yang harus anda ingat adalah aturan berikut:
col1: values <= lev1
col2: lev1 < values <= lev2
col3: lev2 < values <= lev3
dst.

2.2. Pengaturan Area Graphic


GrADS membagi halaman graphic dalam dua tipe, real page dan virtual page.
Secara default real page berukuran 8.5x11 inci dengan orientasi landscape atau
portrait (tergantung pilihan anda saat memulai GrADS). Virtual page adalah
halaman di dalam real page dimana semua graphic digambar dan setingan graphic
dilakukan. Secara default ukuran virtual page sama dengan ukuran real page.
Ukuran virtual page dapat diatur dengan perintah
set vpage xmin xmax ymin ymax
Perintah di atas akan membuat semua gambar muncul di area virtual page yang anda
set sampai dilakukan pengaturan virtual page lainnya. Untuk kembali ke default
gunakan perintah
set vpage off
Sebagai contoh, perintah
set vpage 0 5.5 0 4.25
akan menyebabkan semua gambar muncul di kiri bawah window display.

Untuk mengatur area gambar di virtual page gunakan perintah


set parea xmin xmax ymin ymax
dan untuk kembali ke default gunakan
set parea off

Tutorial Komputasi Kerma ITB-BMKG 3


Setting Display Dalam GrADS

3. Langkah Pengerjaan
a. Hidupkan aplikasi “X-Win32” dan dengan “putty” lakukan ssh ke komputer server.
b. Buat symbolic link dari data uwnd.2008.nc dan vwnd.2008.nc di direktori kerja
anda masing-masing.
c. Gunakan perintah-perintah yang telah anda pelajari di atas untuk menggambar
graphic 4 panel sebagai berikut:
- Panel kiri bawah : contour, gunakan warna garis contour yang berbeda dari
teman anda.
- Panel kiri atas : shaded, gunakan palet yang berbeda dari teman anda, legend
vertikal (sebelah kanan gambar)
- Panel kanan bawah : vektor angin, atur skala dan panjang vektornya
- Panel kanan atas : time series di suatu titik
- Buat judul di atas masing-masing panel
- Satu judul besar di bagian bawah
- Nama dan nim anda di kanan atas, program studi di kiri atas
(catatan: gunakan set grads off di masing-masing panel)

Tutorial Komputasi Kerma ITB-BMKG 4

Anda mungkin juga menyukai