clear all;
clc;

fprintf('Choose a test function \n');
fprintf(' 1. sqrt((z+1)(1-z))cos(x/2+y/3+z/5)\n');
fprintf(' 2. cos(30xyz) if z<1/2 and sqrt(x^2+y^2+z^2)^3 if z>=1/2 \n');
fprintf(' 3. exp(-sin(2x^2+3y^2+5z^2))\n');
fprintf(' 4. exp(-sqrt(x^2+y^2+z^2))/(1+x^2+y^2+z^2)*cos(1+x^2)sin(1-y^2)exp(abs(z))\n');
s=input('Test Function #');
fprintf('Choose a manifold \n');
fprintf(' 1. Cone\n');
fprintf(' 2. Cylinder\n');
fprintf(' 3. Torus\n');
fprintf(' 4. Sphere\n');
t=input('Manifold #');
fprintf('Choose a point set \n');
fprintf(' 1. Halton\n');
fprintf(' 2. Fibonacci\n');
fprintf(' 3. Greedy minimal k_2-energy\n');
j=input('Point set #');
if(j==2)
    fprintf('Choose the N-th number of Fibonacci to generate a N-th number of Fibonacci of points \n');
    N=input('Fibonacci number #');
else
    fprintf('Choose how many points ');
    N=input('#');
end
QMCManifold(s,t,j,N)
