% data((end-8):end,[1 [3 4 5]])
-% sol = interp1(1./X((round(1)):(end),4)',G_D((round(1)):(end),4)',0,'spline')
-% sol = 8.28466; % LShape
- sol = 4.609193; % Quad
+% sol = interp1(1./X((round(1)):(end),1)',G_D((round(1)):(end),4)',0,'spline')
+
+% G_D(end,4)
+
+if(strcmp(t0, '(3DFichCube)'))
+ sol = 16.2265; %Ferraz-Leite
+elseif(strcmp(t0, '(2DQuad)'))
+ sol = 4.609193;
+elseif(strcmp(t0, '(2DLShape)'))
+ sol = 8.28466;
+elseif(strcmp(t0, '(3DCube)'))
+ sol = 8.303;
+elseif(strcmp(t0, '(3DCube3)'))
+ sol = 1.0379;
+end
% G_D
kap3 = 0;
%times mal verfeinern
for j = 1:times
+ %Beende Schleife wenn Element Anzahl erreicht
+ if(times>40 && size(elements,1) > times)
+ break;
+ end
if(exist('coo_fine','var'))
old_C_fine = coo_fine;
old_F_fine = f2s;
old_x_fine = x_fine;
end
+% figure(10)
+% plotShape(coordinates,elements,'');
+
%uniformIsotrop Verfeinern
[coo_fine,ele_fine,neigh_fine,f2s,sit_fine]...
=refineQuad(coordinates,elements,neigh,sites,2);
+
+% figure(11)
+% plotShape(coordinates,elements,'');
%Flaecheninhalte Berechnen (rhs)
b_fine = areaQuad(sit_fine);
% save(file,'coordinates', 'elements','neigh','f2s')
%% Übersicht
-plotShape(coordinates,elements,'db');
+plotShape(coordinates,elements,'bdt');
if(length(unique(coordinates(:,3)))==1)
view(2)
c = 0;
e = 1;
n = 0;
-t = 0;
+t = [0 0];
f = 0;
line = 1;
optargin = size(varargin,2);
end
if(ismember('t',varargin{1}))
desc = {};
- t = 1;
+ t(1) = 1;
if(optargin==2 && length(varargin{2})>=size(elements,1))
desc = varargin{2};
- end
- elseif(ismember('d',varargin{1}))
+ end
+ end
+ if(ismember('d',varargin{1}))
desc = {};
- t = 2;
+ t(2) = 1;
end
end
end
-if(t==1)
+if(t(1))
for idx = eles
current = sum(coordinates(elements(idx,[2,4])',:),1)/2;
if(e)
end
end
-if(t>=2)
+if(t(2))
for idx = coos
current = coordinates(idx,:);
if(e)
format longG
% Matrix MEX Funktion neu Compilieren
-mex mex_build_V.cpp slpRectangle.cpp CFLAGS="\$CFLAGS -fopenmp" CXXFLAGS="\$CXXFLAGS -fopenmp" LDFLAGS="\$LDFLAGS -fopenmp"
+mex mex_build_V.cpp slpRectangle.cpp CFLAGS="\$CFLAGS -fopenmp" CXXFLAGS="\$CXXFLAGS -fopenmp" LDFLAGS="\$LDFLAGS -fopenmp"
% mex mex_build_V.cpp slpRectangle.cpp
% Test ausführen
-%Anzahl der Schritte
-steps = 32;
+%Anzahl der Schritte oder wenn groeßer als 30 der Elemente
+steps = 500;
%Art der Berechnungen
-type = [1 3];
+type = [1];
zeta = { [2 2 2] [2 2 2]};
%% Quad adaptiv anisotrop
%Datei
-file = 'exmpl_2DQuad';
+file = 'exmpl_3DCube';
%Adaptiv
-theta = 0.5;
+theta = 0.7;
%Anisotrop
-nu = 0.5;
+nu = 0.2;
tic
[a b fileo]=compute(file, steps, zeta, type, theta, nu, 0);
time = toc
typeN = int2str(type);
+steps = size(a,1);
A_plots({['meshSave/' fileo int2str(steps)]},...
- [fileo ...
+ ['plots/' fileo ...
int2str(steps)]);
%% Bla bla