From 34a16fd237d54176f070a97e32869115e149c31c Mon Sep 17 00:00:00 2001 From: Peter Schaefer Date: Thu, 21 Mar 2013 22:13:19 +0100 Subject: [PATCH] =?utf8?q?[src]=20A=5Fplots=20:=20nutzt=20fast=20nur=20Fer?= =?utf8?q?raz=20Werte=20[src]=203DFichCUbe=20finaly=20fixed=20[src]=20mex?= =?utf8?q?=5Fbuild=5FV=20+=20slpRectangle=20remove=20Debug=20and=20activat?= =?utf8?q?e=20Parallel=20[src]=20test=5Fsol=20wieder=20voll=20funktionst?= =?utf8?q?=C3=BCchtig?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- src/A_plots.m | 13 ++++++++----- src/exmpl_3DFichCube.mat | Bin 529 -> 708 bytes src/mex_build_V.cpp | 14 +++++++------- src/slpRectangle.cpp | 4 +++- src/test_sol.m | 12 +++++++----- 5 files changed, 25 insertions(+), 18 deletions(-) diff --git a/src/A_plots.m b/src/A_plots.m index 9609ee2..84a2918 100644 --- a/src/A_plots.m +++ b/src/A_plots.m @@ -94,16 +94,19 @@ else % G_D(end,4) -if(strcmp(t0, '(3DFichCube)')) - sol = 16.2265; %Ferraz-Leite +if(strcmp(t0, '(3DFichCube)') || strcmp(t0, '(3DFichCube2)')) + sol = 16.2265; % Ferraz-Leite Paper +% sol = 50; elseif(strcmp(t0, '(2DQuad)')) sol = 4.609193; elseif(strcmp(t0, '(2DLShape)')) - sol = 8.28466; -elseif(strcmp(t0, '(3DCube)')) +% sol = 8.28457; % Ferraz-Leite Dipl. + sol = 8.28466; % Ferraz-Leite Paper +elseif(strcmp(t0, '(3DCube)') || strcmp(t0, '(3DCube2)')) sol = 8.303; elseif(strcmp(t0, '(3DCube3)')) - sol = 1.0379; +% sol = 1.0379; + sol = 16.604703 % Ferraz-Leite Dipl. end % G_D diff --git a/src/exmpl_3DFichCube.mat b/src/exmpl_3DFichCube.mat index db13ae0a694228001d5c9b0a6d036cbc2029e7d5..18d64078819916778e56c8b100e9c82791952fc0 100644 GIT binary patch delta 568 zcmbQpa)fn)1CNoFfvJ_Lk%Ezdq4C5(<%tQb6H5f@D;XFVD(2{RdGawU3NSY|Cf+ZP zo6fymW%?7t%Dk#28$*hA=e7&{VpLbi+kfPp4FlH$>-W#=-hTh?{Gcwz`n1OPgD;yC zW_B*L(Cm!f`YuK3NZbMg-%7u1zoI^Yxg5o7`D))*Rb2K8%kE0pDQ|pe_OhZ7<;`JB zw%h-e;oQT|P|v{70Cqudwq1%E8P0OPTw|R>aGn7G=4d{JDuqC z3VFY;v37mzuI-wp?zMPZ;1Q0!*FtA*o1$gAc%$C=!>2bTz4mHK zQn(&6tC;ba6Q5xHSCJ{xVpKMtdtSC9Al(1(aW}h{@u%;%)XU%Imc7dHh#%+(Pq0HC zCnqFSFdWHoIK#Nqu|f3Ibf%;i#p7GZ4)MZ=EeDW;gqyHHVjLZf} z4k=S_{J7yN5#Ui`XC}nLu7CCO>A>s|V>bgzGCn(r3(MXg(t?MT6;*PkJ1VTQ*DWBSIy6&-h#PXyp znvq79Z3lpFDyiiZe@6i=kq245)ySkr9In0G!PN?UM`wE*L+cSO5S3 diff --git a/src/mex_build_V.cpp b/src/mex_build_V.cpp index 3e2dbfe..8ffde9e 100644 --- a/src/mex_build_V.cpp +++ b/src/mex_build_V.cpp @@ -26,7 +26,7 @@ /***************************************************************************/ #define DEBUG 1 -//#define PARALLEL +#define PARALLEL //#include #include @@ -413,12 +413,12 @@ void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[]) { sub(d, y[0], x[0]); - if(j==1 && k==0){ - mexPrintf("[%d %d](%f,%f)(%f,%f)+(%f,%f,%f)", j, k, - (xa[rxa]), (xb[rxb]), (ya[rya]), - (yb[ryb]), d[rxa], d[rxb], d[rx]); - mexPrintf("{%d,%d;%d,%d}\n",rxa,rxb,rya,rxb); - } +// if(j==1 && k==0){ +// mexPrintf("[%d %d](%f,%f)(%f,%f)+(%f,%f,%f)", j, k, +// (xa[rxa]), (xb[rxb]), (ya[rya]), +// (yb[ryb]), d[rxa], d[rxb], d[rx]); +// mexPrintf("{%d,%d;%d,%d}\n",rxa,rxb,rya,rxb); +// } #if DEBUG >= 5 #pragma omp critical diff --git a/src/slpRectangle.cpp b/src/slpRectangle.cpp index 04a0c8a..efdd77b 100644 --- a/src/slpRectangle.cpp +++ b/src/slpRectangle.cpp @@ -508,8 +508,10 @@ double cOrtO2(double b, double d, double t, double v, double d1, double d2, //kurze Achse nach vorn // switch_dim(b, d, t, v, d1, d2); - if (zeta[0] * zeta[0] * (t * t + v * v) < dist2_ort(b,d,t,v,d1,d2,d3)) + if (zeta[0] * zeta[0] * (t * t + v * v) < dist2_ort(b,d,t,v,d1,d2,d3)){ +// mexPrintf("Was used!\n"); return intQ4(b, d, t, v, d1, d2, d3); + } return intA4(b, d, t, v, d1, d2, d3); } diff --git a/src/test_sol.m b/src/test_sol.m index 3ac6e88..b61f8ee 100644 --- a/src/test_sol.m +++ b/src/test_sol.m @@ -8,21 +8,23 @@ mex mex_build_V.cpp slpRectangle.cpp CFLAGS="\$CFLAGS -fopenmp" CXXFLAGS="\$CXX % Test ausführen -%Anzahl der Schritte oder wenn groeßer als 30 der Elemente +%Anzahl der Schritte oder wenn groeßer als 40 der Elemente steps = 500; %Art der Berechnungen -type = [1]; +type = [1 2]; zeta = { [2 2 2] [2 2 2]}; %% Quad adaptiv anisotrop %Datei -file = 'exmpl_3DCube'; +file = 'exmpl_3DFichCube'; +% file = 'exmpl_3DCube'; +% file = 'exmpl_2DQuad'; %Adaptiv -theta = 0.7; +theta = 0.5; %Anisotrop -nu = 0.2; +nu = 0.5; tic [a b fileo]=compute(file, steps, zeta, type, theta, nu, 0); -- 2.47.3