Dalam matematika, peta-chaos adalah peta (fungsi evolusi) yang menunjukkan beberapa jenis perilaku chaos. Peta ini dapat berparameterkan waktu secara diskrit ataupun kontinu. Peta diskrit biasanya mengambil bentuk fungsi iterasi. Peta chaos sering muncul dalam studi sistem dinamis.
Peta chaotic sering menghasilkan fraktal. Meskipun fraktal dapat dibangun oleh prosedur iterasi, beberapa fraktal yang dipelajari adalah berupa suatu himpunan dan bukan fungsi pemetaan yang menghasilkan mereka. Hal ini sering terjadi karena ada beberapa prosedur iteratif yang berbeda untuk menghasilkan fraktal yang sama. Daftar chaotic map :
Kita akan me-review beberapa chaotic map, antara lain : Lorentz system, Henon map, Rossler attractor, dan Van der Pol oscillator. Mengingat Lorentz system dan Henon map sudah pernah kita bahas maka yang akan kita bahas selanjutnya adalah Rossler attractor dan Van der Pol oscillator.
Persamaan Rossler attractor :
dengan parameter: a = 0.2, b = 0.2, dan c = 5.7. Namun parameter yang sering dipakai sekarang ini adalah a = 0.1, b = 0.1 dan c = 14. Silakan dicoba sebagai latihan :D.
Untuk melihat phase portrait dari Rossler attractor kita akan menggunakan metode numerik yang dinamakan Runge-Kutta. Bisa juga memakai ode45 seperti biasa, silakan dicoba sebagai latihan. Berikut ini list programnya :
clear all;
n = 0;
x = 0; %initial value sumbu-x
y = 0; %initial value sumbu-y
z = 0; %initial value sumbu-z
m = -2; %parameter
a = 0.2; %parameter
b = 0.2; %parameter
c = 5.7; %parameter
while n <= 50000;
n = n+1;
dt =10^m;
x1 = x;
y1 = y;
z1 = z;
% fungsi untuk x
kx1 = (-y1-z1).*dt;
kx2 = (-y1-z1+0.5*kx1).*dt;
kx3 = (-y1-z1+0.5*kx2).*dt;
kx4 = (-y1-z1+kx3).*dt;
x = x1+(kx1+2*kx2+2*kx3+kx4)./6;
% fungsi untuk y
ky1 = (x1+a*y1).*dt;
ky2 = (x1+a*(y1+0.5*ky1)).*dt;
ky3 = (x1+a*(y1+0.5*ky2)).*dt;
ky4 = (x1+a*(y1+ky3)).*dt;
y = y1+(ky1+2*ky2+2*ky3+ky4)./6;
% fungsi untuk z
kz1 = (b+z1*(x1-c)).*dt;
kz2 = (b+(z1+0.5*kz1)*(x1-c)).*dt;
kz3 = (b+(z1+0.5*kz2)*(x1-c)).*dt;
kz4 = (b+(z1+kz3)*(x1-c)).*dt;
z = z1+(kz1+2*kz2+2*kz3+kz4)./6;
xaxis(n) = x;
yaxis(n) = y;
zaxis(n) = z;
end
plot3(xaxis,yaxis,zaxis,'b-')
legend('Rossler system using Runge-Kutta')
xlabel('x-axis')
ylabel('y-axis')
zlabel('z-axis')
Hasil komputasi tampak dalam gambar di bawah ini.
File 1: untuk menuliskan fungsi Van der Pol oscillator
function dxdt=vanderpol(t,x);
% Van der Pol oscillator
miu = 1.5;
dxdt=[x(2);
miu.*(1-x(1).^2).*x(2)-x(1)];
File 2: compiler untuk menjalankan iterasi
clear all % a clear start
t=[0 100]; % time window
y0=[0;0.2]; % initial conditions x0,v0
[t,Y] = ode45('vanderpol',t,y0);
figure
%plot3(t,Y(:,1),Y(:,2))
plot(Y(:,1),Y(:,2))
%plot(t,Y(:,1))
%view([3,16])
grid on
figure
%comet3(Y(:,1),Y(:,2),Y(:,3))
comet(Y(:,1),Y(:,2))
%comet(t,Y(:,1))
%xlabel('time')
%ylabel('y-axis')
%zlabel('z-axis')
Hasil komputasi tampak dalam gambar di bawah ini.
Tidak ada komentar :
Posting Komentar