%stalagmite mathematical model
clear all
close all
clc
%defining our search space
x = linspace(0,0.6,150);
y = linspace(0,0.6,150);
%create a 2D mesh
[xx yy] = meshgrid(x,y);
%evaluate the stalagmite function
for i = 1:length(xx)
for j = 1:length(yy)
input_vector(1)=xx(i,j);
input_vector(2)=yy(i,j);
f(i,j) = stalagmite(input_vector);
end
end
surfc(xx,yy,f);
xlabel('x value')
ylabel('y value')
shading interp
[inputs, fval] = ga(@stalagmite,2,[],[],[],[],[0;0],[1;1],[],[])
function K = stalagmite(input_vector)
x = input_vector(1);
y = input_vector(2);
A = [sin(5.1*pi*x+0.5)].^6;
C = [sin(5.1*pi*y+0.5)].^6;
B = exp(-4*log10(2)*(x-0.0667).^2/0.64);
D = exp(-4*log10(2)*(y-0.0667).^2/0.64);
K = -(A*B*C*D);