"Sebuah Nama Sebuah Cerita"

Welcome to My Blog !


" A Story of Experience, Science and
Expression of feelings"

- Go where u wanna go - Do what u wanna do - Be what u wanna be - U just have one life and one chance to do all the things u wanna do -

Home

Kamis, 30 Juni 2011

Pengolahan Data Curah Hujan Dan Angin

Pengolahan data curah hujan dengan menggunakan Matlab sangat bermanfaat dalam menganalisis serta menampilkan visualisasi yang menawan.
Berikut misalnya data curah hujan suatu stasiun:
datatabel
Data curah hujan tersebut jika berbentuk matrik menjadi:
A=[0 29.2 40.6 11.2 4.8 4.6 5.2 0.2 22.8 19.8 7 0.4 10.8 0 0.6 1.8 32.4 0 2 1.8 28.6 13 0 1.8 8.6 5 0.2 0 0 0 11.2]
Maka jika di plot menjadi
>>plot(a)
>> grid on
>> xlabel(‘Hari’)
>> ylabel(‘Curah Hujan (mm)’)
Hasilnya Gambar (a)
>> bar(a)
>> ylabel(‘Curah Hujan (mm)’)
>> xlabel(‘Hari’)
>> grid on
Hasilnya Gambar (b)
>> plot(a,’*')
>> axis([0 45 0 45]) %mengatur agar panjang x dari 0-45 sedangkan y juga dari 0-45
Hasilnya Gambar (c)
Untuk membuat plot, matlab menyediakan beberapa pilihan untuk penggambaran, yang dibagi menjadi tiga pilihan(warna,bentuk plot data,bentuk garis yang menghubungkan data).
>> plot(a,’r*:’)
>> xlabel(‘Hari’)
>> ylabel(‘Curah Hujan (mm)’)
Plot diatas memplot data a, menggunakan warna merah(a), data plot berbentuk bintang (*) dan garis yang menghubungkan data (: ) yang berbentuk bintang tadi berbentuk titik-titik.
Hasilnya Gambar (d)
datatitik
datadiagram
Pengolahan data angin untuk keperluan meteorologi sangat penting mengingat besarnya peranan angin dalam mempengaruhi fenomena-fenomena meteorologi.  Pengolahan data angin dan sekaligus memvisualisasikannya dengan software tertentu merupakan suatu keharusan. Software yang bisa digunakan antara lain: GrAds dan Matlab.
Kecepatan angin dapat dibuat skala, dan yang paling terkenal adalah skala yang di sebut Skala Beaufort  seperti yang ditunjukan tabel dibawah ini.
Skala Beaufort
Data volume vektor
Data volume vektor merupakan data yang lebih banyak memiliki informasi dibanding skalar. Setiap koordinat data volume vektor memiliki tiga data yang berkaitan dengan data yang dimaksud. Data tersebut terdiri dari suatu vektor yang menunjukan arah dan besarnya data. Di bidang meteorologi data angin merupakan salah satu data volume vektor. Dengan memetakan angin dalam bidang tiga dimensi (volume) dapat membantu untuk menganalisis perilaku, angin pada tiap saat dan pada tiap tempat. Umumnya angin dipetakan secara dua dimensi (arah dan besarnya kekuatan angin) tetapi hal itu akan sulit untuk mengetahui perilaku,kondisi angin pada saat bersamaan di tempat yang berbeda-beda khususnya dibawah atau di atas lapisan gambar dua dimensi yang kita maksud. Begitu pula jika digambarkan secara melintang,kondisi dan perilaku angin sebelum dan sesudah gambar melintang tidak dapat ditampilkan secara bersamaan. Dalam meteorologi untuk mengatasi kondisi ini bisa digunakan Vis5D yang bisa menggambarkan angin dalam bentuk tiga dimensi disertai parameter meteorologi yang lain misalnya tekanan dan kelembaban serta topografi daerah yang di amati. Sehingga perilaku angin, tekanan, dan parameter meteorology lainnya ketika berada dilaut, daratan, gunung dan lembah dapat diamati dengan baik seperti yang ditunjukan gambar dibawah.
vis5d
Salah satu software lainnya adalah Matlab yang dapat menggambarkan dan mengolah data angin dengan sangat baik.
Matlab memiliki fitur-fitur sebagai berikut:
· Stream lines : menggambarkan aliran angin dalam bentuk garis secara 2 atau 3 dimensi.
· Stream particles: menggambarkan partikel atau titik yang diamati dalam suatu jejak angin yang berbentuk garis (stream line).
· Stream ribbons : sama dengan stream lines, tetapi aliran angin digambarkan seperti pita dengan lebar pita menunjukan kemampuan angin untuk berputar. Bentuk pita ini sesuai dengan nilai curl dari vektor angin yang diamati.
· Stream tubes : sama dengan stream lines, tetapi aliran angin digambarkan dalam tabung-tabung alir dan dapat digunakan untuk analisis divergensi vektor angin.
· Cone plots:menggambarkan angin seperti kerucut dengan posisi kerucut merupakan arah angin. Besarnya kerucut menunjukan besar-kecilnya kekuatan angin.
Berikut merupakan visualisasi dari metode yang disebutkan diatas ( semua menggunakan program Matlab dengan modifikasi data dan program yang disesuaikan dengan data meteorology di Indonesia).
Data vektor yangdigunakan disini adalah data angin.
Di Matlab 7, ketika dilakukan perintah load wind akan memunculkan variable : x,y,z,u,v dan w.
Data angin ini berukuran 35 x 41x 15 (jadi banyaknya 35 baris, 41 kolom, tinggi 15. sehingga secara sederhana dapat digambarkan bahwa data angin ini seperti sebuah kotak yang terdiri dari 35 baris bata, 41 kolom bata dengan tinggi 15 bata. Jadi jumlah bata yang membentuk kotak tersebut sebanyak: 21525 buah.
Bata-bata itulah yang merupakan data angin yang memiliki variabel : x,y,z,u,v dan w.
X menunjukan posisi data kecepatan angin u ( arah utara-selatan).
Y menunjukan posisi data kecepatan angin v ( arah barat-timur)
Z . menunjukan posisi data kecepatan angin w ( arah atas-bawah).
Untuk mengetahui kecepatan angin pada suatu titik maka dihitung dengan melibatkan kecepatan angin u, kecepatan angin v, dan kecepatan angin w.
Kecepatan angin =
Data vektor ini dapat dianalisisi dengan beberapa cara diantara:
· Stream line: digunakan untuk merunut kecepatan angin
· Penampang melintang untuk mengetahui data angin secara melintang
· Kontour pada penampang melintang untuk meningkatkan pemahaman data angin
Plot Stream Line untuk Data vektor
Contoh:
>> load wind
>> [sx,sy] = meshgrid(80,20:5:60)
sx =
80
80
80
80
80
80
80
80
80
sy =
20
25
30
35
40
45
50
55
60
>> streamline(stream2(x(:,:,15),y(:,:,15),u(:,:,15),v(:,:,15),sx,sy)) hasilnya gambar a
>> load wind
>> zmax = max(z(:))
zmax =
16
>> zmin = min(z(:))
zmin =
-0.0020
>> streamslice(x,y,z,u,v,w,[ ],[ ],(zmax-zmin)/2)
hasilnya gambar b
>> streamslice(x,y,z,u,v,w,[ ],[ ],10)
hasilnya gambar c
>> streamslice(x,y,z,u,v,w,[ ],[ ],5)
hasilnya gambar d
>> streamslice(x,y,z,u,v,w,[ ],[ ],2)
hasilnya gambar e
>> streamslice(x,y,z,u,v,w,[ ],[ ],1)
hasilnya gambar f
a-fKalau kita gambarkan angin tadi dalam tiga dimensi dan dengan menampilkan lapisan tertentu saja hasilnya seperti dibawah ini ( dengan mengikuti script berikut ini):
load wind
[sx,sy,sz] = meshgrid(77,20:5:60,0:3:20);
h = streamline(x,y,z,u,v,w,sx,sy,sz);
set(h,’Color’,'green’)
view(3)
box
kotak-angin
Berikut merupakan tahapan dalam menentukan titik awal data angin ditampilkan
load wind
>> [sx,sy,sz] = meshgrid(75,25:5:60,0:3:15)
plot3(sx(:),sy(:),sz(:),’*blue’)
axis(volumebounds(x,y,z,u,v,w))
grid; box; daspect([2 2 1])
sx(:,:,1) =
75
75
75
75
75
75
75
75
sx(:,:,2) =
75
75
75
75
75
75
75
75
sx(:,:,3) =
75
75
75
75
75
75
75
75
sx(:,:,4) =
75
75
75
75
75
75
75
75
sx(:,:,5) =
75
75
75
75
75
75
75
75
sx(:,:,6) =
75
75
75
75
75
75
75
75
sy(:,:,1) =
25
30
35
40
45
50
55
60
sy(:,:,2) =
25
30
35
40
45
50
55
60
sy(:,:,3) =
25
30
35
40
45
50
55
60
sy(:,:,4) =
25
30
35
40
45
50
55
60
sy(:,:,5) =
25
30
35
40
45
50
55
60
sy(:,:,6) =
25
30
35
40
45
50
55
60
sz(:,:,1) =
0
0
0
0
0
0
0
0
sz(:,:,2) =
3
3
3
3
3
3
3
3
sz(:,:,3) =
6
6
6
6
6
6
6
6
sz(:,:,4) =
9
9
9
9
9
9
9
9
sz(:,:,5) =
12
12
12
12
12
12
12
12
sz(:,:,6) =
15
15
15
15
15
15
15
15
hasilnya seperti  gambar di bawah
titik
>> streamline(x,y,z,u,v,w,sx(:),sy(:),sz(:))
akan muncul gambar
titik2
load wind
xmin = min(x(:));
xmax = max(x(:));
ymax = max(y(:));
zmin = min(z(:));
wind_speed = sqrt(u.^2 + v.^2 + w.^2)
hsurfaces = slice(x,y,z,wind_speed,[xmin,100,xmax],ymax,zmin)
set(hsurfaces,’FaceColor’,'interp’,'EdgeColor’,'c’)
kotak >>[sx,sy,sz] = meshgrid(75,25:10:60,0:3:15);
hlines = streamline(x,y,z,u,v,w,sx,sy,sz);
set(hlines,’LineWidth’,2,’Color’,'r’)
kotak2
load wind
xmin = min(x(:));
xmax = max(x(:));
ymax = max(y(:));
zmin = min(z(:));
wind_speed = sqrt(u.^2 + v.^2 + w.^2);
hsurfaces = slice(x,y,z,wind_speed,[xmin,100,xmax],ymax,zmin);
set(hsurfaces,’FaceColor’,'interp’,'EdgeColor’,'none’)
hcont = …
contourslice(x,y,z,wind_speed,[xmin,100,xmax],ymax,zmin);
set(hcont,’EdgeColor’,[.7,.7,.7],’LineWidth’,.5)
[sx,sy,sz] = meshgrid(75,25:10:60,0:3:15);
hlines = streamline(x,y,z,u,v,w,sx,sy,sz);
set(hlines,’LineWidth’,2,’Color’,'r’)
view(3)
daspect([2,2,1])
axis tight
box
stream1
load wind
xmin = min(x(:));
xmax = max(x(:));
ymax = max(y(:));
zmin = min(z(:));
wind_speed = sqrt(u.^2 + v.^2 + w.^2);
hsurfaces = slice(x,y,z,wind_speed,[xmin,100,xmax],ymax,zmin);
set(hsurfaces,’FaceColor’,'interp’,'EdgeColor’,'none’)
[sx,sy,sz] = meshgrid(75,25:10:60,0:3:15);
hlines = streamline(x,y,z,u,v,w,sx,sy,sz);
set(hlines,’LineWidth’,2,’Color’,'r’)
view(3)
daspect([2,2,1])
axis tight
box
stream2
load wind
xmin = min(x(:));
xmax = max(x(:));
ymin = min(y(:));
ymax = max(y(:));
zmin = min(z(:));
daspect([2,2,1])
xrange = linspace(xmin,xmax,8);
yrange = linspace(ymin,ymax,8);
zrange = 3:4:15;
[cx cy cz] = meshgrid(xrange,yrange,zrange);
hcones = coneplot(x,y,z,u,v,w,cx,cy,cz,5);
set(hcones,’FaceColor’,'red’,'EdgeColor’,'none’)
stream3
load wind
xmin = min(x(:));
xmax = max(x(:));
ymin = min(y(:));
ymax = max(y(:));
zmin = min(z(:));
daspect([2,2,1])
xrange = linspace(xmin,xmax,8);
yrange = linspace(ymin,ymax,8);
zrange = 3:4:15;
[cx cy cz] = meshgrid(xrange,yrange,zrange);
hcones = coneplot(x,y,z,u,v,w,cx,cy,cz,5);
set(hcones,’FaceColor’,'red’,'EdgeColor’,'none’)
[cx cy cz] = meshgrid(xrange,yrange,zrange);
hcones = coneplot(x,y,z,u,v,w,cx,cy,cz,5);
set(hcones,’FaceColor’,'red’,'EdgeColor’,'none’)
hold on
wind_speed = sqrt(u.^2 + v.^2 + w.^2);
hsurfaces = slice(x,y,z,wind_speed,[xmin,xmax],ymax,zmin);
set(hsurfaces,’FaceColor’,'interp’,'EdgeColor’,'none’)
hold off
axis tight; view(30,40); axis off
camproj perspective; camzoom(1.5)
camlight right; lighting phong
set(hsurfaces,’AmbientStrength’,.6)
set(hcones,’DiffuseStrength’,.8)
kotak_stream
load wind
xmin = min(x(:));
xmax = max(x(:));
ymin = min(y(:));
alt = 7.356; % z-value for slice and streamtube plane
wind_speed = sqrt(u.^2 + v.^2 + w.^2);
hslice = slice(x,y,z,wind_speed,xmax,ymin,alt);
set(hslice,’FaceColor’,'interp’,'EdgeColor’,'none’)
colormap hsv(16)
color_lim = caxis;
cont_intervals = linspace(color_lim(1),color_lim(2),17);
hcont = contourslice(x,y,z,wind_speed,xmax,ymin,…
alt,cont_intervals,’linear’);
set(hcont,’EdgeColor’,[.4 .4 .4],’LineWidth’,1)
[sx,sy,sz] = meshgrid(xmin,20:3:50,alt);
daspect([1,1,1]) % set DAR before calling streamtube
htubes = streamtube(x,y,z,u,v,w,sx,sy,sz,[1.25 30]);
set(htubes,’EdgeColor’,'none’,'FaceColor’,'r’,…
‘AmbientStrength’,.5)
view(-100,30)
axis(volumebounds(x,y,z,wind_speed))
set(gca,’Projection’,'perspective’)
camlight left
tube_angin
load wind
xmin = min(x(:));
xmax = max(x(:));
ymin = min(y(:));
alt = 7.356; % z-value for slice and streamtube plane
wind_speed = sqrt(u.^2 + v.^2 + w.^2);
colormap hsv(16)
color_lim = caxis;
cont_intervals = linspace(color_lim(1),color_lim(2),17);
[sx,sy,sz] = meshgrid(xmin,20:3:50,alt);
daspect([1,1,1]) % set DAR before calling streamtube
htubes = streamtube(x,y,z,u,v,w,sx,sy,sz,[1.25 30]);
set(htubes,’EdgeColor’,'none’,'FaceColor’,'blue’,…
‘AmbientStrength’,.5)
view(-100,30)
axis(volumebounds(x,y,z,wind_speed))
set(gca,’Projection’,'perspective’)
camlight left
box on
tube2
load wind
wind_speed = sqrt(u.^2 + v.^2 + w.^2);
hiso = patch(isosurface(x,y,z,wind_speed,40));
isonormals(x,y,z,wind_speed,hiso)
set(hiso,’FaceColor’,'red’,'EdgeColor’,'none’)
tube3 hcap = patch(isocaps(x,y,z,wind_speed,40),…
‘FaceColor’,'interp’,…
‘EdgeColor’,'none’)
tube41
load wind
wind_speed = sqrt(u.^2 + v.^2 + w.^2);
hiso = patch(isosurface(x,y,z,wind_speed,40));
isonormals(x,y,z,wind_speed,hiso)
set(hiso,’FaceColor’,'red’,'EdgeColor’,'none’)
hcap = patch(isocaps(x,y,z,wind_speed,40),…
‘FaceColor’,'interp’,…
‘EdgeColor’,'none’)
daspect([1,1,1])
[f verts] = reducepatch(isosurface(x,y,z,wind_speed,30),0.07)
h1 = coneplot(x,y,z,u,v,w,verts(:,1),verts(:,2),verts(:,3),3)
tube51 set(h1,’FaceColor’,'blue’,'EdgeColor’,'none’)
tube61xrange = linspace(min(x(:)),max(x(:)),10)
yrange = linspace(min(y(:)),max(y(:)),10)
zrange = 3:4:15
[cx,cy,cz] = meshgrid(xrange,yrange,zrange)
h2 = coneplot(x,y,z,u,v,w,cx,cy,cz,2)
set(h2,’FaceColor’,'green’,'EdgeColor’,'none’
tube72
axis tight
box on
camproj perspective
camzoom(1.25)
view(65,45)
tube81
camlight(-45,45)
set(gcf,’Renderer’,'zbuffer’)
lighting phong
set(hcap,’AmbientStrength’,.6)
tube10
load wind
wind_speed = sqrt(u.^2 + v.^2 + w.^2);
hiso = patch(isosurface(x,y,z,wind_speed,40));
isonormals(x,y,z,wind_speed,hiso)
set(hiso,’FaceColor’,'red’,'EdgeColor’,'none’)
hcap = patch(isocaps(x,y,z,wind_speed,40),…
‘FaceColor’,'interp’,…
‘EdgeColor’,'none’)
daspect([1,1,1])
[f verts] = reducepatch(isosurface(x,y,z,wind_speed,30),0.07)
h1 = coneplot(x,y,z,u,v,w,verts(:,1),verts(:,2),verts(:,3),3)
set(h1,’FaceColor’,'blue’,'EdgeColor’,'none’)
xrange = linspace(min(x(:)),max(x(:)),10)
yrange = linspace(min(y(:)),max(y(:)),10)
zrange = 3:4:15
[cx,cy,cz] = meshgrid(xrange,yrange,zrange)
h2 = coneplot(x,y,z,u,v,w,cx,cy,cz,2)
set(h2,’FaceColor’,'green’,'EdgeColor’,'none’)
set(hcap,’AmbientStrength’,.6)
axis tight
box on
camproj perspective
camzoom(1.25)
view(65,45)
camlight(-45,45)
set(gcf,’Renderer’,'zbuffer’);
lighting phong
set(hcap,’AmbientStrength’,.6)
tubeeeload wind
spd = sqrt(u.*u + v.*v + w.*w);
p = patch(isosurface(x,y,z,spd, 40));
isonormals(x,y,z,spd, p)
set(p, ‘FaceColor’, ‘red’, ‘EdgeColor’, ‘none’);
p2 = patch(isocaps(x,y,z,spd, 40));
set(p2, ‘FaceColor’, ‘interp’, ‘EdgeColor’, ‘none’)
daspect([1 1 1]);
[f verts] = reducepatch(isosurface(x,y,z,spd, 30), .2);
h=coneplot(x,y,z,u,v,w,verts(:,1),verts(:,2),verts(:,3),2);
set(h, ‘FaceColor’, ‘cyan’, ‘EdgeColor’, ‘none’);
[sx sy sz] = meshgrid(75, 30:5:60, 0:5:35);
h2=streamline(x,y,z,u,v,w,sx,sy,sz);
set(h2, ‘Color’, [.4 1 .4]);
colormap(jet)
box on
axis tight
camproj perspective;
camva(34);
campos([165 -20 65]);
camtarget([100 40 -5])
camlight left;
lighting gouraud
garis_cub Ketika kita menggunakan teknik lain dalam menganalisa angin adalah dengan stream ribbon.
load wind
[sx sy sz] = meshgrid(75, [25 30 35 40 45 50 55], [3 6 9 12 15 18 21]);
daspect([1,1,1]);
h=streamribbon(x,y,z,u,v,w,sx,sy,sz);
set(h,’facecolor’,'red’,'edgecolor’,'none’)
box on;
camproj perspective;
axis([70 138 17 60 2.5 16]);
axis tight
camva(28);
campos([175 10 85]);
camtarget([105 40 0])
camlight left;
lighting gouraud
pita1

load wind
[sx sy sz] = meshgrid(80,20:5:50,0:3:15);
daspect([2 2 2])
streamribbon(x,y,z,u,v,w,sx,sy,sz);
%—–Define viewing and lighting
axis tight
shading interp;
view(3);
camlight; lighting gourau
hasilnya gambar a
load wind
[sx sy sz] = meshgrid(80,20:15:50,0:5:20);
daspect([2 2 2])
streamribbon(x,y,z,u,v,w,sx,sy,sz);
%—–Define viewing and lighting
axis tight
shading interp;
view(3);
camlight; lighting gouraud
hasilnya gambar b
load wind
[sx sy sz] = meshgrid(80,20:15:50,0:2:15);
daspect([2 2 2])
streamribbon(x,y,z,u,v,w,sx,sy,sz);
%—–Define viewing and lighting
axis tight
shading interp;
view(3);
camlight; lighting gouraud
box on
hasilnya gambar c
load wind
[sx sy sz] = meshgrid(80,20:10:50,0:5:15);
daspect([1 1 1])
verts = stream3(x,y,z,u,v,w,sx,sy,sz);
cav = curl(x,y,z,u,v,w);
spd = sqrt(u.^2 + v.^2 + w.^2).*.1;
streamribbon(verts,x,y,z,cav,spd);
%—–Define viewing and lighting
axis tight
shading interp
view(3)
camlight; lighting gouraud
box on
hasilnya gambar d
load wind
[sx sy sz] = meshgrid(80,20:5:50,0:3:15);
daspect([1 1 1])
verts = stream3(x,y,z,u,v,w,sx,sy,sz);
cav = curl(x,y,z,u,v,w);
spd = sqrt(u.^2 + v.^2 + w.^2).*.1;
streamribbon(verts,x,y,z,cav,spd);
%—–Define viewing and lighting
axis tight
shading interp
view(3)
camlight; lighting gouraud
hasilnya gambar e
load wind
[sx sy sz] = meshgrid(80,20:15:50,0:5:15);
daspect([1 1 1])
verts = stream3(x,y,z,u,v,w,sx,sy,sz);
cav = curl(x,y,z,u,v,w);
spd = sqrt(u.^2 + v.^2 + w.^2).*.1;
streamribbon(verts,x,y,z,cav,spd);
%—–Define viewing and lighting
axis tight
shading interp
view(3)
camlight; lighting gouraud
hasilnya gambar e
a_fpita_anginGambar dibawah merupakan tampilan yang sama dari script berikut ini:
load wind
[sx sy sz] = meshgrid(80,20:15:50,0:3:21);
daspect([2 2 2])
streamribbon(x,y,z,u,v,w,sx,sy,sz);
%—–Define viewing and lighting
axis tight
shading interp;
view(3);
camlight; lighting gouraud
box on
pitaberuntun
load wind
[sx sy sz] = meshgrid(75, [30 35 45 50 55 60 65], [5 10 15 20 25 30 35]);
daspect([1,1,1]);
h=streamtube(x,y,z,u,v,w,sx,sy,sz);
set(h,’facecolor’,'red’,'edgecolor’,'none’);
box on;
camproj perspective;
axis([70 138 17 60 2.5 16]);
axis tight
camva(28);
campos([175 10 95]);
camtarget([105 40 0])
camlight left;
lighting gouraud
tube_cone
load wind
[sx sy sz] = meshgrid(80,20:10:50,0:5:15);
daspect([1 1 1])
streamtube(x,y,z,u,v,w,sx,sy,sz);
%—–Define viewing and lighting
view(3)
axis tight
shading interp;
camlight; lighting gouraud
hasilnya gambar a
load wind
[sx sy sz] = meshgrid(80,20:10:50,0:3:15);
daspect([1 1 1])
verts = stream3(x,y,z,u,v,w,sx,sy,sz);
div = divergence(x,y,z,u,v,w);
streamtube(verts,x,y,z,-div);
%—–Define viewing and lighting
view(3)
axis tight
shading interp
camlight; lighting gouraud
box on
hasilnya gambar b
load wind
[sx sy sz] = meshgrid(80,20:10:50,0:5:15);
daspect([1 1 1])
verts = stream3(x,y,z,u,v,w,sx,sy,sz);
div = divergence(x,y,z,u,v,w);
streamtube(verts,x,y,z,-div);
%—–Define viewing and lighting
view(3)
axis tight
shading interp
camlight; lighting gouraud
hasilnya gambar c

load wind
[sx sy sz] = meshgrid(80,20:10:40,0:5:10);
daspect([1 1 1])
verts = stream3(x,y,z,u,v,w,sx,sy,sz);
div = divergence(x,y,z,u,v,w);
streamtube(verts,x,y,z,-div);
%—–Define viewing and lighting
view(3)
axis tight
shading interp
camlight; lighting gouraud
hasilnya gambar d

gambar_4_tube
load wind
[sx sy sz] = meshgrid(80,20:5:60,0:3:15);
daspect([1 1 1])
verts = stream3(x,y,z,u,v,w,sx,sy,sz);
div = divergence(x,y,z,u,v,w);
streamtube(verts,x,y,z,-div);
%—–Define viewing and lighting
view(3)
axis tight
shading interp
camlight; lighting gouraud
box on
tubebanyak
load wind
lims = [90.64 126.67 27.25 38.75 -0.05 7.86];
[x,y,z,u,v,w] = subvolume(x,y,z,u,v,w,lims);
cav = curl(x,y,z,u,v,w);
wind_speed = sqrt(u.^2 + v.^2 + w.^2);
[sx sy sz] = meshgrid(100,20:5:30,1:5);
verts = stream3(x,y,z,u,v,w,sx,sy,sz,.5);
h = streamribbon(verts,x,y,z,cav,wind_speed,2);
set(h,’FaceColor’,'blue’,…
‘EdgeColor’,[.7 .7 .7],…
‘AmbientStrength’,.6)
axis(volumebounds(x,y,z,wind_speed))
grid on
shading interp
view(3)
camlight right;
set(gcf,’Renderer’,'zbuffer’); lighting phong
box on
angin1 load wind
[sx sy sz] = meshgrid(80,20:1:55,5);
verts = stream3(x,y,z,u,v,w,sx,sy,sz);
sl = streamline(verts);
iverts = interpstreamspeed(x,y,z,u,v,w,verts,.025);
axis tight; view(30,30); daspect([1 1 .125])
camproj perspective; camva(8)
set(gca,’DrawMode’,'fast’)
box on
streamparticles(iverts,35,’animate’,10,’ParticleAlignment’,'on’)
angin2
load wind
[sx sy sz] = meshgrid(80,23:2:50,5:5:15);
verts = stream3(x,y,z,u,v,w,sx,sy,sz);
sl = streamline(verts);
iverts = interpstreamspeed(x,y,z,u,v,w,verts,.025);
axis tight; view(30,30); daspect([1 1 .125])
camproj perspective; camva(8)
set(gca,’DrawMode’,'fast’)
box on
streamparticles(iverts,35,’animate’,10,’ParticleAlignment’,'on’)
teras_angin
load wind
[sx sy sz] = meshgrid(80,23:2:50,5:5:10);
verts = stream3(x,y,z,u,v,w,sx,sy,sz);
sl = streamline(verts);
iverts = interpstreamspeed(x,y,z,u,v,w,verts,.025);
axis tight; view(30,30); daspect([1 1 .125])
camproj perspective; camva(8)
set(gca,’DrawMode’,'fast’)
box on
streamparticles(iverts,35,’animate’,10,’ParticleAlignment’,'on’)
teras2 load wind
[sx sy sz] = meshgrid(100,20:2:56,5);
verts = stream3(x,y,z,u,v,w,sx,sy,sz);
sl = streamline(verts);
iverts = interpstreamspeed(x,y,z,u,v,w,verts,0.05);
axis tight; view(30,30);
daspect([1.5 1.5 0.100])
camproj perspective; camva(8)
set(gca,’DrawMode’,'fast’)
box on
streamparticles(iverts,35,’animate’,10,’ParticleAlignment’,'on’)
shading interp
teras3
load wind
[sx sy sz] = meshgrid(100,18:2:56,5);
verts = stream3(x,y,z,u,v,w,sx,sy,sz);
sl = streamline(verts);
iverts = interpstreamspeed(x,y,z,u,v,w,verts,0.05);
axis tight; view(30,30);
daspect([1.5 1.5 0.100])
camproj perspective; camva(8)
set(gca,’DrawMode’,'fast’)
box on
streamparticles(iverts,35,’animate’,10,’ParticleAlignment’,'on’)
shading interp
terass

1 komentar: