function figuras_adaptativa

%--- funcao a aproximar
%Se o parametro for 0 faz analise global
parametros.funcao = 8;
%--- dimensao do dominio
parametros.dim_dominio = 2;
%--- tamanho do dominio
%o dominio D eh a caixa [0,tam_dominio]^dim_dominio
%deve ser um inteiro positivo.
parametros.tam_dominio = [40 40];
%--- centros
%se {n_centros = 0} usa uma grade uniforme de centros com passo 1
%caso contrario, usa um  conjunto de
%n_centros centros nao uniforme {c(i)}.
parametros.n_centros = 0;
parametros.tam_grade_centros = parametros.tam_dominio;
%--- grade de integracao
%ha aproximadamente pts_por_celula pontos de amostragem por celula
%portanto, aproximadamente (tam_grade_centros)^dim_dominio* pts_por_celula
parametros.pts_por_celula = 9; 
%--- base de aproximacao
parametros.tipobase = NaN;%definido abaixo
parametros.raio = NaN;  %definido abaixo
parametros.raios = NaN; %definido abaixo
parametros.raio_otimo = 1.0;
parametros.le_matriz = true;
parametros.max_nivel = NaN;
parametros.tipoarvore = NaN;  %1=diadica, 2=quadtree
parametros.toroidal = true;
parametros.tensorial = NaN; %definido abaixo
parametros.dobrado = NaN;%definido abaixo

% --- metodo de aproximacao
parametros.metodo = 1; %1 MQ, 2 Interpolacao no centros.
% --- metodo de solucao de sistema
parametros.gauss_seidel = false;
%--- criterio de aproximacao adaptativa
parametros.tol = 0.002;

%opcoes de plotagem
plota.funcao = true;
plota.arvore = false;
plota.base = true; %desenha os elementos da base
plota.curva_nivel = false; %desenha os elementos por curvas de niveis
plota.componentes = false;
plota.base_dual = true;
plota.aproximacao = true;
plota.erro = true;
plota.mapa_erro = true;
plota.erro_curva_nivel = false;
plota.mapa_erro_curva_nivel = false;
plota.salva_eps = true;

fprintf('--- Gaussina -----------------------------------\n');
parametros.tipobase = 9;
parametros.tensorial = true;
parametros.dobrado = true;
parametros.raio = 1.24;
principal_avalia_adaptativa(parametros,plota)

% fprintf('--- Multiquadrica inversa radial --------------\n');
% parametros.tipobase = 3;
% parametros.tensorial = false;
% parametros.dobrado = false;
% parametros.raio = 3.0;
% principal_avalia_adaptativa(parametros,plota)
% 
% fprintf('--- Multiquadrica inversa tensorial ------------\n');
% parametros.tipobase = 3;
% parametros.tensorial = true;
% parametros.dobrado = false;
% parametros.raio = 2.5;
% principal_avalia_adaptativa(parametros,plota)

% fprintf('--- Wendland 3,2 radial ------------\n');
% parametros.tipobase = 2;
% parametros.tensorial = false;
% parametros.dobrado = true;
% parametros.raio = 3.5;
% principal_avalia_adaptativa(parametros,plota)

% fprintf('--- Wendland 3,2 tensorial ------------\n');
% parametros.tipobase = 2;
% parametros.tensorial = true;
% parametros.dobrado = true;
% parametros.raio = 3.3;
% principal_avalia_adaptativa(parametros,plota);
% 
% fprintf('--- Wendland 5,4 radial ------------\n');
% parametros.tipobase = 8;
% parametros.tensorial = false;
% parametros.dobrado = true;
% parametros.raio = 4.5;
% principal_avalia_adaptativa(parametros,plota)
% 
% fprintf('--- Wendland 5,4 tensorial ------------\n');
% parametros.tipobase = 8;
% parametros.tensorial = true;
% parametros.dobrado = true;
% parametros.raio = 4.5;
% principal_avalia_adaptativa(parametros,plota);
% 
% fprintf('--- B-spline de grau 1 tensorial ------------\n');
% parametros.tipobase = 5;
% parametros.tensorial = true;
% parametros.dobrado = true;
% parametros.raio = 1;
% principal_avalia_adaptativa(parametros,plota);

% fprintf('--- B-spline de grau 2 tensorial ------------\n');
% parametros.tipobase = 6;
% parametros.tensorial = true;
% parametros.dobrado = true;
% parametros.raio = 1;
% principal_avalia_adaptativa(parametros,plota);

% fprintf('--- B-spline de grau 3 tensorial ------------\n');
% parametros.tipobase = 12;
% parametros.tensorial = true;
% parametros.dobrado = true;
% parametros.raio = 1;
% principal_avalia_adaptativa(parametros,plota);

